[Author Prev][Author Next][Thread Prev][Thread Next][Author Index][Thread Index]

[or-cvs] r9110: - Stop sending the HttpProxyAuthenticator string to director (in tor/branches/tor-0_1_1-patches: . src/or)



Author: arma
Date: 2006-12-14 19:07:50 -0500 (Thu, 14 Dec 2006)
New Revision: 9110

Modified:
   tor/branches/tor-0_1_1-patches/ChangeLog
   tor/branches/tor-0_1_1-patches/src/or/directory.c
Log:
- Stop sending the HttpProxyAuthenticator string to directory
  servers when directory connections are tunnelled through Tor.


Modified: tor/branches/tor-0_1_1-patches/ChangeLog
===================================================================
--- tor/branches/tor-0_1_1-patches/ChangeLog	2006-12-14 23:39:14 UTC (rev 9109)
+++ tor/branches/tor-0_1_1-patches/ChangeLog	2006-12-15 00:07:50 UTC (rev 9110)
@@ -1,5 +1,7 @@
-Changes in version 0.1.1.26 - 200?-??-??
+Changes in version 0.1.1.26 - 2006-12-14
   o Security bugfixes:
+    - Stop sending the HttpProxyAuthenticator string to directory
+      servers when directory connections are tunnelled through Tor.
     - Do not log introduction points for hidden services if SafeLogging
       is set.
 

Modified: tor/branches/tor-0_1_1-patches/src/or/directory.c
===================================================================
--- tor/branches/tor-0_1_1-patches/src/or/directory.c	2006-12-14 23:39:14 UTC (rev 9109)
+++ tor/branches/tor-0_1_1-patches/src/or/directory.c	2006-12-15 00:07:50 UTC (rev 9110)
@@ -39,7 +39,7 @@
 
 static void
 directory_send_command(connection_t *conn, const char *platform,
-                       int purpose, const char *resource,
+                       int purpose, int direct, const char *resource,
                        const char *payload, size_t payload_len);
 static int directory_handle_command(connection_t *conn);
 static int body_is_plausible(const char *body, size_t body_len, int purpose);
@@ -403,7 +403,7 @@
         /* fall through */
       case 0:
         /* queue the command on the outbuf */
-        directory_send_command(conn, platform, purpose, resource,
+        directory_send_command(conn, platform, purpose, 1, resource,
                                payload, payload_len);
         connection_watch_events(conn, EV_READ | EV_WRITE);
         /* writable indicates finish, readable indicates broken link,
@@ -428,7 +428,7 @@
     }
     conn->state = DIR_CONN_STATE_CLIENT_SENDING;
     /* queue the command on the outbuf */
-    directory_send_command(conn, platform, purpose, resource,
+    directory_send_command(conn, platform, purpose, 0, resource,
                            payload, payload_len);
     connection_watch_events(conn, EV_READ | EV_WRITE);
   }
@@ -439,7 +439,7 @@
  */
 static void
 directory_send_command(connection_t *conn, const char *platform,
-                       int purpose, const char *resource,
+                       int purpose, int direct, const char *resource,
                        const char *payload, size_t payload_len)
 {
   char proxystring[256];
@@ -466,7 +466,7 @@
   }
 
   /* come up with some proxy lines, if we're using one. */
-  if (get_options()->HttpProxy) {
+  if (direct && get_options()->HttpProxy) {
     char *base64_authenticator=NULL;
     const char *authenticator = get_options()->HttpProxyAuthenticator;