multicast, psyc, psycstore, client_manager fixes
[oweals/gnunet.git] / src / include / gnunet_service_lib.h
index 11dcff35e8646600dc36747d54f39e87609dc707..6cb7413d3c6edbd51cc5e40e73ed4a22951c68cc 100644 (file)
@@ -1,6 +1,6 @@
 /*
      This file is part of GNUnet.
-     (C) 2009-2013 Christian Grothoff (and other contributing authors)
+     Copyright (C) 2009-2013 Christian Grothoff (and other contributing authors)
 
      GNUnet is free software; you can redistribute it and/or modify
      it under the terms of the GNU General Public License as published
@@ -14,8 +14,8 @@
 
      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.
 */
 
 /**
@@ -51,7 +51,7 @@ extern "C"
  *              addresses the server should bind to and listen on; the
  *              array will be NULL-terminated (on success)
  * @param addr_lens set (call by reference) to an array of the lengths
- *              of the respective 'struct sockaddr' struct in the @a addrs
+ *              of the respective `struct sockaddr` struct in the @a addrs
  *              array (on success)
  * @return number of addresses found on success,
  *              #GNUNET_SYSERR if the configuration
@@ -76,9 +76,10 @@ GNUNET_SERVICE_get_server_addresses (const char *service_name,
  * @param server the initialized server
  * @param cfg configuration to use
  */
-typedef void (*GNUNET_SERVICE_Main) (void *cls,
-                                     struct GNUNET_SERVER_Handle *server,
-                                     const struct GNUNET_CONFIGURATION_Handle *cfg);
+typedef void
+(*GNUNET_SERVICE_Main) (void *cls,
+                        struct GNUNET_SERVER_Handle *server,
+                        const struct GNUNET_CONFIGURATION_Handle *cfg);
 
 
 /**
@@ -158,6 +159,17 @@ struct GNUNET_SERVER_Handle *
 GNUNET_SERVICE_get_server (struct GNUNET_SERVICE_Context *ctx);
 
 
+/**
+ * Get the NULL-terminated array of listen sockets for this service.
+ *
+ * @param ctx service context to query
+ * @return NULL if there are no listen sockets, otherwise NULL-terminated
+ *              array of listen sockets.
+ */
+struct GNUNET_NETWORK_Handle *const *
+GNUNET_SERVICE_get_listen_sockets (struct GNUNET_SERVICE_Context *ctx);
+
+
 /**
  * Stop a service that was started with #GNUNET_SERVICE_start.
  *