ascii-chat 0.11.33
Video chat in your terminal
Loading...
Searching...
No Matches
session_server_like_config Struct Reference

#include <src/common/session/server_like.h>

Data Fields

session_server_like_init_fn init_fn
 
void * init_user_data
 
session_server_like_interrupt_fn interrupt_fn
 
session_server_like_cleanup_fn cleanup_fn
 
void * cleanup_user_data
 
session_server_like_status_fn status_fn
 
void * status_user_data
 
tcp_client_handler_fn tcp_handler
 
void * tcp_user_data
 
struct { 
 
   bool   enabled 
 
   websocket_client_handler_fn   handler 
 
   void *   user_data 
 
} websocket 
 
struct { 
 
   bool   enabled 
 
   const char *   service_name 
 
   const char *   service_type 
 
} mdns 
 
struct { 
 
   bool   enabled 
 
   const char *   description 
 
} upnp 
 
bool raise_fd_limit
 
int fd_limit_target
 

Detailed Description

Configuration for session_server_like_run().

Network settings (port, address, WebSocket port, TLS paths) are read from GET_OPTION() automatically. Callers provide callbacks, handler functions, and feature toggles.

Definition at line 149 of file server_like.h.

Field Documentation

◆ cleanup_fn

session_server_like_cleanup_fn session_server_like_config::cleanup_fn

Mode-specific teardown (optional, NULL to skip).

Definition at line 166 of file server_like.h.

Referenced by session_server_like_run().

◆ cleanup_user_data

void* session_server_like_config::cleanup_user_data

Definition at line 167 of file server_like.h.

Referenced by session_server_like_run().

◆ description

const char* session_server_like_config::description

Description for port mapping (e.g., "ascii-chat Server").

Definition at line 222 of file server_like.h.

Referenced by session_server_like_run().

◆ enabled

bool session_server_like_config::enabled

Enable WebSocket server alongside TCP.

Enable mDNS service advertisement.

Enable UPnP port mapping.

Definition at line 189 of file server_like.h.

Referenced by session_server_like_run().

◆ fd_limit_target

int session_server_like_config::fd_limit_target

Target file descriptor limit (e.g., 65536). Ignored if raise_fd_limit is false.

Definition at line 233 of file server_like.h.

Referenced by session_server_like_run().

◆ handler

websocket_client_handler_fn session_server_like_config::handler

Per-connection handler callback (required if enabled).

Definition at line 192 of file server_like.h.

Referenced by session_server_like_run().

◆ init_fn

session_server_like_init_fn session_server_like_config::init_fn

Mode-specific initialization (required, never NULL).

Definition at line 155 of file server_like.h.

Referenced by server_main(), and session_server_like_run().

◆ init_user_data

void* session_server_like_config::init_user_data

Definition at line 156 of file server_like.h.

Referenced by session_server_like_run().

◆ interrupt_fn

session_server_like_interrupt_fn session_server_like_config::interrupt_fn

Async-signal-safe interrupt handler (required, never NULL).

Definition at line 159 of file server_like.h.

Referenced by session_server_like_run().

◆ [struct]

struct { ... } session_server_like_config::mdns

Referenced by session_server_like_run().

◆ raise_fd_limit

bool session_server_like_config::raise_fd_limit

Raise file descriptor limit on startup.

Definition at line 230 of file server_like.h.

Referenced by session_server_like_run().

◆ service_name

const char* session_server_like_config::service_name

Service name (e.g., "ascii-chat-Server"). NULL for deferred advertisement.

Definition at line 207 of file server_like.h.

Referenced by session_server_like_run().

◆ service_type

const char* session_server_like_config::service_type

Service type (e.g., "_ascii-chat._tcp").

Definition at line 210 of file server_like.h.

Referenced by session_server_like_run().

◆ status_fn

session_server_like_status_fn session_server_like_config::status_fn

Status screen data provider (optional, NULL = no status screen).

Definition at line 170 of file server_like.h.

Referenced by session_server_like_run().

◆ status_user_data

void* session_server_like_config::status_user_data

Definition at line 171 of file server_like.h.

Referenced by session_server_like_run().

◆ tcp_handler

tcp_client_handler_fn session_server_like_config::tcp_handler

Per-connection handler callback (required).

Definition at line 178 of file server_like.h.

Referenced by session_server_like_run().

◆ tcp_user_data

void* session_server_like_config::tcp_user_data

User data passed to each tcp_handler invocation.

Definition at line 181 of file server_like.h.

Referenced by session_server_like_run().

◆ [struct]

struct { ... } session_server_like_config::upnp

Referenced by session_server_like_run().

◆ user_data

void* session_server_like_config::user_data

User data passed to each WebSocket handler invocation.

Definition at line 195 of file server_like.h.

Referenced by session_server_like_run().

◆ [struct]

struct { ... } session_server_like_config::websocket

Referenced by session_server_like_run().


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