| 
					
				 | 
			
			
				@@ -0,0 +1,41 @@ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+#!/bin/sh 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+## Originally written by Peter Palfrader. 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+## This script lets you quickly check if a given router (by nickname) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+## will let you do a TLS handshake, or will let you download a directory. 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+## Usage: check-tor nickname 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+#set -x 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+router="$1" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+dirserver="http://belegost.seul.org:80/tor/" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+lines=$( wget -q $dirserver --proxy=off -O - | grep -A5 '^router '"$router"' ' ) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+line=$( echo "$lines" | head -n1 ) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+if [ -z "$line" ]; then 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	echo "Not found" >&2 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	exit 1 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+fi 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+echo "$lines" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+echo 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ipor=$( echo "$line" | awk '{printf "%s:%s", $3, $4}' ) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+op=$( echo "$line" | awk '{printf $6}' ) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ipop=$( echo "$line" | awk '{printf "%s:%s", $3, $6}' ) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+echo 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+echo ">>" openssl s_client -connect "$ipor" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+timeout 5 openssl s_client -connect "$ipor" < /dev/null 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+if [ "$op" != "0" ]; then 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	echo 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	echo ">>" wget --proxy=off -O - http://$ipop/tor/ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	timeout 5 wget --proxy=off -O - http://$ipop/tor/ | head -n3 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+fi 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+echo 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+echo -n "$router "; echo "$lines" | grep 'fingerprint' | sed -e 's/^opt //' -e 's/^fingerprint //'; 
			 |