daemon_options.h (6732B)
1 /* This is generated code, it is still under LGPLv2.1+. 2 Do not edit directly! */ 3 /** 4 * @file daemon_options.h 5 * @author daemon-options-generator.c 6 */ 7 8 #ifndef MHD_DAEMON_OPTIONS_H 9 #define MHD_DAEMON_OPTIONS_H 1 10 11 #include "mhd_sys_options.h" 12 #include "mhd_public_api.h" 13 14 struct DaemonOptions 15 { 16 /** 17 * Value for #MHD_D_O_WORK_MODE. 18 * the object created by one of the next functions/macros: #MHD_WM_OPTION_EXTERNAL_PERIODIC(), #MHD_WM_OPTION_EXTERNAL_EVENT_LOOP_CB_LEVEL(), #MHD_WM_OPTION_EXTERNAL_EVENT_LOOP_CB_EDGE(), #MHD_WM_OPTION_EXTERNAL_SINGLE_FD_WATCH(), #MHD_WM_OPTION_WORKER_THREADS(), #MHD_WM_OPTION_THREAD_PER_CONNECTION() 19 */ 20 struct MHD_WorkModeWithParam work_mode; 21 22 23 /** 24 * Value for #MHD_D_O_POLL_SYSCALL. 25 * FIXME 26 */ 27 enum MHD_SockPollSyscall poll_syscall; 28 29 30 /** 31 * Value for #MHD_D_O_REREGISTER_ALL. 32 */ 33 enum MHD_Bool reregister_all; 34 35 36 /** 37 * Value for #MHD_D_O_LOG_CALLBACK. 38 * the callback to use for logging, 39 * NULL to disable logging. 40 * The logging to stderr is enabled by default. 41 */ 42 struct MHD_DaemonOptionValueLog log_callback; 43 44 45 /** 46 * Value for #MHD_D_O_BIND_PORT. 47 * the address family to use, 48 * the #MHD_AF_NONE to disable listen socket (the same effect as if this option is not used) 49 */ 50 struct MHD_DaemonOptionValueBind bind_port; 51 52 53 /** 54 * Value for #MHD_D_O_BIND_SA. 55 * the size of the socket address pointed by @a sa. 56 */ 57 struct MHD_DaemonOptionValueSA bind_sa; 58 59 60 /** 61 * Value for #MHD_D_O_LISTEN_SOCKET. 62 * the listen socket to use, ignored if set to #MHD_INVALID_SOCKET 63 */ 64 MHD_Socket listen_socket; 65 66 67 /** 68 * Value for #MHD_D_O_LISTEN_ADDR_REUSE. 69 * FIXME 70 */ 71 enum MHD_DaemonOptionBindType listen_addr_reuse; 72 73 74 /** 75 * Value for #MHD_D_O_TCP_FASTOPEN. 76 * the type use of of TCP FastOpen 77 */ 78 struct MHD_DaemonOptionValueTFO tcp_fastopen; 79 80 81 /** 82 * Value for #MHD_D_O_LISTEN_BACKLOG. 83 * FIXME 84 */ 85 unsigned int listen_backlog; 86 87 88 /** 89 * Value for #MHD_D_O_SIGPIPE_SUPPRESSED. 90 */ 91 enum MHD_Bool sigpipe_suppressed; 92 93 94 /** 95 * Value for #MHD_D_O_TLS. 96 * the TLS backend to use, 97 * #MHD_TLS_BACKEND_NONE for non-TLS (plain TCP) connections 98 */ 99 enum MHD_TlsBackend tls; 100 101 102 /** 103 * Value for #MHD_D_O_TLS_CERT_KEY. 104 * The X.509 certificates chain in PEM format loaded into memory (not a filename). 105 * The first certificate must be the server certificate, following by the chain of signing 106 * certificates up to (but not including) CA root certificate. 107 */ 108 struct MHD_DaemonOptionValueTlsCert tls_cert_key; 109 110 111 /** 112 * Value for #MHD_D_O_TLS_CLIENT_CA. 113 * the CA certificate in memory (not a filename) 114 */ 115 const char *tls_client_ca; 116 117 118 /** 119 * Value for #MHD_D_O_TLS_PSK_CALLBACK. 120 * the function to call to obtain pre-shared key 121 */ 122 struct MHD_DaemonOptionValueTlsPskCB tls_psk_callback; 123 124 125 /** 126 * Value for #MHD_D_O_NO_ALPN. 127 */ 128 enum MHD_Bool no_alpn; 129 130 131 /** 132 * Value for #MHD_D_O_ACME_ALPN_REQUIRED. 133 */ 134 enum MHD_Bool acme_alpn_required; 135 136 137 /** 138 * Value for #MHD_D_O_TLS_APP_NAME. 139 * the name of the application, used as converted to 140 * uppercase (with '@'-prefixed) for GnuTLS and as converted to 141 * lowercase for OpenSSL; must not be longer than 127 characters 142 */ 143 struct MHD_DaemonOptionValueTlsAppName tls_app_name; 144 145 146 /** 147 * Value for #MHD_D_O_TLS_OPENSSL_DEF_FILE. 148 * the path and the name of the OpenSSL configuration file, 149 * if only the name is provided then standard path for 150 * configuration files is used, 151 * could be NULL to use default configuration file pathname 152 * or an empty (zero-size) string to disable file loading 153 */ 154 struct MHD_DaemonOptionValueTlsOsslDefFile tls_openssl_def_file; 155 156 157 /** 158 * Value for #MHD_D_O_DEFAULT_TIMEOUT_MILSEC. 159 * the timeout in milliseconds, zero for no timeout 160 */ 161 uint_fast32_t default_timeout_milsec; 162 163 164 /** 165 * Value for #MHD_D_O_GLOBAL_CONNECTION_LIMIT. 166 * FIXME 167 */ 168 unsigned int global_connection_limit; 169 170 171 /** 172 * Value for #MHD_D_O_PER_IP_LIMIT. 173 * FIXME 174 */ 175 unsigned int per_ip_limit; 176 177 178 /** 179 * Value for #MHD_D_O_ACCEPT_POLICY. 180 * the accept policy callback 181 */ 182 struct MHD_DaemonOptionValueAcceptPol accept_policy; 183 184 185 /** 186 * Value for #MHD_D_O_CONN_BUFF_ZEROING. 187 * buffer zeroing mode 188 */ 189 enum MHD_ConnBufferZeroingMode conn_buff_zeroing; 190 191 192 /** 193 * Value for #MHD_D_O_PROTOCOL_STRICT_LEVEL. 194 * the level of strictness 195 */ 196 struct MHD_DaemonOptionValueStrctLvl protocol_strict_level; 197 198 199 /** 200 * Value for #MHD_D_O_EARLY_URI_LOGGER. 201 * the early URI callback 202 */ 203 struct MHD_DaemonOptionValueUriCB early_uri_logger; 204 205 206 /** 207 * Value for #MHD_D_O_DISABLE_URI_QUERY_PLUS_AS_SPACE. 208 */ 209 enum MHD_Bool disable_uri_query_plus_as_space; 210 211 212 /** 213 * Value for #MHD_D_O_SUPPRESS_DATE_HEADER. 214 */ 215 enum MHD_Bool suppress_date_header; 216 217 218 /** 219 * Value for #MHD_D_O_ENABLE_SHOUTCAST. 220 */ 221 enum MHD_Bool enable_shoutcast; 222 223 224 /** 225 * Value for #MHD_D_O_CONN_MEMORY_LIMIT. 226 */ 227 size_t conn_memory_limit; 228 229 230 /** 231 * Value for #MHD_D_O_LARGE_POOL_SIZE. 232 */ 233 size_t large_pool_size; 234 235 236 /** 237 * Value for #MHD_D_O_STACK_SIZE. 238 */ 239 size_t stack_size; 240 241 242 /** 243 * Value for #MHD_D_O_FD_NUMBER_LIMIT. 244 * FIXME 245 */ 246 MHD_Socket fd_number_limit; 247 248 249 /** 250 * Value for #MHD_D_O_TURBO. 251 */ 252 enum MHD_Bool turbo; 253 254 255 /** 256 * Value for #MHD_D_O_DISABLE_THREAD_SAFETY. 257 */ 258 enum MHD_Bool disable_thread_safety; 259 260 261 /** 262 * Value for #MHD_D_O_DISALLOW_UPGRADE. 263 */ 264 enum MHD_Bool disallow_upgrade; 265 266 267 /** 268 * Value for #MHD_D_O_DISALLOW_SUSPEND_RESUME. 269 */ 270 enum MHD_Bool disallow_suspend_resume; 271 272 273 /** 274 * Value for #MHD_D_O_DISABLE_COOKIES. 275 */ 276 enum MHD_Bool disable_cookies; 277 278 279 /** 280 * Value for #MHD_D_O_DAEMON_READY_CALLBACK. 281 * the pre-start callback 282 */ 283 struct MHD_DaemonOptionValueReadyCB daemon_ready_callback; 284 285 286 /** 287 * Value for #MHD_D_O_NOTIFY_CONNECTION. 288 * the callback for notifications 289 */ 290 struct MHD_DaemonOptionValueNotifConnCB notify_connection; 291 292 293 /** 294 * Value for #MHD_D_O_NOTIFY_STREAM. 295 * the callback for notifications 296 */ 297 struct MHD_DaemonOptionValueNotifStreamCB notify_stream; 298 299 300 /** 301 * Value for #MHD_D_O_RANDOM_ENTROPY. 302 * the size of the buffer 303 */ 304 struct MHD_DaemonOptionEntropySeed random_entropy; 305 306 307 /** 308 * Value for #MHD_D_O_AUTH_DIGEST_MAP_SIZE. 309 * the size of the map array 310 */ 311 size_t auth_digest_map_size; 312 313 314 /** 315 * Value for #MHD_D_O_AUTH_DIGEST_NONCE_TIMEOUT. 316 * FIXME 317 */ 318 unsigned int auth_digest_nonce_timeout; 319 320 321 /** 322 * Value for #MHD_D_O_AUTH_DIGEST_DEF_MAX_NC. 323 * FIXME 324 */ 325 uint_fast32_t auth_digest_def_max_nc; 326 327 328 }; 329 330 #endif /* ! MHD_DAEMON_OPTIONS_H 1 */