Merge branch 'master' of gnunet.org:gnunet
[oweals/gnunet.git] / src / gns / plugin_gnsrecord_gns.c
index 5d611e19e4ddd72afcd4855ae96379a7c11b7e4e..ebba0db47c6218e7ad7d4066006a4df9e37dc42e 100644 (file)
@@ -2,20 +2,20 @@
      This file is part of GNUnet
      Copyright (C) 2013, 2014, 2016 GNUnet e.V.
 
-     GNUnet is free software; you can redistribute it and/or modify
-     it under the terms of the GNU General Public License as published
-     by the Free Software Foundation; either version 3, or (at your
-     option) any later version.
+     GNUnet is free software: you can redistribute it and/or modify it
+     under the terms of the GNU Affero General Public License as published
+     by the Free Software Foundation, either version 3 of the License,
+     or (at your option) any later version.
 
      GNUnet is distributed in the hope that it will be useful, but
      WITHOUT ANY WARRANTY; without even the implied warranty of
      MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-     General Public License for more details.
+     Affero General Public License for more details.
+    
+     You should have received a copy of the GNU Affero General Public License
+     along with this program.  If not, see <http://www.gnu.org/licenses/>.
 
-     You should have received a copy of the GNU General Public License
-     along with GNUnet; see the file COPYING.  If not, write to the
-     Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
-     Boston, MA 02110-1301, USA.
+     SPDX-License-Identifier: AGPL3.0-or-later
 */
 
 /**
@@ -102,9 +102,9 @@ gns_value_to_string (void *cls,
           ('\0' != cdata[data_size - 1]) )
        return NULL; /* malformed */
       /* need to memcpy for alignment */
-      memcpy (&vpn,
-              data,
-              sizeof (vpn));
+      GNUNET_memcpy (&vpn,
+                     data,
+                     sizeof (vpn));
       GNUNET_asprintf (&vpn_str,
                        "%u %s %s",
                        (unsigned int) ntohs (vpn.proto),
@@ -122,9 +122,9 @@ gns_value_to_string (void *cls,
       cdata = data;
       if (data_size < sizeof (struct GNUNET_GNSRECORD_BoxRecord))
        return NULL; /* malformed */
-      memcpy (&box,
-              data,
-              sizeof (box));
+      GNUNET_memcpy (&box,
+                     data,
+                     sizeof (box));
       rt = ntohl (box.record_type);
       ival = GNUNET_GNSRECORD_value_to_string (rt,
                                                &cdata[sizeof (box)],
@@ -140,30 +140,6 @@ gns_value_to_string (void *cls,
       GNUNET_free (ival);
       return box_str;
     }
-  case GNUNET_GNSRECORD_TYPE_REVERSE:
-    {
-      struct GNUNET_GNSRECORD_ReverseRecord rev;
-      char *rev_str;
-      char *pkey_str;
-
-      if (data_size < sizeof (struct GNUNET_GNSRECORD_ReverseRecord))
-        return NULL; /* malformed */
-
-      memcpy (&rev,
-              data,
-              sizeof (rev));
-      cdata = data;
-      pkey_str = GNUNET_CRYPTO_ecdsa_public_key_to_string (&rev.pkey);
-
-      GNUNET_asprintf (&rev_str,
-                       "%s %s %"SCNu64,
-                       &cdata[sizeof (rev)],
-                       pkey_str,
-                       rev.expiration.abs_value_us);
-      GNUNET_free (pkey_str);
-      return rev_str;
-
-    }
   default:
     return NULL;
   }
@@ -197,7 +173,9 @@ gns_string_to_value (void *cls,
 
     case GNUNET_GNSRECORD_TYPE_PKEY:
       if (GNUNET_OK !=
-          GNUNET_CRYPTO_ecdsa_public_key_from_string (s, strlen (s), &pkey))
+          GNUNET_CRYPTO_ecdsa_public_key_from_string (s,
+                                                     strlen (s),
+                                                     &pkey))
       {
         GNUNET_log (GNUNET_ERROR_TYPE_ERROR,
                     _("Unable to parse PKEY record `%s'\n"),
@@ -205,7 +183,9 @@ gns_string_to_value (void *cls,
         return GNUNET_SYSERR;
       }
       *data = GNUNET_new (struct GNUNET_CRYPTO_EcdsaPublicKey);
-      GNUNET_memcpy (*data, &pkey, sizeof (pkey));
+      GNUNET_memcpy (*data,
+                    &pkey,
+                    sizeof (pkey));
       *data_size = sizeof (struct GNUNET_CRYPTO_EcdsaPublicKey);
       return GNUNET_OK;
 
@@ -258,7 +238,9 @@ gns_string_to_value (void *cls,
         GNUNET_free (cpy);
         *data_size = off;
         *data = GNUNET_malloc (off);
-        GNUNET_memcpy (*data, nsbuf, off);
+        GNUNET_memcpy (*data,
+                      nsbuf,
+                      off);
         return GNUNET_OK;
       }
     case GNUNET_GNSRECORD_TYPE_VPN:
@@ -335,48 +317,6 @@ gns_string_to_value (void *cls,
         GNUNET_free (bval);
         return GNUNET_OK;
       }
-    case GNUNET_GNSRECORD_TYPE_REVERSE:
-      {
-        struct GNUNET_GNSRECORD_ReverseRecord *rev;
-        char known_by[253 + 1];
-        struct GNUNET_TIME_Absolute expiration;
-
-        /* TODO: From crypto_ecc.c
-         * Why is this not a constant???
-         */
-        size_t enclen = (sizeof (struct GNUNET_CRYPTO_EcdsaPublicKey)) * 8;
-        if (enclen % 5 > 0)
-          enclen += 5 - enclen % 5;
-        enclen /= 5; /* 260/5 = 52 */
-        char pkey_str[enclen + 1];
-
-        if (3 != SSCANF (s,
-                         "%253s %52s %"SCNu64,
-                         known_by,
-                         pkey_str,
-                         &expiration.abs_value_us))
-        {
-          GNUNET_log (GNUNET_ERROR_TYPE_ERROR,
-                      _("Unable to parse REVERSE record string `%s'\n"),
-                      s);
-          return GNUNET_SYSERR;
-        }
-        *data_size = sizeof (struct GNUNET_GNSRECORD_ReverseRecord) + strlen (known_by) + 1;
-        *data = rev = GNUNET_malloc (*data_size);
-        if (GNUNET_OK !=
-            GNUNET_CRYPTO_ecdsa_public_key_from_string (pkey_str,
-                                                        strlen (pkey_str),
-                                                        &rev->pkey))
-        {
-          GNUNET_free (rev);
-          return GNUNET_SYSERR;
-        }
-        rev->expiration = expiration;
-        GNUNET_memcpy (&rev[1],
-                       known_by,
-                       strlen (known_by));
-        return GNUNET_OK;
-      }
     default:
       return GNUNET_SYSERR;
   }
@@ -397,7 +337,6 @@ static struct {
   { "VPN", GNUNET_GNSRECORD_TYPE_VPN },
   { "GNS2DNS", GNUNET_GNSRECORD_TYPE_GNS2DNS },
   { "BOX", GNUNET_GNSRECORD_TYPE_BOX },
-  { "REVERSE", GNUNET_GNSRECORD_TYPE_REVERSE },
   { NULL, UINT32_MAX }
 };