Apache HTTPD
Classes | Macros | Typedefs | Functions | Variables
mod_mime.c File Reference
#include "apr.h"
#include "apr_strings.h"
#include "apr_lib.h"
#include "apr_hash.h"
#include "apr_want.h"
#include "ap_config.h"
#include "httpd.h"
#include "http_config.h"
#include "http_log.h"
#include "http_request.h"
#include "http_protocol.h"

Go to the source code of this file.

Classes

struct  attrib_info
 
struct  extension_info
 
struct  mime_dir_config
 
struct  param_s
 
struct  content_type
 

Macros

#define APR_WANT_STRFUNC
 
#define MULTIMATCH_UNSET   0
 
#define MULTIMATCH_ANY   1
 
#define MULTIMATCH_NEGOTIATED   2
 
#define MULTIMATCH_HANDLERS   4
 
#define MULTIMATCH_FILTERS   8
 

Typedefs

typedef struct attrib_info attrib_info
 
typedef struct extension_info extension_info
 
typedef struct param_s param
 

Functions

static void * create_mime_dir_config (apr_pool_t *p, char *dummy)
 
static void * overlay_extension_mappings (apr_pool_t *p, const void *key, apr_ssize_t klen, const void *overlay_val, const void *base_val, const void *data)
 
static void remove_items (apr_pool_t *p, apr_array_header_t *remove, apr_hash_t *mappings)
 
static void * merge_mime_dir_configs (apr_pool_t *p, void *basev, void *addv)
 
static const charadd_extension_info (cmd_parms *cmd, void *m_, const char *value_, const char *ext)
 
static const charremove_extension_type (cmd_parms *cmd, void *m_, const char *ext)
 
static const charremove_extension_info (cmd_parms *cmd, void *m_, const char *ext)
 
static const charset_types_config (cmd_parms *cmd, void *dummy, const char *arg)
 
static const charmultiviews_match (cmd_parms *cmd, void *m_, const char *include)
 
static int mime_post_config (apr_pool_t *p, apr_pool_t *plog, apr_pool_t *ptemp, server_rec *s)
 
static const charzap_sp (const char *s)
 
static charzap_sp_and_dup (apr_pool_t *p, const char *start, const char *end, apr_size_t *len)
 
static int is_token (char c)
 
static int is_qtext (char c)
 
static int is_quoted_pair (const char *s)
 
static content_typeanalyze_ct (request_rec *r, const char *s)
 
static int find_ct (request_rec *r)
 
static void register_hooks (apr_pool_t *p)
 

Variables

static char tspecial []
 
static const command_rec mime_cmds []
 
static apr_hash_tmime_type_extensions
 
static int *const aplog_module_index = &( mime_module.module_index)
 

Macro Definition Documentation

◆ APR_WANT_STRFUNC

#define APR_WANT_STRFUNC

Definition at line 29 of file mod_mime.c.

◆ MULTIMATCH_ANY

#define MULTIMATCH_ANY   1

Definition at line 72 of file mod_mime.c.

◆ MULTIMATCH_FILTERS

#define MULTIMATCH_FILTERS   8

Definition at line 75 of file mod_mime.c.

◆ MULTIMATCH_HANDLERS

#define MULTIMATCH_HANDLERS   4

Definition at line 74 of file mod_mime.c.

◆ MULTIMATCH_NEGOTIATED

#define MULTIMATCH_NEGOTIATED   2

Definition at line 73 of file mod_mime.c.

◆ MULTIMATCH_UNSET

#define MULTIMATCH_UNSET   0

Definition at line 71 of file mod_mime.c.

Typedef Documentation

◆ attrib_info

◆ extension_info

◆ param

Function Documentation

◆ add_extension_info()

static const char * add_extension_info ( cmd_parms cmd,
void *  m_,
const char value_,
const char ext 
)
static

Definition at line 245 of file mod_mime.c.

◆ analyze_ct()

static content_type * analyze_ct ( request_rec r,
const char s 
)
static

Definition at line 540 of file mod_mime.c.

◆ create_mime_dir_config()

static void * create_mime_dir_config ( apr_pool_t p,
char dummy 
)
static

Definition at line 118 of file mod_mime.c.

◆ find_ct()

static int find_ct ( request_rec r)
static

< Module has handled this stage.

< Module declines to handle

< Reverse proxy

< No proxy

< Module declines to handle

< Module has handled this stage.

Definition at line 753 of file mod_mime.c.

◆ is_qtext()

static int is_qtext ( char  c)
static

Definition at line 517 of file mod_mime.c.

◆ is_quoted_pair()

static int is_quoted_pair ( const char s)
static

Definition at line 526 of file mod_mime.c.

◆ is_token()

static int is_token ( char  c)
static

Definition at line 508 of file mod_mime.c.

◆ merge_mime_dir_configs()

static void * merge_mime_dir_configs ( apr_pool_t p,
void *  basev,
void *  addv 
)
static

Definition at line 194 of file mod_mime.c.

◆ mime_post_config()

static int mime_post_config ( apr_pool_t p,
apr_pool_t plog,
apr_pool_t ptemp,
server_rec s 
)
static

< Module has handled this stage.

Definition at line 429 of file mod_mime.c.

◆ multiviews_match()

static const char * multiviews_match ( cmd_parms cmd,
void *  m_,
const char include 
)
static

< Forbidden in <Location>

Definition at line 321 of file mod_mime.c.

◆ overlay_extension_mappings()

static void * overlay_extension_mappings ( apr_pool_t p,
const void *  key,
apr_ssize_t  klen,
const void *  overlay_val,
const void *  base_val,
const void *  data 
)
static

Definition at line 136 of file mod_mime.c.

◆ register_hooks()

static void register_hooks ( apr_pool_t p)
static

Definition at line 1017 of file mod_mime.c.

◆ remove_extension_info()

static const char * remove_extension_info ( cmd_parms cmd,
void *  m_,
const char ext 
)
static

Definition at line 291 of file mod_mime.c.

◆ remove_extension_type()

static const char * remove_extension_type ( cmd_parms cmd,
void *  m_,
const char ext 
)
static

Definition at line 280 of file mod_mime.c.

◆ remove_items()

static void remove_items ( apr_pool_t p,
apr_array_header_t remove,
apr_hash_t mappings 
)
static

Definition at line 174 of file mod_mime.c.

◆ set_types_config()

static const char * set_types_config ( cmd_parms cmd,
void *  dummy,
const char arg 
)
static

Definition at line 313 of file mod_mime.c.

◆ zap_sp()

static const char * zap_sp ( const char s)
static

Definition at line 477 of file mod_mime.c.

◆ zap_sp_and_dup()

static char * zap_sp_and_dup ( apr_pool_t p,
const char start,
const char end,
apr_size_t len 
)
static

Definition at line 493 of file mod_mime.c.

Variable Documentation

◆ aplog_module_index

int* const aplog_module_index = &( mime_module.module_index)
static

Definition at line 1029 of file mod_mime.c.

◆ mime_cmds

const command_rec mime_cmds[]
static

Definition at line 367 of file mod_mime.c.

◆ mime_type_extensions

apr_hash_t* mime_type_extensions
static

Definition at line 427 of file mod_mime.c.

◆ tspecial

char tspecial[]
static
Initial value:
= {
'(', ')', '<', '>', '@', ',', ';', ':',
'\\', '"', '/', '[', ']', '?', '=',
'\0'
}

Definition at line 110 of file mod_mime.c.