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

mod_logio.c File Reference

#include "apr_strings.h"
#include "apr_lib.h"
#include "apr_hash.h"
#include "apr_optional.h"
#include "apr_want.h"
#include "ap_config.h"
#include "mod_log_config.h"
#include "httpd.h"
#include "http_core.h"
#include "http_config.h"
#include "http_connection.h"
#include "http_protocol.h"

Include dependency graph for mod_logio.c:

Go to the source code of this file.

Defines

#define APR_WANT_STRFUNC

Typedefs

typedef logio_config_t logio_config_t

Functions

static void ap_logio_add_bytes_out (conn_rec *c, apr_off_t bytes)
static const char * log_bytes_in (request_rec *r, char *a)
static const char * log_bytes_out (request_rec *r, char *a)
static int logio_transaction (request_rec *r)
static apr_status_t logio_in_filter (ap_filter_t *f, apr_bucket_brigade *bb, ap_input_mode_t mode, apr_read_type_e block, apr_off_t readbytes)
static apr_status_t logio_out_filter (ap_filter_t *f, apr_bucket_brigade *bb)
static int logio_pre_conn (conn_rec *c, void *csd)
static int logio_pre_config (apr_pool_t *p, apr_pool_t *plog, apr_pool_t *ptemp)
static void register_hooks (apr_pool_t *p)

Variables

module AP_MODULE_DECLARE_DATA logio_module
static const char logio_filter_name [] = "LOG_INPUT_OUTPUT"


Define Documentation

#define APR_WANT_STRFUNC
 

Definition at line 34 of file mod_logio.c.


Typedef Documentation

typedef struct logio_config_t logio_config_t
 


Function Documentation

static void ap_logio_add_bytes_out conn_rec c,
apr_off_t  bytes
[static]
 

Definition at line 62 of file mod_logio.c.

References ap_get_module_config, logio_config_t::bytes_out, conn_rec::conn_config, and logio_module.

static const char* log_bytes_in request_rec r,
char *  a
[static]
 

Definition at line 72 of file mod_logio.c.

References ap_get_module_config, logio_config_t::bytes_in, conn_rec::conn_config, request_rec::connection, logio_module, and request_rec::pool.

Referenced by logio_pre_config().

static const char* log_bytes_out request_rec r,
char *  a
[static]
 

Definition at line 80 of file mod_logio.c.

References ap_get_module_config, logio_config_t::bytes_out, conn_rec::conn_config, request_rec::connection, logio_module, and request_rec::pool.

Referenced by logio_pre_config().

static apr_status_t logio_in_filter ap_filter_t f,
apr_bucket_brigade bb,
ap_input_mode_t  mode,
apr_read_type_e  block,
apr_off_t  readbytes
[static]
 

Definition at line 106 of file mod_logio.c.

References ap_get_module_config, logio_config_t::bytes_in, ap_filter_t::c, conn_rec::conn_config, length, logio_module, ap_filter_t::next, and status.

Referenced by register_hooks().

static apr_status_t logio_out_filter ap_filter_t f,
apr_bucket_brigade bb
[static]
 

Definition at line 125 of file mod_logio.c.

References APR_BRIGADE_LAST, APR_BUCKET_INSERT_BEFORE, APR_BUCKET_IS_EOS, b, conn_rec::bucket_alloc, ap_filter_t::c, and ap_filter_t::next.

Referenced by register_hooks().

static int logio_pre_config apr_pool_t p,
apr_pool_t plog,
apr_pool_t ptemp
[static]
 

Definition at line 153 of file mod_logio.c.

References ap_register_log_handler(), APR_OPTIONAL_FN_TYPE, APR_RETRIEVE_OPTIONAL_FN, log_bytes_in(), log_bytes_out(), and OK.

Referenced by register_hooks().

Here is the call graph for this function:

static int logio_pre_conn conn_rec c,
void *  csd
[static]
 

Definition at line 142 of file mod_logio.c.

References ap_set_module_config, apr_pcalloc, conn_rec::conn_config, logio_filter_name, logio_module, NULL, OK, and conn_rec::pool.

Referenced by register_hooks().

static int logio_transaction request_rec r  )  [static]
 

Definition at line 92 of file mod_logio.c.

References ap_get_module_config, logio_config_t::bytes_in, logio_config_t::bytes_out, conn_rec::conn_config, request_rec::connection, logio_module, and OK.

Referenced by register_hooks().

static void register_hooks apr_pool_t p  )  [static]
 

Definition at line 167 of file mod_logio.c.

References AP_FTYPE_NETWORK, ap_logio_add_bytes_out, APR_HOOK_MIDDLE, APR_HOOK_REALLY_FIRST, APR_REGISTER_OPTIONAL_FN, logio_filter_name, logio_in_filter(), logio_out_filter(), logio_pre_config(), logio_pre_conn(), logio_transaction(), and NULL.

Here is the call graph for this function:


Variable Documentation

const char logio_filter_name[] = "LOG_INPUT_OUTPUT" [static]
 

Definition at line 47 of file mod_logio.c.

Referenced by logio_pre_conn(), and register_hooks().

module AP_MODULE_DECLARE_DATA logio_module
 

Initial value:

{
    STANDARD20_MODULE_STUFF,
    NULL,                       
    NULL,                       
    NULL,                       
    NULL,                       
    NULL,                       
    register_hooks              
}

Definition at line 183 of file mod_logio.c.

Referenced by ap_logio_add_bytes_out(), log_bytes_in(), log_bytes_out(), logio_in_filter(), logio_pre_conn(), and logio_transaction().