Riferimenti per il file ircd.c

#include "stdinc.h"
#include "s_user.h"
#include "tools.h"
#include "ircd.h"
#include "channel.h"
#include "channel_mode.h"
#include "client.h"
#include "common.h"
#include "event.h"
#include "fdlist.h"
#include "hash.h"
#include "irc_string.h"
#include "sprintf_irc.h"
#include "ircd_signal.h"
#include "list.h"
#include "s_gline.h"
#include "motd.h"
#include "ircd_handler.h"
#include "msg.h"
#include "hostmask.h"
#include "numeric.h"
#include "packet.h"
#include "parse.h"
#include "irc_res.h"
#include "restart.h"
#include "s_auth.h"
#include "s_bsd.h"
#include "s_conf.h"
#include "s_log.h"
#include "s_misc.h"
#include "s_serv.h"
#include "s_stats.h"
#include "send.h"
#include "whowas.h"
#include "modules.h"
#include "memory.h"
#include "hook.h"
#include "ircd_getopt.h"
#include "balloc.h"
#include "supported.h"

Vai al codice sorgente di questo file.


static unsigned long get_vm_top (void)
static void print_startup (int pid)
static void make_daemon (void)
unsigned long get_maxrss (void)
void set_time (void)
static void io_loop (void)
static void initialize_global_set_options (void)
static void initialize_message_files (void)
static void initialize_server_capabs (void)
static void write_pidfile (const char *filename)
static void check_pidfile (const char *filename)
static void setup_corefile (void)
static void init_ssl (void)
static void init_callbacks (void)
int main (int argc, char *argv[])


struct SetOptions GlobalSetOptions
struct config_file_entry ConfigFileEntry
struct server_info ServerInfo
struct admin_info AdminInfo = { NULL, NULL, NULL }
struct Counter Count = { 0, 0, 0, 0, 0, 0, 0, 0 }
struct ServerState_t server_state = { 0 }
struct logging_entry ConfigLoggingEntry = { 1, {0}, {0}, {0}, {0}, {0}, {0}, {0}, {0} }
struct timeval SystemTime
struct Client me
struct LocalUser meLocalUser
unsigned long connect_id = 0
static unsigned long initialVMTop = 0
const char * logFileName = LPATH
const char * pidFileName = PPATH
char ** myargv
char ircd_platform [PLATFORMLEN]
int dorehash = 0
int doremotd = 0
time_t nextconnect = 1
int default_server_capabs = 0
int splitmode
int splitchecking
int split_users
unsigned int split_servers
int rehashed_klines = 0
static int printVersion = 0
struct lgetopt myopts []

Documentazione delle funzioni

static void check_pidfile ( const char *  filename  )  [static]

Definizione alla linea 433 del file ircd.c.

Riferimenti fbclose(), fbgets(), e fbopen().

Referenziato da main().

unsigned long get_maxrss ( void   ) 

Definizione alla linea 183 del file ircd.c.

Riferimenti get_vm_top(), e initialVMTop.

Referenziato da count_memory().

static unsigned long get_vm_top ( void   )  [static]

Definizione alla linea 130 del file ircd.c.

Referenziato da get_maxrss(), e main().

static void init_callbacks ( void   )  [static]

Definizione alla linea 530 del file ircd.c.

Riferimenti iorecv_cb, iorecv_default(), iorecvctrl_cb, iosend_cb, iosend_default(), iosendctrl_cb, e register_callback().

Referenziato da main().

static void init_ssl ( void   )  [static]

Definizione alla linea 499 del file ircd.c.

Riferimenti bio_spare_fd, server_info::ctx, ilog(), L_CRIT, save_spare_fd(), e ServerInfo.

Referenziato da main().

static void initialize_global_set_options ( void   )  [static]

static void initialize_message_files ( void   )  [static]

static void initialize_server_capabs ( void   )  [static]

Definizione alla linea 380 del file ircd.c.

Riferimenti add_capability(), CAP_CLUSTER, CAP_EOB, CAP_HOPS, CAP_LL, CAP_QS, CAP_TS6, CAP_ZIP, ServerInfo, e server_info::sid.

Referenziato da main().

static void io_loop ( void   )  [static]

