gnunet-svn
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[GNUnet-SVN] r22667 - gnunet/src/gns


From: gnunet
Subject: [GNUnet-SVN] r22667 - gnunet/src/gns
Date: Sat, 14 Jul 2012 23:52:09 +0200

Author: schanzen
Date: 2012-07-14 23:52:09 +0200 (Sat, 14 Jul 2012)
New Revision: 22667

Modified:
   gnunet/src/gns/gnunet-gns-proxy.c
Log:
-fixes

Modified: gnunet/src/gns/gnunet-gns-proxy.c
===================================================================
--- gnunet/src/gns/gnunet-gns-proxy.c   2012-07-14 21:19:22 UTC (rev 22666)
+++ gnunet/src/gns/gnunet-gns-proxy.c   2012-07-14 21:52:09 UTC (rev 22667)
@@ -253,7 +253,7 @@
   char host[256];
 
   /* The port */
-  int port;
+  uint16_t port;
 
   /* The LEgacy HOstname (can be empty) */
   char leho[256];
@@ -606,6 +606,7 @@
   char* port;
   char* cstr;
   const char* hdr_val;
+  unsigned int uport;
 
   if (0 == strcmp ("Host", key))
   {
@@ -613,7 +614,14 @@
     if (NULL != port)
     {
       strncpy (buf, value, port-value);
-      ctask->port = atoi (++port);
+      port++;
+      if ((1 != sscanf (port, "%u", &uport)) ||
+           (uport > UINT16_MAX) ||
+           (0 == uport))
+        GNUNET_log (GNUNET_ERROR_TYPE_ERROR,
+                    "Unable to parse port!\n");
+      else
+        ctask->port = (uint16_t) uport;
     }
     else
       strcpy (buf, value);
@@ -1640,7 +1648,7 @@
 
   if (0 != strcmp (ctask->leho, ""))
   {
-    sprintf (hosthdr, "%s%s", "Host: ", ctask->leho);
+    sprintf (hosthdr, "%s%s:%d", "Host: ", ctask->leho, ctask->port);
     GNUNET_log (GNUNET_ERROR_TYPE_DEBUG,
                 "New HTTP header value: %s\n", hosthdr);
     ctask->headers = curl_slist_append (ctask->headers, hosthdr);




reply via email to

[Prev in Thread] Current Thread [Next in Thread]