aboutsummaryrefslogtreecommitdiff
path: root/contrib/torify.in
blob: 05645fd07ca352f3780ea5d9287082eb8a41b388 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
#! /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?
TSOCKS="`which tsocks`"
if [ ! -x "$TSOCKS" ]
then
        echo "$0: Can't find tsocks in PATH. Perhaps you haven't installed it?" >&2
        exit 1
fi

# Check for any argument list
if [ "$#" = 0 ]
then
        echo "Usage: $0 <command> [<options>...]" >&2
        exit 1
fi
if [ "$#" = 1 ] && ( [ "$1" = "-h" ] || [ "$1" = "--help" ] )
then
        echo "Usage: $0 <command> [<options>...]"
        exit 0
fi

# Define our tsocks config file
TSOCKS_CONF_FILE="@CONFDIR@/tor-tsocks.conf"
export TSOCKS_CONF_FILE

# Check that we've got a tsocks config file
if [ -r "$TSOCKS_CONF_FILE" ]
then
	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