aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--contrib/auto-naming/README6
-rw-r--r--contrib/bundle.nsi67
-rwxr-xr-xcontrib/client-tools/tor-resolve.py (renamed from contrib/tor-resolve.py)0
-rwxr-xr-xcontrib/client-tools/torify (renamed from contrib/torify)0
-rwxr-xr-xcontrib/cross.sh195
-rwxr-xr-xcontrib/dirauth-tools/add-tor (renamed from contrib/add-tor)0
-rwxr-xr-xcontrib/dirauth-tools/nagios-check-tor-authority-cert (renamed from contrib/nagios-check-tor-authority-cert)0
-rw-r--r--contrib/directory-archive/crontab.sample3
-rwxr-xr-xcontrib/directory-archive/fetch-all77
-rw-r--r--contrib/directory-archive/fetch-all-functions82
-rwxr-xr-xcontrib/directory-archive/fetch-all-v3111
-rwxr-xr-xcontrib/directory-archive/sort-into-month-folder74
-rwxr-xr-xcontrib/directory-archive/tar-them-up127
-rw-r--r--contrib/dist/rc.subr (renamed from contrib/rc.subr)0
-rw-r--r--contrib/dist/suse/include.am (renamed from contrib/suse/include.am)0
-rw-r--r--contrib/dist/suse/tor.sh.in (renamed from contrib/suse/tor.sh.in)0
-rw-r--r--contrib/dist/tor.sh.in (renamed from contrib/tor.sh.in)0
-rw-r--r--contrib/dist/torctl.in (renamed from contrib/torctl.in)0
-rwxr-xr-xcontrib/make-signature.sh79
-rwxr-xr-xcontrib/mdd.py169
-rw-r--r--contrib/netinst.nsi74
-rw-r--r--contrib/operator-tools/linux-tor-prio.sh (renamed from contrib/linux-tor-prio.sh)0
-rw-r--r--contrib/operator-tools/tor-exit-notice.html (renamed from contrib/tor-exit-notice.html)0
-rw-r--r--contrib/operator-tools/tor.logrotate.in (renamed from contrib/tor.logrotate.in)0
-rwxr-xr-xcontrib/or-tools/check-tor (renamed from contrib/check-tor)0
-rwxr-xr-xcontrib/or-tools/checksocks.pl (renamed from contrib/checksocks.pl)0
-rwxr-xr-xcontrib/or-tools/exitlist (renamed from contrib/exitlist)0
-rwxr-xr-xcontrib/package_nsis-weasel.sh90
-rw-r--r--contrib/package_nsis.sh57
-rw-r--r--contrib/polipo/Makefile.mingw100
-rw-r--r--contrib/polipo/README47
-rw-r--r--contrib/polipo/polipo-mingw.nsi172
-rwxr-xr-xcontrib/sd84
-rw-r--r--contrib/tor-ctrl.sh212
-rwxr-xr-xcontrib/tor-stress27
-rw-r--r--contrib/torinst32.icobin4286 -> 0 bytes
-rw-r--r--contrib/win32build/package_nsis-mingw.sh (renamed from contrib/package_nsis-mingw.sh)0
-rw-r--r--contrib/win32build/tor-mingw.nsi.in (renamed from contrib/tor-mingw.nsi.in)0
-rw-r--r--contrib/win32build/tor.ico (renamed from contrib/tor.ico)bin82726 -> 82726 bytes
-rw-r--r--contrib/win32build/tor.nsi.in (renamed from contrib/tor.nsi.in)0
-rw-r--r--contrib/xenobite.icobin1150 -> 0 bytes
-rwxr-xr-xscripts/maint/checkLogs.pl (renamed from contrib/checkLogs.pl)0
-rwxr-xr-xscripts/maint/checkOptionDocs.pl (renamed from contrib/checkOptionDocs.pl)0
-rwxr-xr-xscripts/maint/checkSpace.pl (renamed from contrib/checkSpace.pl)0
-rwxr-xr-xscripts/maint/findMergedChanges.pl (renamed from contrib/findMergedChanges.pl)0
-rwxr-xr-xscripts/maint/format_changelog.py (renamed from contrib/format_changelog.py)0
-rwxr-xr-xscripts/maint/redox.py (renamed from contrib/redox.py)0
-rwxr-xr-xscripts/maint/updateVersions.pl (renamed from contrib/updateVersions.pl)0
-rwxr-xr-xscripts/test/cov-blame (renamed from contrib/cov-blame)0
-rwxr-xr-xscripts/test/cov-diff (renamed from contrib/cov-diff)0
-rwxr-xr-xscripts/test/coverage (renamed from contrib/coverage)0
-rw-r--r--scripts/test/scan-build.sh (renamed from contrib/scan-build.sh)0
52 files changed, 0 insertions, 1853 deletions
diff --git a/contrib/auto-naming/README b/contrib/auto-naming/README
deleted file mode 100644
index e2f9ff8c2..000000000
--- a/contrib/auto-naming/README
+++ /dev/null
@@ -1,6 +0,0 @@
-Tor directory authorities may maintain a binding of server identities
-(their long term identity key) and nicknames.
-
-The auto-naming scripts have been moved to svn in
-projects/tor-naming/auto-naming/trunk/
-
diff --git a/contrib/bundle.nsi b/contrib/bundle.nsi
deleted file mode 100644
index 55f6b5fa3..000000000
--- a/contrib/bundle.nsi
+++ /dev/null
@@ -1,67 +0,0 @@
-!include "MUI.nsh"
-!include "LogicLib.nsh"
-!include "FileFunc.nsh"
-
-!define VERSION "0.2.1.13"
-!define INSTALLER "TorBundle.exe"
-!define WEBSITE "https://www.torproject.org/"
-!define LICENSE "LICENSE"
-
-SetCompressor /SOLID BZIP2
-RequestExecutionLevel user
-OutFile ${INSTALLER}
-InstallDir "$LOCALAPPDATA\TorInstPkgs"
-SetOverWrite on
-Name "Tor ${VERSION} Bundle"
-Caption "Tor ${VERSION} Bundle Setup"
-BrandingText "Tor Bundle Installer"
-CRCCheck on
-XPStyle on
-ShowInstDetails hide
-VIProductVersion "${VERSION}"
-VIAddVersionKey "ProductName" "Tor"
-VIAddVersionKey "Comments" "${WEBSITE}"
-VIAddVersionKey "LegalTrademarks" "Three line BSD"
-VIAddVersionKey "LegalCopyright" "©2004-2011, Roger Dingledine, Nick Mathewson, The Tor Project, Inc."
-VIAddVersionKey "FileDescription" "Tor is an implementation of Onion Routing. You can read more at ${WEBSITE}"
-VIAddVersionKey "FileVersion" "${VERSION}"
-
-!define MUI_ICON "torinst32.ico"
-!define MUI_HEADERIMAGE_BITMAP "${NSISDIR}\Contrib\Graphics\Header\win.bmp"
-!insertmacro MUI_PAGE_INSTFILES
-!insertmacro MUI_LANGUAGE "English"
-
-Section "Tor" Tor
- SectionIn RO
- SetOutPath $INSTDIR
- Call ExtractPackages
- Call RunInstallers
- Call LaunchVidalia
-SectionEnd
-
-Function ExtractPackages
- File "license.msi"
- File "tor.msi"
- File "torbutton.msi"
- File "thandy.msi"
- File "polipo.msi"
- File "vidalia.msi"
- File "tbcheck.bat"
-FunctionEnd
-
-Function RunInstallers
- ExecWait 'msiexec /i "$INSTDIR\license.msi" /qn'
- ExecWait 'msiexec /i "$INSTDIR\tor.msi" NOSC=1 /qn'
- ExecWait 'msiexec /i "$INSTDIR\thandy.msi" NOSC=1 /qn'
- ExecWait 'msiexec /i "$INSTDIR\polipo.msi" NOSC=1 /qn'
- ExecWait 'msiexec /i "$INSTDIR\torbutton.msi" /qn'
- ExecWait 'msiexec /i "$INSTDIR\vidalia.msi" /qn'
- ExpandEnvStrings $0 %COMSPEC%
- Exec '"$0" /C "$INSTDIR\tbcheck.bat"'
-FunctionEnd
-
-Function LaunchVidalia
- SetOutPath "$LOCALAPPDATA\Programs\Vidalia"
- Exec 'vidalia.exe -loglevel info -logfile log.txt'
-FunctionEnd
-
diff --git a/contrib/tor-resolve.py b/contrib/client-tools/tor-resolve.py
index 47ae1a0c3..47ae1a0c3 100755
--- a/contrib/tor-resolve.py
+++ b/contrib/client-tools/tor-resolve.py
diff --git a/contrib/torify b/contrib/client-tools/torify
index 54acfed65..54acfed65 100755
--- a/contrib/torify
+++ b/contrib/client-tools/torify
diff --git a/contrib/cross.sh b/contrib/cross.sh
deleted file mode 100755
index a6085a400..000000000
--- a/contrib/cross.sh
+++ /dev/null
@@ -1,195 +0,0 @@
-#!/bin/bash
-# Copyright 2006 Michael Mohr with modifications by Roger Dingledine
-# See LICENSE for licensing information.
-
-#######################################################################
-# Tor-cross: a tool to help cross-compile Tor
-#
-# The purpose of a cross-compiler is to produce an executable for
-# one system (CPU) on another. This is useful, for example, when
-# the target system does not have a native compiler available.
-# You might, for example, wish to cross-compile a program on your
-# host (the computer you're working on now) for a target such as
-# a router or handheld computer.
-#
-# A number of environment variables must be set in order for this
-# script to work:
-# $PREFIX, $CROSSPATH, $HOST_TRIPLET, $HOST,
-# and (optionally) $BUILD
-# Please run the script for a description of each one. If automated
-# builds are desired, the above variables can be exported at the top
-# of this script.
-#
-# Recent releases of Tor include test programs in configure. Normally
-# this is a good thing, since it catches a number of problems.
-# However, this also presents a problem when cross compiling, since
-# you can't run binary images for the target system on the host.
-#
-# Tor-cross assumes that you know what you're doing and removes a
-# number of checks known to cause problems with this process.
-# Note that this does not guarantee that the program will run or
-# even compile; it simply allows configure to generate the Makefiles.
-#
-# Stripping the binaries should almost always be done for an
-# embedded environment where space is at an exacting premium.
-# However, the default is NOT to strip them since they are useful for
-# debugging. If you do not plan to do any debugging and you
-# don't care about the debugging symbols, set $STRIP to "yes" before
-# running this script.
-#
-# Tor-cross was written by Michael Mohr. He can be contacted at
-# m(dot)mohr(at)laposte(dot)net. Comments are appreciated, but
-# flames go to /dev/null.
-#
-# The target with which this script is tested is little-endian
-# MIPS Linux, built on an Athlon-based Linux desktop.
-#
-#######################################################################
-
-# disable the platform-specific tests in configure
-export CROSS_COMPILE=yes
-
-# for error conditions
-EXITVAL=0
-
-if [ ! -f autogen.sh ]
-then
- echo "Please run this script from the root of the Tor distribution"
- exit -1
-fi
-
-if [ ! -f configure ]
-then
- if [ -z $GEN_BUILD ]
- then
- echo "To automatically generate the build environment, set \$GEN_BUILD"
- echo "to yes; for example,"
- echo " export GEN_BUILD=yes"
- EXITVAL=-1
- fi
-fi
-
-if [ -z $PREFIX ]
-then
- echo "You must define \$PREFIX since you are cross-compiling."
- echo "Select a non-system location (i.e. /tmp/tor-cross):"
- echo " export PREFIX=/tmp/tor-cross"
- EXITVAL=-1
-fi
-
-if [ -z $CROSSPATH ]
-then
- echo "You must define the location of your cross-compiler's"
- echo "directory using \$CROSSPATH; for example,"
- echo " export CROSSPATH=/opt/cross/staging_dir_mipsel/bin"
- EXITVAL=-1
-fi
-
-if [ -z $HOST_TRIPLET ]
-then
- echo "You must define \$HOST_TRIPLET to continue. For example,"
- echo "if you normally cross-compile applications using"
- echo "mipsel-linux-uclibc-gcc, you would set \$HOST_TRIPLET like so:"
- echo " export HOST_TRIPLET=mipsel-linux-uclibc-"
- EXITVAL=-1
-fi
-
-if [ -z $HOST ]
-then
- echo "You must specify a target processor with \$HOST; for example:"
- echo " export HOST=mipsel-unknown-elf"
- EXITVAL=-1
-fi
-
-if [ -z $BUILD ]
-then
- echo "You should specify the host machine's type with \$BUILD; for example:"
- echo " export BUILD=i686-pc-linux-gnu"
- echo "If you wish to let configure autodetect the host, set \$BUILD to 'auto':"
- echo " export BUILD=auto"
- EXITVAL=-1
-fi
-
-if [ ! -x $CROSSPATH/$HOST_TRIPLETgcc ]
-then
- echo "The specified toolchain does not contain an executable C compiler."
- echo "Please double-check your settings and rerun cross.sh."
- EXITVAL=-1
-fi
-
-if [ $EXITVAL -ne 0 ]
-then
- echo "Remember, you can hard-code these values in cross.sh if needed."
- exit $EXITVAL
-fi
-
-if [ ! -z "$GEN_BUILD" -a ! -f configure ]
-then
- export NOCONF=yes
- ./autogen.sh
-fi
-
-# clean up any existing object files
-if [ -f src/or/tor ]
-then
- make clean
-fi
-
-# Set up the build environment and try to run configure
-export PATH=$PATH:$CROSSPATH
-export RANLIB=${HOST_TRIPLET}ranlib
-export CC=${HOST_TRIPLET}gcc
-
-if [ $BUILD == "auto" ]
-then
- ./configure \
- --enable-debug \
- --enable-eventdns \
- --prefix=$PREFIX \
- --host=$HOST
-else
- ./configure \
- --enable-debug \
- --enable-eventdns \
- --prefix=$PREFIX \
- --host=$HOST \
- --build=$BUILD
-fi
-
-# has a problem occurred?
-if [ $? -ne 0 ]
-then
- echo ""
- echo "A problem has been detected with configure."
- echo "Please check the output above and rerun cross.sh"
- echo ""
- exit -1
-fi
-
-# Now we're cookin'
-
-make
-
-# has a problem occurred?
-if [ $? -ne 0 ]
-then
- echo ""
- echo "A problem has been detected with make."
- echo "Please check the output above and rerun make."
- echo ""
- exit -1
-fi
-
-# if $STRIP has length (i.e. STRIP=yes), strip the binaries
-if [ ! -z $STRIP ]
-then
-${HOST_TRIPLET}strip \
- src/or/tor \
- src/test/test \
- src/tools/tor-resolve
-fi
-
-echo ""
-echo "Tor should be compiled at this point. Now run 'make install' to"
-echo "install to $PREFIX"
-echo ""
diff --git a/contrib/add-tor b/contrib/dirauth-tools/add-tor
index 5a12abca8..5a12abca8 100755
--- a/contrib/add-tor
+++ b/contrib/dirauth-tools/add-tor
diff --git a/contrib/nagios-check-tor-authority-cert b/contrib/dirauth-tools/nagios-check-tor-authority-cert
index 46dc7284b..46dc7284b 100755
--- a/contrib/nagios-check-tor-authority-cert
+++ b/contrib/dirauth-tools/nagios-check-tor-authority-cert
diff --git a/contrib/directory-archive/crontab.sample b/contrib/directory-archive/crontab.sample
deleted file mode 100644
index e2821aa93..000000000
--- a/contrib/directory-archive/crontab.sample
+++ /dev/null
@@ -1,3 +0,0 @@
-10 * * * * cd projects/tor-v2dir && ./fetch-all-v3
-40 * * * * cd projects/tor-v2dir && ./fetch-all
-15 3 6 * * cd projects/tor-v2dir && ./sort-into-month-folder > /dev/null && ./tar-them-up last > /dev/null
diff --git a/contrib/directory-archive/fetch-all b/contrib/directory-archive/fetch-all
deleted file mode 100755
index dfa5a1b3e..000000000
--- a/contrib/directory-archive/fetch-all
+++ /dev/null
@@ -1,77 +0,0 @@
-#!/bin/bash
-
-# Download all current v2 directory status documents, then download
-# the descriptors and extra info documents.
-
-# Copyright (c) 2005, 2006, 2007, 2008 Peter Palfrader
-#
-# Permission is hereby granted, free of charge, to any person obtaining a copy
-# of this software and associated documentation files (the "Software"), to deal
-# in the Software without restriction, including without limitation the rights
-# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
-# copies of the Software, and to permit persons to whom the Software is
-# furnished to do so, subject to the following conditions:
-#
-# The above copyright notice and this permission notice shall be included in
-# all copies or substantial portions of the Software.
-#
-# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
-# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
-# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
-# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
-# SOFTWARE.
-
-TZ=UTC
-export TZ
-
-DIRSERVERS=""
-DIRSERVERS="$DIRSERVERS 86.59.21.38:80" # tor26
-DIRSERVERS="$DIRSERVERS 128.31.0.34:9031" # moria1
-DIRSERVERS="$DIRSERVERS 128.31.0.34:9032" # moria2
-DIRSERVERS="$DIRSERVERS 194.109.206.212:80" # dizum
-
-DATEDIR=$(date "+%Y/%m/%d")
-TIME=$(date "+%Y%m%d-%H%M%S")
-
-. fetch-all-functions
-
-statuses=""
-for dirserver in $DIRSERVERS; do
- authorities=$(wget -q -O - http://$dirserver/tor/status/all | egrep '^fingerprint ' | awk '{print $2}')
- if [ "$authorities" == "" ]; then
- echo "Did not get a list of authorities from $dirserver, going to next" 2>&1
- continue
- fi
-
- dir="status/$DATEDIR"
- [ -d "$dir" ] || mkdir -p "$dir"
-
- authprefix="$dir/$TIME-"
- for fp in $authorities; do
- wget -q -O "$authprefix$fp" http://$dirserver/tor/status/fp/"$fp"
- bzip2 "$authprefix$fp"
- statuses="$statuses $authprefix$fp.bz2"
- done
- if [ "$statuses" == "" ]; then
- echo "Did not get any statuses from $dirserver, going to next" 2>&1
- continue
- else
- break
- fi
-done
-
-if [ "$statuses" = "" ]; then
- echo "No statuses available" 2>&1
- exit 1
-fi
-
-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";';
- done )
-for digest in $digests; do
- fetch_digest "$digest" "server-descriptor"
-done
diff --git a/contrib/directory-archive/fetch-all-functions b/contrib/directory-archive/fetch-all-functions
deleted file mode 100644
index a9335bda7..000000000
--- a/contrib/directory-archive/fetch-all-functions
+++ /dev/null
@@ -1,82 +0,0 @@
-#!/bin/bash
-
-# function used by fetch-all* to download server descriptors and
-# extra info documents
-
-# Copyright (c) 2005, 2006, 2007, 2008 Peter Palfrader
-#
-# Permission is hereby granted, free of charge, to any person obtaining a copy
-# of this software and associated documentation files (the "Software"), to deal
-# in the Software without restriction, including without limitation the rights
-# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
-# copies of the Software, and to permit persons to whom the Software is
-# furnished to do so, subject to the following conditions:
-#
-# The above copyright notice and this permission notice shall be included in
-# all copies or substantial portions of the Software.
-#
-# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
-# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
-# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
-# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
-# SOFTWARE.
-
-
-fetch_digest() {
- local digest
- local objecttype
- local urlpart
- local pathpart
- local target
- local targetdir
- local dirserver
- local ei
-
- digest="$1"
- objecttype="$2"
- if [ "$objecttype" = "server-descriptor" ] ; then
- urlpart="server"
- pathpart="server-descriptor"
- elif [ "$objecttype" = "extra-info" ] ; then
- urlpart="extra"
- pathpart="extra-info"
- else
- echo "Called fetch_digest with illegal objecttype '$objecttype'" >&2
- exit 1
- fi
- target=$( echo $digest | sed -e 's#^\(.\)\(.\)#'"$pathpart"'/\1/\2/\1\2#' )
- targetdir=$( dirname $target )
- [ -d "$targetdir" ] || mkdir -p "$targetdir"
- if ! [ -e "$target" ]; then
- for dirserver in $DIRSERVERS; do
- wget -q -O "$target" http://$dirserver/tor/$urlpart/d/"$digest" || rm -f "$target"
- if [ -s "$target" ]; then
- if egrep '^opt extra-info-digest ' "$target" > /dev/null; then
- ei=$( egrep '^opt extra-info-digest ' "$target" | awk '{print $3}' | tr 'A-F' 'a-f' )
- fetch_digest "$ei" "extra-info"
- elif egrep '^extra-info-digest ' "$target" > /dev/null; then
- ei=$( egrep '^extra-info-digest ' "$target" | awk '{print $2}' | tr 'A-F' 'a-f' )
- fetch_digest "$ei" "extra-info"
- fi
- break
- else
- rm -f "$target"
- fi
- done
- fi
- #if ! [ -e "$target" ]; then
- # echo "$objecttype $digest" >> failed
- #fi
-}
-
-if [ -x /usr/bin/base64 ] ; then
- base64-decode() {
- /usr/bin/base64 -d
- }
-else
- base64-decode() {
- perl -MMIME::Base64 -e 'print decode_base64(<>)'
- }
-fi
diff --git a/contrib/directory-archive/fetch-all-v3 b/contrib/directory-archive/fetch-all-v3
deleted file mode 100755
index a4746e02c..000000000
--- a/contrib/directory-archive/fetch-all-v3
+++ /dev/null
@@ -1,111 +0,0 @@
-#!/bin/bash
-
-# Download all current v3 directory status votes and the consensus document,
-# then download the descriptors and extra info documents.
-
-# Copyright (c) 2005, 2006, 2007, 2008 Peter Palfrader
-#
-# Permission is hereby granted, free of charge, to any person obtaining a copy
-# of this software and associated documentation files (the "Software"), to deal
-# in the Software without restriction, including without limitation the rights
-# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
-# copies of the Software, and to permit persons to whom the Software is
-# furnished to do so, subject to the following conditions:
-#
-# The above copyright notice and this permission notice shall be included in
-# all copies or substantial portions of the Software.
-#
-# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
-# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
-# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
-# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
-# SOFTWARE.
-
-TZ=UTC
-export TZ
-
-DIRSERVERS=""
-DIRSERVERS="$DIRSERVERS 86.59.21.38:80" # tor26
-DIRSERVERS="$DIRSERVERS 128.31.0.34:9031" # moria1
-DIRSERVERS="$DIRSERVERS 216.224.124.114:9030" # ides
-DIRSERVERS="$DIRSERVERS 80.190.246.100:80" # gabelmoo
-#DIRSERVERS="$DIRSERVERS 140.247.60.64:80" # lefkada
-DIRSERVERS="$DIRSERVERS 194.109.206.212:80" # dizum
-#DIRSERVERS="$DIRSERVERS 128.31.0.34:9032" # moria2
-DIRSERVERS="$DIRSERVERS 213.73.91.31:80" # dannenberg
-DIRSERVERS="$DIRSERVERS 208.83.223.34:443" # urras
-TIME=$(date "+%Y%m%d-%H%M%S")
-
-. fetch-all-functions
-
-consensus=""
-tmpdir="consensus/tmp"
-[ -d "$tmpdir" ] || mkdir -p "$tmpdir"
-for dirserver in $DIRSERVERS; do
- wget -q -O "$tmpdir/$TIME-consensus" http://$dirserver/tor/status-vote/current/consensus
- if [ "$?" != 0 ]; then
- rm -f "$tmpdir/$TIME-consensus"
- continue
- fi
-
- freshconsensus="$tmpdir/$TIME-consensus"
-
- timestamp=$(awk '$1=="valid-after" {printf "%s-%s", $2, $3}' < "$freshconsensus")
- datedir=$(awk '$1=="valid-after" {printf "%s", $2}' < "$freshconsensus" | tr '-' '/')
- dir="consensus/$datedir"
- [ -d "$dir" ] || mkdir -p "$dir"
-
-
- consensus="$dir/$timestamp-consensus.bz2"
- if ! [ -e "$consensus" ]; then
- # the consensus is new, or at least we don't have it yet
- bzip2 "$freshconsensus"
- mv "$freshconsensus.bz2" "$consensus"
- break
- fi
-
- rm -f "$freshconsensus"
- echo "Consensus from $timestamp (gotten from $dirserver) already exists!" >&2
- # maybe there is a newer one on a different authority, so try again.
-done
-
-if [ "$consensus" = "" ]; then
- echo "No consensus available" 2>&1
- exit 1
-fi
-
-
-votes=$(bzcat $consensus | awk '$1 == "vote-digest" {print $2}')
-for vote in $votes; do
- for dirserver in $DIRSERVERS; do
- wget -q -O "$dir/$TIME-vote-$vote" http://$dirserver/tor/status-vote/current/d/$vote
- if [ "$?" != 0 ]; then
- rm -f "$dir/$TIME-vote-$vote"
- continue
- fi
- break
- done
- if [ -e "$dir/$TIME-vote-$vote" ]; then
- voteridentity=$(awk '$1=="fingerprint" {print $2}' < "$dir/$TIME-vote-$vote")
- if [ -e "$dir/$timestamp-vote-$voteridentity-$vote.bz2" ]; then
- echo "Vote $vote from $voteridentity already exists!" >&2
- rm -f "$dir/$TIME-vote-$vote"
- continue;
- fi
- mv "$dir/$TIME-vote-$vote" "$dir/$timestamp-vote-$voteridentity-$vote"
- bzip2 "$dir/$timestamp-vote-$voteridentity-$vote"
- else
- echo "Failed to get vote $vote!" >&2
- fi
-done
-
-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";';
- done )
-for digest in $digests; do
- fetch_digest "$digest" "server-descriptor"
-done
diff --git a/contrib/directory-archive/sort-into-month-folder b/contrib/directory-archive/sort-into-month-folder
deleted file mode 100755
index 95033c58d..000000000
--- a/contrib/directory-archive/sort-into-month-folder
+++ /dev/null
@@ -1,74 +0,0 @@
-#!/usr/bin/perl -w
-
-# Sort dumped consensuses, statuses, descriptors etc into per-month folders.
-
-# Copyright (c) 2006, 2007, 2008 Peter Palfrader
-#
-# Permission is hereby granted, free of charge, to any person obtaining a copy
-# of this software and associated documentation files (the "Software"), to deal
-# in the Software without restriction, including without limitation the rights
-# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
-# copies of the Software, and to permit persons to whom the Software is
-# furnished to do so, subject to the following conditions:
-#
-# The above copyright notice and this permission notice shall be included in
-# all copies or substantial portions of the Software.
-#
-# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
-# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
-# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
-# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
-# SOFTWARE.
-
-use strict;
-use File::Find;
-use File::Basename;
-use File::stat;
-use Time::Local;
-
-
-my $cutofftime;
-
-
-sub wanted() {
- return unless -f;
- my $mtime = stat($_)->mtime;
- return if $mtime >= $cutofftime;
-
- my (undef,undef,undef,undef,$mon,$year,undef,undef,undef) = gmtime $mtime;
-
- my $bn = basename $_;
- my $dn = dirname $_;
- my @path = split /\//, $dn;
- $path[0] .= sprintf 's-%4d-%02d', 1900+$year, $mon+1;
- $dn = join '/', @path;
-
- if (! -d $dn) {
- my $p = '.';
- for my $component (@path) {
- $p .= '/'.$component;
- if (! -d $p) {
- mkdir $p or die ("Cannot mkdir $p: $!\n");
- };
- };
- };
-
- print "$_ -> $dn/$bn\n";
- rename $_, $dn.'/'.$bn or die ("Cannot rename $_ to $dn/$bn: $!\n");
-};
-
-my (undef,undef,undef,undef,$mon,$year,undef,undef,undef) = gmtime(time - 5*24*3600);
-$cutofftime = timegm(0,0,0,1,$mon,$year);
-find( {
- wanted => \&wanted,
- no_chdir => 1
- },
- 'server-descriptor');
-
-find( {
- wanted => \&wanted,
- no_chdir => 1
- },
- 'extra-info');
diff --git a/contrib/directory-archive/tar-them-up b/contrib/directory-archive/tar-them-up
deleted file mode 100755
index 2775ca9ee..000000000
--- a/contrib/directory-archive/tar-them-up
+++ /dev/null
@@ -1,127 +0,0 @@
-#!/bin/sh
-
-# Tar up dumped consensuses, statuses, descriptors etc from per-month folders
-# into per-month tarballs.
-
-# Copyright (c) 2006, 2007, 2008 Peter Palfrader
-#
-# Permission is hereby granted, free of charge, to any person obtaining a copy
-# of this software and associated documentation files (the "Software"), to deal
-# in the Software without restriction, including without limitation the rights
-# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
-# copies of the Software, and to permit persons to whom the Software is
-# furnished to do so, subject to the following conditions:
-#
-# The above copyright notice and this permission notice shall be included in
-# all copies or substantial portions of the Software.
-#
-# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
-# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
-# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
-# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
-# SOFTWARE.
-
-set -e
-set -x
-set -u
-
-usage() {
- echo "Usage: $0 <year> <month>" >&2
- echo " $0 last (does last month)" >&2
- exit 1
-}
-
-if [ -z "${1:-}" ]; then
- usage
-fi
-
-if [ "$1" = "last" ]; then
- year=`date --date="last month" +'%Y'`
- month=`date --date="last month" +'%m'`
-elif [ -z "${2:-}" ]; then
- usage
-else
- year="$1"
- month="$2"
-fi
-
-if [ "$year" -lt 2000 ] || [ "$year" -gt 2020 ] ||
- [ "$month" -lt 1 ] || [ "$month" -gt 12 ] ||
- [ "`echo -n $month | wc -c`" != 2 ]; then
- usage
-fi
-
-
-this_year=`date --utc +'%Y'`
-this_month=`date --utc +'%m'`
-
-if [ "`date -d $this_year-$this_month-01 +%s`" -le "`date -d $year-$month-01 +%s`" ]; then
- echo "Date in the future or current month?" >&2
- exit 1
-fi
-
-
-
-
-
-for file in \
- "extra-infos-$year-$month.tar.bz2" \
- "server-descriptors-$year-$month.tar.bz2" \
- "consensuses-$year-$month.tar.bz2" \
- "statuses-$year-$month.tar.bz2" \
- ; do
- if [ -e "$file" ]; then
- echo "$file already exists" >&2
- exit 1
- fi
-done
-
-for dir in \
- "extra-infos-$year-$month" \
- "server-descriptors-$year-$month" \
- "consensus/$year/$month" \
- "status/$year/$month" \
- ; do
- if ! [ -d "$dir" ]; then
- echo "$dir not found" >&2
- exit 1
- fi
-done
-
-for dir in \
- "consensuses-$year-$month" \
- "statuses-$year-$month" \
- ; do
- if [ -e "$dir" ]; then
- echo "$dir already exists" >&2
- exit 1
- fi
-done
-
-for kind in consensus status; do
- mv "$kind"/$year/$month "$kind"es-$year-$month
- find "$kind"es-$year-$month -type f -name '*.bz2' -print0 | xargs -0 bunzip2 -v
- tar cjvf "$kind"es-$year-$month.tar.bz2 "$kind"es-$year-$month
- rm -rf "$kind"es-$year-$month
-done
-
-for kind in extra-infos server-descriptors; do
- tar cjvf "$kind"-$year-$month.tar.bz2 "$kind"-$year-$month
- rm -rf "$kind"-$year-$month
-done
-
-
-
-[ -d Archive ] || mkdir Archive
-
-for kind in consensus status; do
- t="$kind"es-$year-$month.tar.bz2
- ! [ -e Archive/"$t" ] && mv "$t" Archive/"$t"
-done
-
-for kind in extra-infos server-descriptors; do
- t="$kind"-$year-$month.tar.bz2
- ! [ -e Archive/"$t" ] && mv "$t" Archive/"$t"
-done
diff --git a/contrib/rc.subr b/contrib/dist/rc.subr
index d757e8952..d757e8952 100644
--- a/contrib/rc.subr
+++ b/contrib/dist/rc.subr
diff --git a/contrib/suse/include.am b/contrib/dist/suse/include.am
index 4aed0e123..4aed0e123 100644
--- a/contrib/suse/include.am
+++ b/contrib/dist/suse/include.am
diff --git a/contrib/suse/tor.sh.in b/contrib/dist/suse/tor.sh.in
index b7e9005eb..b7e9005eb 100644
--- a/contrib/suse/tor.sh.in
+++ b/contrib/dist/suse/tor.sh.in
diff --git a/contrib/tor.sh.in b/contrib/dist/tor.sh.in
index 92f890681..92f890681 100644
--- a/contrib/tor.sh.in
+++ b/contrib/dist/tor.sh.in
diff --git a/contrib/torctl.in b/contrib/dist/torctl.in
index 4cc137da4..4cc137da4 100644
--- a/contrib/torctl.in
+++ b/contrib/dist/torctl.in
diff --git a/contrib/make-signature.sh b/contrib/make-signature.sh
deleted file mode 100755
index 4aba08b75..000000000
--- a/contrib/make-signature.sh
+++ /dev/null
@@ -1,79 +0,0 @@
-#!/bin/sh
-
-set -eu
-
-if test "$1" = "" ; then
- echo "I need a package as an argument."
- exit 1
-fi
-
-PACKAGEFILE=$1
-
-if test ! -f "$PACKAGEFILE" ; then
- echo "$PACKAGEFILE is not a file."
- exit 1
-fi
-
-DIGESTNAME=sha256
-DIGESTOUTPUT=`gpg --print-md $DIGESTNAME $PACKAGEFILE`
-
-RAWDIGEST=`gpg --print-md $DIGESTNAME $PACKAGEFILE | sed -e 's/^[^ ]*: //' `
-
-# These regexes are a little fragile, but I think they work for us.
-VERSION=`echo $PACKAGEFILE | sed -e 's/^[a-z\-]*//' -e 's/\.[\.a-z]*$//' `
-PACKAGE=`echo $PACKAGEFILE | sed -e 's/-[0-9].*//'`
-SIGFILE_UNSIGNED="$PACKAGE-$VERSION-signature"
-SIGNATUREFILE="$SIGFILE_UNSIGNED.asc"
-
-cat >$SIGFILE_UNSIGNED <<EOF
-This is the signature file for "$PACKAGEFILE",
-which contains version "$VERSION" of "$PACKAGE".
-
-Here's how to check this signature.
-
-1) Make sure that this is really a signature file, and not a forgery,
- with:
-
- "gpg --verify $SIGNATUREFILE"
-
- The key should be one of the keys that signs the Tor release; the
- official Tor website has more information on those.
-
- If this step fails, then either you are missing the correct key, or
- this signature file was not really signed by a Tor packager.
- Beware!
-
-2) Make sure that the package you wanted is indeed "$PACKAGE", and that
- its version you wanted is indeed "$VERSION". If you wanted a
- different package, or a different version, this signature file is
- not the right one!
-
-3) Now that you're sure you have the right signature file, make sure
- that you got the right package. Check its $DIGESTNAME digest with
-
- "gpg --print-md $DIGESTNAME $PACKAGEFILE"
-
- The output should match this, exactly:
-
-$DIGESTOUTPUT
-
- Make sure that every part of the output matches: don't just check the
- first few characters. If the digest does not match, you do not have
- the right package file. It could even be a forgery.
-
-Frequently asked questions:
-
-Q: Why not just sign the package file, like you used to do?
-A: GPG signatures authenticate file contents, but not file names. If
- somebody gave you a renamed file with a matching renamed signature
- file, the signature would still be given as "valid".
-
---
-FILENAME: $PACKAGEFILE
-PACKAGE: $PACKAGE
-VERSION: $VERSION
-DIGESTALG: $DIGESTNAME
-DIGEST: $RAWDIGEST
-EOF
-
-gpg --clearsign $SIGFILE_UNSIGNED
diff --git a/contrib/mdd.py b/contrib/mdd.py
deleted file mode 100755
index e0b496b8f..000000000
--- a/contrib/mdd.py
+++ /dev/null
@@ -1,169 +0,0 @@
-#!/usr/bin/env python2.3
-
-import re, sys
-import textwrap
-
-files = sys.argv[1:]
-funcDeclaredIn = {}
-fileDeclares = {}
-functionCalls = {}
-funcCalledByFile = {}
-funcCalledByFunc = {}
-
-cpp_re = re.compile(r'//.*$')
-c_re = re.compile(r'/[*]+(?:[^*]+|[*]+[^/*])*[*]+/', re.M|re.S)
-
-for fname in files:
- f = open(fname, 'r')
- curFunc = "???"
- functionCalls.setdefault(curFunc,{})
- lineno = 0
- body = f.read()
- body = cpp_re.sub(" ",body)
- body = c_re.sub(" ",body)
- #if fname == 'dns.c': print body
- for line in body.split("\n"):
- lineno += 1
- m = re.match(r'^[^\s/].*\s(\w+)\([^;]*$', line)
- if m:
- #print line, "->", m.group(1)
- curFunc = m.group(1)
- if curFunc[0] == '_': curFunc = curFunc[1:]
- functionCalls.setdefault(curFunc,{})
- funcDeclaredIn[m.group(1)] = fname
- fileDeclares.setdefault(fname, {})[m.group(1)] = 1
- continue
- m = re.match(r'^(\w+)\([^;]', line)
- if m:
- #print line, "->", m.group(1)
- curFunc = m.group(1)
- if curFunc[0] == '_': curFunc = curFunc[1:]
- functionCalls.setdefault(curFunc,{})
- funcDeclaredIn[m.group(1)] = fname
- fileDeclares.setdefault(fname, {})[m.group(1)] = 1
- continue
- while line:
- m = re.search(r'(\w+)\(', line)
- if not m: break
- #print fname, line, curFunc, "->", m.group(1)
- fn = m.group(1)
- if fn[0] == '_':
- fn = fn[1:]
- functionCalls[curFunc][m.group(1)] = 1
- #if curFunc == "???":
- # print ">>!!!!! at %s:%s"%(fname,lineno)
- funcCalledByFunc.setdefault(m.group(1), {})[curFunc]=1
- funcCalledByFile.setdefault(m.group(1), {})[fname]=1
- line = line[m.end():]
-
- f.close()
-
-fileUsers = {}
-fileUses = {}
-
-for fname in files:
- print "%s:"%fname
- users = {}
- for func in fileDeclares[fname]:
- cb = funcCalledByFile.get(func,{}).keys()
- for f in cb: users[f] = 1
- #print "users[%s] = %s"%(f,users[f])
- users = users.keys()
- users.sort()
- fileUsers[fname] = users
- for user in users:
- fileUses.setdefault(user,[]).append(fname)
- if user == fname: continue
- print " from %s:"%user
- for func in fileDeclares[fname]:
- if funcCalledByFile.get(func,{}).get(user,0):
- print " %s()"%func
-
-def wrap(s, pre):
- return textwrap.fill(s,
- width=77, initial_indent=pre,
- subsequent_indent=" "*len(pre))
-
-for fname in files:
- print
- print "===== %s"%fname
- print wrap(" ".join(fileUses[fname]),
- " Calls: ")
- print wrap(" ".join(fileUsers[fname]),
- " Called by: ")
-
-print "=============================="
-
-funcnames = functionCalls.keys()
-funcnames.sort()
-
-if 1:
- for func in funcnames:
- print "===== %s"%func
- callers = [c for c in funcCalledByFunc.get(func,{}).keys()
- if c != "???"]
- callers.sort()
- called = [c for c in functionCalls[func].keys() if c != "???" and
- c in funcnames]
- called.sort()
- print wrap(" ".join(callers),
- " Called by:")
- print wrap(" ".join(called),
- " Calls:")
-
-# simple topological sort.
-functionDepth = {}
-while 1:
- BIG = 1000000
- any = 0
- for func in funcnames:
- if functionDepth.has_key(func):
- continue
- called = [c for c in functionCalls[func] if c != func and
- functionCalls.has_key(c)]
- if len(called) == 0:
- functionDepth[func] = 0
- #print "Depth(%s)=%s"%(func,0)
- any = 1
- continue
- calledDepths = [ functionDepth.get(c,BIG) for c in called ]
- if max(calledDepths) < BIG:
- d = functionDepth[func] = max(calledDepths)+1
- #print "Depth(%s)=%s"%(func,d)
- any = 1
- continue
- if not any:
- break
-
-# compute lexical closure.
-cycCalls = {}
-for func in funcnames:
- if not functionDepth.has_key(func):
- calls = [ c for c in functionCalls[func] if c != func and
- functionCalls.has_key(c) and not functionDepth.has_key(c)]
- cycCalls[func] = d = {}
- for c in calls:
- d[c]=1
-
-cycNames = cycCalls.keys()
-while 1:
- any = 0
- for func in cycNames:
- L = len(cycCalls[func])
- for called in cycCalls[func].keys():
- cycCalls[func].update(cycCalls[called])
- if L != len(cycCalls[func]):
- any = 1
- if not any:
- break
-
-depthList = [ (v,k) for k,v in functionDepth.items() ]
-depthList.sort()
-cycList = [ (len(v),k) for k,v in cycCalls.items() ]
-cycList.sort()
-for depth,name in depthList:
- print "Depth[%s]=%s"%(name,depth)
-for bredth,name in cycList:
- print "Width[%s]=%s"%(name,bredth)
-
-print "Sorted %s / %s"%(len(functionDepth),len(funcnames))
diff --git a/contrib/netinst.nsi b/contrib/netinst.nsi
deleted file mode 100644
index 08d950ab0..000000000
--- a/contrib/netinst.nsi
+++ /dev/null
@@ -1,74 +0,0 @@
-!include "MUI.nsh"
-!include "LogicLib.nsh"
-!include "FileFunc.nsh"
-
-!define VERSION "0.2.1.13"
-!define INSTALLER "TorNetInstaller.exe"
-!define WEBSITE "https://www.torproject.org/"
-!define LICENSE "LICENSE"
-
-SetCompressor /SOLID BZIP2
-RequestExecutionLevel user
-OutFile ${INSTALLER}
-InstallDir "$TEMP\TorInstTmp"
-SetOverWrite on
-Name "Tor Network Installer"
-Caption "Tor Network Installer"
-BrandingText "Tor Network Installer"
-CRCCheck on
-XPStyle on
-ShowInstDetails hide
-VIProductVersion "${VERSION}"
-VIAddVersionKey "ProductName" "Tor"
-VIAddVersionKey "Comments" "${WEBSITE}"
-VIAddVersionKey "LegalTrademarks" "Three line BSD"
-VIAddVersionKey "LegalCopyright" "©2004-2011, Roger Dingledine, Nick Mathewson, The Tor Project, Inc."
-VIAddVersionKey "FileDescription" "Tor is an implementation of Onion Routing. You can read more at ${WEBSITE}"
-VIAddVersionKey "FileVersion" "${VERSION}"
-
-!define MUI_ICON "torinst32.ico"
-!define MUI_HEADERIMAGE_BITMAP "${NSISDIR}\Contrib\Graphics\Header\win.bmp"
-!insertmacro MUI_PAGE_INSTFILES
-!insertmacro MUI_LANGUAGE "English"
-
-Section "Tor" Tor
- SectionIn RO
- SetOutPath $INSTDIR
- Call ExtractPackages
- Call RunInstallers
- Call LaunchVidalia
- Call CleanUpTemp
-SectionEnd
-
-Function ExtractPackages
- File "license.msi"
- File "thandy.msi"
-FunctionEnd
-
-Function RunInstallers
- ExecWait 'msiexec /i "$INSTDIR\license.msi" /qn'
- ExecWait 'msiexec /i "$INSTDIR\thandy.msi" NOSC=1 /qn'
- ExecWait '"$LOCALAPPDATA\Programs\Thandy\thandy.exe" update "--repo=$LOCALAPPDATA\Thandy\Tor Updates" /bundleinfo/tor/win32/'
- ExecWait '"$LOCALAPPDATA\Programs\Thandy\thandy.exe" update "--repo=$LOCALAPPDATA\Thandy\Polipo Updates" /bundleinfo/polipo/win32/'
- ExecWait '"$LOCALAPPDATA\Programs\Thandy\thandy.exe" update "--repo=$LOCALAPPDATA\Thandy\TorButton Updates" /bundleinfo/torbutton/win32/'
- ExecWait '"$LOCALAPPDATA\Programs\Thandy\thandy.exe" update "--repo=$LOCALAPPDATA\Thandy\Vidalia Updates" /bundleinfo/vidalia/win32/'
- ExecWait '"$LOCALAPPDATA\Programs\Thandy\thandy.exe" update --install "--repo=$LOCALAPPDATA\Thandy\Tor Updates" /bundleinfo/tor/win32/'
- ExecWait '"$LOCALAPPDATA\Programs\Thandy\thandy.exe" update --install "--repo=$LOCALAPPDATA\Thandy\Polipo Updates" /bundleinfo/polipo/win32/'
- ExecWait '"$LOCALAPPDATA\Programs\Thandy\thandy.exe" update --install "--repo=$LOCALAPPDATA\Thandy\TorButton Updates" /bundleinfo/torbutton/win32/'
- ExecWait '"$LOCALAPPDATA\Programs\Thandy\thandy.exe" update --install "--repo=$LOCALAPPDATA\Thandy\Vidalia Updates" /bundleinfo/vidalia/win32/'
- ExpandEnvStrings $0 %COMSPEC%
- Exec '"$0" /C "$INSTDIR\tbcheck.bat"'
-FunctionEnd
-
-Function LaunchVidalia
- SetOutPath "$LOCALAPPDATA\Programs\Vidalia"
- Exec 'vidalia.exe -loglevel info -logfile log.txt'
-FunctionEnd
-
-Function CleanUpTemp
- ExecWait '"del" "$INSTDIR\license.msi"'
- ExecWait '"del" "$INSTDIR\thandy.msi"'
- SetOutPath $TEMP
- RMDir /r $TEMP\TorInstTmp
-FunctionEnd
-
diff --git a/contrib/linux-tor-prio.sh b/contrib/operator-tools/linux-tor-prio.sh
index ea9e0ddaa..ea9e0ddaa 100644
--- a/contrib/linux-tor-prio.sh
+++ b/contrib/operator-tools/linux-tor-prio.sh
diff --git a/contrib/tor-exit-notice.html b/contrib/operator-tools/tor-exit-notice.html
index 8cf5c294f..8cf5c294f 100644
--- a/contrib/tor-exit-notice.html
+++ b/contrib/operator-tools/tor-exit-notice.html
diff --git a/contrib/tor.logrotate.in b/contrib/operator-tools/tor.logrotate.in
index 6e75f80bf..6e75f80bf 100644
--- a/contrib/tor.logrotate.in
+++ b/contrib/operator-tools/tor.logrotate.in
diff --git a/contrib/check-tor b/contrib/or-tools/check-tor
index e981a35fc..e981a35fc 100755
--- a/contrib/check-tor
+++ b/contrib/or-tools/check-tor
diff --git a/contrib/checksocks.pl b/contrib/or-tools/checksocks.pl
index 3fcc0df14..3fcc0df14 100755
--- a/contrib/checksocks.pl
+++ b/contrib/or-tools/checksocks.pl
diff --git a/contrib/exitlist b/contrib/or-tools/exitlist
index 3fd26b516..3fd26b516 100755
--- a/contrib/exitlist
+++ b/contrib/or-tools/exitlist
diff --git a/contrib/package_nsis-weasel.sh b/contrib/package_nsis-weasel.sh
deleted file mode 100755
index 8dd494852..000000000
--- a/contrib/package_nsis-weasel.sh
+++ /dev/null
@@ -1,90 +0,0 @@
-#!/bin/sh
-
-set -e
-
-#
-# Script to package a Tor installer on win32. This script assumes that
-# you have already built Tor, that you are running cygwin, and that your
-# environment is basically exactly the same as Nick's.
-
-if ! [ -d Win32Build ] || ! [ -d contrib ]; then
- echo "No Win32Build and/or no contrib directory here. Are we in the right place?" >&2
- exit 1
-fi
-
-rm -rf win_tmp
-mkdir win_tmp
-mkdir win_tmp/bin
-mkdir win_tmp/contrib
-mkdir win_tmp/doc
-mkdir win_tmp/doc/website
-mkdir win_tmp/doc/design-paper
-mkdir win_tmp/doc/contrib
-mkdir win_tmp/src
-mkdir win_tmp/src/config
-mkdir win_tmp/tmp
-
-cp Win32Build/vc7/Tor/Debug/Tor.exe win_tmp/bin/tor.exe
-cp Win32Build/vc7/tor_resolve/Debug/tor_resolve.exe win_tmp/bin
-cp ../c-windows-system32/libeay32.dll win_tmp/bin
-cp ../c-windows-system32/ssleay32.dll win_tmp/bin
-
-man2html doc/tor.1.in > win_tmp/tmp/tor-reference.html
-man2html doc/tor-resolve.1 > win_tmp/tmp/tor-resolve.html
-
-clean_newlines() {
- perl -pe 's/^\n$/\r\n/mg; s/([^\r])\n$/\1\r\n/mg;' $1 >$2
-}
-
-clean_localstatedir() {
- perl -pe 's/^\n$/\r\n/mg; s/([^\r])\n$/\1\r\n/mg; s{\@LOCALSTATEDIR\@/(lib|log)/tor/}{C:\\Documents and Settings\\Application Data\\Tor\\}' $1 >$2
-}
-
-for fn in \
- doc/HACKING \
- doc/control-spec.txt \
- doc/dir-spec.txt \
- doc/rend-spec.txt \
- doc/socks-extensions.txt \
- doc/tor-spec.txt \
- doc/version-spec.txt \
- \
- doc/website/* \
- ; do
- clean_newlines "$fn" win_tmp/"$fn"
-done
-mmv win_tmp/doc/website/"*.html.*" win_tmp/doc/website/"#1.#2.html"
-
-cp doc/design-paper/tor-design.pdf win_tmp/doc/design-paper/tor-design.pdf
-
-for fn in tor-reference.html tor-resolve.html; do \
- clean_newlines win_tmp/tmp/$fn win_tmp/doc/$fn
-done
-
-for fn in README AUTHORS ChangeLog LICENSE; do \
- clean_newlines $fn win_tmp/$fn
-done
-
-clean_localstatedir src/config/torrc.sample.in win_tmp/src/config/torrc.sample
-
-cp contrib/tor.nsi.in win_tmp/contrib/tor.nsi
-(
- echo '/WEBSITE-FILES-HERE/'
- echo 'a' # append
- for fn in win_tmp/doc/website/*; do
- echo -n 'File "..\doc\website\'
- echo -n "`basename $fn`"
- echo '"'
- done
- echo "." # end input
- echo "w" # write
- echo "q" # quit
-) | ed win_tmp/contrib/tor.nsi
-
-cd win_tmp/contrib
-
-echo "Now run"
-echo ' t:'
-echo ' cd \tor\win_tmp\contrib'
-echo ' c:\programme\nsis\makensis tor.nsi'
-echo ' move tor-*.exe ../../..'
diff --git a/contrib/package_nsis.sh b/contrib/package_nsis.sh
deleted file mode 100644
index 863dfdff9..000000000
--- a/contrib/package_nsis.sh
+++ /dev/null
@@ -1,57 +0,0 @@
-#!/bin/sh
-#
-# Script to package a Tor installer on win32. This script assumes that
-# you have already built Tor, that you are running cygwin, and that your
-# environment is basically exactly the same as Nick's.
-
-# This file is obsolete.
-
-rm -rf win_tmp
-mkdir win_tmp
-mkdir win_tmp/bin
-mkdir win_tmp/contrib
-mkdir win_tmp/doc
-mkdir win_tmp/doc/design-paper
-mkdir win_tmp/doc/contrib
-mkdir win_tmp/src
-mkdir win_tmp/src/config
-mkdir win_tmp/tmp
-
-cp Win32Build/vc7/Tor/Debug/Tor.exe win_tmp/bin/tor.exe
-cp Win32Build/vc7/tor_resolve/Debug/tor_resolve.exe win_tmp/bin
-cp c:/windows/system32/libeay32.dll win_tmp/bin
-cp c:/windows/system32/ssleay32.dll win_tmp/bin
-
-man2html doc/tor.1.in > win_tmp/tmp/tor-reference.html
-man2html doc/tor-resolve.1 > win_tmp/tmp/tor-resolve.html
-
-clean_newlines() {
- perl -pe 's/^\n$/\r\n/mg; s/([^\r])\n$/\1\r\n/mg;' $1 >$2
-}
-
-clean_localstatedir() {
- perl -pe 's/^\n$/\r\n/mg; s/([^\r])\n$/\1\r\n/mg; s{\@LOCALSTATEDIR\@/(lib|log)/tor/}{C:\\Documents and Settings\\Application Data\\Tor\\}' $1 >$2
-}
-
-for fn in tor-spec.txt HACKING rend-spec.txt control-spec.txt \
- tor-doc.html tor-doc.css version-spec.txt; do
- clean_newlines doc/$fn win_tmp/doc/$fn
-done
-
-cp doc/design-paper/tor-design.pdf win_tmp/doc/design-paper/tor-design.pdf
-
-for fn in tor-reference.html tor-resolve.html; do \
- clean_newlines win_tmp/tmp/$fn win_tmp/doc/$fn
-done
-
-for fn in README AUTHORS ChangeLog LICENSE; do \
- clean_newlines $fn win_tmp/$fn
-done
-
-clean_localstatedir src/config/torrc.sample.in win_tmp/src/config/torrc.sample
-
-cp contrib/tor.nsi win_tmp/contrib
-
-cd win_tmp/contrib
-makensis tor.nsi
-mv tor-*.exe ../..
diff --git a/contrib/polipo/Makefile.mingw b/contrib/polipo/Makefile.mingw
deleted file mode 100644
index ddb20ec48..000000000
--- a/contrib/polipo/Makefile.mingw
+++ /dev/null
@@ -1,100 +0,0 @@
-PREFIX = Polipo
-BINDIR = $(PREFIX)\bin
-MANDIR = $(PREFIX)\man
-INFODIR = $(PREFIX)\info
-LOCAL_ROOT = $(PREFIX)
-DISK_CACHE_ROOT = $(PREFIX)\cache
-
-# To compile with Unix CC:
-
-# CDEBUGFLAGS=-O
-
-# To compile with GCC:
-
-# CC = gcc
-# CDEBUGFLAGS = -Os -g -Wall -std=gnu99
-CDEBUGFLAGS = -Os -g -Wall
-# CDEBUGFLAGS = -Os -Wall
-# CDEBUGFLAGS = -g -Wall
-
-# To compile on a pure POSIX system:
-
-# CC = c89
-# CC = c99
-# CDEBUGFLAGS=-O
-
-# To compile with icc 7, you need -restrict. (Their bug.)
-
-# CC=icc
-# CDEBUGFLAGS = -O -restrict
-
-# On System V (Solaris, HP/UX) you need the following:
-
-# PLATFORM_DEFINES = -DSVR4
-
-# On Solaris, you need the following:
-
-# LDLIBS = -lsocket -lnsl -lresolv
-
-# On mingw, you need
-
- EXE=.exe
- LDLIBS = -lwsock32 -lregex
-
-FILE_DEFINES = -DHAVE_REGEX
-
-# You may optionally also add any of the following to DEFINES:
-#
-# -DNO_DISK_CACHE to compile out the on-disk cache and local web server;
-# -DNO_IPv6 to avoid using the RFC 3493 API and stick to stock
-# Berkeley sockets;
-# -DHAVE_IPv6 to force the use of the RFC 3493 API on systems other
-# than GNU/Linux and BSD (let me know if it works);
-# -DNO_FANCY_RESOLVER to compile out the asynchronous name resolution
-# code;
-# -DNO_STANDARD_RESOLVER to compile out the code that falls back to
-# gethostbyname/getaddrinfo when DNS requests fail;
-# -DNO_TUNNEL to compile out the code that handles CONNECT requests;
-# -DNO_SOCKS to compile out the SOCKS gateway code.
-# -DNO_FORBIDDEN to compile out the all of the forbidden URL code
-# -DNO_REDIRECTOR to compile out the Squid-style redirector code
-# -DNO_SYSLOG to compile out logging to syslog
-
-DEFINES = $(FILE_DEFINES) $(PLATFORM_DEFINES)
-
-CFLAGS = $(MD5INCLUDES) $(CDEBUGFLAGS) $(DEFINES) $(EXTRA_DEFINES)
-
-SRCS = util.c event.c io.c chunk.c atom.c object.c log.c diskcache.c main.c \
- config.c local.c http.c client.c server.c auth.c tunnel.c \
- http_parse.c parse_time.c dns.c forbidden.c \
- md5import.c md5.c ftsimport.c fts_compat.c socks.c mingw.c
-
-OBJS = util.o event.o io.o chunk.o atom.o object.o log.o diskcache.o main.o \
- config.o local.o http.o client.o server.o auth.o tunnel.o \
- http_parse.o parse_time.o dns.o forbidden.o \
- md5import.o ftsimport.o socks.o mingw.o
-
-polipo$(EXE): $(OBJS)
- $(CC) $(CFLAGS) $(LDFLAGS) -o polipo$(EXE) $(OBJS) $(MD5LIBS) $(LDLIBS)
-
-ftsimport.o: ftsimport.c fts_compat.c
-
-md5import.o: md5import.c md5.c
-
-.PHONY: all install install.binary install.man
-
-all: polipo$(EXE) polipo.info html/index.html localindex.html
-
-TAGS: $(SRCS)
- etags $(SRCS)
-
-.PHONY: clean
-
-clean:
- -rm -f polipo$(EXE) *.o *~ core TAGS gmon.out
- -rm -f polipo.cp polipo.fn polipo.log polipo.vr
- -rm -f polipo.cps polipo.info* polipo.pg polipo.toc polipo.vrs
- -rm -f polipo.aux polipo.dvi polipo.ky polipo.ps polipo.tp
- -rm -f polipo.dvi polipo.ps polipo.ps.gz polipo.pdf polipo.html
- -rm -rf ./html/
- -rm -f polipo.man.html
diff --git a/contrib/polipo/README b/contrib/polipo/README
deleted file mode 100644
index 1110ca273..000000000
--- a/contrib/polipo/README
+++ /dev/null
@@ -1,47 +0,0 @@
-Copyright 2007-2008, Andrew Lewman
-Copyright 2009-2011, The Tor Project
-
-----------------
-General Comments
-----------------
-
-These are some hacks for making polipo work and install a package native
-to Windows.
-
-They need some work before they can be committed upstream:
- - Change the Makefile so it has a specific build such as "make
- dist-win32"
- - Configure the options for tor in polipo config, just leave them
- commented out for easy activation.
- - Work out better polipo config options for Tor.
-
-As always, I'm happy to accept patches.
-
---------------------------
-Pre-requisites for Windows
---------------------------
-
-Polipo for Win32 requires the mingw gnu regex library and dlls at
-http://sourceforge.net/project/showfiles.php?group_id=2435&package_id=73286&release_id=140957
-
-You'll need to download the -bin and -dev tarballs. And extract them
-into your MinGW directory.
-
-Instructions for building polipo under mingw32 for Windows:
-1) Copy Makefile.mingw over Makefile.
-2) Run 'make'.
-
-You should have a polipo.exe in the current directory.
-
--------------------------------------------
-Creating an installation package in Windows
--------------------------------------------
-
-If you want to build an installer using the Nullsoft Installer, install
-the NSI Compiler. In Windows Explorer, navigate to the directory in
-which you placed polipo-mingw.nsi. Right click on polipo-mingw.nsi and
-choose Compile NSIS Script. You'll then create a polipo installer.
-
-The Polipo NSI installer assumes libgnurx-0.dll is in the same directory as polipo.exe.
-You'll need to copy libgnurx-0.dll into "./" in order to make the
-installation package.
diff --git a/contrib/polipo/polipo-mingw.nsi b/contrib/polipo/polipo-mingw.nsi
deleted file mode 100644
index f119675eb..000000000
--- a/contrib/polipo/polipo-mingw.nsi
+++ /dev/null
@@ -1,172 +0,0 @@
-;polipo-mingw.nsi - A basic win32 installer for Polipo
-; Originally written by J Doe.
-; Modified by Andrew Lewman
-; This is licensed under a Modified BSD license.
-;-----------------------------------------
-;
-!include "MUI.nsh"
-
-!define VERSION "1.0.4.0-forbidden-1"
-!define INSTALLER "polipo-${VERSION}-win32.exe"
-!define WEBSITE "http://www.pps.jussieu.fr/~jch/software/polipo/"
-
-!define LICENSE "COPYING"
-;BIN is where it expects to find polipo.exe
-!define BIN "."
-
-SetCompressor lzma
-OutFile ${INSTALLER}
-InstallDir $PROGRAMFILES\Polipo
-SetOverWrite ifnewer
-
-Name "Polipo"
-Caption "Polipo ${VERSION} Setup"
-BrandingText "A Caching Web Proxy"
-CRCCheck on
-XPStyle on
-VIProductVersion "${VERSION}"
-VIAddVersionKey "ProductName" "Polipo: A caching web proxy"
-VIAddVersionKey "Comments" "http://www.pps.jussieu.fr/~jch/software/polipo/"
-VIAddVersionKey "LegalTrademarks" "See COPYING"
-VIAddVersionKey "LegalCopyright" "©2008, Juliusz Chroboczek"
-VIAddVersionKey "FileDescription" "Polipo is a caching web proxy."
-VIAddVersionKey "FileVersion" "${VERSION}"
-
-!define MUI_WELCOMEPAGE_TITLE "Welcome to the Polipo ${VERSION} Setup Wizard"
-!define MUI_WELCOMEPAGE_TEXT "This wizard will guide you through the installation of Polipo ${VERSION}.\r\n\r\nIf you have previously installed Polipo and it is currently running, please exit Polipo first before continuing this installation.\r\n\r\n$_CLICK"
-!define MUI_ABORTWARNING
-!define MUI_ICON "${NSISDIR}\Contrib\Graphics\Icons\win-install.ico"
-!define MUI_UNICON "${NSISDIR}\Contrib\Graphics\Icons\win-uninstall.ico"
-!define MUI_HEADERIMAGE_BITMAP "${NSISDIR}\Contrib\Graphics\Header\win.bmp"
-!define MUI_HEADERIMAGE
-;!define MUI_FINISHPAGE_RUN
-!define MUI_FINISHPAGE_LINK "Visit the Polipo website for the latest updates."
-!define MUI_FINISHPAGE_LINK_LOCATION ${WEBSITE}
-
-!insertmacro MUI_PAGE_WELCOME
-!insertmacro MUI_PAGE_COMPONENTS
-!insertmacro MUI_PAGE_DIRECTORY
-!insertmacro MUI_PAGE_INSTFILES
-!insertmacro MUI_PAGE_FINISH
-!insertmacro MUI_UNPAGE_WELCOME
-!insertmacro MUI_UNPAGE_CONFIRM
-!insertmacro MUI_UNPAGE_INSTFILES
-!insertmacro MUI_UNPAGE_FINISH
-!insertmacro MUI_LANGUAGE "English"
-
-Var configfile
-Var forbiddenfile
-
-;Sections
-;--------
-
-Section "Polipo" Polipo
-;Files that have to be installed for polipo to run and that the user
-;cannot choose not to install
- SectionIn RO
- SetOutPath $INSTDIR
- File "${BIN}\polipo.exe"
- File "${BIN}\COPYING"
- File "${BIN}\CHANGES"
- File "${BIN}\config.sample"
- File "${BIN}\forbidden.sample"
- File "${BIN}\README.Windows"
- File "${BIN}\libgnurx-0.dll"
- WriteIniStr "$INSTDIR\Polipo Website.url" "InternetShortcut" "URL" ${WEBSITE}
-
- StrCpy $configfile "config"
- StrCpy $forbiddenfile "forbidden"
- SetOutPath $INSTDIR
- ;If there's already a polipo config file, ask if they want to
- ;overwrite it with the new one.
- IfFileExists "$INSTDIR\config" "" endifconfig
- MessageBox MB_ICONQUESTION|MB_YESNO "You already have a Polipo config file.$\r$\nDo you want to overwrite it with the default sample config file?" IDNO yesreplace
- Delete $INSTDIR\config
- Goto endifconfig
- yesreplace:
- StrCpy $configfile ".\config.sample"
- endifconfig:
- File /oname=$configfile ".\config.sample"
- ;If there's already a polipo forbidden file, ask if they want to
- ;overwrite it with the new one.
- IfFileExists "$INSTDIR\forbidden" "" endifforbidden
- MessageBox MB_ICONQUESTION|MB_YESNO "You already have a Polipo forbidden file.$\r$\nDo you want to overwrite it with the default sample forbidden file?" IDNO forbidyesreplace
- Delete $INSTDIR\forbidden
- Goto endifforbidden
- forbidyesreplace:
- StrCpy $forbiddenfile ".\forbidden.sample"
- endifforbidden:
- File /oname=$forbiddenfile ".\forbidden.sample"
- IfFileExists "$INSTDIR\bin\*.*" "" endifbinroot
- CreateDirectory "$INSTDIR\bin"
- endifbinroot:
- CopyFiles "${BIN}\localindex.html" $INSTDIR\index.html
- IfFileExists "$INSTDIR\cache\*.*" "" endifcache
- CreateDirectory "$INSTDIR\cache"
- endifcache:
-SectionEnd
-
-SubSection /e "Shortcuts" Shortcuts
-
-Section "Start Menu" StartMenu
- SetOutPath $INSTDIR
- IfFileExists "$SMPROGRAMS\Polipo\*.*" "" +2
- RMDir /r "$SMPROGRAMS\Polipo"
- CreateDirectory "$SMPROGRAMS\Polipo"
- CreateShortCut "$SMPROGRAMS\Polipo\Polipo.lnk" "$INSTDIR\polipo.exe" "-c config"
- CreateShortCut "$SMPROGRAMS\Polipo\Poliporc.lnk" "Notepad.exe" "$INSTDIR\config"
- CreateShortCut "$SMPROGRAMS\Polipo\Polipo Documentation.lnk" "$INSTDIR\www\index.html"
- CreateShortCut "$SMPROGRAMS\Polipo\Polipo Website.lnk" "$INSTDIR\Polipo Website.url"
- CreateShortCut "$SMPROGRAMS\Polipo\Uninstall.lnk" "$INSTDIR\Uninstall.exe"
-SectionEnd
-
-Section "Desktop" Desktop
- SetOutPath $INSTDIR
- CreateShortCut "$DESKTOP\Polipo.lnk" "$INSTDIR\polipo.exe" "-c config"
-SectionEnd
-
-Section /o "Run at startup" Startup
- SetOutPath $INSTDIR
- CreateShortCut "$SMSTARTUP\Polipo.lnk" "$INSTDIR\polipo.exe" "-c config -f forbidden" "" "" "" SW_SHOWMINIMIZED
-SectionEnd
-
-SubSectionEnd
-
-Section "Uninstall"
- Delete "$DESKTOP\Polipo.lnk"
- Delete "$INSTDIR\polipo.exe"
- Delete "$INSTDIR\Polipo Website.url"
- Delete "$INSTDIR\config"
- Delete "$INSTDIR\config.sample"
- Delete "$INSTDIR\forbidden.sample"
- Delete "$INSTDIR\libgnurx-0.dll"
- Delete "$INSTDIR\COPYING"
- Delete "$INSTDIR\CHANGES"
- Delete "$INSTDIR\README.Windows"
- StrCmp $INSTDIR $INSTDIR +2 ""
- RMDir /r $INSTDIR
- Delete "$INSTDIR\Uninstall.exe"
- RMDir /r "$INSTDIR\Documents"
- RMDir $INSTDIR
- RMDir /r "$SMPROGRAMS\Polipo"
- RMDir /r "$APPDATA\Polipo"
- Delete "$SMSTARTUP\Polipo.lnk"
- DeleteRegKey HKLM "SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\Polipo"
-SectionEnd
-
-Section -End
- WriteUninstaller "$INSTDIR\Uninstall.exe"
- ;The registry entries simply add the Polipo uninstaller to the Windows
- ;uninstall list.
- WriteRegStr HKLM "Software\Microsoft\Windows\CurrentVersion\Uninstall\Polipo" "DisplayName" "Polipo (remove only)"
- WriteRegStr HKLM "Software\Microsoft\Windows\CurrentVersion\Uninstall\Polipo" "UninstallString" '"$INSTDIR\Uninstall.exe"'
-SectionEnd
-
-!insertmacro MUI_FUNCTION_DESCRIPTION_BEGIN
- !insertmacro MUI_DESCRIPTION_TEXT ${Polipo} "The core executable and config files needed for Polipo to run."
- !insertmacro MUI_DESCRIPTION_TEXT ${ShortCuts} "Shortcuts to easily start Polipo"
- !insertmacro MUI_DESCRIPTION_TEXT ${StartMenu} "Shortcuts to access Polipo and its documentation from the Start Menu"
- !insertmacro MUI_DESCRIPTION_TEXT ${Desktop} "A shortcut to start Polipo from the desktop"
- !insertmacro MUI_DESCRIPTION_TEXT ${Startup} "Launches Polipo automatically at startup in a minimized window"
-!insertmacro MUI_FUNCTION_DESCRIPTION_END
-
diff --git a/contrib/sd b/contrib/sd
deleted file mode 100755
index 232e8accd..000000000
--- a/contrib/sd
+++ /dev/null
@@ -1,84 +0,0 @@
-#!/bin/bash
-#
-# Copyright (c) 2005, 2006, 2007, 2008 Peter Palfrader <peter@palfrader.org>
-# Copyright (c) 2008, 2009 Jacob Appelbaum <jacob@appelbaum.net>
-#
-# Permission is hereby granted, free of charge, to any person obtaining
-# a copy of this software and associated documentation files (the
-# "Software"), to deal in the Software without restriction, including
-# without limitation the rights to use, copy, modify, merge, publish,
-# distribute, sublicense, and/or sell copies of the Software, and to
-# permit persons to whom the Software is furnished to do so, subject to
-# the following conditions:
-#
-# The above copyright notice and this permission notice shall be
-# included in all copies or substantial portions of the Software.
-#
-# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
-# EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
-# MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
-# NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
-# LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
-# OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
-# WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
-#
-# This small script fetches information about a server when given a nickname.
-# It currently uses the v2 dir information and not the v3 consensus by default.
-# It requires wget, perl, awk to function properly. This is based on a zsh
-# dotfile from weasel and adapted to be a small bash utility.
-#
-
-# Feel free to set any authority you desire, we're using weasel's by default
-# You could also try the v3 directory infomation in weasel's dir authority:
-# http://tor.noreply.org/tor/status-vote/current/consensus
-#
-
-# Users can select between the two
-v3authority="http://tor.noreply.org/tor/status-vote/current/consensus";
-v2authority="http://tor.noreply.org:80/tor/status/authority";
-authority=$v2authority;
-
-function usage {
- echo "Usage: $0 [-2|-3] nodenickname";
-}
-
-if [ -z "$1" ];
-then
- usage;
- exit;
-fi
-
-# Are we switching between v2 or v3?
-if [ "$1" == "-2" -o "$1" == "-3" ];
-then
- if [ "$1" == "-2" -a -n "$2" ];
- then
- authority=$v2authority;
- nickname="$2";
- elif [ "$1" == "-3" -a -n "$2" ];
- then
- authority=$v3authority;
- nickname="$2";
- else
- usage;
- exit;
- fi
-else
- nickname="$1";
-fi
-
-# Fetch it and decode the fingerprint
-fp=`wget -q -O - $authority | \
- awk '$1 == "r" && $2 == "'$nickname'" {printf "%s===", $3}' | \
- perl -MMIME::Base64 -e "print unpack(\"H*\", decode_base64(<>)),\"\n\"";`
-
-# If we don't have a fingerprint, we don't have a match
-if [ "$fp" != "" ];
-then
- wget -q -O - http://tor.noreply.org:80/tor/server/fp/$fp;
- exit $?;
-else
- echo "It appears the nickname is not currently known by the directory" \
- "authority."
- exit 1;
-fi
diff --git a/contrib/tor-ctrl.sh b/contrib/tor-ctrl.sh
deleted file mode 100644
index 58320ced1..000000000
--- a/contrib/tor-ctrl.sh
+++ /dev/null
@@ -1,212 +0,0 @@
-#!/bin/bash
-#
-# tor-ctrl is a commandline tool for executing commands on a tor server via
-# the controlport. In order to get this to work, add "ControlPort 9051" and
-# "CookieAuthentication 1" to your torrc and reload tor. Or - if you want a
-# fixed password - leave out "CookieAuthentication 1" and use the following
-# line to create the appropriate HashedControlPassword entry for your torrc
-# (you need to change yourpassword, of course):
-#
-# echo "HashedControlPassword $(tor --hash-password yourpassword | tail -n 1)"
-#
-# tor-ctrl will return 0 if it was successful and 1 if not, 2 will be returned
-# if something (telnet, xxd) is missing. 4 will be returned if it executed
-# several commands from a file.
-#
-# For setting the bandwidth for specific times of the day, I suggest calling
-# tor-ctrl via cron, e.g.:
-#
-# 0 22 * * * /path/to/tor-ctrl -c "SETCONF bandwidthrate=1mb"
-# 0 7 * * * /path/to/tor-ctrl -c "SETCONF bandwidthrate=100kb"
-#
-# This would set the bandwidth to 100kb at 07:00 and to 1mb at 22:00. You can
-# use notations like 1mb, 1kb or the number of bytes.
-#
-# Many, many other things are possible, see
-# https://www.torproject.org/svn/trunk/doc/spec/control-spec.txt
-#
-# Copyright (c) 2007 by Stefan Behte
-#
-# tor-ctrl is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation; either version 2 of the License, or
-# (at your option) any later version.
-#
-# tor-ctrl is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with tor-ctrl; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
-#
-# Written by Stefan Behte
-#
-# Please send bugs, comments, wishes, thanks and success stories to:
-# Stefan dot Behte at gmx dot net
-#
-# Also have a look at my page:
-# http://ge.mine.nu/
-#
-# 2007-10-03: First version, only changing bandwidth possible.
-# 2007-10-04: Renaming to "tor-ctrl", added a lot of functions, it's now a
-# general-purpose tool.
-# Added control_auth_cookie/controlpassword auth, getopts,
-# program checks, reading from file etc.
-
-VERSION=v1
-TORCTLIP=127.0.0.1
-TORCTLPORT=9051
-TOR_COOKIE="/var/lib/tor/data/control_auth_cookie"
-SLEEP_AFTER_CMD=1
-VERBOSE=0
-
-usage()
-{
-cat <<EOF
-
-tor-ctrl $VERSION by Stefan Behte (http://ge.mine.nu)
-You should have a look at
-https://www.torproject.org/svn/trunk/doc/spec/control-spec.txt
-
-usage: tor-ctrl [-switch] [variable]
-
- [-c] [command] = command to execute
- notice: always "quote" your command
-
- [-f] [file] = file to execute commands from
- notice: only one command per line
-
- [-a] [path] = path to tor's control_auth_cookie
- default: /var/lib/tor/data/control_auth_cookie
- notice: do not forget to adjust your torrc
-
- [-s] [time] = sleep [var] seconds after each command sent
- default: 1 second
- notice: for GETCONF, you can use smaller pause times
- than for SETCONF; this is due to telnet's behaviour.
-
- [-p] [pwd] = Use password [var] instead of tor's control_auth_cookie
- default: not used
- notice: do not forget to adjust your torrc
-
- [-P] [port] = Tor ControlPort
- default: 9051
-
- [-v] = verbose
- default: not set
- notice: the default output is the return code ;)
- You propably want to set -v when running manually
-
- Examples: $0 -c "SETCONF bandwidthrate=1mb"
- $0 -v -c "GETINFO version"
- $0 -v -s 0 -P 9051 -p foobar -c "GETCONF bandwidthrate"
-
-EOF
-exit 2
-}
-
-checkprogs()
-{
- programs="telnet"
- if [ "$PASSWORD" = "" ]
- then
- # you only need xxd when using control_auth_cookie
- programs="$programs xxd"
- fi
-
- for p in $programs
- do
- which $p &>/dev/null # are you there?
- if [ "$?" != "0" ]
- then
- echo "$p is missing."
- exit 2
- fi
- done
-}
-
-sendcmd()
-{
- echo "$@"
- sleep ${SLEEP_AFTER_CMD}
-}
-
-login()
-{
- if [ "$PASSWORD" = "" ]
- then
- sendcmd "AUTHENTICATE $(xxd -c 32 -g 0 ${TOR_COOKIE} | awk '{print $2}')"
- else
- sendcmd "AUTHENTICATE \"${PASSWORD}\""
- fi
-}
-
-cmdpipe()
-{
- login
- sendcmd "$@"
- sendcmd "QUIT"
-}
-
-vecho()
-{
- if [ $VERBOSE -ge 1 ]
- then
- echo "$@"
- fi
-}
-
-myecho()
-{
- STR=$(cat)
- vecho "$STR"
-
- echo "$STR" | if [ "$(grep -c ^"250 ")" = 3 ]
- then
- exit 0
- else
- exit 1
- fi
-}
-
-filepipe()
-{
- login
- cat "$1" | while read line
- do
- sendcmd "$line"
- done
- sendcmd "QUIT"
-}
-
-while getopts ":a:c:s:p:P:f:vh" Option
-do
- case $Option in
- a) TOR_COOKIE="${OPTARG}";;
- c) CMD="${OPTARG}";;
- s) SLEEP_AFTER_CMD="${OPTARG}";;
- p) PASSWORD="${OPTARG}";;
- P) TORCTLPORT="${OPTARG}";;
- f) FILE="${OPTARG}";;
- v) VERBOSE=1;;
- h) usage;;
- *) usage;;
- esac
-done
-
-if [ -e "$FILE" ]
-then
- checkprogs
- filepipe "$FILE" | telnet $TORCTLIP $TORCTLPORT 2>/dev/null | myecho
- exit 4
-fi
-
-if [ "$CMD" != "" ]
-then
- checkprogs
- cmdpipe $CMD | telnet $TORCTLIP $TORCTLPORT 2>/dev/null | myecho
-else
- usage
-fi
diff --git a/contrib/tor-stress b/contrib/tor-stress
deleted file mode 100755
index a0c88c2fd..000000000
--- a/contrib/tor-stress
+++ /dev/null
@@ -1,27 +0,0 @@
-#!/usr/bin/perl
-
-#require 'sys/syscall.ph';
-$|=1;
-
-$total = 1;
-$target = "http://www.cnn.com/";
-
-for($i=0;$i<$total;$i++) {
- print "Starting client $i\n";
- $pid = fork();
- if(!$pid) {
- open(FD,"wget -q -O - $target|");
- $c = 0;
- while(<FD>) {
- $c += length($_);
- }
-# $TIMEVAL_T = "LL";
-# $now = pack($TIMEVAL_T, ());
-# syscall(&SYS_gettimeofday, $now, 0) != -1 or die "gettimeofday: $!";
-# @now = unpack($TIMEVAL_T, $now);
- print "Client $i exiting ($c chars).\n";
- exit(0);
- }
-# sleep(1);
-}
-
diff --git a/contrib/torinst32.ico b/contrib/torinst32.ico
deleted file mode 100644
index ccbad9b15..000000000
--- a/contrib/torinst32.ico
+++ /dev/null
Binary files differ
diff --git a/contrib/package_nsis-mingw.sh b/contrib/win32build/package_nsis-mingw.sh
index b8a46cdbe..b8a46cdbe 100644
--- a/contrib/package_nsis-mingw.sh
+++ b/contrib/win32build/package_nsis-mingw.sh
diff --git a/contrib/tor-mingw.nsi.in b/contrib/win32build/tor-mingw.nsi.in
index 0e1594dd3..0e1594dd3 100644
--- a/contrib/tor-mingw.nsi.in
+++ b/contrib/win32build/tor-mingw.nsi.in
diff --git a/contrib/tor.ico b/contrib/win32build/tor.ico
index 0cac29704..0cac29704 100644
--- a/contrib/tor.ico
+++ b/contrib/win32build/tor.ico
Binary files differ
diff --git a/contrib/tor.nsi.in b/contrib/win32build/tor.nsi.in
index dd24df454..dd24df454 100644
--- a/contrib/tor.nsi.in
+++ b/contrib/win32build/tor.nsi.in
diff --git a/contrib/xenobite.ico b/contrib/xenobite.ico
deleted file mode 100644
index 352394eef..000000000
--- a/contrib/xenobite.ico
+++ /dev/null
Binary files differ
diff --git a/contrib/checkLogs.pl b/scripts/maint/checkLogs.pl
index b00503e9a..b00503e9a 100755
--- a/contrib/checkLogs.pl
+++ b/scripts/maint/checkLogs.pl
diff --git a/contrib/checkOptionDocs.pl b/scripts/maint/checkOptionDocs.pl
index 23e57b489..23e57b489 100755
--- a/contrib/checkOptionDocs.pl
+++ b/scripts/maint/checkOptionDocs.pl
diff --git a/contrib/checkSpace.pl b/scripts/maint/checkSpace.pl
index 682dbced0..682dbced0 100755
--- a/contrib/checkSpace.pl
+++ b/scripts/maint/checkSpace.pl
diff --git a/contrib/findMergedChanges.pl b/scripts/maint/findMergedChanges.pl
index d6c4105b7..d6c4105b7 100755
--- a/contrib/findMergedChanges.pl
+++ b/scripts/maint/findMergedChanges.pl
diff --git a/contrib/format_changelog.py b/scripts/maint/format_changelog.py
index 6997d958a..6997d958a 100755
--- a/contrib/format_changelog.py
+++ b/scripts/maint/format_changelog.py
diff --git a/contrib/redox.py b/scripts/maint/redox.py
index 550f84686..550f84686 100755
--- a/contrib/redox.py
+++ b/scripts/maint/redox.py
diff --git a/contrib/updateVersions.pl b/scripts/maint/updateVersions.pl
index 9dae1ff95..9dae1ff95 100755
--- a/contrib/updateVersions.pl
+++ b/scripts/maint/updateVersions.pl
diff --git a/contrib/cov-blame b/scripts/test/cov-blame
index 601f21195..601f21195 100755
--- a/contrib/cov-blame
+++ b/scripts/test/cov-blame
diff --git a/contrib/cov-diff b/scripts/test/cov-diff
index 33a54802b..33a54802b 100755
--- a/contrib/cov-diff
+++ b/scripts/test/cov-diff
diff --git a/contrib/coverage b/scripts/test/coverage
index f4ae47582..f4ae47582 100755
--- a/contrib/coverage
+++ b/scripts/test/coverage
diff --git a/contrib/scan-build.sh b/scripts/test/scan-build.sh
index 623b227fe..623b227fe 100644
--- a/contrib/scan-build.sh
+++ b/scripts/test/scan-build.sh