libwebsockets
Lightweight C library for HTML5 websockets
lws-context-vhost.h File Reference
+ This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Data Structures

struct  lws_context_creation_info
 
struct  lws_protocol_vhost_options
 
struct  lws_http_mount
 

Macros

#define LWS_SERVER_OPTION_REQUIRE_VALID_OPENSSL_CLIENT_CERT
 
#define LWS_SERVER_OPTION_SKIP_SERVER_CANONICAL_NAME   (1ll << 2)
 
#define LWS_SERVER_OPTION_ALLOW_NON_SSL_ON_SSL_PORT
 
#define LWS_SERVER_OPTION_LIBEV   (1ll << 4)
 
#define LWS_SERVER_OPTION_DISABLE_IPV6   (1ll << 5)
 
#define LWS_SERVER_OPTION_DISABLE_OS_CA_CERTS   (1ll << 6)
 
#define LWS_SERVER_OPTION_PEER_CERT_NOT_REQUIRED   (1ll << 7)
 
#define LWS_SERVER_OPTION_VALIDATE_UTF8   (1ll << 8)
 
#define LWS_SERVER_OPTION_SSL_ECDH
 
#define LWS_SERVER_OPTION_LIBUV   (1ll << 10)
 
#define LWS_SERVER_OPTION_REDIRECT_HTTP_TO_HTTPS
 
#define LWS_SERVER_OPTION_DO_SSL_GLOBAL_INIT   (1ll << 12)
 
#define LWS_SERVER_OPTION_EXPLICIT_VHOSTS   (1ll << 13)
 
#define LWS_SERVER_OPTION_UNIX_SOCK   (1ll << 14)
 
#define LWS_SERVER_OPTION_STS   (1ll << 15)
 
#define LWS_SERVER_OPTION_IPV6_V6ONLY_MODIFY   (1ll << 16)
 
#define LWS_SERVER_OPTION_IPV6_V6ONLY_VALUE   (1ll << 17)
 
#define LWS_SERVER_OPTION_UV_NO_SIGSEGV_SIGFPE_SPIN   (1ll << 18)
 
#define LWS_SERVER_OPTION_JUST_USE_RAW_ORIGIN   (1ll << 19)
 
#define LWS_SERVER_OPTION_FALLBACK_TO_RAW   /* use below name */ (1ll << 20)
 
#define LWS_SERVER_OPTION_FALLBACK_TO_APPLY_LISTEN_ACCEPT_CONFIG   (1ll << 20)
 
#define LWS_SERVER_OPTION_LIBEVENT   (1ll << 21)
 
#define LWS_SERVER_OPTION_ONLY_RAW   /* Use below name instead */ (1ll << 22)
 
#define LWS_SERVER_OPTION_ADOPT_APPLY_LISTEN_ACCEPT_CONFIG   (1ll << 22)
 
#define LWS_SERVER_OPTION_ALLOW_LISTEN_SHARE   (1ll << 23)
 
#define LWS_SERVER_OPTION_CREATE_VHOST_SSL_CTX   (1ll << 24)
 
#define LWS_SERVER_OPTION_SKIP_PROTOCOL_INIT   (1ll << 25)
 
#define LWS_SERVER_OPTION_IGNORE_MISSING_CERT   (1ll << 26)
 
#define LWS_SERVER_OPTION_VHOST_UPG_STRICT_HOST_CHECK   (1ll << 27)
 
#define LWS_SERVER_OPTION_HTTP_HEADERS_SECURITY_BEST_PRACTICES_ENFORCE   (1ll << 28)
 
#define LWS_SERVER_OPTION_ALLOW_HTTP_ON_HTTPS_LISTENER   (1ll << 29)
 
#define LWS_SERVER_OPTION_FAIL_UPON_UNABLE_TO_BIND   (1ll << 30)
 
#define LWS_SERVER_OPTION_H2_JUST_FIX_WINDOW_UPDATE_OVERFLOW   (1ll << 31)
 
#define LWS_SERVER_OPTION_VH_H2_HALF_CLOSED_LONG_POLL   (1ll << 32)
 
#define LWS_SERVER_OPTION_GLIB   (1ll << 33)
 
#define LWS_SERVER_OPTION_H2_PRIOR_KNOWLEDGE   (1ll << 34)
 
#define LWS_SERVER_OPTION_NO_LWS_SYSTEM_STATES   (1ll << 35)
 
#define LWS_SERVER_OPTION_SS_PROXY   (1ll << 36)
 
#define LWS_SERVER_OPTION_SDEVENT   (1ll << 37)
 
