Main Page | Modules | Namespace List | Alphabetical List | Data Structures | Directories | File List | Data Fields | Globals | Related Pages | Examples

mod_vhost_alias.c File Reference

#include "apr.h"
#include "apr_strings.h"
#include "apr_hooks.h"
#include "apr_lib.h"
#include "apr_want.h"
#include "httpd.h"
#include "http_config.h"
#include "http_core.h"
#include "http_request.h"

Include dependency graph for mod_vhost_alias.c:

Go to the source code of this file.

Defines

#define APR_WANT_STRFUNC

Typedefs

typedef mva_sconf_t mva_sconf_t

Enumerations

enum  mva_mode_e { VHOST_ALIAS_UNSET, VHOST_ALIAS_NONE, VHOST_ALIAS_NAME, VHOST_ALIAS_IP }

Functions

static void * mva_create_server_config (apr_pool_t *p, server_rec *s)
static void * mva_merge_server_config (apr_pool_t *p, void *parentv, void *childv)
static const char * vhost_alias_set (cmd_parms *cmd, void *dummy, const char *map)
static APR_INLINE void vhost_alias_checkspace (request_rec *r, char *buf, char **pdest, int size)
static void vhost_alias_interpolate (request_rec *r, const char *name, const char *map, const char *uri)
static int mva_translate (request_rec *r)
static void register_hooks (apr_pool_t *p)

Variables

module AP_MODULE_DECLARE_DATA vhost_alias_module
static int vhost_alias_set_doc_root_ip
static int vhost_alias_set_cgi_root_ip
static int vhost_alias_set_doc_root_name
static int vhost_alias_set_cgi_root_name
static const command_rec mva_commands []


Define Documentation

#define APR_WANT_STRFUNC
 

Definition at line 41 of file mod_vhost_alias.c.


Typedef Documentation

typedef struct mva_sconf_t mva_sconf_t
 


Enumeration Type Documentation

enum mva_mode_e
 

Enumeration values:
VHOST_ALIAS_UNSET 
VHOST_ALIAS_NONE 
VHOST_ALIAS_NAME 
VHOST_ALIAS_IP 

Definition at line 58 of file mod_vhost_alias.c.


Function Documentation

static void* mva_create_server_config apr_pool_t p,
server_rec s
[static]
 

Definition at line 72 of file mod_vhost_alias.c.

References apr_pcalloc, mva_sconf_t::cgi_root, mva_sconf_t::cgi_root_mode, conf, mva_sconf_t::doc_root, mva_sconf_t::doc_root_mode, NULL, and VHOST_ALIAS_UNSET.

static void* mva_merge_server_config apr_pool_t p,
void *  parentv,
void *  childv
[static]
 

Definition at line 84 of file mod_vhost_alias.c.

References apr_pcalloc, mva_sconf_t::cgi_root, mva_sconf_t::cgi_root_mode, conf, mva_sconf_t::doc_root, mva_sconf_t::doc_root_mode, parent, and VHOST_ALIAS_UNSET.

static int mva_translate request_rec r  )  [static]
 

Definition at line 383 of file mod_vhost_alias.c.

References ap_get_module_config, request_rec::canonical_filename, mva_sconf_t::cgi_root, mva_sconf_t::cgi_root_mode, conf, request_rec::connection, DECLINED, mva_sconf_t::doc_root, mva_sconf_t::doc_root_mode, conn_rec::local_ip, mode, server_rec::module_config, name, NULL, OK, request_rec::server, strstr(), request_rec::uri, uri, vhost_alias_interpolate(), VHOST_ALIAS_IP, vhost_alias_module, and VHOST_ALIAS_NAME.

Referenced by register_hooks().

Here is the call graph for this function:

static void register_hooks apr_pool_t p  )  [static]
 

Definition at line 440 of file mod_vhost_alias.c.

References APR_HOOK_MIDDLE, aszPre, mva_translate(), and NULL.

Here is the call graph for this function:

static APR_INLINE void vhost_alias_checkspace request_rec r,
char *  buf,
char **  pdest,
int  size
[static]
 

Definition at line 237 of file mod_vhost_alias.c.

References request_rec::filename, HUGE_STRING_LEN, NULL, and request_rec::pool.

Referenced by vhost_alias_interpolate().

static void vhost_alias_interpolate request_rec r,
const char *  name,
const char *  map,
const char *  uri
[static]
 

Definition at line 253 of file mod_vhost_alias.c.

References apr_tolower, buf, end, request_rec::filename, HUGE_STRING_LEN, last, NULL, p, request_rec::pool, start, and vhost_alias_checkspace().

Referenced by mva_translate().

Here is the call graph for this function:

static const char* vhost_alias_set cmd_parms cmd,
void *  dummy,
const char *  map
[static]
 

Definition at line 120 of file mod_vhost_alias.c.

References ap_get_module_config, apr_isdigit, mva_sconf_t::cgi_root, mva_sconf_t::cgi_root_mode, conf, mva_sconf_t::doc_root, mva_sconf_t::doc_root_mode, mode, NULL, p, strcasecmp(), VHOST_ALIAS_IP, vhost_alias_module, VHOST_ALIAS_NAME, VHOST_ALIAS_NONE, vhost_alias_set_cgi_root_ip, vhost_alias_set_cgi_root_name, vhost_alias_set_doc_root_ip, and vhost_alias_set_doc_root_name.

Here is the call graph for this function:


Variable Documentation

const command_rec mva_commands[] [static]
 

Initial value:

{
    AP_INIT_TAKE1("VirtualScriptAlias", vhost_alias_set, 
                  &vhost_alias_set_cgi_root_name, RSRC_CONF, 
                  "how to create a ScriptAlias based on the host"),
    AP_INIT_TAKE1("VirtualDocumentRoot", vhost_alias_set, 
                  &vhost_alias_set_doc_root_name, RSRC_CONF, 
                  "how to create the DocumentRoot based on the host"),
    AP_INIT_TAKE1("VirtualScriptAliasIP", vhost_alias_set, 
                  &vhost_alias_set_cgi_root_ip, RSRC_CONF, 
                  "how to create a ScriptAlias based on the host"),
    AP_INIT_TAKE1("VirtualDocumentRootIP", vhost_alias_set, 
                  &vhost_alias_set_doc_root_ip, RSRC_CONF, 
                  "how to create the DocumentRoot based on the host"),
    { NULL }
}

Definition at line 215 of file mod_vhost_alias.c.

module AP_MODULE_DECLARE_DATA vhost_alias_module
 

Initial value:

Definition at line 447 of file mod_vhost_alias.c.

Referenced by mva_translate(), and vhost_alias_set().

int vhost_alias_set_cgi_root_ip [static]
 

Definition at line 115 of file mod_vhost_alias.c.

Referenced by vhost_alias_set().

int vhost_alias_set_cgi_root_name [static]
 

Definition at line 115 of file mod_vhost_alias.c.

Referenced by vhost_alias_set().

int vhost_alias_set_doc_root_ip [static]
 

Definition at line 115 of file mod_vhost_alias.c.

Referenced by vhost_alias_set().

int vhost_alias_set_doc_root_name [static]
 

Definition at line 115 of file mod_vhost_alias.c.

Referenced by vhost_alias_set().