libmicrohttpd2

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

daemon_options.h (6629B)


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