gnunet-svn
[Top][All Lists]
Advanced

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

[GNUnet-SVN] [gnunet] 02/02: ensure that gnunet-namestore at most adds o


From: gnunet
Subject: [GNUnet-SVN] [gnunet] 02/02: ensure that gnunet-namestore at most adds one SOA per zone
Date: Sat, 25 May 2019 12:39:42 +0200

This is an automated email from the git hooks/post-receive script.

grothoff pushed a commit to branch master
in repository gnunet.

commit 8a408cc2604b6706e7f55391e4006b2b6d070430
Author: Christian Grothoff <address@hidden>
AuthorDate: Sat May 25 12:39:06 2019 +0200

    ensure that gnunet-namestore at most adds one SOA per zone
---
 src/include/gnunet_gns_service.h | 51 ++++++++++++++++++++--------------------
 src/namestore/gnunet-namestore.c | 13 ++++++++++
 2 files changed, 38 insertions(+), 26 deletions(-)

diff --git a/src/include/gnunet_gns_service.h b/src/include/gnunet_gns_service.h
index 7b4230f6b..ca92e8221 100644
--- a/src/include/gnunet_gns_service.h
+++ b/src/include/gnunet_gns_service.h
@@ -39,9 +39,8 @@
 #include "gnunet_namestore_service.h"
 
 #ifdef __cplusplus
-extern "C"
-{
-#if 0                           /* keep Emacsens' auto-indent happy */
+extern "C" {
+#if 0 /* keep Emacsens' auto-indent happy */
 }
 #endif
 #endif
@@ -96,10 +95,10 @@ GNUNET_GNS_disconnect (struct GNUNET_GNS_Handle *handle);
  * @param rd_count number of records in @a rd
  * @param rd the records in reply
  */
-typedef void
-(*GNUNET_GNS_LookupResultProcessor) (void *cls,
-                                     uint32_t rd_count,
-                                     const struct GNUNET_GNSRECORD_Data *rd);
+typedef void (*GNUNET_GNS_LookupResultProcessor) (
+  void *cls,
+  uint32_t rd_count,
+  const struct GNUNET_GNSRECORD_Data *rd);
 
 
 /**
@@ -140,12 +139,12 @@ enum GNUNET_GNS_LocalOptions
  */
 struct GNUNET_GNS_LookupRequest *
 GNUNET_GNS_lookup (struct GNUNET_GNS_Handle *handle,
-                  const char *name,
-                  const struct GNUNET_CRYPTO_EcdsaPublicKey *zone,
-                  uint32_t type,
-                  enum GNUNET_GNS_LocalOptions options,
-                  GNUNET_GNS_LookupResultProcessor proc,
-                  void *proc_cls);
+                   const char *name,
+                   const struct GNUNET_CRYPTO_EcdsaPublicKey *zone,
+                   uint32_t type,
+                   enum GNUNET_GNS_LocalOptions options,
+                   GNUNET_GNS_LookupResultProcessor proc,
+                   void *proc_cls);
 
 
 /**
@@ -168,11 +167,11 @@ GNUNET_GNS_lookup_cancel (struct GNUNET_GNS_LookupRequest 
*lr);
  * @param rd_count number of records in @a rd
  * @param rd the records in the reply
  */
-typedef void
-(*GNUNET_GNS_LookupResultProcessor2) (void *cls,
-                                     int gns_tld,
-                                     uint32_t rd_count,
-                                     const struct GNUNET_GNSRECORD_Data *rd);
+typedef void (*GNUNET_GNS_LookupResultProcessor2) (
+  void *cls,
+  int gns_tld,
+  uint32_t rd_count,
+  const struct GNUNET_GNSRECORD_Data *rd);
 
 
 /**
@@ -188,13 +187,13 @@ typedef void
  * @param proc_cls closure for @a proc
  * @return handle to the get request
  */
-struct GNUNET_GNS_LookupWithTldRequest*
+struct GNUNET_GNS_LookupWithTldRequest *
 GNUNET_GNS_lookup_with_tld (struct GNUNET_GNS_Handle *handle,
-                           const char *name,
-                           uint32_t type,
-                           enum GNUNET_GNS_LocalOptions options,
-                           GNUNET_GNS_LookupResultProcessor2 proc,
-                           void *proc_cls);
+                            const char *name,
+                            uint32_t type,
+                            enum GNUNET_GNS_LocalOptions options,
+                            GNUNET_GNS_LookupResultProcessor2 proc,
+                            void *proc_cls);
 
 
 /**
@@ -207,7 +206,7 @@ void *
 GNUNET_GNS_lookup_with_tld_cancel (struct GNUNET_GNS_LookupWithTldRequest 
*ltr);
 
 
-#if 0                           /* keep Emacsens' auto-indent happy */
+#if 0 /* keep Emacsens' auto-indent happy */
 {
 #endif
 #ifdef __cplusplus
@@ -216,4 +215,4 @@ GNUNET_GNS_lookup_with_tld_cancel (struct 
GNUNET_GNS_LookupWithTldRequest *ltr);
 
 #endif
 
-/** @} */  /* end of group */
+/** @} */ /* end of group */
diff --git a/src/namestore/gnunet-namestore.c b/src/namestore/gnunet-namestore.c
index cbaf9a5cb..5f4daa4a8 100644
--- a/src/namestore/gnunet-namestore.c
+++ b/src/namestore/gnunet-namestore.c
@@ -669,6 +669,19 @@ get_existing_record (void *cls,
       ret = 1;
       test_finished ();
       return;
+    case GNUNET_DNSPARSER_TYPE_SOA:
+      if (GNUNET_DNSPARSER_TYPE_SOA == type)
+      {
+        fprintf (
+          stderr,
+          _ (
+            "A SOA record exists already under `%s', cannot add a second SOA 
to the same zone.\n"),
+          rec_name);
+        ret = 1;
+        test_finished ();
+        return;
+      }
+      break;
     }
   }
   switch (type)

-- 
To stop receiving notification emails like this one, please contact
address@hidden



reply via email to

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