GNUnet  0.20.0
plugin_transport_http.h File Reference

http transport service plugin More...

#include "platform.h"
#include "gnunet_common.h"
#include "gnunet_constants.h"
#include "gnunet_protocols.h"
#include "gnunet_connection_lib.h"
#include "gnunet_service_lib.h"
#include "gnunet_statistics_service.h"
#include "gnunet_transport_service.h"
#include "gnunet_resolver_service.h"
#include "gnunet_server_lib.h"
#include "gnunet_container_lib.h"
#include "gnunet_transport_plugin.h"
#include "gnunet_os_lib.h"
#include "gnunet_nat_lib.h"
#include "microhttpd.h"
#include "gnunet_curl_lib.h"
Include dependency graph for plugin_transport_http.h:

Go to the source code of this file.

Data Structures

struct  Plugin
 Handle for a plugin. More...
struct  HttpAddress
 HTTP addresses including a full URI. More...
struct  IPv4HttpAddress
 IPv4 addresses. More...
struct  IPv6HttpAddress
 IPv4 addresses. More...
struct  ServerRequest
 Information we keep with MHD for an HTTP request. More...
struct  GNUNET_ATS_Session
 Session handle for connections. More...
struct  HTTP_Message
 Message to send using http. More...


#define LIBGNUNET_PLUGIN_TRANSPORT_INIT   libgnunet_plugin_transport_http_init
#define LIBGNUNET_PLUGIN_TRANSPORT_DONE   libgnunet_plugin_transport_http_done


struct GNUNET_ATS_Sessioncreate_session (struct Plugin *plugin, const struct GNUNET_PeerIdentity *target, const void *addr, size_t addrlen)
int exist_session (struct Plugin *plugin, struct GNUNET_ATS_Session *s)
void delete_session (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 GNUNET_ATS_Session *session, const char *sender_address, uint16_t sender_address_len)
const char * http_plugin_address_to_string (void *cls, const void *addr, size_t addrlen)
int client_disconnect (struct GNUNET_ATS_Session *s)
int client_connect (struct GNUNET_ATS_Session *s)
int client_send (struct GNUNET_ATS_Session *s, struct HTTP_Message *msg)
int client_start (struct Plugin *plugin)
void client_stop (struct Plugin *plugin)
int server_disconnect (struct GNUNET_ATS_Session *s)
int server_send (struct GNUNET_ATS_Session *s, struct HTTP_Message *msg)
int server_start (struct Plugin *plugin)
void server_stop (struct Plugin *plugin)
void notify_session_end (void *cls, const struct GNUNET_PeerIdentity *peer, struct GNUNET_ATS_Session *s)

Detailed Description

http transport service plugin

Matthias Wachs

Definition in file plugin_transport_http.h.

Macro Definition Documentation



Definition at line 48 of file plugin_transport_http.h.



Definition at line 49 of file plugin_transport_http.h.



Definition at line 50 of file plugin_transport_http.h.



Definition at line 51 of file plugin_transport_http.h.


#define LIBGNUNET_PLUGIN_TRANSPORT_INIT   libgnunet_plugin_transport_http_init

Definition at line 57 of file plugin_transport_http.h.


#define LIBGNUNET_PLUGIN_TRANSPORT_DONE   libgnunet_plugin_transport_http_done

Definition at line 58 of file plugin_transport_http.h.



Definition at line 61 of file plugin_transport_http.h.



Definition at line 62 of file plugin_transport_http.h.


One second.
struct GNUNET_TIME_Relative GNUNET_TIME_relative_multiply(struct GNUNET_TIME_Relative rel, unsigned long long factor)
Multiply relative time by a given factor.
Definition: time.c:484

Definition at line 65 of file plugin_transport_http.h.

Function Documentation

◆ create_session()

struct GNUNET_ATS_Session* create_session ( struct Plugin plugin,
const struct GNUNET_PeerIdentity target,
const void *  addr,
size_t  addrlen 

◆ exist_session()

int exist_session ( struct Plugin plugin,
struct GNUNET_ATS_Session s 

◆ delete_session()

void delete_session ( struct GNUNET_ATS_Session s)

◆ http_plugin_receive()

struct GNUNET_TIME_Relative http_plugin_receive ( void *  cls,
const struct GNUNET_PeerIdentity peer,
const struct GNUNET_MessageHeader message,
struct GNUNET_ATS_Session session,
const char *  sender_address,
uint16_t  sender_address_len 

◆ http_plugin_address_to_string()

const char* http_plugin_address_to_string ( void *  cls,
const void *  addr,
size_t  addrlen 

◆ client_disconnect()

int client_disconnect ( struct GNUNET_ATS_Session s)

◆ client_connect()

int client_connect ( struct GNUNET_ATS_Session s)

◆ client_send()

int client_send ( struct GNUNET_ATS_Session s,
struct HTTP_Message msg 

◆ client_start()

int client_start ( struct Plugin plugin)

◆ client_stop()

void client_stop ( struct Plugin plugin)

◆ server_disconnect()

int server_disconnect ( struct GNUNET_ATS_Session s)

◆ server_send()

int server_send ( struct GNUNET_ATS_Session s,
struct HTTP_Message msg 

◆ server_start()

int server_start ( struct Plugin plugin)

◆ server_stop()

void server_stop ( struct Plugin plugin)

◆ notify_session_end()

void notify_session_end ( void *  cls,
const struct GNUNET_PeerIdentity peer,
struct GNUNET_ATS_Session s