Avoid recursion when processing residual inbuf data.
[shim.git] / README
blobcd94e18c884199b6d9e1ca7a78f2c7ed127b6b06
2 shim -- wedge this HTTP proxy between your browser and Tor 
4 Dependencies
5 -------------
7 You'll need Libevent 2 or greater!
10 How to Build and Install
11 -------------------------
13 1. Install Libevent 2 somewhere if it hasn't been already.
14 2. ./configure
15 3. make
16 4. make install
18 Notes: 
19 * If you installed Libevent somewhere non-standard, you might need to export
20 PKG_CONFIG_PATH or LIBEVENT_CFLAGS and LIBEVENT_LIBS environment variables, and
21 then run ./configure again.
23 * If you're concerned about the proxy making direct connections (including
24 connections to HTTP servers and DNS servers), you can add the
25 --disable-direct-connections switch to configure. This will force you to
26 run shim with a SOCKS 4a server, returning an error message if one isn't
27 configured.
29 * If you're trying to debug a problem, and you're using GNU GCC, GDB etc,
30 you can:
32         make clean
33         make CFLAGS='-g -Wall'
35 ... to prevent optimization that might interfere with your GDB sessions.
38 Command Line Arguments
39 -----------------------
41 shim [-l host] [-p port] [-qVv] [socks proxy]
44         The address to listen on, or "any" to listen on all available
45         interfaces. The default listen address is 127.0.0.1
48         The port to listen on. Default is 8123.
51         Decrease verbosity. You can specify this option more than once.
54         Increase verbosity. You can specify this option more than once.
57         Print the version and exit.
59 socks proxy
60         This is an optional argument specifying the SOCKS server to make
61         connections through. SOCKS proxies are specified like this:
63                 socks_version://address[:port]
65         Recognized SOCKS versions are socks4 and socks4a. With socks4, all
66         host names are resolved through your name server, while with socks4a,
67         host names are passed to your SOCKS server. The port is optional. By
68         default it is set to 1080.
70         To use shim with a typically-configured Tor:
72                 socks4a://127.0.0.1:9050
74         If you built shim with --disable-direct-connections, you'll want
75         socks4a!
78 Where to Report Bugs
79 -------------------
81 Christopher Davis <chrisd@torproject.org>