libmicrohttpd2

HTTP server C library (MHD 2.x, alpha)
Log | Files | Refs | README | LICENSE

daemon_options.h (6638B)


      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_TLS_APP_NAME.
    133    * the name of the application, used as converted to
    134    * uppercase (with '@'-prefixed) for GnuTLS and as converted to
    135    * lowercase for OpenSSL; must not be longer than 127 characters
    136    */
    137   struct MHD_DaemonOptionValueTlsAppName tls_app_name;
    138 
    139 
    140   /**
    141    * Value for #MHD_D_O_TLS_OPENSSL_DEF_FILE.
    142    * the path and the name of the OpenSSL configuration file,
    143    * if only the name is provided then standard path for
    144    * configuration files is used,
    145    * could be NULL to use default configuration file pathname
    146    * or an empty (zero-size) string to disable file loading
    147    */
    148   struct MHD_DaemonOptionValueTlsOsslDefFile tls_openssl_def_file;
    149 
    150 
    151   /**
    152    * Value for #MHD_D_O_DEFAULT_TIMEOUT_MILSEC.
    153    * the timeout in milliseconds, zero for no timeout
    154    */
    155   uint_fast32_t default_timeout_milsec;
    156 
    157 
    158   /**
    159    * Value for #MHD_D_O_GLOBAL_CONNECTION_LIMIT.
    160    * FIXME
    161    */
    162   unsigned int global_connection_limit;
    163 
    164 
    165   /**
    166    * Value for #MHD_D_O_PER_IP_LIMIT.
    167    * FIXME
    168    */
    169   unsigned int per_ip_limit;
    170 
    171 
    172   /**
    173    * Value for #MHD_D_O_ACCEPT_POLICY.
    174    * the accept policy callback
    175    */
    176   struct MHD_DaemonOptionValueAcceptPol accept_policy;
    177 
    178 
    179   /**
    180    * Value for #MHD_D_O_CONN_BUFF_ZEROING.
    181    * buffer zeroing mode
    182    */
    183   enum MHD_ConnBufferZeroingMode conn_buff_zeroing;
    184 
    185 
    186   /**
    187    * Value for #MHD_D_O_PROTOCOL_STRICT_LEVEL.
    188    * the level of strictness
    189    */
    190   struct MHD_DaemonOptionValueStrctLvl protocol_strict_level;
    191 
    192 
    193   /**
    194    * Value for #MHD_D_O_EARLY_URI_LOGGER.
    195    * the early URI callback
    196    */
    197   struct MHD_DaemonOptionValueUriCB early_uri_logger;
    198 
    199 
    200   /**
    201    * Value for #MHD_D_O_DISABLE_URI_QUERY_PLUS_AS_SPACE.
    202    */
    203   enum MHD_Bool disable_uri_query_plus_as_space;
    204 
    205 
    206   /**
    207    * Value for #MHD_D_O_SUPPRESS_DATE_HEADER.
    208    */
    209   enum MHD_Bool suppress_date_header;
    210 
    211 
    212   /**
    213    * Value for #MHD_D_O_ENABLE_SHOUTCAST.
    214    */
    215   enum MHD_Bool enable_shoutcast;
    216 
    217 
    218   /**
    219    * Value for #MHD_D_O_CONN_MEMORY_LIMIT.
    220    */
    221   size_t conn_memory_limit;
    222 
    223 
    224   /**
    225    * Value for #MHD_D_O_LARGE_POOL_SIZE.
    226    */
    227   size_t large_pool_size;
    228 
    229 
    230   /**
    231    * Value for #MHD_D_O_STACK_SIZE.
    232    */
    233   size_t stack_size;
    234 
    235 
    236   /**
    237    * Value for #MHD_D_O_FD_NUMBER_LIMIT.
    238    * FIXME
    239    */
    240   MHD_Socket fd_number_limit;
    241 
    242 
    243   /**
    244    * Value for #MHD_D_O_TURBO.
    245    */
    246   enum MHD_Bool turbo;
    247 
    248 
    249   /**
    250    * Value for #MHD_D_O_DISABLE_THREAD_SAFETY.
    251    */
    252   enum MHD_Bool disable_thread_safety;
    253 
    254 
    255   /**
    256    * Value for #MHD_D_O_DISALLOW_UPGRADE.
    257    */
    258   enum MHD_Bool disallow_upgrade;
    259 
    260 
    261   /**
    262    * Value for #MHD_D_O_DISALLOW_SUSPEND_RESUME.
    263    */
    264   enum MHD_Bool disallow_suspend_resume;
    265 
    266 
    267   /**
    268    * Value for #MHD_D_O_DISABLE_COOKIES.
    269    */
    270   enum MHD_Bool disable_cookies;
    271 
    272 
    273   /**
    274    * Value for #MHD_D_O_DAEMON_READY_CALLBACK.
    275    * the pre-start callback
    276    */
    277   struct MHD_DaemonOptionValueReadyCB daemon_ready_callback;
    278 
    279 
    280   /**
    281    * Value for #MHD_D_O_NOTIFY_CONNECTION.
    282    * the callback for notifications
    283    */
    284   struct MHD_DaemonOptionValueNotifConnCB notify_connection;
    285 
    286 
    287   /**
    288    * Value for #MHD_D_O_NOTIFY_STREAM.
    289    * the callback for notifications
    290    */
    291   struct MHD_DaemonOptionValueNotifStreamCB notify_stream;
    292 
    293 
    294   /**
    295    * Value for #MHD_D_O_RANDOM_ENTROPY.
    296    * the size of the buffer
    297    */
    298   struct MHD_DaemonOptionEntropySeed random_entropy;
    299 
    300 
    301   /**
    302    * Value for #MHD_D_O_AUTH_DIGEST_MAP_SIZE.
    303    * the size of the map array
    304    */
    305   size_t auth_digest_map_size;
    306 
    307 
    308   /**
    309    * Value for #MHD_D_O_AUTH_DIGEST_NONCE_TIMEOUT.
    310    * FIXME
    311    */
    312   unsigned int auth_digest_nonce_timeout;
    313 
    314 
    315   /**
    316    * Value for #MHD_D_O_AUTH_DIGEST_DEF_MAX_NC.
    317    * FIXME
    318    */
    319   uint_fast32_t auth_digest_def_max_nc;
    320 
    321 
    322 };
    323 
    324 #endif /* ! MHD_DAEMON_OPTIONS_H 1 */