]> git.ipfire.org Git - thirdparty/tor.git/commitdiff
make it work with base64
authorPeter Palfrader <peter@palfrader.org>
Sun, 18 Jan 2009 13:22:47 +0000 (13:22 +0000)
committerPeter Palfrader <peter@palfrader.org>
Sun, 18 Jan 2009 13:22:47 +0000 (13:22 +0000)
base64 from coreutils is really picky about the number of equation
marks (=) that end a base64 encoded string.  Unfortunately Tor doesn't
believe they are important at all so it cuts them all off all the time.

For perl purposes we just added a good measure of = and were happy about
it.  For base64 we now need to add the proper number of equation marks.
It turns out that number is 1 for the length of strings we process.

svn:r18170

contrib/directory-archive/fetch-all
contrib/directory-archive/fetch-all-v3

index 745c0609b49b959beffa5a6dd9d0dc6043405161..fabcbb8bc45b080734061b6def012ca3b03ddb0d 100755 (executable)
@@ -67,7 +67,7 @@ if [ "$statuses" = "" ]; then
        exit 1
 fi
 
-digests=$( for i in ` bzcat $statuses | awk '$1 == "r" {printf "%s===\n", $4}' | sort -u `; do
+digests=$( for i in ` bzcat $statuses | awk '$1 == "r" {printf "%s=\n", $4}' | sort -u `; do
                echo $i | \
                base64-decode | \
                perl -e 'undef $/; $a=<>; print unpack("H\*", $a),"\n";';
index 73c24534bb376cabfdfaa22178a690b375f2984e..02b3d5d9e88c56f190d0005202f606d3cd73eaee 100755 (executable)
@@ -100,7 +100,7 @@ for vote in $votes; do
        fi
 done
 
-digests=$( for i in ` bzcat $consensus | awk '$1 == "r" {printf "%s===\n", $4}' | sort -u `; do
+digests=$( for i in ` bzcat $consensus | awk '$1 == "r" {printf "%s=\n", $4}' | sort -u `; do
                echo $i | \
                base64-decode | \
                perl -e 'undef $/; $a=<>; print unpack("H\*", $a),"\n";';