diff --git a/src/h.h b/src/h.h index 4e8cabb..ce8f159 100644 --- a/src/h.h +++ b/src/h.h @@ -1,7 +1,7 @@ /* EnergyMech, IRC bot software - Copyright (c) 1997-2020 proton + Copyright (c) 1997-2024 proton This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by @@ -110,110 +110,111 @@ /* alias.c */ -LS void afmt(char *, const char *, const char *) __page(CORE_SEG); -LS void do_alias(COMMAND_ARGS) __page(CMD1_SEG); -LS void do_unalias(COMMAND_ARGS) __page(CMD1_SEG); +LS void afmt(char *, const char *, const char *) __page(CORE_SEG); +LS void do_alias(COMMAND_ARGS) __page(CMD1_SEG); +LS void do_unalias(COMMAND_ARGS) __page(CMD1_SEG); /* auth.c */ -LS char *cipher(char *); -LS char *makepass(char *); -LS int passmatch(char *, char *); -LS void delete_auth(char *); -LS void remove_auth(Auth *); -LS void change_authnick(char *, char *); -LS void aucheck(User *); -LS User *get_authuser(const char *, const char *) __page(CORE_SEG); -LS int get_authaccess(const char *, const char *) __page(CORE_SEG); -LS int make_auth(const char *, const User *); -LS void do_auth(COMMAND_ARGS) __page(CMD1_SEG); +LS char *cipher(char *) __page(CMD1_SEG); +LS char *makepass(char *) __page(CMD1_SEG); +LS int passmatch(char *, char *) __page(CMD1_SEG); +LS void delete_auth(char *) __page(CMD1_SEG); +LS void remove_auth(Auth *) __page(CMD1_SEG); +LS void change_authnick(char *, char *) __page(CORE_SEG); +LS void aucheck(User *) __page(CORE_SEG); +LS User *get_authuser(const char *, const char *) __page(CORE_SEG); +LS int get_authaccess(const char *, const char *) __page(CORE_SEG); +LS int make_auth(const char *, const User *) __page(CMD1_SEG); +LS void do_auth(COMMAND_ARGS) __page(CMD1_SEG); /* bounce.c */ void bounce_parse(ircLink *, char *); void bounce_cleanup(void); void new_port_bounce(const struct Setting *); -void select_bounce(void); -void process_bounce(void); +void select_bounce(void) __page(CORE_SEG); +void process_bounce(void) __page(CORE_SEG); /* calc.c */ -LS void do_convert(COMMAND_ARGS) __page(CMD1_SEG); +LS void do_convert(COMMAND_ARGS) __page(CMD1_SEG); +LS void do_calc(COMMAND_ARGS) __page(CMD1_SEG); /* channel.c */ void check_idlekick(void); -LS Chan *find_channel(const char *, int) __attr(CORE_SEG, __regparm(2)); -LS Chan *find_channel_ac(const char *) __attr(CORE_SEG, __regparm(1)); -LS Chan *find_channel_ny(const char *) __attr(CORE_SEG, __regparm(1)); -void remove_chan(Chan *); -void join_channel(char *, char *); -void reverse_topic(Chan *, char *, char *); -void cycle_channel(Chan *); -int reverse_mode(char *, Chan *, int, int); -void chan_modestr(Chan *, char *); -char *find_nuh(char *); +LS Chan *find_channel(const char *, int) __attr(CORE_SEG, __regparm(2)); +LS Chan *find_channel_ac(const char *) __attr(CORE_SEG, __regparm(1)); +LS Chan *find_channel_ny(const char *) __attr(CORE_SEG, __regparm(1)); +void remove_chan(Chan *) __page(CMD1_SEG); +void join_channel(char *, char *) __page(CFG1_SEG); +void reverse_topic(Chan *, char *, char *) __page(CORE_SEG); +void cycle_channel(Chan *) __page(CMD1_SEG); +int reverse_mode(char *, Chan *, int, int) __page(CORE_SEG); +void chan_modestr(Chan *, char *) __page(CORE_SEG); +char *find_nuh(char *) __page(CORE_SEG); Ban *make_ban(Ban **, char *, char *, time_t); void delete_ban(Chan *, char *); void delete_modemask(Chan *, char *, int); void channel_massmode(const Chan *, char *, int, char, char); void channel_massunban(Chan *, char *, time_t); -LS ChanUser *find_chanuser(Chan *, const char *); -LS ChanUser *find_chanbot(Chan *, const char *); -LS void remove_chanuser(Chan *, const char *); -LS void make_chanuser(char *, char *); -LS void purge_chanusers(Chan *); -LS char *get_nuh(const ChanUser *); -LS void do_join(COMMAND_ARGS) __page(CMD1_SEG); -LS void do_part(COMMAND_ARGS) __page(CMD1_SEG); -LS void do_cycle(COMMAND_ARGS) __page(CMD1_SEG); -LS void do_forget(COMMAND_ARGS) __page(CMD1_SEG); -LS void do_channels(COMMAND_ARGS) __page(CMD1_SEG); -LS void do_wall(COMMAND_ARGS) __page(CMD1_SEG); -LS void do_mode(COMMAND_ARGS) __page(CMD1_SEG); -LS void do_names(COMMAND_ARGS) __page(CMD1_SEG); -LS void do_cchan(COMMAND_ARGS) __page(CMD1_SEG); -LS void do_invite(COMMAND_ARGS) __page(CMD1_SEG); -LS void do_sayme(COMMAND_ARGS) __page(CMD1_SEG); -LS void do_who(COMMAND_ARGS) __page(CMD1_SEG); -LS void do_topic(COMMAND_ARGS) __page(CMD1_SEG); -LS void do_showidle(COMMAND_ARGS) __page(CMD1_SEG); -LS void do_idle(COMMAND_ARGS) __page(CMD1_SEG); +LS ChanUser *find_chanuser(Chan *, const char *) __page(CORE_SEG); +LS ChanUser *find_chanbot(Chan *, const char *) __page(CORE_SEG); +LS void remove_chanuser(Chan *, const char *) __page(CORE_SEG); +LS void make_chanuser(char *, char *) __page(CORE_SEG); +LS void purge_chanusers(Chan *) __page(CMD1_SEG); +LS char *get_nuh(const ChanUser *) __page(CORE_SEG); +LS void do_join(COMMAND_ARGS) __page(CMD1_SEG); +LS void do_part(COMMAND_ARGS) __page(CMD1_SEG); +LS void do_cycle(COMMAND_ARGS) __page(CMD1_SEG); +LS void do_forget(COMMAND_ARGS) __page(CMD1_SEG); +LS void do_channels(COMMAND_ARGS) __page(CMD1_SEG); +LS void do_wall(COMMAND_ARGS) __page(CMD1_SEG); +LS void do_mode(COMMAND_ARGS) __page(CMD1_SEG); +LS void do_names(COMMAND_ARGS) __page(CMD1_SEG); +LS void do_cchan(COMMAND_ARGS) __page(CMD1_SEG); +LS void do_invite(COMMAND_ARGS) __page(CMD1_SEG); +LS void do_sayme(COMMAND_ARGS) __page(CMD1_SEG); +LS void do_who(COMMAND_ARGS) __page(CMD1_SEG); +LS void do_topic(COMMAND_ARGS) __page(CMD1_SEG); +LS void do_showidle(COMMAND_ARGS) __page(CMD1_SEG); +LS void do_idle(COMMAND_ARGS) __page(CMD1_SEG); /* core.c */ void unlink_identfile(void); -int conf_callback(char *line); -void readcfgfile(void); -int write_session(void); -void setbotnick(Mech *bot, char *nick); -Mech *add_bot(int guid, char *nick); -void signoff(char *from, char *reason); +int conf_callback(char *line) __page(CFG1_SEG); +void readcfgfile(void) __page(CFG1_SEG); +int write_session(void) __page(CORE_SEG); +void setbotnick(Mech *bot, char *nick) __page(CFG1_SEG); +Mech *add_bot(int guid, char *nick) __page(CFG1_SEG); +void signoff(char *from, char *reason) __page(RARE_SEG); void kill_all_bots(char *reason) __attr(RARE_SEG, __noreturn__);; -Server *add_server(char *host, int port, char *pass); +Server *add_server(char *host, int port, char *pass) __page(CFG1_SEG); ServerGroup *getservergroup(const char *name); ServerGroup *getservergroupid(int id); -Server *find_server(int id); -int try_server(Server *sp, char *hostname); -void connect_to_server(void); -void register_with_server(void); -int sub_compile_timer(int, uint32_t *, uint32_t *, char *); -int compile_timer(HookTimer *, char *); -void update(SequenceTime *this); -void process_server_input(void); -void do_version(COMMAND_ARGS) __page(CMD1_SEG); -void do_core(COMMAND_ARGS) __page(CMD1_SEG); -void do_die(COMMAND_ARGS) __page(RARE_SEG); -void do_shutdown(COMMAND_ARGS) __page(RARE_SEG); -void do_servergroup(COMMAND_ARGS) __page(CMD1_SEG); -void do_server(COMMAND_ARGS) __page(CMD1_SEG); -void do_cserv(COMMAND_ARGS) __page(CMD1_SEG); -void do_away(COMMAND_ARGS) __page(CMD1_SEG); -void do_do(COMMAND_ARGS) __page(CMD1_SEG); -void do_nick(COMMAND_ARGS) __page(CMD1_SEG); -void do_time(COMMAND_ARGS) __page(CMD1_SEG); -void do_upontime(COMMAND_ARGS) __page(CMD1_SEG); -void do_msg(COMMAND_ARGS) __page(CMD1_SEG); +Server *find_server(int id) __page(CORE_SEG); +int try_server(Server *sp, char *hostname) __page(CORE_SEG); +void connect_to_server(void) __page(CORE_SEG); +void register_with_server(void) __page(CORE_SEG); +int sub_compile_timer(int, uint32_t *, uint32_t *, char *) __page(CFG1_SEG); +int compile_timer(HookTimer *, char *) __page(CFG1_SEG); +void update(SequenceTime *this) __page(CORE_SEG); +void process_server_input(void) __page(CORE_SEG); +void do_version(COMMAND_ARGS) __page(CMD1_SEG); +void do_core(COMMAND_ARGS) __page(CMD1_SEG); +void do_die(COMMAND_ARGS) __page(RARE_SEG); +void do_shutdown(COMMAND_ARGS) __page(RARE_SEG); +void do_servergroup(COMMAND_ARGS) __page(CMD1_SEG); +void do_server(COMMAND_ARGS) __page(CMD1_SEG); +void do_cserv(COMMAND_ARGS) __page(CMD1_SEG); +void do_away(COMMAND_ARGS) __page(CMD1_SEG); +void do_do(COMMAND_ARGS) __page(CMD1_SEG); +void do_nick(COMMAND_ARGS) __page(CMD1_SEG); +void do_time(COMMAND_ARGS) __page(CMD1_SEG); +void do_upontime(COMMAND_ARGS) __page(CMD1_SEG); +void do_msg(COMMAND_ARGS) __page(CMD1_SEG); /* ctcp.c */ @@ -223,14 +224,14 @@ int dcc_sendfile(char *target, char *filename); void dcc_pushfile(Client *client, off_t where); int dcc_freeslots(int uaccess); void parse_dcc(Client *client); -void process_dcc(void); -void ctcp_dcc(char *from, char *to, char *rest); -void ctcp_finger(char *from, char *to, char *rest); -void ctcp_ping(char *from, char *to, char *rest); -void ctcp_version(char *from, char *to, char *rest); -void on_ctcp(char *from, char *to, char *rest); -void do_ping_ctcp(COMMAND_ARGS) __page(CMD1_SEG); -void do_send(COMMAND_ARGS) __page(CMD1_SEG); +void process_dcc(void) __page(CORE_SEG); +void ctcp_dcc(char *from, char *to, char *rest) __page(CORE_SEG); +void ctcp_finger(char *from, char *to, char *rest) __page(CORE_SEG); +void ctcp_ping(char *from, char *to, char *rest) __page(CORE_SEG); +void ctcp_version(char *from, char *to, char *rest) __page(CORE_SEG); +void on_ctcp(char *from, char *to, char *rest) __page(CORE_SEG); +void do_ping_ctcp(COMMAND_ARGS) __page(CMD1_SEG); +void do_send(COMMAND_ARGS) __page(CMD1_SEG); /* debug.c */ @@ -252,93 +253,93 @@ char *uint32tobin(int limit, uint32_t x); void debug_scripthook(void); void run_debug(void); int wrap_debug(void); -void do_debug(COMMAND_ARGS) __page(CMD1_SEG); -void do_crash(COMMAND_ARGS) __page(RARE_SEG); -void debug(char *format, ...); +void do_debug(COMMAND_ARGS) __page(CMD1_SEG); +void do_crash(COMMAND_ARGS) __page(RARE_SEG); +void debug(char *format, ...) __page(CORE_SEG); /* dns.c */ -void init_rawdns(void); +void init_rawdns(void) __page(CFG1_SEG); struct in_addr dnsroot_lookup(const char *hostname); const char *get_dns_token(const char *src, const char *packet, char *dst, int sz); int make_query(char *packet, const char *hostname); struct in_addr *get_stored_ip(const char *ipdata); void dns_hook(char *host, char * resolved); void parse_query(int psz, dnsQuery *query); -void rawdns(const char *hostname); -void select_rawdns(void); -void process_rawdns(void); -char *poll_rawdns(char *hostname); -int read_dnsroot(char *line); +void rawdns(const char *hostname) __page(CORE_SEG); +void select_rawdns(void) __page(CORE_SEG); +void process_rawdns(void) __page(CORE_SEG); +char *poll_rawdns(char *hostname) __page(CORE_SEG); +int read_dnsroot(char *line) __page(CFG1_SEG); uint32_t rawdns_get_ip(const char *host); -void do_dnsroot(COMMAND_ARGS) __page(CMD1_SEG); -void do_dnsserver(COMMAND_ARGS) __page(CMD1_SEG); -void do_dns(COMMAND_ARGS) __page(CMD1_SEG); +void do_dnsroot(COMMAND_ARGS) __page(CMD1_SEG); +void do_dnsserver(COMMAND_ARGS) __page(CMD1_SEG); +void do_dns(COMMAND_ARGS) __page(CMD1_SEG); /* dynamode.c */ /* function.c */ -LS void *Calloc(int) __attr(CORE_SEG, __regparm(1)); -LS void Free(char **) __attr(CORE_SEG, __regparm(1)); -LS Strp *make_strp(Strp **, const char *) __attr(CORE_SEG, __regparm(2)); -LS Strp *append_strp(Strp **, const char *) __attr(CORE_SEG, __regparm(2)); -LS Strp *prepend_strp(Strp **, const char *) __attr(CORE_SEG, __regparm(2)); -LS void purge_linklist(void **) __attr(CORE_SEG, __regparm(1)); -LS void dupe_strp(Strp *, Strp **) __attr(CORE_SEG, __regparm(2)); -LS const int StrlenX(const char *, ...) __attr(CORE_SEG, __regparm(1)); -LS const int Strlen2(const char *, const char *) __attr(CORE_SEG, __regparm(2)); -LS char *getuh(char *) __page(CORE_SEG); -LS char *get_token(char **, const char *) __page(CORE_SEG); -LS char *logtime(time_t) __page(CORE_SEG); -LS char *time2str(time_t) __page(CORE_SEG); -LS char *time2away(time_t) __page(CORE_SEG); -LS char *time2medium(time_t) __page(CORE_SEG); -LS char *time2small(time_t) __page(CORE_SEG); -LS char *idle2str(time_t, int) __page(CORE_SEG); -LS const char *get_channel(const char *, char **) __page(CORE_SEG); -LS const char *get_channel2(const char *, char **) __page(CORE_SEG); -LS char *cluster(char *) __page(CORE_SEG); -LS char *format_uh(char *, int) __page(CORE_SEG); -LS char *nick2uh(char *, char *) __page(CORE_SEG); -LS void deop_ban(Chan *, ChanUser *, char *) __page(CORE_SEG); -LS void deop_siteban(Chan *, ChanUser *) __page(CORE_SEG); -LS void screwban_format(char *) __page(CORE_SEG); -LS void deop_screwban(Chan *, ChanUser *) __page(CORE_SEG); -LS int is_nick(const char *) __attr(CORE_SEG, __regparm(1)); -LS int asc2int(const char *) __attr(CORE_SEG, __regparm(1)); -LS int get_number(const char *) __attr(CORE_SEG, __regparm(1)); -LS void fix_config_line(char *) __page(CFG1_SEG); -LS int matches(const char *, const char *) __attr(CORE_SEG, __regparm(2)); -LS int num_matches(const char *, const char *) __attr(CORE_SEG, __regparm(2)); -LS void table_buffer(const char *, ...) __page(CMD1_SEG); -LS void table_send(const char *, const int) __page(CMD1_SEG); -LS int is_safepath(const char *, int) __attr(CORE_SEG, __regparm(2)); +LS void *Calloc(int) __attr(CORE_SEG, __regparm(1)); +LS void Free(char **) __attr(CORE_SEG, __regparm(1)); +LS Strp *make_strp(Strp **, const char *) __attr(CORE_SEG, __regparm(2)); +LS Strp *append_strp(Strp **, const char *) __attr(CORE_SEG, __regparm(2)); +LS Strp *prepend_strp(Strp **, const char *) __attr(CORE_SEG, __regparm(2)); +LS void purge_linklist(void **) __attr(CORE_SEG, __regparm(1)); +LS void dupe_strp(Strp *, Strp **) __attr(CORE_SEG, __regparm(2)); +LS const int StrlenX(const char *, ...) __attr(CORE_SEG, __regparm(1)); +LS const int Strlen2(const char *, const char *) __attr(CORE_SEG, __regparm(2)); +LS char *getuh(char *) __page(CORE_SEG); +LS char *get_token(char **, const char *) __page(CORE_SEG); +LS char *logtime(time_t) __page(CORE_SEG); +LS char *time2str(time_t) __page(CORE_SEG); +LS char *time2away(time_t) __page(CORE_SEG); +LS char *time2medium(time_t) __page(CORE_SEG); +LS char *time2small(time_t) __page(CORE_SEG); +LS char *idle2str(time_t, int) __page(CORE_SEG); +LS const char *get_channel(const char *, char **) __page(CORE_SEG); +LS const char *get_channel2(const char *, char **) __page(CORE_SEG); +LS char *cluster(char *) __page(CORE_SEG); +LS char *format_uh(char *, int) __page(CORE_SEG); +LS char *nick2uh(char *, char *) __page(CORE_SEG); +LS void deop_ban(Chan *, ChanUser *, char *) __page(CORE_SEG); +LS void deop_siteban(Chan *, ChanUser *) __page(CORE_SEG); +LS void screwban_format(char *) __page(CORE_SEG); +LS void deop_screwban(Chan *, ChanUser *) __page(CORE_SEG); +LS int is_nick(const char *) __attr(CORE_SEG, __regparm(1)); +LS int asc2int(const char *) __attr(CORE_SEG, __regparm(1)); +LS int get_number(const char *) __attr(CORE_SEG, __regparm(1)); +LS void fix_config_line(char *) __page(CFG1_SEG); +LS int matches(const char *, const char *) __attr(CORE_SEG, __regparm(2)); +LS int num_matches(const char *, const char *) __attr(CORE_SEG, __regparm(2)); +LS void table_buffer(const char *, ...) __page(CMD1_SEG); +LS void table_send(const char *, const int) __page(CMD1_SEG); +LS int is_safepath(const char *, int) __attr(CORE_SEG, __regparm(2)); /* greet.c */ -void greet(void); -void do_greet(COMMAND_ARGS) __page(CMD1_SEG); +void greet(void) __page(CORE_SEG); +void do_greet(COMMAND_ARGS) __page(CMD1_SEG); /* help.c */ -void print_help(char *from, char *line, int len); -int do_help_callback(char *line); -void usage_command(char *to, const char *arg); -void usage(char *to); -void do_help(COMMAND_ARGS) __page(CMD1_SEG); -void do_usage(COMMAND_ARGS) __page(CMD1_SEG); +void print_help(char *from, char *line, int len) __page(CMD1_SEG); +int do_help_callback(char *line) __page(CMD1_SEG); +void usage_command(char *to, const char *arg) __page(CMD1_SEG); +void usage(char *to) __page(CMD1_SEG); +void do_help(COMMAND_ARGS) __page(CMD1_SEG); +void do_usage(COMMAND_ARGS) __page(CMD1_SEG); /* hostinfo.c */ int monitor_fs(const char *); -void select_monitor(); -void process_monitor(); -int parse_proc_status(char *line) __page(CMD1_SEG); -int parse_proc_cpuinfo(char *line) __page(CMD1_SEG); -void do_hostinfo(COMMAND_ARGS) __page(CMD1_SEG); -void do_meminfo(COMMAND_ARGS) __page(CMD1_SEG); -void do_cpuinfo(COMMAND_ARGS) __page(CMD1_SEG); -void do_filemon(COMMAND_ARGS) __page(CMD1_SEG); +void select_monitor() __page(CORE_SEG); +void process_monitor() __page(CORE_SEG); +int parse_proc_status(char *line) __page(CMD1_SEG); +int parse_proc_cpuinfo(char *line) __page(CMD1_SEG); +void do_hostinfo(COMMAND_ARGS) __page(CMD1_SEG); +void do_meminfo(COMMAND_ARGS) __page(CMD1_SEG); +void do_cpuinfo(COMMAND_ARGS) __page(CMD1_SEG); +void do_filemon(COMMAND_ARGS) __page(CMD1_SEG); /* io.c */ @@ -348,23 +349,23 @@ LS int SockOpts(void) __page(CORE_SEG); LS int SockListener(int) __page(CORE_SEG); LS int SockConnect(char *, int, int) __page(CORE_SEG); LS int SockAccept(int) __page(CORE_SEG); -int to_file(int sock, const char *format, ...); -void to_server(char *format, ...); -void to_user_q(const char *, const char *, ...); -void to_user(const char *, const char *, ...); -char *sockread(int, char *, char *); -void readline(int, int (*)(char *)); +int to_file(const int sock, const char *format, ...) __page(CORE_SEG); +void to_server(char *format, ...) __page(CORE_SEG); +void to_user_q(const char *, const char *, ...) __page(CMD1_SEG); +void to_user(const char *, const char *, ...) __page(CORE_SEG); +char *sockread(int, char *, char *) __page(CORE_SEG); +void readline(int, int (*)(char *)) __page(CMD1_SEG); void remove_ks(KillSock *); int killsock(int); LS void do_clearqueue(COMMAND_ARGS) __page(CMD1_SEG); /* irc.c */ -LS void make_ireq(int, const char *, const char *) __page(CMD1_SEG); +LS void make_ireq(int, const char *, const char *) __page(CMD1_SEG); void send_pa(int type, const char *nick, const char *format, ...); -void do_irclusers(COMMAND_ARGS) __page(CMD1_SEG); -void do_ircstats(COMMAND_ARGS) __page(CMD1_SEG); -void do_ircwhois(COMMAND_ARGS) __page(CMD1_SEG); +void do_irclusers(COMMAND_ARGS) __page(CMD1_SEG); +void do_ircstats(COMMAND_ARGS) __page(CMD1_SEG); +void do_ircwhois(COMMAND_ARGS) __page(CMD1_SEG); /* kicksay.c */ @@ -372,53 +373,53 @@ KickSay *find_kicksay(char *text, char *channel); void check_kicksay(Chan *chan, ChanUser *doer, char *text); void remove_kicksay(KickSay *kick); void purge_kicklist(void); -void do_kicksay(COMMAND_ARGS) __page(CMD1_SEG); -void do_rkicksay(COMMAND_ARGS) __page(CMD1_SEG); +void do_kicksay(COMMAND_ARGS) __page(CMD1_SEG); +void do_rkicksay(COMMAND_ARGS) __page(CMD1_SEG); /* lib/string.c */ -LS char *chop(char **) __attr(CORE_SEG, __regparm(1)); -LS void unchop(char *, const char *) __attr(CORE_SEG, __regparm(2)); -LS int stringcasecmp(const char *, const char *) __attr(CORE_SEG, __regparm(2)); -LS int stringcmp(const char *, const char *) __attr(CORE_SEG, __regparm(2)); -LS int nickcmp(const char *, const char *) __attr(CORE_SEG, __regparm(2)); -LS char *nickcpy(char *, const char *) __attr(CORE_SEG, __regparm(2)); -LS void stringcpy_n(char *, const char *, int) __attr(CORE_SEG, __regparm(3)); -LS char *stringcpy(char *, const char *) __attr(CORE_SEG, __regparm(2)); -LS char *stringchr(const char *, int) __attr(CORE_SEG, __regparm(2)); -LS char *stringdup(const char *) __attr(CORE_SEG, __regparm(1)); -LS char *stringcat(char *, const char *) __attr(CORE_SEG, __regparm(2)); -LS char *tolowercat(char *, const char *) __attr(CORE_SEG, __regparm(2)); +LS char *chop(char **) __attr(CORE_SEG, __regparm(1)); +LS void unchop(char *, const char *) __attr(CORE_SEG, __regparm(2)); +LS int stringcasecmp(const char *, const char *) __attr(CORE_SEG, __regparm(2)); +LS int stringcmp(const char *, const char *) __attr(CORE_SEG, __regparm(2)); +LS int nickcmp(const char *, const char *) __attr(CORE_SEG, __regparm(2)); +LS char *nickcpy(char *, const char *) __attr(CORE_SEG, __regparm(2)); +LS void stringcpy_n(char *, const char *, int) __attr(CORE_SEG, __regparm(3)); +LS char *stringcpy(char *, const char *) __attr(CORE_SEG, __regparm(2)); +LS char *stringchr(const char *, int) __attr(CORE_SEG, __regparm(2)); +LS char *stringdup(const char *) __attr(CORE_SEG, __regparm(1)); +LS char *stringcat(char *, const char *) __attr(CORE_SEG, __regparm(2)); +LS char *tolowercat(char *, const char *) __attr(CORE_SEG, __regparm(2)); /* main.c */ -void mech_exec(void); -int randstring_count(char *line); -int randstring_getline(char *line); -LS char *randstring(const char *) __page(CORE_SEG); -LS int sig_hup_callback(char *) __page(RARE_SEG); /* rare */ -LS void do_sighup(void) __page(CMD1_SEG); -LS void sig_hup(int) __page(RARE_SEG); /* rare */ -LS void sig_child(int) __page(RARE_SEG); /* rare */ -LS void sig_alrm(int) __page(RARE_SEG); /* rare */ -LS void sig_pipe(int) __page(CORE_SEG); -LS void do_sigusr1(void) __page(CMD1_SEG); -LS void sig_usr1(int) __page(CMD1_SEG); -LS void sig_usr2(int) __page(DBUG_SEG); /* DEBUG */ -LS void sig_suicide() __attr(RARE_SEG, __noreturn__); /* rare */ -LS void do_sigint(void) __page(RARE_SEG); /* rare */ -LS void sig_int(int) __page(RARE_SEG); /* rare */ -LS void sig_ill(int) __page(RARE_SEG); -LS void sig_abrt(int) __page(RARE_SEG); -LS void sig_bus(int) __page(CMD1_SEG); +void mech_exec(void) __page(RARE_SEG); +int randstring_count(char *line) __page(CMD1_SEG); +int randstring_getline(char *line) __page(CMD1_SEG); +LS char *randstring(const char *) __page(CORE_SEG); +LS int sig_hup_callback(char *) __page(RARE_SEG); /* rare */ +LS void do_sighup(void) __page(CMD1_SEG); +LS void sig_hup(int) __page(RARE_SEG); /* rare */ +LS void sig_child(int) __page(RARE_SEG); /* rare */ +LS void sig_alrm(int) __page(RARE_SEG); /* rare */ +LS void sig_pipe(int) __page(CORE_SEG); +LS void do_sigusr1(void) __page(CMD1_SEG); +LS void sig_usr1(int) __page(CMD1_SEG); +LS void sig_usr2(int) __page(DBUG_SEG); /* DEBUG */ +LS void sig_suicide() __attr(RARE_SEG, __noreturn__); /* rare */ +LS void do_sigint(void) __page(RARE_SEG); /* rare */ +LS void sig_int(int) __page(RARE_SEG); /* rare */ +LS void sig_ill(int) __page(RARE_SEG); +LS void sig_abrt(int) __page(RARE_SEG); +LS void sig_bus(int) __page(CMD1_SEG); #if defined(__linux__) && defined(__x86_64__) && defined(DEBUG) && !defined(__STRICT_ANSI__) -LS void sig_segv(int, siginfo_t *, void *) __attr(RARE_SEG, __noreturn__); +LS void sig_segv(int, siginfo_t *, void *) __attr(RARE_SEG, __noreturn__); #else -LS void sig_segv(int) __attr(RARE_SEG, __noreturn__); +LS void sig_segv(int) __attr(RARE_SEG, __noreturn__); #endif -LS void sig_term(int) __attr(RARE_SEG, __noreturn__); /* rare */ -LS void doit(void); -LS int main(int argc, char **argv, char **envp); +LS void sig_term(int) __attr(RARE_SEG, __noreturn__); /* rare */ +LS void doit(void) __page(CORE_SEG); +LS int main(int argc, char **argv, char **envp) __page(CFG1_SEG); /* net.c */ @@ -441,7 +442,7 @@ void basicBanner(BotNet *bn, char *rest); void basicLink(BotNet *bn, char *version); void basicQuit(BotNet *bn, char *rest); LS void netchanNeedop(BotNet *source, char *rest); -LS void netchanSuppress(BotNet *, char *) __page(CORE_SEG); +LS void netchanSuppress(BotNet *, char *) __page(CORE_SEG); void partyAuth(BotNet *bn, char *rest); int commandlocal(int dg, int sg, char *from, char *command); void partyCommand(BotNet *bn, char *rest); @@ -451,16 +452,16 @@ void ushareTick(BotNet *bn, char *rest); void ushareDelete(BotNet *bn, char *rest); void parse_botnet(BotNet *bn, char *rest); void botnet_newsock(void); -void select_botnet(void); -void process_botnet(void); -void do_link(COMMAND_ARGS) __page(CMD1_SEG); -void do_cmd(COMMAND_ARGS) __page(CMD1_SEG); +void select_botnet(void) __page(CORE_SEG); +void process_botnet(void) __page(CORE_SEG); +void do_link(COMMAND_ARGS) __page(CMD1_SEG); +void do_cmd(COMMAND_ARGS) __page(CMD1_SEG); /* note.c */ int catch_note(char *from, char *to, char *rest); -void do_note(COMMAND_ARGS) __page(CMD1_SEG); -void do_read(COMMAND_ARGS) __page(CMD1_SEG); +void do_note(COMMAND_ARGS) __page(CMD1_SEG); +void do_read(COMMAND_ARGS) __page(CMD1_SEG); /* notify.c */ @@ -477,37 +478,37 @@ int read_notify(char *filename); void nfshow_brief(Notify *nf); void nfshow_full(Notify *nf); void sub_notifynick(char *from, char *rest); -void do_notify(COMMAND_ARGS) __page(CMD1_SEG); +void do_notify(COMMAND_ARGS) __page(CMD1_SEG); /* ons.c */ -LS uint32_t makecrc(const char *) __page(CORE_SEG); -LS void send_suppress(const char *, const char *) __page(CORE_SEG); -LS void on_kick(char *from, char *rest); -LS void on_join(Chan *chan, char *from); -LS void on_nick(char *from, char *newnick); -LS void on_msg(char *from, char *to, char *rest); -LS void on_mode(char *from, char *channel, char *rest); -LS void common_public(Chan *chan, char *from, char *spyformat, char *rest); -LS void on_action(char *from, char *to, char *rest); -LS int access_needed(char *name); -LS void do_chaccess(COMMAND_ARGS) __page(CMD1_SEG); -LS void do_last(COMMAND_ARGS) __page(CMD1_SEG); +LS uint32_t makecrc(const char *) __page(CORE_SEG); +LS void send_suppress(const char *, const char *) __page(CORE_SEG); +LS void on_kick(char *from, char *rest) __page(CORE_SEG); +LS void on_join(Chan *chan, char *from) __page(CORE_SEG); +LS void on_nick(char *from, char *newnick) __page(CORE_SEG); +LS void on_msg(char *from, char *to, char *rest) __page(CORE_SEG); +LS void on_mode(char *from, char *channel, char *rest) __page(CORE_SEG); +LS void common_public(Chan *chan, char *from, char *spyformat, char *rest) __page(CORE_SEG); +LS void on_action(char *from, char *to, char *rest) __page(CORE_SEG); +LS int access_needed(char *name) __page(CORE_SEG); +LS void do_chaccess(COMMAND_ARGS) __page(CMD1_SEG); +LS void do_last(COMMAND_ARGS) __page(CMD1_SEG); /* parse.c */ -LS void parse_error(char *from, char *rest); -LS void parse_invite(char *from, char *rest); -LS void parse_join(char *from, char *rest); -LS void parse_mode(char *from, char *rest); -LS void parse_notice(char *from, char *rest); -LS void parse_part(char *from, char *rest); -LS void parse_ping(char *from, char *rest); -LS void parse_pong(char *from, char *rest); -LS void parse_privmsg(char *from, char *rest); -LS void parse_quit(char *from, char *rest); -LS void parse_topic(char *from, char *rest); -LS void parse_wallops(char *from, char *rest); +LS void parse_error(char *from, char *rest) __page(CORE_SEG); +LS void parse_invite(char *from, char *rest) __page(CMD1_SEG); +LS void parse_join(char *from, char *rest) __page(CORE_SEG); +LS void parse_mode(char *from, char *rest) __page(CORE_SEG); +LS void parse_notice(char *from, char *rest) __page(CORE_SEG); +LS void parse_part(char *from, char *rest) __page(CORE_SEG); +LS void parse_ping(char *from, char *rest) __page(CORE_SEG); +LS void parse_pong(char *from, char *rest) __page(CORE_SEG); +LS void parse_privmsg(char *from, char *rest) __page(CORE_SEG); +LS void parse_quit(char *from, char *rest) __page(CORE_SEG); +LS void parse_topic(char *from, char *rest) __page(CORE_SEG); +LS void parse_wallops(char *from, char *rest) __page(CORE_SEG); LS void parse_213(char *from, char *rest); LS void parse_219(char *from, char *rest); LS void parse_251(char *from, char *rest); @@ -537,8 +538,8 @@ LS void parse_346(char *from, char *rest); LS void parse_348(char *from, char *rest); LS void parse_368(char *from, char *rest); LS void parse_005(char *from, char *rest); -LS uint32_t stringhash(char *s); -LS void parse_server_input(char *rest); +LS uint32_t stringhash(char *s) __page(CORE_SEG); +LS void parse_server_input(char *rest) __page(CORE_SEG); /* partyline.c */ @@ -610,10 +611,10 @@ void do_pythonscript(COMMAND_ARGS) __page(CMD1_SEG); /* reset.c */ -char *recover_client(char *env); -char *recover_debug(char *env); -char *recover_server(char *env); -void recover_reset(void); +char *recover_client(char *env) __page(INIT_SEG); +char *recover_debug(char *env) __page(INIT_SEG); +char *recover_server(char *env) __page(INIT_SEG); +void recover_reset(void) __page(INIT_SEG); void do_reset(COMMAND_ARGS) __page(RARE_SEG); /* seen.c */ @@ -641,17 +642,17 @@ void do_clearshit(COMMAND_ARGS) __page(CMD1_SEG); /* spy.c */ -void send_spy(const char *src, const char *format, ...); -void send_global(const char *src, const char *format, ...); -void spy_typecount(Mech *bot); -int spy_source(char *from, int *t_src, const char **src); -char *urlhost(const char *); +void send_spy(const char *src, const char *format, ...) __page(CORE_SEG); +void send_global(const char *src, const char *format, ...) __page(CORE_SEG); +void spy_typecount(Mech *bot) __page(CORE_SEG); +int spy_source(char *from, int *t_src, const char **src) __page(CORE_SEG); +char *urlhost(const char *) __page(CORE_SEG); LS void urlcapture(const char *) __page(CORE_SEG); -int begin_redirect(char *, char *); -void send_redirect(char *); -void end_redirect(void); -void stats_loghour(Chan *chan, char *filename, int hour); -void stats_plusminususer(Chan *chan, int plusminus); +int begin_redirect(char *, char *) __page(CORE_SEG); +void send_redirect(char *) __page(CORE_SEG); +void end_redirect(void) __page(CORE_SEG); +void stats_loghour(Chan *chan, char *filename, int hour) __page(CORE_SEG); +void stats_plusminususer(Chan *chan, int plusminus) __page(CORE_SEG); void do_spy(COMMAND_ARGS) __page(CMD1_SEG); void do_rspy(COMMAND_ARGS) __page(CMD1_SEG); void do_info(COMMAND_ARGS) __page(CMD1_SEG); @@ -687,22 +688,22 @@ LS void do_tcl(COMMAND_ARGS) __page(CMD1_SEG); /* toybox.c */ -LS int read_bigcharset_callback(char *); -LS int read_bigcharset(char *); -LS int read_ascii(char *); -LS void trivia_week_toppers(void); -LS void hint_one(void); -LS void hint_two(void); -LS void hint_three(void); -LS void trivia_cleanup(void); -LS void trivia_check(Chan *, char *); -LS void trivia_no_answer(void); -LS char *random_question(char *); -LS void trivia_question(void); -LS void trivia_tick(void); -LS void write_triviascore(void); -LS int trivia_score_callback(char *); -LS void read_triviascore(void); +LS int read_bigcharset_callback(char *) __page(CMD1_SEG); +LS int read_bigcharset(char *) __page(CMD1_SEG); +LS int read_ascii(char *) __page(CMD1_SEG); +LS void trivia_week_toppers(void) __page(CMD1_SEG); +LS void hint_one(void) __page(CMD1_SEG); +LS void hint_two(void) __page(CMD1_SEG); +LS void hint_three(void) __page(CMD1_SEG); +LS void trivia_cleanup(void) __page(CMD1_SEG); +LS void trivia_check(Chan *, char *) __page(CMD1_SEG); +LS void trivia_no_answer(void) __page(CMD1_SEG); +LS char *random_question(char *) __page(CMD1_SEG); +LS void trivia_question(void) __page(CMD1_SEG); +LS void trivia_tick(void) __page(CMD1_SEG); +LS void write_triviascore(void) __page(CMD1_SEG); +LS int trivia_score_callback(char *) __page(CMD1_SEG); +LS void read_triviascore(void) __page(CMD1_SEG); LS void do_bigsay(COMMAND_ARGS) __page(CMD1_SEG); LS void do_random_msg(COMMAND_ARGS) __page(CMD1_SEG); LS void do_randtopic(COMMAND_ARGS) __page(CMD1_SEG); @@ -714,43 +715,43 @@ LS void do_trivia(COMMAND_ARGS) __page(CMD1_SEG); /* uptime.c */ -void init_uptime(void); -void send_uptime(int type); -void uptime_death(int type); -void process_uptime(void); +void init_uptime(void) __page(CFG1_SEG); +void send_uptime(int type) __page(CORE_SEG); +void uptime_death(int type) __page(RARE_SEG); +void process_uptime(void) __page(CORE_SEG); void do_upsend(COMMAND_ARGS) __page(CMD1_SEG); /* user.c */ -LS void cfg_user(char *) __page(CFG1_SEG); +LS void cfg_user(char *) __page(CFG1_SEG); void cfg_modcount(char *); -LS void cfg_pass(char *) __page(CFG1_SEG); -LS void cfg_mask(char *) __page(CFG1_SEG); -LS void cfg_chan(char *) __page(CFG1_SEG); -LS void cfg_opt(char *) __page(CFG1_SEG); -LS void cfg_shit(char *) __page(CFG1_SEG); +LS void cfg_pass(char *) __page(CFG1_SEG); +LS void cfg_mask(char *) __page(CFG1_SEG); +LS void cfg_chan(char *) __page(CFG1_SEG); +LS void cfg_opt(char *) __page(CFG1_SEG); +LS void cfg_shit(char *) __page(CFG1_SEG); void cfg_kicksay(char *); -LS void cfg_greet(char *) __page(CFG1_SEG); -LS void cfg_note(char *) __page(CFG1_SEG); +LS void cfg_greet(char *) __page(CFG1_SEG); +LS void cfg_note(char *) __page(CFG1_SEG); void user_sync(void); int read_userlist_callback(char *); int read_userlist(char *); int write_userlist(char *); void rehash_chanusers(void); -LS void addtouser(Strp **, const char *, int) __attr(CORE_SEG, __regparm(3)); -LS int remfromuser(Strp **, const char *) __attr(CORE_SEG, __regparm(2)); -void mirror_user(User *) __page(CORE_SEG); -void mirror_userlist(void) __page(CORE_SEG); +LS void addtouser(Strp **, const char *, int) __attr(CORE_SEG, __regparm(3)); +LS int remfromuser(Strp **, const char *) __attr(CORE_SEG, __regparm(2)); +void mirror_user(User *) __page(CORE_SEG); +void mirror_userlist(void) __page(CORE_SEG); void reset_userlink(User *, User *); void remove_user(User *); User *add_user(char *, char *, int); User *find_handle(const char *); int userhaschannel(const User *, const char *); -User *get_user(const char *, const char *); -int get_useraccess(const char *, const char *); -int get_maxaccess(const char *); -int is_bot(const char *); -int get_protaction(Chan *, char *); +User *get_user(const char *, const char *) __page(CORE_SEG); +int get_useraccess(const char *, const char *) __page(CORE_SEG); +int get_maxaccess(const char *) __page(CORE_SEG); +int is_bot(const char *) __page(CORE_SEG); +int get_protaction(Chan *, char *) __page(CORE_SEG); int usercanmodify(const char *, const User *); void change_pass(User *, char *) __page(CMD1_SEG); void do_access(COMMAND_ARGS) __page(CMD1_SEG); @@ -764,23 +765,23 @@ void do_load(COMMAND_ARGS) __page(CMD1_SEG); /* vars.c */ -void set_str_varc(Chan *, int, char *); -int find_setting(const char *); -void copy_vars(UniVar *, UniVar *); -void set_binarydefault(UniVar *); -void delete_vars(UniVar *, int); +void set_str_varc(Chan *, int, char *) __page(CFG1_SEG); +int find_setting(const char *) __page(CORE_SEG); +void copy_vars(UniVar *, UniVar *) __page(CFG1_SEG); +void set_binarydefault(UniVar *) __page(CFG1_SEG); +void delete_vars(UniVar *, int) __page(CMD1_SEG); void var_resolve_host(const struct Setting *); -void nobo_strcpy(const char *); -void ec_access(char *, const char *); -void ec_capabilities(char *, const char *); -void ec_cc(char *, const char *); -void ec_channels(char *, const char *); -void ec_time(char *, const char *); -void ec_set(char *, const char *); -void ec_on(char *, const char *); -void ec_server(char *, const char *); -void ec_up(char *, const char *); -void ec_ver(char *, const char *); +void nobo_strcpy(const char *) __page(CMD1_SEG); +void ec_access(char *, const char *) __page(CMD1_SEG); +void ec_capabilities(char *, const char *) __page(CMD1_SEG); +void ec_cc(char *, const char *) __page(CMD1_SEG); +void ec_channels(char *, const char *) __page(CMD1_SEG); +void ec_time(char *, const char *) __page(CMD1_SEG); +void ec_set(char *, const char *) __page(CMD1_SEG); +void ec_on(char *, const char *) __page(CMD1_SEG); +void ec_server(char *, const char *) __page(CMD1_SEG); +void ec_up(char *, const char *) __page(CMD1_SEG); +void ec_ver(char *, const char *) __page(CMD1_SEG); void do_esay(COMMAND_ARGS) __page(CMD1_SEG); void do_set(COMMAND_ARGS) __page(CMD1_SEG);