/*
This file is part of GNUnet
- (C) 2012, 2013 Christian Grothoff (and other contributing authors)
+ Copyright (C) 2012, 2013 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
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., 59 Temple Place - Suite 330,
- Boston, MA 02111-1307, USA.
+ Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+ Boston, MA 02110-1301, USA.
*/
/**
- * @file include/gnunet_namestore_service.h
- * @brief API that can be used to store naming information on a GNUnet node;
- * Naming information can either be records for which this peer/user
- * is authoritative, or blocks which are cached, encrypted naming
- * data from other peers.
* @author Christian Grothoff
+ *
+ * @file
+ * API that can be used to store naming information on a GNUnet node;
+ *
+ * @defgroup namestore Name Store service
+ * Store naming information on a GNUnet node.
+ *
+ * Naming information can either be records for which this peer/user is
+ * authoritative, or blocks which are cached, encrypted naming data from other
+ * peers.
+ *
+ * @see [Documentation](https://gnunet.org/namestore-subsystem)
+ *
+ * @{
*/
#ifndef GNUNET_NAMESTORE_SERVICE_H
#define GNUNET_NAMESTORE_SERVICE_H
* #GNUNET_YES (or other positive value) on success
* @param emsg NULL on success, otherwise an error message
*/
-typedef void (*GNUNET_NAMESTORE_ContinuationWithStatus) (void *cls,
- int32_t success,
- const char *emsg);
+typedef void
+(*GNUNET_NAMESTORE_ContinuationWithStatus) (void *cls,
+ int32_t success,
+ const char *emsg);
/**
* @param rd_count number of entries in @a rd array, 0 if label was deleted
* @param rd array of records with data to store
*/
-typedef void (*GNUNET_NAMESTORE_RecordMonitor) (void *cls,
- const struct GNUNET_CRYPTO_EcdsaPrivateKey *zone,
- const char *label,
- unsigned int rd_count,
- const struct GNUNET_GNSRECORD_Data *rd);
+typedef void
+(*GNUNET_NAMESTORE_RecordMonitor) (void *cls,
+ const struct GNUNET_CRYPTO_EcdsaPrivateKey *zone,
+ const char *label,
+ unsigned int rd_count,
+ const struct GNUNET_GNSRECORD_Data *rd);
+
+
+/**
+ * Set the desired nick name for a zone
+ *
+ * @param h handle to the namestore
+ * @param pkey private key of the zone
+ * @param nick the nick name to set
+ * @param cont continuation to call when done
+ * @param cont_cls closure for 'cont'
+ * @return handle to abort the request
+ */
+struct GNUNET_NAMESTORE_QueueEntry *
+GNUNET_NAMESTORE_set_nick (struct GNUNET_NAMESTORE_Handle *h,
+ const struct GNUNET_CRYPTO_EcdsaPrivateKey *pkey,
+ const char *nick,
+ GNUNET_NAMESTORE_ContinuationWithStatus cont,
+ void *cont_cls);
/**
*
* @param cls closure
*/
-typedef void (*GNUNET_NAMESTORE_RecordsSynchronizedCallback)(void *cls);
+typedef void
+(*GNUNET_NAMESTORE_RecordsSynchronizedCallback)(void *cls);
/**
GNUNET_NAMESTORE_zone_monitor_stop (struct GNUNET_NAMESTORE_ZoneMonitor *zm);
-
#if 0 /* keep Emacsens' auto-indent happy */
{
#endif
}
#endif
-/* end of gnunet_namestore_service.h */
#endif
+
+/** @} */ /* end of group */