Apache HTTPD
Classes | Macros | Functions | Variables
mod_imagemap.c File Reference
#include "apr.h"
#include "apr_strings.h"
#include "apr_lib.h"
#include "apr_want.h"
#include "ap_config.h"
#include "httpd.h"
#include "http_config.h"
#include "http_request.h"
#include "http_core.h"
#include "http_protocol.h"
#include "http_main.h"
#include "http_log.h"
#include "util_script.h"
#include "mod_core.h"

Go to the source code of this file.

Classes

struct  imap_conf_rec
 

Macros

#define APR_WANT_STDIO   /* for sscanf() */
 
#define APR_WANT_STRFUNC
 
#define IMAP_MAGIC_TYPE   "application/x-httpd-imap"
 
#define MAXVERTS   100
 
#define X   0
 
#define Y   1
 
#define IMAP_MENU_DEFAULT   "formatted"
 
#define IMAP_DEFAULT_DEFAULT   "nocontent"
 
#define IMAP_BASE_DEFAULT   "map"
 
#define fmin(a, b)   (((a)>(b))?(b):(a))
 
#define fmax(a, b)   (((a)>(b))?(a):(b))
 

Functions

static void * create_imap_dir_config (apr_pool_t *p, char *dummy)
 
static void * merge_imap_dir_configs (apr_pool_t *p, void *basev, void *addv)
 
static int pointinrect (const double point[2], double coords[100][2])
 
static int pointincircle (const double point[2], double coords[100][2])
 
static int pointinpoly (const double point[2], double pgon[100][2])
 
static int is_closer (const double point[2], double coords[100][2], double *closest)
 
static double get_x_coord (const char *args)
 
static double get_y_coord (const char *args)
 
static void read_quoted (char **string, char **quoted_part)
 
static const charimap_url (request_rec *r, const char *base, const char *value)
 
static int imap_reply (request_rec *r, const char *redirect)
 
static void menu_header (request_rec *r, char *menu)
 
static void menu_blank (request_rec *r, char *menu)
 
static void menu_comment (request_rec *r, char *menu, char *comment)
 
static void menu_default (request_rec *r, const char *menu, const char *href, const char *text)
 
static void menu_directive (request_rec *r, const char *menu, const char *href, const char *text)
 
static void menu_footer (request_rec *r)
 
static int imap_handler_internal (request_rec *r)
 
static int imap_handler (request_rec *r)
 
static void register_hooks (apr_pool_t *p)
 

Variables

static const command_rec imap_cmds []
 
static int *const aplog_module_index = &( imagemap_module.module_index)
 

Macro Definition Documentation

◆ APR_WANT_STDIO

#define APR_WANT_STDIO   /* for sscanf() */

Definition at line 57 of file mod_imagemap.c.

◆ APR_WANT_STRFUNC

#define APR_WANT_STRFUNC

Definition at line 58 of file mod_imagemap.c.

◆ fmax

#define fmax (   a,
  b 
)    (((a)>(b))?(a):(b))

Definition at line 172 of file mod_imagemap.c.

◆ fmin

#define fmin (   a,
  b 
)    (((a)>(b))?(b):(a))

Definition at line 171 of file mod_imagemap.c.

◆ IMAP_BASE_DEFAULT

#define IMAP_BASE_DEFAULT   "map"

Definition at line 80 of file mod_imagemap.c.

◆ IMAP_DEFAULT_DEFAULT

#define IMAP_DEFAULT_DEFAULT   "nocontent"

Definition at line 79 of file mod_imagemap.c.

◆ IMAP_MAGIC_TYPE

#define IMAP_MAGIC_TYPE   "application/x-httpd-imap"

Definition at line 73 of file mod_imagemap.c.

◆ IMAP_MENU_DEFAULT

#define IMAP_MENU_DEFAULT   "formatted"

Definition at line 78 of file mod_imagemap.c.

◆ MAXVERTS

#define MAXVERTS   100

Definition at line 74 of file mod_imagemap.c.

◆ X

#define X   0

Definition at line 75 of file mod_imagemap.c.

◆ Y

#define Y   1

Definition at line 76 of file mod_imagemap.c.

Function Documentation

◆ create_imap_dir_config()

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

