set continued flag on client side -- towards fixing 1786:
[oweals/gnunet.git] / src / fs / gnunet-service-fs_lc.h
index edc199fd88904ef14a7d33526fe6ecb0cdd2b537..c625edf0b16b968e956a2e222892759c48e32042 100644 (file)
@@ -20,7 +20,7 @@
 
 /**
  * @file fs/gnunet-service-fs_lc.h
- * @brief API to handle 'connected peers'
+ * @brief API to handle 'local clients'
  * @author Christian Grothoff
  */
 #ifndef GNUNET_SERVICE_FS_LC_H
@@ -42,15 +42,18 @@ GSF_local_client_lookup_ (struct GNUNET_SERVER_Client *client);
 
 /**
  * Handle START_SEARCH-message (search request from local client).
+ * Only responsible for creating the request entry itself and setting
+ * up reply callback and cancellation on client disconnect.  Does NOT
+ * execute the actual request strategy (planning).
  *
- * @param cls closure
  * @param client identification of the client
  * @param message the actual message
+ * @return pending request handle for the request, NULL on error
  */
-void
-GSF_local_client_start_search_handler_ (void *cls,
-                                       struct GNUNET_SERVER_Client *client,
-                                       const struct GNUNET_MessageHeader *message);
+struct GSF_PendingRequest *
+GSF_local_client_start_search_handler_ (struct GNUNET_SERVER_Client *client,
+                                        const struct GNUNET_MessageHeader
+                                        *message);
 
 
 /**
@@ -63,57 +66,18 @@ GSF_local_client_start_search_handler_ (void *cls,
  */
 void
 GSF_local_client_transmit_ (struct GSF_LocalClient *lc,
-                           const struct GNUNET_MessageHeader *msg);
+                            const struct GNUNET_MessageHeader *msg);
 
 
 /**
- * A local client disconnected from us.  Tear down the local client
- * record.
+ * A client disconnected from us.  Tear down the local client record.
  *
  * @param cls unused
  * @param client handle of the client
  */
 void
-GSF_local_client_disconnect_handler_ (void *cls,
-                                     const struct GNUNET_SERVER_Client *client);
-
-
-
-/**
- * Signature of function called on a local client
- *
- * @param cls closure
- * @param lc local client handle
- */
-typedef int (*GSF_LocalClientIterator)(void *cls,
-                                      struct GSF_LocalClient *lc);
-
+GSF_client_disconnect_handler_ (void *cls, struct GNUNET_SERVER_Client *client);
 
 
-/**
- * Register callback to invoke on local client disconnect.
- *
- * @param lc client to monitor
- * @param it function to call on disconnect
- * @param it_cls closure for it
- */
-void
-GSF_local_client_register_disconnect_callback_ (struct GSF_LocalClient *lc,
-                                               GSF_LocalClientIterator it,
-                                               void *it_cls);
-
-
-/**
- * Register callback to invoke on local client disconnect.
- *
- * @param lc client to stop monitoring
- * @param it function to no longer call on disconnect
- * @param it_cls closure for it
- */
-void
-GSF_connected_peer_unregister_disconnect_callback_ (struct GSF_ConnectedPeer *cp,
-                                                   GSF_PendingRequestIterator it,
-                                                   void *it_cls);
-
 #endif
 /* end of gnunet-service-fs_lc.h */