"Fossies" - the Fresh Open Source Software Archive

Member "mod_http2-1.15.17/mod_http2/h2_config.h" (22 Feb 2021, 3208 Bytes) of package /linux/www/apache_httpd_modules/mod_http2-1.15.17.tar.gz:


As a special service "Fossies" has tried to format the requested source page into HTML format using (guessed) C and C++ source code syntax highlighting (style: standard) with prefixed line numbers and code folding option. Alternatively you can here view or download the uninterpreted source code file. For more information about "h2_config.h" see the Fossies "Dox" file reference documentation and the latest Fossies "Diffs" side-by-side code changes report: 1.15.16_vs_1.15.17.

    1 /* Licensed to the Apache Software Foundation (ASF) under one or more
    2  * contributor license agreements.  See the NOTICE file distributed with
    3  * this work for additional information regarding copyright ownership.
    4  * The ASF licenses this file to You under the Apache License, Version 2.0
    5  * (the "License"); you may not use this file except in compliance with
    6  * the License.  You may obtain a copy of the License at
    7  *
    8  *     http://www.apache.org/licenses/LICENSE-2.0
    9  *
   10  * Unless required by applicable law or agreed to in writing, software
   11  * distributed under the License is distributed on an "AS IS" BASIS,
   12  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
   13  * See the License for the specific language governing permissions and
   14  * limitations under the License.
   15  */
   16 
   17 #ifndef __mod_h2__h2_config_h__
   18 #define __mod_h2__h2_config_h__
   19 
   20 #undef PACKAGE_VERSION
   21 #undef PACKAGE_TARNAME
   22 #undef PACKAGE_STRING
   23 #undef PACKAGE_NAME
   24 #undef PACKAGE_BUGREPORT
   25 
   26 typedef enum {
   27     H2_CONF_MAX_STREAMS,
   28     H2_CONF_WIN_SIZE,
   29     H2_CONF_MIN_WORKERS,
   30     H2_CONF_MAX_WORKERS,
   31     H2_CONF_MAX_WORKER_IDLE_SECS,
   32     H2_CONF_STREAM_MAX_MEM,
   33     H2_CONF_ALT_SVCS,
   34     H2_CONF_ALT_SVC_MAX_AGE,
   35     H2_CONF_SER_HEADERS,
   36     H2_CONF_DIRECT,
   37     H2_CONF_MODERN_TLS_ONLY,
   38     H2_CONF_UPGRADE,
   39     H2_CONF_TLS_WARMUP_SIZE,
   40     H2_CONF_TLS_COOLDOWN_SECS,
   41     H2_CONF_PUSH,
   42     H2_CONF_PUSH_DIARY_SIZE,
   43     H2_CONF_COPY_FILES,
   44     H2_CONF_EARLY_HINTS,
   45     H2_CONF_PADDING_BITS,
   46     H2_CONF_PADDING_ALWAYS,
   47     H2_CONF_OUTPUT_BUFFER,
   48 } h2_config_var_t;
   49 
   50 struct apr_hash_t;
   51 struct h2_priority;
   52 struct h2_push_res;
   53 
   54 typedef struct h2_push_res {
   55     const char *uri_ref;
   56     int critical;
   57 } h2_push_res;
   58 
   59 
   60 void *h2_config_create_dir(apr_pool_t *pool, char *x);
   61 void *h2_config_merge_dir(apr_pool_t *pool, void *basev, void *addv);
   62 void *h2_config_create_svr(apr_pool_t *pool, server_rec *s);
   63 void *h2_config_merge_svr(apr_pool_t *pool, void *basev, void *addv);
   64 
   65 extern const command_rec h2_cmds[];
   66 
   67 int h2_config_geti(request_rec *r, server_rec *s, h2_config_var_t var);
   68 apr_int64_t h2_config_geti64(request_rec *r, server_rec *s, h2_config_var_t var);
   69 
   70 /** 
   71  * Get the configured value for variable <var> at the given connection.
   72  */
   73 int h2_config_cgeti(conn_rec *c, h2_config_var_t var);
   74 apr_int64_t h2_config_cgeti64(conn_rec *c, h2_config_var_t var);
   75 
   76 /** 
   77  * Get the configured value for variable <var> at the given server.
   78  */
   79 int h2_config_sgeti(server_rec *s, h2_config_var_t var);
   80 apr_int64_t h2_config_sgeti64(server_rec *s, h2_config_var_t var);
   81 
   82 /** 
   83  * Get the configured value for variable <var> at the given request,
   84  * if configured for the request location. 
   85  * Fallback to request server config otherwise.
   86  */
   87 int h2_config_rgeti(request_rec *r, h2_config_var_t var);
   88 apr_int64_t h2_config_rgeti64(request_rec *r, h2_config_var_t var);
   89 
   90 apr_array_header_t *h2_config_push_list(request_rec *r);
   91 apr_array_header_t *h2_config_alt_svcs(request_rec *r);
   92 
   93 
   94 void h2_get_num_workers(server_rec *s, int *minw, int *maxw);
   95 void h2_config_init(apr_pool_t *pool);
   96 
   97 const struct h2_priority *h2_cconfig_get_priority(conn_rec *c, const char *content_type);
   98        
   99 #endif /* __mod_h2__h2_config_h__ */
  100