X-Original-To: alpine-devel@lists.alpinelinux.org Delivered-To: alpine-devel@mail.alpinelinux.org Received: from apollo.thewebhostserver.com (apollomail.thewebhostserver.com [46.23.65.248]) (using TLSv1 with cipher ECDHE-RSA-AES256-SHA (256/256 bits)) (No client certificate requested) by mail.alpinelinux.org (Postfix) with ESMTPS id 044D9DC00B8 for ; Thu, 18 Sep 2014 02:54:12 +0000 (UTC) Received: from [81.4.121.188] (port=63861 helo=localhost.localdomain) by apollo.thewebhostserver.com with esmtpsa (UNKNOWN:AES128-SHA256:128) (Exim 4.82) (envelope-from ) id 1XURqr-0048Nd-CL; Thu, 18 Sep 2014 03:54:06 +0100 From: Stuart Cardall To: alpine-devel@lists.alpinelinux.org Cc: Stuart Cardall Subject: [alpine-devel] [PATCH] testing/dnscrypt-proxy: small bugfix setup-dnscrypt Date: Thu, 18 Sep 2014 02:53:22 +0000 Message-Id: <1411008802-2053-1-git-send-email-developer@it-offshore.co.uk> X-Mailer: git-send-email 2.1.0 X-OutGoing-Spam-Status: No, score=-2.9 X-AntiAbuse: This header was added to track abuse, please include it with any abuse report X-AntiAbuse: Primary Hostname - apollo.thewebhostserver.com X-AntiAbuse: Original Domain - lists.alpinelinux.org X-AntiAbuse: Originator/Caller UID/GID - [47 12] / [47 12] X-AntiAbuse: Sender Address Domain - it-offshore.co.uk X-Get-Message-Sender-Via: apollo.thewebhostserver.com: authenticated_id: developer@it-offshore.co.uk X-Source: X-Source-Args: X-Source-Dir: X-Mailinglist: alpine-devel Precedence: list List-Id: Alpine Development List-Unsubscribe: List-Post: List-Help: List-Subscribe: Minor change to /sbin/setup-dnscrypt to account for new github tags --- testing/dnscrypt-proxy/APKBUILD | 2 +- testing/dnscrypt-proxy/dnscrypt-proxy.setup | 69 +++++++++++++++++++++-------- 2 files changed, 52 insertions(+), 19 deletions(-) diff --git a/testing/dnscrypt-proxy/APKBUILD b/testing/dnscrypt-proxy/APKBUILD index 4ae7f41..eb362aa 100644 --- a/testing/dnscrypt-proxy/APKBUILD +++ b/testing/dnscrypt-proxy/APKBUILD @@ -2,7 +2,7 @@ # Maintainer: Francesco Colista pkgname=dnscrypt-proxy pkgver=1.4.0 -pkgrel=4 +pkgrel=5 pkgdesc="A tool for securing communications between a client and a DNS resolver" url="http://dnscrypt.org/" arch="all" diff --git a/testing/dnscrypt-proxy/dnscrypt-proxy.setup b/testing/dnscrypt-proxy/dnscrypt-proxy.setup index 92aafe1..eea49fa 100644 --- a/testing/dnscrypt-proxy/dnscrypt-proxy.setup +++ b/testing/dnscrypt-proxy/dnscrypt-proxy.setup @@ -215,38 +215,69 @@ fi ##### Download DNS Resolver details ################################################################ -url='https://raw.githubusercontent.com/jedisct1/dnscrypt-proxy/master/dnscrypt-resolvers.csv' +starttag='' +endtag='<\/table>' +url='https://github.com/jedisct1/dnscrypt-proxy/blob/master/dnscrypt-resolvers.csv' output='/tmp/dnscrypt.list' +IFS="|" echo -e "Retrieving current list of free DNS Resolvers\n" -wget -q --no-check-certificate $url -O $output +curl -k --compressed -o $output -s $url; sed -i -n "/$starttag/,/$endtag/p" $output -totalservers=$(cat $output | tail +2 | wc -l) +# remove leading & trailing whitespace +sed -i 's/^[ \t]*//;s/[ \t]*$//' $output + +deletetags='|||<\/tr>|<\/thead>|<\/tbody>|<\/table>' +# remove rows without data (& the headers in ) +for tags in $deletetags +do + sed -i '/'$tags'/d' $output +done + +#remove stray +sed -i "s/^<\/td>//g" $output +#remove stray under MUSL C +sed -i "s/^//g" $output +# delete empty lines +sed -i '/^$/d' $output +# change rows to columns +awk 'ORS=NR%14?" ":"\n"' $output > $output.table +# replace closing tags with pipe +sed -i 's/<\/td>/|/g' $output.table +sed -i 's/<\/th>/|/g' $output.table +# remove remaining html tags +sed -i 's/<[^>]\+>//g' $output.table +# number rows +awk '{ print FNR "|" $0 }' $output.table > $output; rm $output.table +# tidy up after AWK +sed -i "s/'/'/g" $output +# remove whitespace after pipe +sed -i 's/| */|/g' $output +# fix on MUSL + + +totalservers=$(awk 'END{print NR}' $output) if [ $totalservers = 0 ]; then die "Could not contact $url" fi -#clear +clear # colour table ################################################################################## -colourheading=$(awk 'BEGIN { format = "%-8s%-40s%-18s%-10s%-10s%-10s%-25s\n" +colourheading=$(awk 'BEGIN { format = "%-3s%-40s%-18s%-10s%-10s%-10s%-25s\n" printf format, "#", "Name", "Location", "DNSSEC", "No Logs", "Namecoin", "Resolver Address" }') -colourline=$(awk 'BEGIN { format = "%-8s%-40s%-18s%-10s%-10s%-10s%-25s\n" +colourline=$(awk 'BEGIN { format = "%-3s%-40s%-18s%-10s%-10s%-10s%-25s\n" printf format, "---", "----------------------------------------", "------------------", "----------",\ "----------", "----------", "------------------------------------------" }') print_green "$colourheading" print_green "$colourline" -sed -i -e "s/..$//g" $output -tmpfile=$(mktemp) - -cat $output | awk 'BEGIN{FS=""}{gsub(/,\ /,"\ "); print}'|tail +2 > $tmpfile - -awk -F"\," 'BEGIN {format="%-8s%-40s%-18s%-10s%-10s%-10s%-25s\n"}{ printf format, "\["NR"\]",$1,$4,$8,$9,$10,$11}' $tmpfile +awk 'BEGIN { format = "%-3s%-40s%-18s%-10s%-10s%-10s%-25s\n" } + { printf format,$1,$3,$5,$9,$10,$11,$12 }' FS=\| $output print_green "$colourline" print_question "Please choose a DNS Resolver for dnscrypt-proxy to query:" "[1 - $totalservers]" @@ -258,12 +289,9 @@ do read DNS -echo "DNS: $DNS" # Sanitize input to an integer export DNS_CLEAN="`echo "${DNS}" | tr -cd '[:[0-9]:]'`" -echo "DNS_CLEAN: $DNS_CLEAN" - if [ $DNS_CLEAN -gt 0 2>/dev/null ] && [ $DNS_CLEAN -le $totalservers 2>/dev/null ]; then break else @@ -273,9 +301,9 @@ fi done -RESOLVER=$(cat $tmpfile | tr -d "\"" | tr "," ";" | sed -n "$DNS_CLEAN"p |awk -F';' '{print $11}') -PROVIDER=$(cat $tmpfile | tr -d "\"" | tr "," ";" | sed -n "$DNS_CLEAN"p |awk -F';' '{print $12}') -PUBKEY=$(cat $tmpfile | tr -d "\"" | tr "," ";" | sed -n "$DNS_CLEAN"p |awk -F';' '{print $13}') +RESOLVER=$(sed -n "$DNS_CLEAN"p $output | awk -F'|' '{ print $12 }') +PROVIDER=$(sed -n "$DNS_CLEAN"p $output | awk -F'|' '{ print $13 }') +PUBKEY=$(sed -n "$DNS_CLEAN"p $output | awk -F'|' '{ print $14 }') ######## END Changes ########################################################################### @@ -359,3 +387,8 @@ fi restart_services exit 0 + + + + + -- 2.1.0 --- Unsubscribe: alpine-devel+unsubscribe@lists.alpinelinux.org Help: alpine-devel+help@lists.alpinelinux.org ---