int main ( int  argc,
char *  argv[] 

Definizione alla linea 539 del file ircd.c.

Riferimenti assemble_umode_buffer(), check_can_use_v6(), check_class(), check_pidfile(), check_splitmode(), cleanup_glines(), CLEANUP_GLINES_TIME, cleanup_tklines(), CLEANUP_TKLINES_TIME, clear_tree_parse(), close_standard_fds(), collect_zipstats(), comm_checktimeouts(), config_file_entry::configfile, ConfigFileEntry, ConfigServerHide, CPATH, config_file_entry::cresvfile, CRESVPATH, CurrentTime, dbuf_init(), server_info::description, config_file_entry::dlinefile, dlinkAdd(), DLPATH, DPATH, config_file_entry::dpath, eventAddIsh(), eventInit(), fd_table::fd, fdlist_init(), Client::firsttime, ServerState_t::foreground, Client::from, get_ircd_platform(), get_vm_top(), config_file_entry::glinefile, global_client_list, global_serv_list, GPATH, hash_add_client(), Client::id, ilog(), Client::info, init_auth(), init_callbacks(), init_channels(), init_chcap_usage_counts(), init_class(), init_client(), init_comm(), init_dlink_nodes(), init_hash(), init_host_hash(), init_ip_hash_table(), init_log(), init_resolver(), init_ssl(), init_stats(), init_uid(), init_whowas(), initBlockHeap(), initialize_global_set_options(), initialize_message_files(), initialize_server_capabs(), initialVMTop, initServerMask(), io_loop(), ircd_platform, ircd_version, config_file_entry::klinefile, KPATH, L_CRIT, L_NOTICE, Client::lasttime, config_server_hide::links_delay, config_server_hide::links_disabled, load_all_modules(), load_conf_modules(), load_core_modules(), Client::localClient, logFileName, make_daemon(), make_dlink_node(), make_server(), me, meLocalUser, MODPATH, myargv, Client::name, server_info::name, Client::node, config_file_entry::nresvfile, NRESVPATH, parseargs(), pidFileName, print_startup(), printVersion, read_conf_files(), config_file_entry::rklinefile, RKPATH, config_file_entry::rxlinefile, RXPATH, ServerInfo, Client::servptr, set_time(), SetMe, setup_corefile(), setup_signals(), Client::since, splitmode, STARTUP_CONNECTIONS_TIME, strlcpy(), SystemTime, try_connections(), usage(), write_links_file(), write_pidfile(), config_file_entry::xlinefile, XPATH, e ZIPSTATS_TIME.

static void make_daemon ( void   )  [static]

Definizione alla linea 160 del file ircd.c.

Riferimenti print_startup().

Referenziato da main().

static void print_startup ( int  pid  )  [static]

Definizione alla linea 151 del file ircd.c.

Riferimenti ConfigFileEntry, config_file_entry::dpath, ServerState_t::foreground, e ircd_version.

Referenziato da main(), e make_daemon().

void set_time ( void   ) 

static void setup_corefile ( void   )  [static]

Definizione alla linea 478 del file ircd.c.

Referenziato da main().

static void write_pidfile ( const char *  filename  )  [static]

Definizione alla linea 401 del file ircd.c.

Riferimenti fbclose(), fbopen(), fbputs(), ilog(), ircsprintf(), e L_ERROR.

Referenziato da main().

Documentazione delle variabili

struct admin_info AdminInfo = { NULL, NULL, NULL }

Definizione alla linea 79 del file ircd.c.

Referenziato da clear_out_old_conf(), do_admin(), e set_default_conf().

Definizione alla linea 75 del file ircd.c.

Referenziato da add_connection(), ban_them(), build_target_list(), can_send(), change_local_nick(), check_conf_klines(), clear_out_old_conf(), conf_connect_allowed(), confopts(), cryptlink_serv(), do_links(), do_ltrace(), do_motd(), do_sgline(), do_whois(), exit_client(), expire_tklines(), failed_challenge_notice(), failed_oper_notice(), find_chasing(), fork_server(), garbage_collect_ip_entries(), get_client_name(), get_conf_name(), get_randomness(), handle_special(), initialize_global_set_options(), initialize_message_files(), io_loop(), m_accept(), m_admin(), m_away(), m_challenge(), m_help(), m_info(), m_join(), m_links(), m_list(), m_lusers(), m_map(), m_mkpasswd(), m_motd(), m_nick(), m_omotd(), m_ping(), m_quit(), m_stats(), m_time(), m_users(), m_version(), m_whois(), m_whowas(), main(), mo_gline(), mo_kill(), mo_links(), mo_motd(), mo_oper(), mo_rehash(), mo_spoof(), mo_ungline(), mr_admin(), mr_motd(), mr_pong(), mr_server(), ms_join(), ms_kill(), ms_sjoin(), ms_svinfo(), msg_client(), oper_up(), parse_client_queued(), parse_resv(), part_one_client(), print_startup(), read_conf_files(), read_packet(), register_local_user(), remove_one_ip(), report_auth(), report_this_status(), send_capabilities(), server_estab(), set_default_conf(), set_local_gline(), set_user_mode(), start_auth(), start_io(), stats_auth(), stats_exempt(), stats_gdeny(), stats_glines(), stats_klines(), stats_oper(), stats_pending_glines(), stats_ports(), stats_tklines(), stats_uptime(), user_welcome(), valid_username(), valid_wild_card(), valid_wild_card_simple(), valid_xline(), validate_conf(), verify_access(), who_global(), whois_person(), e write_links_file().

struct logging_entry ConfigLoggingEntry = { 1, {0}, {0}, {0}, {0}, {0}, {0}, {0}, {0} }

Definizione alla linea 82 del file ircd.c.

Referenziato da ilog(), log_oper_action(), log_user_exit(), rehash(), e set_default_conf().

unsigned long connect_id = 0

Definizione alla linea 86 del file ircd.c.

Referenziato da add_connection().

struct Counter Count = { 0, 0, 0, 0, 0, 0, 0, 0 }

Definizione alla linea 102 del file ircd.c.

Referenziato da add_capability(), delete_capability(), e send_capabilities().

int dorehash = 0

Definizione alla linea 95 del file ircd.c.

Referenziato da hybrid_wndproc(), io_loop(), e sighup_handler().

int doremotd = 0

Definizione alla linea 96 del file ircd.c.

Referenziato da hybrid_wndproc(), io_loop(), e sigusr1_handler().

unsigned long initialVMTop = 0 [static]

Definizione alla linea 88 del file ircd.c.

Referenziato da get_maxrss(), e main().

char ircd_platform[PLATFORMLEN]

Definizione alla linea 93 del file ircd.c.

Referenziato da main(), e send_conf_options().

const char* logFileName = LPATH

Definizione alla linea 89 del file ircd.c.

Referenziato da main(), e rehash().

struct Client me

Definizione alla linea 84 del file ircd.c.

Referenziato da add_id(), already_placed_kline(), already_placed_rkline(), already_placed_rxline(), apply_tdline(), apply_tkline(), apply_trkline(), attach_iline(), ban_them(), block_heap_report_stats(), build_nicklist(), build_target_list(), burst_all(), burst_channel(), cap_req(), change_local_nick(), channel_member_names(), check_clean_host(), check_clean_nick(), check_clean_user(), check_client(), check_conf_klines(), check_pings_list(), check_unknowns_list(), check_xline(), chm_ban(), chm_except(), chm_invex(), chm_key(), chm_limit(), chm_nosuch(), chm_op(), chm_simple(), chm_voice(), cjoin_all(), client_dopacket(), count_memory(), dead_link_on_read(), deliver_services_msg(), do_actual_trace(), do_admin(), do_ctrace(), do_etrace(), do_ison(), do_links(), do_list(), do_local_user(), do_ltrace(), do_numeric(), do_who(), do_whois(), dohelp(), dump_map(), exit_aborted_clients(), exit_client(), fd_dump(), find_chasing(), find_user_host(), flood_attack_channel(), flood_attack_client(), flush_write(), free_client(), get_listener_name(), h_set_user_mode(), handle_command(), handle_special(), hunt_server(), init_uid(), kh_relay_kill(), kill_client(), kill_client_ll_serv_butone(), list_accepts(), list_one_channel(), list_quote_commands(), m_accept(), m_admin(), m_away(), m_cap(), m_challenge(), m_flags(), m_help(), m_identify(), m_info(), m_invite(), m_join(), m_kick(), m_knock(), m_links(), m_list(), m_locops(), m_ltrace(), m_lusers(), m_map(), m_message(), m_mkpasswd(), m_mode(), m_motd(), m_names(), m_nick(), m_not_oper(), m_oper(), m_part(), m_ping(), m_registered(), m_stats(), m_test(), m_time(), m_topic(), m_trace(), m_unregistered(), m_userhost(), m_users(), m_version(), m_who(), m_whois(), m_whowas(), main(), make_listener(), me_kline(), me_rkline(), me_unkline(), me_unrkline(), mo_away(), mo_capture(), mo_chghost(), mo_chgident(), mo_chgname(), mo_classlist(), mo_clearchan(), mo_close(), mo_connect(), mo_ctrace(), mo_delspoof(), mo_die(), mo_dline(), mo_flags(), mo_forcejoin(), mo_forcepart(), mo_gline(), mo_hash(), mo_jupe(), mo_kill(), mo_killhost(), mo_kline(), mo_ltrace(), mo_map(), mo_mkpasswd(), mo_modlist(), mo_modload(), mo_modreload(), mo_modrestart(), mo_modunload(), mo_ojoin(), mo_oper(), mo_operspy(), mo_operwall(), mo_opme(), mo_rehash(), mo_restart(), mo_resv(), mo_rkline(), mo_rxline(), mo_set(), mo_spoof(), mo_squit(), mo_stats(), mo_svsnick(), mo_test(), mo_testgecos(), mo_testline(), mo_testmask(), mo_time(), mo_trace(), mo_uncapture(), mo_undline(), mo_ungline(), mo_unkline(), mo_unresv(), mo_unrkline(), mo_unrxline(), mo_unxline(), mo_users(), mo_version(), mo_wallops(), mo_whois(), mo_whowas(), mo_xline(), mr_admin(), mr_nick(), mr_pass(), mr_pong(), mr_server(), mr_test(), mr_user(), ms_cburst(), ms_connect(), ms_encap(), ms_join(), ms_kill(), ms_lljoin(), ms_llnick(), ms_locops(), ms_nburst(), ms_nick(), ms_ping(), ms_pong(), ms_resv(), ms_rxline(), ms_server(), ms_sid(), ms_sjoin(), ms_squit(), ms_tburst(), ms_test(), ms_tmode(), ms_topic(), ms_uid(), ms_unresv(), ms_unrxline(), ms_unxline(), ms_version(), msg_channel(), msg_client(), my_name_for_link(), names_non_public_non_secret(), oper_up(), operspy_list(), operspy_mode(), operspy_names(), operspy_topic(), operspy_who(), operspy_whois(), parse(), parse_aline(), parse_knock_local(), parse_resv(), part_one_client(), perform_nick_collides(), quote_autoconnall(), quote_floodcount(), quote_identtimeout(), quote_idletime(), quote_jfloodcount(), quote_jfloodtime(), quote_log(), quote_max(), quote_msglocale(), quote_rejecttime(), quote_spamnum(), quote_spamtime(), quote_splitmode(), quote_splitnum(), quote_splitusers(), rebuild_isupport_message_line(), recurse_report_messages(), register_local_user(), register_remote_user(), rehash(), relay_kill(), relay_xline(), remove_a_mode(), remove_conf_line(), remove_dependents(), remove_resv(), remove_unknown(), remove_xline(), report_and_set_user_flags(), report_auth(), report_confitem_types(), report_dns_servers(), report_Klines(), report_resv(), report_this_status(), safe_list_channels(), send_birthdate_online_time(), send_caplist(), send_conf_options(), send_info_text(), send_knock(), send_members(), send_message(), send_message_file(), send_message_remote(), send_mode_changes(), send_mode_list(), send_queued_write(), send_tb(), send_usage(), sendhelpfile(), sendto_realops_flags(), serv_connect(), serv_connect_callback(), server_burst(), server_die(), server_estab(), set_autoconn(), set_time(), set_topic(), set_user_mode(), set_vhost(), show_events(), show_lusers(), show_notice(), show_ports(), slink_error(), stats_hooks(), stats_servlinks(), stats_uptime(), tstats(), user_welcome(), valid_comment(), valid_wild_card(), valid_xline(), verify_access(), who_global(), whois_person(), whowas_do(), write_conf_line(), write_links_file(), write_rxline(), e write_xline().

Definizione alla linea 85 del file ircd.c.

Referenziato da main().

char** myargv

Definizione alla linea 92 del file ircd.c.

Referenziato da main(), e server_die().

struct lgetopt myopts[]

Valore iniziale:

  {"dlinefile",  &ConfigFileEntry.dlinefile, 
   STRING, "File to use for dline.conf"},
  {"configfile", &ConfigFileEntry.configfile, 
   STRING, "File to use for ircd.conf"},
  {"klinefile",  &ConfigFileEntry.klinefile, 
   STRING, "File to use for kline.conf"},
  {"xlinefile",  &ConfigFileEntry.xlinefile, 
   STRING, "File to use for xline.conf"},
  {"logfile",    &logFileName, 
   STRING, "File to use for ircd.log"},
  {"pidfile",    &pidFileName,
   STRING, "File to use for process ID"},
  {"foreground", &server_state.foreground, 
   YESNO, "Run in foreground (don't detach)"},
  {"version",    &printVersion, 
   YESNO, "Print version and exit"},
  {"help", NULL, USAGE, "Print this text"},

Definizione alla linea 194 del file ircd.c.

Referenziato da usage().

time_t nextconnect = 1

Definizione alla linea 97 del file ircd.c.

Referenziato da close_connection().

const char* pidFileName = PPATH

Definizione alla linea 90 del file ircd.c.

Referenziato da main(), e server_die().

int printVersion = 0 [static]

Definizione alla linea 192 del file ircd.c.

Referenziato da main().

int rehashed_klines = 0

struct ServerState_t server_state = { 0 }

Definizione alla linea 81 del file ircd.c.

Referenziato da sigint_handler().

unsigned int split_servers

Definizione alla linea 111 del file ircd.c.

Referenziato da check_splitmode(), initialize_global_set_options(), e quote_splitnum().

Definizione alla linea 110 del file ircd.c.

Referenziato da check_splitmode(), initialize_global_set_options(), e quote_splitusers().

int splitmode

struct timeval SystemTime

Definizione alla linea 83 del file ircd.c.

Referenziato da main(), e set_time().

Generato il Wed Apr 15 00:19:21 2009 per ircd-hybrid da  doxygen 1.5.6