add -z option to gnunet-namestore-fcfsd
authorChristian Grothoff <christian@grothoff.org>
Thu, 7 Jun 2018 14:36:50 +0000 (16:36 +0200)
committerChristian Grothoff <christian@grothoff.org>
Thu, 7 Jun 2018 14:36:50 +0000 (16:36 +0200)
doc/man/gnunet-namestore-fcfsd.1
src/namestore/gnunet-namestore-fcfsd.c

index 6b13c3db40c977fce8762002827b7893990f7c57..7fc4093c2c6e87d6454d65ad855fcdc92152abcc 100644 (file)
@@ -17,19 +17,18 @@ names to be mapped to their GNS zone.  Names are made available on a
 First Come First Served basis (hence fcfs).  Registered names do not
 expire.  The HTTP server is run on the port that is specified in the
 configuration file in section "[fcfsd]" under the name "HTTPPORT".
-The key of the zone in which the names are registered must be
-specified under the name "ZONEKEY" in the same section.  It is
-possible to manage gnunet\-gns\-fcfsd using gnunet\-(service\-arm) by
-starting the daemon using "gnunet\-arm \-i fcfsd" or by setting
-"FORCESTART=YES" in the "fcfds" section of your configuration.
+
+It is possible to manage gnunet\-gns\-fcfsd using
+gnunet\-(service\-arm) by starting the daemon using "gnunet\-arm \-i
+fcfsd" or by setting "FORCESTART=YES" in the "fcfds" section of your
+configuration and the "-z ZONE" in as the "OPTION".
 
 An FCFS\-zone is run at http://gnunet.org/fcfs/.  GNS users are
 encouraged to register their zone with the gnunet.org FCFS authority.
 
 If you want to run your own FCFS registrar, you need to first create a
-pseudonym (using "gnunet\-identity \-C NAME"), and then assign it to
-be used for the "fcfsd" service using "gnunet\-identity \-e NAME \-s
-fcfsd".  After that, you can start the FCFSD service (possibly using
+pseudonym (using "gnunet\-identity \-C NAME"), and use it with the
+"-z" option.  After that, you can start the FCFSD service (possibly using
 gnunet\-arm).
 
 .SH OPTIONS
@@ -46,7 +45,9 @@ ERROR.
 .B
 .IP "\-v, \-\-version"
 Print GNUnet version number.
-
+.B
+.IP "\-z EGO, \-\-zone=EGO"
+Specifies for which EGO should FCFSD manage the zone.
 
 .SH BUGS
 Report bugs by using Mantis <https://gnunet.org/bugs/> or by sending electronic mail to <bug\-gnunet@gnu.org>
index 0698e6d72e2a1005cbd9f69ad646ebca03fde931..e0c04e6f185414baa5023cb0edbc6d367e7c8f4b 100644 (file)
@@ -216,6 +216,11 @@ static struct GNUNET_IDENTITY_Operation *id_op;
  */
 static unsigned long long port;
 
+/**
+ * Name of the zone we manage.
+ */
+static char *zone;
+
 
 /**
  * Task run whenever HTTP server operations are pending.
@@ -629,14 +634,14 @@ lookup_block_error (void *cls)
  * and continue to process the result.
  *
  * @param cls the 'struct Request' we are processing
- * @param zone private key of the zone; NULL on disconnect
+ * @param zonekey private key of the zone; NULL on disconnect
  * @param label label of the records; NULL on disconnect
  * @param rd_count number of entries in @a rd array, 0 if label was deleted
  * @param rd array of records with data to store
  */
 static void
 lookup_block_processor (void *cls,
-                        const struct GNUNET_CRYPTO_EcdsaPrivateKey *zone,
+                        const struct GNUNET_CRYPTO_EcdsaPrivateKey *zonekey,
                         const char *label,
                         unsigned int rd_count,
                         const struct GNUNET_GNSRECORD_Data *rd)
@@ -645,7 +650,7 @@ lookup_block_processor (void *cls,
 
   (void) label;
   (void) rd;
-  (void) zone;
+  (void) zonekey;
   request->qe = NULL;
   if (0 == rd_count)
   {
@@ -1087,9 +1092,12 @@ run (void *cls,
                 _("Failed to connect to identity\n"));
     return;
   }
-  id_op = GNUNET_IDENTITY_get (identity, "fcfsd",
-                              &identity_cb, NULL);
-  GNUNET_SCHEDULER_add_shutdown (&do_shutdown, NULL);
+  id_op = GNUNET_IDENTITY_get (identity,
+                              zone,
+                              &identity_cb,
+                              NULL);
+  GNUNET_SCHEDULER_add_shutdown (&do_shutdown,
+                                NULL);
 }
 
 
@@ -1104,7 +1112,13 @@ int
 main (int argc,
       char *const *argv)
 {
-  static const struct GNUNET_GETOPT_CommandLineOption options[] = {
+  struct GNUNET_GETOPT_CommandLineOption options[] = {
+    GNUNET_GETOPT_option_mandatory 
+    (GNUNET_GETOPT_option_string ('z',
+                                 "zone",
+                                 "EGO",
+                                 gettext_noop ("name of the zone that is to be managed by FCFSD"),
+                                 &zone)),
     GNUNET_GETOPT_OPTION_END
   };
   int ret;