!C99Shell v. 2.0 [PHP 7 Update] [25.02.2019]!

Software: Apache. PHP/5.6.40 

uname -a: Linux cpanel06wh.bkk1.cloud.z.com 2.6.32-954.3.5.lve1.4.80.el6.x86_64 #1 SMP Thu Sep 24
01:42:00 EDT 2020 x86_64
 

uid=851(cp949260) gid=853(cp949260) groups=853(cp949260) 

Safe-mode: OFF (not secure)

/opt/passenger-5.3.7-4.el6.cloudlinux/src/nginx_module/ConfigGeneral/   drwxr-xr-x
Free 234.34 GB of 981.82 GB (23.87%)
Home    Back    Forward    UPDIR    Refresh    Search    Buffer    Encoder    Tools    Proc.    FTP brute    Sec.    SQL    PHP-code    Update    Feedback    Self remove    Logout    


Viewing file:     ManifestGeneration.h (5.42 KB)      -rw-r--r--
Select action/file-type:
(+) | (+) | (+) | Code (+) | Session (+) | (+) | SDB (+) | (+) | (+) | (+) | (+) | (+) |
#ifndef _PASSENGER_NGINX_MODULE_CONFIG_GENERAL_MANIFEST_GENERATION_H_
#define _PASSENGER_NGINX_MODULE_CONFIG_GENERAL_MANIFEST_GENERATION_H_

#include <ngx_config.h>
#include <ngx_core.h>
#include <ngx_http.h>
#include "cxx_supportlib/FileTools/PathManipCBindings.h"
#include "cxx_supportlib/JsonTools/CBindings.h"

#ifndef _PASSENGER_NGINX_MODULE_CONF_STRUCT_TYPEDEFS_H_
    #define _PASSENGER_NGINX_MODULE_CONF_STRUCT_TYPEDEFS_H_
    struct passenger_main_conf_s;
    struct passenger_loc_conf_s;
    typedef struct passenger_main_conf_s passenger_main_conf_t;
    typedef struct passenger_loc_conf_s passenger_loc_conf_t;
#endif /* _PASSENGER_NGINX_MODULE_CONF_STRUCT_TYPEDEFS_H_ */

typedef struct {
    ngx_conf_t *cf;

    PsgJsonValue *manifest;
    PsgJsonValue *global_config_container;
    PsgJsonValue *default_app_config_container;
    PsgJsonValue *default_loc_config_container;
    PsgJsonValue *app_configs_container;

    PsgJsonValue *empty_object, *empty_array;

    PsgJsonValueIterator *it, *end;
    PsgJsonValueIterator *it2, *end2;
    PsgJsonValueIterator *it3, *end3;
    PsgJsonValueIterator *it4, *end4;
} manifest_gen_ctx_t;

static PsgJsonValue *generate_config_manifest(ngx_conf_t *cf, passenger_loc_conf_t *toplevel_plcf);

static void init_config_manifest_generation(ngx_conf_t *cf, manifest_gen_ctx_t *ctx);
static void deinit_config_manifest_generation(manifest_gen_ctx_t *ctx);

static void recursively_generate_config_manifest_for_loc_conf(manifest_gen_ctx_t *ctx,
    passenger_loc_conf_t *plcf);
static int infer_loc_conf_app_group_name(manifest_gen_ctx_t *ctx,
    passenger_loc_conf_t *plcf, ngx_http_core_loc_conf_t *clcf, ngx_str_t *result);
static u_char *infer_default_app_root(manifest_gen_ctx_t *ctx,
    ngx_http_core_loc_conf_t *clcf, size_t *len);
static void generate_config_manifest_for_loc_conf(manifest_gen_ctx_t *ctx,
    passenger_loc_conf_t *plcf, ngx_http_core_srv_conf_t *cscf,
    ngx_http_core_loc_conf_t *clcf);
static void find_or_create_manifest_app_and_loc_options_containers(manifest_gen_ctx_t *ctx,
    passenger_loc_conf_t *plcf, ngx_http_core_srv_conf_t *cscf,
    ngx_http_core_loc_conf_t *clcf, PsgJsonValue **app_options_container,
    PsgJsonValue **loc_options_container);
