mirror of
https://gitlab.torproject.org/tpo/core/tor.git
synced 2024-11-28 14:23:30 +01:00
9043932789
Update Torify to use torsocks by default and to warn when the user is using the older tsocks program. Update torify and the torify man page to refelect changes to torify. Add warnings in both.
77 lines
1.8 KiB
Bash
Executable File
77 lines
1.8 KiB
Bash
Executable File
#! /bin/sh
|
|
|
|
# Wrapper script for use of the tsocks(8) transparent socksification library
|
|
# See the tsocks(1) and torify(1) manpages.
|
|
|
|
# Copyright (c) 2004, 2006 Peter Palfrader
|
|
# Modified by Jacob Appelbaum <jacob@appelbaum.net> April 16th 2006
|
|
# May be distributed under the same terms as Tor itself
|
|
|
|
|
|
# Define and ensure we have tsocks
|
|
# XXX: what if we don't have which?
|
|
TORSOCKS="`which torsocks`"
|
|
TSOCKS="`which tsocks`"
|
|
PROG=""
|
|
if [ ! -x "$TSOCKS" ]
|
|
then
|
|
echo "$0: Can't find tsocks in PATH. Perhaps you haven't installed it?" >&2
|
|
else
|
|
PROG=$TSOCKS
|
|
fi
|
|
if [ ! -x "$TORSOCKS" ]
|
|
then
|
|
echo "$0: Can't find torsocks in PATH. Perhaps you haven't installed it?" >&2
|
|
else
|
|
PROG=$TORSOCKS
|
|
fi
|
|
|
|
if [ ! -x "$PROG" ]
|
|
then
|
|
echo "$0: Can't find the required tor helpers in our PATH. Perhaps you haven't installed them?" >&2
|
|
exit 1;
|
|
fi
|
|
|
|
# Check for any argument list
|
|
if [ "$#" = 0 ]
|
|
then
|
|
echo "Usage: $0 [-hv] <command> [<options>...]" >&2
|
|
exit 1
|
|
fi
|
|
if [ "$#" = 1 ] && ( [ "$1" = "-h" ] || [ "$1" = "--help" ] )
|
|
then
|
|
echo "Usage: $0 [-hv] <command> [<options>...]"
|
|
exit 0
|
|
fi
|
|
|
|
if [ "$1" = "-v" ] || [ "$1" = "--verbose" ]
|
|
then
|
|
echo "We're armed with the following tsocks: $TSOCKS"
|
|
echo "We're armed with the following torsocks: $TORSOCKS"
|
|
echo "We're attempting to use $PROG for all tor action."
|
|
shift 1
|
|
fi
|
|
|
|
if [ "$PROG" == "$TSOCKS" ]
|
|
then
|
|
# Define our tsocks config file
|
|
TSOCKS_CONF_FILE="/etc/tor/tor-tsocks.conf"
|
|
export TSOCKS_CONF_FILE
|
|
|
|
# Check that we've got a tsocks config file
|
|
if [ -r "$TSOCKS_CONF_FILE" ]
|
|
then
|
|
echo "WARNING: tsocks is known to leak DNS and UDP data." >&2
|
|
exec tsocks "$@"
|
|
echo "$0: Failed to exec tsocks $@" >&2
|
|
exit 1
|
|
else
|
|
echo "$0: Missing tsocks configuration file \"$TSOCKS_CONF_FILE\"." >&2
|
|
exit 1
|
|
fi
|
|
fi
|
|
if [ "$PROG" == "$TORSOCKS" ]
|
|
then
|
|
exec torsocks "$@"
|
|
fi
|