GNUnet  0.11.x
Data Fields
GNUNET_SERVER_Handle Struct Reference

handle for a server More...

Collaboration diagram for GNUNET_SERVER_Handle:
[legend]

Data Fields

struct HandlerListhandlers
 List of handlers for incoming messages. More...
 
struct GNUNET_SERVER_Clientclients_head
 Head of list of our current clients. More...
 
struct GNUNET_SERVER_Clientclients_tail
 Head of list of our current clients. More...
 
struct NotifyListdisconnect_notify_list_head
 Head of linked list of functions to call on disconnects by clients. More...
 
struct NotifyListdisconnect_notify_list_tail
 Tail of linked list of functions to call on disconnects by clients. More...
 
struct NotifyListconnect_notify_list_head
 Head of linked list of functions to call on connects by clients. More...
 
struct NotifyListconnect_notify_list_tail
 Tail of linked list of functions to call on connects by clients. More...
 
GNUNET_CONNECTION_AccessCheck access_cb
 Function to call for access control. More...
 
void * access_cb_cls
 Closure for access_cb. More...
 
struct GNUNET_NETWORK_Handle ** listen_sockets
 NULL-terminated array of sockets used to listen for new connections. More...
 
struct GNUNET_TIME_Relative idle_timeout
 After how long should an idle connection time out (on write). More...
 
struct GNUNET_SCHEDULER_Tasklisten_task
 Task scheduled to do the listening. More...
 
GNUNET_SERVER_MstCreateCallback mst_create
 Alternative function to create a MST instance. More...
 
GNUNET_SERVER_MstDestroyCallback mst_destroy
 Alternative function to destroy a MST instance. More...
 
GNUNET_SERVER_MstReceiveCallback mst_receive
 Alternative function to give data to a MST instance. More...
 
void * mst_cls
 Closure for 'mst_'-callbacks. More...
 
int require_found
 Do we ignore messages of types that we do not understand or do we require that a handler is found (and if not kill the connection)? More...
 
int in_soft_shutdown
 Set to GNUNET_YES once we are in 'soft' shutdown where we wait for all non-monitor clients to disconnect before we call GNUNET_SERVER_destroy. More...
 

Detailed Description

handle for a server

Definition at line 85 of file tcp_server_legacy.c.

Field Documentation

◆ handlers

struct HandlerList* GNUNET_SERVER_Handle::handlers

List of handlers for incoming messages.

Definition at line 90 of file tcp_server_legacy.c.

Referenced by GNUNET_SERVER_add_handlers(), GNUNET_SERVER_destroy(), and GNUNET_SERVER_inject().

◆ clients_head

struct GNUNET_SERVER_Client* GNUNET_SERVER_Handle::clients_head

◆ clients_tail

struct GNUNET_SERVER_Client* GNUNET_SERVER_Handle::clients_tail

Head of list of our current clients.

Definition at line 100 of file tcp_server_legacy.c.

Referenced by GNUNET_SERVER_client_disconnect(), and GNUNET_SERVER_connect_socket().

◆ disconnect_notify_list_head

struct NotifyList* GNUNET_SERVER_Handle::disconnect_notify_list_head

Head of linked list of functions to call on disconnects by clients.

Definition at line 105 of file tcp_server_legacy.c.

Referenced by GNUNET_SERVER_client_disconnect(), GNUNET_SERVER_destroy(), GNUNET_SERVER_disconnect_notify(), and GNUNET_SERVER_disconnect_notify_cancel().

◆ disconnect_notify_list_tail

struct NotifyList* GNUNET_SERVER_Handle::disconnect_notify_list_tail

Tail of linked list of functions to call on disconnects by clients.

Definition at line 110 of file tcp_server_legacy.c.

Referenced by GNUNET_SERVER_destroy(), GNUNET_SERVER_disconnect_notify(), and GNUNET_SERVER_disconnect_notify_cancel().

◆ connect_notify_list_head

struct NotifyList* GNUNET_SERVER_Handle::connect_notify_list_head

Head of linked list of functions to call on connects by clients.

