Handle to a client that is connected to a service. More...
Data Fields | |
struct GNUNET_SERVICE_Client * | next |
Kept in a DLL. More... | |
struct GNUNET_SERVICE_Client * | prev |
Kept in a DLL. More... | |
struct GNUNET_SERVICE_Handle * | sh |
Service that this client belongs to. More... | |
struct GNUNET_NETWORK_Handle * | sock |
Socket of this client. More... | |
struct GNUNET_MQ_Handle * | mq |
Message queue for the client. More... | |
struct GNUNET_MessageStreamTokenizer * | mst |
Tokenizer we use for processing incoming data. More... | |
struct GNUNET_SCHEDULER_Task * | warn_task |
Task that warns about missing calls to GNUNET_SERVICE_client_continue(). More... | |
struct GNUNET_SCHEDULER_Task * | drop_task |
Task run to finish dropping the client after the stack has properly unwound. More... | |
struct GNUNET_SCHEDULER_Task * | recv_task |
Task that receives data from the client to pass it to the handlers. More... | |
struct GNUNET_SCHEDULER_Task * | send_task |
Task that transmit data to the client. More... | |
const struct GNUNET_MessageHeader * | msg |
Pointer to the message to be transmitted by send_task. More... | |
void * | user_context |
User context value, value returned from the connect callback. More... | |
struct GNUNET_TIME_Absolute | warn_start |
Time when we last gave a message from this client to the application. More... | |
size_t | msg_pos |
Current position in msg at which we are transmitting. More... | |
bool | persist |
Persist the file handle for this client no matter what happens, force the OS to close once the process actually dies. More... | |
bool | is_monitor |
Is this client a 'monitor' client that should not be counted when deciding on destroying the server during soft shutdown? (see also GNUNET_SERVICE_start) More... | |
bool | needs_continue |
Are we waiting for the application to call GNUNET_SERVICE_client_continue()? More... | |
uint16_t | warn_type |
Type of last message processed (for warn_no_receive_done). More... | |
struct GNUNET_SERVICE_Client* GNUNET_SERVICE_Client::next |
struct GNUNET_SERVICE_Client* GNUNET_SERVICE_Client::prev |
struct GNUNET_SERVICE_Handle* GNUNET_SERVICE_Client::sh |
Service that this client belongs to.
Definition at line 263 of file service.c.
Referenced by finish_client_drop(), GNUNET_SERVICE_client_drop(), GNUNET_SERVICE_client_mark_monitor(), return_agpl(), service_mq_error_handler(), and start_client().
struct GNUNET_NETWORK_Handle* GNUNET_SERVICE_Client::sock |
Socket of this client.
Definition at line 268 of file service.c.
Referenced by do_send(), finish_client_drop(), resume_client_receive(), service_client_recv(), and start_client().
struct GNUNET_MQ_Handle* GNUNET_SERVICE_Client::mq |
Message queue for the client.
Definition at line 273 of file service.c.
Referenced by do_send(), finish_client_drop(), GNUNET_SERVICE_client_drop(), GNUNET_SERVICE_client_get_mq(), service_client_mst_cb(), and start_client().
struct GNUNET_MessageStreamTokenizer* GNUNET_SERVICE_Client::mst |
Tokenizer we use for processing incoming data.
Definition at line 278 of file service.c.
Referenced by finish_client_drop(), resume_client_receive(), service_client_recv(), and start_client().
struct GNUNET_SCHEDULER_Task* GNUNET_SERVICE_Client::warn_task |
Task that warns about missing calls to GNUNET_SERVICE_client_continue().
Definition at line 284 of file service.c.
Referenced by finish_client_drop(), GNUNET_SERVICE_client_continue(), GNUNET_SERVICE_client_disable_continue_warning(), GNUNET_SERVICE_client_drop(), service_client_mst_cb(), and warn_no_client_continue().
struct GNUNET_SCHEDULER_Task* GNUNET_SERVICE_Client::drop_task |
Task run to finish dropping the client after the stack has properly unwound.
Definition at line 290 of file service.c.
Referenced by do_send(), finish_client_drop(), GNUNET_SERVICE_client_continue(), GNUNET_SERVICE_client_drop(), GNUNET_SERVICE_stop(), resume_client_receive(), service_client_mst_cb(), service_client_recv(), and service_mq_send().
struct GNUNET_SCHEDULER_Task* GNUNET_SERVICE_Client::recv_task |
Task that receives data from the client to pass it to the handlers.
Definition at line 296 of file service.c.
Referenced by finish_client_drop(), GNUNET_SERVICE_client_continue(), GNUNET_SERVICE_client_drop(), resume_client_receive(), service_client_recv(), and start_client().
struct GNUNET_SCHEDULER_Task* GNUNET_SERVICE_Client::send_task |
Task that transmit data to the client.
Definition at line 301 of file service.c.
Referenced by do_send(), finish_client_drop(), GNUNET_SERVICE_client_drop(), service_mq_cancel(), and service_mq_send().
const struct GNUNET_MessageHeader* GNUNET_SERVICE_Client::msg |
Pointer to the message to be transmitted by send_task.
Definition at line 306 of file service.c.
Referenced by do_send(), service_mq_cancel(), and service_mq_send().
void* GNUNET_SERVICE_Client::user_context |
User context value, value returned from the connect callback.
Definition at line 312 of file service.c.
Referenced by GNUNET_SERVICE_client_drop(), and start_client().
struct GNUNET_TIME_Absolute GNUNET_SERVICE_Client::warn_start |
Time when we last gave a message from this client to the application.
Definition at line 318 of file service.c.
Referenced by service_client_mst_cb(), and warn_no_client_continue().
size_t GNUNET_SERVICE_Client::msg_pos |
Current position in msg at which we are transmitting.
Definition at line 323 of file service.c.
Referenced by do_send(), service_mq_cancel(), and service_mq_send().
bool GNUNET_SERVICE_Client::persist |
Persist the file handle for this client no matter what happens, force the OS to close once the process actually dies.
Should only be used in special cases!
Definition at line 330 of file service.c.
Referenced by finish_client_drop(), and GNUNET_SERVICE_client_persist().
bool GNUNET_SERVICE_Client::is_monitor |
Is this client a 'monitor' client that should not be counted when deciding on destroying the server during soft shutdown? (see also GNUNET_SERVICE_start)
Definition at line 337 of file service.c.
Referenced by GNUNET_SERVICE_client_mark_monitor().
bool GNUNET_SERVICE_Client::needs_continue |
Are we waiting for the application to call GNUNET_SERVICE_client_continue()?
Definition at line 342 of file service.c.
Referenced by GNUNET_SERVICE_client_continue(), resume_client_receive(), service_client_mst_cb(), and service_client_recv().
uint16_t GNUNET_SERVICE_Client::warn_type |
Type of last message processed (for warn_no_receive_done).
Definition at line 347 of file service.c.
Referenced by service_client_mst_cb(), service_mq_error_handler(), and warn_no_client_continue().