Definition at line 90 of file mod_imagemap.c.

◆ get_x_coord()

static double get_x_coord ( const char args)
static

Definition at line 225 of file mod_imagemap.c.

◆ get_y_coord()

static double get_y_coord ( const char args)
static

Definition at line 249 of file mod_imagemap.c.

◆ imap_handler()

static int imap_handler ( request_rec r)
static

RFC 2616: HTTP

< Module declines to handle

Definition at line 868 of file mod_imagemap.c.

◆ imap_handler_internal()

static int imap_handler_internal ( request_rec r)
static

< Module has handled this stage.

< Module has handled this stage.

Definition at line 571 of file mod_imagemap.c.

◆ imap_reply()

static int imap_reply ( request_rec r,
const char redirect 
)
static

Definition at line 458 of file mod_imagemap.c.

◆ imap_url()

static const char * imap_url ( request_rec r,
const char base,
const char value 
)
static

Definition at line 319 of file mod_imagemap.c.

◆ is_closer()

static int is_closer ( const double  point[2],
double  coords[100][2],
double closest 
)
static

Definition at line 203 of file mod_imagemap.c.

◆ menu_blank()

static void menu_blank ( request_rec r,
char menu 
)
static

Definition at line 491 of file mod_imagemap.c.

◆ menu_comment()

static void menu_comment ( request_rec r,
char menu,
char comment 
)
static

Definition at line 504 of file mod_imagemap.c.

◆ menu_default()

static void menu_default ( request_rec r,
const char menu,
const char href,
const char text 
)
static

Definition at line 518 of file mod_imagemap.c.

◆ menu_directive()

static void menu_directive ( request_rec r,
const char menu,
const char href,
const char text 
)
static

Definition at line 542 of file mod_imagemap.c.

◆ menu_footer()

static void menu_footer ( request_rec r)
static

Definition at line 566 of file mod_imagemap.c.

◆ menu_header()

static void menu_header ( request_rec r,
char menu 
)
static

Definition at line 476 of file mod_imagemap.c.

◆ merge_imap_dir_configs()

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

Definition at line 102 of file mod_imagemap.c.

◆ pointincircle()

static int pointincircle ( const double  point[2],
double  coords[100][2] 
)
static

Definition at line 158 of file mod_imagemap.c.

◆ pointinpoly()

static int pointinpoly ( const double  point[2],
double  pgon[100][2] 
)
static

Definition at line 174 of file mod_imagemap.c.

◆ pointinrect()

static int pointinrect ( const double  point[2],
double  coords[100][2] 
)
static

Definition at line 133 of file mod_imagemap.c.

◆ read_quoted()

static void read_quoted ( char **  string,
char **  quoted_part 
)
static

Definition at line 290 of file mod_imagemap.c.

◆ register_hooks()

static void register_hooks ( apr_pool_t p)
static

Definition at line 883 of file mod_imagemap.c.

Variable Documentation

◆ aplog_module_index

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

Definition at line 888 of file mod_imagemap.c.

◆ imap_cmds

const command_rec imap_cmds[]
static
Initial value:
=
{
{ "ImapMenu" , ap_set_string_slot , (void *)((long) (((char *) (&((( imap_conf_rec * )NULL)-> imap_menu ))) - ((char *) NULL))) , 16 , TAKE1, "the type of menu generated: none, formatted, semiformatted, " "unformatted" },
{ "ImapDefault" , ap_set_string_slot , (void *)((long) (((char *) (&((( imap_conf_rec * )NULL)-> imap_default ))) - ((char *) NULL))) , 16 , TAKE1, "the action taken if no match: error, nocontent, referer, " "menu, URL" },
{ "ImapBase" , ap_set_string_slot , (void *)((long) (((char *) (&((( imap_conf_rec * )NULL)-> imap_base ))) - ((char *) NULL))) , 16 , TAKE1, "the base for all URL's: map, referer, URL (or start of)" },
{NULL}
}
const char * ap_set_string_slot(cmd_parms *cmd, void *struct_ptr, const char *arg)
Definition config.c:1469
@ TAKE1
Definition http_config.h:51
return NULL
Definition mod_so.c:359

Definition at line 117 of file mod_imagemap.c.