$Revision: 1.63 $
Protocol whois module (pw). Whois protocol.
Status: NOT REVUED, TESTED
Used in: | PW_init() |
PW_record_query_end() | |
PW_record_query_start() | |
PW_startqueries() | |
PW_stopqueries() |
Prototyped in: | /home/shane/release/RIP/include/protocol_whois.h | |
Calls: | TH_init_read_write_lockw() | |
References Variables: | queries_lock | pw/protocol_whois.c |
void PW_interact Main loop for interaction with a single client. The function sets up the accounting for the client, invokes parsing, execution, logging and accounting of the query.void PW_interact ( int sock )
Prototyped in: | /home/shane/release/RIP/include/protocol_whois.h | |
Calls: | AC_acc_addup() | ac/access_control.c |
AC_check_acl() | ac/access_control.c | |
AC_commit() | ac/access_control.c | |
AC_credit_isdenied() | ac/access_control.c | |
CO_get_whois_suspended() | co/constants.c | |
ER_dbg_va() | er/er.c | |
ER_inf_va() | er/er.c | |
PW_process_qc() | pw/protocol_whois.c | |
ca_get_int() | ca/ca_configFns.c | |
ca_get_string() | ca/ca_configFns.c | |
pw_log_query() | pw/protocol_whois.c | |
QC_create(), QC_environ_free(), QC_environ_new(), QC_free(), SK_cd_free(), SK_cd_gets(), SK_cd_make(), SK_cd_puts(), SK_getpeername(), TA_increment(), TA_setactivity(), TA_setcondat(), UT_free_real(), UT_timeget(), memcmp(), memset(), ut_string_chop() | ||
Called by: | show_whois() | pc/pc_commands.c |
References Variables: | IP_ADDR_UNSPEC | ip/ip.c |
void PW_process_qc processes the query commands determined in QC, This is where all the real action of the query part is invoked.void PW_process_qc ( Query_environ* qe, Query_command* qc, acc_st* acc_credit, acl_st* acl_eip )
Calls: | AC_credit_isdenied() | ac/access_control.c |
DF_get_class_template() | df/defs.c | |
DF_get_class_template_v() | df/defs.c | |
NOERR() | er/er.c | |
PM_get_nrtm_sources() | pm/pm_serials.c | |
PW_record_query_end() | pw/protocol_whois.c | |
PW_record_query_start() | pw/protocol_whois.c | |
ca_get_dirlist() | ca/ca_configFns.c | |
ca_get_string() | ca/ca_configFns.c | |
display_file() | pw/protocol_whois.c | |
QI_execute(), QI_free(), QI_new(), SK_cd_puts(), UT_free_real(), fprintf(), g_list_first(), g_string_free() | ||
Called by: | PW_interact() | pw/protocol_whois.c |
Prototyped in: | /home/shane/release/RIP/include/protocol_whois.h | |
Calls: | TH_release_read_lockw() | |
Called by: | PM_get_minmax_serial() | pm/pm_serials.c |
PM_get_serial_object() | pm/pm_serials.c | |
PW_process_qc() | pw/protocol_whois.c | |
References Variables: | queries_lock | pw/protocol_whois.c |
Prototyped in: | /home/shane/release/RIP/include/protocol_whois.h | |
Calls: | TH_acquire_read_lockw() | |
Called by: | PM_get_minmax_serial() | pm/pm_serials.c |
PM_get_serial_object() | pm/pm_serials.c | |
PW_process_qc() | pw/protocol_whois.c | |
References Variables: | queries_lock | pw/protocol_whois.c |
Prototyped in: | /home/shane/release/RIP/include/protocol_whois.h | |
Calls: | TH_release_write_lockw() | |
Called by: | set_queries() | pc/pc_commands.c |
References Variables: | queries_lock | pw/protocol_whois.c |
Prototyped in: | /home/shane/release/RIP/include/protocol_whois.h | |
Calls: | TH_acquire_write_lockw() | |
Called by: | set_queries() | pc/pc_commands.c |
References Variables: | queries_lock | pw/protocol_whois.c |
Included from: | /usr/include/time.h | |
Calls: | __posix_asctime_r() |
Included from: | /usr/include/time.h | |
Calls: | __posix_ctime_r() |
void display_file opens a file and displays its contents to the connection described in conn. structure.static void display_file ( sk_conn_st* condat, char* filename )
Calls: | ER_perror() | er/er.c |
SK_cd_puts(), UT_free_real(), UT_malloc_real(), ___errno(), fdwrap_fclose(), fileno(), fopen(), fprintf(), fread(), fstat(), strerror() | ||
Called by: | PW_process_qc() | pw/protocol_whois.c |
Included from: | /usr/include/unistd.h | |
Calls: | __posix_getlogin_r() |
static void pw_log_query logs the query to a file after it has finished. Takes many parameters to have access to as much information as possible, including the original query, accounting, response time, status of the client connection, etc.static void pw_log_query ( Query_environ* qe, Query_command* qc, acc_st* copy_credit, ut_timer_t begintime, ut_timer_t endtime, char* hostaddress, char* input )
Calls: | AC_credit_to_string() | ac/access_control.c |
ER_inf_va() | er/er.c | |
QC_get_qrytype(), UT_free_real(), UT_timediff() | ||
Called by: | PW_interact() | pw/protocol_whois.c |
Included from: | /usr/include/dirent.h | |
Calls: | __posix_readdir_r() |
Included from: | /usr/include/signal.h | |
Calls: | __posix_sigwait() |
Included from: | /usr/include/unistd.h | |
Calls: | __posix_ttyname_r() |