#define LWS_SERVER_OPTION_ULOOP   (1ll << 38)
 
#define LWS_SERVER_OPTION_DISABLE_TLS_SESSION_CACHE   (1ll << 39)
 
#define lws_check_opt(c, f)   ((((uint64_t)c) & ((uint64_t)f)) == ((uint64_t)f))
 
#define AUTH_MODE_MASK   0xF0000000
 

Typedefs

typedef int(* lws_context_ready_cb_t) (struct lws_context *context)
 
typedef int(* lws_reload_func) (void)
 

Enumerations

enum  lws_mount_protocols {
  LWSMPRO_HTTP = 0 , LWSMPRO_HTTPS = 1 , LWSMPRO_FILE = 2 , LWSMPRO_CGI = 3 ,
  LWSMPRO_REDIR_HTTP = 4 , LWSMPRO_REDIR_HTTPS = 5 , LWSMPRO_CALLBACK = 6 , LWSMPRO_NO_MOUNT = 7
}
 
enum  lws_authentication_mode { LWSAUTHM_DEFAULT = 0 , LWSAUTHM_BASIC_AUTH_CALLBACK = 1 << 28 }
 

Functions

LWS_VISIBLE LWS_EXTERN struct lws_context * lws_create_context (const struct lws_context_creation_info *info)
 
LWS_VISIBLE LWS_EXTERN void lws_context_destroy (struct lws_context *context)
 
LWS_VISIBLE LWS_EXTERN void lws_context_deprecate (struct lws_context *context, lws_reload_func cb)
 
LWS_VISIBLE LWS_EXTERN int lws_context_is_deprecated (struct lws_context *context)
 
LWS_VISIBLE LWS_EXTERN int lws_set_proxy (struct lws_vhost *vhost, const char *proxy)
 
LWS_VISIBLE LWS_EXTERN int lws_set_socks (struct lws_vhost *vhost, const char *socks)
 
LWS_VISIBLE LWS_EXTERN struct lws_vhost * lws_create_vhost (struct lws_context *context, const struct lws_context_creation_info *info)
 
LWS_VISIBLE LWS_EXTERN void lws_vhost_destroy (struct lws_vhost *vh)
 
LWS_VISIBLE LWS_EXTERN int lwsws_get_config_globals (struct lws_context_creation_info *info, const char *d, char **config_strings, int *len)
 
LWS_VISIBLE LWS_EXTERN int lwsws_get_config_vhosts (struct lws_context *context, struct lws_context_creation_info *info, const char *d, char **config_strings, int *len)
 
LWS_VISIBLE LWS_EXTERN struct lws_vhost * lws_get_vhost (struct lws *wsi)
 
LWS_VISIBLE LWS_EXTERN const char * lws_get_vhost_name (struct lws_vhost *vhost)
 
LWS_VISIBLE LWS_EXTERN struct lws_vhost * lws_get_vhost_by_name (struct lws_context *context, const char *name)
 
LWS_VISIBLE LWS_EXTERN int lws_get_vhost_port (struct lws_vhost *vhost)
 
LWS_VISIBLE LWS_EXTERN void * lws_get_vhost_user (struct lws_vhost *vhost)
 
LWS_VISIBLE LWS_EXTERN const char * lws_get_vhost_iface (struct lws_vhost *vhost)
 
LWS_VISIBLE LWS_EXTERN void * lws_vhost_user (struct lws_vhost *vhost)
 
LWS_VISIBLE LWS_EXTERN void * lws_context_user (struct lws_context *context)
 
LWS_VISIBLE LWS_EXTERN const char * lws_vh_tag (struct lws_vhost *vh)
 
LWS_VISIBLE LWS_EXTERN void _lws_context_info_defaults (struct lws_context_creation_info *info, const char *sspol)
 
LWS_VISIBLE LWS_EXTERN void lws_default_loop_exit (struct lws_context *cx)
 
LWS_VISIBLE LWS_EXTERN void lws_context_default_loop_run_destroy (struct lws_context *cx)
 
LWS_VISIBLE LWS_EXTERN int lws_cmdline_passfail (int argc, const char **argv, int actual)
 
LWS_VISIBLE LWS_EXTERN int lws_systemd_inherited_fd (unsigned int index, struct lws_context_creation_info *info)
 
LWS_VISIBLE LWS_EXTERN int lws_context_is_being_destroyed (struct lws_context *context)
 
LWS_VISIBLE LWS_EXTERN void lws_vhost_set_mounts (struct lws_vhost *v, const struct lws_http_mount *mounts)