]> git.ipfire.org Git - thirdparty/tor.git/commitdiff
proxies send port in host order as ascii string
authorRoger Dingledine <arma@torproject.org>
Sat, 24 Aug 2002 07:56:34 +0000 (07:56 +0000)
committerRoger Dingledine <arma@torproject.org>
Sat, 24 Aug 2002 07:56:34 +0000 (07:56 +0000)
svn:r83

src/httpap/http.c
src/httpap/httpap.c
src/smtpap/smtpap.c

index 09116cec7fc750ca139be8d06aadd63205389af2..9dab57aa9ef1f99eb745070f97354ad4d89eda73 100644 (file)
@@ -8,8 +8,11 @@
 /*
  * Changes :
  * $Log$
- * Revision 1.1  2002/06/26 22:45:50  arma
- * Initial revision
+ * Revision 1.2  2002/08/24 07:56:22  arma
+ * proxies send port in host order as ascii string
+ *
+ * Revision 1.1.1.1  2002/06/26 22:45:50  arma
+ * initial commit: current code
  *
  * Revision 1.2  2002/04/02 14:27:33  badbytes
  * Final finishes.
@@ -144,6 +147,10 @@ int http_get_dest(unsigned char *rl, unsigned char **addr, unsigned char **port)
     return -1;
   
   /* check for a :port in the address */
+
+/* BUG: if there's a : later in the url, eg in google's cache pages,
+ * this gets confused and fails
+ */
   colon = strchr(start,':');
   if (colon)
   {
index cc3eab4df1fa854db3975afd8c141c7101db5bbd..22d6df0b6472062c86e33eb988074e144b577fea 100644 (file)
@@ -8,6 +8,9 @@
 /*
  * Changes :
  * $Log$
+ * Revision 1.6  2002/08/24 07:56:22  arma
+ * proxies send port in host order as ascii string
+ *
  * Revision 1.5  2002/07/20 02:01:18  arma
  * bugfixes: don't hang waiting for new children to die; accept HTTP/1.1
  *
@@ -207,14 +210,14 @@ int handle_connection(int new_sock, struct hostent *local, struct sockaddr_in re
       write_tout(new_sock, HTTPAP_STATUS_LINE_UNEXPECTED, strlen(HTTPAP_STATUS_LINE_UNEXPECTED), conn_toutp);
       return -1;
     }
-    snprintf(port,6,"%u",htons(HTTPAP_DEFAULT_HTTP_PORT));
+    snprintf(port,6,"%u",HTTPAP_DEFAULT_HTTP_PORT);
   }
   else
   {
     log(LOG_DEBUG,"handle_connection() : Destination address is %s.",addr);
     log(LOG_DEBUG,"handle_connection() : Destination port is %s.",port);
   
-    /* conver the port to an integer */
+    /* convert the port to an integer */
     portn = (uint16_t)strtoul(port,&errtest,0);
     if ((*port == '\0') || (*errtest != '\0')) /* port conversion was unsuccessful */
     {
@@ -233,7 +236,7 @@ int handle_connection(int new_sock, struct hostent *local, struct sockaddr_in re
       return -1;
     }
     
-    snprintf(port,6,"%u",htons(portn));
+    snprintf(port,6,"%u",portn);
   }
   
   /* create a standard structure */
@@ -655,7 +658,7 @@ int main(int argc, char *argv[])
   /* set up the sockaddr_in structure */
   local.sin_family=AF_INET;
   local.sin_addr.s_addr = INADDR_ANY;
-  local.sin_port=p;
+  local.sin_port=p; /* p is already in network order */
 
   setsockopt(request_sock, SOL_SOCKET, SO_REUSEADDR, &one, sizeof(one));
 
index a420268a7c8ce1fbb7307f7b885b4a925dbc2801..0e97eaff0eb57aacca1064b88f9184b1b4eb27d3 100644 (file)
@@ -8,6 +8,9 @@
 /*
  * Changes :
  * $Log$
+ * Revision 1.3  2002/08/24 07:56:34  arma
+ * proxies send port in host order as ascii string
+ *
  * Revision 1.2  2002/07/12 18:14:17  montrose
  * removed loglevel from global namespace. severity level is set using log() with a NULL format argument now. example: log(LOG_ERR,NULL);
  *
@@ -768,7 +771,7 @@ int handle_connection(int s, struct hostent *local, struct sockaddr_in remote, u
                    else /* connection established, now send the standard structure + address and wait for a response */
                    {
                      /* write the message to the op_out buffer */
-                     snprintf(dest_port_str,6,"%u",htons(SMTPAP_DEFAULT_SMTP_PORT));
+                     snprintf(dest_port_str,6,"%u",SMTPAP_DEFAULT_SMTP_PORT);
 
                      if (op_out != NULL)
                      {