Definition at line 115 of file tcp_server_legacy.c.

Referenced by GNUNET_SERVER_connect_notify(), GNUNET_SERVER_connect_notify_cancel(), GNUNET_SERVER_connect_socket(), and GNUNET_SERVER_destroy().

◆ connect_notify_list_tail

struct NotifyList* GNUNET_SERVER_Handle::connect_notify_list_tail

Tail of linked list of functions to call on connects by clients.

Definition at line 120 of file tcp_server_legacy.c.

Referenced by GNUNET_SERVER_connect_notify(), GNUNET_SERVER_connect_notify_cancel(), and GNUNET_SERVER_destroy().

◆ access_cb

GNUNET_CONNECTION_AccessCheck GNUNET_SERVER_Handle::access_cb

Function to call for access control.

Definition at line 125 of file tcp_server_legacy.c.

Referenced by GNUNET_SERVER_create_with_sockets(), and process_listen_socket().

◆ access_cb_cls

void* GNUNET_SERVER_Handle::access_cb_cls

Closure for access_cb.

Definition at line 130 of file tcp_server_legacy.c.

Referenced by GNUNET_SERVER_create_with_sockets(), and process_listen_socket().

◆ listen_sockets

struct GNUNET_NETWORK_Handle** GNUNET_SERVER_Handle::listen_sockets

NULL-terminated array of sockets used to listen for new connections.

Definition at line 136 of file tcp_server_legacy.c.

Referenced by GNUNET_SERVER_create_with_sockets(), GNUNET_SERVER_destroy(), GNUNET_SERVER_resume(), GNUNET_SERVER_stop_listening(), and process_listen_socket().

◆ idle_timeout

struct GNUNET_TIME_Relative GNUNET_SERVER_Handle::idle_timeout

After how long should an idle connection time out (on write).

Definition at line 142 of file tcp_server_legacy.c.

Referenced by GNUNET_SERVER_connect_socket(), and GNUNET_SERVER_create_with_sockets().

◆ listen_task

struct GNUNET_SCHEDULER_Task* GNUNET_SERVER_Handle::listen_task

◆ mst_create

GNUNET_SERVER_MstCreateCallback GNUNET_SERVER_Handle::mst_create

Alternative function to create a MST instance.

Definition at line 152 of file tcp_server_legacy.c.

Referenced by GNUNET_SERVER_connect_socket(), and GNUNET_SERVER_set_callbacks().

◆ mst_destroy

GNUNET_SERVER_MstDestroyCallback GNUNET_SERVER_Handle::mst_destroy

Alternative function to destroy a MST instance.

Definition at line 157 of file tcp_server_legacy.c.

Referenced by GNUNET_SERVER_client_disconnect(), and GNUNET_SERVER_set_callbacks().

◆ mst_receive

GNUNET_SERVER_MstReceiveCallback GNUNET_SERVER_Handle::mst_receive

Alternative function to give data to a MST instance.

Definition at line 162 of file tcp_server_legacy.c.

Referenced by GNUNET_SERVER_set_callbacks(), process_incoming(), and process_mst().

◆ mst_cls

void* GNUNET_SERVER_Handle::mst_cls

◆ require_found

int GNUNET_SERVER_Handle::require_found

Do we ignore messages of types that we do not understand or do we require that a handler is found (and if not kill the connection)?

Definition at line 173 of file tcp_server_legacy.c.

Referenced by GNUNET_SERVER_create_with_sockets(), and GNUNET_SERVER_inject().

◆ in_soft_shutdown

int GNUNET_SERVER_Handle::in_soft_shutdown

Set to GNUNET_YES once we are in 'soft' shutdown where we wait for all non-monitor clients to disconnect before we call GNUNET_SERVER_destroy.

See test_monitor_clients(). Set to GNUNET_SYSERR once the final destroy task has been scheduled (we cannot run it in the same task).

Definition at line 182 of file tcp_server_legacy.c.

Referenced by GNUNET_SERVER_stop_listening(), and test_monitor_clients().


The documentation for this struct was generated from the following file: