-migrating ATS tests to new transport (and core) API; core tests disabled as new...
[oweals/gnunet.git] / src / include / gnunet_namestore_plugin.h
index 5c3298d987d00de86c2a71d080678a8b2a600577..3ec0299baeb968e2b7d31d0e0c62bb3f6541bb47 100644 (file)
@@ -1,6 +1,6 @@
 /*
      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_plugin.h
- * @brief plugin API for the namestore database backend
  * @author Christian Grothoff
+ *
+ * @file
+ * Plugin API for the namestore database backend
+ *
+ * @defgroup namestore-plugin  Name Store service plugin API
+ * Plugin API for the namestore database backend
+ * @{
  */
 #ifndef GNUNET_NAMESTORE_PLUGIN_H
 #define GNUNET_NAMESTORE_PLUGIN_H
@@ -82,6 +87,22 @@ struct GNUNET_NAMESTORE_PluginFunctions
                        unsigned int rd_count,
                        const struct GNUNET_GNSRECORD_Data *rd);
 
+  /**
+   * Lookup records in the datastore for which we are the authority.
+   *
+   * @param cls closure (internal context for the plugin)
+   * @param zone private key of the zone
+   * @param label name of the record in the zone
+   * @param iter function to call with the result
+   * @param iter_cls closure for @a iter
+   * @return #GNUNET_OK on success, else #GNUNET_SYSERR
+   */
+  int (*lookup_records) (void *cls,
+                        const struct GNUNET_CRYPTO_EcdsaPrivateKey *zone,
+                        const char *label,
+                        GNUNET_NAMESTORE_RecordIterator iter, void *iter_cls);
+
+
 
   /**
    * Iterate over the results for a particular zone in the
@@ -127,5 +148,6 @@ struct GNUNET_NAMESTORE_PluginFunctions
 }
 #endif
 
-/* end of gnunet_namestore_plugin.h */
 #endif
+
+/** @} */  /* end of group */