fred-mod-whoisd-3.12.1
Data Structures | Macros | Variables
mod_whoisd.c File Reference

Module implementing whois service. More...

#include "httpd.h"
#include "http_log.h"
#include "http_config.h"
#include "http_connection.h"
#include "apr.h"
#include "apr_buckets.h"
#include "apr_file_io.h"
#include "apr_general.h"
#include "apr_lib.h"
#include "apr_pools.h"
#include "apr_strings.h"
#include "apr_time.h"
#include "apr_hash.h"
#include "apr_getopt.h"
#include "apr_want.h"
#include "scoreboard.h"
#include "util_filter.h"
#include "whois-client.h"
Include dependency graph for mod_whoisd.c:

Data Structures

struct  whoisd_server_conf
 Configuration structure of whoisd module. More...
 

Macros

#define CORE_PRIVATE
 
#define APR_FOPEN_READ   APR_READ
 
#define APR_WANT_STRFUNC
 
#define client_ip(r)   ((r)->remote_ip)
 
#define ap_unixd_set_global_mutex_perms   unixd_set_global_mutex_perms
 
#define DEFAULT_DISCLAIMER   "Domain Information over Whois protocol\n"
 This default disclaimer should never be used in production release. More...
 
#define INT_ERROR_MSG   "Internal error occured when processing your \request.\nPlease try again later.\n"
 Message displayed bellow disclaimer when query cannot be answered becauseof an error.
 
#define MAXARGS   20
 Maximal number of whois arguments. More...
 
#define MAXTYPELEN   15
 Maximal length of object type identifier. More...
 
#define MAXAXELEN   15
 Maximal length of search axe identifier. More...
 
#define MAXQPARLEN   15
 Maximal length of -q parameter. More...
 
#define MIN_WHOIS_REQUEST_LENGTH   1
 Minimal length of input line. More...
 
#define MAX_WHOIS_REQUEST_LENGTH   1000
 Maximal length of input line. More...
 
#define ap_log_cerror(mark, level, status, c, ...)   ap_log_error(mark, level, status, (c)->base_server, __VA_ARGS__)
 This is wrapper function for compatibility reason. More...
 
#define IS_SEARCH_SET(wr)   ((wr)->axe || (wr)->norecursion || (wr)->type)
 checks if there is any kind of search set in the query
 
#define SAFE_PRINTF(fmt, str)   if (str != NULL) apr_brigade_printf(bb, NULL, NULL, fmt, str);
 
#define SAFE_PRINTF(fmt, str)   if (str != NULL) apr_brigade_printf(bb, NULL, NULL, fmt, str);
 
#define SAFE_PRINTF(fmt, str)   if (str != NULL) apr_brigade_printf(bb, NULL, NULL, fmt, str);
 
#define SAFE_PRINTF(fmt, str)   if (str != NULL) apr_brigade_printf(bb, NULL, NULL, fmt, str);
 
#define SAFE_PRINTF(fmt, str)   if (str != NULL) apr_brigade_printf(bb, NULL, NULL, fmt, str);
 

Variables

module AP_MODULE_DECLARE_DATA whoisd_module
 Whois module declaration. More...
 

Detailed Description

Module implementing whois service.

Whois daemon accepts requests containing object name and returns information about that object. The only object, which this server serves information about, is currently a domain.

The module serves only as a proxy, translating whois requests to CORBA requests and back. CORBA functionality is implemented in whois-client.c.

Macro Definition Documentation

◆ ap_log_cerror

#define ap_log_cerror (   mark,
  level,
  status,
  c,
  ... 
)    ap_log_error(mark, level, status, (c)->base_server, __VA_ARGS__)

This is wrapper function for compatibility reason.

Apache 2.0 does not have ap_log_cerror, instead we will use ap_log_error.

◆ DEFAULT_DISCLAIMER

#define DEFAULT_DISCLAIMER   "Domain Information over Whois protocol\n"

This default disclaimer should never be used in production release.

◆ MAX_WHOIS_REQUEST_LENGTH

#define MAX_WHOIS_REQUEST_LENGTH   1000

Maximal length of input line.

◆ MAXARGS

#define MAXARGS   20

Maximal number of whois arguments.

◆ MAXAXELEN

#define MAXAXELEN   15

Maximal length of search axe identifier.

◆ MAXQPARLEN

#define MAXQPARLEN   15

Maximal length of -q parameter.

◆ MAXTYPELEN

#define MAXTYPELEN   15

Maximal length of object type identifier.

◆ MIN_WHOIS_REQUEST_LENGTH

#define MIN_WHOIS_REQUEST_LENGTH   1

Minimal length of input line.

Variable Documentation

◆ whoisd_module

module AP_MODULE_DECLARE_DATA whoisd_module

Whois module declaration.