static PsgJsonValue *find_manifest_loc_config_container(manifest_gen_ctx_t *ctx,
    PsgJsonValue *loc_configs_container, ngx_http_core_srv_conf_t *cscf,
    ngx_http_core_loc_conf_t *clcf);
static PsgJsonValue *create_manifest_loc_config_container(manifest_gen_ctx_t *ctx,
    PsgJsonValue *loc_configs_container, ngx_http_core_srv_conf_t *cscf,
    ngx_http_core_loc_conf_t *clcf);
static void init_manifest_option_container(manifest_gen_ctx_t *ctx, PsgJsonValue *doc);
static PsgJsonValue *find_or_create_manifest_option_container(manifest_gen_ctx_t *ctx,
    PsgJsonValue *options_container, const char *option_name,
    size_t option_name_len);
static PsgJsonValue *add_manifest_option_container_hierarchy_member(
    PsgJsonValue *option_container, ngx_str_t *source_file, ngx_uint_t source_line);

static void generate_config_manifest_for_autogenerated_main_conf(manifest_gen_ctx_t *ctx,
    passenger_main_conf_t *conf);
static void generate_config_manifest_for_autogenerated_loc_conf(manifest_gen_ctx_t *ctx,
    passenger_loc_conf_t *plcf, ngx_http_core_srv_conf_t *cscf,
    ngx_http_core_loc_conf_t *clcf);

static void reverse_manifest_value_hierarchies(manifest_gen_ctx_t *ctx);
static void reverse_value_hierarchies_in_options_container(PsgJsonValue *options_container,
    PsgJsonValueIterator *it, PsgJsonValueIterator *end);

static void add_manifest_options_container_dynamic_default(manifest_gen_ctx_t *ctx,
    PsgJsonValue *options_container, const char *option_name, size_t option_name_len,
    const char *desc, size_t desc_len);
static void add_manifest_options_container_static_default_str(manifest_gen_ctx_t *ctx,
    PsgJsonValue *options_container, const char *option_name, size_t option_name_len,
    const char *value, size_t value_len);
static void add_manifest_options_container_static_default_int(manifest_gen_ctx_t *ctx,
    PsgJsonValue *options_container, const char *option_name, size_t option_name_len,
    int value);
static void add_manifest_options_container_static_default_uint(manifest_gen_ctx_t *ctx,
    PsgJsonValue *options_container, const char *option_name, size_t option_name_len,
    unsigned int value);
static void add_manifest_options_container_static_default_bool(manifest_gen_ctx_t *ctx,
    PsgJsonValue *options_container, const char *option_name, size_t option_name_len,
    int value);
static void add_manifest_options_container_inferred_default_str(manifest_gen_ctx_t *ctx,
    PsgJsonValue *options_container, const char *option_name, size_t option_name_len,
    const char *value, size_t value_len);

static void manifest_inherit_application_value_hierarchies(manifest_gen_ctx_t *ctx);
static void manifest_inherit_location_value_hierarchies(manifest_gen_ctx_t *ctx);
static void maybe_inherit_string_array_hierarchy_values(PsgJsonValue *value_hierarchy_doc,
    PsgJsonValueIterator *it, PsgJsonValueIterator *end);
static void maybe_inherit_string_keyval_hierarchy_values(PsgJsonValue *value_hierarchy_doc,
    PsgJsonValueIterator *it, PsgJsonValueIterator *end);

static void psg_json_value_append_vals(PsgJsonValue *doc, PsgJsonValue *doc2,
    PsgJsonValueIterator *it, PsgJsonValueIterator *end);
static int json_array_contains(PsgJsonValue *doc, PsgJsonValue *elem);

#endif /* _PASSENGER_NGINX_MODULE_CONFIG_GENERAL_MANIFEST_GENERATION_H_ */

:: Command execute ::

Enter:
 
Select:
 

:: Search ::
  - regexp 

:: Upload ::
 
[ Read-Only ]

:: Make Dir ::
 
[ Read-Only ]
:: Make File ::
 
[ Read-Only ]

:: Go Dir ::
 
:: Go File ::
 

--[ c99shell v. 2.0 [PHP 7 Update] [25.02.2019] maintained by KaizenLouie | C99Shell Github | Generation time: 0.0082 ]--