ascii-chat 0.6.0
Real-time terminal-based video chat with ASCII art conversion
Loading...
Searching...
No Matches
tcp_server Struct Reference

TCP server state. More...

#include <lib/network/tcp/server.h>

Data Fields

socket_t listen_socket
 IPv4 listen socket.
 
socket_t listen_socket6
 IPv6 listen socket.
 
atomic_bool running
 Server running flag (set false to shutdown)
 
tcp_server_config_t config
 Server configuration.
 
tcp_client_entry_tclients
 Hash table of connected clients.
 
mutex_t clients_mutex
 Mutex protecting client registry.
 
tcp_client_cleanup_fn cleanup_fn
 Callback for cleaning up client data.
 

Detailed Description

TCP server state.

Maintains server sockets, client registry, and runtime state.

Definition at line 156 of file lib/network/tcp/server.h.

Field Documentation

◆ cleanup_fn

tcp_client_cleanup_fn tcp_server::cleanup_fn

Callback for cleaning up client data.

Definition at line 165 of file lib/network/tcp/server.h.

Referenced by tcp_server_init(), tcp_server_remove_client(), tcp_server_set_cleanup_callback(), and tcp_server_shutdown().

◆ clients

◆ clients_mutex

◆ config

tcp_server_config_t tcp_server::config

Server configuration.

Definition at line 160 of file lib/network/tcp/server.h.

Referenced by tcp_server_init(), and tcp_server_run().

◆ listen_socket

socket_t tcp_server::listen_socket

IPv4 listen socket.

Definition at line 157 of file lib/network/tcp/server.h.

Referenced by tcp_server_init(), tcp_server_run(), and tcp_server_shutdown().

◆ listen_socket6

socket_t tcp_server::listen_socket6

IPv6 listen socket.

Definition at line 158 of file lib/network/tcp/server.h.

Referenced by tcp_server_init(), tcp_server_run(), and tcp_server_shutdown().

◆ running

atomic_bool tcp_server::running

Server running flag (set false to shutdown)

Definition at line 159 of file lib/network/tcp/server.h.

Referenced by acds_client_handler(), tcp_server_init(), tcp_server_run(), and tcp_server_shutdown().


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