mod_proxy
[Apache Modules]


モジュール

 AJP definitions
 AJP API functions

データ構造

struct  proxy_remote
struct  proxy_alias
struct  dirconn_entry
struct  noproxy_entry
struct  proxy_server_conf
struct  proxy_dir_conf
struct  proxy_req_conf
struct  proxy_conn_rec
struct  proxy_completion
struct  proxy_conn_pool
struct  proxy_worker_stat
struct  proxy_worker
struct  proxy_balancer
struct  proxy_balancer_method

マクロ定義

#define CORE_PRIVATE
#define APR_WANT_STRFUNC
#define CRLF   "\015\012"
#define DEFAULT_MAX_FORWARDS   -1
#define PROXYPASS_NOCANON   0x01
#define PROXYPASS_INTERPOLATE   0x02
#define PROXY_WORKER_INITIALIZED   0x0001
#define PROXY_WORKER_IGNORE_ERRORS   0x0002
#define PROXY_WORKER_IN_SHUTDOWN   0x0010
#define PROXY_WORKER_DISABLED   0x0020
#define PROXY_WORKER_STOPPED   0x0040
#define PROXY_WORKER_IN_ERROR   0x0080
#define PROXY_WORKER_HOT_STANDBY   0x0100
#define PROXY_WORKER_NOT_USABLE_BITMAP
#define PROXY_WORKER_IS_INITIALIZED(f)
#define PROXY_WORKER_IS_STANDBY(f)
#define PROXY_WORKER_IS_USABLE(f)
#define PROXY_WORKER_DEFAULT_RETRY   60
#define PROXY_WORKER_MAX_ROUTE_SIZ   63
#define PROXY_FLUSH_WAIT   10000
#define PROXY_THREAD_LOCK(x)   apr_thread_mutex_lock((x)->mutex)
#define PROXY_THREAD_UNLOCK(x)   apr_thread_mutex_unlock((x)->mutex)
#define PROXY_DECLARE(type)   type
#define PROXY_DECLARE_NONSTD(type)   type
#define PROXY_DECLARE_DATA
#define PROXY_OPTIONAL_HOOK(name, fn, pre, succ, order)   APR_OPTIONAL_HOOK(proxy,name,fn,pre,succ,order)
#define PROXY_HAS_SCOREBOARD   0
#define PROXY_LBMETHOD   "proxylbmethod"
#define PROXY_DYNAMIC_BALANCER_LIMIT   16

型定義

typedef proxy_balancer proxy_balancer
typedef proxy_worker proxy_worker
typedef proxy_conn_pool proxy_conn_pool
typedef proxy_balancer_method proxy_balancer_method
typedef const char *(*) ap_proxy_header_reverse_map_fn (request_rec *, proxy_dir_conf *, const char *)

列挙型

enum  enctype {
  enc_path, enc_search, enc_user, enc_fpath,
  enc_parm
}

