REST/NAMESTORE: rework API
[oweals/gnunet.git] / src / transport / plugin_transport_http.h
index 9a0edb719075936728ca9688a722513e24746fef..6867d3b9d31b5c3bc231404b288a7d46967823df 100644 (file)
@@ -1,21 +1,21 @@
 /*
      This file is part of GNUnet
-     (C) 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009 Christian Grothoff (and other contributing authors)
+     Copyright (C) 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009 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
-     by the Free Software Foundation; either version 3, or (at your
-     option) any later version.
+     GNUnet is free software: you can redistribute it and/or modify it
+     under the terms of the GNU Affero General Public License as published
+     by the Free Software Foundation, either version 3 of the License,
+     or (at your option) any later version.
 
      GNUnet is distributed in the hope that it will be useful, but
      WITHOUT ANY WARRANTY; without even the implied warranty of
      MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-     General Public License for more details.
+     Affero General Public License for more details.
+    
+     You should have received a copy of the GNU Affero General Public License
+     along with this program.  If not, see <http://www.gnu.org/licenses/>.
 
-     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.
+     SPDX-License-Identifier: AGPL3.0-or-later
 */
 
 /**
 #include "gnunet_os_lib.h"
 #include "gnunet_nat_lib.h"
 #include "microhttpd.h"
+#if HAVE_CURL_CURL_H
 #include <curl/curl.h>
+#elif HAVE_GNURL_CURL_H
+#include <gnurl/curl.h>
+#endif
 
 
 #define DEBUG_HTTP GNUNET_EXTRA_LOGGING
@@ -76,12 +80,12 @@ struct Plugin
   /**
    * Head of linked list of open sessions.
    */
-  struct Session *head;
+  struct GNUNET_ATS_Session *head;
 
   /**
    * Tail of linked list of open sessions.
    */
-  struct Session *tail;
+  struct GNUNET_ATS_Session *tail;
 
   /**
    * NAT handle & address management
@@ -243,14 +247,14 @@ struct Plugin
    * A full session consists of 2 semi-connections: send and receive
    * If not both directions are established the server keeps this sessions here
    */
-  struct Session *server_semi_head;
+  struct GNUNET_ATS_Session *server_semi_head;
 
   /**
    * Tail of server semi connections
    * A full session consists of 2 semi-connections: send and receive
    * If not both directions are established the server keeps this sessions here
    */
-  struct Session *server_semi_tail;
+  struct GNUNET_ATS_Session *server_semi_tail;
 
   /**
    * cURL Multihandle
@@ -331,7 +335,7 @@ struct ServerRequest
   /**
    * The session this server connection belongs to
    */
-  struct Session *session;
+  struct GNUNET_ATS_Session *session;
 
   /**
    * The MHD connection
@@ -343,7 +347,7 @@ struct ServerRequest
 /**
  * Session handle for connections.
  */
-struct Session
+struct GNUNET_ATS_Session
 {
   /**
    * To whom are we talking to
@@ -353,12 +357,12 @@ struct Session
   /**
    * Stored in a linked list.
    */
-  struct Session *next;
+  struct GNUNET_ATS_Session *next;
 
   /**
    * Stored in a linked list.
    */
-  struct Session *prev;
+  struct GNUNET_ATS_Session *prev;
 
   /**
    * Pointer to the global plugin struct.
@@ -495,7 +499,7 @@ struct HTTP_Message
 };
 
 
-struct Session *
+struct GNUNET_ATS_Session *
 create_session (struct Plugin *plugin,
                 const struct GNUNET_PeerIdentity *target,
                 const void *addr,
@@ -504,23 +508,23 @@ create_session (struct Plugin *plugin,
 
 int
 exist_session (struct Plugin *plugin,
-               struct Session *s);
+               struct GNUNET_ATS_Session *s);
 
 
 void
-delete_session (struct Session *s);
+delete_session (struct GNUNET_ATS_Session *s);
 
 
 int
 exist_session (struct Plugin *plugin,
-               struct Session *s);
+               struct GNUNET_ATS_Session *s);
 
 
 struct GNUNET_TIME_Relative
 http_plugin_receive (void *cls,
                      const struct GNUNET_PeerIdentity *peer,
                      const struct GNUNET_MessageHeader *message,
-                     struct Session *session,
+                     struct GNUNET_ATS_Session *session,
                      const char *sender_address,
                      uint16_t sender_address_len);
 
@@ -532,15 +536,15 @@ http_plugin_address_to_string (void *cls,
 
 
 int
-client_disconnect (struct Session *s);
+client_disconnect (struct GNUNET_ATS_Session *s);
 
 
 int
-client_connect (struct Session *s);
+client_connect (struct GNUNET_ATS_Session *s);
 
 
 int
-client_send (struct Session *s, struct HTTP_Message *msg);
+client_send (struct GNUNET_ATS_Session *s, struct HTTP_Message *msg);
 
 
 int
@@ -552,11 +556,11 @@ client_stop (struct Plugin *plugin);
 
 
 int
-server_disconnect (struct Session *s);
+server_disconnect (struct GNUNET_ATS_Session *s);
 
 
 int
-server_send (struct Session *s, struct HTTP_Message *msg);
+server_send (struct GNUNET_ATS_Session *s, struct HTTP_Message *msg);
 
 
 int
@@ -570,7 +574,7 @@ server_stop (struct Plugin *plugin);
 void
 notify_session_end (void *cls,
                     const struct GNUNET_PeerIdentity *peer,
-                    struct Session *s);
+                    struct GNUNET_ATS_Session *s);
 
 
 /*#ifndef PLUGIN_TRANSPORT_HTTP_H*/