gnunet-svn
[Top][All Lists]
Advanced

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

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


From: gnunet
Subject: [GNUnet-SVN] r33584 - gnunet/src/gns
Date: Sat, 7 Jun 2014 16:08:58 +0200

Author: grothoff
Date: 2014-06-07 16:08:58 +0200 (Sat, 07 Jun 2014)
New Revision: 33584

Modified:
   gnunet/src/gns/plugin_gnsrecord_gns.c
Log:
fix boxed value parser

Modified: gnunet/src/gns/plugin_gnsrecord_gns.c
===================================================================
--- gnunet/src/gns/plugin_gnsrecord_gns.c       2014-06-07 14:08:42 UTC (rev 
33583)
+++ gnunet/src/gns/plugin_gnsrecord_gns.c       2014-06-07 14:08:58 UTC (rev 
33584)
@@ -263,29 +263,32 @@
   case GNUNET_GNSRECORD_TYPE_BOX:
     {
       struct GNUNET_GNSRECORD_BoxRecord *box;
-      size_t slen = strlen (s) + 1;
-      char rest[slen];
+      size_t rest;
       unsigned int protocol;
       unsigned int service;
       unsigned int record_type;
       void *bval;
       size_t bval_size;
 
-      if (4 != SSCANF (s,
-                       "%u %u %u %s",
+      if (3 != SSCANF (s,
+                       "%u %u %u ",
                        &protocol,
                        &service,
-                       &record_type,
-                       rest))
+                       &record_type))
       {
         GNUNET_log (GNUNET_ERROR_TYPE_ERROR,
                     _("Unable to parse BOX record string `%s'\n"),
                     s);
         return GNUNET_SYSERR;
       }
+      rest = snprintf (NULL, 0,
+                       "%u %u %u ",
+                       protocol,
+                       service,
+                       record_type);
       if (GNUNET_OK !=
           GNUNET_GNSRECORD_string_to_value (record_type,
-                                            rest,
+                                            &s[rest],
                                             &bval,
                                             &bval_size))
         return GNUNET_SYSERR;




reply via email to

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