28 #ifndef HOMEPORT_HPD_TCPD_H 
   29 #define HOMEPORT_HPD_TCPD_H 
   57                                              const char *buf, 
size_t len);
 
  113 #define HPD_TCPD_SETTINGS_DEFAULT { \ 
  114    .port = HPD_TCPD_P_HTTP, \ 
  117    .max_data_size = 1024, \ 
  118    .on_connect = NULL, \ 
  119    .on_receive = NULL, \ 
  120    .on_disconnect = NULL, \ 
  142 #endif // HOMEPORT_TCPD_H 
enum hpd_tcpd_port hpd_tcpd_port_t
 
hpd_tcpd_nodata_f on_connect
 
hpd_error_t hpd_tcpd_create(hpd_tcpd_t **tcpd, hpd_tcpd_settings_t *settings, const hpd_module_t *context, hpd_ev_loop_t *loop)
Create new tcpd instance. 
 
hpd_tcpd_port_t port
Port number. 
 
struct hp_settings settings
 
hpd_error_t hpd_tcpd_conn_keep_open(hpd_tcpd_conn_t *conn)
Disable timeout on connection. 
 
hpd_error_t hpd_tcpd_conn_get_ip(hpd_tcpd_conn_t *conn, const char **ip)
Get the IP address of the client. 
 
hpd_error_t hpd_tcpd_stop(hpd_tcpd_t *tcpd)
Stop an already running tcpd. 
 
hpd_tcpd_nodata_f on_disconnect
 
hpd_error_t hpd_tcpd_start(hpd_tcpd_t *tcpd)
Start the tcpd. 
 
enum hpd_error hpd_error_t
 
hpd_tcpd_return_t(* hpd_tcpd_nodata_f)(hpd_tcpd_t *instance, hpd_tcpd_conn_t *conn, void *ws_ctx, void **conn_ctx)
 
All data to represent a connection. 
 
hpd_error_t hpd_tcpd_conn_sendf(hpd_tcpd_conn_t *conn, const char *fmt,...)
Send message on connection. 
 
static struct ev_loop * loop
 
hpd_error_t hpd_tcpd_conn_kill(hpd_tcpd_conn_t *conn)
Kill and clean up after a connection. 
 
hpd_error_t hpd_tcpd_conn_close(hpd_tcpd_conn_t *conn)
Close a connection, after the remaining data has been sent. 
 
hpd_tcpd_data_f on_receive
 
hpd_error_t hpd_tcpd_conn_vsendf(hpd_tcpd_conn_t *conn, const char *fmt, va_list vp)
Send message on connection. 
 
struct ev_loop hpd_ev_loop_t
 
hpd_error_t hpd_tcpd_destroy(hpd_tcpd_t *tcpd)
Destroy tcpd and free used memory. 
 
Settings struct for tcpd. 
 
hpd_tcpd_return_t(* hpd_tcpd_data_f)(hpd_tcpd_t *instance, hpd_tcpd_conn_t *conn, void *ws_ctx, void **conn_ctx, const char *buf, size_t len)
 
enum hpd_tcpd_return hpd_tcpd_return_t