]> git.ipfire.org Git - thirdparty/tor.git/commitdiff
A changelog entry and a bit more documentation for socks-client
authorNick Mathewson <nickm@torproject.org>
Wed, 26 Aug 2009 15:34:45 +0000 (11:34 -0400)
committerNick Mathewson <nickm@torproject.org>
Wed, 26 Aug 2009 15:34:45 +0000 (11:34 -0400)
ChangeLog
src/or/config.c
src/or/or.h
src/or/reasons.c

index 2428bed99616ab11842ec701e62aee6942167f50..5b169956d3e89d2ac95c0374449f1db485a72629 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -2,6 +2,9 @@ Changes in version 0.2.2.1-alpha - 2009-0?-??
   o Major features:
     - Add support for dynamic OpenSSL hardware crypto acceleration engines
       via new AccelName and AccelDir options.
+    - Tor now supports tunneling all of its outgoing connections over a SOCKS
+      proxy, using the SOCKS4Proxy and/or SOCKS5Proxy configuration options.
+      Code by Christopher Davis.
 
   o New options for gathering stats safely:
     - Directories that configure with --enable-dirreq-stats and set
index c5a5b946fe84555e2e7830aa13eedc54c8c4ce4d..7944aa1001b1678e7a65270c8327f11474b659c7 100644 (file)
@@ -3533,6 +3533,9 @@ options_validate(or_options_t *old_options, or_options_t *options,
     }
   }
 
+  if (options->Socks4Proxy && options->Socks5Proxy)
+    REJECT("You cannot specify both Socks4Proxy and SOCKS5Proxy");
+
   if (options->Socks5ProxyUsername) {
     size_t len;
 
index df57f3048d75c45dd1b070584e6a05a61bdc99c5..1aa40af61be20e33d84de4fd5386a547af0ddbb5 100644 (file)
@@ -2392,15 +2392,15 @@ typedef struct {
   uint16_t HttpsProxyPort; /**< Parsed port for https proxy, if any. */
   char *HttpsProxyAuthenticator; /**< username:password string, if any. */
 
-  char *Socks4Proxy;
-  tor_addr_t Socks4ProxyAddr;
-  uint16_t Socks4ProxyPort;
-
-  char *Socks5Proxy;
-  tor_addr_t Socks5ProxyAddr;
-  uint16_t Socks5ProxyPort;
-  char *Socks5ProxyUsername;
-  char *Socks5ProxyPassword;
+  char *Socks4Proxy; /**< hostname:port to use as a SOCKS4 proxy, if any. */
+  tor_addr_t Socks4ProxyAddr; /**< Derived from Socks4Proxy. */
+  uint16_t Socks4ProxyPort; /**< Derived from Socks4Proxy. */
+
+  char *Socks5Proxy; /**< hostname:port to use as a SOCKS5 proxy, if any. */
+  tor_addr_t Socks5ProxyAddr; /**< Derived from Sock5Proxy. */
+  uint16_t Socks5ProxyPort; /**< Derived from Socks5Proxy. */
+  char *Socks5ProxyUsername; /**< Username for SOCKS5 authentication, if any */
+  char *Socks5ProxyPassword; /**< Password for SOCKS5 authentication, if any */
 
   /** List of configuration lines for replacement directory authorities.
    * If you just want to replace one class of authority at a time,
index 78a16af10e52cc9efc05e3e87a4ef256a975f9ba..0544990679af6739c02b5cd37fdbb1b836799d4a 100644 (file)
@@ -326,6 +326,7 @@ circuit_end_reason_to_control_string(int reason)
   }
 }
 
+/** Return a string corresponding to a SOCKS4 reponse code. */
 const char *
 socks4_response_code_to_string(uint8_t code)
 {
@@ -343,6 +344,7 @@ socks4_response_code_to_string(uint8_t code)
   }
 }
 
+/** Return a string corresponding to a SOCKS5 reponse code. */
 const char *
 socks5_response_code_to_string(uint8_t code)
 {