関数

 APR_DECLARE_EXTERNAL_HOOK (proxy, PROXY, int, scheme_handler,(request_rec *r, proxy_worker *worker, proxy_server_conf *conf, char *url, const char *proxyhost, apr_port_t proxyport)) APR_DECLARE_EXTERNAL_HOOK(proxy
request_rec char *url APR_DECLARE_EXTERNAL_HOOK (proxy, PROXY, int, create_req,(request_rec *r, request_rec *pr)) APR_DECLARE_EXTERNAL_HOOK(proxy
request_rec char *url request_rec
*r 
APR_DECLARE_EXTERNAL_HOOK (proxy, PROXY, int, pre_request,(proxy_worker **worker, proxy_balancer **balancer, request_rec *r, proxy_server_conf *conf, char **url)) APR_DECLARE_EXTERNAL_HOOK(proxy
request_rec char *url request_rec
*r proxy_worker proxy_balancer
request_rec proxy_server_conf
*conf 
APR_DECLARE_EXTERNAL_HOOK (proxy, PROXY, int, request_status,(int *status, request_rec *r)) PROXY_DECLARE(request_rec *) ap_proxy_make_fake_req(conn_rec *c
 PROXY_DECLARE (int) ap_proxy_hex2c(const char *x)
 PROXY_DECLARE (void) ap_proxy_c2hex(int ch
 PROXY_DECLARE (char *) ap_proxy_canonenc(apr_pool_t *p
 PROXY_DECLARE (const char *) ap_proxy_date_canon(apr_pool_t *p
 PROXY_DECLARE (proxy_worker *) ap_proxy_get_worker(apr_pool_t *p
 PROXY_DECLARE (proxy_balancer *) ap_proxy_get_balancer(apr_pool_t *p
int ap_proxy_lb_workers (void)

変数

 PROXY
 int
 canon_handler
request_recr
request_rec char *url PROXY
request_rec char *url int
request_rec char *url fixups
request_rec char *url request_rec
*r 
PROXY
request_rec char *url request_rec
*r 
int
request_rec char *url request_rec
*r 
post_request
request_rec char *url request_rec
*r proxy_worker * 
worker
request_rec char *url request_rec
*r proxy_worker proxy_balancer * 
balancer
request_rec char *url request_rec
*r proxy_worker proxy_balancer
request_rec
r
request_rec char *url request_rec
*r proxy_worker proxy_balancer
request_rec proxy_server_conf
*conf request_rec
r
char * x
const char * x
const char int len
const char int enum enctype
t int forcedec int 
proxyreq
char **const urlp
char **const char ** userp
char **const char char ** passwordp
char **const char char char ** hostp
char **const char char char
apr_port_t
port
const char * x
const char * val
const char * list
const char const char * val
char * y
int statuscode
int const char * message
apr_pool_tp
apr_pool_tp
apr_pool_tp
apr_pool_tp
proxy_server_conf * conf
proxy_server_conf apr_sockaddr_turi_addr
request_recr
apr_bucket_brigadebb
apr_bucket_brigade char * buff
apr_bucket_brigade char size_t bufflen
apr_bucket_brigade char size_t
int * 
eos
apr_table_tt
apr_table_t char * key
const char apr_sockaddr_t
const char proxy_server_conf
server_rec apr_pool_t *request_rec
r
server_recs
server_rec conn_recc
server_rec conn_rec request_recr
server_rec conn_rec request_rec
const char * 
var
proxy_dir_conf * conf
proxy_dir_conf const char * url
proxy_dir_conf * conf
proxy_dir_conf const char * str
proxy_server_conf * conf
proxy_server_conf const char * url
apr_pool_tp
apr_pool_t proxy_server_conf * conf
apr_pool_t proxy_server_conf
const char * 
url
proxy_worker * worker
proxy_worker server_recs
server_recs
proxy_server_conf * conf
proxy_server_conf const char * url
apr_pool_tp
apr_pool_t proxy_server_conf * conf
apr_pool_t proxy_server_conf
const char * 
url
proxy_balancer * balancer
proxy_balancer proxy_worker * worker
proxy_balancer ** balancer
proxy_balancer request_recr
proxy_balancer request_rec
proxy_server_conf * 
conf
proxy_balancer request_rec
proxy_server_conf char ** 
url
proxy_balancer * balancer
proxy_balancer request_recr
proxy_balancer request_rec
proxy_server_conf * 
conf
request_recr
request_recr
request_rec proxy_server_conf * conf
request_rec proxy_server_conf
proxy_worker * 
worker
request_rec proxy_server_conf
proxy_worker proxy_conn_rec * 
conn
request_rec proxy_server_conf
proxy_worker proxy_conn_rec
apr_uri_t
uri
request_rec proxy_server_conf
proxy_worker proxy_conn_rec
apr_uri_t char ** 
url
request_rec proxy_server_conf
proxy_worker proxy_conn_rec
apr_uri_t char const char * 
proxyname
request_rec proxy_server_conf
proxy_worker proxy_conn_rec
apr_uri_t char const char
apr_port_t 
proxyport
request_rec proxy_server_conf
proxy_worker proxy_conn_rec
apr_uri_t char const char
apr_port_t char * 
server_portstr
request_rec proxy_server_conf
proxy_worker proxy_conn_rec
apr_uri_t char const char
apr_port_t char int 
server_portstr_size
proxy_worker * worker
proxy_worker server_recs
proxy_conn_rec ** conn
proxy_conn_rec proxy_worker * worker
proxy_conn_rec proxy_worker
server_rec
s
proxy_conn_rec * conn
proxy_conn_rec server_recs
proxy_conn_rec * conn
proxy_conn_rec proxy_worker * worker
proxy_conn_rec proxy_worker
server_rec
s
proxy_conn_rec * conn
proxy_conn_rec conn_recc
proxy_conn_rec conn_rec server_recs
apr_bucket_brigadebrigade
module PROXY_DECLARE_DATA proxy_module
int PROXY_DECLARE_DATA proxy_lb_workers

マクロ定義

#define PROXY_OPTIONAL_HOOK ( name,
fn,
pre,
succ,
order   )     APR_OPTIONAL_HOOK(proxy,name,fn,pre,succ,order)

Hook an optional proxy hook. Unlike static hooks, this uses a macro instead of a function.

#define PROXY_WORKER_IS_INITIALIZED (  ) 

値:

( (f)->s && \
  ( (f)->s->status &  PROXY_WORKER_INITIALIZED ) )

#define PROXY_WORKER_IS_STANDBY (  ) 

値:

( (f)->s && \
  ( (f)->s->status &  PROXY_WORKER_HOT_STANDBY ) )

#define PROXY_WORKER_IS_USABLE (  ) 

値:

( (f)->s && \
  ( !( (f)->s->status & PROXY_WORKER_NOT_USABLE_BITMAP) ) && \
  PROXY_WORKER_IS_INITIALIZED(f) )

#define PROXY_WORKER_NOT_USABLE_BITMAP

値:

( PROXY_WORKER_IN_SHUTDOWN | \
PROXY_WORKER_DISABLED | PROXY_WORKER_STOPPED | PROXY_WORKER_IN_ERROR )


関数

int ap_proxy_lb_workers ( void   ) 

Calculate number of maximum number of workers in scoreboard.

戻り値:
number of workers to allocate in the scoreboard

request_rec char* url request_rec* r proxy_worker proxy_balancer request_rec proxy_server_conf* conf APR_DECLARE_EXTERNAL_HOOK ( proxy  ,
PROXY  ,
int  ,
request_status  ,
(int *status, request_rec *r)   
)

request status hook It is called after all proxy processing has been done. This gives other modules a chance to create default content on failure, for example

request_rec char* url request_rec* r APR_DECLARE_EXTERNAL_HOOK ( proxy  ,
PROXY  ,
int  ,
pre_request  ,
(proxy_worker **worker,proxy_balancer **balancer,request_rec *r,proxy_server_conf *conf, char **url)   
)

post request hook. It is called after request for updating runtime balancer status.

PROXY_DECLARE ( proxy_balancer *   ) 

Get the balancer from proxy configuration

引数:
p memory pool used for finding balancer
conf current proxy server configuration
url url to find the worker from. Has to have balancer:// prefix
戻り値:
proxy_balancer or NULL if not found

PROXY_DECLARE ( proxy_worker *   ) 

Get the worker from proxy configuration

引数:
p memory pool used for finding worker
conf current proxy server configuration
url url to find the worker from
戻り値:
proxy_worker or NULL if not found

PROXY_DECLARE ( const char *   ) 

Add the worker to proxy configuration

引数:
worker the new worker
p memory pool to allocate worker from
conf current proxy server configuration
url url containing worker name
戻り値:
error message or NULL if successfull

PROXY_DECLARE ( void   ) 

Initize the worker's shared data

引数:
conf current proxy server configuration
worker worker to initialize
s current server record
worker worker to initialize

PROXY_DECLARE ( apr_status_t   ) 

Make a connection record for backend connection

引数:
proxy_function calling proxy scheme (http, ajp, ...)
conn acquired connection
c client connection record
s current server record
戻り値:
OK or HTTP_XXX error


Apacheに対してSun Jul 19 22:05:29 2009に生成されました。  doxygen 1.4.7