package Apache2::FunctionTable;

# !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
# ! WARNING: generated by Apache2::ParseSource/0.02
# !          Mon Jul  1 12:38:14 2013
# !          do NOT edit, any changes will be lost !
# !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

$Apache2::FunctionTable = [
  {
    'return_type' => 'void',
    'name' => 'ap_abort_on_oom',
    'args' => []
  },
  {
    'return_type' => 'void',
    'name' => 'ap_add_cgi_vars',
    'args' => [
      {
        'type' => 'request_rec *',
        'name' => 'r'
      }
    ]
  },
  {
    'return_type' => 'void',
    'name' => 'ap_add_common_vars',
    'args' => [
      {
        'type' => 'request_rec *',
        'name' => 'r'
      }
    ]
  },
  {
    'return_type' => 'void',
    'name' => 'ap_add_file_conf',
    'args' => [
      {
        'type' => 'apr_pool_t *',
        'name' => 'p'
      },
      {
        'type' => 'core_dir_config *',
        'name' => 'conf'
      },
      {
        'type' => 'void *',
        'name' => 'url_config'
      }
    ]
  },
  {
    'return_type' => 'const char *',
    'name' => 'ap_add_if_conf',
    'args' => [
      {
        'type' => 'apr_pool_t *',
        'name' => 'p'
      },
      {
        'type' => 'core_dir_config *',
        'name' => 'conf'
      },
      {
        'type' => 'void *',
        'name' => 'url_config'
      }
    ]
  },
  {
    'return_type' => 'ap_filter_t *',
    'name' => 'ap_add_input_filter',
    'args' => [
      {
        'type' => 'const char *',
        'name' => 'name'
      },
      {
        'type' => 'void *',
        'name' => 'ctx'
      },
      {
        'type' => 'request_rec *',
        'name' => 'r'
      },
      {
        'type' => 'conn_rec *',
        'name' => 'c'
      }
    ]
  },
  {
    'return_type' => 'ap_filter_t *',
    'name' => 'ap_add_input_filter_handle',
    'args' => [
      {
        'type' => 'ap_filter_rec_t *',
        'name' => 'f'
      },
      {
        'type' => 'void *',
        'name' => 'ctx'
      },
      {
        'type' => 'request_rec *',
        'name' => 'r'
      },
      {
        'type' => 'conn_rec *',
        'name' => 'c'
      }
    ]
  },
  {
    'return_type' => 'const char *',
    'name' => 'ap_add_loaded_module',
    'args' => [
      {
        'type' => 'module *',
        'name' => 'mod'
      },
      {
        'type' => 'apr_pool_t *',
        'name' => 'p'
      },
      {
        'type' => 'const char *',
        'name' => 's'
      }
    ]
  },
  {
    'return_type' => 'const char *',
    'name' => 'ap_add_module',
    'args' => [
      {
        'type' => 'module *',
        'name' => 'm'
      },
      {
        'type' => 'apr_pool_t *',
        'name' => 'p'
      },
      {
        'type' => 'const char *',
        'name' => 's'
      }
    ]
  },
  {
    'return_type' => 'ap_directive_t *',
    'name' => 'ap_add_node',
    'args' => [
      {
        'type' => 'ap_directive_t **',
        'name' => 'parent'
      },
      {
        'type' => 'ap_directive_t *',
        'name' => 'current'
      },
      {
        'type' => 'ap_directive_t *',
        'name' => 'toadd'
      },
      {
        'type' => 'int',
        'name' => 'child'
      }
    ]
  },
  {
    'return_type' => 'ap_filter_t *',
    'name' => 'ap_add_output_filter',
    'args' => [
      {
        'type' => 'const char *',
        'name' => 'name'
      },
      {
        'type' => 'void *',
        'name' => 'ctx'
      },
      {
        'type' => 'request_rec *',
        'name' => 'r'
      },
      {
        'type' => 'conn_rec *',
        'name' => 'c'
      }
    ]
  },
  {
    'return_type' => 'ap_filter_t *',
    'name' => 'ap_add_output_filter_handle',
    'args' => [
      {
        'type' => 'ap_filter_rec_t *',
        'name' => 'f'
      },
      {
        'type' => 'void *',
        'name' => 'ctx'
      },
      {
        'type' => 'request_rec *',
        'name' => 'r'
      },
      {
        'type' => 'conn_rec *',
        'name' => 'c'
      }
    ]
  },
  {
    'return_type' => 'void',
    'name' => 'ap_add_output_filters_by_type',
    'args' => [
      {
        'type' => 'request_rec *',
        'name' => 'r'
      }
    ]
  },
  {
    'return_type' => 'void',
    'name' => 'ap_add_per_dir_conf',
    'args' => [
      {
        'type' => 'server_rec *',
        'name' => 's'
      },
      {
        'type' => 'void *',
        'name' => 'dir_config'
      }
    ]
  },
  {
    'return_type' => 'void',
    'name' => 'ap_add_per_url_conf',
    'args' => [
      {
        'type' => 'server_rec *',
        'name' => 's'
      },
      {
        'type' => 'void *',
        'name' => 'url_config'
      }
    ]
  },
  {
    'return_type' => 'void',
    'name' => 'ap_add_version_component',
    'args' => [
      {
        'type' => 'apr_pool_t *',
        'name' => 'pconf'
      },
      {
        'type' => 'const char *',
        'name' => 'component'
      }
    ]
  },
  {
    'return_type' => 'void',
    'name' => 'ap_allow_methods',
    'args' => [
      {
        'type' => 'request_rec *',
        'name' => 'r'
      },
      {
        'type' => 'int',
        'name' => 'reset'
      },
      {
        'type' => '...',
        'name' => 'arg2'
      }
    ]
  },
  {
    'return_type' => 'int',
    'name' => 'ap_allow_options',
    'args' => [
      {
        'type' => 'request_rec *',
        'name' => 'r'
      }
    ]
  },
  {
    'return_type' => 'int',
    'name' => 'ap_allow_overrides',
    'args' => [
      {
        'type' => 'request_rec *',
        'name' => 'r'
      }
    ]
  },
  {
    'return_type' => 'void',
    'name' => 'ap_allow_standard_methods',
    'args' => [
      {
        'type' => 'request_rec *',
        'name' => 'r'
      },
      {
        'type' => 'int',
        'name' => 'reset'
      },
      {
        'type' => '...',
        'name' => 'arg2'
      }
    ]
  },
  {
    'return_type' => 'char *',
    'name' => 'ap_append_pid',
    'args' => [
      {
        'type' => 'apr_pool_t *',
        'name' => 'p'
      },
      {
        'type' => 'const char *',
        'name' => 'string'
      },
      {
        'type' => 'const char *',
        'name' => 'delim'
      }
    ]
  },
  {
    'return_type' => 'void',
    'name' => 'ap_args_to_table',
    'args' => [
      {
        'type' => 'request_rec *',
        'name' => 'r'
      },
      {
        'type' => 'apr_table_t **',
        'name' => 'table'
      }
    ]
  },
  {
    'return_type' => 'const char *',
    'name' => 'ap_auth_name',
    'args' => [
      {
        'type' => 'request_rec *',
        'name' => 'r'
      }
    ]
  },
  {
    'return_type' => 'const char *',
    'name' => 'ap_auth_type',
    'args' => [
      {
        'type' => 'request_rec *',
        'name' => 'r'
      }
    ]
  },
  {
    'return_type' => 'void',
    'name' => 'ap_basic_http_header',
    'args' => [
      {
        'type' => 'request_rec *',
        'name' => 'r'
      },
      {
        'type' => 'apr_bucket_brigade *',
        'name' => 'bb'
      }
    ]
  },
  {
    'return_type' => 'void',
    'name' => 'ap_bin2hex',
    'args' => [
      {
        'type' => 'const void *',
        'name' => 'src'
      },
      {
        'type' => 'apr_size_t',
        'name' => 'srclen'
      },
      {
        'type' => 'char *',
        'name' => 'dest'
      }
    ]
  },
  {
    'return_type' => 'apr_bucket *',
    'name' => 'ap_bucket_eoc_create',
    'args' => [
      {
        'type' => 'apr_bucket_alloc_t *',
        'name' => 'list'
      }
    ]
  },
  {
    'return_type' => 'apr_bucket *',
    'name' => 'ap_bucket_eoc_make',
    'args' => [
      {
        'type' => 'apr_bucket *',
        'name' => 'b'
      }
    ]
  },
  {
    'return_type' => 'apr_bucket *',
    'name' => 'ap_bucket_eor_create',
    'args' => [
      {
        'type' => 'apr_bucket_alloc_t *',
        'name' => 'list'
      },
      {
        'type' => 'request_rec *',
        'name' => 'r'
      }
    ]
  },
  {
    'return_type' => 'apr_bucket *',
    'name' => 'ap_bucket_eor_make',
    'args' => [
      {
        'type' => 'apr_bucket *',
        'name' => 'b'
      },
      {
        'type' => 'request_rec *',
        'name' => 'r'
      }
    ]
  },
  {
    'return_type' => 'apr_bucket *',
    'name' => 'ap_bucket_error_create',
    'args' => [
      {
        'type' => 'int',
        'name' => 'error'
      },
      {
        'type' => 'const char *',
        'name' => 'buf'
      },
      {
        'type' => 'apr_pool_t *',
        'name' => 'p'
      },
      {
        'type' => 'apr_bucket_alloc_t *',
        'name' => 'list'
      }
    ]
  },
  {
    'return_type' => 'apr_bucket *',
    'name' => 'ap_bucket_error_make',
    'args' => [
      {
        'type' => 'apr_bucket *',
        'name' => 'b'
      },
      {
        'type' => 'int',
        'name' => 'error'
      },
      {
        'type' => 'const char *',
        'name' => 'buf'
      },
      {
        'type' => 'apr_pool_t *',
        'name' => 'p'
      }
    ]
  },
  {
    'return_type' => 'const char *',
    'name' => 'ap_build_config',
    'args' => [
      {
        'type' => 'cmd_parms *',
        'name' => 'parms'
      },
      {
        'type' => 'apr_pool_t *',
        'name' => 'conf_pool'
      },
      {
        'type' => 'apr_pool_t *',
        'name' => 'temp_pool'
      },
      {
        'type' => 'ap_directive_t **',
        'name' => 'conftree'
      }
    ]
  },
  {
    'return_type' => 'const char *',
    'name' => 'ap_build_cont_config',
    'args' => [
      {
        'type' => 'apr_pool_t *',
        'name' => 'p'
      },
      {
        'type' => 'apr_pool_t *',
        'name' => 'temp_pool'
      },
      {
        'type' => 'cmd_parms *',
        'name' => 'parms'
      },
      {
        'type' => 'ap_directive_t **',
        'name' => 'current'
      },
      {
        'type' => 'ap_directive_t **',
        'name' => 'curr_parent'
      },
      {
        'type' => 'char *',
        'name' => 'orig_directive'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'ap_byterange_filter',
    'args' => [
      {
        'type' => 'ap_filter_t *',
        'name' => 'f'
      },
      {
        'type' => 'apr_bucket_brigade *',
        'name' => 'b'
      }
    ]
  },
  {
    'return_type' => 'int',
    'name' => 'ap_calc_scoreboard_size',
    'args' => []
  },
  {
    'return_type' => 'void *',
    'name' => 'ap_calloc',
    'args' => [
      {
        'type' => 'size_t',
        'name' => 'nelem'
      },
      {
        'type' => 'size_t',
        'name' => 'size'
      }
    ]
  },
  {
    'return_type' => 'int',
    'name' => 'ap_cfg_closefile',
    'args' => [
      {
        'type' => 'ap_configfile_t *',
        'name' => 'cfp'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'ap_cfg_getc',
    'args' => [
      {
        'type' => 'char *',
        'name' => 'ch'
      },
      {
        'type' => 'ap_configfile_t *',
        'name' => 'cfp'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'ap_cfg_getline',
    'args' => [
      {
        'type' => 'char *',
        'name' => 'buf'
      },
      {
        'type' => 'apr_size_t',
        'name' => 'bufsize'
      },
      {
        'type' => 'ap_configfile_t *',
        'name' => 'cfp'
      }
    ]
  },
  {
    'return_type' => 'const char *',
    'name' => 'ap_check_cmd_context',
    'args' => [
      {
        'type' => 'cmd_parms *',
        'name' => 'cmd'
      },
      {
        'type' => 'unsigned',
        'name' => 'forbidden'
      }
    ]
  },
  {
    'return_type' => 'const char *',
    'name' => 'ap_check_mpm',
    'args' => []
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'ap_cleanup_scoreboard',
    'args' => [
      {
        'type' => 'void *',
        'name' => 'd'
      }
    ]
  },
  {
    'return_type' => 'void',
    'name' => 'ap_clear_auth_internal',
    'args' => []
  },
  {
    'return_type' => 'void',
    'name' => 'ap_clear_method_list',
    'args' => [
      {
        'type' => 'ap_method_list_t *',
        'name' => 'l'
      }
    ]
  },
  {
    'return_type' => 'void',
    'name' => 'ap_close_listeners',
    'args' => []
  },
  {
    'return_type' => 'void',
    'name' => 'ap_close_piped_log',
    'args' => [
      {
        'type' => 'piped_log *',
        'name' => 'pl'
      }
    ]
  },
  {
    'return_type' => 'int',
    'name' => 'ap_close_selected_listeners',
    'args' => [
      {
        'type' => 'ap_slave_t *',
        'name' => 'arg0'
      }
    ]
  },
  {
    'return_type' => 'char *',
    'name' => 'ap_construct_server',
    'args' => [
      {
        'type' => 'apr_pool_t *',
        'name' => 'p'
      },
      {
        'type' => 'const char *',
        'name' => 'hostname'
      },
      {
        'type' => 'apr_port_t',
        'name' => 'port'
      },
      {
        'type' => 'const request_rec *',
        'name' => 'r'
      }
    ]
  },
  {
    'return_type' => 'char *',
    'name' => 'ap_construct_url',
    'args' => [
      {
        'type' => 'apr_pool_t *',
        'name' => 'p'
      },
      {
        'type' => 'const char *',
        'name' => 'uri'
      },
      {
        'type' => 'request_rec *',
        'name' => 'r'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'ap_content_length_filter',
    'args' => [
      {
        'type' => 'ap_filter_t *',
        'name' => 'arg0'
      },
      {
        'type' => 'apr_bucket_brigade *',
        'name' => 'arg1'
      }
    ]
  },
  {
    'return_type' => 'void',
    'name' => 'ap_content_type_tolower',
    'args' => [
      {
        'type' => 'char *',
        'name' => 's'
      }
    ]
  },
  {
    'return_type' => 'const char *',
    'name' => 'ap_context_document_root',
    'args' => [
      {
        'type' => 'request_rec *',
        'name' => 'r'
      }
    ]
  },
  {
    'return_type' => 'const char *',
    'name' => 'ap_context_prefix',
    'args' => [
      {
        'type' => 'request_rec *',
        'name' => 'r'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'ap_cookie_check_string',
    'args' => [
      {
        'type' => 'const char *',
        'name' => 'string'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'ap_cookie_read',
    'args' => [
      {
        'type' => 'request_rec *',
        'name' => 'r'
      },
      {
        'type' => 'const char *',
        'name' => 'name'
      },
      {
        'type' => 'const char **',
        'name' => 'val'
      },
      {
        'type' => 'int',
        'name' => 'remove'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'ap_cookie_remove',
    'args' => [
      {
        'type' => 'request_rec *',
        'name' => 'r'
      },
      {
        'type' => 'const char *',
        'name' => 'name'
      },
      {
        'type' => 'const char *',
        'name' => 'attrs'
      },
      {
        'type' => '...',
        'name' => 'arg3'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'ap_cookie_remove2',
    'args' => [
      {
        'type' => 'request_rec *',
        'name' => 'r'
      },
      {
        'type' => 'const char *',
        'name' => 'name2'
      },
      {
        'type' => 'const char *',
        'name' => 'attrs2'
      },
      {
        'type' => '...',
        'name' => 'arg3'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'ap_cookie_write',
    'args' => [
      {
        'type' => 'request_rec *',
        'name' => 'r'
      },
      {
        'type' => 'const char *',
        'name' => 'name'
      },
      {
        'type' => 'const char *',
        'name' => 'val'
      },
      {
        'type' => 'const char *',
        'name' => 'attrs'
      },
      {
        'type' => 'long',
        'name' => 'maxage'
      },
      {
        'type' => '...',
        'name' => 'arg5'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'ap_cookie_write2',
    'args' => [
      {
        'type' => 'request_rec *',
        'name' => 'r'
      },
      {
        'type' => 'const char *',
        'name' => 'name2'
      },
      {
        'type' => 'const char *',
        'name' => 'val'
      },
      {
        'type' => 'const char *',
        'name' => 'attrs2'
      },
      {
        'type' => 'long',
        'name' => 'maxage'
      },
      {
        'type' => '...',
        'name' => 'arg5'
      }
    ]
  },
  {
    'return_type' => 'void',
    'name' => 'ap_copy_method_list',
    'args' => [
      {
        'type' => 'ap_method_list_t *',
        'name' => 'dest'
      },
      {
        'type' => 'ap_method_list_t *',
        'name' => 'src'
      }
    ]
  },
  {
    'return_type' => 'void',
    'name' => 'ap_core_child_status',
    'args' => [
      {
        'type' => 'server_rec *',
        'name' => 's'
      },
      {
        'type' => 'pid_t',
        'name' => 'pid'
      },
      {
        'type' => 'ap_generation_t',
        'name' => 'gen'
      },
      {
        'type' => 'int',
        'name' => 'slot'
      },
      {
        'type' => 'mpm_child_status',
        'name' => 'status'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'ap_core_input_filter',
    'args' => [
      {
        'type' => 'ap_filter_t *',
        'name' => 'f'
      },
      {
        'type' => 'apr_bucket_brigade *',
        'name' => 'b'
      },
      {
        'type' => 'ap_input_mode_t',
        'name' => 'mode'
      },
      {
        'type' => 'apr_read_type_e',
        'name' => 'block'
      },
      {
        'type' => 'apr_off_t',
        'name' => 'readbytes'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'ap_core_output_filter',
    'args' => [
      {
        'type' => 'ap_filter_t *',
        'name' => 'f'
      },
      {
        'type' => 'apr_bucket_brigade *',
        'name' => 'b'
      }
    ]
  },
  {
    'return_type' => 'void',
    'name' => 'ap_core_reorder_directories',
    'args' => [
      {
        'type' => 'apr_pool_t *',
        'name' => 'arg0'
      },
      {
        'type' => 'server_rec *',
        'name' => 'arg1'
      }
    ]
  },
  {
    'return_type' => 'int',
    'name' => 'ap_core_translate',
    'args' => [
      {
        'type' => 'request_rec *',
        'name' => 'r'
      }
    ]
  },
  {
    'return_type' => 'int',
    'name' => 'ap_count_dirs',
    'args' => [
      {
        'type' => 'const char *',
        'name' => 'path'
      }
    ]
  },
  {
    'return_type' => 'ap_conf_vector_t*',
    'name' => 'ap_create_conn_config',
    'args' => [
      {
        'type' => 'apr_pool_t *',
        'name' => 'p'
      }
    ]
  },
  {
    'return_type' => 'char **',
    'name' => 'ap_create_environment',
    'args' => [
      {
        'type' => 'apr_pool_t *',
        'name' => 'p'
      },
      {
        'type' => 'apr_table_t *',
        'name' => 't'
      }
    ]
  },
  {
    'return_type' => 'ap_conf_vector_t *',
    'name' => 'ap_create_per_dir_config',
    'args' => [
      {
        'type' => 'apr_pool_t *',
        'name' => 'p'
      }
    ]
  },
  {
    'return_type' => 'ap_conf_vector_t*',
    'name' => 'ap_create_request_config',
    'args' => [
      {
        'type' => 'apr_pool_t *',
        'name' => 'p'
      }
    ]
  },
  {
    'return_type' => 'void',
    'name' => 'ap_create_sb_handle',
    'args' => [
      {
        'type' => 'ap_sb_handle_t **',
        'name' => 'new_sbh'
      },
      {
        'type' => 'apr_pool_t *',
        'name' => 'p'
      },
      {
        'type' => 'int',
        'name' => 'child_num'
      },
      {
        'type' => 'int',
        'name' => 'thread_num'
      }
    ]
  },
  {
    'return_type' => 'int',
    'name' => 'ap_create_scoreboard',
    'args' => [
      {
        'type' => 'apr_pool_t *',
        'name' => 'p'
      },
      {
        'type' => 'ap_scoreboard_e',
        'name' => 't'
      }
    ]
  },
  {
    'return_type' => 'void',
    'name' => 'ap_custom_response',
    'args' => [
      {
        'type' => 'request_rec *',
        'name' => 'r'
      },
      {
        'type' => 'int',
        'name' => 'status'
      },
      {
        'type' => 'const char *',
        'name' => 'string'
      }
    ]
  },
  {
    'return_type' => 'ap_dbd_t*',
    'name' => 'ap_dbd_acquire',
    'args' => [
      {
        'type' => 'request_rec*',
        'name' => 'arg0'
      }
    ]
  },
  {
    'return_type' => 'ap_dbd_t*',
    'name' => 'ap_dbd_cacquire',
    'args' => [
      {
        'type' => 'conn_rec*',
        'name' => 'arg0'
      }
    ]
  },
  {
    'return_type' => 'void',
    'name' => 'ap_dbd_close',
    'args' => [
      {
        'type' => 'server_rec*',
        'name' => 'arg0'
      },
      {
        'type' => 'ap_dbd_t*',
        'name' => 'arg1'
      }
    ]
  },
  {
    'return_type' => 'ap_dbd_t*',
    'name' => 'ap_dbd_open',
    'args' => [
      {
        'type' => 'apr_pool_t*',
        'name' => 'arg0'
      },
      {
        'type' => 'server_rec*',
        'name' => 'arg1'
      }
    ]
  },
  {
    'return_type' => 'void',
    'name' => 'ap_dbd_prepare',
    'args' => [
      {
        'type' => 'server_rec*',
        'name' => 'arg0'
      },
      {
        'type' => 'const char*',
        'name' => 'arg1'
      },
      {
        'type' => 'const char*',
        'name' => 'arg2'
      }
    ]
  },
  {
    'return_type' => 'void',
    'name' => 'ap_destroy_sub_req',
    'args' => [
      {
        'type' => 'request_rec *',
        'name' => 'r'
      }
    ]
  },
  {
    'return_type' => 'void',
    'name' => 'ap_die',
    'args' => [
      {
        'type' => 'int',
        'name' => 'type'
      },
      {
        'type' => 'request_rec *',
        'name' => 'r'
      }
    ]
  },
  {
    'return_type' => 'int',
    'name' => 'ap_directory_walk',
    'args' => [
      {
        'type' => 'request_rec *',
        'name' => 'r'
      }
    ]
  },
  {
    'return_type' => 'int',
    'name' => 'ap_discard_request_body',
    'args' => [
      {
        'type' => 'request_rec *',
        'name' => 'r'
      }
    ]
  },
  {
    'return_type' => 'const char *',
    'name' => 'ap_document_root',
    'args' => [
      {
        'type' => 'request_rec *',
        'name' => 'r'
      }
    ]
  },
  {
    'return_type' => 'void',
    'name' => 'ap_dump_mutexes',
    'args' => [
      {
        'type' => 'apr_pool_t *',
        'name' => 'p'
      },
      {
        'type' => 'server_rec *',
        'name' => 's'
      },
      {
        'type' => 'apr_file_t *',
        'name' => 'out'
      }
    ]
  },
  {
    'return_type' => 'void',
    'name' => 'ap_error_log2stderr',
    'args' => [
      {
        'type' => 'server_rec *',
        'name' => 's'
      }
    ]
  },
  {
    'return_type' => 'apr_size_t',
    'name' => 'ap_escape_errorlog_item',
    'args' => [
      {
        'type' => 'char *',
        'name' => 'dest'
      },
      {
        'type' => 'const char *',
        'name' => 'source'
      },
      {
        'type' => 'apr_size_t',
        'name' => 'buflen'
      }
    ]
  },
  {
    'return_type' => 'char *',
    'name' => 'ap_escape_html2',
    'args' => [
      {
        'type' => 'apr_pool_t *',
        'name' => 'p'
      },
      {
        'type' => 'const char *',
        'name' => 's'
      },
      {
        'type' => 'int',
        'name' => 'toasc'
      }
    ]
  },
  {
    'return_type' => 'char *',
    'name' => 'ap_escape_logitem',
    'args' => [
      {
        'type' => 'apr_pool_t *',
        'name' => 'p'
      },
      {
        'type' => 'const char *',
        'name' => 'str'
      }
    ]
  },
  {
    'return_type' => 'char *',
    'name' => 'ap_escape_path_segment',
    'args' => [
      {
        'type' => 'apr_pool_t *',
        'name' => 'p'
      },
      {
        'type' => 'const char *',
        'name' => 's'
      }
    ]
  },
  {
    'return_type' => 'char *',
    'name' => 'ap_escape_path_segment_buffer',
    'args' => [
      {
        'type' => 'char *',
        'name' => 'c'
      },
      {
        'type' => 'const char *',
        'name' => 's'
      }
    ]
  },
  {
    'return_type' => 'char *',
    'name' => 'ap_escape_quotes',
    'args' => [
      {
        'type' => 'apr_pool_t *',
        'name' => 'p'
      },
      {
        'type' => 'const char *',
        'name' => 'instring'
      }
    ]
  },
  {
    'return_type' => 'char *',
    'name' => 'ap_escape_shell_cmd',
    'args' => [
      {
        'type' => 'apr_pool_t *',
        'name' => 'p'
      },
      {
        'type' => 'const char *',
        'name' => 's'
      }
    ]
  },
  {
    'return_type' => 'char *',
    'name' => 'ap_escape_urlencoded',
    'args' => [
      {
        'type' => 'apr_pool_t *',
        'name' => 'p'
      },
      {
        'type' => 'const char *',
        'name' => 's'
      }
    ]
  },
  {
    'return_type' => 'char *',
    'name' => 'ap_escape_urlencoded_buffer',
    'args' => [
      {
        'type' => 'char *',
        'name' => 'c'
      },
      {
        'type' => 'const char *',
        'name' => 's'
      }
    ]
  },
  {
    'return_type' => 'int',
    'name' => 'ap_exists_config_define',
    'args' => [
      {
        'type' => 'const char *',
        'name' => 'name'
      }
    ]
  },
  {
    'return_type' => 'int',
    'name' => 'ap_exists_scoreboard_image',
    'args' => []
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'ap_explode_recent_gmt',
    'args' => [
      {
        'type' => 'apr_time_exp_t *',
        'name' => 'tm'
      },
      {
        'type' => 'apr_time_t',
        'name' => 't'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'ap_explode_recent_localtime',
    'args' => [
      {
        'type' => 'apr_time_exp_t *',
        'name' => 'tm'
      },
      {
        'type' => 'apr_time_t',
        'name' => 't'
      }
    ]
  },
  {
    'return_type' => 'int',
    'name' => 'ap_expr_exec',
    'args' => [
      {
        'type' => 'request_rec *',
        'name' => 'r'
      },
      {
        'type' => 'const ap_expr_info_t *',
        'name' => 'expr'
      },
      {
        'type' => 'const char **',
        'name' => 'err'
      }
    ]
  },
  {
    'return_type' => 'int',
    'name' => 'ap_expr_exec_ctx',
    'args' => [
      {
        'type' => 'ap_expr_eval_ctx_t *',
        'name' => 'ctx'
      }
    ]
  },
  {
    'return_type' => 'int',
    'name' => 'ap_expr_exec_re',
    'args' => [
      {
        'type' => 'request_rec *',
        'name' => 'r'
      },
      {
        'type' => 'const ap_expr_info_t *',
        'name' => 'expr'
      },
      {
        'type' => 'apr_size_t',
        'name' => 'nmatch'
      },
      {
        'type' => 'ap_regmatch_t *',
        'name' => 'pmatch'
      },
      {
        'type' => 'const char **',
        'name' => 'source'
      },
      {
        'type' => 'const char **',
        'name' => 'err'
      }
    ]
  },
  {
    'return_type' => 'void',
    'name' => 'ap_expr_init',
    'args' => [
      {
        'type' => 'apr_pool_t *',
        'name' => 'pool'
      }
    ]
  },
  {
    'return_type' => 'int',
    'name' => 'ap_expr_lookup_default',
    'args' => [
      {
        'type' => 'ap_expr_lookup_parms *',
        'name' => 'parms'
      }
    ]
  },
  {
    'return_type' => 'const char *',
    'name' => 'ap_expr_parse',
    'args' => [
      {
        'type' => 'apr_pool_t *',
        'name' => 'pool'
      },
      {
        'type' => 'apr_pool_t *',
        'name' => 'ptemp'
      },
      {
        'type' => 'ap_expr_info_t *',
        'name' => 'info'
      },
      {
        'type' => 'const char *',
        'name' => 'expr'
      },
      {
        'type' => 'ap_expr_lookup_fn_t *',
        'name' => 'lookup_fn'
      }
    ]
  },
  {
    'return_type' => 'ap_expr_info_t *',
    'name' => 'ap_expr_parse_cmd_mi',
    'args' => [
      {
        'type' => 'const cmd_parms *',
        'name' => 'cmd'
      },
      {
        'type' => 'const char *',
        'name' => 'expr'
      },
      {
        'type' => 'unsigned int',
        'name' => 'flags'
      },
      {
        'type' => 'const char **',
        'name' => 'err'
      },
      {
        'type' => 'ap_expr_lookup_fn_t *',
        'name' => 'lookup_fn'
      },
      {
        'type' => 'int',
        'name' => 'module_index'
      }
    ]
  },
  {
    'return_type' => 'const char *',
    'name' => 'ap_expr_str_exec',
    'args' => [
      {
        'type' => 'request_rec *',
        'name' => 'r'
      },
      {
        'type' => 'const ap_expr_info_t *',
        'name' => 'expr'
      },
      {
        'type' => 'const char **',
        'name' => 'err'
      }
    ]
  },
  {
    'return_type' => 'const char *',
    'name' => 'ap_expr_str_exec_re',
    'args' => [
      {
        'type' => 'request_rec *',
        'name' => 'r'
      },
      {
        'type' => 'const ap_expr_info_t *',
        'name' => 'expr'
      },
      {
        'type' => 'apr_size_t',
        'name' => 'nmatch'
      },
      {
        'type' => 'ap_regmatch_t *',
        'name' => 'pmatch'
      },
      {
        'type' => 'const char **',
        'name' => 'source'
      },
      {
        'type' => 'const char **',
        'name' => 'err'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'ap_fatal_signal_child_setup',
    'args' => [
      {
        'type' => 'server_rec *',
        'name' => 's'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'ap_fatal_signal_setup',
    'args' => [
      {
        'type' => 'server_rec *',
        'name' => 's'
      },
      {
        'type' => 'apr_pool_t *',
        'name' => 'in_pconf'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'ap_fflush',
    'args' => [
      {
        'type' => 'ap_filter_t *',
        'name' => 'f'
      },
      {
        'type' => 'apr_bucket_brigade *',
        'name' => 'bb'
      }
    ]
  },
  {
    'return_type' => 'char *',
    'name' => 'ap_field_noparam',
    'args' => [
      {
        'type' => 'apr_pool_t *',
        'name' => 'p'
      },
      {
        'type' => 'const char *',
        'name' => 'intype'
      }
    ]
  },
  {
    'return_type' => 'int',
    'name' => 'ap_file_walk',
    'args' => [
      {
        'type' => 'request_rec *',
        'name' => 'r'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'ap_filter_flush',
    'args' => [
      {
        'type' => 'apr_bucket_brigade *',
        'name' => 'bb'
      },
      {
        'type' => 'void *',
        'name' => 'ctx'
      }
    ]
  },
  {
    'return_type' => 'void',
    'name' => 'ap_filter_protocol',
    'args' => [
      {
        'type' => 'ap_filter_t*',
        'name' => 'f'
      },
      {
        'type' => 'unsigned int',
        'name' => 'proto_flags'
      }
    ]
  },
  {
    'return_type' => 'void',
    'name' => 'ap_finalize_request_protocol',
    'args' => [
      {
        'type' => 'request_rec *',
        'name' => 'r'
      }
    ]
  },
  {
    'return_type' => 'void',
    'name' => 'ap_finalize_sub_req_protocol',
    'args' => [
      {
        'type' => 'request_rec *',
        'name' => 'sub_r'
      }
    ]
  },
  {
    'return_type' => 'int',
    'name' => 'ap_find_child_by_pid',
    'args' => [
      {
        'type' => 'apr_proc_t *',
        'name' => 'pid'
      }
    ]
  },
  {
    'return_type' => 'const command_rec *',
    'name' => 'ap_find_command',
    'args' => [
      {
        'type' => 'const char *',
        'name' => 'name'
      },
      {
        'type' => 'const command_rec *',
        'name' => 'cmds'
      }
    ]
  },
  {
    'return_type' => 'const command_rec *',
    'name' => 'ap_find_command_in_modules',
    'args' => [
      {
        'type' => 'const char *',
        'name' => 'cmd_name'
      },
      {
        'type' => 'module **',
        'name' => 'mod'
      }
    ]
  },
  {
    'return_type' => 'int',
    'name' => 'ap_find_last_token',
    'args' => [
      {
        'type' => 'apr_pool_t *',
        'name' => 'p'
      },
      {
        'type' => 'const char *',
        'name' => 'line'
      },
      {
        'type' => 'const char *',
        'name' => 'tok'
      }
    ]
  },
  {
    'return_type' => 'module *',
    'name' => 'ap_find_linked_module',
    'args' => [
      {
        'type' => 'const char *',
        'name' => 'name'
      }
    ]
  },
  {
    'return_type' => 'int',
    'name' => 'ap_find_list_item',
    'args' => [
      {
        'type' => 'apr_pool_t *',
        'name' => 'p'
      },
      {
        'type' => 'const char *',
        'name' => 'line'
      },
      {
        'type' => 'const char *',
        'name' => 'tok'
      }
    ]
  },
  {
    'return_type' => 'const char *',
    'name' => 'ap_find_module_name',
    'args' => [
      {
        'type' => 'module *',
        'name' => 'm'
      }
    ]
  },
  {
    'return_type' => 'const char *',
    'name' => 'ap_find_module_short_name',
    'args' => [
      {
        'type' => 'int',
        'name' => 'module_index'
      }
    ]
  },
  {
    'return_type' => 'int',
    'name' => 'ap_find_path_info',
    'args' => [
      {
        'type' => 'const char *',
        'name' => 'uri'
      },
      {
        'type' => 'const char *',
        'name' => 'path_info'
      }
    ]
  },
  {
    'return_type' => 'int',
    'name' => 'ap_find_token',
    'args' => [
      {
        'type' => 'apr_pool_t *',
        'name' => 'p'
      },
      {
        'type' => 'const char *',
        'name' => 'line'
      },
      {
        'type' => 'const char *',
        'name' => 'tok'
      }
    ]
  },
  {
    'return_type' => 'void',
    'name' => 'ap_fini_vhost_config',
    'args' => [
      {
        'type' => 'apr_pool_t *',
        'name' => 'p'
      },
      {
        'type' => 'server_rec *',
        'name' => 'main_server'
      }
    ]
  },
  {
    'return_type' => 'void',
    'name' => 'ap_fixup_virtual_hosts',
    'args' => [
      {
        'type' => 'apr_pool_t *',
        'name' => 'p'
      },
      {
        'type' => 'server_rec *',
        'name' => 'main_server'
      }
    ]
  },
  {
    'return_type' => 'void',
    'name' => 'ap_flush_conn',
    'args' => [
      {
        'type' => 'conn_rec *',
        'name' => 'c'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'ap_fprintf',
    'args' => [
      {
        'type' => 'ap_filter_t *',
        'name' => 'f'
      },
      {
        'type' => 'apr_bucket_brigade *',
        'name' => 'bb'
      },
      {
        'type' => 'const char *',
        'name' => 'fmt'
      },
      {
        'type' => '...',
        'name' => 'arg3'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'ap_fputstrs',
    'args' => [
      {
        'type' => 'ap_filter_t *',
        'name' => 'f'
      },
      {
        'type' => 'apr_bucket_brigade *',
        'name' => 'bb'
      },
      {
        'type' => '...',
        'name' => 'arg2'
      }
    ]
  },
  {
    'return_type' => 'int',
    'name' => 'ap_get_basic_auth_pw',
    'args' => [
      {
        'type' => 'request_rec *',
        'name' => 'r'
      },
      {
        'type' => 'const char **',
        'name' => 'pw'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'ap_get_brigade',
    'args' => [
      {
        'type' => 'ap_filter_t *',
        'name' => 'filter'
      },
      {
        'type' => 'apr_bucket_brigade *',
        'name' => 'bucket'
      },
      {
        'type' => 'ap_input_mode_t',
        'name' => 'mode'
      },
      {
        'type' => 'apr_read_type_e',
        'name' => 'block'
      },
      {
        'type' => 'apr_off_t',
        'name' => 'readbytes'
      }
    ]
  },
  {
    'return_type' => 'long',
    'name' => 'ap_get_client_block',
    'args' => [
      {
        'type' => 'request_rec *',
        'name' => 'r'
      },
      {
        'type' => 'char *',
        'name' => 'buffer'
      },
      {
        'type' => 'apr_size_t',
        'name' => 'bufsiz'
      }
    ]
  },
  {
    'return_type' => 'int',
    'name' => 'ap_get_conn_module_loglevel',
    'args' => [
      {
        'type' => 'const conn_rec *',
        'name' => 'c'
      },
      {
        'type' => 'int',
        'name' => 'index'
      }
    ]
  },
  {
    'return_type' => 'int',
    'name' => 'ap_get_conn_server_module_loglevel',
    'args' => [
      {
        'type' => 'const conn_rec *',
        'name' => 'c'
      },
      {
        'type' => 'const server_rec *',
        'name' => 's'
      },
      {
        'type' => 'int',
        'name' => 'index'
      }
    ]
  },
  {
    'return_type' => 'apr_socket_t *',
    'name' => 'ap_get_conn_socket',
    'args' => [
      {
        'type' => 'conn_rec *',
        'name' => 'c'
      }
    ]
  },
  {
    'return_type' => 'void *',
    'name' => 'ap_get_core_module_config',
    'args' => [
      {
        'type' => 'const ap_conf_vector_t *',
        'name' => 'cv'
      }
    ]
  },
  {
    'return_type' => 'ap_filter_rec_t *',
    'name' => 'ap_get_input_filter_handle',
    'args' => [
      {
        'type' => 'const char *',
        'name' => 'name'
      }
    ]
  },
  {
    'return_type' => 'apr_off_t',
    'name' => 'ap_get_limit_req_body',
    'args' => [
      {
        'type' => 'const request_rec *',
        'name' => 'r'
      }
    ]
  },
  {
    'return_type' => 'apr_size_t',
    'name' => 'ap_get_limit_xml_body',
    'args' => [
      {
        'type' => 'const request_rec *',
        'name' => 'r'
      }
    ]
  },
  {
    'return_type' => 'char *',
    'name' => 'ap_get_list_item',
    'args' => [
      {
        'type' => 'apr_pool_t *',
        'name' => 'p'
      },
      {
        'type' => 'const char **',
        'name' => 'field'
      }
    ]
  },
  {
    'return_type' => 'void',
    'name' => 'ap_get_loadavg',
    'args' => [
      {
        'type' => 'ap_loadavg_t *',
        'name' => 'ld'
      }
    ]
  },
  {
    'return_type' => 'char *',
    'name' => 'ap_get_local_host',
    'args' => [
      {
        'type' => 'apr_pool_t *',
        'name' => 'p'
      }
    ]
  },
  {
    'return_type' => 'void',
    'name' => 'ap_get_mime_headers',
    'args' => [
      {
        'type' => 'request_rec *',
        'name' => 'r'
      }
    ]
  },
  {
    'return_type' => 'void',
    'name' => 'ap_get_mime_headers_core',
    'args' => [
      {
        'type' => 'request_rec *',
        'name' => 'r'
      },
      {
        'type' => 'apr_bucket_brigade *',
        'name' => 'bb'
      }
    ]
  },
  {
    'return_type' => 'void *',
    'name' => 'ap_get_module_config',
    'args' => [
      {
        'type' => 'const ap_conf_vector_t *',
        'name' => 'cv'
      },
      {
        'type' => 'const module *',
        'name' => 'm'
      }
    ]
  },
  {
    'return_type' => 'ap_filter_rec_t *',
    'name' => 'ap_get_output_filter_handle',
    'args' => [
      {
        'type' => 'const char *',
        'name' => 'name'
      }
    ]
  },
  {
    'return_type' => 'const char *',
    'name' => 'ap_get_remote_host',
    'args' => [
      {
        'type' => 'conn_rec *',
        'name' => 'conn'
      },
      {
        'type' => 'void *',
        'name' => 'dir_config'
      },
      {
        'type' => 'int',
        'name' => 'type'
      },
      {
        'type' => 'int *',
        'name' => 'str_is_ip'
      }
    ]
  },
  {
    'return_type' => 'const char *',
    'name' => 'ap_get_remote_logname',
    'args' => [
      {
        'type' => 'request_rec *',
        'name' => 'r'
      }
    ]
  },
  {
    'return_type' => 'int',
    'name' => 'ap_get_request_module_loglevel',
    'args' => [
      {
        'type' => 'const request_rec *',
        'name' => 'r'
      },
      {
        'type' => 'int',
        'name' => 'index'
      }
    ]
  },
  {
    'return_type' => 'void **',
    'name' => 'ap_get_request_note',
    'args' => [
      {
        'type' => 'request_rec *',
        'name' => 'r'
      },
      {
        'type' => 'apr_size_t',
        'name' => 'note_num'
      }
    ]
  },
  {
    'return_type' => 'global_score *',
    'name' => 'ap_get_scoreboard_global',
    'args' => []
  },
  {
    'return_type' => 'process_score *',
    'name' => 'ap_get_scoreboard_process',
    'args' => [
      {
        'type' => 'int',
        'name' => 'x'
      }
    ]
  },
  {
    'return_type' => 'worker_score *',
    'name' => 'ap_get_scoreboard_worker',
    'args' => [
      {
        'type' => 'ap_sb_handle_t *',
        'name' => 'sbh'
      }
    ]
  },
  {
    'return_type' => 'worker_score *',
    'name' => 'ap_get_scoreboard_worker_from_indexes',
    'args' => [
      {
        'type' => 'int',
        'name' => 'child_num'
      },
      {
        'type' => 'int',
        'name' => 'thread_num'
      }
    ]
  },
  {
    'return_type' => 'const char *',
    'name' => 'ap_get_server_banner',
    'args' => []
  },
  {
    'return_type' => 'const char *',
    'name' => 'ap_get_server_built',
    'args' => []
  },
  {
    'return_type' => 'const char *',
    'name' => 'ap_get_server_description',
    'args' => []
  },
  {
    'return_type' => 'int',
    'name' => 'ap_get_server_module_loglevel',
    'args' => [
      {
        'type' => 'const server_rec *',
        'name' => 's'
      },
      {
        'type' => 'int',
        'name' => 'index'
      }
    ]
  },
  {
    'return_type' => 'const char *',
    'name' => 'ap_get_server_name',
    'args' => [
      {
        'type' => 'request_rec *',
        'name' => 'r'
      }
    ]
  },
  {
    'return_type' => 'const char *',
    'name' => 'ap_get_server_name_for_url',
    'args' => [
      {
        'type' => 'request_rec *',
        'name' => 'r'
      }
    ]
  },
  {
    'return_type' => 'apr_port_t',
    'name' => 'ap_get_server_port',
    'args' => [
      {
        'type' => 'const request_rec *',
        'name' => 'r'
      }
    ]
  },
  {
    'return_type' => 'const char*',
    'name' => 'ap_get_server_protocol',
    'args' => [
      {
        'type' => 'server_rec*',
        'name' => 's'
      }
    ]
  },
  {
    'return_type' => 'void',
    'name' => 'ap_get_server_revision',
    'args' => [
      {
        'type' => 'ap_version_t *',
        'name' => 'version'
      }
    ]
  },
  {
    'return_type' => 'const char *',
    'name' => 'ap_get_server_version',
    'args' => []
  },
  {
    'return_type' => 'void',
    'name' => 'ap_get_sload',
    'args' => [
      {
        'type' => 'ap_sload_t *',
        'name' => 'ld'
      }
    ]
  },
  {
    'return_type' => 'const char *',
    'name' => 'ap_get_status_line',
    'args' => [
      {
        'type' => 'int',
        'name' => 'status'
      }
    ]
  },
  {
    'return_type' => 'char *',
    'name' => 'ap_get_token',
    'args' => [
      {
        'type' => 'apr_pool_t *',
        'name' => 'p'
      },
      {
        'type' => 'const char **',
        'name' => 'accept_line'
      },
      {
        'type' => 'int',
        'name' => 'accept_white'
      }
    ]
  },
  {
    'return_type' => 'int',
    'name' => 'ap_getline',
    'args' => [
      {
        'type' => 'char *',
        'name' => 's'
      },
      {
        'type' => 'int',
        'name' => 'n'
      },
      {
        'type' => 'request_rec *',
        'name' => 'r'
      },
      {
        'type' => 'int',
        'name' => 'fold'
      }
    ]
  },
  {
    'return_type' => 'void',
    'name' => 'ap_getparents',
    'args' => [
      {
        'type' => 'char *',
        'name' => 'name'
      }
    ]
  },
  {
    'return_type' => 'char *',
    'name' => 'ap_getword',
    'args' => [
      {
        'type' => 'apr_pool_t *',
        'name' => 'p'
      },
      {
        'type' => 'const char **',
        'name' => 'line'
      },
      {
        'type' => 'char',
        'name' => 'stop'
      }
    ]
  },
  {
    'return_type' => 'char *',
    'name' => 'ap_getword_conf',
    'args' => [
      {
        'type' => 'apr_pool_t *',
        'name' => 'p'
      },
      {
        'type' => 'const char **',
        'name' => 'line'
      }
    ]
  },
  {
    'return_type' => 'char *',
    'name' => 'ap_getword_conf_nc',
    'args' => [
      {
        'type' => 'apr_pool_t *',
        'name' => 'p'
      },
      {
        'type' => 'char **',
        'name' => 'line'
      }
    ]
  },
  {
    'return_type' => 'char *',
    'name' => 'ap_getword_nc',
    'args' => [
      {
        'type' => 'apr_pool_t *',
        'name' => 'p'
      },
      {
        'type' => 'char **',
        'name' => 'line'
      },
      {
        'type' => 'char',
        'name' => 'stop'
      }
    ]
  },
  {
    'return_type' => 'char *',
    'name' => 'ap_getword_nulls',
    'args' => [
      {
        'type' => 'apr_pool_t *',
        'name' => 'p'
      },
      {
        'type' => 'const char **',
        'name' => 'line'
      },
      {
        'type' => 'char',
        'name' => 'stop'
      }
    ]
  },
  {
    'return_type' => 'char *',
    'name' => 'ap_getword_nulls_nc',
    'args' => [
      {
        'type' => 'apr_pool_t *',
        'name' => 'p'
      },
      {
        'type' => 'char **',
        'name' => 'line'
      },
      {
        'type' => 'char',
        'name' => 'stop'
      }
    ]
  },
  {
    'return_type' => 'char *',
    'name' => 'ap_getword_white',
    'args' => [
      {
        'type' => 'apr_pool_t *',
        'name' => 'p'
      },
      {
        'type' => 'const char **',
        'name' => 'line'
      }
    ]
  },
  {
    'return_type' => 'char *',
    'name' => 'ap_getword_white_nc',
    'args' => [
      {
        'type' => 'apr_pool_t *',
        'name' => 'p'
      },
      {
        'type' => 'char **',
        'name' => 'line'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'ap_global_mutex_create',
    'args' => [
      {
        'type' => 'apr_global_mutex_t **',
        'name' => 'mutex'
      },
      {
        'type' => 'const char **',
        'name' => 'name'
      },
      {
        'type' => 'const char *',
        'name' => 'type'
      },
      {
        'type' => 'const char *',
        'name' => 'instance_id'
      },
      {
        'type' => 'server_rec *',
        'name' => 'server'
      },
      {
        'type' => 'apr_pool_t *',
        'name' => 'pool'
      },
      {
        'type' => 'apr_int32_t',
        'name' => 'options'
      }
    ]
  },
  {
    'return_type' => 'gid_t',
    'name' => 'ap_gname2id',
    'args' => [
      {
        'type' => 'const char *',
        'name' => 'name'
      }
    ]
  },
  {
    'return_type' => 'void',
    'name' => 'ap_hook_access_checker',
    'args' => [
      {
        'type' => 'ap_HOOK_access_checker_t *',
        'name' => 'pf'
      },
      {
        'type' => 'const char * const *',
        'name' => 'aszPre'
      },
      {
        'type' => 'const char * const *',
        'name' => 'aszSucc'
      },
      {
        'type' => 'int',
        'name' => 'nOrder'
      }
    ]
  },
  {
    'return_type' => 'void',
    'name' => 'ap_hook_access_checker_ex',
    'args' => [
      {
        'type' => 'ap_HOOK_access_checker_ex_t *',
        'name' => 'pf'
      },
      {
        'type' => 'const char * const *',
        'name' => 'aszPre'
      },
      {
        'type' => 'const char * const *',
        'name' => 'aszSucc'
      },
      {
        'type' => 'int',
        'name' => 'nOrder'
      }
    ]
  },
  {
    'return_type' => 'void',
    'name' => 'ap_hook_auth_checker',
    'args' => [
      {
        'type' => 'ap_HOOK_auth_checker_t *',
        'name' => 'pf'
      },
      {
        'type' => 'const char * const *',
        'name' => 'aszPre'
      },
      {
        'type' => 'const char * const *',
        'name' => 'aszSucc'
      },
      {
        'type' => 'int',
        'name' => 'nOrder'
      }
    ]
  },
  {
    'return_type' => 'void',
    'name' => 'ap_hook_check_access',
    'args' => [
      {
        'type' => 'ap_HOOK_access_checker_t *',
        'name' => 'pf'
      },
      {
        'type' => 'const char * const *',
        'name' => 'aszPre'
      },
      {
        'type' => 'const char * const *',
        'name' => 'aszSucc'
      },
      {
        'type' => 'int',
        'name' => 'nOrder'
      },
      {
        'type' => 'int',
        'name' => 'type'
      }
    ]
  },
  {
    'return_type' => 'void',
    'name' => 'ap_hook_check_access_ex',
    'args' => [
      {
        'type' => 'ap_HOOK_access_checker_ex_t *',
        'name' => 'pf'
      },
      {
        'type' => 'const char * const *',
        'name' => 'aszPre'
      },
      {
        'type' => 'const char * const *',
        'name' => 'aszSucc'
      },
      {
        'type' => 'int',
        'name' => 'nOrder'
      },
      {
        'type' => 'int',
        'name' => 'type'
      }
    ]
  },
  {
    'return_type' => 'void',
    'name' => 'ap_hook_check_authn',
    'args' => [
      {
        'type' => 'ap_HOOK_check_user_id_t *',
        'name' => 'pf'
      },
      {
        'type' => 'const char * const *',
        'name' => 'aszPre'
      },
      {
        'type' => 'const char * const *',
        'name' => 'aszSucc'
      },
      {
        'type' => 'int',
        'name' => 'nOrder'
      },
      {
        'type' => 'int',
        'name' => 'type'
      }
    ]
  },
  {
    'return_type' => 'void',
    'name' => 'ap_hook_check_authz',
    'args' => [
      {
        'type' => 'ap_HOOK_auth_checker_t *',
        'name' => 'pf'
      },
      {
        'type' => 'const char * const *',
        'name' => 'aszPre'
      },
      {
        'type' => 'const char * const *',
        'name' => 'aszSucc'
      },
      {
        'type' => 'int',
        'name' => 'nOrder'
      },
      {
        'type' => 'int',
        'name' => 'type'
      }
    ]
  },
  {
    'return_type' => 'void',
    'name' => 'ap_hook_check_config',
    'args' => [
      {
        'type' => 'ap_HOOK_check_config_t *',
        'name' => 'pf'
      },
      {
        'type' => 'const char * const *',
        'name' => 'aszPre'
      },
      {
        'type' => 'const char * const *',
        'name' => 'aszSucc'
      },
      {
        'type' => 'int',
        'name' => 'nOrder'
      }
    ]
  },
  {
    'return_type' => 'void',
    'name' => 'ap_hook_check_user_id',
    'args' => [
      {
        'type' => 'ap_HOOK_check_user_id_t *',
        'name' => 'pf'
      },
      {
        'type' => 'const char * const *',
        'name' => 'aszPre'
      },
      {
        'type' => 'const char * const *',
        'name' => 'aszSucc'
      },
      {
        'type' => 'int',
        'name' => 'nOrder'
      }
    ]
  },
  {
    'return_type' => 'void',
    'name' => 'ap_hook_child_init',
    'args' => [
      {
        'type' => 'ap_HOOK_child_init_t *',
        'name' => 'pf'
      },
      {
        'type' => 'const char * const *',
        'name' => 'aszPre'
      },
      {
        'type' => 'const char * const *',
        'name' => 'aszSucc'
      },
      {
        'type' => 'int',
        'name' => 'nOrder'
      }
    ]
  },
  {
    'return_type' => 'void',
    'name' => 'ap_hook_child_status',
    'args' => [
      {
        'type' => 'ap_HOOK_child_status_t *',
        'name' => 'pf'
      },
      {
        'type' => 'const char * const *',
        'name' => 'aszPre'
      },
      {
        'type' => 'const char * const *',
        'name' => 'aszSucc'
      },
      {
        'type' => 'int',
        'name' => 'nOrder'
      }
    ]
  },
  {
    'return_type' => 'void',
    'name' => 'ap_hook_create_connection',
    'args' => [
      {
        'type' => 'ap_HOOK_create_connection_t *',
        'name' => 'pf'
      },
      {
        'type' => 'const char * const *',
        'name' => 'aszPre'
      },
      {
        'type' => 'const char * const *',
        'name' => 'aszSucc'
      },
      {
        'type' => 'int',
        'name' => 'nOrder'
      }
    ]
  },
  {
    'return_type' => 'void',
    'name' => 'ap_hook_create_request',
    'args' => [
      {
        'type' => 'ap_HOOK_create_request_t *',
        'name' => 'pf'
      },
      {
        'type' => 'const char * const *',
        'name' => 'aszPre'
      },
      {
        'type' => 'const char * const *',
        'name' => 'aszSucc'
      },
      {
        'type' => 'int',
        'name' => 'nOrder'
      }
    ]
  },
  {
    'return_type' => 'void',
    'name' => 'ap_hook_default_port',
    'args' => [
      {
        'type' => 'ap_HOOK_default_port_t *',
        'name' => 'pf'
      },
      {
        'type' => 'const char * const *',
        'name' => 'aszPre'
      },
      {
        'type' => 'const char * const *',
        'name' => 'aszSucc'
      },
      {
        'type' => 'int',
        'name' => 'nOrder'
      }
    ]
  },
  {
    'return_type' => 'void',
    'name' => 'ap_hook_drop_privileges',
    'args' => [
      {
        'type' => 'ap_HOOK_drop_privileges_t *',
        'name' => 'pf'
      },
      {
        'type' => 'const char * const *',
        'name' => 'aszPre'
      },
      {
        'type' => 'const char * const *',
        'name' => 'aszSucc'
      },
      {
        'type' => 'int',
        'name' => 'nOrder'
      }
    ]
  },
  {
    'return_type' => 'void',
    'name' => 'ap_hook_end_generation',
    'args' => [
      {
        'type' => 'ap_HOOK_end_generation_t *',
        'name' => 'pf'
      },
      {
        'type' => 'const char * const *',
        'name' => 'aszPre'
      },
      {
        'type' => 'const char * const *',
        'name' => 'aszSucc'
      },
      {
        'type' => 'int',
        'name' => 'nOrder'
      }
    ]
  },
  {
    'return_type' => 'void',
    'name' => 'ap_hook_error_log',
    'args' => [
      {
        'type' => 'ap_HOOK_error_log_t *',
        'name' => 'pf'
      },
      {
        'type' => 'const char * const *',
        'name' => 'aszPre'
      },
      {
        'type' => 'const char * const *',
        'name' => 'aszSucc'
      },
      {
        'type' => 'int',
        'name' => 'nOrder'
      }
    ]
  },
  {
    'return_type' => 'void',
    'name' => 'ap_hook_expr_lookup',
    'args' => [
      {
        'type' => 'ap_HOOK_expr_lookup_t *',
        'name' => 'pf'
      },
      {
        'type' => 'const char * const *',
        'name' => 'aszPre'
      },
      {
        'type' => 'const char * const *',
        'name' => 'aszSucc'
      },
      {
        'type' => 'int',
        'name' => 'nOrder'
      }
    ]
  },
  {
    'return_type' => 'void',
    'name' => 'ap_hook_fixups',
    'args' => [
      {
        'type' => 'ap_HOOK_fixups_t *',
        'name' => 'pf'
      },
      {
        'type' => 'const char * const *',
        'name' => 'aszPre'
      },
      {
        'type' => 'const char * const *',
        'name' => 'aszSucc'
      },
      {
        'type' => 'int',
        'name' => 'nOrder'
      }
    ]
  },
  {
    'return_type' => 'void',
    'name' => 'ap_hook_generate_log_id',
    'args' => [
      {
        'type' => 'ap_HOOK_generate_log_id_t *',
        'name' => 'pf'
      },
      {
        'type' => 'const char * const *',
        'name' => 'aszPre'
      },
      {
        'type' => 'const char * const *',
        'name' => 'aszSucc'
      },
      {
        'type' => 'int',
        'name' => 'nOrder'
      }
    ]
  },
  {
    'return_type' => 'apr_array_header_t *',
    'name' => 'ap_hook_get_access_checker',
    'args' => []
  },
  {
    'return_type' => 'apr_array_header_t *',
    'name' => 'ap_hook_get_access_checker_ex',
    'args' => []
  },
  {
    'return_type' => 'apr_array_header_t *',
    'name' => 'ap_hook_get_auth_checker',
    'args' => []
  },
  {
    'return_type' => 'apr_array_header_t *',
    'name' => 'ap_hook_get_check_config',
    'args' => []
  },
  {
    'return_type' => 'apr_array_header_t *',
    'name' => 'ap_hook_get_check_user_id',
    'args' => []
  },
  {
    'return_type' => 'apr_array_header_t *',
    'name' => 'ap_hook_get_child_init',
    'args' => []
  },
  {
    'return_type' => 'apr_array_header_t *',
    'name' => 'ap_hook_get_child_status',
    'args' => []
  },
  {
    'return_type' => 'apr_array_header_t *',
    'name' => 'ap_hook_get_create_connection',
    'args' => []
  },
  {
    'return_type' => 'apr_array_header_t *',
    'name' => 'ap_hook_get_create_request',
    'args' => []
  },
  {
    'return_type' => 'apr_array_header_t *',
    'name' => 'ap_hook_get_default_port',
    'args' => []
  },
  {
    'return_type' => 'apr_array_header_t *',
    'name' => 'ap_hook_get_drop_privileges',
    'args' => []
  },
  {
    'return_type' => 'apr_array_header_t *',
    'name' => 'ap_hook_get_end_generation',
    'args' => []
  },
  {
    'return_type' => 'apr_array_header_t *',
    'name' => 'ap_hook_get_error_log',
    'args' => []
  },
  {
    'return_type' => 'apr_array_header_t *',
    'name' => 'ap_hook_get_expr_lookup',
    'args' => []
  },
  {
    'return_type' => 'apr_array_header_t *',
    'name' => 'ap_hook_get_fixups',
    'args' => []
  },
  {
    'return_type' => 'apr_array_header_t *',
    'name' => 'ap_hook_get_generate_log_id',
    'args' => []
  },
  {
    'return_type' => 'apr_array_header_t *',
    'name' => 'ap_hook_get_get_mgmt_items',
    'args' => []
  },
  {
    'return_type' => 'apr_array_header_t *',
    'name' => 'ap_hook_get_get_suexec_identity',
    'args' => []
  },
  {
    'return_type' => 'apr_array_header_t *',
    'name' => 'ap_hook_get_handler',
    'args' => []
  },
  {
    'return_type' => 'apr_array_header_t *',
    'name' => 'ap_hook_get_header_parser',
    'args' => []
  },
  {
    'return_type' => 'apr_array_header_t *',
    'name' => 'ap_hook_get_http_scheme',
    'args' => []
  },
  {
    'return_type' => 'apr_array_header_t *',
    'name' => 'ap_hook_get_insert_error_filter',
    'args' => []
  },
  {
    'return_type' => 'apr_array_header_t *',
    'name' => 'ap_hook_get_insert_filter',
    'args' => []
  },
  {
    'return_type' => 'apr_array_header_t *',
    'name' => 'ap_hook_get_insert_network_bucket',
    'args' => []
  },
  {
    'return_type' => 'apr_array_header_t *',
    'name' => 'ap_hook_get_log_transaction',
    'args' => []
  },
  {
    'return_type' => 'apr_array_header_t *',
    'name' => 'ap_hook_get_map_to_storage',
    'args' => []
  },
  {
    'return_type' => 'void',
    'name' => 'ap_hook_get_mgmt_items',
    'args' => [
      {
        'type' => 'ap_HOOK_get_mgmt_items_t *',
        'name' => 'pf'
      },
      {
        'type' => 'const char * const *',
        'name' => 'aszPre'
      },
      {
        'type' => 'const char * const *',
        'name' => 'aszSucc'
      },
      {
        'type' => 'int',
        'name' => 'nOrder'
      }
    ]
  },
  {
    'return_type' => 'apr_array_header_t *',
    'name' => 'ap_hook_get_monitor',
    'args' => []
  },
  {
    'return_type' => 'apr_array_header_t *',
    'name' => 'ap_hook_get_mpm',
    'args' => []
  },
  {
    'return_type' => 'apr_array_header_t *',
    'name' => 'ap_hook_get_mpm_get_name',
    'args' => []
  },
  {
    'return_type' => 'apr_array_header_t *',
    'name' => 'ap_hook_get_mpm_query',
    'args' => []
  },
  {
    'return_type' => 'apr_array_header_t *',
    'name' => 'ap_hook_get_mpm_register_timed_callback',
    'args' => []
  },
  {
    'return_type' => 'apr_array_header_t *',
    'name' => 'ap_hook_get_note_auth_failure',
    'args' => []
  },
  {
    'return_type' => 'apr_array_header_t *',
    'name' => 'ap_hook_get_open_logs',
    'args' => []
  },
  {
    'return_type' => 'apr_array_header_t *',
    'name' => 'ap_hook_get_optional_fn_retrieve',
    'args' => []
  },
  {
    'return_type' => 'apr_array_header_t *',
    'name' => 'ap_hook_get_post_config',
    'args' => []
  },
  {
    'return_type' => 'apr_array_header_t *',
    'name' => 'ap_hook_get_post_read_request',
    'args' => []
  },
  {
    'return_type' => 'apr_array_header_t *',
    'name' => 'ap_hook_get_pre_config',
    'args' => []
  },
  {
    'return_type' => 'apr_array_header_t *',
    'name' => 'ap_hook_get_pre_connection',
    'args' => []
  },
  {
    'return_type' => 'apr_array_header_t *',
    'name' => 'ap_hook_get_pre_mpm',
    'args' => []
  },
  {
    'return_type' => 'apr_array_header_t *',
    'name' => 'ap_hook_get_pre_read_request',
    'args' => []
  },
  {
    'return_type' => 'apr_array_header_t *',
    'name' => 'ap_hook_get_process_connection',
    'args' => []
  },
  {
    'return_type' => 'apr_array_header_t *',
    'name' => 'ap_hook_get_quick_handler',
    'args' => []
  },
  {
    'return_type' => 'apr_array_header_t *',
    'name' => 'ap_hook_get_session_decode',
    'args' => []
  },
  {
    'return_type' => 'apr_array_header_t *',
    'name' => 'ap_hook_get_session_encode',
    'args' => []
  },
  {
    'return_type' => 'apr_array_header_t *',
    'name' => 'ap_hook_get_session_load',
    'args' => []
  },
  {
    'return_type' => 'apr_array_header_t *',
    'name' => 'ap_hook_get_session_save',
    'args' => []
  },
  {
    'return_type' => 'apr_array_header_t *',
    'name' => 'ap_hook_get_status_hook',
    'args' => []
  },
  {
    'return_type' => 'void',
    'name' => 'ap_hook_get_suexec_identity',
    'args' => [
      {
        'type' => 'ap_HOOK_get_suexec_identity_t *',
        'name' => 'pf'
      },
      {
        'type' => 'const char * const *',
        'name' => 'aszPre'
      },
      {
        'type' => 'const char * const *',
        'name' => 'aszSucc'
      },
      {
        'type' => 'int',
        'name' => 'nOrder'
      }
    ]
  },
  {
    'return_type' => 'apr_array_header_t *',
    'name' => 'ap_hook_get_test_config',
    'args' => []
  },
  {
    'return_type' => 'apr_array_header_t *',
    'name' => 'ap_hook_get_translate_name',
    'args' => []
  },
  {
    'return_type' => 'apr_array_header_t *',
    'name' => 'ap_hook_get_type_checker',
    'args' => []
  },
  {
    'return_type' => 'apr_array_header_t *',
    'name' => 'ap_hook_get_watchdog_exit',
    'args' => []
  },
  {
    'return_type' => 'apr_array_header_t *',
    'name' => 'ap_hook_get_watchdog_init',
    'args' => []
  },
  {
    'return_type' => 'apr_array_header_t *',
    'name' => 'ap_hook_get_watchdog_need',
    'args' => []
  },
  {
    'return_type' => 'apr_array_header_t *',
    'name' => 'ap_hook_get_watchdog_step',
    'args' => []
  },
  {
    'return_type' => 'void',
    'name' => 'ap_hook_handler',
    'args' => [
      {
        'type' => 'ap_HOOK_handler_t *',
        'name' => 'pf'
      },
      {
        'type' => 'const char * const *',
        'name' => 'aszPre'
      },
      {
        'type' => 'const char * const *',
        'name' => 'aszSucc'
      },
      {
        'type' => 'int',
        'name' => 'nOrder'
      }
    ]
  },
  {
    'return_type' => 'void',
    'name' => 'ap_hook_header_parser',
    'args' => [
      {
        'type' => 'ap_HOOK_header_parser_t *',
        'name' => 'pf'
      },
      {
        'type' => 'const char * const *',
        'name' => 'aszPre'
      },
      {
        'type' => 'const char * const *',
        'name' => 'aszSucc'
      },
      {
        'type' => 'int',
        'name' => 'nOrder'
      }
    ]
  },
  {
    'return_type' => 'void',
    'name' => 'ap_hook_http_scheme',
    'args' => [
      {
        'type' => 'ap_HOOK_http_scheme_t *',
        'name' => 'pf'
      },
      {
        'type' => 'const char * const *',
        'name' => 'aszPre'
      },
      {
        'type' => 'const char * const *',
        'name' => 'aszSucc'
      },
      {
        'type' => 'int',
        'name' => 'nOrder'
      }
    ]
  },
  {
    'return_type' => 'void',
    'name' => 'ap_hook_insert_error_filter',
    'args' => [
      {
        'type' => 'ap_HOOK_insert_error_filter_t *',
        'name' => 'pf'
      },
      {
        'type' => 'const char * const *',
        'name' => 'aszPre'
      },
      {
        'type' => 'const char * const *',
        'name' => 'aszSucc'
      },
      {
        'type' => 'int',
        'name' => 'nOrder'
      }
    ]
  },
  {
    'return_type' => 'void',
    'name' => 'ap_hook_insert_filter',
    'args' => [
      {
        'type' => 'ap_HOOK_insert_filter_t *',
        'name' => 'pf'
      },
      {
        'type' => 'const char * const *',
        'name' => 'aszPre'
      },
      {
        'type' => 'const char * const *',
        'name' => 'aszSucc'
      },
      {
        'type' => 'int',
        'name' => 'nOrder'
      }
    ]
  },
  {
    'return_type' => 'void',
    'name' => 'ap_hook_insert_network_bucket',
    'args' => [
      {
        'type' => 'ap_HOOK_insert_network_bucket_t *',
        'name' => 'pf'
      },
      {
        'type' => 'const char * const *',
        'name' => 'aszPre'
      },
      {
        'type' => 'const char * const *',
        'name' => 'aszSucc'
      },
      {
        'type' => 'int',
        'name' => 'nOrder'
      }
    ]
  },
  {
    'return_type' => 'void',
    'name' => 'ap_hook_log_transaction',
    'args' => [
      {
        'type' => 'ap_HOOK_log_transaction_t *',
        'name' => 'pf'
      },
      {
        'type' => 'const char * const *',
        'name' => 'aszPre'
      },
      {
        'type' => 'const char * const *',
        'name' => 'aszSucc'
      },
      {
        'type' => 'int',
        'name' => 'nOrder'
      }
    ]
  },
  {
    'return_type' => 'void',
    'name' => 'ap_hook_map_to_storage',
    'args' => [
      {
        'type' => 'ap_HOOK_map_to_storage_t *',
        'name' => 'pf'
      },
      {
        'type' => 'const char * const *',
        'name' => 'aszPre'
      },
      {
        'type' => 'const char * const *',
        'name' => 'aszSucc'
      },
      {
        'type' => 'int',
        'name' => 'nOrder'
      }
    ]
  },
  {
    'return_type' => 'void',
    'name' => 'ap_hook_monitor',
    'args' => [
      {
        'type' => 'ap_HOOK_monitor_t *',
        'name' => 'pf'
      },
      {
        'type' => 'const char * const *',
        'name' => 'aszPre'
      },
      {
        'type' => 'const char * const *',
        'name' => 'aszSucc'
      },
      {
        'type' => 'int',
        'name' => 'nOrder'
      }
    ]
  },
  {
    'return_type' => 'void',
    'name' => 'ap_hook_mpm',
    'args' => [
      {
        'type' => 'ap_HOOK_mpm_t *',
        'name' => 'pf'
      },
      {
        'type' => 'const char * const *',
        'name' => 'aszPre'
      },
      {
        'type' => 'const char * const *',
        'name' => 'aszSucc'
      },
      {
        'type' => 'int',
        'name' => 'nOrder'
      }
    ]
  },
  {
    'return_type' => 'void',
    'name' => 'ap_hook_mpm_get_name',
    'args' => [
      {
        'type' => 'ap_HOOK_mpm_get_name_t *',
        'name' => 'pf'
      },
      {
        'type' => 'const char * const *',
        'name' => 'aszPre'
      },
      {
        'type' => 'const char * const *',
        'name' => 'aszSucc'
      },
      {
        'type' => 'int',
        'name' => 'nOrder'
      }
    ]
  },
  {
    'return_type' => 'void',
    'name' => 'ap_hook_mpm_query',
    'args' => [
      {
        'type' => 'ap_HOOK_mpm_query_t *',
        'name' => 'pf'
      },
      {
        'type' => 'const char * const *',
        'name' => 'aszPre'
      },
      {
        'type' => 'const char * const *',
        'name' => 'aszSucc'
      },
      {
        'type' => 'int',
        'name' => 'nOrder'
      }
    ]
  },
  {
    'return_type' => 'void',
    'name' => 'ap_hook_mpm_register_timed_callback',
    'args' => [
      {
        'type' => 'ap_HOOK_mpm_register_timed_callback_t *',
        'name' => 'pf'
      },
      {
        'type' => 'const char * const *',
        'name' => 'aszPre'
      },
      {
        'type' => 'const char * const *',
        'name' => 'aszSucc'
      },
      {
        'type' => 'int',
        'name' => 'nOrder'
      }
    ]
  },
  {
    'return_type' => 'void',
    'name' => 'ap_hook_note_auth_failure',
    'args' => [
      {
        'type' => 'ap_HOOK_note_auth_failure_t *',
        'name' => 'pf'
      },
      {
        'type' => 'const char * const *',
        'name' => 'aszPre'
      },
      {
        'type' => 'const char * const *',
        'name' => 'aszSucc'
      },
      {
        'type' => 'int',
        'name' => 'nOrder'
      }
    ]
  },
  {
    'return_type' => 'void',
    'name' => 'ap_hook_open_logs',
    'args' => [
      {
        'type' => 'ap_HOOK_open_logs_t *',
        'name' => 'pf'
      },
      {
        'type' => 'const char * const *',
        'name' => 'aszPre'
      },
      {
        'type' => 'const char * const *',
        'name' => 'aszSucc'
      },
      {
        'type' => 'int',
        'name' => 'nOrder'
      }
    ]
  },
  {
    'return_type' => 'void',
    'name' => 'ap_hook_optional_fn_retrieve',
    'args' => [
      {
        'type' => 'ap_HOOK_optional_fn_retrieve_t *',
        'name' => 'pf'
      },
      {
        'type' => 'const char * const *',
        'name' => 'aszPre'
      },
      {
        'type' => 'const char * const *',
        'name' => 'aszSucc'
      },
      {
        'type' => 'int',
        'name' => 'nOrder'
      }
    ]
  },
  {
    'return_type' => 'void',
    'name' => 'ap_hook_post_config',
    'args' => [
      {
        'type' => 'ap_HOOK_post_config_t *',
        'name' => 'pf'
      },
      {
        'type' => 'const char * const *',
        'name' => 'aszPre'
      },
      {
        'type' => 'const char * const *',
        'name' => 'aszSucc'
      },
      {
        'type' => 'int',
        'name' => 'nOrder'
      }
    ]
  },
  {
    'return_type' => 'void',
    'name' => 'ap_hook_post_read_request',
    'args' => [
      {
        'type' => 'ap_HOOK_post_read_request_t *',
        'name' => 'pf'
      },
      {
        'type' => 'const char * const *',
        'name' => 'aszPre'
      },
      {
        'type' => 'const char * const *',
        'name' => 'aszSucc'
      },
      {
        'type' => 'int',
        'name' => 'nOrder'
      }
    ]
  },
  {
    'return_type' => 'void',
    'name' => 'ap_hook_pre_config',
    'args' => [
      {
        'type' => 'ap_HOOK_pre_config_t *',
        'name' => 'pf'
      },
      {
        'type' => 'const char * const *',
        'name' => 'aszPre'
      },
      {
        'type' => 'const char * const *',
        'name' => 'aszSucc'
      },
      {
        'type' => 'int',
        'name' => 'nOrder'
      }
    ]
  },
  {
    'return_type' => 'void',
    'name' => 'ap_hook_pre_connection',
    'args' => [
      {
        'type' => 'ap_HOOK_pre_connection_t *',
        'name' => 'pf'
      },
      {
        'type' => 'const char * const *',
        'name' => 'aszPre'
      },
      {
        'type' => 'const char * const *',
        'name' => 'aszSucc'
      },
      {
        'type' => 'int',
        'name' => 'nOrder'
      }
    ]
  },
  {
    'return_type' => 'void',
    'name' => 'ap_hook_pre_mpm',
    'args' => [
      {
        'type' => 'ap_HOOK_pre_mpm_t *',
        'name' => 'pf'
      },
      {
        'type' => 'const char * const *',
        'name' => 'aszPre'
      },
      {
        'type' => 'const char * const *',
        'name' => 'aszSucc'
      },
      {
        'type' => 'int',
        'name' => 'nOrder'
      }
    ]
  },
  {
    'return_type' => 'void',
    'name' => 'ap_hook_pre_read_request',
    'args' => [
      {
        'type' => 'ap_HOOK_pre_read_request_t *',
        'name' => 'pf'
      },
      {
        'type' => 'const char * const *',
        'name' => 'aszPre'
      },
      {
        'type' => 'const char * const *',
        'name' => 'aszSucc'
      },
      {
        'type' => 'int',
        'name' => 'nOrder'
      }
    ]
  },
  {
    'return_type' => 'void',
    'name' => 'ap_hook_process_connection',
    'args' => [
      {
        'type' => 'ap_HOOK_process_connection_t *',
        'name' => 'pf'
      },
      {
        'type' => 'const char * const *',
        'name' => 'aszPre'
      },
      {
        'type' => 'const char * const *',
        'name' => 'aszSucc'
      },
      {
        'type' => 'int',
        'name' => 'nOrder'
      }
    ]
  },
  {
    'return_type' => 'void',
    'name' => 'ap_hook_quick_handler',
    'args' => [
      {
        'type' => 'ap_HOOK_quick_handler_t *',
        'name' => 'pf'
      },
      {
        'type' => 'const char * const *',
        'name' => 'aszPre'
      },
      {
        'type' => 'const char * const *',
        'name' => 'aszSucc'
      },
      {
        'type' => 'int',
        'name' => 'nOrder'
      }
    ]
  },
  {
    'return_type' => 'void',
    'name' => 'ap_hook_session_decode',
    'args' => [
      {
        'type' => 'ap_HOOK_session_decode_t *',
        'name' => 'pf'
      },
      {
        'type' => 'const char * const *',
        'name' => 'aszPre'
      },
      {
        'type' => 'const char * const *',
        'name' => 'aszSucc'
      },
      {
        'type' => 'int',
        'name' => 'nOrder'
      }
    ]
  },
  {
    'return_type' => 'void',
    'name' => 'ap_hook_session_encode',
    'args' => [
      {
        'type' => 'ap_HOOK_session_encode_t *',
        'name' => 'pf'
      },
      {
        'type' => 'const char * const *',
        'name' => 'aszPre'
      },
      {
        'type' => 'const char * const *',
        'name' => 'aszSucc'
      },
      {
        'type' => 'int',
        'name' => 'nOrder'
      }
    ]
  },
  {
    'return_type' => 'void',
    'name' => 'ap_hook_session_load',
    'args' => [
      {
        'type' => 'ap_HOOK_session_load_t *',
        'name' => 'pf'
      },
      {
        'type' => 'const char * const *',
        'name' => 'aszPre'
      },
      {
        'type' => 'const char * const *',
        'name' => 'aszSucc'
      },
      {
        'type' => 'int',
        'name' => 'nOrder'
      }
    ]
  },
  {
    'return_type' => 'void',
    'name' => 'ap_hook_session_save',
    'args' => [
      {
        'type' => 'ap_HOOK_session_save_t *',
        'name' => 'pf'
      },
      {
        'type' => 'const char * const *',
        'name' => 'aszPre'
      },
      {
        'type' => 'const char * const *',
        'name' => 'aszSucc'
      },
      {
        'type' => 'int',
        'name' => 'nOrder'
      }
    ]
  },
  {
    'return_type' => 'void',
    'name' => 'ap_hook_status_hook',
    'args' => [
      {
        'type' => 'ap_HOOK_status_hook_t *',
        'name' => 'pf'
      },
      {
        'type' => 'const char * const *',
        'name' => 'aszPre'
      },
      {
        'type' => 'const char * const *',
        'name' => 'aszSucc'
      },
      {
        'type' => 'int',
        'name' => 'nOrder'
      }
    ]
  },
  {
    'return_type' => 'void',
    'name' => 'ap_hook_test_config',
    'args' => [
      {
        'type' => 'ap_HOOK_test_config_t *',
        'name' => 'pf'
      },
      {
        'type' => 'const char * const *',
        'name' => 'aszPre'
      },
      {
        'type' => 'const char * const *',
        'name' => 'aszSucc'
      },
      {
        'type' => 'int',
        'name' => 'nOrder'
      }
    ]
  },
  {
    'return_type' => 'void',
    'name' => 'ap_hook_translate_name',
    'args' => [
      {
        'type' => 'ap_HOOK_translate_name_t *',
        'name' => 'pf'
      },
      {
        'type' => 'const char * const *',
        'name' => 'aszPre'
      },
      {
        'type' => 'const char * const *',
        'name' => 'aszSucc'
      },
      {
        'type' => 'int',
        'name' => 'nOrder'
      }
    ]
  },
  {
    'return_type' => 'void',
    'name' => 'ap_hook_type_checker',
    'args' => [
      {
        'type' => 'ap_HOOK_type_checker_t *',
        'name' => 'pf'
      },
      {
        'type' => 'const char * const *',
        'name' => 'aszPre'
      },
      {
        'type' => 'const char * const *',
        'name' => 'aszSucc'
      },
      {
        'type' => 'int',
        'name' => 'nOrder'
      }
    ]
  },
  {
    'return_type' => 'void',
    'name' => 'ap_hook_watchdog_exit',
    'args' => [
      {
        'type' => 'ap_HOOK_watchdog_exit_t *',
        'name' => 'pf'
      },
      {
        'type' => 'const char * const *',
        'name' => 'aszPre'
      },
      {
        'type' => 'const char * const *',
        'name' => 'aszSucc'
      },
      {
        'type' => 'int',
        'name' => 'nOrder'
      }
    ]
  },
  {
    'return_type' => 'void',
    'name' => 'ap_hook_watchdog_init',
    'args' => [
      {
        'type' => 'ap_HOOK_watchdog_init_t *',
        'name' => 'pf'
      },
      {
        'type' => 'const char * const *',
        'name' => 'aszPre'
      },
      {
        'type' => 'const char * const *',
        'name' => 'aszSucc'
      },
      {
        'type' => 'int',
        'name' => 'nOrder'
      }
    ]
  },
  {
    'return_type' => 'void',
    'name' => 'ap_hook_watchdog_need',
    'args' => [
      {
        'type' => 'ap_HOOK_watchdog_need_t *',
        'name' => 'pf'
      },
      {
        'type' => 'const char * const *',
        'name' => 'aszPre'
      },
      {
        'type' => 'const char * const *',
        'name' => 'aszSucc'
      },
      {
        'type' => 'int',
        'name' => 'nOrder'
      }
    ]
  },
  {
    'return_type' => 'void',
    'name' => 'ap_hook_watchdog_step',
    'args' => [
      {
        'type' => 'ap_HOOK_watchdog_step_t *',
        'name' => 'pf'
      },
      {
        'type' => 'const char * const *',
        'name' => 'aszPre'
      },
      {
        'type' => 'const char * const *',
        'name' => 'aszSucc'
      },
      {
        'type' => 'int',
        'name' => 'nOrder'
      }
    ]
  },
  {
    'return_type' => 'char *',
    'name' => 'ap_ht_time',
    'args' => [
      {
        'type' => 'apr_pool_t *',
        'name' => 'p'
      },
      {
        'type' => 'apr_time_t',
        'name' => 't'
      },
      {
        'type' => 'const char *',
        'name' => 'fmt'
      },
      {
        'type' => 'int',
        'name' => 'gmt'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'ap_http_chunk_filter',
    'args' => [
      {
        'type' => 'ap_filter_t *',
        'name' => 'f'
      },
      {
        'type' => 'apr_bucket_brigade *',
        'name' => 'b'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'ap_http_filter',
    'args' => [
      {
        'type' => 'ap_filter_t *',
        'name' => 'f'
      },
      {
        'type' => 'apr_bucket_brigade *',
        'name' => 'b'
      },
      {
        'type' => 'ap_input_mode_t',
        'name' => 'mode'
      },
      {
        'type' => 'apr_read_type_e',
        'name' => 'block'
      },
      {
        'type' => 'apr_off_t',
        'name' => 'readbytes'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'ap_http_header_filter',
    'args' => [
      {
        'type' => 'ap_filter_t *',
        'name' => 'f'
      },
      {
        'type' => 'apr_bucket_brigade *',
        'name' => 'b'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'ap_http_outerror_filter',
    'args' => [
      {
        'type' => 'ap_filter_t *',
        'name' => 'f'
      },
      {
        'type' => 'apr_bucket_brigade *',
        'name' => 'b'
      }
    ]
  },
  {
    'return_type' => 'int',
    'name' => 'ap_if_walk',
    'args' => [
      {
        'type' => 'request_rec *',
        'name' => 'r'
      }
    ]
  },
  {
    'return_type' => 'void',
    'name' => 'ap_increment_counts',
    'args' => [
      {
        'type' => 'ap_sb_handle_t *',
        'name' => 'sbh'
      },
      {
        'type' => 'request_rec *',
        'name' => 'r'
      }
    ]
  },
  {
    'return_type' => 'int',
    'name' => 'ap_ind',
    'args' => [
      {
        'type' => 'const char *',
        'name' => 'str'
      },
      {
        'type' => 'char',
        'name' => 'c'
      }
    ]
  },
  {
    'return_type' => 'int',
    'name' => 'ap_index_of_response',
    'args' => [
      {
        'type' => 'int',
        'name' => 'status'
      }
    ]
  },
  {
    'return_type' => 'void',
    'name' => 'ap_init_rng',
    'args' => [
      {
        'type' => 'apr_pool_t *',
        'name' => 'p'
      }
    ]
  },
  {
    'return_type' => 'void',
    'name' => 'ap_init_scoreboard',
    'args' => [
      {
        'type' => 'void *',
        'name' => 'shared_score'
      }
    ]
  },
  {
    'return_type' => 'void',
    'name' => 'ap_init_vhost_config',
    'args' => [
      {
        'type' => 'apr_pool_t *',
        'name' => 'p'
      }
    ]
  },
  {
    'return_type' => 'const char *',
    'name' => 'ap_init_virtual_host',
    'args' => [
      {
        'type' => 'apr_pool_t *',
        'name' => 'p'
      },
      {
        'type' => 'const char *',
        'name' => 'hostname'
      },
      {
        'type' => 'server_rec *',
        'name' => 'main_server'
      },
      {
        'type' => 'server_rec **',
        'name' => 'ps'
      }
    ]
  },
  {
    'return_type' => 'void',
    'name' => 'ap_internal_fast_redirect',
    'args' => [
      {
        'type' => 'request_rec *',
        'name' => 'sub_req'
      },
      {
        'type' => 'request_rec *',
        'name' => 'r'
      }
    ]
  },
  {
    'return_type' => 'void',
    'name' => 'ap_internal_redirect',
    'args' => [
      {
        'type' => 'const char *',
        'name' => 'new_uri'
      },
      {
        'type' => 'request_rec *',
        'name' => 'r'
      }
    ]
  },
  {
    'return_type' => 'void',
    'name' => 'ap_internal_redirect_handler',
    'args' => [
      {
        'type' => 'const char *',
        'name' => 'new_uri'
      },
      {
        'type' => 'request_rec *',
        'name' => 'r'
      }
    ]
  },
  {
    'return_type' => 'int',
    'name' => 'ap_invoke_handler',
    'args' => [
      {
        'type' => 'request_rec *',
        'name' => 'r'
      }
    ]
  },
  {
    'return_type' => 'int',
    'name' => 'ap_is_directory',
    'args' => [
      {
        'type' => 'apr_pool_t *',
        'name' => 'p'
      },
      {
        'type' => 'const char *',
        'name' => 'name'
      }
    ]
  },
  {
    'return_type' => 'int',
    'name' => 'ap_is_initial_req',
    'args' => [
      {
        'type' => 'request_rec *',
        'name' => 'r'
      }
    ]
  },
  {
    'return_type' => 'int',
    'name' => 'ap_is_matchexp',
    'args' => [
      {
        'type' => 'const char *',
        'name' => 'str'
      }
    ]
  },
  {
    'return_type' => 'int',
    'name' => 'ap_is_rdirectory',
    'args' => [
      {
        'type' => 'apr_pool_t *',
        'name' => 'p'
      },
      {
        'type' => 'const char *',
        'name' => 'name'
      }
    ]
  },
  {
    'return_type' => 'int',
    'name' => 'ap_is_recursion_limit_exceeded',
    'args' => [
      {
        'type' => 'const request_rec *',
        'name' => 'r'
      }
    ]
  },
  {
    'return_type' => 'int',
    'name' => 'ap_is_url',
    'args' => [
      {
        'type' => 'const char *',
        'name' => 'u'
      }
    ]
  },
  {
    'return_type' => 'const char *',
    'name' => 'ap_limit_section',
    'args' => [
      {
        'type' => 'cmd_parms *',
        'name' => 'cmd'
      },
      {
        'type' => 'void *',
        'name' => 'dummy'
      },
      {
        'type' => 'const char *',
        'name' => 'arg'
      }
    ]
  },
  {
    'return_type' => 'void',
    'name' => 'ap_lingering_close',
    'args' => [
      {
        'type' => 'conn_rec *',
        'name' => 'c'
      }
    ]
  },
  {
    'return_type' => 'apr_array_header_t *',
    'name' => 'ap_list_provider_groups',
    'args' => [
      {
        'type' => 'apr_pool_t *',
        'name' => 'pool'
      }
    ]
  },
  {
    'return_type' => 'apr_array_header_t *',
    'name' => 'ap_list_provider_names',
    'args' => [
      {
        'type' => 'apr_pool_t *',
        'name' => 'pool'
      },
      {
        'type' => 'const char *',
        'name' => 'provider_group'
      },
      {
        'type' => 'const char *',
        'name' => 'provider_version'
      }
    ]
  },
  {
    'return_type' => 'void',
    'name' => 'ap_listen_pre_config',
    'args' => []
  },
  {
    'return_type' => 'int',
    'name' => 'ap_location_walk',
    'args' => [
      {
        'type' => 'request_rec *',
        'name' => 'r'
      }
    ]
  },
  {
    'return_type' => 'void',
    'name' => 'ap_log_assert',
    'args' => [
      {
        'type' => 'const char *',
        'name' => 'szExp'
      },
      {
        'type' => 'const char *',
        'name' => 'szFile'
      },
      {
        'type' => 'int',
        'name' => 'nLine'
      }
    ]
  },
  {
    'return_type' => 'void',
    'name' => 'ap_log_cerror_',
    'args' => [
      {
        'type' => 'const char *',
        'name' => 'file'
      },
      {
        'type' => 'int',
        'name' => 'line'
      },
      {
        'type' => 'int',
        'name' => 'module_index'
      },
      {
        'type' => 'int',
        'name' => 'level'
      },
      {
        'type' => 'apr_status_t',
        'name' => 'status'
      },
      {
        'type' => 'const conn_rec *',
        'name' => 'c'
      },
      {
        'type' => 'const char *',
        'name' => 'fmt'
      },
      {
        'type' => '...',
        'name' => 'arg7'
      }
    ]
  },
  {
    'return_type' => 'void',
    'name' => 'ap_log_command_line',
    'args' => [
      {
        'type' => 'apr_pool_t *',
        'name' => 'p'
      },
      {
        'type' => 'server_rec *',
        'name' => 's'
      }
    ]
  },
  {
    'return_type' => 'void',
    'name' => 'ap_log_cserror_',
    'args' => [
      {
        'type' => 'const char *',
        'name' => 'file'
      },
      {
        'type' => 'int',
        'name' => 'line'
      },
      {
        'type' => 'int',
        'name' => 'module_index'
      },
      {
        'type' => 'int',
        'name' => 'level'
      },
      {
        'type' => 'apr_status_t',
        'name' => 'status'
      },
      {
        'type' => 'const conn_rec *',
        'name' => 'c'
      },
      {
        'type' => 'const server_rec *',
        'name' => 's'
      },
      {
        'type' => 'const char *',
        'name' => 'fmt'
      },
      {
        'type' => '...',
        'name' => 'arg8'
      }
    ]
  },
  {
    'return_type' => 'void',
    'name' => 'ap_log_error_',
    'args' => [
      {
        'type' => 'const char *',
        'name' => 'file'
      },
      {
        'type' => 'int',
        'name' => 'line'
      },
      {
        'type' => 'int',
        'name' => 'module_index'
      },
      {
        'type' => 'int',
        'name' => 'level'
      },
      {
        'type' => 'apr_status_t',
        'name' => 'status'
      },
      {
        'type' => 'const server_rec *',
        'name' => 's'
      },
      {
        'type' => 'const char *',
        'name' => 'fmt'
      },
      {
        'type' => '...',
        'name' => 'arg7'
      }
    ]
  },
  {
    'return_type' => 'void',
    'name' => 'ap_log_perror_',
    'args' => [
      {
        'type' => 'const char *',
        'name' => 'file'
      },
      {
        'type' => 'int',
        'name' => 'line'
      },
      {
        'type' => 'int',
        'name' => 'module_index'
      },
      {
        'type' => 'int',
        'name' => 'level'
      },
      {
        'type' => 'apr_status_t',
        'name' => 'status'
      },
      {
        'type' => 'apr_pool_t *',
        'name' => 'p'
      },
      {
        'type' => 'const char *',
        'name' => 'fmt'
      },
      {
        'type' => '...',
        'name' => 'arg7'
      }
    ]
  },
  {
    'return_type' => 'void',
    'name' => 'ap_log_pid',
    'args' => [
      {
        'type' => 'apr_pool_t *',
        'name' => 'p'
      },
      {
        'type' => 'const char *',
        'name' => 'fname'
      }
    ]
  },
  {
    'return_type' => 'void',
    'name' => 'ap_log_rerror_',
    'args' => [
      {
        'type' => 'const char *',
        'name' => 'file'
      },
      {
        'type' => 'int',
        'name' => 'line'
      },
      {
        'type' => 'int',
        'name' => 'module_index'
      },
      {
        'type' => 'int',
        'name' => 'level'
      },
      {
        'type' => 'apr_status_t',
        'name' => 'status'
      },
      {
        'type' => 'const request_rec *',
        'name' => 'r'
      },
      {
        'type' => 'const char *',
        'name' => 'fmt'
      },
      {
        'type' => '...',
        'name' => 'arg7'
      }
    ]
  },
  {
    'return_type' => 'void',
    'name' => 'ap_logs_child_init',
    'args' => [
      {
        'type' => 'apr_pool_t *',
        'name' => 'p'
      },
      {
        'type' => 'server_rec *',
        'name' => 's'
      }
    ]
  },
  {
    'return_type' => 'void *',
    'name' => 'ap_lookup_provider',
    'args' => [
      {
        'type' => 'const char *',
        'name' => 'provider_group'
      },
      {
        'type' => 'const char *',
        'name' => 'provider_name'
      },
      {
        'type' => 'const char *',
        'name' => 'provider_version'
      }
    ]
  },
  {
    'return_type' => 'const char *',
    'name' => 'ap_make_content_type',
    'args' => [
      {
        'type' => 'request_rec *',
        'name' => 'r'
      },
      {
        'type' => 'const char *',
        'name' => 'type'
      }
    ]
  },
  {
    'return_type' => 'char *',
    'name' => 'ap_make_dirstr_parent',
    'args' => [
      {
        'type' => 'apr_pool_t *',
        'name' => 'p'
      },
      {
        'type' => 'const char *',
        'name' => 's'
      }
    ]
  },
  {
    'return_type' => 'char *',
    'name' => 'ap_make_dirstr_prefix',
    'args' => [
      {
        'type' => 'char *',
        'name' => 'd'
      },
      {
        'type' => 'const char *',
        'name' => 's'
      },
      {
        'type' => 'int',
        'name' => 'n'
      }
    ]
  },
  {
    'return_type' => 'char *',
    'name' => 'ap_make_etag',
    'args' => [
      {
        'type' => 'request_rec *',
        'name' => 'r'
      },
      {
        'type' => 'int',
        'name' => 'force_weak'
      }
    ]
  },
  {
    'return_type' => 'char *',
    'name' => 'ap_make_full_path',
    'args' => [
      {
        'type' => 'apr_pool_t *',
        'name' => 'a'
      },
      {
        'type' => 'const char *',
        'name' => 'dir'
      },
      {
        'type' => 'const char *',
        'name' => 'f'
      }
    ]
  },
  {
    'return_type' => 'ap_method_list_t *',
    'name' => 'ap_make_method_list',
    'args' => [
      {
        'type' => 'apr_pool_t *',
        'name' => 'p'
      },
      {
        'type' => 'int',
        'name' => 'nelts'
      }
    ]
  },
  {
    'return_type' => 'void *',
    'name' => 'ap_malloc',
    'args' => [
      {
        'type' => 'size_t',
        'name' => 'size'
      }
    ]
  },
  {
    'return_type' => 'int',
    'name' => 'ap_matches_request_vhost',
    'args' => [
      {
        'type' => 'request_rec *',
        'name' => 'r'
      },
      {
        'type' => 'const char *',
        'name' => 'host'
      },
      {
        'type' => 'apr_port_t',
        'name' => 'port'
      }
    ]
  },
  {
    'return_type' => 'char *',
    'name' => 'ap_md5',
    'args' => [
      {
        'type' => 'apr_pool_t *',
        'name' => 'a'
      },
      {
        'type' => 'const unsigned char *',
        'name' => 'string'
      }
    ]
  },
  {
    'return_type' => 'char *',
    'name' => 'ap_md5_binary',
    'args' => [
      {
        'type' => 'apr_pool_t *',
        'name' => 'a'
      },
      {
        'type' => 'const unsigned char *',
        'name' => 'buf'
      },
      {
        'type' => 'int',
        'name' => 'len'
      }
    ]
  },
  {
    'return_type' => 'char *',
    'name' => 'ap_md5contextTo64',
    'args' => [
      {
        'type' => 'apr_pool_t *',
        'name' => 'p'
      },
      {
        'type' => 'apr_md5_ctx_t *',
        'name' => 'context'
      }
    ]
  },
  {
    'return_type' => 'char *',
    'name' => 'ap_md5digest',
    'args' => [
      {
        'type' => 'apr_pool_t *',
        'name' => 'p'
      },
      {
        'type' => 'apr_file_t *',
        'name' => 'infile'
      }
    ]
  },
  {
    'return_type' => 'int',
    'name' => 'ap_meets_conditions',
    'args' => [
      {
        'type' => 'request_rec *',
        'name' => 'r'
      }
    ]
  },
  {
    'return_type' => 'void',
    'name' => 'ap_merge_log_config',
    'args' => [
      {
        'type' => 'const struct ap_logconf *',
        'name' => 'old_conf'
      },
      {
        'type' => 'struct ap_logconf *',
        'name' => 'new_conf'
      }
    ]
  },
  {
    'return_type' => 'ap_conf_vector_t*',
    'name' => 'ap_merge_per_dir_configs',
    'args' => [
      {
        'type' => 'apr_pool_t *',
        'name' => 'p'
      },
      {
        'type' => 'ap_conf_vector_t *',
        'name' => 'base'
      },
      {
        'type' => 'ap_conf_vector_t *',
        'name' => 'new_conf'
      }
    ]
  },
  {
    'return_type' => 'int',
    'name' => 'ap_method_in_list',
    'args' => [
      {
        'type' => 'ap_method_list_t *',
        'name' => 'l'
      },
      {
        'type' => 'const char *',
        'name' => 'method'
      }
    ]
  },
  {
    'return_type' => 'int',
    'name' => 'ap_method_is_limited',
    'args' => [
      {
        'type' => 'cmd_parms *',
        'name' => 'cmd'
      },
      {
        'type' => 'const char *',
        'name' => 'method'
      }
    ]
  },
  {
    'return_type' => 'void',
    'name' => 'ap_method_list_add',
    'args' => [
      {
        'type' => 'ap_method_list_t *',
        'name' => 'l'
      },
      {
        'type' => 'const char *',
        'name' => 'method'
      }
    ]
  },
  {
    'return_type' => 'void',
    'name' => 'ap_method_list_remove',
    'args' => [
      {
        'type' => 'ap_method_list_t *',
        'name' => 'l'
      },
      {
        'type' => 'const char *',
        'name' => 'method'
      }
    ]
  },
  {
    'return_type' => 'const char *',
    'name' => 'ap_method_name_of',
    'args' => [
      {
        'type' => 'apr_pool_t *',
        'name' => 'p'
      },
      {
        'type' => 'int',
        'name' => 'methnum'
      }
    ]
  },
  {
    'return_type' => 'int',
    'name' => 'ap_method_number_of',
    'args' => [
      {
        'type' => 'const char *',
        'name' => 'method'
      }
    ]
  },
  {
    'return_type' => 'int',
    'name' => 'ap_method_register',
    'args' => [
      {
        'type' => 'apr_pool_t *',
        'name' => 'p'
      },
      {
        'type' => 'const char *',
        'name' => 'methname'
      }
    ]
  },
  {
    'return_type' => 'void',
    'name' => 'ap_method_registry_init',
    'args' => [
      {
        'type' => 'apr_pool_t *',
        'name' => 'p'
      }
    ]
  },
  {
    'return_type' => 'void',
    'name' => 'ap_mpm_dump_pidfile',
    'args' => [
      {
        'type' => 'apr_pool_t *',
        'name' => 'p'
      },
      {
        'type' => 'apr_file_t *',
        'name' => 'out'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'ap_mpm_end_gen_helper',
    'args' => [
      {
        'type' => 'void *unused',
        'name' => 'arg0'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'ap_mpm_pod_check',
    'args' => [
      {
        'type' => 'ap_pod_t *',
        'name' => 'pod'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'ap_mpm_pod_close',
    'args' => [
      {
        'type' => 'ap_pod_t *',
        'name' => 'pod'
      }
    ]
  },
  {
    'return_type' => 'void',
    'name' => 'ap_mpm_pod_killpg',
    'args' => [
      {
        'type' => 'ap_pod_t *',
        'name' => 'pod'
      },
      {
        'type' => 'int',
        'name' => 'num'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'ap_mpm_pod_open',
    'args' => [
      {
        'type' => 'apr_pool_t *',
        'name' => 'p'
      },
      {
        'type' => 'ap_pod_t **',
        'name' => 'pod'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'ap_mpm_pod_signal',
    'args' => [
      {
        'type' => 'ap_pod_t *',
        'name' => 'pod'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'ap_mpm_query',
    'args' => [
      {
        'type' => 'int',
        'name' => 'query_code'
      },
      {
        'type' => 'int *',
        'name' => 'result'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'ap_mpm_register_timed_callback',
    'args' => [
      {
        'type' => 'apr_time_t',
        'name' => 't'
      },
      {
        'type' => 'ap_mpm_callback_fn_t *',
        'name' => 'cbfn'
      },
      {
        'type' => 'void *',
        'name' => 'baton'
      }
    ]
  },
  {
    'return_type' => 'void',
    'name' => 'ap_mpm_rewrite_args',
    'args' => [
      {
        'type' => 'process_rec *',
        'name' => 'arg0'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'ap_mpm_safe_kill',
    'args' => [
      {
        'type' => 'pid_t',
        'name' => 'pid'
      },
      {
        'type' => 'int',
        'name' => 'sig'
      }
    ]
  },
  {
    'return_type' => 'const char *',
    'name' => 'ap_mpm_set_coredumpdir',
    'args' => [
      {
        'type' => 'cmd_parms *',
        'name' => 'cmd'
      },
      {
        'type' => 'void *',
        'name' => 'dummy'
      },
      {
        'type' => 'const char *',
        'name' => 'arg'
      }
    ]
  },
  {
    'return_type' => 'const char *',
    'name' => 'ap_mpm_set_graceful_shutdown',
    'args' => [
      {
        'type' => 'cmd_parms *',
        'name' => 'cmd'
      },
      {
        'type' => 'void *',
        'name' => 'dummy'
      },
      {
        'type' => 'const char *',
        'name' => 'arg'
      }
    ]
  },
  {
    'return_type' => 'const char *',
    'name' => 'ap_mpm_set_max_mem_free',
    'args' => [
      {
        'type' => 'cmd_parms *',
        'name' => 'cmd'
      },
      {
        'type' => 'void *',
        'name' => 'dummy'
      },
      {
        'type' => 'const char *',
        'name' => 'arg'
      }
    ]
  },
  {
    'return_type' => 'const char *',
    'name' => 'ap_mpm_set_max_requests',
    'args' => [
      {
        'type' => 'cmd_parms *',
        'name' => 'cmd'
      },
      {
        'type' => 'void *',
        'name' => 'dummy'
      },
      {
        'type' => 'const char *',
        'name' => 'arg'
      }
    ]
  },
  {
    'return_type' => 'const char *',
    'name' => 'ap_mpm_set_pidfile',
    'args' => [
      {
        'type' => 'cmd_parms *',
        'name' => 'cmd'
      },
      {
        'type' => 'void *',
        'name' => 'dummy'
      },
      {
        'type' => 'const char *',
        'name' => 'arg'
      }
    ]
  },
  {
    'return_type' => 'const char *',
    'name' => 'ap_mpm_set_thread_stacksize',
    'args' => [
      {
        'type' => 'cmd_parms *',
        'name' => 'cmd'
      },
      {
        'type' => 'void *',
        'name' => 'dummy'
      },
      {
        'type' => 'const char *',
        'name' => 'arg'
      }
    ]
  },
  {
    'return_type' => 'void',
    'name' => 'ap_mutex_init',
    'args' => [
      {
        'type' => 'apr_pool_t *',
        'name' => 'p'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'ap_mutex_register',
    'args' => [
      {
        'type' => 'apr_pool_t *',
        'name' => 'pconf'
      },
      {
        'type' => 'const char *',
        'name' => 'type'
      },
      {
        'type' => 'const char *',
        'name' => 'default_dir'
      },
      {
        'type' => 'apr_lockmech_e',
        'name' => 'default_mech'
      },
      {
        'type' => 'apr_int32_t',
        'name' => 'options'
      }
    ]
  },
  {
    'return_type' => 'struct ap_logconf *',
    'name' => 'ap_new_log_config',
    'args' => [
      {
        'type' => 'apr_pool_t *',
        'name' => 'p'
      },
      {
        'type' => 'const struct ap_logconf *',
        'name' => 'old'
      }
    ]
  },
  {
    'return_type' => 'void',
    'name' => 'ap_no2slash',
    'args' => [
      {
        'type' => 'char *',
        'name' => 'name'
      }
    ]
  },
  {
    'return_type' => 'void',
    'name' => 'ap_note_auth_failure',
    'args' => [
      {
        'type' => 'request_rec *',
        'name' => 'r'
      }
    ]
  },
  {
    'return_type' => 'void',
    'name' => 'ap_note_basic_auth_failure',
    'args' => [
      {
        'type' => 'request_rec *',
        'name' => 'r'
      }
    ]
  },
  {
    'return_type' => 'void',
    'name' => 'ap_note_digest_auth_failure',
    'args' => [
      {
        'type' => 'request_rec *',
        'name' => 'r'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'ap_old_write_filter',
    'args' => [
      {
        'type' => 'ap_filter_t *',
        'name' => 'f'
      },
      {
        'type' => 'apr_bucket_brigade *',
        'name' => 'b'
      }
    ]
  },
  {
    'return_type' => 'int',
    'name' => 'ap_open_logs',
    'args' => [
      {
        'type' => 'apr_pool_t *',
        'name' => 'pconf'
      },
      {
        'type' => 'apr_pool_t *',
        'name' => 'plog'
      },
      {
        'type' => 'apr_pool_t *',
        'name' => 'ptemp'
      },
      {
        'type' => 'server_rec *',
        'name' => 's_main'
      }
    ]
  },
  {
    'return_type' => 'piped_log *',
    'name' => 'ap_open_piped_log',
    'args' => [
      {
        'type' => 'apr_pool_t *',
        'name' => 'p'
      },
      {
        'type' => 'const char *',
        'name' => 'program'
      }
    ]
  },
  {
    'return_type' => 'piped_log *',
    'name' => 'ap_open_piped_log_ex',
    'args' => [
      {
        'type' => 'apr_pool_t *',
        'name' => 'p'
      },
      {
        'type' => 'const char *',
        'name' => 'program'
      },
      {
        'type' => 'apr_cmdtype_e',
        'name' => 'cmdtype'
      }
    ]
  },
  {
    'return_type' => 'void',
    'name' => 'ap_open_stderr_log',
    'args' => [
      {
        'type' => 'apr_pool_t *',
        'name' => 'p'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'ap_os_create_privileged_process',
    'args' => [
      {
        'type' => 'const request_rec *',
        'name' => 'r'
      },
      {
        'type' => 'apr_proc_t *',
        'name' => 'newproc'
      },
      {
        'type' => 'const char *',
        'name' => 'progname'
      },
      {
        'type' => 'const char * const *',
        'name' => 'args'
      },
      {
        'type' => 'const char * const *',
        'name' => 'env'
      },
      {
        'type' => 'apr_procattr_t *',
        'name' => 'attr'
      },
      {
        'type' => 'apr_pool_t *',
        'name' => 'p'
      }
    ]
  },
  {
    'return_type' => 'char *',
    'name' => 'ap_os_escape_path',
    'args' => [
      {
        'type' => 'apr_pool_t *',
        'name' => 'p'
      },
      {
        'type' => 'const char *',
        'name' => 'path'
      },
      {
        'type' => 'int',
        'name' => 'partial'
      }
    ]
  },
  {
    'return_type' => 'int',
    'name' => 'ap_os_is_path_absolute',
    'args' => [
      {
        'type' => 'apr_pool_t *',
        'name' => 'p'
      },
      {
        'type' => 'const char *',
        'name' => 'dir'
      }
    ]
  },
  {
    'return_type' => 'int',
    'name' => 'ap_parse_form_data',
    'args' => [
      {
        'type' => 'request_rec *',
        'name' => 'r'
      },
      {
        'type' => 'struct ap_filter_t *',
        'name' => 'f'
      },
      {
        'type' => 'apr_array_header_t **',
        'name' => 'ptr'
      },
      {
        'type' => 'apr_size_t',
        'name' => 'num'
      },
      {
        'type' => 'apr_size_t',
        'name' => 'size'
      }
    ]
  },
  {
    'return_type' => 'int',
    'name' => 'ap_parse_htaccess',
    'args' => [
      {
        'type' => 'ap_conf_vector_t **',
        'name' => 'result'
      },
      {
        'type' => 'request_rec *',
        'name' => 'r'
      },
      {
        'type' => 'int',
        'name' => 'override'
      },
      {
        'type' => 'int',
        'name' => 'override_opts'
      },
      {
        'type' => 'apr_table_t *',
        'name' => 'override_list'
      },
      {
        'type' => 'const char *',
        'name' => 'path'
      },
      {
        'type' => 'const char *',
        'name' => 'access_name'
      }
    ]
  },
  {
    'return_type' => 'const char *',
    'name' => 'ap_parse_log_level',
    'args' => [
      {
        'type' => 'const char *',
        'name' => 'str'
      },
      {
        'type' => 'int *',
        'name' => 'val'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'ap_parse_mutex',
    'args' => [
      {
        'type' => 'const char *',
        'name' => 'arg'
      },
      {
        'type' => 'apr_pool_t *',
        'name' => 'pool'
      },
      {
        'type' => 'apr_lockmech_e *',
        'name' => 'mutexmech'
      },
      {
        'type' => 'const char **',
        'name' => 'mutexfile'
      }
    ]
  },
  {
    'return_type' => 'void',
    'name' => 'ap_parse_uri',
    'args' => [
      {
        'type' => 'request_rec *',
        'name' => 'r'
      },
      {
        'type' => 'const char *',
        'name' => 'uri'
      }
    ]
  },
  {
    'return_type' => 'const char *',
    'name' => 'ap_parse_vhost_addrs',
    'args' => [
      {
        'type' => 'apr_pool_t *',
        'name' => 'p'
      },
      {
        'type' => 'const char *',
        'name' => 'hostname'
      },
      {
        'type' => 'server_rec *',
        'name' => 's'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'ap_pass_brigade',
    'args' => [
      {
        'type' => 'ap_filter_t *',
        'name' => 'filter'
      },
      {
        'type' => 'apr_bucket_brigade *',
        'name' => 'bucket'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'ap_pass_brigade_fchk',
    'args' => [
      {
        'type' => 'request_rec *',
        'name' => 'r'
      },
      {
        'type' => 'apr_bucket_brigade *',
        'name' => 'bucket'
      },
      {
        'type' => 'const char *',
        'name' => 'fmt'
      },
      {
        'type' => '...',
        'name' => 'arg3'
      }
    ]
  },
  {
    'return_type' => 'char *',
    'name' => 'ap_pbase64decode',
    'args' => [
      {
        'type' => 'apr_pool_t *',
        'name' => 'p'
      },
      {
        'type' => 'const char *',
        'name' => 'bufcoded'
      }
    ]
  },
  {
    'return_type' => 'char *',
    'name' => 'ap_pbase64encode',
    'args' => [
      {
        'type' => 'apr_pool_t *',
        'name' => 'p'
      },
      {
        'type' => 'char *',
        'name' => 'string'
      }
    ]
  },
  {
    'return_type' => 'ap_configfile_t *',
    'name' => 'ap_pcfg_open_custom',
    'args' => [
      {
        'type' => 'apr_pool_t *',
        'name' => 'p'
      },
      {
        'type' => 'const char *',
        'name' => 'descr'
      },
      {
        'type' => 'void *',
        'name' => 'param'
      },
      {
        'type' => 'apr_status_t (*getc_func) (char *ch, void *param)',
        'name' => 'arg3'
      },
      {
        'type' => 'apr_status_t (*gets_func) (void *buf, apr_size_t bufsiz, void *param)',
        'name' => 'arg4'
      },
      {
        'type' => 'apr_status_t (*close_func) (void *param)',
        'name' => 'arg5'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'ap_pcfg_openfile',
    'args' => [
      {
        'type' => 'ap_configfile_t **',
        'name' => 'ret_cfg'
      },
      {
        'type' => 'apr_pool_t *',
        'name' => 'p'
      },
      {
        'type' => 'const char *',
        'name' => 'name'
      }
    ]
  },
  {
    'return_type' => 'const char *',
    'name' => 'ap_pcfg_strerror',
    'args' => [
      {
        'type' => 'apr_pool_t *',
        'name' => 'p'
      },
      {
        'type' => 'ap_configfile_t *',
        'name' => 'cfp'
      },
      {
        'type' => 'apr_status_t',
        'name' => 'rc'
      }
    ]
  },
  {
    'return_type' => 'void',
    'name' => 'ap_pcw_walk_config',
    'args' => [
      {
        'type' => 'apr_pool_t *',
        'name' => 'pconf'
      },
      {
        'type' => 'server_rec *',
        'name' => 's'
      },
      {
        'type' => 'module *',
        'name' => 'modp'
      },
      {
        'type' => 'void *',
        'name' => 'data'
      },
      {
        'type' => 'ap_pcw_dir_cb_t',
        'name' => 'dir_cb'
      },
      {
        'type' => 'ap_pcw_srv_cb_t',
        'name' => 'srv_cb'
      }
    ]
  },
  {
    'return_type' => 'void',
    'name' => 'ap_pcw_walk_default_config',
    'args' => [
      {
        'type' => 'apr_pool_t *',
        'name' => 'pconf'
      },
      {
        'type' => 'server_rec *',
        'name' => 's'
      },
      {
        'type' => 'module *',
        'name' => 'modp'
      },
      {
        'type' => 'ap_pcw_dir_cb_t',
        'name' => 'dir_cb'
      },
      {
        'type' => 'void *',
        'name' => 'data'
      }
    ]
  },
  {
    'return_type' => 'void',
    'name' => 'ap_pcw_walk_directory_config',
    'args' => [
      {
        'type' => 'apr_pool_t *',
        'name' => 'pconf'
      },
      {
        'type' => 'server_rec *',
        'name' => 's'
      },
      {
        'type' => 'core_server_config *',
        'name' => 'sconf'
      },
      {
        'type' => 'module *',
        'name' => 'modp'
      },
      {
        'type' => 'ap_pcw_dir_cb_t',
        'name' => 'dir_cb'
      },
      {
        'type' => 'void *',
        'name' => 'data'
      }
    ]
  },
  {
    'return_type' => 'void',
    'name' => 'ap_pcw_walk_files_config',
    'args' => [
      {
        'type' => 'apr_pool_t *',
        'name' => 'pconf'
      },
      {
        'type' => 'server_rec *',
        'name' => 's'
      },
      {
        'type' => 'core_dir_config *',
        'name' => 'dconf'
      },
      {
        'type' => 'module *',
        'name' => 'modp'
      },
      {
        'type' => 'ap_pcw_dir_cb_t',
        'name' => 'dir_cb'
      },
      {
        'type' => 'void *',
        'name' => 'data'
      }
    ]
  },
  {
    'return_type' => 'void',
    'name' => 'ap_pcw_walk_location_config',
    'args' => [
      {
        'type' => 'apr_pool_t *',
        'name' => 'pconf'
      },
      {
        'type' => 'server_rec *',
        'name' => 's'
      },
      {
        'type' => 'core_server_config *',
        'name' => 'sconf'
      },
      {
        'type' => 'module *',
        'name' => 'modp'
      },
      {
        'type' => 'ap_pcw_dir_cb_t',
        'name' => 'dir_cb'
      },
      {
        'type' => 'void *',
        'name' => 'data'
      }
    ]
  },
  {
    'return_type' => 'void',
    'name' => 'ap_pcw_walk_server_config',
    'args' => [
      {
        'type' => 'apr_pool_t *',
        'name' => 'pconf'
      },
      {
        'type' => 'server_rec *',
        'name' => 's'
      },
      {
        'type' => 'module *',
        'name' => 'modp'
      },
      {
        'type' => 'ap_pcw_srv_cb_t',
        'name' => 'srv_cb'
      },
      {
        'type' => 'void *',
        'name' => 'data'
      }
    ]
  },
  {
    'return_type' => 'apr_file_t *',
    'name' => 'ap_piped_log_read_fd',
    'args' => [
      {
        'type' => 'piped_log *',
        'name' => 'pl'
      }
    ]
  },
  {
    'return_type' => 'apr_file_t *',
    'name' => 'ap_piped_log_write_fd',
    'args' => [
      {
        'type' => 'piped_log *',
        'name' => 'pl'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'ap_pool_cleanup_set_null',
    'args' => [
      {
        'type' => 'void *',
        'name' => 'data'
      }
    ]
  },
  {
    'return_type' => 'ap_regex_t *',
    'name' => 'ap_pregcomp',
    'args' => [
      {
        'type' => 'apr_pool_t *',
        'name' => 'p'
      },
      {
        'type' => 'const char *',
        'name' => 'pattern'
      },
      {
        'type' => 'int',
        'name' => 'cflags'
      }
    ]
  },
  {
    'return_type' => 'void',
    'name' => 'ap_pregfree',
    'args' => [
      {
        'type' => 'apr_pool_t *',
        'name' => 'p'
      },
      {
        'type' => 'ap_regex_t *',
        'name' => 'reg'
      }
    ]
  },
  {
    'return_type' => 'char *',
    'name' => 'ap_pregsub',
    'args' => [
      {
        'type' => 'apr_pool_t *',
        'name' => 'p'
      },
      {
        'type' => 'const char *',
        'name' => 'input'
      },
      {
        'type' => 'const char *',
        'name' => 'source'
      },
      {
        'type' => 'apr_size_t',
        'name' => 'nmatch'
      },
      {
        'type' => 'ap_regmatch_t',
        'name' => 'pmatch'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'ap_pregsub_ex',
    'args' => [
      {
        'type' => 'apr_pool_t *',
        'name' => 'p'
      },
      {
        'type' => 'char **',
        'name' => 'result'
      },
      {
        'type' => 'const char *',
        'name' => 'input'
      },
      {
        'type' => 'const char *',
        'name' => 'source'
      },
      {
        'type' => 'apr_size_t',
        'name' => 'nmatch'
      },
      {
        'type' => 'ap_regmatch_t',
        'name' => 'pmatch'
      },
      {
        'type' => 'apr_size_t',
        'name' => 'maxlen'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'ap_proc_mutex_create',
    'args' => [
      {
        'type' => 'apr_proc_mutex_t **',
        'name' => 'mutex'
      },
      {
        'type' => 'const char **',
        'name' => 'name'
      },
      {
        'type' => 'const char *',
        'name' => 'type'
      },
      {
        'type' => 'const char *',
        'name' => 'instance_id'
      },
      {
        'type' => 'server_rec *',
        'name' => 'server'
      },
      {
        'type' => 'apr_pool_t *',
        'name' => 'pool'
      },
      {
        'type' => 'apr_int32_t',
        'name' => 'options'
      }
    ]
  },
  {
    'return_type' => 'void',
    'name' => 'ap_process_async_request',
    'args' => [
      {
        'type' => 'request_rec *',
        'name' => 'r'
      }
    ]
  },
  {
    'return_type' => 'int',
    'name' => 'ap_process_child_status',
    'args' => [
      {
        'type' => 'apr_proc_t *',
        'name' => 'pid'
      },
      {
        'type' => 'apr_exit_why_e',
        'name' => 'why'
      },
      {
        'type' => 'int',
        'name' => 'status'
      }
    ]
  },
  {
    'return_type' => 'int',
    'name' => 'ap_process_config_tree',
    'args' => [
      {
        'type' => 'server_rec *',
        'name' => 's'
      },
      {
        'type' => 'ap_directive_t *',
        'name' => 'conftree'
      },
      {
        'type' => 'apr_pool_t *',
        'name' => 'p'
      },
      {
        'type' => 'apr_pool_t *',
        'name' => 'ptemp'
      }
    ]
  },
  {
    'return_type' => 'void',
    'name' => 'ap_process_connection',
    'args' => [
      {
        'type' => 'conn_rec *',
        'name' => 'c'
      },
      {
        'type' => 'void *',
        'name' => 'csd'
      }
    ]
  },
  {
    'return_type' => 'const char *',
    'name' => 'ap_process_fnmatch_configs',
    'args' => [
      {
        'type' => 'server_rec *',
        'name' => 's'
      },
      {
        'type' => 'const char *',
        'name' => 'fname'
      },
      {
        'type' => 'ap_directive_t **',
        'name' => 'conftree'
      },
      {
        'type' => 'apr_pool_t *',
        'name' => 'p'
      },
      {
        'type' => 'apr_pool_t *',
        'name' => 'ptemp'
      },
      {
        'type' => 'int',
        'name' => 'optional'
      }
    ]
  },
  {
    'return_type' => 'void',
    'name' => 'ap_process_request',
    'args' => [
      {
        'type' => 'request_rec *',
        'name' => 'r'
      }
    ]
  },
  {
    'return_type' => 'void',
    'name' => 'ap_process_request_after_handler',
    'args' => [
      {
        'type' => 'request_rec *',
        'name' => 'r'
      }
    ]
  },
  {
    'return_type' => 'int',
    'name' => 'ap_process_request_internal',
    'args' => [
      {
        'type' => 'request_rec *',
        'name' => 'r'
      }
    ]
  },
  {
    'return_type' => 'const char *',
    'name' => 'ap_process_resource_config',
    'args' => [
      {
        'type' => 'server_rec *',
        'name' => 's'
      },
      {
        'type' => 'const char *',
        'name' => 'fname'
      },
      {
        'type' => 'ap_directive_t **',
        'name' => 'conftree'
      },
      {
        'type' => 'apr_pool_t *',
        'name' => 'p'
      },
      {
        'type' => 'apr_pool_t *',
        'name' => 'ptemp'
      }
    ]
  },
  {
    'return_type' => 'const char *',
    'name' => 'ap_psignature',
    'args' => [
      {
        'type' => 'const char *',
        'name' => 'prefix'
      },
      {
        'type' => 'request_rec *',
        'name' => 'r'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'ap_pstr2_alnum',
    'args' => [
      {
        'type' => 'apr_pool_t *',
        'name' => 'p'
      },
      {
        'type' => 'const char *',
        'name' => 'src'
      },
      {
        'type' => 'const char **',
        'name' => 'dest'
      }
    ]
  },
  {
    'return_type' => 'void',
    'name' => 'ap_random_insecure_bytes',
    'args' => [
      {
        'type' => 'void *',
        'name' => 'buf'
      },
      {
        'type' => 'apr_size_t',
        'name' => 'size'
      }
    ]
  },
  {
    'return_type' => 'void',
    'name' => 'ap_random_parent_after_fork',
    'args' => []
  },
  {
    'return_type' => 'apr_uint32_t',
    'name' => 'ap_random_pick',
    'args' => [
      {
        'type' => 'apr_uint32_t',
        'name' => 'min'
      },
      {
        'type' => 'apr_uint32_t',
        'name' => 'max'
      }
    ]
  },
  {
    'return_type' => 'apr_time_t',
    'name' => 'ap_rationalize_mtime',
    'args' => [
      {
        'type' => 'request_rec *',
        'name' => 'r'
      },
      {
        'type' => 'apr_time_t',
        'name' => 'mtime'
      }
    ]
  },
  {
    'return_type' => 'server_rec *',
    'name' => 'ap_read_config',
    'args' => [
      {
        'type' => 'process_rec *',
        'name' => 'process'
      },
      {
        'type' => 'apr_pool_t *',
        'name' => 'temp_pool'
      },
      {
        'type' => 'const char *',
        'name' => 'config_name'
      },
      {
        'type' => 'ap_directive_t **',
        'name' => 'conftree'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'ap_read_pid',
    'args' => [
      {
        'type' => 'apr_pool_t *',
        'name' => 'p'
      },
      {
        'type' => 'const char *',
        'name' => 'filename'
      },
      {
        'type' => 'pid_t *',
        'name' => 'mypid'
      }
    ]
  },
  {
    'return_type' => 'request_rec *',
    'name' => 'ap_read_request',
    'args' => [
      {
        'type' => 'conn_rec *',
        'name' => 'c'
      }
    ]
  },
  {
    'return_type' => 'void *',
    'name' => 'ap_realloc',
    'args' => [
      {
        'type' => 'void *',
        'name' => 'ptr'
      },
      {
        'type' => 'size_t',
        'name' => 'size'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'ap_recent_ctime',
    'args' => [
      {
        'type' => 'char *',
        'name' => 'date_str'
      },
      {
        'type' => 'apr_time_t',
        'name' => 't'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'ap_recent_ctime_ex',
    'args' => [
      {
        'type' => 'char *',
        'name' => 'date_str'
      },
      {
        'type' => 'apr_time_t',
        'name' => 't'
      },
      {
        'type' => 'int',
        'name' => 'option'
      },
      {
        'type' => 'int *',
        'name' => 'len'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'ap_recent_rfc822_date',
    'args' => [
      {
        'type' => 'char *',
        'name' => 'date_str'
      },
      {
        'type' => 'apr_time_t',
        'name' => 't'
      }
    ]
  },
  {
    'return_type' => 'void',
    'name' => 'ap_reclaim_child_processes',
    'args' => [
      {
        'type' => 'int',
        'name' => 'terminate'
      },
      {
        'type' => 'ap_reclaim_callback_fn_t *',
        'name' => 'mpm_callback'
      }
    ]
  },
  {
    'return_type' => 'int',
    'name' => 'ap_regcomp',
    'args' => [
      {
        'type' => 'ap_regex_t *',
        'name' => 'preg'
      },
      {
        'type' => 'const char *',
        'name' => 'regex'
      },
      {
        'type' => 'int',
        'name' => 'cflags'
      }
    ]
  },
  {
    'return_type' => 'apr_size_t',
    'name' => 'ap_regerror',
    'args' => [
      {
        'type' => 'int',
        'name' => 'errcode'
      },
      {
        'type' => 'const ap_regex_t *',
        'name' => 'preg'
      },
      {
        'type' => 'char *',
        'name' => 'errbuf'
      },
      {
        'type' => 'apr_size_t',
        'name' => 'errbuf_size'
      }
    ]
  },
  {
    'return_type' => 'int',
    'name' => 'ap_regexec',
    'args' => [
      {
        'type' => 'const ap_regex_t *',
        'name' => 'preg'
      },
      {
        'type' => 'const char *',
        'name' => 'string'
      },
      {
        'type' => 'apr_size_t',
        'name' => 'nmatch'
      },
      {
        'type' => 'ap_regmatch_t *',
        'name' => 'pmatch'
      },
      {
        'type' => 'int',
        'name' => 'eflags'
      }
    ]
  },
  {
    'return_type' => 'int',
    'name' => 'ap_regexec_len',
    'args' => [
      {
        'type' => 'const ap_regex_t *',
        'name' => 'preg'
      },
      {
        'type' => 'const char *',
        'name' => 'buff'
      },
      {
        'type' => 'apr_size_t',
        'name' => 'len'
      },
      {
        'type' => 'apr_size_t',
        'name' => 'nmatch'
      },
      {
        'type' => 'ap_regmatch_t *',
        'name' => 'pmatch'
      },
      {
        'type' => 'int',
        'name' => 'eflags'
      }
    ]
  },
  {
    'return_type' => 'void',
    'name' => 'ap_regfree',
    'args' => [
      {
        'type' => 'ap_regex_t *',
        'name' => 'preg'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'ap_register_auth_provider',
    'args' => [
      {
        'type' => 'apr_pool_t *',
        'name' => 'pool'
      },
      {
        'type' => 'const char *',
        'name' => 'provider_group'
      },
      {
        'type' => 'const char *',
        'name' => 'provider_name'
      },
      {
        'type' => 'const char *',
        'name' => 'provider_version'
      },
      {
        'type' => 'const void *',
        'name' => 'provider'
      },
      {
        'type' => 'int',
        'name' => 'type'
      }
    ]
  },
  {
    'return_type' => 'void',
    'name' => 'ap_register_config_hooks',
    'args' => [
      {
        'type' => 'apr_pool_t *',
        'name' => 'p'
      }
    ]
  },
  {
    'return_type' => 'void',
    'name' => 'ap_register_errorlog_handler',
    'args' => [
      {
        'type' => 'apr_pool_t *',
        'name' => 'p'
      },
      {
        'type' => 'char *',
        'name' => 'tag'
      },
      {
        'type' => 'ap_errorlog_handler_fn_t *',
        'name' => 'handler'
      },
      {
        'type' => 'int',
        'name' => 'flags'
      }
    ]
  },
  {
    'return_type' => 'void',
    'name' => 'ap_register_extra_mpm_process',
    'args' => [
      {
        'type' => 'pid_t',
        'name' => 'pid'
      },
      {
        'type' => 'ap_generation_t',
        'name' => 'gen'
      }
    ]
  },
  {
    'return_type' => 'void',
    'name' => 'ap_register_hooks',
    'args' => [
      {
        'type' => 'module *',
        'name' => 'm'
      },
      {
        'type' => 'apr_pool_t *',
        'name' => 'p'
      }
    ]
  },
  {
    'return_type' => 'ap_filter_rec_t *',
    'name' => 'ap_register_input_filter',
    'args' => [
      {
        'type' => 'const char *',
        'name' => 'name'
      },
      {
        'type' => 'ap_in_filter_func',
        'name' => 'filter_func'
      },
      {
        'type' => 'ap_init_filter_func',
        'name' => 'filter_init'
      },
      {
        'type' => 'ap_filter_type',
        'name' => 'ftype'
      }
    ]
  },
  {
    'return_type' => 'void',
    'name' => 'ap_register_log_hooks',
    'args' => [
      {
        'type' => 'apr_pool_t *',
        'name' => 'p'
      }
    ]
  },
  {
    'return_type' => 'ap_filter_rec_t *',
    'name' => 'ap_register_output_filter',
    'args' => [
      {
        'type' => 'const char *',
        'name' => 'name'
      },
      {
        'type' => 'ap_out_filter_func',
        'name' => 'filter_func'
      },
      {
        'type' => 'ap_init_filter_func',
        'name' => 'filter_init'
      },
      {
        'type' => 'ap_filter_type',
        'name' => 'ftype'
      }
    ]
  },
  {
    'return_type' => 'ap_filter_rec_t *',
    'name' => 'ap_register_output_filter_protocol',
    'args' => [
      {
        'type' => 'const char *',
        'name' => 'name'
      },
      {
        'type' => 'ap_out_filter_func',
        'name' => 'filter_func'
      },
      {
        'type' => 'ap_init_filter_func',
        'name' => 'filter_init'
      },
      {
        'type' => 'ap_filter_type',
        'name' => 'ftype'
      },
      {
        'type' => 'unsigned int',
        'name' => 'proto_flags'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'ap_register_provider',
    'args' => [
      {
        'type' => 'apr_pool_t *',
        'name' => 'pool'
      },
      {
        'type' => 'const char *',
        'name' => 'provider_group'
      },
      {
        'type' => 'const char *',
        'name' => 'provider_name'
      },
      {
        'type' => 'const char *',
        'name' => 'provider_version'
      },
      {
        'type' => 'const void *',
        'name' => 'provider'
      }
    ]
  },
  {
    'return_type' => 'apr_size_t',
    'name' => 'ap_register_request_note',
    'args' => []
  },
  {
    'return_type' => 'void',
    'name' => 'ap_relieve_child_processes',
    'args' => [
      {
        'type' => 'ap_reclaim_callback_fn_t *',
        'name' => 'mpm_callback'
      }
    ]
  },
  {
    'return_type' => 'void',
    'name' => 'ap_remove_input_filter',
    'args' => [
      {
        'type' => 'ap_filter_t *',
        'name' => 'f'
      }
    ]
  },
  {
    'return_type' => 'void',
    'name' => 'ap_remove_loaded_module',
    'args' => [
      {
        'type' => 'module *',
        'name' => 'mod'
      }
    ]
  },
  {
    'return_type' => 'void',
    'name' => 'ap_remove_module',
    'args' => [
      {
        'type' => 'module *',
        'name' => 'm'
      }
    ]
  },
  {
    'return_type' => 'void',
    'name' => 'ap_remove_output_filter',
    'args' => [
      {
        'type' => 'ap_filter_t *',
        'name' => 'f'
      }
    ]
  },
  {
    'return_type' => 'void',
    'name' => 'ap_remove_pid',
    'args' => [
      {
        'type' => 'apr_pool_t *',
        'name' => 'p'
      },
      {
        'type' => 'const char *',
        'name' => 'fname'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'ap_reopen_scoreboard',
    'args' => [
      {
        'type' => 'apr_pool_t *',
        'name' => 'p'
      },
      {
        'type' => 'apr_shm_t **',
        'name' => 'shm'
      },
      {
        'type' => 'int',
        'name' => 'detached'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'ap_replace_stderr_log',
    'args' => [
      {
        'type' => 'apr_pool_t *',
        'name' => 'p'
      },
      {
        'type' => 'const char *',
        'name' => 'file'
      }
    ]
  },
  {
    'return_type' => 'int',
    'name' => 'ap_request_has_body',
    'args' => [
      {
        'type' => 'request_rec *',
        'name' => 'r'
      }
    ]
  },
  {
    'return_type' => 'void',
    'name' => 'ap_reserve_module_slots',
    'args' => [
      {
        'type' => 'int',
        'name' => 'count'
      }
    ]
  },
  {
    'return_type' => 'void',
    'name' => 'ap_reserve_module_slots_directive',
    'args' => [
      {
        'type' => 'const char *',
        'name' => 'directive'
      }
    ]
  },
  {
    'return_type' => 'void',
    'name' => 'ap_reset_module_loglevels',
    'args' => [
      {
        'type' => 'struct ap_logconf *',
        'name' => 'l'
      },
      {
        'type' => 'int',
        'name' => 'val'
      }
    ]
  },
  {
    'return_type' => 'const char *',
    'name' => 'ap_resolve_env',
    'args' => [
      {
        'type' => 'apr_pool_t *',
        'name' => 'p'
      },
      {
        'type' => 'const char *',
        'name' => 'word'
      }
    ]
  },
  {
    'return_type' => 'char *',
    'name' => 'ap_response_code_string',
    'args' => [
      {
        'type' => 'request_rec *',
        'name' => 'r'
      },
      {
        'type' => 'int',
        'name' => 'error_index'
      }
    ]
  },
  {
    'return_type' => 'void *',
    'name' => 'ap_retained_data_create',
    'args' => [
      {
        'type' => 'const char *',
        'name' => 'key'
      },
      {
        'type' => 'apr_size_t',
        'name' => 'size'
      }
    ]
  },
  {
    'return_type' => 'void *',
    'name' => 'ap_retained_data_get',
    'args' => [
      {
        'type' => 'const char *',
        'name' => 'key'
      }
    ]
  },
  {
    'return_type' => 'int',
    'name' => 'ap_rflush',
    'args' => [
      {
        'type' => 'request_rec *',
        'name' => 'r'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'ap_rgetline_core',
    'args' => [
      {
        'type' => 'char **',
        'name' => 's'
      },
      {
        'type' => 'apr_size_t',
        'name' => 'n'
      },
      {
        'type' => 'apr_size_t *',
        'name' => 'read'
      },
      {
        'type' => 'request_rec *',
        'name' => 'r'
      },
      {
        'type' => 'int',
        'name' => 'fold'
      },
      {
        'type' => 'apr_bucket_brigade *',
        'name' => 'bb'
      }
    ]
  },
  {
    'return_type' => 'int',
    'name' => 'ap_rind',
    'args' => [
      {
        'type' => 'const char *',
        'name' => 'str'
      },
      {
        'type' => 'char',
        'name' => 'c'
      }
    ]
  },
  {
    'return_type' => 'int',
    'name' => 'ap_rprintf',
    'args' => [
      {
        'type' => 'request_rec *',
        'name' => 'r'
      },
      {
        'type' => 'const char *',
        'name' => 'fmt'
      },
      {
        'type' => '...',
        'name' => 'arg2'
      }
    ]
  },
  {
    'return_type' => 'int',
    'name' => 'ap_rputc',
    'args' => [
      {
        'type' => 'int',
        'name' => 'c'
      },
      {
        'type' => 'request_rec *',
        'name' => 'r'
      }
    ]
  },
  {
    'return_type' => 'int',
    'name' => 'ap_rputs',
    'attr' => [
      'static',
      '__inline__'
    ],
    'args' => [
      {
        'type' => 'const char *',
        'name' => 'str'
      },
      {
        'type' => 'request_rec *',
        'name' => 'r'
      }
    ]
  },
  {
    'return_type' => 'int',
    'name' => 'ap_run_access_checker',
    'args' => [
      {
        'type' => 'request_rec *',
        'name' => 'r'
      }
    ]
  },
  {
    'return_type' => 'int',
    'name' => 'ap_run_access_checker_ex',
    'args' => [
      {
        'type' => 'request_rec *',
        'name' => 'r'
      }
    ]
  },
  {
    'return_type' => 'int',
    'name' => 'ap_run_auth_checker',
    'args' => [
      {
        'type' => 'request_rec *',
        'name' => 'r'
      }
    ]
  },
  {
    'return_type' => 'int',
    'name' => 'ap_run_check_config',
    'args' => [
      {
        'type' => 'apr_pool_t *',
        'name' => 'pconf'
      },
      {
        'type' => 'apr_pool_t *',
        'name' => 'plog'
      },
      {
        'type' => 'apr_pool_t *',
        'name' => 'ptemp'
      },
      {
        'type' => 'server_rec *',
        'name' => 's'
      }
    ]
  },
  {
    'return_type' => 'int',
    'name' => 'ap_run_check_user_id',
    'args' => [
      {
        'type' => 'request_rec *',
        'name' => 'r'
      }
    ]
  },
  {
    'return_type' => 'void',
    'name' => 'ap_run_child_init',
    'args' => [
      {
        'type' => 'apr_pool_t *',
        'name' => 'pchild'
      },
      {
        'type' => 'server_rec *',
        'name' => 's'
      }
    ]
  },
  {
    'return_type' => 'void',
    'name' => 'ap_run_child_status',
    'args' => [
      {
        'type' => 'server_rec *',
        'name' => 's'
      },
      {
        'type' => 'pid_t',
        'name' => 'pid'
      },
      {
        'type' => 'ap_generation_t',
        'name' => 'gen'
      },
      {
        'type' => 'int',
        'name' => 'slot'
      },
      {
        'type' => 'mpm_child_status',
        'name' => 'state'
      }
    ]
  },
  {
    'return_type' => 'conn_rec *',
    'name' => 'ap_run_create_connection',
    'args' => [
      {
        'type' => 'apr_pool_t *',
        'name' => 'p'
      },
      {
        'type' => 'server_rec *',
        'name' => 'server'
      },
      {
        'type' => 'apr_socket_t *',
        'name' => 'csd'
      },
      {
        'type' => 'long',
        'name' => 'conn_id'
      },
      {
        'type' => 'void *',
        'name' => 'sbh'
      },
      {
        'type' => 'apr_bucket_alloc_t *',
        'name' => 'alloc'
      }
    ]
  },
  {
    'return_type' => 'int',
    'name' => 'ap_run_create_request',
    'args' => [
      {
        'type' => 'request_rec *',
        'name' => 'r'
      }
    ]
  },
  {
    'return_type' => 'apr_port_t',
    'name' => 'ap_run_default_port',
    'args' => [
      {
        'type' => 'const request_rec *',
        'name' => 'r'
      }
    ]
  },
  {
    'return_type' => 'int',
    'name' => 'ap_run_drop_privileges',
    'args' => [
      {
        'type' => 'apr_pool_t *',
        'name' => 'pchild'
      },
      {
        'type' => 'server_rec *',
        'name' => 's'
      }
    ]
  },
  {
    'return_type' => 'void',
    'name' => 'ap_run_end_generation',
    'args' => [
      {
        'type' => 'server_rec *',
        'name' => 's'
      },
      {
        'type' => 'ap_generation_t',
        'name' => 'gen'
      }
    ]
  },
  {
    'return_type' => 'void',
    'name' => 'ap_run_error_log',
    'args' => [
      {
        'type' => 'const ap_errorlog_info *',
        'name' => 'info'
      },
      {
        'type' => 'const char *',
        'name' => 'errstr'
      }
    ]
  },
  {
    'return_type' => 'int',
    'name' => 'ap_run_expr_lookup',
    'args' => [
      {
        'type' => 'ap_expr_lookup_parms *',
        'name' => 'parms'
      }
    ]
  },
  {
    'return_type' => 'int',
    'name' => 'ap_run_fixups',
    'args' => [
      {
        'type' => 'request_rec *',
        'name' => 'r'
      }
    ]
  },
  {
    'return_type' => 'int',
    'name' => 'ap_run_generate_log_id',
    'args' => [
      {
        'type' => 'const conn_rec *',
        'name' => 'c'
      },
      {
        'type' => 'const request_rec *',
        'name' => 'r'
      },
      {
        'type' => 'const char **',
        'name' => 'id'
      }
    ]
  },
  {
    'return_type' => 'int',
    'name' => 'ap_run_get_mgmt_items',
    'args' => [
      {
        'type' => 'apr_pool_t *',
        'name' => 'p'
      },
      {
        'type' => 'const char *',
        'name' => 'val'
      },
      {
        'type' => 'apr_hash_t *',
        'name' => 'ht'
      }
    ]
  },
  {
    'return_type' => 'ap_unix_identity_t *',
    'name' => 'ap_run_get_suexec_identity',
    'args' => [
      {
        'type' => 'const request_rec *',
        'name' => 'r'
      }
    ]
  },
  {
    'return_type' => 'int',
    'name' => 'ap_run_handler',
    'args' => [
      {
        'type' => 'request_rec *',
        'name' => 'r'
      }
    ]
  },
  {
    'return_type' => 'int',
    'name' => 'ap_run_header_parser',
    'args' => [
      {
        'type' => 'request_rec *',
        'name' => 'r'
      }
    ]
  },
  {
    'return_type' => 'const char *',
    'name' => 'ap_run_http_scheme',
    'args' => [
      {
        'type' => 'const request_rec *',
        'name' => 'r'
      }
    ]
  },
  {
    'return_type' => 'void',
    'name' => 'ap_run_insert_error_filter',
    'args' => [
      {
        'type' => 'request_rec *',
        'name' => 'r'
      }
    ]
  },
  {
    'return_type' => 'void',
    'name' => 'ap_run_insert_filter',
    'args' => [
      {
        'type' => 'request_rec *',
        'name' => 'r'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'ap_run_insert_network_bucket',
    'args' => [
      {
        'type' => 'conn_rec *',
        'name' => 'c'
      },
      {
        'type' => 'apr_bucket_brigade *',
        'name' => 'bb'
      },
      {
        'type' => 'apr_socket_t *',
        'name' => 'socket'
      }
    ]
  },
  {
    'return_type' => 'int',
    'name' => 'ap_run_log_transaction',
    'args' => [
      {
        'type' => 'request_rec *',
        'name' => 'r'
      }
    ]
  },
  {
    'return_type' => 'int',
    'name' => 'ap_run_map_to_storage',
    'args' => [
      {
        'type' => 'request_rec *',
        'name' => 'r'
      }
    ]
  },
  {
    'return_type' => 'int',
    'name' => 'ap_run_monitor',
    'args' => [
      {
        'type' => 'apr_pool_t *',
        'name' => 'p'
      },
      {
        'type' => 'server_rec *',
        'name' => 's'
      }
    ]
  },
  {
    'return_type' => 'int',
    'name' => 'ap_run_mpm',
    'args' => [
      {
        'type' => 'apr_pool_t *',
        'name' => 'pconf'
      },
      {
        'type' => 'apr_pool_t *',
        'name' => 'plog'
      },
      {
        'type' => 'server_rec *',
        'name' => 'server_conf'
      }
    ]
  },
  {
    'return_type' => 'const char *',
    'name' => 'ap_run_mpm_get_name',
    'args' => []
  },
  {
    'return_type' => 'int',
    'name' => 'ap_run_mpm_query',
    'args' => [
      {
        'type' => 'int',
        'name' => 'query_code'
      },
      {
        'type' => 'int *',
        'name' => 'result'
      },
      {
        'type' => 'apr_status_t *',
        'name' => 'rv'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'ap_run_mpm_register_timed_callback',
    'args' => [
      {
        'type' => 'apr_time_t',
        'name' => 't'
      },
      {
        'type' => 'ap_mpm_callback_fn_t *',
        'name' => 'cbfn'
      },
      {
        'type' => 'void *',
        'name' => 'baton'
      }
    ]
  },
  {
    'return_type' => 'int',
    'name' => 'ap_run_note_auth_failure',
    'args' => [
      {
        'type' => 'request_rec *',
        'name' => 'r'
      },
      {
        'type' => 'const char *',
        'name' => 'auth_type'
      }
    ]
  },
  {
    'return_type' => 'int',
    'name' => 'ap_run_open_logs',
    'args' => [
      {
        'type' => 'apr_pool_t *',
        'name' => 'pconf'
      },
      {
        'type' => 'apr_pool_t *',
        'name' => 'plog'
      },
      {
        'type' => 'apr_pool_t *',
        'name' => 'ptemp'
      },
      {
        'type' => 'server_rec *',
        'name' => 's'
      }
    ]
  },
  {
    'return_type' => 'void',
    'name' => 'ap_run_optional_fn_retrieve',
    'args' => []
  },
  {
    'return_type' => 'int',
    'name' => 'ap_run_post_config',
    'args' => [
      {
        'type' => 'apr_pool_t *',
        'name' => 'pconf'
      },
      {
        'type' => 'apr_pool_t *',
        'name' => 'plog'
      },
      {
        'type' => 'apr_pool_t *',
        'name' => 'ptemp'
      },
      {
        'type' => 'server_rec *',
        'name' => 's'
      }
    ]
  },
  {
    'return_type' => 'int',
    'name' => 'ap_run_post_read_request',
    'args' => [
      {
        'type' => 'request_rec *',
        'name' => 'r'
      }
    ]
  },
  {
    'return_type' => 'int',
    'name' => 'ap_run_pre_config',
    'args' => [
      {
        'type' => 'apr_pool_t *',
        'name' => 'pconf'
      },
      {
        'type' => 'apr_pool_t *',
        'name' => 'plog'
      },
      {
        'type' => 'apr_pool_t *',
        'name' => 'ptemp'
      }
    ]
  },
  {
    'return_type' => 'int',
    'name' => 'ap_run_pre_connection',
    'args' => [
      {
        'type' => 'conn_rec *',
        'name' => 'c'
      },
      {
        'type' => 'void *',
        'name' => 'csd'
      }
    ]
  },
  {
    'return_type' => 'int',
    'name' => 'ap_run_pre_mpm',
    'args' => [
      {
        'type' => 'apr_pool_t *',
        'name' => 'p'
      },
      {
        'type' => 'ap_scoreboard_e',
        'name' => 'sb_type'
      }
    ]
  },
  {
    'return_type' => 'void',
    'name' => 'ap_run_pre_read_request',
    'args' => [
      {
        'type' => 'request_rec *',
        'name' => 'r'
      },
      {
        'type' => 'conn_rec *',
        'name' => 'c'
      }
    ]
  },
  {
    'return_type' => 'int',
    'name' => 'ap_run_process_connection',
    'args' => [
      {
        'type' => 'conn_rec *',
        'name' => 'c'
      }
    ]
  },
  {
    'return_type' => 'int',
    'name' => 'ap_run_quick_handler',
    'args' => [
      {
        'type' => 'request_rec *',
        'name' => 'r'
      },
      {
        'type' => 'int',
        'name' => 'lookup_uri'
      }
    ]
  },
  {
    'return_type' => 'void',
    'name' => 'ap_run_rewrite_args',
    'args' => [
      {
        'type' => 'process_rec *',
        'name' => 'process'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'ap_run_session_decode',
    'args' => [
      {
        'type' => 'request_rec *',
        'name' => 'r'
      },
      {
        'type' => 'session_rec *',
        'name' => 'z'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'ap_run_session_encode',
    'args' => [
      {
        'type' => 'request_rec *',
        'name' => 'r'
      },
      {
        'type' => 'session_rec *',
        'name' => 'z'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'ap_run_session_load',
    'args' => [
      {
        'type' => 'request_rec *',
        'name' => 'r'
      },
      {
        'type' => 'session_rec **',
        'name' => 'z'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'ap_run_session_save',
    'args' => [
      {
        'type' => 'request_rec *',
        'name' => 'r'
      },
      {
        'type' => 'session_rec *',
        'name' => 'z'
      }
    ]
  },
  {
    'return_type' => 'int',
    'name' => 'ap_run_status_hook',
    'args' => [
      {
        'type' => 'request_rec *',
        'name' => 'r'
      },
      {
        'type' => 'int',
        'name' => 'flags'
      }
    ]
  },
  {
    'return_type' => 'int',
    'name' => 'ap_run_sub_req',
    'args' => [
      {
        'type' => 'request_rec *',
        'name' => 'r'
      }
    ]
  },
  {
    'return_type' => 'void',
    'name' => 'ap_run_test_config',
    'args' => [
      {
        'type' => 'apr_pool_t *',
        'name' => 'pconf'
      },
      {
        'type' => 'server_rec *',
        'name' => 's'
      }
    ]
  },
  {
    'return_type' => 'int',
    'name' => 'ap_run_translate_name',
    'args' => [
      {
        'type' => 'request_rec *',
        'name' => 'r'
      }
    ]
  },
  {
    'return_type' => 'int',
    'name' => 'ap_run_type_checker',
    'args' => [
      {
        'type' => 'request_rec *',
        'name' => 'r'
      }
    ]
  },
  {
    'return_type' => 'int',
    'name' => 'ap_run_watchdog_exit',
    'args' => [
      {
        'type' => 'server_rec *',
        'name' => 's'
      },
      {
        'type' => 'const char *',
        'name' => 'name'
      },
      {
        'type' => 'apr_pool_t *',
        'name' => 'pool'
      }
    ]
  },
  {
    'return_type' => 'int',
    'name' => 'ap_run_watchdog_init',
    'args' => [
      {
        'type' => 'server_rec *',
        'name' => 's'
      },
      {
        'type' => 'const char *',
        'name' => 'name'
      },
      {
        'type' => 'apr_pool_t *',
        'name' => 'pool'
      }
    ]
  },
  {
    'return_type' => 'int',
    'name' => 'ap_run_watchdog_need',
    'args' => [
      {
        'type' => 'server_rec *',
        'name' => 's'
      },
      {
        'type' => 'const char *',
        'name' => 'name'
      },
      {
        'type' => 'int',
        'name' => 'parent'
      },
      {
        'type' => 'int',
        'name' => 'singleton'
      }
    ]
  },
  {
    'return_type' => 'int',
    'name' => 'ap_run_watchdog_step',
    'args' => [
      {
        'type' => 'server_rec *',
        'name' => 's'
      },
      {
        'type' => 'const char *',
        'name' => 'name'
      },
      {
        'type' => 'apr_pool_t *',
        'name' => 'pool'
      }
    ]
  },
  {
    'return_type' => 'char *',
    'name' => 'ap_runtime_dir_relative',
    'args' => [
      {
        'type' => 'apr_pool_t *',
        'name' => 'p'
      },
      {
        'type' => 'const char *',
        'name' => 'fname'
      }
    ]
  },
  {
    'return_type' => 'int',
    'name' => 'ap_rvputs',
    'args' => [
      {
        'type' => 'request_rec *',
        'name' => 'r'
      },
      {
        'type' => '...',
        'name' => 'arg1'
      }
    ]
  },
  {
    'return_type' => 'int',
    'name' => 'ap_rwrite',
    'args' => [
      {
        'type' => 'const void *',
        'name' => 'buf'
      },
      {
        'type' => 'int',
        'name' => 'nbyte'
      },
      {
        'type' => 'request_rec *',
        'name' => 'r'
      }
    ]
  },
  {
    'return_type' => 'ap_rxplus_t*',
    'name' => 'ap_rxplus_compile',
    'args' => [
      {
        'type' => 'apr_pool_t *',
        'name' => 'pool'
      },
      {
        'type' => 'const char *',
        'name' => 'pattern'
      }
    ]
  },
  {
    'return_type' => 'int',
    'name' => 'ap_rxplus_exec',
    'args' => [
      {
        'type' => 'apr_pool_t *',
        'name' => 'pool'
      },
      {
        'type' => 'ap_rxplus_t *',
        'name' => 'rx'
      },
      {
        'type' => 'const char *',
        'name' => 'pattern'
      },
      {
        'type' => 'char **',
        'name' => 'newpattern'
      }
    ]
  },
  {
    'return_type' => 'void',
    'name' => 'ap_rxplus_match',
    'args' => [
      {
        'type' => 'ap_rxplus_t *',
        'name' => 'rx'
      },
      {
        'type' => 'int',
        'name' => 'n'
      },
      {
        'type' => 'int *',
        'name' => 'len'
      },
      {
        'type' => 'const char **',
        'name' => 'match'
      }
    ]
  },
  {
    'return_type' => 'char*',
    'name' => 'ap_rxplus_pmatch',
    'args' => [
      {
        'type' => 'apr_pool_t *',
        'name' => 'pool'
      },
      {
        'type' => 'ap_rxplus_t *',
        'name' => 'rx'
      },
      {
        'type' => 'int',
        'name' => 'n'
      }
    ]
  },
  {
    'return_type' => 'int',
    'name' => 'ap_satisfies',
    'args' => [
      {
        'type' => 'request_rec *',
        'name' => 'r'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'ap_save_brigade',
    'args' => [
      {
        'type' => 'ap_filter_t *',
        'name' => 'f'
      },
      {
        'type' => 'apr_bucket_brigade **',
        'name' => 'save_to'
      },
      {
        'type' => 'apr_bucket_brigade **',
        'name' => 'b'
      },
      {
        'type' => 'apr_pool_t *',
        'name' => 'p'
      }
    ]
  },
  {
    'return_type' => 'int',
    'name' => 'ap_scan_script_header_err',
    'args' => [
      {
        'type' => 'request_rec *',
        'name' => 'r'
      },
      {
        'type' => 'apr_file_t *',
        'name' => 'f'
      },
      {
        'type' => 'char *',
        'name' => 'buffer'
      }
    ]
  },
  {
    'return_type' => 'int',
    'name' => 'ap_scan_script_header_err_brigade',
    'args' => [
      {
        'type' => 'request_rec *',
        'name' => 'r'
      },
      {
        'type' => 'apr_bucket_brigade *',
        'name' => 'bb'
      },
      {
        'type' => 'char *',
        'name' => 'buffer'
      }
    ]
  },
  {
    'return_type' => 'int',
    'name' => 'ap_scan_script_header_err_brigade_ex',
    'args' => [
      {
        'type' => 'request_rec *',
        'name' => 'r'
      },
      {
        'type' => 'apr_bucket_brigade *',
        'name' => 'bb'
      },
      {
        'type' => 'char *',
        'name' => 'buffer'
      },
      {
        'type' => 'int',
        'name' => 'module_index'
      }
    ]
  },
  {
    'return_type' => 'int',
    'name' => 'ap_scan_script_header_err_core',
    'args' => [
      {
        'type' => 'request_rec *',
        'name' => 'r'
      },
      {
        'type' => 'char *',
        'name' => 'buffer'
      },
      {
        'type' => 'int (*getsfunc) (char *, int, void *)',
        'name' => 'arg2'
      },
      {
        'type' => 'void *',
        'name' => 'getsfunc_data'
      }
    ]
  },
  {
    'return_type' => 'int',
    'name' => 'ap_scan_script_header_err_core_ex',
    'args' => [
      {
        'type' => 'request_rec *',
        'name' => 'r'
      },
      {
        'type' => 'char *',
        'name' => 'buffer'
      },
      {
        'type' => 'int (*getsfunc) (char *, int, void *)',
        'name' => 'arg2'
      },
      {
        'type' => 'void *',
        'name' => 'getsfunc_data'
      },
      {
        'type' => 'int',
        'name' => 'module_index'
      }
    ]
  },
  {
    'return_type' => 'int',
    'name' => 'ap_scan_script_header_err_ex',
    'args' => [
      {
        'type' => 'request_rec *',
        'name' => 'r'
      },
      {
        'type' => 'apr_file_t *',
        'name' => 'f'
      },
      {
        'type' => 'char *',
        'name' => 'buffer'
      },
      {
        'type' => 'int',
        'name' => 'module_index'
      }
    ]
  },
  {
    'return_type' => 'int',
    'name' => 'ap_scan_script_header_err_strs',
    'args' => [
      {
        'type' => 'request_rec *',
        'name' => 'r'
      },
      {
        'type' => 'char *',
        'name' => 'buffer'
      },
      {
        'type' => 'const char **',
        'name' => 'termch'
      },
      {
        'type' => 'int *',
        'name' => 'termarg'
      },
      {
        'type' => '...',
        'name' => 'arg4'
      }
    ]
  },
  {
    'return_type' => 'int',
    'name' => 'ap_scan_script_header_err_strs_ex',
    'args' => [
      {
        'type' => 'request_rec *',
        'name' => 'r'
      },
      {
        'type' => 'char *',
        'name' => 'buffer'
      },
      {
        'type' => 'int',
        'name' => 'module_index'
      },
      {
        'type' => 'const char **',
        'name' => 'termch'
      },
      {
        'type' => 'int *',
        'name' => 'termarg'
      },
      {
        'type' => '...',
        'name' => 'arg5'
      }
    ]
  },
  {
    'return_type' => 'void',
    'name' => 'ap_send_error_response',
    'args' => [
      {
        'type' => 'request_rec *',
        'name' => 'r'
      },
      {
        'type' => 'int',
        'name' => 'recursive_error'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'ap_send_fd',
    'args' => [
      {
        'type' => 'apr_file_t *',
        'name' => 'fd'
      },
      {
        'type' => 'request_rec *',
        'name' => 'r'
      },
      {
        'type' => 'apr_off_t',
        'name' => 'offset'
      },
      {
        'type' => 'apr_size_t',
        'name' => 'length'
      },
      {
        'type' => 'apr_size_t *',
        'name' => 'nbytes'
      }
    ]
  },
  {
    'return_type' => 'int',
    'name' => 'ap_send_http_options',
    'args' => [
      {
        'type' => 'request_rec *',
        'name' => 'r'
      }
    ]
  },
  {
    'return_type' => 'int',
    'name' => 'ap_send_http_trace',
    'args' => [
      {
        'type' => 'request_rec *',
        'name' => 'r'
      }
    ]
  },
  {
    'return_type' => 'void',
    'name' => 'ap_send_interim_response',
    'args' => [
      {
        'type' => 'request_rec *',
        'name' => 'r'
      },
      {
        'type' => 'int',
        'name' => 'send_headers'
      }
    ]
  },
  {
    'return_type' => 'apr_size_t',
    'name' => 'ap_send_mmap',
    'args' => [
      {
        'type' => 'apr_mmap_t *',
        'name' => 'mm'
      },
      {
        'type' => 'request_rec *',
        'name' => 'r'
      },
      {
        'type' => 'apr_size_t',
        'name' => 'offset'
      },
      {
        'type' => 'apr_size_t',
        'name' => 'length'
      }
    ]
  },
  {
    'return_type' => 'char *',
    'name' => 'ap_server_root_relative',
    'args' => [
      {
        'type' => 'apr_pool_t *',
        'name' => 'p'
      },
      {
        'type' => 'const char *',
        'name' => 'fname'
      }
    ]
  },
  {
    'return_type' => 'void',
    'name' => 'ap_set_accept_ranges',
    'args' => [
      {
        'type' => 'request_rec *',
        'name' => 'r'
      }
    ]
  },
  {
    'return_type' => 'void *',
    'name' => 'ap_set_config_vectors',
    'args' => [
      {
        'type' => 'server_rec *',
        'name' => 'server'
      },
      {
        'type' => 'ap_conf_vector_t *',
        'name' => 'section_vector'
      },
      {
        'type' => 'const char *section',
        'name' => 'arg2'
      },
      {
        'type' => 'module *',
        'name' => 'mod'
      },
      {
        'type' => 'apr_pool_t *',
        'name' => 'pconf'
      }
    ]
  },
  {
    'return_type' => 'void',
    'name' => 'ap_set_content_length',
    'args' => [
      {
        'type' => 'request_rec *',
        'name' => 'r'
      },
      {
        'type' => 'apr_off_t',
        'name' => 'length'
      }
    ]
  },
  {
    'return_type' => 'void',
    'name' => 'ap_set_content_type',
    'args' => [
      {
        'type' => 'request_rec *',
        'name' => 'r'
      },
      {
        'type' => 'const char *',
        'name' => 'ct'
      }
    ]
  },
  {
    'return_type' => 'void',
    'name' => 'ap_set_context_info',
    'args' => [
      {
        'type' => 'request_rec *',
        'name' => 'r'
      },
      {
        'type' => 'const char *',
        'name' => 'prefix'
      },
      {
        'type' => 'const char *',
        'name' => 'document_root'
      }
    ]
  },
  {
    'return_type' => 'void',
    'name' => 'ap_set_core_module_config',
    'args' => [
      {
        'type' => 'ap_conf_vector_t *',
        'name' => 'cv'
      },
      {
        'type' => 'void *',
        'name' => 'val'
      }
    ]
  },
  {
    'return_type' => 'const char *',
    'name' => 'ap_set_deprecated',
    'args' => [
      {
        'type' => 'cmd_parms *',
        'name' => 'cmd'
      },
      {
        'type' => 'void *',
        'name' => 'struct_ptr'
      },
      {
        'type' => 'const char *',
        'name' => 'arg'
      }
    ]
  },
  {
    'return_type' => 'void',
    'name' => 'ap_set_document_root',
    'args' => [
      {
        'type' => 'request_rec *',
        'name' => 'r'
      },
      {
        'type' => 'const char *',
        'name' => 'document_root'
      }
    ]
  },
  {
    'return_type' => 'void',
    'name' => 'ap_set_etag',
    'args' => [
      {
        'type' => 'request_rec *',
        'name' => 'r'
      }
    ]
  },
  {
    'return_type' => 'const char *',
    'name' => 'ap_set_extended_status',
    'args' => [
      {
        'type' => 'cmd_parms *',
        'name' => 'cmd'
      },
      {
        'type' => 'void *',
        'name' => 'dummy'
      },
      {
        'type' => 'int',
        'name' => 'arg'
      }
    ]
  },
  {
    'return_type' => 'const char *',
    'name' => 'ap_set_file_slot',
    'args' => [
      {
        'type' => 'cmd_parms *',
        'name' => 'cmd'
      },
      {
        'type' => 'void *',
        'name' => 'struct_ptr'
      },
      {
        'type' => 'const char *',
        'name' => 'arg'
      }
    ]
  },
  {
    'return_type' => 'const char *',
    'name' => 'ap_set_flag_slot',
    'args' => [
      {
        'type' => 'cmd_parms *',
        'name' => 'cmd'
      },
      {
        'type' => 'void *',
        'name' => 'struct_ptr'
      },
      {
        'type' => 'int',
        'name' => 'arg'
      }
    ]
  },
  {
    'return_type' => 'const char *',
    'name' => 'ap_set_flag_slot_char',
    'args' => [
      {
        'type' => 'cmd_parms *',
        'name' => 'cmd'
      },
      {
        'type' => 'void *',
        'name' => 'struct_ptr'
      },
      {
        'type' => 'int',
        'name' => 'arg'
      }
    ]
  },
  {
    'return_type' => 'const char *',
    'name' => 'ap_set_int_slot',
    'args' => [
      {
        'type' => 'cmd_parms *',
        'name' => 'cmd'
      },
      {
        'type' => 'void *',
        'name' => 'struct_ptr'
      },
      {
        'type' => 'const char *',
        'name' => 'arg'
      }
    ]
  },
  {
    'return_type' => 'int',
    'name' => 'ap_set_keepalive',
    'args' => [
      {
        'type' => 'request_rec *',
        'name' => 'r'
      }
    ]
  },
  {
    'return_type' => 'void',
    'name' => 'ap_set_last_modified',
    'args' => [
      {
        'type' => 'request_rec *',
        'name' => 'r'
      }
    ]
  },
  {
    'return_type' => 'const char *',
    'name' => 'ap_set_listenbacklog',
    'args' => [
      {
        'type' => 'cmd_parms *',
        'name' => 'cmd'
      },
      {
        'type' => 'void *',
        'name' => 'dummy'
      },
      {
        'type' => 'const char *',
        'name' => 'arg'
      }
    ]
  },
  {
    'return_type' => 'const char *',
    'name' => 'ap_set_listener',
    'args' => [
      {
        'type' => 'cmd_parms *',
        'name' => 'cmd'
      },
      {
        'type' => 'void *',
        'name' => 'dummy'
      },
      {
        'type' => 'int',
        'name' => 'argc'
      },
      {
        'type' => 'char *const',
        'name' => 'argv'
      }
    ]
  },
  {
    'return_type' => 'void',
    'name' => 'ap_set_module_config',
    'args' => [
      {
        'type' => 'ap_conf_vector_t *',
        'name' => 'cv'
      },
      {
        'type' => 'const module *',
        'name' => 'm'
      },
      {
        'type' => 'void *',
        'name' => 'val'
      }
    ]
  },
  {
    'return_type' => 'void',
    'name' => 'ap_set_module_loglevel',
    'args' => [
      {
        'type' => 'apr_pool_t *',
        'name' => 'p'
      },
      {
        'type' => 'struct ap_logconf *',
        'name' => 'l'
      },
      {
        'type' => 'int',
        'name' => 'index'
      },
      {
        'type' => 'int',
        'name' => 'level'
      }
    ]
  },
  {
    'return_type' => 'const char *',
    'name' => 'ap_set_mutex',
    'args' => [
      {
        'type' => 'cmd_parms *',
        'name' => 'cmd'
      },
      {
        'type' => 'void *',
        'name' => 'dummy'
      },
      {
        'type' => 'const char *',
        'name' => 'arg'
      }
    ]
  },
  {
    'return_type' => 'const char *',
    'name' => 'ap_set_name_virtual_host',
    'args' => [
      {
        'type' => 'cmd_parms *',
        'name' => 'cmd'
      },
      {
        'type' => 'void *',
        'name' => 'dummy'
      },
      {
        'type' => 'const char *',
        'name' => 'arg'
      }
    ]
  },
  {
    'return_type' => 'const char *',
    'name' => 'ap_set_receive_buffer_size',
    'args' => [
      {
        'type' => 'cmd_parms *',
        'name' => 'cmd'
      },
      {
        'type' => 'void *',
        'name' => 'dummy'
      },
      {
        'type' => 'const char *',
        'name' => 'arg'
      }
    ]
  },
  {
    'return_type' => 'const char *',
    'name' => 'ap_set_reqtail',
    'args' => [
      {
        'type' => 'cmd_parms *',
        'name' => 'cmd'
      },
      {
        'type' => 'void *',
        'name' => 'dummy'
      },
      {
        'type' => 'int',
        'name' => 'arg'
      }
    ]
  },
  {
    'return_type' => 'const char *',
    'name' => 'ap_set_scoreboard',
    'args' => [
      {
        'type' => 'cmd_parms *',
        'name' => 'cmd'
      },
      {
        'type' => 'void *',
        'name' => 'dummy'
      },
      {
        'type' => 'const char *',
        'name' => 'arg'
      }
    ]
  },
  {
    'return_type' => 'const char *',
    'name' => 'ap_set_send_buffer_size',
    'args' => [
      {
        'type' => 'cmd_parms *',
        'name' => 'cmd'
      },
      {
        'type' => 'void *',
        'name' => 'dummy'
      },
      {
        'type' => 'const char *',
        'name' => 'arg'
      }
    ]
  },
  {
    'return_type' => 'void',
    'name' => 'ap_set_server_protocol',
    'args' => [
      {
        'type' => 'server_rec*',
        'name' => 's'
      },
      {
        'type' => 'const char*',
        'name' => 'proto'
      }
    ]
  },
  {
    'return_type' => 'const char *',
    'name' => 'ap_set_string_slot',
    'args' => [
      {
        'type' => 'cmd_parms *',
        'name' => 'cmd'
      },
      {
        'type' => 'void *',
        'name' => 'struct_ptr'
      },
      {
        'type' => 'const char *',
        'name' => 'arg'
      }
    ]
  },
  {
    'return_type' => 'const char *',
    'name' => 'ap_set_string_slot_lower',
    'args' => [
      {
        'type' => 'cmd_parms *',
        'name' => 'cmd'
      },
      {
        'type' => 'void *',
        'name' => 'struct_ptr'
      },
      {
        'type' => 'const char *',
        'name' => 'arg'
      }
    ]
  },
  {
    'return_type' => 'void',
    'name' => 'ap_set_sub_req_protocol',
    'args' => [
      {
        'type' => 'request_rec *',
        'name' => 'rnew'
      },
      {
        'type' => 'const request_rec *',
        'name' => 'r'
      }
    ]
  },
  {
    'return_type' => 'void',
    'name' => 'ap_setup_auth_internal',
    'args' => [
      {
        'type' => 'apr_pool_t *',
        'name' => 'ptemp'
      }
    ]
  },
  {
    'return_type' => 'int',
    'name' => 'ap_setup_client_block',
    'args' => [
      {
        'type' => 'request_rec *',
        'name' => 'r'
      },
      {
        'type' => 'int',
        'name' => 'read_policy'
      }
    ]
  },
  {
    'return_type' => 'int',
    'name' => 'ap_setup_listeners',
    'args' => [
      {
        'type' => 'server_rec *',
        'name' => 's'
      }
    ]
  },
  {
    'return_type' => 'void',
    'name' => 'ap_setup_make_content_type',
    'args' => [
      {
        'type' => 'apr_pool_t *',
        'name' => 'pool'
      }
    ]
  },
  {
    'return_type' => 'const char *',
    'name' => 'ap_setup_prelinked_modules',
    'args' => [
      {
        'type' => 'process_rec *',
        'name' => 'process'
      }
    ]
  },
  {
    'return_type' => 'int',
    'name' => 'ap_should_client_block',
    'args' => [
      {
        'type' => 'request_rec *',
        'name' => 'r'
      }
    ]
  },
  {
    'return_type' => 'void',
    'name' => 'ap_show_directives',
    'args' => []
  },
  {
    'return_type' => 'void',
    'name' => 'ap_show_modules',
    'args' => []
  },
  {
    'return_type' => 'const char *',
    'name' => 'ap_show_mpm',
    'args' => []
  },
  {
    'return_type' => 'int',
    'name' => 'ap_signal_server',
    'args' => [
      {
        'type' => 'int *',
        'name' => 'arg0'
      },
      {
        'type' => 'apr_pool_t *',
        'name' => 'arg1'
      }
    ]
  },
  {
    'return_type' => 'void',
    'name' => 'ap_single_module_configure',
    'args' => [
      {
        'type' => 'apr_pool_t *',
        'name' => 'p'
      },
      {
        'type' => 'server_rec *',
        'name' => 's'
      },
      {
        'type' => 'module *',
        'name' => 'm'
      }
    ]
  },
  {
    'return_type' => 'const char *',
    'name' => 'ap_size_list_item',
    'args' => [
      {
        'type' => 'const char **',
        'name' => 'field'
      },
      {
        'type' => 'int *',
        'name' => 'len'
      }
    ]
  },
  {
    'return_type' => 'const char *',
    'name' => 'ap_soak_end_container',
    'args' => [
      {
        'type' => 'cmd_parms *',
        'name' => 'cmd'
      },
      {
        'type' => 'char *',
        'name' => 'directive'
      }
    ]
  },
  {
    'return_type' => 'int',
    'name' => 'ap_some_auth_required',
    'args' => [
      {
        'type' => 'request_rec *',
        'name' => 'r'
      }
    ]
  },
  {
    'return_type' => 'int',
    'name' => 'ap_start_lingering_close',
    'args' => [
      {
        'type' => 'conn_rec *',
        'name' => 'c'
      }
    ]
  },
  {
    'return_type' => 'int',
    'name' => 'ap_state_query',
    'args' => [
      {
        'type' => 'int',
        'name' => 'query_code'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'ap_str2_alnum',
    'args' => [
      {
        'type' => 'const char *',
        'name' => 'src'
      },
      {
        'type' => 'char *',
        'name' => 'dest'
      }
    ]
  },
  {
    'return_type' => 'void',
    'name' => 'ap_str_tolower',
    'args' => [
      {
        'type' => 'char *',
        'name' => 's'
      }
    ]
  },
  {
    'return_type' => 'void',
    'name' => 'ap_str_toupper',
    'args' => [
      {
        'type' => 'char *',
        'name' => 's'
      }
    ]
  },
  {
    'return_type' => 'int',
    'name' => 'ap_strcasecmp_match',
    'args' => [
      {
        'type' => 'const char *',
        'name' => 'str'
      },
      {
        'type' => 'const char *',
        'name' => 'expected'
      }
    ]
  },
  {
    'return_type' => 'char *',
    'name' => 'ap_strcasestr',
    'args' => [
      {
        'type' => 'const char *',
        'name' => 's1'
      },
      {
        'type' => 'const char *',
        'name' => 's2'
      }
    ]
  },
  {
    'return_type' => 'char *',
    'name' => 'ap_strchr',
    'args' => [
      {
        'type' => 'char *',
        'name' => 's'
      },
      {
        'type' => 'int',
        'name' => 'c'
      }
    ]
  },
  {
    'return_type' => 'const char *',
    'name' => 'ap_strchr_c',
    'args' => [
      {
        'type' => 'const char *',
        'name' => 's'
      },
      {
        'type' => 'int',
        'name' => 'c'
      }
    ]
  },
  {
    'return_type' => 'int',
    'name' => 'ap_strcmp_match',
    'args' => [
      {
        'type' => 'const char *',
        'name' => 'str'
      },
      {
        'type' => 'const char *',
        'name' => 'expected'
      }
    ]
  },
  {
    'return_type' => 'const char *',
    'name' => 'ap_stripprefix',
    'args' => [
      {
        'type' => 'const char *',
        'name' => 'bigstring'
      },
      {
        'type' => 'const char *',
        'name' => 'prefix'
      }
    ]
  },
  {
    'return_type' => 'char *',
    'name' => 'ap_strrchr',
    'args' => [
      {
        'type' => 'char *',
        'name' => 's'
      },
      {
        'type' => 'int',
        'name' => 'c'
      }
    ]
  },
  {
    'return_type' => 'const char *',
    'name' => 'ap_strrchr_c',
    'args' => [
      {
        'type' => 'const char *',
        'name' => 's'
      },
      {
        'type' => 'int',
        'name' => 'c'
      }
    ]
  },
  {
    'return_type' => 'char *',
    'name' => 'ap_strstr',
    'args' => [
      {
        'type' => 'char *',
        'name' => 's'
      },
      {
        'type' => 'const char *',
        'name' => 'c'
      }
    ]
  },
  {
    'return_type' => 'const char *',
    'name' => 'ap_strstr_c',
    'args' => [
      {
        'type' => 'const char *',
        'name' => 's'
      },
      {
        'type' => 'const char *',
        'name' => 'c'
      }
    ]
  },
  {
    'return_type' => 'request_rec *',
    'name' => 'ap_sub_req_lookup_dirent',
    'args' => [
      {
        'type' => 'const apr_finfo_t *',
        'name' => 'finfo'
      },
      {
        'type' => 'const request_rec *',
        'name' => 'r'
      },
      {
        'type' => 'int',
        'name' => 'subtype'
      },
      {
        'type' => 'ap_filter_t *',
        'name' => 'next_filter'
      }
    ]
  },
  {
    'return_type' => 'request_rec *',
    'name' => 'ap_sub_req_lookup_file',
    'args' => [
      {
        'type' => 'const char *',
        'name' => 'new_file'
      },
      {
        'type' => 'const request_rec *',
        'name' => 'r'
      },
      {
        'type' => 'ap_filter_t *',
        'name' => 'next_filter'
      }
    ]
  },
  {
    'return_type' => 'request_rec *',
    'name' => 'ap_sub_req_lookup_uri',
    'args' => [
      {
        'type' => 'const char *',
        'name' => 'new_uri'
      },
      {
        'type' => 'const request_rec *',
        'name' => 'r'
      },
      {
        'type' => 'ap_filter_t *',
        'name' => 'next_filter'
      }
    ]
  },
  {
    'return_type' => 'request_rec *',
    'name' => 'ap_sub_req_method_uri',
    'args' => [
      {
        'type' => 'const char *',
        'name' => 'method'
      },
      {
        'type' => 'const char *',
        'name' => 'new_uri'
      },
      {
        'type' => 'const request_rec *',
        'name' => 'r'
      },
      {
        'type' => 'ap_filter_t *',
        'name' => 'next_filter'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'ap_sub_req_output_filter',
    'args' => [
      {
        'type' => 'ap_filter_t *',
        'name' => 'f'
      },
      {
        'type' => 'apr_bucket_brigade *',
        'name' => 'bb'
      }
    ]
  },
  {
    'return_type' => 'int',
    'name' => 'ap_sys_privileges_handlers',
    'args' => [
      {
        'type' => 'int',
        'name' => 'inc'
      }
    ]
  },
  {
    'return_type' => 'void',
    'name' => 'ap_time_process_request',
    'args' => [
      {
        'type' => 'ap_sb_handle_t *',
        'name' => 'sbh'
      },
      {
        'type' => 'int',
        'name' => 'status'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'ap_timeout_parameter_parse',
    'args' => [
      {
        'type' => 'const char *',
        'name' => 'timeout_parameter'
      },
      {
        'type' => 'apr_interval_time_t *',
        'name' => 'timeout'
      },
      {
        'type' => 'const char *',
        'name' => 'default_time_unit'
      }
    ]
  },
  {
    'return_type' => 'uid_t',
    'name' => 'ap_uname2id',
    'args' => [
      {
        'type' => 'const char *',
        'name' => 'name'
      }
    ]
  },
  {
    'return_type' => 'int',
    'name' => 'ap_unescape_all',
    'args' => [
      {
        'type' => 'char *',
        'name' => 'url'
      }
    ]
  },
  {
    'return_type' => 'int',
    'name' => 'ap_unescape_url',
    'args' => [
      {
        'type' => 'char *',
        'name' => 'url'
      }
    ]
  },
  {
    'return_type' => 'int',
    'name' => 'ap_unescape_url_keep2f',
    'args' => [
      {
        'type' => 'char *',
        'name' => 'url'
      },
      {
        'type' => 'int',
        'name' => 'decode_slashes'
      }
    ]
  },
  {
    'return_type' => 'int',
    'name' => 'ap_unescape_urlencoded',
    'args' => [
      {
        'type' => 'char *',
        'name' => 'query'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'ap_unixd_accept',
    'args' => [
      {
        'type' => 'void **',
        'name' => 'accepted'
      },
      {
        'type' => 'ap_listen_rec *',
        'name' => 'lr'
      },
      {
        'type' => 'apr_pool_t *',
        'name' => 'ptrans'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'ap_unixd_set_global_mutex_perms',
    'args' => [
      {
        'type' => 'apr_global_mutex_t *',
        'name' => 'gmutex'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'ap_unixd_set_proc_mutex_perms',
    'args' => [
      {
        'type' => 'apr_proc_mutex_t *',
        'name' => 'pmutex'
      }
    ]
  },
  {
    'return_type' => 'void',
    'name' => 'ap_unixd_set_rlimit',
    'args' => [
      {
        'type' => 'cmd_parms *',
        'name' => 'cmd'
      },
      {
        'type' => 'struct rlimit **',
        'name' => 'plimit'
      },
      {
        'type' => 'const char *',
        'name' => 'arg'
      },
      {
        'type' => 'const char *',
        'name' => 'arg2'
      },
      {
        'type' => 'int',
        'name' => 'type'
      }
    ]
  },
  {
    'return_type' => 'int',
    'name' => 'ap_unixd_setup_child',
    'args' => []
  },
  {
    'return_type' => 'int',
    'name' => 'ap_unregister_extra_mpm_process',
    'args' => [
      {
        'type' => 'pid_t',
        'name' => 'pid'
      },
      {
        'type' => 'ap_generation_t *',
        'name' => 'old_gen'
      }
    ]
  },
  {
    'return_type' => 'int',
    'name' => 'ap_update_child_status',
    'args' => [
      {
        'type' => 'ap_sb_handle_t *',
        'name' => 'sbh'
      },
      {
        'type' => 'int',
        'name' => 'status'
      },
      {
        'type' => 'request_rec *',
        'name' => 'r'
      }
    ]
  },
  {
    'return_type' => 'int',
    'name' => 'ap_update_child_status_from_conn',
    'args' => [
      {
        'type' => 'ap_sb_handle_t *',
        'name' => 'sbh'
      },
      {
        'type' => 'int',
        'name' => 'status'
      },
      {
        'type' => 'conn_rec *',
        'name' => 'c'
      }
    ]
  },
  {
    'return_type' => 'int',
    'name' => 'ap_update_child_status_from_indexes',
    'args' => [
      {
        'type' => 'int',
        'name' => 'child_num'
      },
      {
        'type' => 'int',
        'name' => 'thread_num'
      },
      {
        'type' => 'int',
        'name' => 'status'
      },
      {
        'type' => 'request_rec *',
        'name' => 'r'
      }
    ]
  },
  {
    'return_type' => 'void',
    'name' => 'ap_update_mtime',
    'args' => [
      {
        'type' => 'request_rec *',
        'name' => 'r'
      },
      {
        'type' => 'apr_time_t',
        'name' => 'dependency_mtime'
      }
    ]
  },
  {
    'return_type' => 'void',
    'name' => 'ap_update_vhost_from_headers',
    'args' => [
      {
        'type' => 'request_rec *',
        'name' => 'r'
      }
    ]
  },
  {
    'return_type' => 'void',
    'name' => 'ap_update_vhost_given_ip',
    'args' => [
      {
        'type' => 'conn_rec *',
        'name' => 'conn'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'ap_varbuf_cfg_getline',
    'args' => [
      {
        'type' => 'struct ap_varbuf *',
        'name' => 'vb'
      },
      {
        'type' => 'ap_configfile_t *',
        'name' => 'cfp'
      },
      {
        'type' => 'apr_size_t',
        'name' => 'max_len'
      }
    ]
  },
  {
    'return_type' => 'void',
    'name' => 'ap_varbuf_free',
    'args' => [
      {
        'type' => 'struct ap_varbuf *',
        'name' => 'vb'
      }
    ]
  },
  {
    'return_type' => 'void',
    'name' => 'ap_varbuf_grow',
    'args' => [
      {
        'type' => 'struct ap_varbuf *',
        'name' => 'vb'
      },
      {
        'type' => 'apr_size_t',
        'name' => 'new_size'
      }
    ]
  },
  {
    'return_type' => 'void',
    'name' => 'ap_varbuf_init',
    'args' => [
      {
        'type' => 'apr_pool_t *',
        'name' => 'pool'
      },
      {
        'type' => 'struct ap_varbuf *',
        'name' => 'vb'
      },
      {
        'type' => 'apr_size_t',
        'name' => 'init_size'
      }
    ]
  },
  {
    'return_type' => 'char *',
    'name' => 'ap_varbuf_pdup',
    'args' => [
      {
        'type' => 'apr_pool_t *',
        'name' => 'p'
      },
      {
        'type' => 'struct ap_varbuf *',
        'name' => 'vb'
      },
      {
        'type' => 'const char *',
        'name' => 'prepend'
      },
      {
        'type' => 'apr_size_t',
        'name' => 'prepend_len'
      },
      {
        'type' => 'const char *',
        'name' => 'append'
      },
      {
        'type' => 'apr_size_t',
        'name' => 'append_len'
      },
      {
        'type' => 'apr_size_t *',
        'name' => 'new_len'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'ap_varbuf_regsub',
    'args' => [
      {
        'type' => 'struct ap_varbuf *',
        'name' => 'vb'
      },
      {
        'type' => 'const char *',
        'name' => 'input'
      },
      {
        'type' => 'const char *',
        'name' => 'source'
      },
      {
        'type' => 'apr_size_t',
        'name' => 'nmatch'
      },
      {
        'type' => 'ap_regmatch_t',
        'name' => 'pmatch'
      },
      {
        'type' => 'apr_size_t',
        'name' => 'maxlen'
      }
    ]
  },
  {
    'return_type' => 'void',
    'name' => 'ap_varbuf_strmemcat',
    'args' => [
      {
        'type' => 'struct ap_varbuf *',
        'name' => 'vb'
      },
      {
        'type' => 'const char *',
        'name' => 'str'
      },
      {
        'type' => 'int',
        'name' => 'len'
      }
    ]
  },
  {
    'return_type' => 'int',
    'name' => 'ap_vhost_iterate_given_conn',
    'args' => [
      {
        'type' => 'conn_rec *',
        'name' => 'conn'
      },
      {
        'type' => 'ap_vhost_iterate_conn_cb',
        'name' => 'func_cb'
      },
      {
        'type' => 'void*',
        'name' => 'baton'
      }
    ]
  },
  {
    'return_type' => 'int',
    'name' => 'ap_vrprintf',
    'args' => [
      {
        'type' => 'request_rec *',
        'name' => 'r'
      },
      {
        'type' => 'const char *',
        'name' => 'fmt'
      },
      {
        'type' => 'va_list',
        'name' => 'vlist'
      }
    ]
  },
  {
    'return_type' => 'void',
    'name' => 'ap_wait_or_timeout',
    'args' => [
      {
        'type' => 'apr_exit_why_e *',
        'name' => 'status'
      },
      {
        'type' => 'int *',
        'name' => 'exitcode'
      },
      {
        'type' => 'apr_proc_t *',
        'name' => 'ret'
      },
      {
        'type' => 'apr_pool_t *',
        'name' => 'p'
      },
      {
        'type' => 'server_rec *',
        'name' => 's'
      }
    ]
  },
  {
    'return_type' => 'const char *',
    'name' => 'ap_walk_config',
    'args' => [
      {
        'type' => 'ap_directive_t *',
        'name' => 'conftree'
      },
      {
        'type' => 'cmd_parms *',
        'name' => 'parms'
      },
      {
        'type' => 'ap_conf_vector_t *',
        'name' => 'section_vector'
      }
    ]
  },
  {
    'return_type' => 'int',
    'name' => 'ap_xml_parse_input',
    'args' => [
      {
        'type' => 'request_rec *',
        'name' => 'r'
      },
      {
        'type' => 'apr_xml_doc **',
        'name' => 'pdoc'
      }
    ]
  },
  {
    'return_type' => 'apr_memnode_t *',
    'name' => 'apr_allocator_alloc',
    'args' => [
      {
        'type' => 'apr_allocator_t *',
        'name' => 'allocator'
      },
      {
        'type' => 'apr_size_t',
        'name' => 'size'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_allocator_create',
    'args' => [
      {
        'type' => 'apr_allocator_t **',
        'name' => 'allocator'
      }
    ]
  },
  {
    'return_type' => 'void',
    'name' => 'apr_allocator_destroy',
    'args' => [
      {
        'type' => 'apr_allocator_t *',
        'name' => 'allocator'
      }
    ]
  },
  {
    'return_type' => 'void',
    'name' => 'apr_allocator_free',
    'args' => [
      {
        'type' => 'apr_allocator_t *',
        'name' => 'allocator'
      },
      {
        'type' => 'apr_memnode_t *',
        'name' => 'memnode'
      }
    ]
  },
  {
    'return_type' => 'void',
    'name' => 'apr_allocator_max_free_set',
    'args' => [
      {
        'type' => 'apr_allocator_t *',
        'name' => 'allocator'
      },
      {
        'type' => 'apr_size_t',
        'name' => 'size'
      }
    ]
  },
  {
    'return_type' => 'apr_thread_mutex_t *',
    'name' => 'apr_allocator_mutex_get',
    'args' => [
      {
        'type' => 'apr_allocator_t *',
        'name' => 'allocator'
      }
    ]
  },
  {
    'return_type' => 'void',
    'name' => 'apr_allocator_mutex_set',
    'args' => [
      {
        'type' => 'apr_allocator_t *',
        'name' => 'allocator'
      },
      {
        'type' => 'apr_thread_mutex_t *',
        'name' => 'mutex'
      }
    ]
  },
  {
    'return_type' => 'apr_pool_t *',
    'name' => 'apr_allocator_owner_get',
    'args' => [
      {
        'type' => 'apr_allocator_t *',
        'name' => 'allocator'
      }
    ]
  },
  {
    'return_type' => 'void',
    'name' => 'apr_allocator_owner_set',
    'args' => [
      {
        'type' => 'apr_allocator_t *',
        'name' => 'allocator'
      },
      {
        'type' => 'apr_pool_t *',
        'name' => 'pool'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_app_initialize',
    'args' => [
      {
        'type' => 'int *',
        'name' => 'argc'
      },
      {
        'type' => 'char const * const * *',
        'name' => 'argv'
      },
      {
        'type' => 'char const * const * *',
        'name' => 'env'
      }
    ]
  },
  {
    'return_type' => 'apr_array_header_t *',
    'name' => 'apr_array_append',
    'args' => [
      {
        'type' => 'apr_pool_t *',
        'name' => 'p'
      },
      {
        'type' => 'const apr_array_header_t *',
        'name' => 'first'
      },
      {
        'type' => 'const apr_array_header_t *',
        'name' => 'second'
      }
    ]
  },
  {
    'return_type' => 'void',
    'name' => 'apr_array_cat',
    'args' => [
      {
        'type' => 'apr_array_header_t *',
        'name' => 'dst'
      },
      {
        'type' => 'const apr_array_header_t *',
        'name' => 'src'
      }
    ]
  },
  {
    'return_type' => 'void',
    'name' => 'apr_array_clear',
    'args' => [
      {
        'type' => 'apr_array_header_t *',
        'name' => 'arr'
      }
    ]
  },
  {
    'return_type' => 'apr_array_header_t *',
    'name' => 'apr_array_copy',
    'args' => [
      {
        'type' => 'apr_pool_t *',
        'name' => 'p'
      },
      {
        'type' => 'const apr_array_header_t *',
        'name' => 'arr'
      }
    ]
  },
  {
    'return_type' => 'apr_array_header_t *',
    'name' => 'apr_array_copy_hdr',
    'args' => [
      {
        'type' => 'apr_pool_t *',
        'name' => 'p'
      },
      {
        'type' => 'const apr_array_header_t *',
        'name' => 'arr'
      }
    ]
  },
  {
    'return_type' => 'apr_array_header_t *',
    'name' => 'apr_array_make',
    'args' => [
      {
        'type' => 'apr_pool_t *',
        'name' => 'p'
      },
      {
        'type' => 'int',
        'name' => 'nelts'
      },
      {
        'type' => 'int',
        'name' => 'elt_size'
      }
    ]
  },
  {
    'return_type' => 'void *',
    'name' => 'apr_array_pop',
    'args' => [
      {
        'type' => 'apr_array_header_t *',
        'name' => 'arr'
      }
    ]
  },
  {
    'return_type' => 'char *',
    'name' => 'apr_array_pstrcat',
    'args' => [
      {
        'type' => 'apr_pool_t *',
        'name' => 'p'
      },
      {
        'type' => 'const apr_array_header_t *',
        'name' => 'arr'
      },
      {
        'type' => 'const char',
        'name' => 'sep'
      }
    ]
  },
  {
    'return_type' => 'void *',
    'name' => 'apr_array_push',
    'args' => [
      {
        'type' => 'apr_array_header_t *',
        'name' => 'arr'
      }
    ]
  },
  {
    'return_type' => 'apr_int64_t',
    'name' => 'apr_atoi64',
    'args' => [
      {
        'type' => 'const char *',
        'name' => 'buf'
      }
    ]
  },
  {
    'return_type' => 'apr_uint32_t',
    'name' => 'apr_atomic_add32',
    'args' => [
      {
        'type' => 'volatile apr_uint32_t *',
        'name' => 'mem'
      },
      {
        'type' => 'apr_uint32_t',
        'name' => 'val'
      }
    ]
  },
  {
    'return_type' => 'apr_uint32_t',
    'name' => 'apr_atomic_cas32',
    'args' => [
      {
        'type' => 'volatile apr_uint32_t *',
        'name' => 'mem'
      },
      {
        'type' => 'apr_uint32_t',
        'name' => 'with'
      },
      {
        'type' => 'apr_uint32_t',
        'name' => 'cmp'
      }
    ]
  },
  {
    'return_type' => 'void*',
    'name' => 'apr_atomic_casptr',
    'args' => [
      {
        'type' => 'volatile void **',
        'name' => 'mem'
      },
      {
        'type' => 'void *',
        'name' => 'with'
      },
      {
        'type' => 'const void *',
        'name' => 'cmp'
      }
    ]
  },
  {
    'return_type' => 'int',
    'name' => 'apr_atomic_dec32',
    'args' => [
      {
        'type' => 'volatile apr_uint32_t *',
        'name' => 'mem'
      }
    ]
  },
  {
    'return_type' => 'apr_uint32_t',
    'name' => 'apr_atomic_inc32',
    'args' => [
      {
        'type' => 'volatile apr_uint32_t *',
        'name' => 'mem'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_atomic_init',
    'args' => [
      {
        'type' => 'apr_pool_t *',
        'name' => 'p'
      }
    ]
  },
  {
    'return_type' => 'apr_uint32_t',
    'name' => 'apr_atomic_read32',
    'args' => [
      {
        'type' => 'volatile apr_uint32_t *',
        'name' => 'mem'
      }
    ]
  },
  {
    'return_type' => 'void',
    'name' => 'apr_atomic_set32',
    'args' => [
      {
        'type' => 'volatile apr_uint32_t *',
        'name' => 'mem'
      },
      {
        'type' => 'apr_uint32_t',
        'name' => 'val'
      }
    ]
  },
  {
    'return_type' => 'void',
    'name' => 'apr_atomic_sub32',
    'args' => [
      {
        'type' => 'volatile apr_uint32_t *',
        'name' => 'mem'
      },
      {
        'type' => 'apr_uint32_t',
        'name' => 'val'
      }
    ]
  },
  {
    'return_type' => 'apr_uint32_t',
    'name' => 'apr_atomic_xchg32',
    'args' => [
      {
        'type' => 'volatile apr_uint32_t *',
        'name' => 'mem'
      },
      {
        'type' => 'apr_uint32_t',
        'name' => 'val'
      }
    ]
  },
  {
    'return_type' => 'void*',
    'name' => 'apr_atomic_xchgptr',
    'args' => [
      {
        'type' => 'volatile void **',
        'name' => 'mem'
      },
      {
        'type' => 'void *',
        'name' => 'with'
      }
    ]
  },
  {
    'return_type' => 'int',
    'name' => 'apr_base64_decode',
    'args' => [
      {
        'type' => 'char *',
        'name' => 'plain_dst'
      },
      {
        'type' => 'const char *',
        'name' => 'coded_src'
      }
    ]
  },
  {
    'return_type' => 'int',
    'name' => 'apr_base64_decode_binary',
    'args' => [
      {
        'type' => 'unsigned char *',
        'name' => 'plain_dst'
      },
      {
        'type' => 'const char *',
        'name' => 'coded_src'
      }
    ]
  },
  {
    'return_type' => 'int',
    'name' => 'apr_base64_decode_len',
    'args' => [
      {
        'type' => 'const char *',
        'name' => 'coded_src'
      }
    ]
  },
  {
    'return_type' => 'int',
    'name' => 'apr_base64_encode',
    'args' => [
      {
        'type' => 'char *',
        'name' => 'coded_dst'
      },
      {
        'type' => 'const char *',
        'name' => 'plain_src'
      },
      {
        'type' => 'int',
        'name' => 'len_plain_src'
      }
    ]
  },
  {
    'return_type' => 'int',
    'name' => 'apr_base64_encode_binary',
    'args' => [
      {
        'type' => 'char *',
        'name' => 'coded_dst'
      },
      {
        'type' => 'const unsigned char *',
        'name' => 'plain_src'
      },
      {
        'type' => 'int',
        'name' => 'len_plain_src'
      }
    ]
  },
  {
    'return_type' => 'int',
    'name' => 'apr_base64_encode_len',
    'args' => [
      {
        'type' => 'int',
        'name' => 'len'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_brigade_cleanup',
    'args' => [
      {
        'type' => 'void *',
        'name' => 'data'
      }
    ]
  },
  {
    'return_type' => 'apr_bucket_brigade *',
    'name' => 'apr_brigade_create',
    'args' => [
      {
        'type' => 'apr_pool_t *',
        'name' => 'p'
      },
      {
        'type' => 'apr_bucket_alloc_t *',
        'name' => 'list'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_brigade_destroy',
    'args' => [
      {
        'type' => 'apr_bucket_brigade *',
        'name' => 'b'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_brigade_flatten',
    'args' => [
      {
        'type' => 'apr_bucket_brigade *',
        'name' => 'bb'
      },
      {
        'type' => 'char *',
        'name' => 'c'
      },
      {
        'type' => 'apr_size_t *',
        'name' => 'len'
      }
    ]
  },
  {
    'return_type' => 'apr_bucket *',
    'name' => 'apr_brigade_insert_file',
    'args' => [
      {
        'type' => 'apr_bucket_brigade *',
        'name' => 'bb'
      },
      {
        'type' => 'apr_file_t *',
        'name' => 'f'
      },
      {
        'type' => 'apr_off_t',
        'name' => 'start'
      },
      {
        'type' => 'apr_off_t',
        'name' => 'len'
      },
      {
        'type' => 'apr_pool_t *',
        'name' => 'p'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_brigade_length',
    'args' => [
      {
        'type' => 'apr_bucket_brigade *',
        'name' => 'bb'
      },
      {
        'type' => 'int',
        'name' => 'read_all'
      },
      {
        'type' => 'apr_off_t *',
        'name' => 'length'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_brigade_partition',
    'args' => [
      {
        'type' => 'apr_bucket_brigade *',
        'name' => 'b'
      },
      {
        'type' => 'apr_off_t',
        'name' => 'point'
      },
      {
        'type' => 'apr_bucket **',
        'name' => 'after_point'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_brigade_pflatten',
    'args' => [
      {
        'type' => 'apr_bucket_brigade *',
        'name' => 'bb'
      },
      {
        'type' => 'char **',
        'name' => 'c'
      },
      {
        'type' => 'apr_size_t *',
        'name' => 'len'
      },
      {
        'type' => 'apr_pool_t *',
        'name' => 'pool'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_brigade_printf',
    'args' => [
      {
        'type' => 'apr_bucket_brigade *',
        'name' => 'b'
      },
      {
        'type' => 'apr_brigade_flush',
        'name' => 'flush'
      },
      {
        'type' => 'void *',
        'name' => 'ctx'
      },
      {
        'type' => 'const char *',
        'name' => 'fmt'
      },
      {
        'type' => '...',
        'name' => 'arg4'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_brigade_putc',
    'args' => [
      {
        'type' => 'apr_bucket_brigade *',
        'name' => 'b'
      },
      {
        'type' => 'apr_brigade_flush',
        'name' => 'flush'
      },
      {
        'type' => 'void *',
        'name' => 'ctx'
      },
      {
        'type' => 'const char',
        'name' => 'c'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_brigade_puts',
    'args' => [
      {
        'type' => 'apr_bucket_brigade *',
        'name' => 'bb'
      },
      {
        'type' => 'apr_brigade_flush',
        'name' => 'flush'
      },
      {
        'type' => 'void *',
        'name' => 'ctx'
      },
      {
        'type' => 'const char *',
        'name' => 'str'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_brigade_putstrs',
    'args' => [
      {
        'type' => 'apr_bucket_brigade *',
        'name' => 'b'
      },
      {
        'type' => 'apr_brigade_flush',
        'name' => 'flush'
      },
      {
        'type' => 'void *',
        'name' => 'ctx'
      },
      {
        'type' => '...',
        'name' => 'arg3'
      }
    ]
  },
  {
    'return_type' => 'apr_bucket_brigade *',
    'name' => 'apr_brigade_split',
    'args' => [
      {
        'type' => 'apr_bucket_brigade *',
        'name' => 'b'
      },
      {
        'type' => 'apr_bucket *',
        'name' => 'e'
      }
    ]
  },
  {
    'return_type' => 'apr_bucket_brigade *',
    'name' => 'apr_brigade_split_ex',
    'args' => [
      {
        'type' => 'apr_bucket_brigade *',
        'name' => 'b'
      },
      {
        'type' => 'apr_bucket *',
        'name' => 'e'
      },
      {
        'type' => 'apr_bucket_brigade *',
        'name' => 'a'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_brigade_split_line',
    'args' => [
      {
        'type' => 'apr_bucket_brigade *',
        'name' => 'bbOut'
      },
      {
        'type' => 'apr_bucket_brigade *',
        'name' => 'bbIn'
      },
      {
        'type' => 'apr_read_type_e',
        'name' => 'block'
      },
      {
        'type' => 'apr_off_t',
        'name' => 'maxbytes'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_brigade_to_iovec',
    'args' => [
      {
        'type' => 'apr_bucket_brigade *',
        'name' => 'b'
      },
      {
        'type' => 'struct iovec *',
        'name' => 'vec'
      },
      {
        'type' => 'int *',
        'name' => 'nvec'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_brigade_vprintf',
    'args' => [
      {
        'type' => 'apr_bucket_brigade *',
        'name' => 'b'
      },
      {
        'type' => 'apr_brigade_flush',
        'name' => 'flush'
      },
      {
        'type' => 'void *',
        'name' => 'ctx'
      },
      {
        'type' => 'const char *',
        'name' => 'fmt'
      },
      {
        'type' => 'va_list',
        'name' => 'va'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_brigade_vputstrs',
    'args' => [
      {
        'type' => 'apr_bucket_brigade *',
        'name' => 'b'
      },
      {
        'type' => 'apr_brigade_flush',
        'name' => 'flush'
      },
      {
        'type' => 'void *',
        'name' => 'ctx'
      },
      {
        'type' => 'va_list',
        'name' => 'va'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_brigade_write',
    'args' => [
      {
        'type' => 'apr_bucket_brigade *',
        'name' => 'b'
      },
      {
        'type' => 'apr_brigade_flush',
        'name' => 'flush'
      },
      {
        'type' => 'void *',
        'name' => 'ctx'
      },
      {
        'type' => 'const char *',
        'name' => 'str'
      },
      {
        'type' => 'apr_size_t',
        'name' => 'nbyte'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_brigade_writev',
    'args' => [
      {
        'type' => 'apr_bucket_brigade *',
        'name' => 'b'
      },
      {
        'type' => 'apr_brigade_flush',
        'name' => 'flush'
      },
      {
        'type' => 'void *',
        'name' => 'ctx'
      },
      {
        'type' => 'const struct iovec *',
        'name' => 'vec'
      },
      {
        'type' => 'apr_size_t',
        'name' => 'nvec'
      }
    ]
  },
  {
    'return_type' => 'void *',
    'name' => 'apr_bucket_alloc',
    'args' => [
      {
        'type' => 'apr_size_t',
        'name' => 'size'
      },
      {
        'type' => 'apr_bucket_alloc_t *',
        'name' => 'list'
      }
    ]
  },
  {
    'return_type' => 'apr_bucket_alloc_t *',
    'name' => 'apr_bucket_alloc_create',
    'args' => [
      {
        'type' => 'apr_pool_t *',
        'name' => 'p'
      }
    ]
  },
  {
    'return_type' => 'apr_bucket_alloc_t *',
    'name' => 'apr_bucket_alloc_create_ex',
    'args' => [
      {
        'type' => 'apr_allocator_t *',
        'name' => 'allocator'
      }
    ]
  },
  {
    'return_type' => 'void',
    'name' => 'apr_bucket_alloc_destroy',
    'args' => [
      {
        'type' => 'apr_bucket_alloc_t *',
        'name' => 'list'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_bucket_copy_notimpl',
    'args' => [
      {
        'type' => 'apr_bucket *',
        'name' => 'e'
      },
      {
        'type' => 'apr_bucket **',
        'name' => 'c'
      }
    ]
  },
  {
    'return_type' => 'void',
    'name' => 'apr_bucket_destroy_noop',
    'args' => [
      {
        'type' => 'void *',
        'name' => 'data'
      }
    ]
  },
  {
    'return_type' => 'apr_bucket *',
    'name' => 'apr_bucket_eos_create',
    'args' => [
      {
        'type' => 'apr_bucket_alloc_t *',
        'name' => 'list'
      }
    ]
  },
  {
    'return_type' => 'apr_bucket *',
    'name' => 'apr_bucket_eos_make',
    'args' => [
      {
        'type' => 'apr_bucket *',
        'name' => 'b'
      }
    ]
  },
  {
    'return_type' => 'apr_bucket *',
    'name' => 'apr_bucket_file_create',
    'args' => [
      {
        'type' => 'apr_file_t *',
        'name' => 'fd'
      },
      {
        'type' => 'apr_off_t',
        'name' => 'offset'
      },
      {
        'type' => 'apr_size_t',
        'name' => 'len'
      },
      {
        'type' => 'apr_pool_t *',
        'name' => 'p'
      },
      {
        'type' => 'apr_bucket_alloc_t *',
        'name' => 'list'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_bucket_file_enable_mmap',
    'args' => [
      {
        'type' => 'apr_bucket *',
        'name' => 'b'
      },
      {
        'type' => 'int',
        'name' => 'enabled'
      }
    ]
  },
  {
    'return_type' => 'apr_bucket *',
    'name' => 'apr_bucket_file_make',
    'args' => [
      {
        'type' => 'apr_bucket *',
        'name' => 'b'
      },
      {
        'type' => 'apr_file_t *',
        'name' => 'fd'
      },
      {
        'type' => 'apr_off_t',
        'name' => 'offset'
      },
      {
        'type' => 'apr_size_t',
        'name' => 'len'
      },
      {
        'type' => 'apr_pool_t *',
        'name' => 'p'
      }
    ]
  },
  {
    'return_type' => 'apr_bucket *',
    'name' => 'apr_bucket_flush_create',
    'args' => [
      {
        'type' => 'apr_bucket_alloc_t *',
        'name' => 'list'
      }
    ]
  },
  {
    'return_type' => 'apr_bucket *',
    'name' => 'apr_bucket_flush_make',
    'args' => [
      {
        'type' => 'apr_bucket *',
        'name' => 'b'
      }
    ]
  },
  {
    'return_type' => 'void',
    'name' => 'apr_bucket_free',
    'args' => [
      {
        'type' => 'void *',
        'name' => 'block'
      }
    ]
  },
  {
    'return_type' => 'apr_bucket *',
    'name' => 'apr_bucket_heap_create',
    'args' => [
      {
        'type' => 'const char *',
        'name' => 'buf'
      },
      {
        'type' => 'apr_size_t',
        'name' => 'nbyte'
      },
      {
        'type' => 'void (*free_func)(void *data)',
        'name' => 'arg2'
      },
      {
        'type' => 'apr_bucket_alloc_t *',
        'name' => 'list'
      }
    ]
  },
  {
    'return_type' => 'apr_bucket *',
    'name' => 'apr_bucket_heap_make',
    'args' => [
      {
        'type' => 'apr_bucket *',
        'name' => 'b'
      },
      {
        'type' => 'const char *',
        'name' => 'buf'
      },
      {
        'type' => 'apr_size_t',
        'name' => 'nbyte'
      },
      {
        'type' => 'void (*free_func)(void *data)',
        'name' => 'arg3'
      }
    ]
  },
  {
    'return_type' => 'apr_bucket *',
    'name' => 'apr_bucket_immortal_create',
    'args' => [
      {
        'type' => 'const char *',
        'name' => 'buf'
      },
      {
        'type' => 'apr_size_t',
        'name' => 'nbyte'
      },
      {
        'type' => 'apr_bucket_alloc_t *',
        'name' => 'list'
      }
    ]
  },
  {
    'return_type' => 'apr_bucket *',
    'name' => 'apr_bucket_immortal_make',
    'args' => [
      {
        'type' => 'apr_bucket *',
        'name' => 'b'
      },
      {
        'type' => 'const char *',
        'name' => 'buf'
      },
      {
        'type' => 'apr_size_t',
        'name' => 'nbyte'
      }
    ]
  },
  {
    'return_type' => 'apr_bucket *',
    'name' => 'apr_bucket_mmap_create',
    'args' => [
      {
        'type' => 'apr_mmap_t *',
        'name' => 'mm'
      },
      {
        'type' => 'apr_off_t',
        'name' => 'start'
      },
      {
        'type' => 'apr_size_t',
        'name' => 'length'
      },
      {
        'type' => 'apr_bucket_alloc_t *',
        'name' => 'list'
      }
    ]
  },
  {
    'return_type' => 'apr_bucket *',
    'name' => 'apr_bucket_mmap_make',
    'args' => [
      {
        'type' => 'apr_bucket *',
        'name' => 'b'
      },
      {
        'type' => 'apr_mmap_t *',
        'name' => 'mm'
      },
      {
        'type' => 'apr_off_t',
        'name' => 'start'
      },
      {
        'type' => 'apr_size_t',
        'name' => 'length'
      }
    ]
  },
  {
    'return_type' => 'apr_bucket *',
    'name' => 'apr_bucket_pipe_create',
    'args' => [
      {
        'type' => 'apr_file_t *',
        'name' => 'thispipe'
      },
      {
        'type' => 'apr_bucket_alloc_t *',
        'name' => 'list'
      }
    ]
  },
  {
    'return_type' => 'apr_bucket *',
    'name' => 'apr_bucket_pipe_make',
    'args' => [
      {
        'type' => 'apr_bucket *',
        'name' => 'b'
      },
      {
        'type' => 'apr_file_t *',
        'name' => 'thispipe'
      }
    ]
  },
  {
    'return_type' => 'apr_bucket *',
    'name' => 'apr_bucket_pool_create',
    'args' => [
      {
        'type' => 'const char *',
        'name' => 'buf'
      },
      {
        'type' => 'apr_size_t',
        'name' => 'length'
      },
      {
        'type' => 'apr_pool_t *',
        'name' => 'pool'
      },
      {
        'type' => 'apr_bucket_alloc_t *',
        'name' => 'list'
      }
    ]
  },
  {
    'return_type' => 'apr_bucket *',
    'name' => 'apr_bucket_pool_make',
    'args' => [
      {
        'type' => 'apr_bucket *',
        'name' => 'b'
      },
      {
        'type' => 'const char *',
        'name' => 'buf'
      },
      {
        'type' => 'apr_size_t',
        'name' => 'length'
      },
      {
        'type' => 'apr_pool_t *',
        'name' => 'pool'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_bucket_setaside_noop',
    'args' => [
      {
        'type' => 'apr_bucket *',
        'name' => 'data'
      },
      {
        'type' => 'apr_pool_t *',
        'name' => 'pool'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_bucket_setaside_notimpl',
    'args' => [
      {
        'type' => 'apr_bucket *',
        'name' => 'data'
      },
      {
        'type' => 'apr_pool_t *',
        'name' => 'pool'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_bucket_shared_copy',
    'args' => [
      {
        'type' => 'apr_bucket *',
        'name' => 'a'
      },
      {
        'type' => 'apr_bucket **',
        'name' => 'b'
      }
    ]
  },
  {
    'return_type' => 'int',
    'name' => 'apr_bucket_shared_destroy',
    'args' => [
      {
        'type' => 'void *',
        'name' => 'data'
      }
    ]
  },
  {
    'return_type' => 'apr_bucket *',
    'name' => 'apr_bucket_shared_make',
    'args' => [
      {
        'type' => 'apr_bucket *',
        'name' => 'b'
      },
      {
        'type' => 'void *',
        'name' => 'data'
      },
      {
        'type' => 'apr_off_t',
        'name' => 'start'
      },
      {
        'type' => 'apr_size_t',
        'name' => 'length'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_bucket_shared_split',
    'args' => [
      {
        'type' => 'apr_bucket *',
        'name' => 'b'
      },
      {
        'type' => 'apr_size_t',
        'name' => 'point'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_bucket_simple_copy',
    'args' => [
      {
        'type' => 'apr_bucket *',
        'name' => 'a'
      },
      {
        'type' => 'apr_bucket **',
        'name' => 'b'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_bucket_simple_split',
    'args' => [
      {
        'type' => 'apr_bucket *',
        'name' => 'b'
      },
      {
        'type' => 'apr_size_t',
        'name' => 'point'
      }
    ]
  },
  {
    'return_type' => 'apr_bucket *',
    'name' => 'apr_bucket_socket_create',
    'args' => [
      {
        'type' => 'apr_socket_t *',
        'name' => 'thissock'
      },
      {
        'type' => 'apr_bucket_alloc_t *',
        'name' => 'list'
      }
    ]
  },
  {
    'return_type' => 'apr_bucket *',
    'name' => 'apr_bucket_socket_make',
    'args' => [
      {
        'type' => 'apr_bucket *',
        'name' => 'b'
      },
      {
        'type' => 'apr_socket_t *',
        'name' => 'thissock'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_bucket_split_notimpl',
    'args' => [
      {
        'type' => 'apr_bucket *',
        'name' => 'data'
      },
      {
        'type' => 'apr_size_t',
        'name' => 'point'
      }
    ]
  },
  {
    'return_type' => 'apr_bucket *',
    'name' => 'apr_bucket_transient_create',
    'args' => [
      {
        'type' => 'const char *',
        'name' => 'buf'
      },
      {
        'type' => 'apr_size_t',
        'name' => 'nbyte'
      },
      {
        'type' => 'apr_bucket_alloc_t *',
        'name' => 'list'
      }
    ]
  },
  {
    'return_type' => 'apr_bucket *',
    'name' => 'apr_bucket_transient_make',
    'args' => [
      {
        'type' => 'apr_bucket *',
        'name' => 'b'
      },
      {
        'type' => 'const char *',
        'name' => 'buf'
      },
      {
        'type' => 'apr_size_t',
        'name' => 'nbyte'
      }
    ]
  },
  {
    'return_type' => 'char *',
    'name' => 'apr_collapse_spaces',
    'args' => [
      {
        'type' => 'char *',
        'name' => 'dest'
      },
      {
        'type' => 'const char *',
        'name' => 'src'
      }
    ]
  },
  {
    'return_type' => 'char *',
    'name' => 'apr_cpystrn',
    'args' => [
      {
        'type' => 'char *',
        'name' => 'dst'
      },
      {
        'type' => 'const char *',
        'name' => 'src'
      },
      {
        'type' => 'apr_size_t',
        'name' => 'dst_size'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_crypto_block_cleanup',
    'args' => [
      {
        'type' => 'apr_crypto_block_t *',
        'name' => 'ctx'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_crypto_block_decrypt',
    'args' => [
      {
        'type' => 'unsigned char **',
        'name' => 'out'
      },
      {
        'type' => 'apr_size_t *',
        'name' => 'outlen'
      },
      {
        'type' => 'const unsigned char *',
        'name' => 'in'
      },
      {
        'type' => 'apr_size_t',
        'name' => 'inlen'
      },
      {
        'type' => 'apr_crypto_block_t *',
        'name' => 'ctx'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_crypto_block_decrypt_finish',
    'args' => [
      {
        'type' => 'unsigned char *',
        'name' => 'out'
      },
      {
        'type' => 'apr_size_t *',
        'name' => 'outlen'
      },
      {
        'type' => 'apr_crypto_block_t *',
        'name' => 'ctx'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_crypto_block_decrypt_init',
    'args' => [
      {
        'type' => 'apr_crypto_block_t **',
        'name' => 'ctx'
      },
      {
        'type' => 'apr_size_t *',
        'name' => 'blockSize'
      },
      {
        'type' => 'const unsigned char *',
        'name' => 'iv'
      },
      {
        'type' => 'const apr_crypto_key_t *',
        'name' => 'key'
      },
      {
        'type' => 'apr_pool_t *',
        'name' => 'p'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_crypto_block_encrypt',
    'args' => [
      {
        'type' => 'unsigned char **',
        'name' => 'out'
      },
      {
        'type' => 'apr_size_t *',
        'name' => 'outlen'
      },
      {
        'type' => 'const unsigned char *',
        'name' => 'in'
      },
      {
        'type' => 'apr_size_t',
        'name' => 'inlen'
      },
      {
        'type' => 'apr_crypto_block_t *',
        'name' => 'ctx'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_crypto_block_encrypt_finish',
    'args' => [
      {
        'type' => 'unsigned char *',
        'name' => 'out'
      },
      {
        'type' => 'apr_size_t *',
        'name' => 'outlen'
      },
      {
        'type' => 'apr_crypto_block_t *',
        'name' => 'ctx'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_crypto_block_encrypt_init',
    'args' => [
      {
        'type' => 'apr_crypto_block_t **',
        'name' => 'ctx'
      },
      {
        'type' => 'const unsigned char **',
        'name' => 'iv'
      },
      {
        'type' => 'const apr_crypto_key_t *',
        'name' => 'key'
      },
      {
        'type' => 'apr_size_t *',
        'name' => 'blockSize'
      },
      {
        'type' => 'apr_pool_t *',
        'name' => 'p'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_crypto_cleanup',
    'args' => [
      {
        'type' => 'apr_crypto_t *',
        'name' => 'f'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_crypto_clear',
    'args' => [
      {
        'type' => 'apr_pool_t *',
        'name' => 'pool'
      },
      {
        'type' => 'void *',
        'name' => 'buffer'
      },
      {
        'type' => 'apr_size_t',
        'name' => 'size'
      }
    ]
  },
  {
    'return_type' => 'const char *',
    'name' => 'apr_crypto_driver_name',
    'args' => [
      {
        'type' => 'const apr_crypto_driver_t *',
        'name' => 'driver'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_crypto_error',
    'args' => [
      {
        'type' => 'const apu_err_t **',
        'name' => 'result'
      },
      {
        'type' => 'const apr_crypto_t *',
        'name' => 'f'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_crypto_get_block_key_modes',
    'args' => [
      {
        'type' => 'apr_hash_t **',
        'name' => 'modes'
      },
      {
        'type' => 'const apr_crypto_t *',
        'name' => 'f'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_crypto_get_block_key_types',
    'args' => [
      {
        'type' => 'apr_hash_t **',
        'name' => 'types'
      },
      {
        'type' => 'const apr_crypto_t *',
        'name' => 'f'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_crypto_get_driver',
    'args' => [
      {
        'type' => 'const apr_crypto_driver_t **',
        'name' => 'driver'
      },
      {
        'type' => 'const char *',
        'name' => 'name'
      },
      {
        'type' => 'const char *',
        'name' => 'params'
      },
      {
        'type' => 'const apu_err_t **',
        'name' => 'result'
      },
      {
        'type' => 'apr_pool_t *',
        'name' => 'pool'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_crypto_init',
    'args' => [
      {
        'type' => 'apr_pool_t *',
        'name' => 'pool'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_crypto_make',
    'args' => [
      {
        'type' => 'apr_crypto_t **',
        'name' => 'f'
      },
      {
        'type' => 'const apr_crypto_driver_t *',
        'name' => 'driver'
      },
      {
        'type' => 'const char *',
        'name' => 'params'
      },
      {
        'type' => 'apr_pool_t *',
        'name' => 'pool'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_crypto_passphrase',
    'args' => [
      {
        'type' => 'apr_crypto_key_t **',
        'name' => 'key'
      },
      {
        'type' => 'apr_size_t *',
        'name' => 'ivSize'
      },
      {
        'type' => 'const char *',
        'name' => 'pass'
      },
      {
        'type' => 'apr_size_t',
        'name' => 'passLen'
      },
      {
        'type' => 'const unsigned char *',
        'name' => 'salt'
      },
      {
        'type' => 'apr_size_t',
        'name' => 'saltLen'
      },
      {
        'type' => 'const apr_crypto_block_key_type_e',
        'name' => 'type'
      },
      {
        'type' => 'const apr_crypto_block_key_mode_e',
        'name' => 'mode'
      },
      {
        'type' => 'const int',
        'name' => 'doPad'
      },
      {
        'type' => 'const int',
        'name' => 'iterations'
      },
      {
        'type' => 'const apr_crypto_t *',
        'name' => 'f'
      },
      {
        'type' => 'apr_pool_t *',
        'name' => 'p'
      }
    ]
  },
  {
    'return_type' => 'apr_crypto_hash_t *',
    'name' => 'apr_crypto_sha256_new',
    'args' => [
      {
        'type' => 'apr_pool_t *',
        'name' => 'p'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_crypto_shutdown',
    'args' => [
      {
        'type' => 'const apr_crypto_driver_t *',
        'name' => 'driver'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_ctime',
    'args' => [
      {
        'type' => 'char *',
        'name' => 'date_str'
      },
      {
        'type' => 'apr_time_t',
        'name' => 't'
      }
    ]
  },
  {
    'return_type' => 'int',
    'name' => 'apr_date_checkmask',
    'args' => [
      {
        'type' => 'const char *',
        'name' => 'data'
      },
      {
        'type' => 'const char *',
        'name' => 'mask'
      }
    ]
  },
  {
    'return_type' => 'apr_time_t',
    'name' => 'apr_date_parse_http',
    'args' => [
      {
        'type' => 'const char *',
        'name' => 'date'
      }
    ]
  },
  {
    'return_type' => 'apr_time_t',
    'name' => 'apr_date_parse_rfc',
    'args' => [
      {
        'type' => 'const char *',
        'name' => 'date'
      }
    ]
  },
  {
    'return_type' => 'int',
    'name' => 'apr_dbd_check_conn',
    'args' => [
      {
        'type' => 'const apr_dbd_driver_t *',
        'name' => 'driver'
      },
      {
        'type' => 'apr_pool_t *',
        'name' => 'pool'
      },
      {
        'type' => 'apr_dbd_t *',
        'name' => 'handle'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_dbd_close',
    'args' => [
      {
        'type' => 'const apr_dbd_driver_t *',
        'name' => 'driver'
      },
      {
        'type' => 'apr_dbd_t *',
        'name' => 'handle'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_dbd_datum_get',
    'args' => [
      {
        'type' => 'const apr_dbd_driver_t *',
        'name' => 'driver'
      },
      {
        'type' => 'apr_dbd_row_t *',
        'name' => 'row'
      },
      {
        'type' => 'int',
        'name' => 'col'
      },
      {
        'type' => 'apr_dbd_type_e',
        'name' => 'type'
      },
      {
        'type' => 'void *',
        'name' => 'data'
      }
    ]
  },
  {
    'return_type' => 'const char*',
    'name' => 'apr_dbd_error',
    'args' => [
      {
        'type' => 'const apr_dbd_driver_t *',
        'name' => 'driver'
      },
      {
        'type' => 'apr_dbd_t *',
        'name' => 'handle'
      },
      {
        'type' => 'int',
        'name' => 'errnum'
      }
    ]
  },
  {
    'return_type' => 'const char*',
    'name' => 'apr_dbd_escape',
    'args' => [
      {
        'type' => 'const apr_dbd_driver_t *',
        'name' => 'driver'
      },
      {
        'type' => 'apr_pool_t *',
        'name' => 'pool'
      },
      {
        'type' => 'const char *',
        'name' => 'string'
      },
      {
        'type' => 'apr_dbd_t *',
        'name' => 'handle'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_dbd_get_driver',
    'args' => [
      {
        'type' => 'apr_pool_t *',
        'name' => 'pool'
      },
      {
        'type' => 'const char *',
        'name' => 'name'
      },
      {
        'type' => 'const apr_dbd_driver_t **',
        'name' => 'driver'
      }
    ]
  },
  {
    'return_type' => 'const char*',
    'name' => 'apr_dbd_get_entry',
    'args' => [
      {
        'type' => 'const apr_dbd_driver_t *',
        'name' => 'driver'
      },
      {
        'type' => 'apr_dbd_row_t *',
        'name' => 'row'
      },
      {
        'type' => 'int',
        'name' => 'col'
      }
    ]
  },
  {
    'return_type' => 'const char*',
    'name' => 'apr_dbd_get_name',
    'args' => [
      {
        'type' => 'const apr_dbd_driver_t *',
        'name' => 'driver'
      },
      {
        'type' => 'apr_dbd_results_t *',
        'name' => 'res'
      },
      {
        'type' => 'int',
        'name' => 'col'
      }
    ]
  },
  {
    'return_type' => 'int',
    'name' => 'apr_dbd_get_row',
    'args' => [
      {
        'type' => 'const apr_dbd_driver_t *',
        'name' => 'driver'
      },
      {
        'type' => 'apr_pool_t *',
        'name' => 'pool'
      },
      {
        'type' => 'apr_dbd_results_t *',
        'name' => 'res'
      },
      {
        'type' => 'apr_dbd_row_t **',
        'name' => 'row'
      },
      {
        'type' => 'int',
        'name' => 'rownum'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_dbd_init',
    'args' => [
      {
        'type' => 'apr_pool_t *',
        'name' => 'pool'
      }
    ]
  },
  {
    'return_type' => 'const char*',
    'name' => 'apr_dbd_name',
    'args' => [
      {
        'type' => 'const apr_dbd_driver_t *',
        'name' => 'driver'
      }
    ]
  },
  {
    'return_type' => 'void*',
    'name' => 'apr_dbd_native_handle',
    'args' => [
      {
        'type' => 'const apr_dbd_driver_t *',
        'name' => 'driver'
      },
      {
        'type' => 'apr_dbd_t *',
        'name' => 'handle'
      }
    ]
  },
  {
    'return_type' => 'int',
    'name' => 'apr_dbd_num_cols',
    'args' => [
      {
        'type' => 'const apr_dbd_driver_t *',
        'name' => 'driver'
      },
      {
        'type' => 'apr_dbd_results_t *',
        'name' => 'res'
      }
    ]
  },
  {
    'return_type' => 'int',
    'name' => 'apr_dbd_num_tuples',
    'args' => [
      {
        'type' => 'const apr_dbd_driver_t *',
        'name' => 'driver'
      },
      {
        'type' => 'apr_dbd_results_t *',
        'name' => 'res'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_dbd_open',
    'args' => [
      {
        'type' => 'const apr_dbd_driver_t *',
        'name' => 'driver'
      },
      {
        'type' => 'apr_pool_t *',
        'name' => 'pool'
      },
      {
        'type' => 'const char *',
        'name' => 'params'
      },
      {
        'type' => 'apr_dbd_t **',
        'name' => 'handle'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_dbd_open_ex',
    'args' => [
      {
        'type' => 'const apr_dbd_driver_t *',
        'name' => 'driver'
      },
      {
        'type' => 'apr_pool_t *',
        'name' => 'pool'
      },
      {
        'type' => 'const char *',
        'name' => 'params'
      },
      {
        'type' => 'apr_dbd_t **',
        'name' => 'handle'
      },
      {
        'type' => 'const char **',
        'name' => 'error'
      }
    ]
  },
  {
    'return_type' => 'int',
    'name' => 'apr_dbd_pbquery',
    'args' => [
      {
        'type' => 'const apr_dbd_driver_t *',
        'name' => 'driver'
      },
      {
        'type' => 'apr_pool_t *',
        'name' => 'pool'
      },
      {
        'type' => 'apr_dbd_t *',
        'name' => 'handle'
      },
      {
        'type' => 'int *',
        'name' => 'nrows'
      },
      {
        'type' => 'apr_dbd_prepared_t *',
        'name' => 'statement'
      },
      {
        'type' => 'const void **',
        'name' => 'args'
      }
    ]
  },
  {
    'return_type' => 'int',
    'name' => 'apr_dbd_pbselect',
    'args' => [
      {
        'type' => 'const apr_dbd_driver_t *',
        'name' => 'driver'
      },
      {
        'type' => 'apr_pool_t *',
        'name' => 'pool'
      },
      {
        'type' => 'apr_dbd_t *',
        'name' => 'handle'
      },
      {
        'type' => 'apr_dbd_results_t **',
        'name' => 'res'
      },
      {
        'type' => 'apr_dbd_prepared_t *',
        'name' => 'statement'
      },
      {
        'type' => 'int',
        'name' => 'random'
      },
      {
        'type' => 'const void **',
        'name' => 'args'
      }
    ]
  },
  {
    'return_type' => 'int',
    'name' => 'apr_dbd_pquery',
    'args' => [
      {
        'type' => 'const apr_dbd_driver_t *',
        'name' => 'driver'
      },
      {
        'type' => 'apr_pool_t *',
        'name' => 'pool'
      },
      {
        'type' => 'apr_dbd_t *',
        'name' => 'handle'
      },
      {
        'type' => 'int *',
        'name' => 'nrows'
      },
      {
        'type' => 'apr_dbd_prepared_t *',
        'name' => 'statement'
      },
      {
        'type' => 'int',
        'name' => 'nargs'
      },
      {
        'type' => 'const char **',
        'name' => 'args'
      }
    ]
  },
  {
    'return_type' => 'int',
    'name' => 'apr_dbd_prepare',
    'args' => [
      {
        'type' => 'const apr_dbd_driver_t *',
        'name' => 'driver'
      },
      {
        'type' => 'apr_pool_t *',
        'name' => 'pool'
      },
      {
        'type' => 'apr_dbd_t *',
        'name' => 'handle'
      },
      {
        'type' => 'const char *',
        'name' => 'query'
      },
      {
        'type' => 'const char *',
        'name' => 'label'
      },
      {
        'type' => 'apr_dbd_prepared_t **',
        'name' => 'statement'
      }
    ]
  },
  {
    'return_type' => 'int',
    'name' => 'apr_dbd_pselect',
    'args' => [
      {
        'type' => 'const apr_dbd_driver_t *',
        'name' => 'driver'
      },
      {
        'type' => 'apr_pool_t *',
        'name' => 'pool'
      },
      {
        'type' => 'apr_dbd_t *',
        'name' => 'handle'
      },
      {
        'type' => 'apr_dbd_results_t **',
        'name' => 'res'
      },
      {
        'type' => 'apr_dbd_prepared_t *',
        'name' => 'statement'
      },
      {
        'type' => 'int',
        'name' => 'random'
      },
      {
        'type' => 'int',
        'name' => 'nargs'
      },
      {
        'type' => 'const char **',
        'name' => 'args'
      }
    ]
  },
  {
    'return_type' => 'int',
    'name' => 'apr_dbd_pvbquery',
    'args' => [
      {
        'type' => 'const apr_dbd_driver_t *',
        'name' => 'driver'
      },
      {
        'type' => 'apr_pool_t *',
        'name' => 'pool'
      },
      {
        'type' => 'apr_dbd_t *',
        'name' => 'handle'
      },
      {
        'type' => 'int *',
        'name' => 'nrows'
      },
      {
        'type' => 'apr_dbd_prepared_t *',
        'name' => 'statement'
      },
      {
        'type' => '...',
        'name' => 'arg5'
      }
    ]
  },
  {
    'return_type' => 'int',
    'name' => 'apr_dbd_pvbselect',
    'args' => [
      {
        'type' => 'const apr_dbd_driver_t *',
        'name' => 'driver'
      },
      {
        'type' => 'apr_pool_t *',
        'name' => 'pool'
      },
      {
        'type' => 'apr_dbd_t *',
        'name' => 'handle'
      },
      {
        'type' => 'apr_dbd_results_t **',
        'name' => 'res'
      },
      {
        'type' => 'apr_dbd_prepared_t *',
        'name' => 'statement'
      },
      {
        'type' => 'int',
        'name' => 'random'
      },
      {
        'type' => '...',
        'name' => 'arg6'
      }
    ]
  },
  {
    'return_type' => 'int',
    'name' => 'apr_dbd_pvquery',
    'args' => [
      {
        'type' => 'const apr_dbd_driver_t *',
        'name' => 'driver'
      },
      {
        'type' => 'apr_pool_t *',
        'name' => 'pool'
      },
      {
        'type' => 'apr_dbd_t *',
        'name' => 'handle'
      },
      {
        'type' => 'int *',
        'name' => 'nrows'
      },
      {
        'type' => 'apr_dbd_prepared_t *',
        'name' => 'statement'
      },
      {
        'type' => '...',
        'name' => 'arg5'
      }
    ]
  },
  {
    'return_type' => 'int',
    'name' => 'apr_dbd_pvselect',
    'args' => [
      {
        'type' => 'const apr_dbd_driver_t *',
        'name' => 'driver'
      },
      {
        'type' => 'apr_pool_t *',
        'name' => 'pool'
      },
      {
        'type' => 'apr_dbd_t *',
        'name' => 'handle'
      },
      {
        'type' => 'apr_dbd_results_t **',
        'name' => 'res'
      },
      {
        'type' => 'apr_dbd_prepared_t *',
        'name' => 'statement'
      },
      {
        'type' => 'int',
        'name' => 'random'
      },
      {
        'type' => '...',
        'name' => 'arg6'
      }
    ]
  },
  {
    'return_type' => 'int',
    'name' => 'apr_dbd_query',
    'args' => [
      {
        'type' => 'const apr_dbd_driver_t *',
        'name' => 'driver'
      },
      {
        'type' => 'apr_dbd_t *',
        'name' => 'handle'
      },
      {
        'type' => 'int *',
        'name' => 'nrows'
      },
      {
        'type' => 'const char *',
        'name' => 'statement'
      }
    ]
  },
  {
    'return_type' => 'int',
    'name' => 'apr_dbd_select',
    'args' => [
      {
        'type' => 'const apr_dbd_driver_t *',
        'name' => 'driver'
      },
      {
        'type' => 'apr_pool_t *',
        'name' => 'pool'
      },
      {
        'type' => 'apr_dbd_t *',
        'name' => 'handle'
      },
      {
        'type' => 'apr_dbd_results_t **',
        'name' => 'res'
      },
      {
        'type' => 'const char *',
        'name' => 'statement'
      },
      {
        'type' => 'int',
        'name' => 'random'
      }
    ]
  },
  {
    'return_type' => 'int',
    'name' => 'apr_dbd_set_dbname',
    'args' => [
      {
        'type' => 'const apr_dbd_driver_t *',
        'name' => 'driver'
      },
      {
        'type' => 'apr_pool_t *',
        'name' => 'pool'
      },
      {
        'type' => 'apr_dbd_t *',
        'name' => 'handle'
      },
      {
        'type' => 'const char *',
        'name' => 'name'
      }
    ]
  },
  {
    'return_type' => 'int',
    'name' => 'apr_dbd_transaction_end',
    'args' => [
      {
        'type' => 'const apr_dbd_driver_t *',
        'name' => 'driver'
      },
      {
        'type' => 'apr_pool_t *',
        'name' => 'pool'
      },
      {
        'type' => 'apr_dbd_transaction_t *',
        'name' => 'trans'
      }
    ]
  },
  {
    'return_type' => 'int',
    'name' => 'apr_dbd_transaction_mode_get',
    'args' => [
      {
        'type' => 'const apr_dbd_driver_t *',
        'name' => 'driver'
      },
      {
        'type' => 'apr_dbd_transaction_t *',
        'name' => 'trans'
      }
    ]
  },
  {
    'return_type' => 'int',
    'name' => 'apr_dbd_transaction_mode_set',
    'args' => [
      {
        'type' => 'const apr_dbd_driver_t *',
        'name' => 'driver'
      },
      {
        'type' => 'apr_dbd_transaction_t *',
        'name' => 'trans'
      },
      {
        'type' => 'int',
        'name' => 'mode'
      }
    ]
  },
  {
    'return_type' => 'int',
    'name' => 'apr_dbd_transaction_start',
    'args' => [
      {
        'type' => 'const apr_dbd_driver_t *',
        'name' => 'driver'
      },
      {
        'type' => 'apr_pool_t *',
        'name' => 'pool'
      },
      {
        'type' => 'apr_dbd_t *',
        'name' => 'handle'
      },
      {
        'type' => 'apr_dbd_transaction_t **',
        'name' => 'trans'
      }
    ]
  },
  {
    'return_type' => 'void',
    'name' => 'apr_dbm_close',
    'args' => [
      {
        'type' => 'apr_dbm_t *',
        'name' => 'dbm'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_dbm_delete',
    'args' => [
      {
        'type' => 'apr_dbm_t *',
        'name' => 'dbm'
      },
      {
        'type' => 'apr_datum_t',
        'name' => 'key'
      }
    ]
  },
  {
    'return_type' => 'int',
    'name' => 'apr_dbm_exists',
    'args' => [
      {
        'type' => 'apr_dbm_t *',
        'name' => 'dbm'
      },
      {
        'type' => 'apr_datum_t',
        'name' => 'key'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_dbm_fetch',
    'args' => [
      {
        'type' => 'apr_dbm_t *',
        'name' => 'dbm'
      },
      {
        'type' => 'apr_datum_t',
        'name' => 'key'
      },
      {
        'type' => 'apr_datum_t *',
        'name' => 'pvalue'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_dbm_firstkey',
    'args' => [
      {
        'type' => 'apr_dbm_t *',
        'name' => 'dbm'
      },
      {
        'type' => 'apr_datum_t *',
        'name' => 'pkey'
      }
    ]
  },
  {
    'return_type' => 'void',
    'name' => 'apr_dbm_freedatum',
    'args' => [
      {
        'type' => 'apr_dbm_t *',
        'name' => 'dbm'
      },
      {
        'type' => 'apr_datum_t',
        'name' => 'data'
      }
    ]
  },
  {
    'return_type' => 'void',
    'name' => 'apr_dbm_get_usednames',
    'args' => [
      {
        'type' => 'apr_pool_t *',
        'name' => 'pool'
      },
      {
        'type' => 'const char *',
        'name' => 'pathname'
      },
      {
        'type' => 'const char **',
        'name' => 'used1'
      },
      {
        'type' => 'const char **',
        'name' => 'used2'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_dbm_get_usednames_ex',
    'args' => [
      {
        'type' => 'apr_pool_t *',
        'name' => 'pool'
      },
      {
        'type' => 'const char *',
        'name' => 'type'
      },
      {
        'type' => 'const char *',
        'name' => 'pathname'
      },
      {
        'type' => 'const char **',
        'name' => 'used1'
      },
      {
        'type' => 'const char **',
        'name' => 'used2'
      }
    ]
  },
  {
    'return_type' => 'char *',
    'name' => 'apr_dbm_geterror',
    'args' => [
      {
        'type' => 'apr_dbm_t *',
        'name' => 'dbm'
      },
      {
        'type' => 'int *',
        'name' => 'errcode'
      },
      {
        'type' => 'char *',
        'name' => 'errbuf'
      },
      {
        'type' => 'apr_size_t',
        'name' => 'errbufsize'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_dbm_nextkey',
    'args' => [
      {
        'type' => 'apr_dbm_t *',
        'name' => 'dbm'
      },
      {
        'type' => 'apr_datum_t *',
        'name' => 'pkey'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_dbm_open',
    'args' => [
      {
        'type' => 'apr_dbm_t **',
        'name' => 'dbm'
      },
      {
        'type' => 'const char *',
        'name' => 'name'
      },
      {
        'type' => 'apr_int32_t',
        'name' => 'mode'
      },
      {
        'type' => 'apr_fileperms_t',
        'name' => 'perm'
      },
      {
        'type' => 'apr_pool_t *',
        'name' => 'cntxt'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_dbm_open_ex',
    'args' => [
      {
        'type' => 'apr_dbm_t **',
        'name' => 'dbm'
      },
      {
        'type' => 'const char*',
        'name' => 'type'
      },
      {
        'type' => 'const char *',
        'name' => 'name'
      },
      {
        'type' => 'apr_int32_t',
        'name' => 'mode'
      },
      {
        'type' => 'apr_fileperms_t',
        'name' => 'perm'
      },
      {
        'type' => 'apr_pool_t *',
        'name' => 'cntxt'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_dbm_store',
    'args' => [
      {
        'type' => 'apr_dbm_t *',
        'name' => 'dbm'
      },
      {
        'type' => 'apr_datum_t',
        'name' => 'key'
      },
      {
        'type' => 'apr_datum_t',
        'name' => 'value'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_dir_close',
    'args' => [
      {
        'type' => 'apr_dir_t *',
        'name' => 'thedir'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_dir_make',
    'args' => [
      {
        'type' => 'const char *',
        'name' => 'path'
      },
      {
        'type' => 'apr_fileperms_t',
        'name' => 'perm'
      },
      {
        'type' => 'apr_pool_t *',
        'name' => 'pool'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_dir_make_recursive',
    'args' => [
      {
        'type' => 'const char *',
        'name' => 'path'
      },
      {
        'type' => 'apr_fileperms_t',
        'name' => 'perm'
      },
      {
        'type' => 'apr_pool_t *',
        'name' => 'pool'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_dir_open',
    'args' => [
      {
        'type' => 'apr_dir_t **',
        'name' => 'new_dir'
      },
      {
        'type' => 'const char *',
        'name' => 'dirname'
      },
      {
        'type' => 'apr_pool_t *',
        'name' => 'pool'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_dir_read',
    'args' => [
      {
        'type' => 'apr_finfo_t *',
        'name' => 'finfo'
      },
      {
        'type' => 'apr_int32_t',
        'name' => 'wanted'
      },
      {
        'type' => 'apr_dir_t *',
        'name' => 'thedir'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_dir_remove',
    'args' => [
      {
        'type' => 'const char *',
        'name' => 'path'
      },
      {
        'type' => 'apr_pool_t *',
        'name' => 'pool'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_dir_rewind',
    'args' => [
      {
        'type' => 'apr_dir_t *',
        'name' => 'thedir'
      }
    ]
  },
  {
    'return_type' => 'const char *',
    'name' => 'apr_dso_error',
    'args' => [
      {
        'type' => 'apr_dso_handle_t *',
        'name' => 'dso'
      },
      {
        'type' => 'char *',
        'name' => 'buf'
      },
      {
        'type' => 'apr_size_t',
        'name' => 'bufsize'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_dso_load',
    'args' => [
      {
        'type' => 'apr_dso_handle_t **',
        'name' => 'res_handle'
      },
      {
        'type' => 'const char *',
        'name' => 'path'
      },
      {
        'type' => 'apr_pool_t *',
        'name' => 'ctx'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_dso_sym',
    'args' => [
      {
        'type' => 'apr_dso_handle_sym_t *',
        'name' => 'ressym'
      },
      {
        'type' => 'apr_dso_handle_t *',
        'name' => 'handle'
      },
      {
        'type' => 'const char *',
        'name' => 'symname'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_dso_unload',
    'args' => [
      {
        'type' => 'apr_dso_handle_t *',
        'name' => 'handle'
      }
    ]
  },
  {
    'return_type' => 'void',
    'name' => 'apr_dynamic_fn_register',
    'args' => [
      {
        'type' => 'const char *',
        'name' => 'szName'
      },
      {
        'type' => 'apr_opt_fn_t *',
        'name' => 'pfn'
      }
    ]
  },
  {
    'return_type' => 'apr_opt_fn_t *',
    'name' => 'apr_dynamic_fn_retrieve',
    'args' => [
      {
        'type' => 'const char *',
        'name' => 'szName'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_env_delete',
    'args' => [
      {
        'type' => 'const char *',
        'name' => 'envvar'
      },
      {
        'type' => 'apr_pool_t *',
        'name' => 'pool'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_env_get',
    'args' => [
      {
        'type' => 'char **',
        'name' => 'value'
      },
      {
        'type' => 'const char *',
        'name' => 'envvar'
      },
      {
        'type' => 'apr_pool_t *',
        'name' => 'pool'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_env_set',
    'args' => [
      {
        'type' => 'const char *',
        'name' => 'envvar'
      },
      {
        'type' => 'const char *',
        'name' => 'value'
      },
      {
        'type' => 'apr_pool_t *',
        'name' => 'pool'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_file_append',
    'args' => [
      {
        'type' => 'const char *',
        'name' => 'from_path'
      },
      {
        'type' => 'const char *',
        'name' => 'to_path'
      },
      {
        'type' => 'apr_fileperms_t',
        'name' => 'perms'
      },
      {
        'type' => 'apr_pool_t *',
        'name' => 'pool'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_file_attrs_set',
    'args' => [
      {
        'type' => 'const char *',
        'name' => 'fname'
      },
      {
        'type' => 'apr_fileattrs_t',
        'name' => 'attributes'
      },
      {
        'type' => 'apr_fileattrs_t',
        'name' => 'attr_mask'
      },
      {
        'type' => 'apr_pool_t *',
        'name' => 'pool'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_file_buffer_set',
    'args' => [
      {
        'type' => 'apr_file_t *',
        'name' => 'thefile'
      },
      {
        'type' => 'char *',
        'name' => 'buffer'
      },
      {
        'type' => 'apr_size_t',
        'name' => 'bufsize'
      }
    ]
  },
  {
    'return_type' => 'apr_size_t',
    'name' => 'apr_file_buffer_size_get',
    'args' => [
      {
        'type' => 'apr_file_t *',
        'name' => 'thefile'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_file_close',
    'args' => [
      {
        'type' => 'apr_file_t *',
        'name' => 'file'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_file_copy',
    'args' => [
      {
        'type' => 'const char *',
        'name' => 'from_path'
      },
      {
        'type' => 'const char *',
        'name' => 'to_path'
      },
      {
        'type' => 'apr_fileperms_t',
        'name' => 'perms'
      },
      {
        'type' => 'apr_pool_t *',
        'name' => 'pool'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_file_data_get',
    'args' => [
      {
        'type' => 'void **',
        'name' => 'data'
      },
      {
        'type' => 'const char *',
        'name' => 'key'
      },
      {
        'type' => 'apr_file_t *',
        'name' => 'file'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_file_data_set',
    'args' => [
      {
        'type' => 'apr_file_t *',
        'name' => 'file'
      },
      {
        'type' => 'void *',
        'name' => 'data'
      },
      {
        'type' => 'const char *',
        'name' => 'key'
      },
      {
        'type' => 'apr_status_t (*cleanup)(void *)',
        'name' => 'arg3'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_file_datasync',
    'args' => [
      {
        'type' => 'apr_file_t *',
        'name' => 'thefile'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_file_dup',
    'args' => [
      {
        'type' => 'apr_file_t **',
        'name' => 'new_file'
      },
      {
        'type' => 'apr_file_t *',
        'name' => 'old_file'
      },
      {
        'type' => 'apr_pool_t *',
        'name' => 'p'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_file_dup2',
    'args' => [
      {
        'type' => 'apr_file_t *',
        'name' => 'new_file'
      },
      {
        'type' => 'apr_file_t *',
        'name' => 'old_file'
      },
      {
        'type' => 'apr_pool_t *',
        'name' => 'p'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_file_eof',
    'args' => [
      {
        'type' => 'apr_file_t *',
        'name' => 'fptr'
      }
    ]
  },
  {
    'return_type' => 'apr_int32_t',
    'name' => 'apr_file_flags_get',
    'args' => [
      {
        'type' => 'apr_file_t *',
        'name' => 'f'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_file_flush',
    'args' => [
      {
        'type' => 'apr_file_t *',
        'name' => 'thefile'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_file_getc',
    'args' => [
      {
        'type' => 'char *',
        'name' => 'ch'
      },
      {
        'type' => 'apr_file_t *',
        'name' => 'thefile'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_file_gets',
    'args' => [
      {
        'type' => 'char *',
        'name' => 'str'
      },
      {
        'type' => 'int',
        'name' => 'len'
      },
      {
        'type' => 'apr_file_t *',
        'name' => 'thefile'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_file_info_get',
    'args' => [
      {
        'type' => 'apr_finfo_t *',
        'name' => 'finfo'
      },
      {
        'type' => 'apr_int32_t',
        'name' => 'wanted'
      },
      {
        'type' => 'apr_file_t *',
        'name' => 'thefile'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_file_inherit_set',
    'args' => [
      {
        'type' => 'apr_file_t *',
        'name' => 'thefile'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_file_inherit_unset',
    'args' => [
      {
        'type' => 'apr_file_t *',
        'name' => 'thefile'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_file_link',
    'args' => [
      {
        'type' => 'const char *',
        'name' => 'from_path'
      },
      {
        'type' => 'const char *',
        'name' => 'to_path'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_file_lock',
    'args' => [
      {
        'type' => 'apr_file_t *',
        'name' => 'thefile'
      },
      {
        'type' => 'int',
        'name' => 'type'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_file_mktemp',
    'args' => [
      {
        'type' => 'apr_file_t **',
        'name' => 'fp'
      },
      {
        'type' => 'char *',
        'name' => 'templ'
      },
      {
        'type' => 'apr_int32_t',
        'name' => 'flags'
      },
      {
        'type' => 'apr_pool_t *',
        'name' => 'p'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_file_mtime_set',
    'args' => [
      {
        'type' => 'const char *',
        'name' => 'fname'
      },
      {
        'type' => 'apr_time_t',
        'name' => 'mtime'
      },
      {
        'type' => 'apr_pool_t *',
        'name' => 'pool'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_file_name_get',
    'args' => [
      {
        'type' => 'const char **',
        'name' => 'new_path'
      },
      {
        'type' => 'apr_file_t *',
        'name' => 'thefile'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_file_namedpipe_create',
    'args' => [
      {
        'type' => 'const char *',
        'name' => 'filename'
      },
      {
        'type' => 'apr_fileperms_t',
        'name' => 'perm'
      },
      {
        'type' => 'apr_pool_t *',
        'name' => 'pool'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_file_open',
    'args' => [
      {
        'type' => 'apr_file_t **',
        'name' => 'newf'
      },
      {
        'type' => 'const char *',
        'name' => 'fname'
      },
      {
        'type' => 'apr_int32_t',
        'name' => 'flag'
      },
      {
        'type' => 'apr_fileperms_t',
        'name' => 'perm'
      },
      {
        'type' => 'apr_pool_t *',
        'name' => 'pool'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_file_open_flags_stderr',
    'args' => [
      {
        'type' => 'apr_file_t **',
        'name' => 'thefile'
      },
      {
        'type' => 'apr_int32_t',
        'name' => 'flags'
      },
      {
        'type' => 'apr_pool_t *',
        'name' => 'pool'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_file_open_flags_stdin',
    'args' => [
      {
        'type' => 'apr_file_t **',
        'name' => 'thefile'
      },
      {
        'type' => 'apr_int32_t',
        'name' => 'flags'
      },
      {
        'type' => 'apr_pool_t *',
        'name' => 'pool'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_file_open_flags_stdout',
    'args' => [
      {
        'type' => 'apr_file_t **',
        'name' => 'thefile'
      },
      {
        'type' => 'apr_int32_t',
        'name' => 'flags'
      },
      {
        'type' => 'apr_pool_t *',
        'name' => 'pool'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_file_open_stderr',
    'args' => [
      {
        'type' => 'apr_file_t **',
        'name' => 'thefile'
      },
      {
        'type' => 'apr_pool_t *',
        'name' => 'pool'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_file_open_stdin',
    'args' => [
      {
        'type' => 'apr_file_t **',
        'name' => 'thefile'
      },
      {
        'type' => 'apr_pool_t *',
        'name' => 'pool'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_file_open_stdout',
    'args' => [
      {
        'type' => 'apr_file_t **',
        'name' => 'thefile'
      },
      {
        'type' => 'apr_pool_t *',
        'name' => 'pool'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_file_perms_set',
    'args' => [
      {
        'type' => 'const char *',
        'name' => 'fname'
      },
      {
        'type' => 'apr_fileperms_t',
        'name' => 'perms'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_file_pipe_create',
    'args' => [
      {
        'type' => 'apr_file_t **',
        'name' => 'in'
      },
      {
        'type' => 'apr_file_t **',
        'name' => 'out'
      },
      {
        'type' => 'apr_pool_t *',
        'name' => 'pool'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_file_pipe_create_ex',
    'args' => [
      {
        'type' => 'apr_file_t **',
        'name' => 'in'
      },
      {
        'type' => 'apr_file_t **',
        'name' => 'out'
      },
      {
        'type' => 'apr_int32_t',
        'name' => 'blocking'
      },
      {
        'type' => 'apr_pool_t *',
        'name' => 'pool'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_file_pipe_timeout_get',
    'args' => [
      {
        'type' => 'apr_file_t *',
        'name' => 'thepipe'
      },
      {
        'type' => 'apr_interval_time_t *',
        'name' => 'timeout'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_file_pipe_timeout_set',
    'args' => [
      {
        'type' => 'apr_file_t *',
        'name' => 'thepipe'
      },
      {
        'type' => 'apr_interval_time_t',
        'name' => 'timeout'
      }
    ]
  },
  {
    'return_type' => 'apr_pool_t *',
    'name' => 'apr_file_pool_get',
    'args' => [
      {
        'type' => 'const apr_file_t *',
        'name' => 'thefile'
      }
    ]
  },
  {
    'return_type' => 'int',
    'name' => 'apr_file_printf',
    'args' => [
      {
        'type' => 'apr_file_t *',
        'name' => 'fptr'
      },
      {
        'type' => 'const char *',
        'name' => 'format'
      },
      {
        'type' => '...',
        'name' => 'arg2'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_file_putc',
    'args' => [
      {
        'type' => 'char',
        'name' => 'ch'
      },
      {
        'type' => 'apr_file_t *',
        'name' => 'thefile'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_file_puts',
    'args' => [
      {
        'type' => 'const char *',
        'name' => 'str'
      },
      {
        'type' => 'apr_file_t *',
        'name' => 'thefile'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_file_read',
    'args' => [
      {
        'type' => 'apr_file_t *',
        'name' => 'thefile'
      },
      {
        'type' => 'void *',
        'name' => 'buf'
      },
      {
        'type' => 'apr_size_t *',
        'name' => 'nbytes'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_file_read_full',
    'args' => [
      {
        'type' => 'apr_file_t *',
        'name' => 'thefile'
      },
      {
        'type' => 'void *',
        'name' => 'buf'
      },
      {
        'type' => 'apr_size_t',
        'name' => 'nbytes'
      },
      {
        'type' => 'apr_size_t *',
        'name' => 'bytes_read'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_file_remove',
    'args' => [
      {
        'type' => 'const char *',
        'name' => 'path'
      },
      {
        'type' => 'apr_pool_t *',
        'name' => 'pool'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_file_rename',
    'args' => [
      {
        'type' => 'const char *',
        'name' => 'from_path'
      },
      {
        'type' => 'const char *',
        'name' => 'to_path'
      },
      {
        'type' => 'apr_pool_t *',
        'name' => 'pool'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_file_seek',
    'args' => [
      {
        'type' => 'apr_file_t *',
        'name' => 'thefile'
      },
      {
        'type' => 'apr_seek_where_t',
        'name' => 'where'
      },
      {
        'type' => 'apr_off_t *',
        'name' => 'offset'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_file_setaside',
    'args' => [
      {
        'type' => 'apr_file_t **',
        'name' => 'new_file'
      },
      {
        'type' => 'apr_file_t *',
        'name' => 'old_file'
      },
      {
        'type' => 'apr_pool_t *',
        'name' => 'p'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_file_sync',
    'args' => [
      {
        'type' => 'apr_file_t *',
        'name' => 'thefile'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_file_trunc',
    'args' => [
      {
        'type' => 'apr_file_t *',
        'name' => 'fp'
      },
      {
        'type' => 'apr_off_t',
        'name' => 'offset'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_file_ungetc',
    'args' => [
      {
        'type' => 'char',
        'name' => 'ch'
      },
      {
        'type' => 'apr_file_t *',
        'name' => 'thefile'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_file_unlock',
    'args' => [
      {
        'type' => 'apr_file_t *',
        'name' => 'thefile'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_file_write',
    'args' => [
      {
        'type' => 'apr_file_t *',
        'name' => 'thefile'
      },
      {
        'type' => 'const void *',
        'name' => 'buf'
      },
      {
        'type' => 'apr_size_t *',
        'name' => 'nbytes'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_file_write_full',
    'args' => [
      {
        'type' => 'apr_file_t *',
        'name' => 'thefile'
      },
      {
        'type' => 'const void *',
        'name' => 'buf'
      },
      {
        'type' => 'apr_size_t',
        'name' => 'nbytes'
      },
      {
        'type' => 'apr_size_t *',
        'name' => 'bytes_written'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_file_writev',
    'args' => [
      {
        'type' => 'apr_file_t *',
        'name' => 'thefile'
      },
      {
        'type' => 'const struct iovec *',
        'name' => 'vec'
      },
      {
        'type' => 'apr_size_t',
        'name' => 'nvec'
      },
      {
        'type' => 'apr_size_t *',
        'name' => 'nbytes'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_file_writev_full',
    'args' => [
      {
        'type' => 'apr_file_t *',
        'name' => 'thefile'
      },
      {
        'type' => 'const struct iovec *',
        'name' => 'vec'
      },
      {
        'type' => 'apr_size_t',
        'name' => 'nvec'
      },
      {
        'type' => 'apr_size_t *',
        'name' => 'nbytes'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_filepath_encoding',
    'args' => [
      {
        'type' => 'int *',
        'name' => 'style'
      },
      {
        'type' => 'apr_pool_t *',
        'name' => 'p'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_filepath_get',
    'args' => [
      {
        'type' => 'char **',
        'name' => 'path'
      },
      {
        'type' => 'apr_int32_t',
        'name' => 'flags'
      },
      {
        'type' => 'apr_pool_t *',
        'name' => 'p'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_filepath_list_merge',
    'args' => [
      {
        'type' => 'char **',
        'name' => 'liststr'
      },
      {
        'type' => 'apr_array_header_t *',
        'name' => 'pathelts'
      },
      {
        'type' => 'apr_pool_t *',
        'name' => 'p'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_filepath_list_split',
    'args' => [
      {
        'type' => 'apr_array_header_t **',
        'name' => 'pathelts'
      },
      {
        'type' => 'const char *',
        'name' => 'liststr'
      },
      {
        'type' => 'apr_pool_t *',
        'name' => 'p'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_filepath_merge',
    'args' => [
      {
        'type' => 'char **',
        'name' => 'newpath'
      },
      {
        'type' => 'const char *',
        'name' => 'rootpath'
      },
      {
        'type' => 'const char *',
        'name' => 'addpath'
      },
      {
        'type' => 'apr_int32_t',
        'name' => 'flags'
      },
      {
        'type' => 'apr_pool_t *',
        'name' => 'p'
      }
    ]
  },
  {
    'return_type' => 'const char *',
    'name' => 'apr_filepath_name_get',
    'args' => [
      {
        'type' => 'const char *',
        'name' => 'pathname'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_filepath_root',
    'args' => [
      {
        'type' => 'const char **',
        'name' => 'rootpath'
      },
      {
        'type' => 'const char **',
        'name' => 'filepath'
      },
      {
        'type' => 'apr_int32_t',
        'name' => 'flags'
      },
      {
        'type' => 'apr_pool_t *',
        'name' => 'p'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_filepath_set',
    'args' => [
      {
        'type' => 'const char *',
        'name' => 'path'
      },
      {
        'type' => 'apr_pool_t *',
        'name' => 'p'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_fnmatch',
    'args' => [
      {
        'type' => 'const char *',
        'name' => 'pattern'
      },
      {
        'type' => 'const char *',
        'name' => 'strings'
      },
      {
        'type' => 'int',
        'name' => 'flags'
      }
    ]
  },
  {
    'return_type' => 'int',
    'name' => 'apr_fnmatch_test',
    'args' => [
      {
        'type' => 'const char *',
        'name' => 'pattern'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_generate_random_bytes',
    'args' => [
      {
        'type' => 'unsigned char *',
        'name' => 'buf'
      },
      {
        'type' => 'apr_size_t',
        'name' => 'length'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_gethostname',
    'args' => [
      {
        'type' => 'char *',
        'name' => 'buf'
      },
      {
        'type' => 'int',
        'name' => 'len'
      },
      {
        'type' => 'apr_pool_t *',
        'name' => 'cont'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_getnameinfo',
    'args' => [
      {
        'type' => 'char **',
        'name' => 'hostname'
      },
      {
        'type' => 'apr_sockaddr_t *',
        'name' => 'sa'
      },
      {
        'type' => 'apr_int32_t',
        'name' => 'flags'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_getopt',
    'args' => [
      {
        'type' => 'apr_getopt_t *',
        'name' => 'os'
      },
      {
        'type' => 'const char *',
        'name' => 'opts'
      },
      {
        'type' => 'char *',
        'name' => 'option_ch'
      },
      {
        'type' => 'const char **',
        'name' => 'option_arg'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_getopt_init',
    'args' => [
      {
        'type' => 'apr_getopt_t **',
        'name' => 'os'
      },
      {
        'type' => 'apr_pool_t *',
        'name' => 'cont'
      },
      {
        'type' => 'int',
        'name' => 'argc'
      },
      {
        'type' => 'const char * const *',
        'name' => 'argv'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_getopt_long',
    'args' => [
      {
        'type' => 'apr_getopt_t *',
        'name' => 'os'
      },
      {
        'type' => 'const apr_getopt_option_t *',
        'name' => 'opts'
      },
      {
        'type' => 'int *',
        'name' => 'option_ch'
      },
      {
        'type' => 'const char **',
        'name' => 'option_arg'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_getservbyname',
    'args' => [
      {
        'type' => 'apr_sockaddr_t *',
        'name' => 'sockaddr'
      },
      {
        'type' => 'const char *',
        'name' => 'servname'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_gid_get',
    'args' => [
      {
        'type' => 'apr_gid_t *',
        'name' => 'groupid'
      },
      {
        'type' => 'const char *',
        'name' => 'groupname'
      },
      {
        'type' => 'apr_pool_t *',
        'name' => 'p'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_gid_name_get',
    'args' => [
      {
        'type' => 'char **',
        'name' => 'groupname'
      },
      {
        'type' => 'apr_gid_t',
        'name' => 'groupid'
      },
      {
        'type' => 'apr_pool_t *',
        'name' => 'p'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_global_mutex_child_init',
    'args' => [
      {
        'type' => 'apr_global_mutex_t **',
        'name' => 'mutex'
      },
      {
        'type' => 'const char *',
        'name' => 'fname'
      },
      {
        'type' => 'apr_pool_t *',
        'name' => 'pool'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_global_mutex_create',
    'args' => [
      {
        'type' => 'apr_global_mutex_t **',
        'name' => 'mutex'
      },
      {
        'type' => 'const char *',
        'name' => 'fname'
      },
      {
        'type' => 'apr_lockmech_e',
        'name' => 'mech'
      },
      {
        'type' => 'apr_pool_t *',
        'name' => 'pool'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_global_mutex_destroy',
    'args' => [
      {
        'type' => 'apr_global_mutex_t *',
        'name' => 'mutex'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_global_mutex_lock',
    'args' => [
      {
        'type' => 'apr_global_mutex_t *',
        'name' => 'mutex'
      }
    ]
  },
  {
    'return_type' => 'const char *',
    'name' => 'apr_global_mutex_lockfile',
    'args' => [
      {
        'type' => 'apr_global_mutex_t *',
        'name' => 'mutex'
      }
    ]
  },
  {
    'return_type' => 'const char *',
    'name' => 'apr_global_mutex_name',
    'args' => [
      {
        'type' => 'apr_global_mutex_t *',
        'name' => 'mutex'
      }
    ]
  },
  {
    'return_type' => 'apr_pool_t *',
    'name' => 'apr_global_mutex_pool_get',
    'args' => [
      {
        'type' => 'const apr_global_mutex_t *',
        'name' => 'theglobal_mutex'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_global_mutex_trylock',
    'args' => [
      {
        'type' => 'apr_global_mutex_t *',
        'name' => 'mutex'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_global_mutex_unlock',
    'args' => [
      {
        'type' => 'apr_global_mutex_t *',
        'name' => 'mutex'
      }
    ]
  },
  {
    'return_type' => 'void',
    'name' => 'apr_hash_clear',
    'args' => [
      {
        'type' => 'apr_hash_t *',
        'name' => 'ht'
      }
    ]
  },
  {
    'return_type' => 'apr_hash_t *',
    'name' => 'apr_hash_copy',
    'args' => [
      {
        'type' => 'apr_pool_t *',
        'name' => 'pool'
      },
      {
        'type' => 'const apr_hash_t *',
        'name' => 'h'
      }
    ]
  },
  {
    'return_type' => 'unsigned int',
    'name' => 'apr_hash_count',
    'args' => [
      {
        'type' => 'apr_hash_t *',
        'name' => 'ht'
      }
    ]
  },
  {
    'return_type' => 'int',
    'name' => 'apr_hash_do',
    'args' => [
      {
        'type' => 'apr_hash_do_callback_fn_t *comp',
        'name' => 'arg0'
      },
      {
        'type' => 'void *',
        'name' => 'rec'
      },
      {
        'type' => 'const apr_hash_t *',
        'name' => 'ht'
      }
    ]
  },
  {
    'return_type' => 'apr_hash_index_t *',
    'name' => 'apr_hash_first',
    'args' => [
      {
        'type' => 'apr_pool_t *',
        'name' => 'p'
      },
      {
        'type' => 'apr_hash_t *',
        'name' => 'ht'
      }
    ]
  },
  {
    'return_type' => 'void *',
    'name' => 'apr_hash_get',
    'args' => [
      {
        'type' => 'apr_hash_t *',
        'name' => 'ht'
      },
      {
        'type' => 'const void *',
        'name' => 'key'
      },
      {
        'type' => 'apr_ssize_t',
        'name' => 'klen'
      }
    ]
  },
  {
    'return_type' => 'apr_hash_t *',
    'name' => 'apr_hash_make',
    'args' => [
      {
        'type' => 'apr_pool_t *',
        'name' => 'pool'
      }
    ]
  },
  {
    'return_type' => 'apr_hash_t *',
    'name' => 'apr_hash_make_custom',
    'args' => [
      {
        'type' => 'apr_pool_t *',
        'name' => 'pool'
      },
      {
        'type' => 'apr_hashfunc_t',
        'name' => 'hash_func'
      }
    ]
  },
  {
    'return_type' => 'apr_hash_t *',
    'name' => 'apr_hash_merge',
    'args' => [
      {
        'type' => 'apr_pool_t *',
        'name' => 'p'
      },
      {
        'type' => 'const apr_hash_t *',
        'name' => 'h1'
      },
      {
        'type' => 'const apr_hash_t *',
        'name' => 'h2'
      },
      {
        'type' => 'void * (*merger)(apr_pool_t *p, const void *key, apr_ssize_t klen, const void *h1_val, const void *h2_val, const void *data)',
        'name' => 'arg3'
      },
      {
        'type' => 'const void *',
        'name' => 'data'
      }
    ]
  },
  {
    'return_type' => 'apr_hash_index_t *',
    'name' => 'apr_hash_next',
    'args' => [
      {
        'type' => 'apr_hash_index_t *',
        'name' => 'hi'
      }
    ]
  },
  {
    'return_type' => 'apr_hash_t *',
    'name' => 'apr_hash_overlay',
    'args' => [
      {
        'type' => 'apr_pool_t *',
        'name' => 'p'
      },
      {
        'type' => 'const apr_hash_t *',
        'name' => 'overlay'
      },
      {
        'type' => 'const apr_hash_t *',
        'name' => 'base'
      }
    ]
  },
  {
    'return_type' => 'apr_pool_t *',
    'name' => 'apr_hash_pool_get',
    'args' => [
      {
        'type' => 'const apr_hash_t *',
        'name' => 'thehash'
      }
    ]
  },
  {
    'return_type' => 'void',
    'name' => 'apr_hash_set',
    'args' => [
      {
        'type' => 'apr_hash_t *',
        'name' => 'ht'
      },
      {
        'type' => 'const void *',
        'name' => 'key'
      },
      {
        'type' => 'apr_ssize_t',
        'name' => 'klen'
      },
      {
        'type' => 'const void *',
        'name' => 'val'
      }
    ]
  },
  {
    'return_type' => 'void',
    'name' => 'apr_hash_this',
    'args' => [
      {
        'type' => 'apr_hash_index_t *',
        'name' => 'hi'
      },
      {
        'type' => 'const void **',
        'name' => 'key'
      },
      {
        'type' => 'apr_ssize_t *',
        'name' => 'klen'
      },
      {
        'type' => 'void **',
        'name' => 'val'
      }
    ]
  },
  {
    'return_type' => 'unsigned int',
    'name' => 'apr_hashfunc_default',
    'args' => [
      {
        'type' => 'const char *',
        'name' => 'key'
      },
      {
        'type' => 'apr_ssize_t *',
        'name' => 'klen'
      }
    ]
  },
  {
    'return_type' => 'void',
    'name' => 'apr_hook_debug_show',
    'args' => [
      {
        'type' => 'const char *',
        'name' => 'szName'
      },
      {
        'type' => 'const char * const *',
        'name' => 'aszPre'
      },
      {
        'type' => 'const char * const *',
        'name' => 'aszSucc'
      }
    ]
  },
  {
    'return_type' => 'void',
    'name' => 'apr_hook_deregister_all',
    'args' => []
  },
  {
    'return_type' => 'void',
    'name' => 'apr_hook_sort_all',
    'args' => []
  },
  {
    'return_type' => 'void',
    'name' => 'apr_hook_sort_register',
    'args' => [
      {
        'type' => 'const char *',
        'name' => 'szHookName'
      },
      {
        'type' => 'apr_array_header_t **',
        'name' => 'aHooks'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_initialize',
    'args' => []
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_ipsubnet_create',
    'args' => [
      {
        'type' => 'apr_ipsubnet_t **',
        'name' => 'ipsub'
      },
      {
        'type' => 'const char *',
        'name' => 'ipstr'
      },
      {
        'type' => 'const char *',
        'name' => 'mask_or_numbits'
      },
      {
        'type' => 'apr_pool_t *',
        'name' => 'p'
      }
    ]
  },
  {
    'return_type' => 'int',
    'name' => 'apr_ipsubnet_test',
    'args' => [
      {
        'type' => 'apr_ipsubnet_t *',
        'name' => 'ipsub'
      },
      {
        'type' => 'apr_sockaddr_t *',
        'name' => 'sa'
      }
    ]
  },
  {
    'return_type' => 'int',
    'name' => 'apr_is_empty_array',
    'args' => [
      {
        'type' => 'const apr_array_header_t *',
        'name' => 'a'
      }
    ]
  },
  {
    'return_type' => 'int',
    'name' => 'apr_is_empty_table',
    'args' => [
      {
        'type' => 'const apr_table_t *',
        'name' => 't'
      }
    ]
  },
  {
    'return_type' => 'char *',
    'name' => 'apr_itoa',
    'args' => [
      {
        'type' => 'apr_pool_t *',
        'name' => 'p'
      },
      {
        'type' => 'int',
        'name' => 'n'
      }
    ]
  },
  {
    'return_type' => 'int',
    'name' => 'apr_ldap_get_option',
    'args' => [
      {
        'type' => 'apr_pool_t *',
        'name' => 'pool'
      },
      {
        'type' => 'LDAP *',
        'name' => 'ldap'
      },
      {
        'type' => 'int',
        'name' => 'option'
      },
      {
        'type' => 'void *',
        'name' => 'outvalue'
      },
      {
        'type' => 'apr_ldap_err_t **',
        'name' => 'result_err'
      }
    ]
  },
  {
    'return_type' => 'int',
    'name' => 'apr_ldap_info',
    'args' => [
      {
        'type' => 'apr_pool_t *',
        'name' => 'pool'
      },
      {
        'type' => 'apr_ldap_err_t **',
        'name' => 'result_err'
      }
    ]
  },
  {
    'return_type' => 'int',
    'name' => 'apr_ldap_init',
    'args' => [
      {
        'type' => 'apr_pool_t *',
        'name' => 'pool'
      },
      {
        'type' => 'LDAP **',
        'name' => 'ldap'
      },
      {
        'type' => 'const char *',
        'name' => 'hostname'
      },
      {
        'type' => 'int',
        'name' => 'portno'
      },
      {
        'type' => 'int',
        'name' => 'secure'
      },
      {
        'type' => 'apr_ldap_err_t **',
        'name' => 'result_err'
      }
    ]
  },
  {
    'return_type' => 'int',
    'name' => 'apr_ldap_is_ldap_url',
    'args' => [
      {
        'type' => 'const char *',
        'name' => 'url'
      }
    ]
  },
  {
    'return_type' => 'int',
    'name' => 'apr_ldap_is_ldapi_url',
    'args' => [
      {
        'type' => 'const char *',
        'name' => 'url'
      }
    ]
  },
  {
    'return_type' => 'int',
    'name' => 'apr_ldap_is_ldaps_url',
    'args' => [
      {
        'type' => 'const char *',
        'name' => 'url'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_ldap_rebind_add',
    'args' => [
      {
        'type' => 'apr_pool_t *',
        'name' => 'pool'
      },
      {
        'type' => 'LDAP *',
        'name' => 'ld'
      },
      {
        'type' => 'const char *',
        'name' => 'bindDN'
      },
      {
        'type' => 'const char *',
        'name' => 'bindPW'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_ldap_rebind_init',
    'args' => [
      {
        'type' => 'apr_pool_t *',
        'name' => 'pool'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_ldap_rebind_remove',
    'args' => [
      {
        'type' => 'LDAP *',
        'name' => 'ld'
      }
    ]
  },
  {
    'return_type' => 'int',
    'name' => 'apr_ldap_set_option',
    'args' => [
      {
        'type' => 'apr_pool_t *',
        'name' => 'pool'
      },
      {
        'type' => 'LDAP *',
        'name' => 'ldap'
      },
      {
        'type' => 'int',
        'name' => 'option'
      },
      {
        'type' => 'const void *',
        'name' => 'invalue'
      },
      {
        'type' => 'apr_ldap_err_t **',
        'name' => 'result_err'
      }
    ]
  },
  {
    'return_type' => 'int',
    'name' => 'apr_ldap_ssl_deinit',
    'args' => []
  },
  {
    'return_type' => 'int',
    'name' => 'apr_ldap_ssl_init',
    'args' => [
      {
        'type' => 'apr_pool_t *',
        'name' => 'pool'
      },
      {
        'type' => 'const char *',
        'name' => 'cert_auth_file'
      },
      {
        'type' => 'int',
        'name' => 'cert_file_type'
      },
      {
        'type' => 'apr_ldap_err_t **',
        'name' => 'result_err'
      }
    ]
  },
  {
    'return_type' => 'int',
    'name' => 'apr_ldap_url_parse',
    'args' => [
      {
        'type' => 'apr_pool_t *',
        'name' => 'pool'
      },
      {
        'type' => 'const char *',
        'name' => 'url_in'
      },
      {
        'type' => 'apr_ldap_url_desc_t **',
        'name' => 'ludpp'
      },
      {
        'type' => 'apr_ldap_err_t **',
        'name' => 'result_err'
      }
    ]
  },
  {
    'return_type' => 'int',
    'name' => 'apr_ldap_url_parse_ext',
    'args' => [
      {
        'type' => 'apr_pool_t *',
        'name' => 'pool'
      },
      {
        'type' => 'const char *',
        'name' => 'url_in'
      },
      {
        'type' => 'apr_ldap_url_desc_t **',
        'name' => 'ludpp'
      },
      {
        'type' => 'apr_ldap_err_t **',
        'name' => 'result_err'
      }
    ]
  },
  {
    'return_type' => 'char *',
    'name' => 'apr_ltoa',
    'args' => [
      {
        'type' => 'apr_pool_t *',
        'name' => 'p'
      },
      {
        'type' => 'long',
        'name' => 'n'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_match_glob',
    'args' => [
      {
        'type' => 'const char *',
        'name' => 'pattern'
      },
      {
        'type' => 'apr_array_header_t **',
        'name' => 'result'
      },
      {
        'type' => 'apr_pool_t *',
        'name' => 'p'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_mcast_hops',
    'args' => [
      {
        'type' => 'apr_socket_t *',
        'name' => 'sock'
      },
      {
        'type' => 'apr_byte_t',
        'name' => 'ttl'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_mcast_interface',
    'args' => [
      {
        'type' => 'apr_socket_t *',
        'name' => 'sock'
      },
      {
        'type' => 'apr_sockaddr_t *',
        'name' => 'iface'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_mcast_join',
    'args' => [
      {
        'type' => 'apr_socket_t *',
        'name' => 'sock'
      },
      {
        'type' => 'apr_sockaddr_t *',
        'name' => 'join'
      },
      {
        'type' => 'apr_sockaddr_t *',
        'name' => 'iface'
      },
      {
        'type' => 'apr_sockaddr_t *',
        'name' => 'source'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_mcast_leave',
    'args' => [
      {
        'type' => 'apr_socket_t *',
        'name' => 'sock'
      },
      {
        'type' => 'apr_sockaddr_t *',
        'name' => 'addr'
      },
      {
        'type' => 'apr_sockaddr_t *',
        'name' => 'iface'
      },
      {
        'type' => 'apr_sockaddr_t *',
        'name' => 'source'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_mcast_loopback',
    'args' => [
      {
        'type' => 'apr_socket_t *',
        'name' => 'sock'
      },
      {
        'type' => 'apr_byte_t',
        'name' => 'opt'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_md4',
    'args' => [
      {
        'type' => 'unsigned char',
        'name' => 'digest'
      },
      {
        'type' => 'const unsigned char *',
        'name' => 'input'
      },
      {
        'type' => 'apr_size_t',
        'name' => 'inputLen'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_md4_final',
    'args' => [
      {
        'type' => 'unsigned char',
        'name' => 'digest'
      },
      {
        'type' => 'apr_md4_ctx_t *',
        'name' => 'context'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_md4_init',
    'args' => [
      {
        'type' => 'apr_md4_ctx_t *',
        'name' => 'context'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_md4_set_xlate',
    'args' => [
      {
        'type' => 'apr_md4_ctx_t *',
        'name' => 'context'
      },
      {
        'type' => 'apr_xlate_t *',
        'name' => 'xlate'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_md4_update',
    'args' => [
      {
        'type' => 'apr_md4_ctx_t *',
        'name' => 'context'
      },
      {
        'type' => 'const unsigned char *',
        'name' => 'input'
      },
      {
        'type' => 'apr_size_t',
        'name' => 'inputLen'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_md5',
    'args' => [
      {
        'type' => 'unsigned char',
        'name' => 'digest'
      },
      {
        'type' => 'const void *',
        'name' => 'input'
      },
      {
        'type' => 'apr_size_t',
        'name' => 'inputLen'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_md5_encode',
    'args' => [
      {
        'type' => 'const char *',
        'name' => 'password'
      },
      {
        'type' => 'const char *',
        'name' => 'salt'
      },
      {
        'type' => 'char *',
        'name' => 'result'
      },
      {
        'type' => 'apr_size_t',
        'name' => 'nbytes'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_md5_final',
    'args' => [
      {
        'type' => 'unsigned char',
        'name' => 'digest'
      },
      {
        'type' => 'apr_md5_ctx_t *',
        'name' => 'context'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_md5_init',
    'args' => [
      {
        'type' => 'apr_md5_ctx_t *',
        'name' => 'context'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_md5_set_xlate',
    'args' => [
      {
        'type' => 'apr_md5_ctx_t *',
        'name' => 'context'
      },
      {
        'type' => 'apr_xlate_t *',
        'name' => 'xlate'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_md5_update',
    'args' => [
      {
        'type' => 'apr_md5_ctx_t *',
        'name' => 'context'
      },
      {
        'type' => 'const void *',
        'name' => 'input'
      },
      {
        'type' => 'apr_size_t',
        'name' => 'inputLen'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_memcache_add',
    'args' => [
      {
        'type' => 'apr_memcache_t *',
        'name' => 'mc'
      },
      {
        'type' => 'const char *',
        'name' => 'key'
      },
      {
        'type' => 'char *',
        'name' => 'baton'
      },
      {
        'type' => 'const apr_size_t',
        'name' => 'data_size'
      },
      {
        'type' => 'apr_uint32_t',
        'name' => 'timeout'
      },
      {
        'type' => 'apr_uint16_t',
        'name' => 'flags'
      }
    ]
  },
  {
    'return_type' => 'void',
    'name' => 'apr_memcache_add_multget_key',
    'args' => [
      {
        'type' => 'apr_pool_t *',
        'name' => 'data_pool'
      },
      {
        'type' => 'const char*',
        'name' => 'key'
      },
      {
        'type' => 'apr_hash_t **',
        'name' => 'values'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_memcache_add_server',
    'args' => [
      {
        'type' => 'apr_memcache_t *',
        'name' => 'mc'
      },
      {
        'type' => 'apr_memcache_server_t *',
        'name' => 'server'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_memcache_create',
    'args' => [
      {
        'type' => 'apr_pool_t *',
        'name' => 'p'
      },
      {
        'type' => 'apr_uint16_t',
        'name' => 'max_servers'
      },
      {
        'type' => 'apr_uint32_t',
        'name' => 'flags'
      },
      {
        'type' => 'apr_memcache_t **',
        'name' => 'mc'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_memcache_decr',
    'args' => [
      {
        'type' => 'apr_memcache_t *',
        'name' => 'mc'
      },
      {
        'type' => 'const char *',
        'name' => 'key'
      },
      {
        'type' => 'apr_int32_t',
        'name' => 'n'
      },
      {
        'type' => 'apr_uint32_t *',
        'name' => 'new_value'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_memcache_delete',
    'args' => [
      {
        'type' => 'apr_memcache_t *',
        'name' => 'mc'
      },
      {
        'type' => 'const char *',
        'name' => 'key'
      },
      {
        'type' => 'apr_uint32_t',
        'name' => 'timeout'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_memcache_disable_server',
    'args' => [
      {
        'type' => 'apr_memcache_t *',
        'name' => 'mc'
      },
      {
        'type' => 'apr_memcache_server_t *',
        'name' => 'ms'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_memcache_enable_server',
    'args' => [
      {
        'type' => 'apr_memcache_t *',
        'name' => 'mc'
      },
      {
        'type' => 'apr_memcache_server_t *',
        'name' => 'ms'
      }
    ]
  },
  {
    'return_type' => 'apr_memcache_server_t *',
    'name' => 'apr_memcache_find_server',
    'args' => [
      {
        'type' => 'apr_memcache_t *',
        'name' => 'mc'
      },
      {
        'type' => 'const char *',
        'name' => 'host'
      },
      {
        'type' => 'apr_port_t',
        'name' => 'port'
      }
    ]
  },
  {
    'return_type' => 'apr_memcache_server_t *',
    'name' => 'apr_memcache_find_server_hash',
    'args' => [
      {
        'type' => 'apr_memcache_t *',
        'name' => 'mc'
      },
      {
        'type' => 'const apr_uint32_t',
        'name' => 'hash'
      }
    ]
  },
  {
    'return_type' => 'apr_memcache_server_t *',
    'name' => 'apr_memcache_find_server_hash_default',
    'args' => [
      {
        'type' => 'void *',
        'name' => 'baton'
      },
      {
        'type' => 'apr_memcache_t *',
        'name' => 'mc'
      },
      {
        'type' => 'const apr_uint32_t',
        'name' => 'hash'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_memcache_getp',
    'args' => [
      {
        'type' => 'apr_memcache_t *',
        'name' => 'mc'
      },
      {
        'type' => 'apr_pool_t *',
        'name' => 'p'
      },
      {
        'type' => 'const char*',
        'name' => 'key'
      },
      {
        'type' => 'char **',
        'name' => 'baton'
      },
      {
        'type' => 'apr_size_t *',
        'name' => 'len'
      },
      {
        'type' => 'apr_uint16_t *',
        'name' => 'flags'
      }
    ]
  },
  {
    'return_type' => 'apr_uint32_t',
    'name' => 'apr_memcache_hash',
    'args' => [
      {
        'type' => 'apr_memcache_t *',
        'name' => 'mc'
      },
      {
        'type' => 'const char *',
        'name' => 'data'
      },
      {
        'type' => 'const apr_size_t',
        'name' => 'data_len'
      }
    ]
  },
  {
    'return_type' => 'apr_uint32_t',
    'name' => 'apr_memcache_hash_crc32',
    'args' => [
      {
        'type' => 'void *',
        'name' => 'baton'
      },
      {
        'type' => 'const char *',
        'name' => 'data'
      },
      {
        'type' => 'const apr_size_t',
        'name' => 'data_len'
      }
    ]
  },
  {
    'return_type' => 'apr_uint32_t',
    'name' => 'apr_memcache_hash_default',
    'args' => [
      {
        'type' => 'void *',
        'name' => 'baton'
      },
      {
        'type' => 'const char *',
        'name' => 'data'
      },
      {
        'type' => 'const apr_size_t',
        'name' => 'data_len'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_memcache_incr',
    'args' => [
      {
        'type' => 'apr_memcache_t *',
        'name' => 'mc'
      },
      {
        'type' => 'const char *',
        'name' => 'key'
      },
      {
        'type' => 'apr_int32_t',
        'name' => 'n'
      },
      {
        'type' => 'apr_uint32_t *',
        'name' => 'nv'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_memcache_multgetp',
    'args' => [
      {
        'type' => 'apr_memcache_t *',
        'name' => 'mc'
      },
      {
        'type' => 'apr_pool_t *',
        'name' => 'temp_pool'
      },
      {
        'type' => 'apr_pool_t *',
        'name' => 'data_pool'
      },
      {
        'type' => 'apr_hash_t *',
        'name' => 'values'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_memcache_replace',
    'args' => [
      {
        'type' => 'apr_memcache_t *',
        'name' => 'mc'
      },
      {
        'type' => 'const char *',
        'name' => 'key'
      },
      {
        'type' => 'char *',
        'name' => 'baton'
      },
      {
        'type' => 'const apr_size_t',
        'name' => 'data_size'
      },
      {
        'type' => 'apr_uint32_t',
        'name' => 'timeout'
      },
      {
        'type' => 'apr_uint16_t',
        'name' => 'flags'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_memcache_server_create',
    'args' => [
      {
        'type' => 'apr_pool_t *',
        'name' => 'p'
      },
      {
        'type' => 'const char *',
        'name' => 'host'
      },
      {
        'type' => 'apr_port_t',
        'name' => 'port'
      },
      {
        'type' => 'apr_uint32_t',
        'name' => 'min'
      },
      {
        'type' => 'apr_uint32_t',
        'name' => 'smax'
      },
      {
        'type' => 'apr_uint32_t',
        'name' => 'max'
      },
      {
        'type' => 'apr_uint32_t',
        'name' => 'ttl'
      },
      {
        'type' => 'apr_memcache_server_t **',
        'name' => 'ns'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_memcache_set',
    'args' => [
      {
        'type' => 'apr_memcache_t *',
        'name' => 'mc'
      },
      {
        'type' => 'const char *',
        'name' => 'key'
      },
      {
        'type' => 'char *',
        'name' => 'baton'
      },
      {
        'type' => 'const apr_size_t',
        'name' => 'data_size'
      },
      {
        'type' => 'apr_uint32_t',
        'name' => 'timeout'
      },
      {
        'type' => 'apr_uint16_t',
        'name' => 'flags'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_memcache_stats',
    'args' => [
      {
        'type' => 'apr_memcache_server_t *',
        'name' => 'ms'
      },
      {
        'type' => 'apr_pool_t *',
        'name' => 'p'
      },
      {
        'type' => 'apr_memcache_stats_t **',
        'name' => 'stats'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_memcache_version',
    'args' => [
      {
        'type' => 'apr_memcache_server_t *',
        'name' => 'ms'
      },
      {
        'type' => 'apr_pool_t *',
        'name' => 'p'
      },
      {
        'type' => 'char **',
        'name' => 'baton'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_mmap_create',
    'args' => [
      {
        'type' => 'apr_mmap_t **',
        'name' => 'newmmap'
      },
      {
        'type' => 'apr_file_t *',
        'name' => 'file'
      },
      {
        'type' => 'apr_off_t',
        'name' => 'offset'
      },
      {
        'type' => 'apr_size_t',
        'name' => 'size'
      },
      {
        'type' => 'apr_int32_t',
        'name' => 'flag'
      },
      {
        'type' => 'apr_pool_t *',
        'name' => 'cntxt'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_mmap_delete',
    'args' => [
      {
        'type' => 'apr_mmap_t *',
        'name' => 'mm'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_mmap_dup',
    'args' => [
      {
        'type' => 'apr_mmap_t **',
        'name' => 'new_mmap'
      },
      {
        'type' => 'apr_mmap_t *',
        'name' => 'old_mmap'
      },
      {
        'type' => 'apr_pool_t *',
        'name' => 'p'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_mmap_offset',
    'args' => [
      {
        'type' => 'void **',
        'name' => 'addr'
      },
      {
        'type' => 'apr_mmap_t *',
        'name' => 'mm'
      },
      {
        'type' => 'apr_off_t',
        'name' => 'offset'
      }
    ]
  },
  {
    'return_type' => 'char *',
    'name' => 'apr_off_t_toa',
    'args' => [
      {
        'type' => 'apr_pool_t *',
        'name' => 'p'
      },
      {
        'type' => 'apr_off_t',
        'name' => 'n'
      }
    ]
  },
  {
    'return_type' => 'void',
    'name' => 'apr_optional_hook_add',
    'args' => [
      {
        'type' => 'const char *',
        'name' => 'szName'
      },
      {
        'type' => 'void (*pfn)(void)',
        'name' => 'arg1'
      },
      {
        'type' => 'const char * const *',
        'name' => 'aszPre'
      },
      {
        'type' => 'const char * const *',
        'name' => 'aszSucc'
      },
      {
        'type' => 'int',
        'name' => 'nOrder'
      }
    ]
  },
  {
    'return_type' => 'apr_array_header_t *',
    'name' => 'apr_optional_hook_get',
    'args' => [
      {
        'type' => 'const char *',
        'name' => 'szName'
      }
    ]
  },
  {
    'return_type' => 'const char*',
    'name' => 'apr_os_default_encoding',
    'args' => [
      {
        'type' => 'apr_pool_t *',
        'name' => 'pool'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_os_dir_get',
    'args' => [
      {
        'type' => 'apr_os_dir_t **',
        'name' => 'thedir'
      },
      {
        'type' => 'apr_dir_t *',
        'name' => 'dir'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_os_dir_put',
    'args' => [
      {
        'type' => 'apr_dir_t **',
        'name' => 'dir'
      },
      {
        'type' => 'apr_os_dir_t *',
        'name' => 'thedir'
      },
      {
        'type' => 'apr_pool_t *',
        'name' => 'cont'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_os_dso_handle_get',
    'args' => [
      {
        'type' => 'apr_os_dso_handle_t *',
        'name' => 'dso'
      },
      {
        'type' => 'apr_dso_handle_t *',
        'name' => 'aprdso'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_os_dso_handle_put',
    'args' => [
      {
        'type' => 'apr_dso_handle_t **',
        'name' => 'dso'
      },
      {
        'type' => 'apr_os_dso_handle_t',
        'name' => 'thedso'
      },
      {
        'type' => 'apr_pool_t *',
        'name' => 'pool'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_os_exp_time_get',
    'args' => [
      {
        'type' => 'apr_os_exp_time_t **',
        'name' => 'ostime'
      },
      {
        'type' => 'apr_time_exp_t *',
        'name' => 'aprtime'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_os_exp_time_put',
    'args' => [
      {
        'type' => 'apr_time_exp_t *',
        'name' => 'aprtime'
      },
      {
        'type' => 'apr_os_exp_time_t **',
        'name' => 'ostime'
      },
      {
        'type' => 'apr_pool_t *',
        'name' => 'cont'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_os_file_get',
    'args' => [
      {
        'type' => 'apr_os_file_t *',
        'name' => 'thefile'
      },
      {
        'type' => 'apr_file_t *',
        'name' => 'file'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_os_file_put',
    'args' => [
      {
        'type' => 'apr_file_t **',
        'name' => 'file'
      },
      {
        'type' => 'apr_os_file_t *',
        'name' => 'thefile'
      },
      {
        'type' => 'apr_int32_t',
        'name' => 'flags'
      },
      {
        'type' => 'apr_pool_t *',
        'name' => 'cont'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_os_global_mutex_get',
    'args' => [
      {
        'type' => 'apr_os_global_mutex_t *',
        'name' => 'ospmutex'
      },
      {
        'type' => 'apr_global_mutex_t *',
        'name' => 'pmutex'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_os_imp_time_get',
    'args' => [
      {
        'type' => 'apr_os_imp_time_t **',
        'name' => 'ostime'
      },
      {
        'type' => 'apr_time_t *',
        'name' => 'aprtime'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_os_imp_time_put',
    'args' => [
      {
        'type' => 'apr_time_t *',
        'name' => 'aprtime'
      },
      {
        'type' => 'apr_os_imp_time_t **',
        'name' => 'ostime'
      },
      {
        'type' => 'apr_pool_t *',
        'name' => 'cont'
      }
    ]
  },
  {
    'return_type' => 'const char*',
    'name' => 'apr_os_locale_encoding',
    'args' => [
      {
        'type' => 'apr_pool_t *',
        'name' => 'pool'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_os_pipe_put',
    'args' => [
      {
        'type' => 'apr_file_t **',
        'name' => 'file'
      },
      {
        'type' => 'apr_os_file_t *',
        'name' => 'thefile'
      },
      {
        'type' => 'apr_pool_t *',
        'name' => 'cont'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_os_pipe_put_ex',
    'args' => [
      {
        'type' => 'apr_file_t **',
        'name' => 'file'
      },
      {
        'type' => 'apr_os_file_t *',
        'name' => 'thefile'
      },
      {
        'type' => 'int',
        'name' => 'register_cleanup'
      },
      {
        'type' => 'apr_pool_t *',
        'name' => 'cont'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_os_proc_mutex_get',
    'args' => [
      {
        'type' => 'apr_os_proc_mutex_t *',
        'name' => 'ospmutex'
      },
      {
        'type' => 'apr_proc_mutex_t *',
        'name' => 'pmutex'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_os_proc_mutex_put',
    'args' => [
      {
        'type' => 'apr_proc_mutex_t **',
        'name' => 'pmutex'
      },
      {
        'type' => 'apr_os_proc_mutex_t *',
        'name' => 'ospmutex'
      },
      {
        'type' => 'apr_pool_t *',
        'name' => 'cont'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_os_shm_get',
    'args' => [
      {
        'type' => 'apr_os_shm_t *',
        'name' => 'osshm'
      },
      {
        'type' => 'apr_shm_t *',
        'name' => 'shm'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_os_shm_put',
    'args' => [
      {
        'type' => 'apr_shm_t **',
        'name' => 'shm'
      },
      {
        'type' => 'apr_os_shm_t *',
        'name' => 'osshm'
      },
      {
        'type' => 'apr_pool_t *',
        'name' => 'cont'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_os_sock_get',
    'args' => [
      {
        'type' => 'apr_os_sock_t *',
        'name' => 'thesock'
      },
      {
        'type' => 'apr_socket_t *',
        'name' => 'sock'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_os_sock_make',
    'args' => [
      {
        'type' => 'apr_socket_t **',
        'name' => 'apr_sock'
      },
      {
        'type' => 'apr_os_sock_info_t *',
        'name' => 'os_sock_info'
      },
      {
        'type' => 'apr_pool_t *',
        'name' => 'cont'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_os_sock_put',
    'args' => [
      {
        'type' => 'apr_socket_t **',
        'name' => 'sock'
      },
      {
        'type' => 'apr_os_sock_t *',
        'name' => 'thesock'
      },
      {
        'type' => 'apr_pool_t *',
        'name' => 'cont'
      }
    ]
  },
  {
    'return_type' => 'apr_os_thread_t',
    'name' => 'apr_os_thread_current',
    'args' => []
  },
  {
    'return_type' => 'int',
    'name' => 'apr_os_thread_equal',
    'args' => [
      {
        'type' => 'apr_os_thread_t',
        'name' => 'tid1'
      },
      {
        'type' => 'apr_os_thread_t',
        'name' => 'tid2'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_os_thread_get',
    'args' => [
      {
        'type' => 'apr_os_thread_t **',
        'name' => 'thethd'
      },
      {
        'type' => 'apr_thread_t *',
        'name' => 'thd'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_os_thread_put',
    'args' => [
      {
        'type' => 'apr_thread_t **',
        'name' => 'thd'
      },
      {
        'type' => 'apr_os_thread_t *',
        'name' => 'thethd'
      },
      {
        'type' => 'apr_pool_t *',
        'name' => 'cont'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_os_threadkey_get',
    'args' => [
      {
        'type' => 'apr_os_threadkey_t *',
        'name' => 'thekey'
      },
      {
        'type' => 'apr_threadkey_t *',
        'name' => 'key'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_os_threadkey_put',
    'args' => [
      {
        'type' => 'apr_threadkey_t **',
        'name' => 'key'
      },
      {
        'type' => 'apr_os_threadkey_t *',
        'name' => 'thekey'
      },
      {
        'type' => 'apr_pool_t *',
        'name' => 'cont'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_os_uuid_get',
    'args' => [
      {
        'type' => 'unsigned char *',
        'name' => 'uuid_data'
      }
    ]
  },
  {
    'return_type' => 'void *',
    'name' => 'apr_palloc',
    'args' => [
      {
        'type' => 'apr_pool_t *',
        'name' => 'p'
      },
      {
        'type' => 'apr_size_t',
        'name' => 'size'
      }
    ]
  },
  {
    'return_type' => 'void *',
    'name' => 'apr_palloc_debug',
    'args' => [
      {
        'type' => 'apr_pool_t *',
        'name' => 'p'
      },
      {
        'type' => 'apr_size_t',
        'name' => 'size'
      },
      {
        'type' => 'const char *',
        'name' => 'file_line'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_parse_addr_port',
    'args' => [
      {
        'type' => 'char **',
        'name' => 'addr'
      },
      {
        'type' => 'char **',
        'name' => 'scope_id'
      },
      {
        'type' => 'apr_port_t *',
        'name' => 'port'
      },
      {
        'type' => 'const char *',
        'name' => 'str'
      },
      {
        'type' => 'apr_pool_t *',
        'name' => 'p'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_password_get',
    'args' => [
      {
        'type' => 'const char *',
        'name' => 'prompt'
      },
      {
        'type' => 'char *',
        'name' => 'pwbuf'
      },
      {
        'type' => 'apr_size_t *',
        'name' => 'bufsize'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_password_validate',
    'args' => [
      {
        'type' => 'const char *',
        'name' => 'passwd'
      },
      {
        'type' => 'const char *',
        'name' => 'hash'
      }
    ]
  },
  {
    'return_type' => 'void *',
    'name' => 'apr_pcalloc_debug',
    'args' => [
      {
        'type' => 'apr_pool_t *',
        'name' => 'p'
      },
      {
        'type' => 'apr_size_t',
        'name' => 'size'
      },
      {
        'type' => 'const char *',
        'name' => 'file_line'
      }
    ]
  },
  {
    'return_type' => 'void *',
    'name' => 'apr_pmemdup',
    'args' => [
      {
        'type' => 'apr_pool_t *',
        'name' => 'p'
      },
      {
        'type' => 'const void *',
        'name' => 'm'
      },
      {
        'type' => 'apr_size_t',
        'name' => 'n'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_poll',
    'args' => [
      {
        'type' => 'apr_pollfd_t *',
        'name' => 'aprset'
      },
      {
        'type' => 'apr_int32_t',
        'name' => 'numsock'
      },
      {
        'type' => 'apr_int32_t *',
        'name' => 'nsds'
      },
      {
        'type' => 'apr_interval_time_t',
        'name' => 'timeout'
      }
    ]
  },
  {
    'return_type' => 'const char *',
    'name' => 'apr_poll_method_defname',
    'args' => []
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_pollcb_add',
    'args' => [
      {
        'type' => 'apr_pollcb_t *',
        'name' => 'pollcb'
      },
      {
        'type' => 'apr_pollfd_t *',
        'name' => 'descriptor'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_pollcb_create',
    'args' => [
      {
        'type' => 'apr_pollcb_t **',
        'name' => 'pollcb'
      },
      {
        'type' => 'apr_uint32_t',
        'name' => 'size'
      },
      {
        'type' => 'apr_pool_t *',
        'name' => 'p'
      },
      {
        'type' => 'apr_uint32_t',
        'name' => 'flags'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_pollcb_create_ex',
    'args' => [
      {
        'type' => 'apr_pollcb_t **',
        'name' => 'pollcb'
      },
      {
        'type' => 'apr_uint32_t',
        'name' => 'size'
      },
      {
        'type' => 'apr_pool_t *',
        'name' => 'p'
      },
      {
        'type' => 'apr_uint32_t',
        'name' => 'flags'
      },
      {
        'type' => 'apr_pollset_method_e',
        'name' => 'method'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_pollcb_poll',
    'args' => [
      {
        'type' => 'apr_pollcb_t *',
        'name' => 'pollcb'
      },
      {
        'type' => 'apr_interval_time_t',
        'name' => 'timeout'
      },
      {
        'type' => 'apr_pollcb_cb_t',
        'name' => 'func'
      },
      {
        'type' => 'void *',
        'name' => 'baton'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_pollcb_remove',
    'args' => [
      {
        'type' => 'apr_pollcb_t *',
        'name' => 'pollcb'
      },
      {
        'type' => 'apr_pollfd_t *',
        'name' => 'descriptor'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_pollset_add',
    'args' => [
      {
        'type' => 'apr_pollset_t *',
        'name' => 'pollset'
      },
      {
        'type' => 'const apr_pollfd_t *',
        'name' => 'descriptor'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_pollset_create',
    'args' => [
      {
        'type' => 'apr_pollset_t **',
        'name' => 'pollset'
      },
      {
        'type' => 'apr_uint32_t',
        'name' => 'size'
      },
      {
        'type' => 'apr_pool_t *',
        'name' => 'p'
      },
      {
        'type' => 'apr_uint32_t',
        'name' => 'flags'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_pollset_create_ex',
    'args' => [
      {
        'type' => 'apr_pollset_t **',
        'name' => 'pollset'
      },
      {
        'type' => 'apr_uint32_t',
        'name' => 'size'
      },
      {
        'type' => 'apr_pool_t *',
        'name' => 'p'
      },
      {
        'type' => 'apr_uint32_t',
        'name' => 'flags'
      },
      {
        'type' => 'apr_pollset_method_e',
        'name' => 'method'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_pollset_destroy',
    'args' => [
      {
        'type' => 'apr_pollset_t *',
        'name' => 'pollset'
      }
    ]
  },
  {
    'return_type' => 'const char *',
    'name' => 'apr_pollset_method_name',
    'args' => [
      {
        'type' => 'apr_pollset_t *',
        'name' => 'pollset'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_pollset_poll',
    'args' => [
      {
        'type' => 'apr_pollset_t *',
        'name' => 'pollset'
      },
      {
        'type' => 'apr_interval_time_t',
        'name' => 'timeout'
      },
      {
        'type' => 'apr_int32_t *',
        'name' => 'num'
      },
      {
        'type' => 'const apr_pollfd_t **',
        'name' => 'descriptors'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_pollset_remove',
    'args' => [
      {
        'type' => 'apr_pollset_t *',
        'name' => 'pollset'
      },
      {
        'type' => 'const apr_pollfd_t *',
        'name' => 'descriptor'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_pollset_wakeup',
    'args' => [
      {
        'type' => 'apr_pollset_t *',
        'name' => 'pollset'
      }
    ]
  },
  {
    'return_type' => 'apr_abortfunc_t',
    'name' => 'apr_pool_abort_get',
    'args' => [
      {
        'type' => 'apr_pool_t *',
        'name' => 'pool'
      }
    ]
  },
  {
    'return_type' => 'void',
    'name' => 'apr_pool_abort_set',
    'args' => [
      {
        'type' => 'apr_abortfunc_t',
        'name' => 'abortfunc'
      },
      {
        'type' => 'apr_pool_t *',
        'name' => 'pool'
      }
    ]
  },
  {
    'return_type' => 'apr_allocator_t *',
    'name' => 'apr_pool_allocator_get',
    'args' => [
      {
        'type' => 'apr_pool_t *',
        'name' => 'pool'
      }
    ]
  },
  {
    'return_type' => 'void',
    'name' => 'apr_pool_child_cleanup_set',
    'args' => [
      {
        'type' => 'apr_pool_t *',
        'name' => 'p'
      },
      {
        'type' => 'const void *',
        'name' => 'data'
      },
      {
        'type' => 'apr_status_t (*plain_cleanup)(void *)',
        'name' => 'arg2'
      },
      {
        'type' => 'apr_status_t (*child_cleanup)(void *)',
        'name' => 'arg3'
      }
    ]
  },
  {
    'return_type' => 'void',
    'name' => 'apr_pool_cleanup_for_exec',
    'args' => []
  },
  {
    'return_type' => 'void',
    'name' => 'apr_pool_cleanup_kill',
    'args' => [
      {
        'type' => 'apr_pool_t *',
        'name' => 'p'
      },
      {
        'type' => 'const void *',
        'name' => 'data'
      },
      {
        'type' => 'apr_status_t (*cleanup)(void *)',
        'name' => 'arg2'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_pool_cleanup_null',
    'args' => [
      {
        'type' => 'void *',
        'name' => 'data'
      }
    ]
  },
  {
    'return_type' => 'void',
    'name' => 'apr_pool_cleanup_register',
    'args' => [
      {
        'type' => 'apr_pool_t *',
        'name' => 'p'
      },
      {
        'type' => 'const void *',
        'name' => 'data'
      },
      {
        'type' => 'apr_status_t (*plain_cleanup)(void *)',
        'name' => 'arg2'
      },
      {
        'type' => 'apr_status_t (*child_cleanup)(void *)',
        'name' => 'arg3'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_pool_cleanup_run',
    'args' => [
      {
        'type' => 'apr_pool_t *',
        'name' => 'p'
      },
      {
        'type' => 'void *',
        'name' => 'data'
      },
      {
        'type' => 'apr_status_t (*cleanup)(void *)',
        'name' => 'arg2'
      }
    ]
  },
  {
    'return_type' => 'void',
    'name' => 'apr_pool_clear',
    'args' => [
      {
        'type' => 'apr_pool_t *',
        'name' => 'p'
      }
    ]
  },
  {
    'return_type' => 'void',
    'name' => 'apr_pool_clear_debug',
    'args' => [
      {
        'type' => 'apr_pool_t *',
        'name' => 'p'
      },
      {
        'type' => 'const char *',
        'name' => 'file_line'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_pool_create_core_ex',
    'args' => [
      {
        'type' => 'apr_pool_t **',
        'name' => 'newpool'
      },
      {
        'type' => 'apr_abortfunc_t',
        'name' => 'abort_fn'
      },
      {
        'type' => 'apr_allocator_t *',
        'name' => 'allocator'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_pool_create_core_ex_debug',
    'args' => [
      {
        'type' => 'apr_pool_t **',
        'name' => 'newpool'
      },
      {
        'type' => 'apr_abortfunc_t',
        'name' => 'abort_fn'
      },
      {
        'type' => 'apr_allocator_t *',
        'name' => 'allocator'
      },
      {
        'type' => 'const char *',
        'name' => 'file_line'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_pool_create_ex',
    'args' => [
      {
        'type' => 'apr_pool_t **',
        'name' => 'newpool'
      },
      {
        'type' => 'apr_pool_t *',
        'name' => 'parent'
      },
      {
        'type' => 'apr_abortfunc_t',
        'name' => 'abort_fn'
      },
      {
        'type' => 'apr_allocator_t *',
        'name' => 'allocator'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_pool_create_ex_debug',
    'args' => [
      {
        'type' => 'apr_pool_t **',
        'name' => 'newpool'
      },
      {
        'type' => 'apr_pool_t *',
        'name' => 'parent'
      },
      {
        'type' => 'apr_abortfunc_t',
        'name' => 'abort_fn'
      },
      {
        'type' => 'apr_allocator_t *',
        'name' => 'allocator'
      },
      {
        'type' => 'const char *',
        'name' => 'file_line'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_pool_create_unmanaged_ex',
    'args' => [
      {
        'type' => 'apr_pool_t **',
        'name' => 'newpool'
      },
      {
        'type' => 'apr_abortfunc_t',
        'name' => 'abort_fn'
      },
      {
        'type' => 'apr_allocator_t *',
        'name' => 'allocator'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_pool_create_unmanaged_ex_debug',
    'args' => [
      {
        'type' => 'apr_pool_t **',
        'name' => 'newpool'
      },
      {
        'type' => 'apr_abortfunc_t',
        'name' => 'abort_fn'
      },
      {
        'type' => 'apr_allocator_t *',
        'name' => 'allocator'
      },
      {
        'type' => 'const char *',
        'name' => 'file_line'
      }
    ]
  },
  {
    'return_type' => 'void',
    'name' => 'apr_pool_destroy',
    'args' => [
      {
        'type' => 'apr_pool_t *',
        'name' => 'p'
      }
    ]
  },
  {
    'return_type' => 'void',
    'name' => 'apr_pool_destroy_debug',
    'args' => [
      {
        'type' => 'apr_pool_t *',
        'name' => 'p'
      },
      {
        'type' => 'const char *',
        'name' => 'file_line'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_pool_initialize',
    'args' => []
  },
  {
    'return_type' => 'int',
    'name' => 'apr_pool_is_ancestor',
    'args' => [
      {
        'type' => 'apr_pool_t *',
        'name' => 'a'
      },
      {
        'type' => 'apr_pool_t *',
        'name' => 'b'
      }
    ]
  },
  {
    'return_type' => 'void',
    'name' => 'apr_pool_note_subprocess',
    'args' => [
      {
        'type' => 'apr_pool_t *',
        'name' => 'a'
      },
      {
        'type' => 'apr_proc_t *',
        'name' => 'proc'
      },
      {
        'type' => 'apr_kill_conditions_e',
        'name' => 'how'
      }
    ]
  },
  {
    'return_type' => 'apr_pool_t *',
    'name' => 'apr_pool_parent_get',
    'args' => [
      {
        'type' => 'apr_pool_t *',
        'name' => 'pool'
      }
    ]
  },
  {
    'return_type' => 'void',
    'name' => 'apr_pool_pre_cleanup_register',
    'args' => [
      {
        'type' => 'apr_pool_t *',
        'name' => 'p'
      },
      {
        'type' => 'const void *',
        'name' => 'data'
      },
      {
        'type' => 'apr_status_t (*plain_cleanup)(void *)',
        'name' => 'arg2'
      }
    ]
  },
  {
    'return_type' => 'void',
    'name' => 'apr_pool_tag',
    'args' => [
      {
        'type' => 'apr_pool_t *',
        'name' => 'pool'
      },
      {
        'type' => 'const char *',
        'name' => 'tag'
      }
    ]
  },
  {
    'return_type' => 'void',
    'name' => 'apr_pool_terminate',
    'args' => []
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_pool_userdata_get',
    'args' => [
      {
        'type' => 'void **',
        'name' => 'data'
      },
      {
        'type' => 'const char *',
        'name' => 'key'
      },
      {
        'type' => 'apr_pool_t *',
        'name' => 'pool'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_pool_userdata_set',
    'args' => [
      {
        'type' => 'const void *',
        'name' => 'data'
      },
      {
        'type' => 'const char *',
        'name' => 'key'
      },
      {
        'type' => 'apr_status_t (*cleanup)(void *)',
        'name' => 'arg2'
      },
      {
        'type' => 'apr_pool_t *',
        'name' => 'pool'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_pool_userdata_setn',
    'args' => [
      {
        'type' => 'const void *',
        'name' => 'data'
      },
      {
        'type' => 'const char *',
        'name' => 'key'
      },
      {
        'type' => 'apr_status_t (*cleanup)(void *)',
        'name' => 'arg2'
      },
      {
        'type' => 'apr_pool_t *',
        'name' => 'pool'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_proc_create',
    'args' => [
      {
        'type' => 'apr_proc_t *',
        'name' => 'new_proc'
      },
      {
        'type' => 'const char *',
        'name' => 'progname'
      },
      {
        'type' => 'const char * const *',
        'name' => 'args'
      },
      {
        'type' => 'const char * const *',
        'name' => 'env'
      },
      {
        'type' => 'apr_procattr_t *',
        'name' => 'attr'
      },
      {
        'type' => 'apr_pool_t *',
        'name' => 'pool'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_proc_detach',
    'args' => [
      {
        'type' => 'int',
        'name' => 'daemonize'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_proc_fork',
    'args' => [
      {
        'type' => 'apr_proc_t *',
        'name' => 'proc'
      },
      {
        'type' => 'apr_pool_t *',
        'name' => 'cont'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_proc_kill',
    'args' => [
      {
        'type' => 'apr_proc_t *',
        'name' => 'proc'
      },
      {
        'type' => 'int',
        'name' => 'sig'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_proc_mutex_child_init',
    'args' => [
      {
        'type' => 'apr_proc_mutex_t **',
        'name' => 'mutex'
      },
      {
        'type' => 'const char *',
        'name' => 'fname'
      },
      {
        'type' => 'apr_pool_t *',
        'name' => 'pool'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_proc_mutex_cleanup',
    'args' => [
      {
        'type' => 'void *',
        'name' => 'mutex'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_proc_mutex_create',
    'args' => [
      {
        'type' => 'apr_proc_mutex_t **',
        'name' => 'mutex'
      },
      {
        'type' => 'const char *',
        'name' => 'fname'
      },
      {
        'type' => 'apr_lockmech_e',
        'name' => 'mech'
      },
      {
        'type' => 'apr_pool_t *',
        'name' => 'pool'
      }
    ]
  },
  {
    'return_type' => 'const char *',
    'name' => 'apr_proc_mutex_defname',
    'args' => []
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_proc_mutex_destroy',
    'args' => [
      {
        'type' => 'apr_proc_mutex_t *',
        'name' => 'mutex'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_proc_mutex_lock',
    'args' => [
      {
        'type' => 'apr_proc_mutex_t *',
        'name' => 'mutex'
      }
    ]
  },
  {
    'return_type' => 'const char *',
    'name' => 'apr_proc_mutex_lockfile',
    'args' => [
      {
        'type' => 'apr_proc_mutex_t *',
        'name' => 'mutex'
      }
    ]
  },
  {
    'return_type' => 'const char *',
    'name' => 'apr_proc_mutex_name',
    'args' => [
      {
        'type' => 'apr_proc_mutex_t *',
        'name' => 'mutex'
      }
    ]
  },
  {
    'return_type' => 'apr_pool_t *',
    'name' => 'apr_proc_mutex_pool_get',
    'args' => [
      {
        'type' => 'const apr_proc_mutex_t *',
        'name' => 'theproc_mutex'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_proc_mutex_trylock',
    'args' => [
      {
        'type' => 'apr_proc_mutex_t *',
        'name' => 'mutex'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_proc_mutex_unlock',
    'args' => [
      {
        'type' => 'apr_proc_mutex_t *',
        'name' => 'mutex'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_proc_other_child_alert',
    'args' => [
      {
        'type' => 'apr_proc_t *',
        'name' => 'proc'
      },
      {
        'type' => 'int',
        'name' => 'reason'
      },
      {
        'type' => 'int',
        'name' => 'status'
      }
    ]
  },
  {
    'return_type' => 'void',
    'name' => 'apr_proc_other_child_refresh',
    'args' => [
      {
        'type' => 'apr_other_child_rec_t *',
        'name' => 'ocr'
      },
      {
        'type' => 'int',
        'name' => 'reason'
      }
    ]
  },
  {
    'return_type' => 'void',
    'name' => 'apr_proc_other_child_refresh_all',
    'args' => [
      {
        'type' => 'int',
        'name' => 'reason'
      }
    ]
  },
  {
    'return_type' => 'void',
    'name' => 'apr_proc_other_child_register',
    'args' => [
      {
        'type' => 'apr_proc_t *',
        'name' => 'proc'
      },
      {
        'type' => 'void (*maintenance) (int reason, void *, int status)',
        'name' => 'arg1'
      },
      {
        'type' => 'void *',
        'name' => 'data'
      },
      {
        'type' => 'apr_file_t *',
        'name' => 'write_fd'
      },
      {
        'type' => 'apr_pool_t *',
        'name' => 'p'
      }
    ]
  },
  {
    'return_type' => 'void',
    'name' => 'apr_proc_other_child_unregister',
    'args' => [
      {
        'type' => 'void *',
        'name' => 'data'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_proc_wait',
    'args' => [
      {
        'type' => 'apr_proc_t *',
        'name' => 'proc'
      },
      {
        'type' => 'int *',
        'name' => 'exitcode'
      },
      {
        'type' => 'apr_exit_why_e *',
        'name' => 'exitwhy'
      },
      {
        'type' => 'apr_wait_how_e',
        'name' => 'waithow'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_proc_wait_all_procs',
    'args' => [
      {
        'type' => 'apr_proc_t *',
        'name' => 'proc'
      },
      {
        'type' => 'int *',
        'name' => 'exitcode'
      },
      {
        'type' => 'apr_exit_why_e *',
        'name' => 'exitwhy'
      },
      {
        'type' => 'apr_wait_how_e',
        'name' => 'waithow'
      },
      {
        'type' => 'apr_pool_t *',
        'name' => 'p'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_procattr_addrspace_set',
    'args' => [
      {
        'type' => 'apr_procattr_t *',
        'name' => 'attr'
      },
      {
        'type' => 'apr_int32_t',
        'name' => 'addrspace'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_procattr_child_err_set',
    'args' => [
      {
        'type' => 'struct apr_procattr_t *',
        'name' => 'attr'
      },
      {
        'type' => 'apr_file_t *',
        'name' => 'child_err'
      },
      {
        'type' => 'apr_file_t *',
        'name' => 'parent_err'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_procattr_child_errfn_set',
    'args' => [
      {
        'type' => 'apr_procattr_t *',
        'name' => 'attr'
      },
      {
        'type' => 'apr_child_errfn_t *',
        'name' => 'errfn'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_procattr_child_in_set',
    'args' => [
      {
        'type' => 'struct apr_procattr_t *',
        'name' => 'attr'
      },
      {
        'type' => 'apr_file_t *',
        'name' => 'child_in'
      },
      {
        'type' => 'apr_file_t *',
        'name' => 'parent_in'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_procattr_child_out_set',
    'args' => [
      {
        'type' => 'struct apr_procattr_t *',
        'name' => 'attr'
      },
      {
        'type' => 'apr_file_t *',
        'name' => 'child_out'
      },
      {
        'type' => 'apr_file_t *',
        'name' => 'parent_out'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_procattr_cmdtype_set',
    'args' => [
      {
        'type' => 'apr_procattr_t *',
        'name' => 'attr'
      },
      {
        'type' => 'apr_cmdtype_e',
        'name' => 'cmd'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_procattr_create',
    'args' => [
      {
        'type' => 'apr_procattr_t **',
        'name' => 'new_attr'
      },
      {
        'type' => 'apr_pool_t *',
        'name' => 'cont'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_procattr_detach_set',
    'args' => [
      {
        'type' => 'apr_procattr_t *',
        'name' => 'attr'
      },
      {
        'type' => 'apr_int32_t',
        'name' => 'detach'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_procattr_dir_set',
    'args' => [
      {
        'type' => 'apr_procattr_t *',
        'name' => 'attr'
      },
      {
        'type' => 'const char *',
        'name' => 'dir'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_procattr_error_check_set',
    'args' => [
      {
        'type' => 'apr_procattr_t *',
        'name' => 'attr'
      },
      {
        'type' => 'apr_int32_t',
        'name' => 'chk'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_procattr_group_set',
    'args' => [
      {
        'type' => 'apr_procattr_t *',
        'name' => 'attr'
      },
      {
        'type' => 'const char *',
        'name' => 'groupname'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_procattr_io_set',
    'args' => [
      {
        'type' => 'apr_procattr_t *',
        'name' => 'attr'
      },
      {
        'type' => 'apr_int32_t',
        'name' => 'in'
      },
      {
        'type' => 'apr_int32_t',
        'name' => 'out'
      },
      {
        'type' => 'apr_int32_t',
        'name' => 'err'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_procattr_limit_set',
    'args' => [
      {
        'type' => 'apr_procattr_t *',
        'name' => 'attr'
      },
      {
        'type' => 'apr_int32_t',
        'name' => 'what'
      },
      {
        'type' => 'struct rlimit *',
        'name' => 'limit'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_procattr_user_set',
    'args' => [
      {
        'type' => 'apr_procattr_t *',
        'name' => 'attr'
      },
      {
        'type' => 'const char *',
        'name' => 'username'
      },
      {
        'type' => 'const char *',
        'name' => 'password'
      }
    ]
  },
  {
    'return_type' => 'char *',
    'name' => 'apr_psprintf',
    'args' => [
      {
        'type' => 'apr_pool_t *',
        'name' => 'p'
      },
      {
        'type' => 'const char *',
        'name' => 'fmt'
      },
      {
        'type' => '...',
        'name' => 'arg2'
      }
    ]
  },
  {
    'return_type' => 'char *',
    'name' => 'apr_pstrcat',
    'args' => [
      {
        'type' => 'apr_pool_t *',
        'name' => 'p'
      },
      {
        'type' => '...',
        'name' => 'arg1'
      }
    ]
  },
  {
    'return_type' => 'char *',
    'name' => 'apr_pstrcatv',
    'args' => [
      {
        'type' => 'apr_pool_t *',
        'name' => 'p'
      },
      {
        'type' => 'const struct iovec *',
        'name' => 'vec'
      },
      {
        'type' => 'apr_size_t',
        'name' => 'nvec'
      },
      {
        'type' => 'apr_size_t *',
        'name' => 'nbytes'
      }
    ]
  },
  {
    'return_type' => 'char *',
    'name' => 'apr_pstrdup',
    'args' => [
      {
        'type' => 'apr_pool_t *',
        'name' => 'p'
      },
      {
        'type' => 'const char *',
        'name' => 's'
      }
    ]
  },
  {
    'return_type' => 'char *',
    'name' => 'apr_pstrmemdup',
    'args' => [
      {
        'type' => 'apr_pool_t *',
        'name' => 'p'
      },
      {
        'type' => 'const char *',
        'name' => 's'
      },
      {
        'type' => 'apr_size_t',
        'name' => 'n'
      }
    ]
  },
  {
    'return_type' => 'char *',
    'name' => 'apr_pstrndup',
    'args' => [
      {
        'type' => 'apr_pool_t *',
        'name' => 'p'
      },
      {
        'type' => 'const char *',
        'name' => 's'
      },
      {
        'type' => 'apr_size_t',
        'name' => 'n'
      }
    ]
  },
  {
    'return_type' => 'char *',
    'name' => 'apr_pvsprintf',
    'args' => [
      {
        'type' => 'apr_pool_t *',
        'name' => 'p'
      },
      {
        'type' => 'const char *',
        'name' => 'fmt'
      },
      {
        'type' => 'va_list',
        'name' => 'ap'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_queue_create',
    'args' => [
      {
        'type' => 'apr_queue_t **',
        'name' => 'queue'
      },
      {
        'type' => 'unsigned int',
        'name' => 'queue_capacity'
      },
      {
        'type' => 'apr_pool_t *',
        'name' => 'a'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_queue_interrupt_all',
    'args' => [
      {
        'type' => 'apr_queue_t *',
        'name' => 'queue'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_queue_pop',
    'args' => [
      {
        'type' => 'apr_queue_t *',
        'name' => 'queue'
      },
      {
        'type' => 'void **',
        'name' => 'data'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_queue_push',
    'args' => [
      {
        'type' => 'apr_queue_t *',
        'name' => 'queue'
      },
      {
        'type' => 'void *',
        'name' => 'data'
      }
    ]
  },
  {
    'return_type' => 'unsigned int',
    'name' => 'apr_queue_size',
    'args' => [
      {
        'type' => 'apr_queue_t *',
        'name' => 'queue'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_queue_term',
    'args' => [
      {
        'type' => 'apr_queue_t *',
        'name' => 'queue'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_queue_trypop',
    'args' => [
      {
        'type' => 'apr_queue_t *',
        'name' => 'queue'
      },
      {
        'type' => 'void **',
        'name' => 'data'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_queue_trypush',
    'args' => [
      {
        'type' => 'apr_queue_t *',
        'name' => 'queue'
      },
      {
        'type' => 'void *',
        'name' => 'data'
      }
    ]
  },
  {
    'return_type' => 'void',
    'name' => 'apr_random_add_entropy',
    'args' => [
      {
        'type' => 'apr_random_t *',
        'name' => 'g'
      },
      {
        'type' => 'const void *',
        'name' => 'entropy_'
      },
      {
        'type' => 'apr_size_t',
        'name' => 'bytes'
      }
    ]
  },
  {
    'return_type' => 'void',
    'name' => 'apr_random_after_fork',
    'args' => [
      {
        'type' => 'apr_proc_t *',
        'name' => 'proc'
      }
    ]
  },
  {
    'return_type' => 'void',
    'name' => 'apr_random_barrier',
    'args' => [
      {
        'type' => 'apr_random_t *',
        'name' => 'g'
      }
    ]
  },
  {
    'return_type' => 'void',
    'name' => 'apr_random_init',
    'args' => [
      {
        'type' => 'apr_random_t *',
        'name' => 'g'
      },
      {
        'type' => 'apr_pool_t *',
        'name' => 'p'
      },
      {
        'type' => 'apr_crypto_hash_t *',
        'name' => 'pool_hash'
      },
      {
        'type' => 'apr_crypto_hash_t *',
        'name' => 'key_hash'
      },
      {
        'type' => 'apr_crypto_hash_t *',
        'name' => 'prng_hash'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_random_insecure_bytes',
    'args' => [
      {
        'type' => 'apr_random_t *',
        'name' => 'g'
      },
      {
        'type' => 'void *',
        'name' => 'random'
      },
      {
        'type' => 'apr_size_t',
        'name' => 'bytes'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_random_insecure_ready',
    'args' => [
      {
        'type' => 'apr_random_t *',
        'name' => 'r'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_random_secure_bytes',
    'args' => [
      {
        'type' => 'apr_random_t *',
        'name' => 'g'
      },
      {
        'type' => 'void *',
        'name' => 'random'
      },
      {
        'type' => 'apr_size_t',
        'name' => 'bytes'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_random_secure_ready',
    'args' => [
      {
        'type' => 'apr_random_t *',
        'name' => 'r'
      }
    ]
  },
  {
    'return_type' => 'apr_random_t *',
    'name' => 'apr_random_standard_new',
    'args' => [
      {
        'type' => 'apr_pool_t *',
        'name' => 'p'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_reslist_acquire',
    'args' => [
      {
        'type' => 'apr_reslist_t *',
        'name' => 'reslist'
      },
      {
        'type' => 'void **',
        'name' => 'resource'
      }
    ]
  },
  {
    'return_type' => 'apr_uint32_t',
    'name' => 'apr_reslist_acquired_count',
    'args' => [
      {
        'type' => 'apr_reslist_t *',
        'name' => 'reslist'
      }
    ]
  },
  {
    'return_type' => 'void',
    'name' => 'apr_reslist_cleanup_order_set',
    'args' => [
      {
        'type' => 'apr_reslist_t *',
        'name' => 'reslist'
      },
      {
        'type' => 'apr_uint32_t',
        'name' => 'mode'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_reslist_create',
    'args' => [
      {
        'type' => 'apr_reslist_t **',
        'name' => 'reslist'
      },
      {
        'type' => 'int',
        'name' => 'min'
      },
      {
        'type' => 'int',
        'name' => 'smax'
      },
      {
        'type' => 'int',
        'name' => 'hmax'
      },
      {
        'type' => 'apr_interval_time_t',
        'name' => 'ttl'
      },
      {
        'type' => 'apr_reslist_constructor',
        'name' => 'con'
      },
      {
        'type' => 'apr_reslist_destructor',
        'name' => 'de'
      },
      {
        'type' => 'void *',
        'name' => 'params'
      },
      {
        'type' => 'apr_pool_t *',
        'name' => 'pool'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_reslist_destroy',
    'args' => [
      {
        'type' => 'apr_reslist_t *',
        'name' => 'reslist'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_reslist_invalidate',
    'args' => [
      {
        'type' => 'apr_reslist_t *',
        'name' => 'reslist'
      },
      {
        'type' => 'void *',
        'name' => 'resource'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_reslist_maintain',
    'args' => [
      {
        'type' => 'apr_reslist_t *',
        'name' => 'reslist'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_reslist_release',
    'args' => [
      {
        'type' => 'apr_reslist_t *',
        'name' => 'reslist'
      },
      {
        'type' => 'void *',
        'name' => 'resource'
      }
    ]
  },
  {
    'return_type' => 'void',
    'name' => 'apr_reslist_timeout_set',
    'args' => [
      {
        'type' => 'apr_reslist_t *',
        'name' => 'reslist'
      },
      {
        'type' => 'apr_interval_time_t',
        'name' => 'timeout'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_rfc822_date',
    'args' => [
      {
        'type' => 'char *',
        'name' => 'date_str'
      },
      {
        'type' => 'apr_time_t',
        'name' => 't'
      }
    ]
  },
  {
    'return_type' => 'void *',
    'name' => 'apr_rmm_addr_get',
    'args' => [
      {
        'type' => 'apr_rmm_t *',
        'name' => 'rmm'
      },
      {
        'type' => 'apr_rmm_off_t',
        'name' => 'entity'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_rmm_attach',
    'args' => [
      {
        'type' => 'apr_rmm_t **',
        'name' => 'rmm'
      },
      {
        'type' => 'apr_anylock_t *',
        'name' => 'lock'
      },
      {
        'type' => 'void *',
        'name' => 'membuf'
      },
      {
        'type' => 'apr_pool_t *',
        'name' => 'cont'
      }
    ]
  },
  {
    'return_type' => 'apr_rmm_off_t',
    'name' => 'apr_rmm_calloc',
    'args' => [
      {
        'type' => 'apr_rmm_t *',
        'name' => 'rmm'
      },
      {
        'type' => 'apr_size_t',
        'name' => 'reqsize'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_rmm_destroy',
    'args' => [
      {
        'type' => 'apr_rmm_t *',
        'name' => 'rmm'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_rmm_detach',
    'args' => [
      {
        'type' => 'apr_rmm_t *',
        'name' => 'rmm'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_rmm_free',
    'args' => [
      {
        'type' => 'apr_rmm_t *',
        'name' => 'rmm'
      },
      {
        'type' => 'apr_rmm_off_t',
        'name' => 'entity'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_rmm_init',
    'args' => [
      {
        'type' => 'apr_rmm_t **',
        'name' => 'rmm'
      },
      {
        'type' => 'apr_anylock_t *',
        'name' => 'lock'
      },
      {
        'type' => 'void *',
        'name' => 'membuf'
      },
      {
        'type' => 'apr_size_t',
        'name' => 'memsize'
      },
      {
        'type' => 'apr_pool_t *',
        'name' => 'cont'
      }
    ]
  },
  {
    'return_type' => 'apr_rmm_off_t',
    'name' => 'apr_rmm_malloc',
    'args' => [
      {
        'type' => 'apr_rmm_t *',
        'name' => 'rmm'
      },
      {
        'type' => 'apr_size_t',
        'name' => 'reqsize'
      }
    ]
  },
  {
    'return_type' => 'apr_rmm_off_t',
    'name' => 'apr_rmm_offset_get',
    'args' => [
      {
        'type' => 'apr_rmm_t *',
        'name' => 'rmm'
      },
      {
        'type' => 'void *',
        'name' => 'entity'
      }
    ]
  },
  {
    'return_type' => 'apr_size_t',
    'name' => 'apr_rmm_overhead_get',
    'args' => [
      {
        'type' => 'int',
        'name' => 'n'
      }
    ]
  },
  {
    'return_type' => 'apr_rmm_off_t',
    'name' => 'apr_rmm_realloc',
    'args' => [
      {
        'type' => 'apr_rmm_t *',
        'name' => 'rmm'
      },
      {
        'type' => 'void *',
        'name' => 'entity'
      },
      {
        'type' => 'apr_size_t',
        'name' => 'reqsize'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_sdbm_close',
    'args' => [
      {
        'type' => 'apr_sdbm_t *',
        'name' => 'db'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_sdbm_delete',
    'args' => [
      {
        'type' => 'apr_sdbm_t *',
        'name' => 'db'
      },
      {
        'type' => 'const apr_sdbm_datum_t',
        'name' => 'key'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_sdbm_fetch',
    'args' => [
      {
        'type' => 'apr_sdbm_t *',
        'name' => 'db'
      },
      {
        'type' => 'apr_sdbm_datum_t *',
        'name' => 'value'
      },
      {
        'type' => 'apr_sdbm_datum_t',
        'name' => 'key'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_sdbm_firstkey',
    'args' => [
      {
        'type' => 'apr_sdbm_t *',
        'name' => 'db'
      },
      {
        'type' => 'apr_sdbm_datum_t *',
        'name' => 'key'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_sdbm_lock',
    'args' => [
      {
        'type' => 'apr_sdbm_t *',
        'name' => 'db'
      },
      {
        'type' => 'int',
        'name' => 'type'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_sdbm_nextkey',
    'args' => [
      {
        'type' => 'apr_sdbm_t *',
        'name' => 'db'
      },
      {
        'type' => 'apr_sdbm_datum_t *',
        'name' => 'key'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_sdbm_open',
    'args' => [
      {
        'type' => 'apr_sdbm_t **',
        'name' => 'db'
      },
      {
        'type' => 'const char *',
        'name' => 'name'
      },
      {
        'type' => 'apr_int32_t',
        'name' => 'mode'
      },
      {
        'type' => 'apr_fileperms_t',
        'name' => 'perms'
      },
      {
        'type' => 'apr_pool_t *',
        'name' => 'p'
      }
    ]
  },
  {
    'return_type' => 'int',
    'name' => 'apr_sdbm_rdonly',
    'args' => [
      {
        'type' => 'apr_sdbm_t *',
        'name' => 'db'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_sdbm_store',
    'args' => [
      {
        'type' => 'apr_sdbm_t *',
        'name' => 'db'
      },
      {
        'type' => 'apr_sdbm_datum_t',
        'name' => 'key'
      },
      {
        'type' => 'apr_sdbm_datum_t',
        'name' => 'value'
      },
      {
        'type' => 'int',
        'name' => 'opt'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_sdbm_unlock',
    'args' => [
      {
        'type' => 'apr_sdbm_t *',
        'name' => 'db'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_setup_signal_thread',
    'args' => []
  },
  {
    'return_type' => 'void',
    'name' => 'apr_sha1_base64',
    'args' => [
      {
        'type' => 'const char *',
        'name' => 'clear'
      },
      {
        'type' => 'int',
        'name' => 'len'
      },
      {
        'type' => 'char *',
        'name' => 'out'
      }
    ]
  },
  {
    'return_type' => 'void',
    'name' => 'apr_sha1_final',
    'args' => [
      {
        'type' => 'unsigned char',
        'name' => 'digest'
      },
      {
        'type' => 'apr_sha1_ctx_t *',
        'name' => 'context'
      }
    ]
  },
  {
    'return_type' => 'void',
    'name' => 'apr_sha1_init',
    'args' => [
      {
        'type' => 'apr_sha1_ctx_t *',
        'name' => 'context'
      }
    ]
  },
  {
    'return_type' => 'void',
    'name' => 'apr_sha1_update',
    'args' => [
      {
        'type' => 'apr_sha1_ctx_t *',
        'name' => 'context'
      },
      {
        'type' => 'const char *',
        'name' => 'input'
      },
      {
        'type' => 'unsigned int',
        'name' => 'inputLen'
      }
    ]
  },
  {
    'return_type' => 'void',
    'name' => 'apr_sha1_update_binary',
    'args' => [
      {
        'type' => 'apr_sha1_ctx_t *',
        'name' => 'context'
      },
      {
        'type' => 'const unsigned char *',
        'name' => 'input'
      },
      {
        'type' => 'unsigned int',
        'name' => 'inputLen'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_shm_attach',
    'args' => [
      {
        'type' => 'apr_shm_t **',
        'name' => 'm'
      },
      {
        'type' => 'const char *',
        'name' => 'filename'
      },
      {
        'type' => 'apr_pool_t *',
        'name' => 'pool'
      }
    ]
  },
  {
    'return_type' => 'void *',
    'name' => 'apr_shm_baseaddr_get',
    'args' => [
      {
        'type' => 'const apr_shm_t *',
        'name' => 'm'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_shm_create',
    'args' => [
      {
        'type' => 'apr_shm_t **',
        'name' => 'm'
      },
      {
        'type' => 'apr_size_t',
        'name' => 'reqsize'
      },
      {
        'type' => 'const char *',
        'name' => 'filename'
      },
      {
        'type' => 'apr_pool_t *',
        'name' => 'pool'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_shm_destroy',
    'args' => [
      {
        'type' => 'apr_shm_t *',
        'name' => 'm'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_shm_detach',
    'args' => [
      {
        'type' => 'apr_shm_t *',
        'name' => 'm'
      }
    ]
  },
  {
    'return_type' => 'apr_pool_t *',
    'name' => 'apr_shm_pool_get',
    'args' => [
      {
        'type' => 'const apr_shm_t *',
        'name' => 'theshm'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_shm_remove',
    'args' => [
      {
        'type' => 'const char *',
        'name' => 'filename'
      },
      {
        'type' => 'apr_pool_t *',
        'name' => 'pool'
      }
    ]
  },
  {
    'return_type' => 'apr_size_t',
    'name' => 'apr_shm_size_get',
    'args' => [
      {
        'type' => 'const apr_shm_t *',
        'name' => 'm'
      }
    ]
  },
  {
    'return_type' => 'apr_sigfunc_t *',
    'name' => 'apr_signal',
    'args' => [
      {
        'type' => 'int',
        'name' => 'signo'
      },
      {
        'type' => 'apr_sigfunc_t *',
        'name' => 'func'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_signal_block',
    'args' => [
      {
        'type' => 'int',
        'name' => 'signum'
      }
    ]
  },
  {
    'return_type' => 'const char *',
    'name' => 'apr_signal_description_get',
    'args' => [
      {
        'type' => 'int',
        'name' => 'signum'
      }
    ]
  },
  {
    'return_type' => 'void',
    'name' => 'apr_signal_init',
    'args' => [
      {
        'type' => 'apr_pool_t *',
        'name' => 'pglobal'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_signal_thread',
    'args' => [
      {
        'type' => 'int(*signal_handler)(int signum)',
        'name' => 'arg0'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_signal_unblock',
    'args' => [
      {
        'type' => 'int',
        'name' => 'signum'
      }
    ]
  },
  {
    'return_type' => 'void',
    'name' => 'apr_sleep',
    'args' => [
      {
        'type' => 'apr_interval_time_t',
        'name' => 't'
      }
    ]
  },
  {
    'return_type' => 'int',
    'name' => 'apr_snprintf',
    'args' => [
      {
        'type' => 'char *',
        'name' => 'buf'
      },
      {
        'type' => 'apr_size_t',
        'name' => 'len'
      },
      {
        'type' => 'const char *',
        'name' => 'format'
      },
      {
        'type' => '...',
        'name' => 'arg3'
      }
    ]
  },
  {
    'return_type' => 'int',
    'name' => 'apr_sockaddr_equal',
    'args' => [
      {
        'type' => 'const apr_sockaddr_t *',
        'name' => 'addr1'
      },
      {
        'type' => 'const apr_sockaddr_t *',
        'name' => 'addr2'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_sockaddr_info_get',
    'args' => [
      {
        'type' => 'apr_sockaddr_t **',
        'name' => 'sa'
      },
      {
        'type' => 'const char *',
        'name' => 'hostname'
      },
      {
        'type' => 'apr_int32_t',
        'name' => 'family'
      },
      {
        'type' => 'apr_port_t',
        'name' => 'port'
      },
      {
        'type' => 'apr_int32_t',
        'name' => 'flags'
      },
      {
        'type' => 'apr_pool_t *',
        'name' => 'p'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_sockaddr_ip_get',
    'args' => [
      {
        'type' => 'char **',
        'name' => 'addr'
      },
      {
        'type' => 'apr_sockaddr_t *',
        'name' => 'sockaddr'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_sockaddr_ip_getbuf',
    'args' => [
      {
        'type' => 'char *',
        'name' => 'buf'
      },
      {
        'type' => 'apr_size_t',
        'name' => 'buflen'
      },
      {
        'type' => 'apr_sockaddr_t *',
        'name' => 'sockaddr'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_socket_accept',
    'args' => [
      {
        'type' => 'apr_socket_t **',
        'name' => 'new_sock'
      },
      {
        'type' => 'apr_socket_t *',
        'name' => 'sock'
      },
      {
        'type' => 'apr_pool_t *',
        'name' => 'connection_pool'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_socket_addr_get',
    'args' => [
      {
        'type' => 'apr_sockaddr_t **',
        'name' => 'sa'
      },
      {
        'type' => 'apr_interface_e',
        'name' => 'which'
      },
      {
        'type' => 'apr_socket_t *',
        'name' => 'sock'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_socket_atmark',
    'args' => [
      {
        'type' => 'apr_socket_t *',
        'name' => 'sock'
      },
      {
        'type' => 'int *',
        'name' => 'atmark'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_socket_atreadeof',
    'args' => [
      {
        'type' => 'apr_socket_t *',
        'name' => 'sock'
      },
      {
        'type' => 'int *',
        'name' => 'atreadeof'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_socket_bind',
    'args' => [
      {
        'type' => 'apr_socket_t *',
        'name' => 'sock'
      },
      {
        'type' => 'apr_sockaddr_t *',
        'name' => 'sa'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_socket_close',
    'args' => [
      {
        'type' => 'apr_socket_t *',
        'name' => 'thesocket'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_socket_connect',
    'args' => [
      {
        'type' => 'apr_socket_t *',
        'name' => 'sock'
      },
      {
        'type' => 'apr_sockaddr_t *',
        'name' => 'sa'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_socket_create',
    'args' => [
      {
        'type' => 'apr_socket_t **',
        'name' => 'new_sock'
      },
      {
        'type' => 'int',
        'name' => 'family'
      },
      {
        'type' => 'int',
        'name' => 'type'
      },
      {
        'type' => 'int',
        'name' => 'protocol'
      },
      {
        'type' => 'apr_pool_t *',
        'name' => 'cont'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_socket_data_get',
    'args' => [
      {
        'type' => 'void **',
        'name' => 'data'
      },
      {
        'type' => 'const char *',
        'name' => 'key'
      },
      {
        'type' => 'apr_socket_t *',
        'name' => 'sock'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_socket_data_set',
    'args' => [
      {
        'type' => 'apr_socket_t *',
        'name' => 'sock'
      },
      {
        'type' => 'void *',
        'name' => 'data'
      },
      {
        'type' => 'const char *',
        'name' => 'key'
      },
      {
        'type' => 'apr_status_t (*cleanup)(void*)',
        'name' => 'arg3'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_socket_inherit_set',
    'args' => [
      {
        'type' => 'apr_socket_t *',
        'name' => 'thesocket'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_socket_inherit_unset',
    'args' => [
      {
        'type' => 'apr_socket_t *',
        'name' => 'thesocket'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_socket_listen',
    'args' => [
      {
        'type' => 'apr_socket_t *',
        'name' => 'sock'
      },
      {
        'type' => 'apr_int32_t',
        'name' => 'backlog'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_socket_opt_get',
    'args' => [
      {
        'type' => 'apr_socket_t *',
        'name' => 'sock'
      },
      {
        'type' => 'apr_int32_t',
        'name' => 'opt'
      },
      {
        'type' => 'apr_int32_t *',
        'name' => 'on'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_socket_opt_set',
    'args' => [
      {
        'type' => 'apr_socket_t *',
        'name' => 'sock'
      },
      {
        'type' => 'apr_int32_t',
        'name' => 'opt'
      },
      {
        'type' => 'apr_int32_t',
        'name' => 'on'
      }
    ]
  },
  {
    'return_type' => 'apr_pool_t *',
    'name' => 'apr_socket_pool_get',
    'args' => [
      {
        'type' => 'const apr_socket_t *',
        'name' => 'thesocket'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_socket_protocol_get',
    'args' => [
      {
        'type' => 'apr_socket_t *',
        'name' => 'sock'
      },
      {
        'type' => 'int *',
        'name' => 'protocol'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_socket_recv',
    'args' => [
      {
        'type' => 'apr_socket_t *',
        'name' => 'sock'
      },
      {
        'type' => 'char *',
        'name' => 'buf'
      },
      {
        'type' => 'apr_size_t *',
        'name' => 'len'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_socket_recvfrom',
    'args' => [
      {
        'type' => 'apr_sockaddr_t *',
        'name' => 'from'
      },
      {
        'type' => 'apr_socket_t *',
        'name' => 'sock'
      },
      {
        'type' => 'apr_int32_t',
        'name' => 'flags'
      },
      {
        'type' => 'char *',
        'name' => 'buf'
      },
      {
        'type' => 'apr_size_t *',
        'name' => 'len'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_socket_send',
    'args' => [
      {
        'type' => 'apr_socket_t *',
        'name' => 'sock'
      },
      {
        'type' => 'const char *',
        'name' => 'buf'
      },
      {
        'type' => 'apr_size_t *',
        'name' => 'len'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_socket_sendfile',
    'args' => [
      {
        'type' => 'apr_socket_t *',
        'name' => 'sock'
      },
      {
        'type' => 'apr_file_t *',
        'name' => 'file'
      },
      {
        'type' => 'apr_hdtr_t *',
        'name' => 'hdtr'
      },
      {
        'type' => 'apr_off_t *',
        'name' => 'offset'
      },
      {
        'type' => 'apr_size_t *',
        'name' => 'len'
      },
      {
        'type' => 'apr_int32_t',
        'name' => 'flags'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_socket_sendto',
    'args' => [
      {
        'type' => 'apr_socket_t *',
        'name' => 'sock'
      },
      {
        'type' => 'apr_sockaddr_t *',
        'name' => 'where'
      },
      {
        'type' => 'apr_int32_t',
        'name' => 'flags'
      },
      {
        'type' => 'const char *',
        'name' => 'buf'
      },
      {
        'type' => 'apr_size_t *',
        'name' => 'len'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_socket_sendv',
    'args' => [
      {
        'type' => 'apr_socket_t *',
        'name' => 'sock'
      },
      {
        'type' => 'const struct iovec *',
        'name' => 'vec'
      },
      {
        'type' => 'apr_int32_t',
        'name' => 'nvec'
      },
      {
        'type' => 'apr_size_t *',
        'name' => 'len'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_socket_shutdown',
    'args' => [
      {
        'type' => 'apr_socket_t *',
        'name' => 'thesocket'
      },
      {
        'type' => 'apr_shutdown_how_e',
        'name' => 'how'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_socket_timeout_get',
    'args' => [
      {
        'type' => 'apr_socket_t *',
        'name' => 'sock'
      },
      {
        'type' => 'apr_interval_time_t *',
        'name' => 't'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_socket_timeout_set',
    'args' => [
      {
        'type' => 'apr_socket_t *',
        'name' => 'sock'
      },
      {
        'type' => 'apr_interval_time_t',
        'name' => 't'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_socket_type_get',
    'args' => [
      {
        'type' => 'apr_socket_t *',
        'name' => 'sock'
      },
      {
        'type' => 'int *',
        'name' => 'type'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_stat',
    'args' => [
      {
        'type' => 'apr_finfo_t *',
        'name' => 'finfo'
      },
      {
        'type' => 'const char *',
        'name' => 'fname'
      },
      {
        'type' => 'apr_int32_t',
        'name' => 'wanted'
      },
      {
        'type' => 'apr_pool_t *',
        'name' => 'pool'
      }
    ]
  },
  {
    'return_type' => 'char *',
    'name' => 'apr_strerror',
    'args' => [
      {
        'type' => 'apr_status_t',
        'name' => 'statcode'
      },
      {
        'type' => 'char *',
        'name' => 'buf'
      },
      {
        'type' => 'apr_size_t',
        'name' => 'bufsize'
      }
    ]
  },
  {
    'return_type' => 'char *',
    'name' => 'apr_strfsize',
    'args' => [
      {
        'type' => 'apr_off_t',
        'name' => 'size'
      },
      {
        'type' => 'char *',
        'name' => 'buf'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_strftime',
    'args' => [
      {
        'type' => 'char *',
        'name' => 's'
      },
      {
        'type' => 'apr_size_t *',
        'name' => 'retsize'
      },
      {
        'type' => 'apr_size_t',
        'name' => 'max'
      },
      {
        'type' => 'const char *',
        'name' => 'format'
      },
      {
        'type' => 'apr_time_exp_t *',
        'name' => 'tm'
      }
    ]
  },
  {
    'return_type' => 'const apr_strmatch_pattern *',
    'name' => 'apr_strmatch_precompile',
    'args' => [
      {
        'type' => 'apr_pool_t *',
        'name' => 'p'
      },
      {
        'type' => 'const char *',
        'name' => 's'
      },
      {
        'type' => 'int',
        'name' => 'case_sensitive'
      }
    ]
  },
  {
    'return_type' => 'int',
    'name' => 'apr_strnatcasecmp',
    'args' => [
      {
        'type' => 'char const *',
        'name' => 'a'
      },
      {
        'type' => 'char const *',
        'name' => 'b'
      }
    ]
  },
  {
    'return_type' => 'int',
    'name' => 'apr_strnatcmp',
    'args' => [
      {
        'type' => 'char const *',
        'name' => 'a'
      },
      {
        'type' => 'char const *',
        'name' => 'b'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_strtoff',
    'args' => [
      {
        'type' => 'apr_off_t *',
        'name' => 'offset'
      },
      {
        'type' => 'const char *',
        'name' => 'buf'
      },
      {
        'type' => 'char **',
        'name' => 'end'
      },
      {
        'type' => 'int',
        'name' => 'base'
      }
    ]
  },
  {
    'return_type' => 'apr_int64_t',
    'name' => 'apr_strtoi64',
    'args' => [
      {
        'type' => 'const char *',
        'name' => 'buf'
      },
      {
        'type' => 'char **',
        'name' => 'end'
      },
      {
        'type' => 'int',
        'name' => 'base'
      }
    ]
  },
  {
    'return_type' => 'char *',
    'name' => 'apr_strtok',
    'args' => [
      {
        'type' => 'char *',
        'name' => 'str'
      },
      {
        'type' => 'const char *',
        'name' => 'sep'
      },
      {
        'type' => 'char **',
        'name' => 'last'
      }
    ]
  },
  {
    'return_type' => 'void',
    'name' => 'apr_table_add',
    'args' => [
      {
        'type' => 'apr_table_t *',
        'name' => 't'
      },
      {
        'type' => 'const char *',
        'name' => 'key'
      },
      {
        'type' => 'const char *',
        'name' => 'val'
      }
    ]
  },
  {
    'return_type' => 'void',
    'name' => 'apr_table_addn',
    'args' => [
      {
        'type' => 'apr_table_t *',
        'name' => 't'
      },
      {
        'type' => 'const char *',
        'name' => 'key'
      },
      {
        'type' => 'const char *',
        'name' => 'val'
      }
    ]
  },
  {
    'return_type' => 'void',
    'name' => 'apr_table_clear',
    'args' => [
      {
        'type' => 'apr_table_t *',
        'name' => 't'
      }
    ]
  },
  {
    'return_type' => 'apr_table_t *',
    'name' => 'apr_table_clone',
    'args' => [
      {
        'type' => 'apr_pool_t *',
        'name' => 'p'
      },
      {
        'type' => 'const apr_table_t *',
        'name' => 't'
      }
    ]
  },
  {
    'return_type' => 'void',
    'name' => 'apr_table_compress',
    'args' => [
      {
        'type' => 'apr_table_t *',
        'name' => 't'
      },
      {
        'type' => 'unsigned',
        'name' => 'flags'
      }
    ]
  },
  {
    'return_type' => 'apr_table_t *',
    'name' => 'apr_table_copy',
    'args' => [
      {
        'type' => 'apr_pool_t *',
        'name' => 'p'
      },
      {
        'type' => 'const apr_table_t *',
        'name' => 't'
      }
    ]
  },
  {
    'return_type' => 'int',
    'name' => 'apr_table_do',
    'args' => [
      {
        'type' => 'void *comp',
        'name' => 'arg0'
      },
      {
        'type' => 'void *',
        'name' => 'rec'
      },
      {
        'type' => 'const apr_table_t *',
        'name' => 't'
      },
      {
        'type' => '...',
        'name' => 'arg3'
      }
    ]
  },
  {
    'return_type' => 'const apr_array_header_t *',
    'name' => 'apr_table_elts',
    'args' => [
      {
        'type' => 'const apr_table_t *',
        'name' => 't'
      }
    ]
  },
  {
    'return_type' => 'const char *',
    'name' => 'apr_table_get',
    'args' => [
      {
        'type' => 'const apr_table_t *',
        'name' => 't'
      },
      {
        'type' => 'const char *',
        'name' => 'key'
      }
    ]
  },
  {
    'return_type' => 'apr_table_t *',
    'name' => 'apr_table_make',
    'args' => [
      {
        'type' => 'apr_pool_t *',
        'name' => 'p'
      },
      {
        'type' => 'int',
        'name' => 'nelts'
      }
    ]
  },
  {
    'return_type' => 'void',
    'name' => 'apr_table_merge',
    'args' => [
      {
        'type' => 'apr_table_t *',
        'name' => 't'
      },
      {
        'type' => 'const char *',
        'name' => 'key'
      },
      {
        'type' => 'const char *',
        'name' => 'val'
      }
    ]
  },
  {
    'return_type' => 'void',
    'name' => 'apr_table_mergen',
    'args' => [
      {
        'type' => 'apr_table_t *',
        'name' => 't'
      },
      {
        'type' => 'const char *',
        'name' => 'key'
      },
      {
        'type' => 'const char *',
        'name' => 'val'
      }
    ]
  },
  {
    'return_type' => 'void',
    'name' => 'apr_table_overlap',
    'args' => [
      {
        'type' => 'apr_table_t *',
        'name' => 'a'
      },
      {
        'type' => 'const apr_table_t *',
        'name' => 'b'
      },
      {
        'type' => 'unsigned',
        'name' => 'flags'
      }
    ]
  },
  {
    'return_type' => 'apr_table_t *',
    'name' => 'apr_table_overlay',
    'args' => [
      {
        'type' => 'apr_pool_t *',
        'name' => 'p'
      },
      {
        'type' => 'const apr_table_t *',
        'name' => 'overlay'
      },
      {
        'type' => 'const apr_table_t *',
        'name' => 'base'
      }
    ]
  },
  {
    'return_type' => 'void',
    'name' => 'apr_table_set',
    'args' => [
      {
        'type' => 'apr_table_t *',
        'name' => 't'
      },
      {
        'type' => 'const char *',
        'name' => 'key'
      },
      {
        'type' => 'const char *',
        'name' => 'val'
      }
    ]
  },
  {
    'return_type' => 'void',
    'name' => 'apr_table_setn',
    'args' => [
      {
        'type' => 'apr_table_t *',
        'name' => 't'
      },
      {
        'type' => 'const char *',
        'name' => 'key'
      },
      {
        'type' => 'const char *',
        'name' => 'val'
      }
    ]
  },
  {
    'return_type' => 'void',
    'name' => 'apr_table_unset',
    'args' => [
      {
        'type' => 'apr_table_t *',
        'name' => 't'
      },
      {
        'type' => 'const char *',
        'name' => 'key'
      }
    ]
  },
  {
    'return_type' => 'int',
    'name' => 'apr_table_vdo',
    'args' => [
      {
        'type' => 'void *comp',
        'name' => 'arg0'
      },
      {
        'type' => 'void *',
        'name' => 'rec'
      },
      {
        'type' => 'const apr_table_t *',
        'name' => 't'
      },
      {
        'type' => 'va_list',
        'name' => 'vp'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_temp_dir_get',
    'args' => [
      {
        'type' => 'const char **',
        'name' => 'temp_dir'
      },
      {
        'type' => 'apr_pool_t *',
        'name' => 'p'
      }
    ]
  },
  {
    'return_type' => 'void',
    'name' => 'apr_terminate',
    'args' => []
  },
  {
    'return_type' => 'void',
    'name' => 'apr_terminate2',
    'args' => []
  },
  {
    'return_type' => 'void',
    'name' => 'apr_text_append',
    'args' => [
      {
        'type' => 'apr_pool_t *',
        'name' => 'p'
      },
      {
        'type' => 'apr_text_header *',
        'name' => 'hdr'
      },
      {
        'type' => 'const char *',
        'name' => 'text'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_thread_cond_broadcast',
    'args' => [
      {
        'type' => 'apr_thread_cond_t *',
        'name' => 'cond'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_thread_cond_create',
    'args' => [
      {
        'type' => 'apr_thread_cond_t **',
        'name' => 'cond'
      },
      {
        'type' => 'apr_pool_t *',
        'name' => 'pool'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_thread_cond_destroy',
    'args' => [
      {
        'type' => 'apr_thread_cond_t *',
        'name' => 'cond'
      }
    ]
  },
  {
    'return_type' => 'apr_pool_t *',
    'name' => 'apr_thread_cond_pool_get',
    'args' => [
      {
        'type' => 'const apr_thread_cond_t *',
        'name' => 'thethread_cond'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_thread_cond_signal',
    'args' => [
      {
        'type' => 'apr_thread_cond_t *',
        'name' => 'cond'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_thread_cond_timedwait',
    'args' => [
      {
        'type' => 'apr_thread_cond_t *',
        'name' => 'cond'
      },
      {
        'type' => 'apr_thread_mutex_t *',
        'name' => 'mutex'
      },
      {
        'type' => 'apr_interval_time_t',
        'name' => 'timeout'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_thread_cond_wait',
    'args' => [
      {
        'type' => 'apr_thread_cond_t *',
        'name' => 'cond'
      },
      {
        'type' => 'apr_thread_mutex_t *',
        'name' => 'mutex'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_thread_create',
    'args' => [
      {
        'type' => 'apr_thread_t **',
        'name' => 'new_thread'
      },
      {
        'type' => 'apr_threadattr_t *',
        'name' => 'attr'
      },
      {
        'type' => 'apr_thread_start_t',
        'name' => 'func'
      },
      {
        'type' => 'void *',
        'name' => 'data'
      },
      {
        'type' => 'apr_pool_t *',
        'name' => 'cont'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_thread_data_get',
    'args' => [
      {
        'type' => 'void **',
        'name' => 'data'
      },
      {
        'type' => 'const char *',
        'name' => 'key'
      },
      {
        'type' => 'apr_thread_t *',
        'name' => 'thread'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_thread_data_set',
    'args' => [
      {
        'type' => 'void *',
        'name' => 'data'
      },
      {
        'type' => 'const char *',
        'name' => 'key'
      },
      {
        'type' => 'apr_status_t (*cleanup) (void *)',
        'name' => 'arg2'
      },
      {
        'type' => 'apr_thread_t *',
        'name' => 'thread'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_thread_detach',
    'args' => [
      {
        'type' => 'apr_thread_t *',
        'name' => 'thd'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_thread_exit',
    'args' => [
      {
        'type' => 'apr_thread_t *',
        'name' => 'thd'
      },
      {
        'type' => 'apr_status_t',
        'name' => 'retval'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_thread_join',
    'args' => [
      {
        'type' => 'apr_status_t *',
        'name' => 'retval'
      },
      {
        'type' => 'apr_thread_t *',
        'name' => 'thd'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_thread_mutex_create',
    'args' => [
      {
        'type' => 'apr_thread_mutex_t **',
        'name' => 'mutex'
      },
      {
        'type' => 'unsigned int',
        'name' => 'flags'
      },
      {
        'type' => 'apr_pool_t *',
        'name' => 'pool'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_thread_mutex_destroy',
    'args' => [
      {
        'type' => 'apr_thread_mutex_t *',
        'name' => 'mutex'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_thread_mutex_lock',
    'args' => [
      {
        'type' => 'apr_thread_mutex_t *',
        'name' => 'mutex'
      }
    ]
  },
  {
    'return_type' => 'apr_pool_t *',
    'name' => 'apr_thread_mutex_pool_get',
    'args' => [
      {
        'type' => 'const apr_thread_mutex_t *',
        'name' => 'thethread_mutex'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_thread_mutex_trylock',
    'args' => [
      {
        'type' => 'apr_thread_mutex_t *',
        'name' => 'mutex'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_thread_mutex_unlock',
    'args' => [
      {
        'type' => 'apr_thread_mutex_t *',
        'name' => 'mutex'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_thread_once',
    'args' => [
      {
        'type' => 'apr_thread_once_t *',
        'name' => 'control'
      },
      {
        'type' => 'void (*func)(void)',
        'name' => 'arg1'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_thread_once_init',
    'args' => [
      {
        'type' => 'apr_thread_once_t **',
        'name' => 'control'
      },
      {
        'type' => 'apr_pool_t *',
        'name' => 'p'
      }
    ]
  },
  {
    'return_type' => 'apr_size_t',
    'name' => 'apr_thread_pool_busy_count',
    'args' => [
      {
        'type' => 'apr_thread_pool_t *',
        'name' => 'me'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_thread_pool_create',
    'args' => [
      {
        'type' => 'apr_thread_pool_t **',
        'name' => 'me'
      },
      {
        'type' => 'apr_size_t',
        'name' => 'init_threads'
      },
      {
        'type' => 'apr_size_t',
        'name' => 'max_threads'
      },
      {
        'type' => 'apr_pool_t *',
        'name' => 'pool'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_thread_pool_destroy',
    'args' => [
      {
        'type' => 'apr_thread_pool_t *',
        'name' => 'me'
      }
    ]
  },
  {
    'return_type' => 'apr_pool_t *',
    'name' => 'apr_thread_pool_get',
    'args' => [
      {
        'type' => 'const apr_thread_t *',
        'name' => 'thethread'
      }
    ]
  },
  {
    'return_type' => 'apr_size_t',
    'name' => 'apr_thread_pool_idle_count',
    'args' => [
      {
        'type' => 'apr_thread_pool_t *',
        'name' => 'me'
      }
    ]
  },
  {
    'return_type' => 'apr_size_t',
    'name' => 'apr_thread_pool_idle_max_get',
    'args' => [
      {
        'type' => 'apr_thread_pool_t *',
        'name' => 'me'
      }
    ]
  },
  {
    'return_type' => 'apr_size_t',
    'name' => 'apr_thread_pool_idle_max_set',
    'args' => [
      {
        'type' => 'apr_thread_pool_t *',
        'name' => 'me'
      },
      {
        'type' => 'apr_size_t',
        'name' => 'cnt'
      }
    ]
  },
  {
    'return_type' => 'apr_interval_time_t',
    'name' => 'apr_thread_pool_idle_wait_get',
    'args' => [
      {
        'type' => 'apr_thread_pool_t *',
        'name' => 'me'
      }
    ]
  },
  {
    'return_type' => 'apr_interval_time_t',
    'name' => 'apr_thread_pool_idle_wait_set',
    'args' => [
      {
        'type' => 'apr_thread_pool_t *',
        'name' => 'me'
      },
      {
        'type' => 'apr_interval_time_t',
        'name' => 'timeout'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_thread_pool_push',
    'args' => [
      {
        'type' => 'apr_thread_pool_t *',
        'name' => 'me'
      },
      {
        'type' => 'apr_thread_start_t',
        'name' => 'func'
      },
      {
        'type' => 'void *',
        'name' => 'param'
      },
      {
        'type' => 'apr_byte_t',
        'name' => 'priority'
      },
      {
        'type' => 'void *',
        'name' => 'owner'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_thread_pool_schedule',
    'args' => [
      {
        'type' => 'apr_thread_pool_t *',
        'name' => 'me'
      },
      {
        'type' => 'apr_thread_start_t',
        'name' => 'func'
      },
      {
        'type' => 'void *',
        'name' => 'param'
      },
      {
        'type' => 'apr_interval_time_t',
        'name' => 'time'
      },
      {
        'type' => 'void *',
        'name' => 'owner'
      }
    ]
  },
  {
    'return_type' => 'apr_size_t',
    'name' => 'apr_thread_pool_scheduled_tasks_count',
    'args' => [
      {
        'type' => 'apr_thread_pool_t *',
        'name' => 'me'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_thread_pool_task_owner_get',
    'args' => [
      {
        'type' => 'apr_thread_t *',
        'name' => 'thd'
      },
      {
        'type' => 'void **',
        'name' => 'owner'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_thread_pool_tasks_cancel',
    'args' => [
      {
        'type' => 'apr_thread_pool_t *',
        'name' => 'me'
      },
      {
        'type' => 'void *',
        'name' => 'owner'
      }
    ]
  },
  {
    'return_type' => 'apr_size_t',
    'name' => 'apr_thread_pool_tasks_count',
    'args' => [
      {
        'type' => 'apr_thread_pool_t *',
        'name' => 'me'
      }
    ]
  },
  {
    'return_type' => 'apr_size_t',
    'name' => 'apr_thread_pool_tasks_high_count',
    'args' => [
      {
        'type' => 'apr_thread_pool_t *',
        'name' => 'me'
      }
    ]
  },
  {
    'return_type' => 'apr_size_t',
    'name' => 'apr_thread_pool_tasks_run_count',
    'args' => [
      {
        'type' => 'apr_thread_pool_t *',
        'name' => 'me'
      }
    ]
  },
  {
    'return_type' => 'apr_size_t',
    'name' => 'apr_thread_pool_thread_max_get',
    'args' => [
      {
        'type' => 'apr_thread_pool_t *',
        'name' => 'me'
      }
    ]
  },
  {
    'return_type' => 'apr_size_t',
    'name' => 'apr_thread_pool_thread_max_set',
    'args' => [
      {
        'type' => 'apr_thread_pool_t *',
        'name' => 'me'
      },
      {
        'type' => 'apr_size_t',
        'name' => 'cnt'
      }
    ]
  },
  {
    'return_type' => 'apr_size_t',
    'name' => 'apr_thread_pool_threads_count',
    'args' => [
      {
        'type' => 'apr_thread_pool_t *',
        'name' => 'me'
      }
    ]
  },
  {
    'return_type' => 'apr_size_t',
    'name' => 'apr_thread_pool_threads_high_count',
    'args' => [
      {
        'type' => 'apr_thread_pool_t *',
        'name' => 'me'
      }
    ]
  },
  {
    'return_type' => 'apr_size_t',
    'name' => 'apr_thread_pool_threads_idle_timeout_count',
    'args' => [
      {
        'type' => 'apr_thread_pool_t *',
        'name' => 'me'
      }
    ]
  },
  {
    'return_type' => 'apr_size_t',
    'name' => 'apr_thread_pool_threshold_get',
    'args' => [
      {
        'type' => 'apr_thread_pool_t *',
        'name' => 'me'
      }
    ]
  },
  {
    'return_type' => 'apr_size_t',
    'name' => 'apr_thread_pool_threshold_set',
    'args' => [
      {
        'type' => 'apr_thread_pool_t *',
        'name' => 'me'
      },
      {
        'type' => 'apr_size_t',
        'name' => 'val'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_thread_pool_top',
    'args' => [
      {
        'type' => 'apr_thread_pool_t *',
        'name' => 'me'
      },
      {
        'type' => 'apr_thread_start_t',
        'name' => 'func'
      },
      {
        'type' => 'void *',
        'name' => 'param'
      },
      {
        'type' => 'apr_byte_t',
        'name' => 'priority'
      },
      {
        'type' => 'void *',
        'name' => 'owner'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_thread_rwlock_create',
    'args' => [
      {
        'type' => 'apr_thread_rwlock_t **',
        'name' => 'rwlock'
      },
      {
        'type' => 'apr_pool_t *',
        'name' => 'pool'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_thread_rwlock_destroy',
    'args' => [
      {
        'type' => 'apr_thread_rwlock_t *',
        'name' => 'rwlock'
      }
    ]
  },
  {
    'return_type' => 'apr_pool_t *',
    'name' => 'apr_thread_rwlock_pool_get',
    'args' => [
      {
        'type' => 'const apr_thread_rwlock_t *',
        'name' => 'thethread_rwlock'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_thread_rwlock_rdlock',
    'args' => [
      {
        'type' => 'apr_thread_rwlock_t *',
        'name' => 'rwlock'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_thread_rwlock_tryrdlock',
    'args' => [
      {
        'type' => 'apr_thread_rwlock_t *',
        'name' => 'rwlock'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_thread_rwlock_trywrlock',
    'args' => [
      {
        'type' => 'apr_thread_rwlock_t *',
        'name' => 'rwlock'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_thread_rwlock_unlock',
    'args' => [
      {
        'type' => 'apr_thread_rwlock_t *',
        'name' => 'rwlock'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_thread_rwlock_wrlock',
    'args' => [
      {
        'type' => 'apr_thread_rwlock_t *',
        'name' => 'rwlock'
      }
    ]
  },
  {
    'return_type' => 'void',
    'name' => 'apr_thread_yield',
    'args' => []
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_threadattr_create',
    'args' => [
      {
        'type' => 'apr_threadattr_t **',
        'name' => 'new_attr'
      },
      {
        'type' => 'apr_pool_t *',
        'name' => 'cont'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_threadattr_detach_get',
    'args' => [
      {
        'type' => 'apr_threadattr_t *',
        'name' => 'attr'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_threadattr_detach_set',
    'args' => [
      {
        'type' => 'apr_threadattr_t *',
        'name' => 'attr'
      },
      {
        'type' => 'apr_int32_t',
        'name' => 'on'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_threadattr_guardsize_set',
    'args' => [
      {
        'type' => 'apr_threadattr_t *',
        'name' => 'attr'
      },
      {
        'type' => 'apr_size_t',
        'name' => 'guardsize'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_threadattr_stacksize_set',
    'args' => [
      {
        'type' => 'apr_threadattr_t *',
        'name' => 'attr'
      },
      {
        'type' => 'apr_size_t',
        'name' => 'stacksize'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_threadkey_data_get',
    'args' => [
      {
        'type' => 'void **',
        'name' => 'data'
      },
      {
        'type' => 'const char *',
        'name' => 'key'
      },
      {
        'type' => 'apr_threadkey_t *',
        'name' => 'threadkey'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_threadkey_data_set',
    'args' => [
      {
        'type' => 'void *',
        'name' => 'data'
      },
      {
        'type' => 'const char *',
        'name' => 'key'
      },
      {
        'type' => 'apr_status_t (*cleanup) (void *)',
        'name' => 'arg2'
      },
      {
        'type' => 'apr_threadkey_t *',
        'name' => 'threadkey'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_threadkey_private_create',
    'args' => [
      {
        'type' => 'apr_threadkey_t **',
        'name' => 'key'
      },
      {
        'type' => 'void (*dest)(void *)',
        'name' => 'arg1'
      },
      {
        'type' => 'apr_pool_t *',
        'name' => 'cont'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_threadkey_private_delete',
    'args' => [
      {
        'type' => 'apr_threadkey_t *',
        'name' => 'key'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_threadkey_private_get',
    'args' => [
      {
        'type' => 'void **',
        'name' => 'new_mem'
      },
      {
        'type' => 'apr_threadkey_t *',
        'name' => 'key'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_threadkey_private_set',
    'args' => [
      {
        'type' => 'void *',
        'name' => 'priv'
      },
      {
        'type' => 'apr_threadkey_t *',
        'name' => 'key'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_time_ansi_put',
    'args' => [
      {
        'type' => 'apr_time_t *',
        'name' => 'result'
      },
      {
        'type' => 'time_t',
        'name' => 'input'
      }
    ]
  },
  {
    'return_type' => 'void',
    'name' => 'apr_time_clock_hires',
    'args' => [
      {
        'type' => 'apr_pool_t *',
        'name' => 'p'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_time_exp_get',
    'args' => [
      {
        'type' => 'apr_time_t *',
        'name' => 'result'
      },
      {
        'type' => 'apr_time_exp_t *',
        'name' => 'input'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_time_exp_gmt',
    'args' => [
      {
        'type' => 'apr_time_exp_t *',
        'name' => 'result'
      },
      {
        'type' => 'apr_time_t',
        'name' => 'input'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_time_exp_gmt_get',
    'args' => [
      {
        'type' => 'apr_time_t *',
        'name' => 'result'
      },
      {
        'type' => 'apr_time_exp_t *',
        'name' => 'input'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_time_exp_lt',
    'args' => [
      {
        'type' => 'apr_time_exp_t *',
        'name' => 'result'
      },
      {
        'type' => 'apr_time_t',
        'name' => 'input'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_time_exp_tz',
    'args' => [
      {
        'type' => 'apr_time_exp_t *',
        'name' => 'result'
      },
      {
        'type' => 'apr_time_t',
        'name' => 'input'
      },
      {
        'type' => 'apr_int32_t',
        'name' => 'offs'
      }
    ]
  },
  {
    'return_type' => 'apr_time_t',
    'name' => 'apr_time_now',
    'args' => []
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_tokenize_to_argv',
    'args' => [
      {
        'type' => 'const char *',
        'name' => 'arg_str'
      },
      {
        'type' => 'char ***',
        'name' => 'argv_out'
      },
      {
        'type' => 'apr_pool_t *',
        'name' => 'token_context'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_uid_current',
    'args' => [
      {
        'type' => 'apr_uid_t *',
        'name' => 'userid'
      },
      {
        'type' => 'apr_gid_t *',
        'name' => 'groupid'
      },
      {
        'type' => 'apr_pool_t *',
        'name' => 'p'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_uid_get',
    'args' => [
      {
        'type' => 'apr_uid_t *',
        'name' => 'userid'
      },
      {
        'type' => 'apr_gid_t *',
        'name' => 'groupid'
      },
      {
        'type' => 'const char *',
        'name' => 'username'
      },
      {
        'type' => 'apr_pool_t *',
        'name' => 'p'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_uid_homepath_get',
    'args' => [
      {
        'type' => 'char **',
        'name' => 'dirname'
      },
      {
        'type' => 'const char *',
        'name' => 'username'
      },
      {
        'type' => 'apr_pool_t *',
        'name' => 'p'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_uid_name_get',
    'args' => [
      {
        'type' => 'char **',
        'name' => 'username'
      },
      {
        'type' => 'apr_uid_t',
        'name' => 'userid'
      },
      {
        'type' => 'apr_pool_t *',
        'name' => 'p'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_uri_parse',
    'args' => [
      {
        'type' => 'apr_pool_t *',
        'name' => 'p'
      },
      {
        'type' => 'const char *',
        'name' => 'uri'
      },
      {
        'type' => 'apr_uri_t *',
        'name' => 'uptr'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_uri_parse_hostinfo',
    'args' => [
      {
        'type' => 'apr_pool_t *',
        'name' => 'p'
      },
      {
        'type' => 'const char *',
        'name' => 'hostinfo'
      },
      {
        'type' => 'apr_uri_t *',
        'name' => 'uptr'
      }
    ]
  },
  {
    'return_type' => 'apr_port_t',
    'name' => 'apr_uri_port_of_scheme',
    'args' => [
      {
        'type' => 'const char *',
        'name' => 'scheme_str'
      }
    ]
  },
  {
    'return_type' => 'char *',
    'name' => 'apr_uri_unparse',
    'args' => [
      {
        'type' => 'apr_pool_t *',
        'name' => 'p'
      },
      {
        'type' => 'const apr_uri_t *',
        'name' => 'uptr'
      },
      {
        'type' => 'unsigned',
        'name' => 'flags'
      }
    ]
  },
  {
    'return_type' => 'void',
    'name' => 'apr_uuid_format',
    'args' => [
      {
        'type' => 'char *',
        'name' => 'buffer'
      },
      {
        'type' => 'const apr_uuid_t *',
        'name' => 'uuid'
      }
    ]
  },
  {
    'return_type' => 'void',
    'name' => 'apr_uuid_get',
    'args' => [
      {
        'type' => 'apr_uuid_t *',
        'name' => 'uuid'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_uuid_parse',
    'args' => [
      {
        'type' => 'apr_uuid_t *',
        'name' => 'uuid'
      },
      {
        'type' => 'const char *',
        'name' => 'uuid_str'
      }
    ]
  },
  {
    'return_type' => 'void',
    'name' => 'apr_version',
    'args' => [
      {
        'type' => 'apr_version_t *',
        'name' => 'pvsn'
      }
    ]
  },
  {
    'return_type' => 'const char *',
    'name' => 'apr_version_string',
    'args' => []
  },
  {
    'return_type' => 'int',
    'name' => 'apr_vformatter',
    'args' => [
      {
        'type' => 'int (*flush_func)(apr_vformatter_buff_t *b)',
        'name' => 'arg0'
      },
      {
        'type' => 'apr_vformatter_buff_t *',
        'name' => 'c'
      },
      {
        'type' => 'const char *',
        'name' => 'fmt'
      },
      {
        'type' => 'va_list',
        'name' => 'ap'
      }
    ]
  },
  {
    'return_type' => 'int',
    'name' => 'apr_vsnprintf',
    'args' => [
      {
        'type' => 'char *',
        'name' => 'buf'
      },
      {
        'type' => 'apr_size_t',
        'name' => 'len'
      },
      {
        'type' => 'const char *',
        'name' => 'format'
      },
      {
        'type' => 'va_list',
        'name' => 'ap'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_wait_for_io_or_timeout',
    'args' => [
      {
        'type' => 'apr_file_t *',
        'name' => 'f'
      },
      {
        'type' => 'apr_socket_t *',
        'name' => 's'
      },
      {
        'type' => 'int',
        'name' => 'for_read'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_xlate_close',
    'args' => [
      {
        'type' => 'apr_xlate_t *',
        'name' => 'convset'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_xlate_conv_buffer',
    'args' => [
      {
        'type' => 'apr_xlate_t *',
        'name' => 'convset'
      },
      {
        'type' => 'const char *',
        'name' => 'inbuf'
      },
      {
        'type' => 'apr_size_t *',
        'name' => 'inbytes_left'
      },
      {
        'type' => 'char *',
        'name' => 'outbuf'
      },
      {
        'type' => 'apr_size_t *',
        'name' => 'outbytes_left'
      }
    ]
  },
  {
    'return_type' => 'apr_int32_t',
    'name' => 'apr_xlate_conv_byte',
    'args' => [
      {
        'type' => 'apr_xlate_t *',
        'name' => 'convset'
      },
      {
        'type' => 'unsigned char',
        'name' => 'inchar'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_xlate_open',
    'args' => [
      {
        'type' => 'apr_xlate_t **',
        'name' => 'convset'
      },
      {
        'type' => 'const char *',
        'name' => 'topage'
      },
      {
        'type' => 'const char *',
        'name' => 'frompage'
      },
      {
        'type' => 'apr_pool_t *',
        'name' => 'pool'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_xlate_sb_get',
    'args' => [
      {
        'type' => 'apr_xlate_t *',
        'name' => 'convset'
      },
      {
        'type' => 'int *',
        'name' => 'onoff'
      }
    ]
  },
  {
    'return_type' => 'const char *',
    'name' => 'apr_xml_empty_elem',
    'args' => [
      {
        'type' => 'apr_pool_t *',
        'name' => 'p'
      },
      {
        'type' => 'const apr_xml_elem *',
        'name' => 'elem'
      }
    ]
  },
  {
    'return_type' => 'int',
    'name' => 'apr_xml_insert_uri',
    'args' => [
      {
        'type' => 'apr_array_header_t *',
        'name' => 'uri_array'
      },
      {
        'type' => 'const char *',
        'name' => 'uri'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_xml_parse_file',
    'args' => [
      {
        'type' => 'apr_pool_t *',
        'name' => 'p'
      },
      {
        'type' => 'apr_xml_parser **',
        'name' => 'parser'
      },
      {
        'type' => 'apr_xml_doc **',
        'name' => 'ppdoc'
      },
      {
        'type' => 'apr_file_t *',
        'name' => 'xmlfd'
      },
      {
        'type' => 'apr_size_t',
        'name' => 'buffer_length'
      }
    ]
  },
  {
    'return_type' => 'apr_xml_parser *',
    'name' => 'apr_xml_parser_create',
    'args' => [
      {
        'type' => 'apr_pool_t *',
        'name' => 'pool'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_xml_parser_done',
    'args' => [
      {
        'type' => 'apr_xml_parser *',
        'name' => 'parser'
      },
      {
        'type' => 'apr_xml_doc **',
        'name' => 'pdoc'
      }
    ]
  },
  {
    'return_type' => 'apr_status_t',
    'name' => 'apr_xml_parser_feed',
    'args' => [
      {
        'type' => 'apr_xml_parser *',
        'name' => 'parser'
      },
      {
        'type' => 'const char *',
        'name' => 'data'
      },
      {
        'type' => 'apr_size_t',
        'name' => 'len'
      }
    ]
  },
  {
    'return_type' => 'char *',
    'name' => 'apr_xml_parser_geterror',
    'args' => [
      {
        'type' => 'apr_xml_parser *',
        'name' => 'parser'
      },
      {
        'type' => 'char *',
        'name' => 'errbuf'
      },
      {
        'type' => 'apr_size_t',
        'name' => 'errbufsize'
      }
    ]
  },
  {
    'return_type' => 'void',
    'name' => 'apr_xml_quote_elem',
    'args' => [
      {
        'type' => 'apr_pool_t *',
        'name' => 'p'
      },
      {
        'type' => 'apr_xml_elem *',
        'name' => 'elem'
      }
    ]
  },
  {
    'return_type' => 'const char *',
    'name' => 'apr_xml_quote_string',
    'args' => [
      {
        'type' => 'apr_pool_t *',
        'name' => 'p'
      },
      {
        'type' => 'const char *',
        'name' => 's'
      },
      {
        'type' => 'int',
        'name' => 'quotes'
      }
    ]
  },
  {
    'return_type' => 'void',
    'name' => 'apr_xml_to_text',
    'args' => [
      {
        'type' => 'apr_pool_t *',
        'name' => 'p'
      },
      {
        'type' => 'const apr_xml_elem *',
        'name' => 'elem'
      },
      {
        'type' => 'int',
        'name' => 'style'
      },
      {
        'type' => 'apr_array_header_t *',
        'name' => 'namespaces'
      },
      {
        'type' => 'int *',
        'name' => 'ns_map'
      },
      {
        'type' => 'const char **',
        'name' => 'pbuf'
      },
      {
        'type' => 'apr_size_t *',
        'name' => 'psize'
      }
    ]
  }
];


1;