plexus3.c File Reference

#include "services.h"
#include "pseudo.h"
#include "plexus3.h"

Go to the source code of this file.

Functions

int anope_event_436 (char *source, int ac, char **av)
int anope_event_admin (char *source, int ac, char **av)
int anope_event_away (char *source, int ac, char **av)
int anope_event_capab (char *source, int ac, char **av)
int anope_event_encap (char *source, int ac, char **av)
int anope_event_eob (char *source, int ac, char **av)
int anope_event_error (char *source, int ac, char **av)
int anope_event_invite (char *source, int ac, char **av)
int anope_event_join (char *source, int ac, char **av)
int anope_event_kick (char *source, int ac, char **av)
int anope_event_kill (char *source, int ac, char **av)
int anope_event_mode (char *source, int ac, char **av)
int anope_event_motd (char *source, int ac, char **av)
int anope_event_nick (char *source, int ac, char **av)
int anope_event_notice (char *source, int ac, char **av)
int anope_event_part (char *source, int ac, char **av)
int anope_event_pass (char *source, int ac, char **av)
int anope_event_ping (char *source, int ac, char **av)
int anope_event_privmsg (char *source, int ac, char **av)
int anope_event_quit (char *source, int ac, char **av)
int anope_event_server (char *source, int ac, char **av)
int anope_event_sjoin (char *source, int ac, char **av)
int anope_event_squit (char *source, int ac, char **av)
int anope_event_svinfo (char *source, int ac, char **av)
int anope_event_tburst (char *source, int ac, char **av)
int anope_event_topic (char *source, int ac, char **av)
int anope_event_whois (char *source, int ac, char **av)
int AnopeInit (int argc, char **argv)
void moduleAddAnopeCmds ()
void moduleAddIRCDMsgs (void)
void plexus_cmd_211 (char *buf)
void plexus_cmd_219 (char *source, char *letter)
void plexus_cmd_242 (char *buf)
void plexus_cmd_243 (char *buf)
void plexus_cmd_250 (char *buf)
void plexus_cmd_307 (char *buf)
void plexus_cmd_311 (char *buf)
void plexus_cmd_312 (char *buf)
void plexus_cmd_317 (char *buf)
void plexus_cmd_318 (char *source, char *who)
void plexus_cmd_351 (char *source)
void plexus_cmd_372 (char *source, char *msg)
void plexus_cmd_372_error (char *source)
void plexus_cmd_375 (char *source)
void plexus_cmd_376 (char *source)
void plexus_cmd_391 (char *source, char *timestr)
void plexus_cmd_401 (char *source, char *who)
void plexus_cmd_akill (char *user, char *host, char *who, time_t when, time_t expires, char *reason)
void plexus_cmd_bot_chan_mode (char *nick, char *chan)
void plexus_cmd_bot_nick (char *nick, char *user, char *host, char *real, char *modes)
void plexus_cmd_capab ()
void plexus_cmd_chg_nick (char *oldnick, char *newnick)
void plexus_cmd_connect (int servernum)
void plexus_cmd_ctcp (char *source, char *dest, char *buf)
void plexus_cmd_eob ()
void plexus_cmd_global (char *source, char *buf)
void plexus_cmd_global_legacy (char *source, char *fmt)
void plexus_cmd_guest_nick (char *nick, char *user, char *host, char *real, char *modes)
void plexus_cmd_invite (char *source, char *chan, char *nick)
void plexus_cmd_join (char *user, char *channel, time_t chantime)
void plexus_cmd_jupe (char *jserver, char *who, char *reason)
void plexus_cmd_kick (char *source, char *chan, char *user, char *buf)
void plexus_cmd_mode (char *source, char *dest, char *buf)
void plexus_cmd_nc_change (User *u)
void plexus_cmd_nick (char *nick, char *name, char *mode)
void plexus_cmd_notice (char *source, char *dest, char *buf)
void plexus_cmd_notice2 (char *source, char *dest, char *msg)
void plexus_cmd_notice_ops (char *source, char *dest, char *buf)
void plexus_cmd_part (char *nick, char *chan, char *buf)
void plexus_cmd_pass (char *pass)
void plexus_cmd_pong (char *servname, char *who)
void plexus_cmd_privmsg (char *source, char *dest, char *buf)
void plexus_cmd_privmsg2 (char *source, char *dest, char *msg)
void plexus_cmd_quit (char *source, char *buf)
void plexus_cmd_release_svshold (char *nick)
void plexus_cmd_remove_akill (char *user, char *host)
void plexus_cmd_serv_notice (char *source, char *dest, char *msg)
void plexus_cmd_serv_privmsg (char *source, char *dest, char *msg)
void plexus_cmd_server (char *servname, int hop, char *descript)
void plexus_cmd_sgline (char *mask, char *reason)
void plexus_cmd_sqline (char *mask, char *reason)
void plexus_cmd_squit (char *servname, char *message)
void plexus_cmd_svid_umode (char *nick, time_t ts)
void plexus_cmd_svid_umode2 (User *u, char *ts)
void plexus_cmd_svid_umode3 (User *u, char *ts)
void plexus_cmd_svinfo ()
void plexus_cmd_svsadmin (char *server, int set)
void plexus_cmd_svshold (char *nick)
void plexus_cmd_svsinfo ()
void plexus_cmd_svsjoin (char *source, char *nick, char *chan, char *param)
void plexus_cmd_svskill (char *source, char *user, char *buf)
void plexus_cmd_svsmode (User *u, int ac, char **av)
void plexus_cmd_svsmode_chan (char *name, char *mode, char *nick)
void plexus_cmd_svsnick (char *nick, char *newnick, time_t when)
void plexus_cmd_svsnoop (char *server, int set)
void plexus_cmd_svso (char *source, char *nick, char *flag)
void plexus_cmd_svspart (char *source, char *nick, char *chan)
void plexus_cmd_swhois (char *source, char *who, char *mask)
void plexus_cmd_szline (char *mask, char *reason, char *whom)
void plexus_cmd_topic (char *whosets, char *chan, char *whosetit, char *topic, time_t when)
void plexus_cmd_unban (char *name, char *nick)
void plexus_cmd_unsgline (char *mask)
void plexus_cmd_unsqline (char *user)
void plexus_cmd_unszline (char *mask)
void plexus_cmd_vhost_off (User *u)
void plexus_cmd_vhost_on (char *nick, char *vIdent, char *vhost)
int plexus_flood_mode_check (char *value)
void plexus_set_umode (User *user, int ac, char **av)
int plexus_valid_chan (char *chan)
int plexus_valid_nick (char *nick)

Variables

CBModeInfo myCbmodeinfos []
CBMode myCbmodes [128]
CMMode myCmmodes [128]
char myCsmodes [128]
CUMode myCumodes [128]
IRCDVar myIrcd []
IRCDCAPAB myIrcdcap []
unsigned long umodes [128]


Function Documentation

int anope_event_436 ( char *  source,
int  ac,
char **  av 
)

Definition at line 671 of file plexus3.c.

References m_nickcoll(), and MOD_CONT.

int anope_event_admin ( char *  source,
int  ac,
char **  av 
)

Definition at line 1649 of file plexus3.c.

References MOD_CONT.

int anope_event_away ( char *  source,
int  ac,
char **  av 
)

Definition at line 1008 of file plexus3.c.

References m_away(), and MOD_CONT.

int anope_event_capab ( char *  source,
int  ac,
char **  av 
)

Definition at line 1448 of file plexus3.c.

References capab_parse(), MOD_CONT, myStrGetToken(), scalloc(), and srealloc().

int anope_event_encap ( char *  source,
int  ac,
char **  av 
)

Definition at line 642 of file plexus3.c.

References alog(), change_user_host(), debug, finduser(), MOD_CONT, and stricmp().

Referenced by moduleAddIRCDMsgs().

int anope_event_eob ( char *  source,
int  ac,
char **  av 
)

Definition at line 1038 of file plexus3.c.

References findserver(), finish_sync(), MOD_CONT, serv_uplink, and servlist.

int anope_event_error ( char *  source,
int  ac,
char **  av 
)

Definition at line 1667 of file plexus3.c.

References alog(), debug, and MOD_CONT.

int anope_event_invite ( char *  source,
int  ac,
char **  av 
)

Definition at line 1655 of file plexus3.c.

References MOD_CONT.

int anope_event_join ( char *  source,
int  ac,
char **  av 
)

Definition at line 1061 of file plexus3.c.

References do_join(), and MOD_CONT.

int anope_event_kick ( char *  source,
int  ac,
char **  av 
)

Definition at line 1029 of file plexus3.c.

References do_kick(), and MOD_CONT.

int anope_event_kill ( char *  source,
int  ac,
char **  av 
)

Definition at line 1019 of file plexus3.c.

References m_kill(), and MOD_CONT.

int anope_event_mode ( char *  source,
int  ac,
char **  av 
)

Definition at line 1412 of file plexus3.c.

References do_cmode(), do_umode(), findserver(), MOD_CONT, and servlist.

int anope_event_motd ( char *  source,
int  ac,
char **  av 
)

Definition at line 1070 of file plexus3.c.

References m_motd(), and MOD_CONT.

int anope_event_nick ( char *  source,
int  ac,
char **  av 
)

Definition at line 557 of file plexus3.c.

References anope_set_umode(), do_nick(), and MOD_CONT.

int anope_event_notice ( char *  source,
int  ac,
char **  av 
)

Definition at line 1643 of file plexus3.c.

References MOD_CONT.

int anope_event_part ( char *  source,
int  ac,
char **  av 
)

Definition at line 1091 of file plexus3.c.

References do_part(), and MOD_CONT.

int anope_event_pass ( char *  source,
int  ac,
char **  av 
)

Definition at line 1618 of file plexus3.c.

References MOD_CONT.

int anope_event_ping ( char *  source,
int  ac,
char **  av 
)

Definition at line 999 of file plexus3.c.

References MOD_CONT, plexus_cmd_pong(), and ServerName.

int anope_event_privmsg ( char *  source,
int  ac,
char **  av 
)

Definition at line 1082 of file plexus3.c.

References m_privmsg(), and MOD_CONT.

int anope_event_quit ( char *  source,
int  ac,
char **  av 
)

Definition at line 1131 of file plexus3.c.

References do_quit(), and MOD_CONT.

int anope_event_server ( char *  source,
int  ac,
char **  av 
)

Definition at line 1111 of file plexus3.c.

References do_server(), MOD_CONT, sstrdup(), stricmp(), and uplink.

int anope_event_sjoin ( char *  source,
int  ac,
char **  av 
)

Definition at line 550 of file plexus3.c.

References do_sjoin(), and MOD_CONT.

int anope_event_squit ( char *  source,
int  ac,
char **  av 
)

Definition at line 1122 of file plexus3.c.

References do_squit(), and MOD_CONT.

int anope_event_svinfo ( char *  source,
int  ac,
char **  av 
)

Definition at line 1611 of file plexus3.c.

References MOD_CONT.

int anope_event_tburst ( char *  source,
int  ac,
char **  av 
)

Definition at line 623 of file plexus3.c.

References do_topic(), and MOD_CONT.

int anope_event_topic ( char *  source,
int  ac,
char **  av 
)

Definition at line 576 of file plexus3.c.

References alog(), check_topiclock(), debug, do_topic(), EVENT_TOPIC_UPDATED, findchan(), merge_args(), MOD_CONT, record_topic(), send_event(), sstrdup(), and strscpy().

int anope_event_whois ( char *  source,
int  ac,
char **  av 
)

Definition at line 1100 of file plexus3.c.

References m_whois(), and MOD_CONT.

int AnopeInit ( int  argc,
char **  argv 
)

Now tell anope how to use us.

Deal with modes anope _needs_ to know

Definition at line 1822 of file plexus3.c.

References CMODE_i, CMODE_k, CMODE_l, CMODE_p, CMODE_s, MOD_CONT, moduleAddAnopeCmds(), moduleAddAuthor(), moduleAddIRCDMsgs(), moduleAddVersion(), moduleSetType(), myCbmodeinfos, myCbmodes, myCmmodes, myCsmodes, myCumodes, myIrcd, myIrcdcap, pmodule_invis_umode(), pmodule_invite_cmode(), pmodule_ircd_cap(), pmodule_ircd_cbmodeinfos(), pmodule_ircd_cbmodes(), pmodule_ircd_cmmodes(), pmodule_ircd_csmodes(), pmodule_ircd_cumodes(), pmodule_ircd_flood_mode_char_remove(), pmodule_ircd_flood_mode_char_set(), pmodule_ircd_useTSMode(), pmodule_ircd_var(), pmodule_ircd_version(), pmodule_key_mode(), pmodule_limit_mode(), pmodule_oper_umode(), pmodule_private_cmode(), pmodule_secret_cmode(), PROTOCOL, UMODE_i, and UMODE_o.

void moduleAddAnopeCmds (  ) 

Tell anope which function we want to perform each task inside of anope. These prototypes must match what anope expects.

Definition at line 1740 of file plexus3.c.

References plexus_cmd_211(), plexus_cmd_219(), plexus_cmd_242(), plexus_cmd_243(), plexus_cmd_250(), plexus_cmd_307(), plexus_cmd_311(), plexus_cmd_312(), plexus_cmd_317(), plexus_cmd_318(), plexus_cmd_351(), plexus_cmd_372(), plexus_cmd_372_error(), plexus_cmd_375(), plexus_cmd_376(), plexus_cmd_391(), plexus_cmd_401(), plexus_cmd_akill(), plexus_cmd_bot_chan_mode(), plexus_cmd_bot_nick(), plexus_cmd_chg_nick(), plexus_cmd_connect(), plexus_cmd_ctcp(), plexus_cmd_eob(), plexus_cmd_global(), plexus_cmd_global_legacy(), plexus_cmd_guest_nick(), plexus_cmd_invite(), plexus_cmd_join(), plexus_cmd_jupe(), plexus_cmd_kick(), plexus_cmd_mode(), plexus_cmd_nc_change(), plexus_cmd_nick(), plexus_cmd_notice(), plexus_cmd_notice2(), plexus_cmd_notice_ops(), plexus_cmd_part(), plexus_cmd_pong(), plexus_cmd_privmsg(), plexus_cmd_privmsg2(), plexus_cmd_quit(), plexus_cmd_release_svshold(), plexus_cmd_remove_akill(), plexus_cmd_serv_notice(), plexus_cmd_serv_privmsg(), plexus_cmd_sgline(), plexus_cmd_sqline(), plexus_cmd_squit(), plexus_cmd_svid_umode(), plexus_cmd_svid_umode2(), plexus_cmd_svid_umode3(), plexus_cmd_svshold(), plexus_cmd_svsjoin(), plexus_cmd_svskill(), plexus_cmd_svsmode(), plexus_cmd_svsmode_chan(), plexus_cmd_svsnick(), plexus_cmd_svsnoop(), plexus_cmd_svso(), plexus_cmd_svspart(), plexus_cmd_swhois(), plexus_cmd_szline(), plexus_cmd_topic(), plexus_cmd_unban(), plexus_cmd_unsgline(), plexus_cmd_unsqline(), plexus_cmd_unszline(), plexus_cmd_vhost_off(), plexus_cmd_vhost_on(), plexus_flood_mode_check(), plexus_set_umode(), plexus_valid_chan(), plexus_valid_nick(), pmodule_cmd_211(), pmodule_cmd_219(), pmodule_cmd_242(), pmodule_cmd_243(), pmodule_cmd_250(), pmodule_cmd_307(), pmodule_cmd_311(), pmodule_cmd_312(), pmodule_cmd_317(), pmodule_cmd_318(), pmodule_cmd_351(), pmodule_cmd_372(), pmodule_cmd_372_error(), pmodule_cmd_375(), pmodule_cmd_376(), pmodule_cmd_391(), pmodule_cmd_401(), pmodule_cmd_akill(), pmodule_cmd_bot_chan_mode(), pmodule_cmd_bot_nick(), pmodule_cmd_chg_nick(), pmodule_cmd_connect(), pmodule_cmd_ctcp(), pmodule_cmd_eob(), pmodule_cmd_global(), pmodule_cmd_global_legacy(), pmodule_cmd_guest_nick(), pmodule_cmd_invite(), pmodule_cmd_join(), pmodule_cmd_jupe(), pmodule_cmd_kick(), pmodule_cmd_mode(), pmodule_cmd_nc_change(), pmodule_cmd_nick(), pmodule_cmd_notice(), pmodule_cmd_notice2(), pmodule_cmd_notice_ops(), pmodule_cmd_part(), pmodule_cmd_pong(), pmodule_cmd_privmsg(), pmodule_cmd_privmsg2(), pmodule_cmd_quit(), pmodule_cmd_release_svshold(), pmodule_cmd_remove_akill(), pmodule_cmd_serv_notice(), pmodule_cmd_serv_privmsg(), pmodule_cmd_sgline(), pmodule_cmd_sqline(), pmodule_cmd_squit(), pmodule_cmd_svid_umode(), pmodule_cmd_svid_umode2(), pmodule_cmd_svid_umode3(), pmodule_cmd_svshold(), pmodule_cmd_svsjoin(), pmodule_cmd_svskill(), pmodule_cmd_svsmode(), pmodule_cmd_svsmode_chan(), pmodule_cmd_svsnick(), pmodule_cmd_svsnoop(), pmodule_cmd_svso(), pmodule_cmd_svspart(), pmodule_cmd_swhois(), pmodule_cmd_szline(), pmodule_cmd_topic(), pmodule_cmd_unban(), pmodule_cmd_unsgline(), pmodule_cmd_unsqline(), pmodule_cmd_unszline(), pmodule_cmd_vhost_off(), pmodule_cmd_vhost_on(), pmodule_flood_mode_check(), pmodule_set_umode(), pmodule_valid_chan(), and pmodule_valid_nick().

void moduleAddIRCDMsgs ( void   ) 

Definition at line 682 of file plexus3.c.

References addCoreMessage(), anope_event_436(), anope_event_admin(), anope_event_away(), anope_event_capab(), anope_event_encap(), anope_event_eob(), anope_event_error(), anope_event_invite(), anope_event_join(), anope_event_kick(), anope_event_kill(), anope_event_mode(), anope_event_motd(), anope_event_nick(), anope_event_notice(), anope_event_null(), anope_event_part(), anope_event_pass(), anope_event_ping(), anope_event_privmsg(), anope_event_quit(), anope_event_server(), anope_event_sjoin(), anope_event_squit(), anope_event_svinfo(), anope_event_tburst(), anope_event_topic(), anope_event_whois(), createMessage(), IRCD, and updateProtectDetails().

void plexus_cmd_211 ( char *  buf  ) 

Definition at line 1305 of file plexus3.c.

References send_cmd(), and ServerName.

void plexus_cmd_219 ( char *  source,
char *  letter 
)

Definition at line 1238 of file plexus3.c.

References send_cmd(), and ServerName.

void plexus_cmd_242 ( char *  buf  ) 

Definition at line 1281 of file plexus3.c.

References send_cmd(), and ServerName.

void plexus_cmd_243 ( char *  buf  ) 

Definition at line 1293 of file plexus3.c.

References send_cmd(), and ServerName.

void plexus_cmd_250 ( char *  buf  ) 

Definition at line 1178 of file plexus3.c.

References send_cmd(), and ServerName.

void plexus_cmd_307 ( char *  buf  ) 

Definition at line 1190 of file plexus3.c.

References send_cmd(), and ServerName.

void plexus_cmd_311 ( char *  buf  ) 

Definition at line 1202 of file plexus3.c.

References send_cmd(), and ServerName.

void plexus_cmd_312 ( char *  buf  ) 

Definition at line 1214 of file plexus3.c.

References send_cmd(), and ServerName.

void plexus_cmd_317 ( char *  buf  ) 

Definition at line 1226 of file plexus3.c.

References send_cmd(), and ServerName.

void plexus_cmd_318 ( char *  source,
char *  who 
)

Definition at line 1269 of file plexus3.c.

References send_cmd(), and ServerName.

void plexus_cmd_351 ( char *  source  ) 

Definition at line 1439 of file plexus3.c.

References EncModule, ircd, ircdvars_::name, send_cmd(), ServerName, version_build, version_flags, and version_number.

void plexus_cmd_372 ( char *  source,
char *  msg 
)

Definition at line 1140 of file plexus3.c.

References send_cmd(), and ServerName.

void plexus_cmd_372_error ( char *  source  ) 

Definition at line 1146 of file plexus3.c.

References send_cmd(), and ServerName.

void plexus_cmd_375 ( char *  source  ) 

Definition at line 1153 of file plexus3.c.

References send_cmd(), and ServerName.

void plexus_cmd_376 ( char *  source  ) 

Definition at line 1160 of file plexus3.c.

References send_cmd(), and ServerName.

void plexus_cmd_391 ( char *  source,
char *  timestr 
)

Definition at line 1167 of file plexus3.c.

References send_cmd(), and ServerName.

void plexus_cmd_401 ( char *  source,
char *  who 
)

Definition at line 1258 of file plexus3.c.

References send_cmd(), and ServerName.

void plexus_cmd_akill ( char *  user,
char *  host,
char *  who,
time_t  when,
time_t  expires,
char *  reason 
)

Definition at line 860 of file plexus3.c.

References s_OperServ, and send_cmd().

void plexus_cmd_bot_chan_mode ( char *  nick,
char *  chan 
)

Definition at line 1361 of file plexus3.c.

References anope_cmd_mode(), ircdvars_::botchanumode, ircd, and myIrcd.

void plexus_cmd_bot_nick ( char *  nick,
char *  user,
char *  host,
char *  real,
char *  modes 
)

Definition at line 974 of file plexus3.c.

References EnforceQlinedNick(), plexus_cmd_sqline(), send_cmd(), and ServerName.

void plexus_cmd_capab (  ) 

Definition at line 928 of file plexus3.c.

References send_cmd().

void plexus_cmd_chg_nick ( char *  oldnick,
char *  newnick 
)

Definition at line 1592 of file plexus3.c.

References send_cmd().

void plexus_cmd_connect ( int  servernum  ) 

Definition at line 949 of file plexus3.c.

References me_server, new_server(), plexus_cmd_capab(), plexus_cmd_pass(), plexus_cmd_server(), plexus_cmd_svinfo(), RemotePassword, RemotePassword2, RemotePassword3, SERVER_ISME, ServerDesc, and ServerName.

void plexus_cmd_ctcp ( char *  source,
char *  dest,
char *  buf 
)

Definition at line 1717 of file plexus3.c.

References normalizeBuffer(), and send_cmd().

void plexus_cmd_eob (  ) 

Definition at line 1054 of file plexus3.c.

References send_cmd(), and ServerName.

void plexus_cmd_global ( char *  source,
char *  buf 
)

Definition at line 532 of file plexus3.c.

References send_cmd(), and ServerName.

void plexus_cmd_global_legacy ( char *  source,
char *  fmt 
)

Definition at line 544 of file plexus3.c.

References send_cmd(), and ServerName.

void plexus_cmd_guest_nick ( char *  nick,
char *  user,
char *  host,
char *  real,
char *  modes 
)

Definition at line 1516 of file plexus3.c.

References send_cmd(), and ServerName.

void plexus_cmd_invite ( char *  source,
char *  chan,
char *  nick 
)

Definition at line 1389 of file plexus3.c.

References send_cmd().

void plexus_cmd_join ( char *  user,
char *  channel,
time_t  chantime 
)

Definition at line 844 of file plexus3.c.

References send_cmd(), and ServerName.

void plexus_cmd_jupe ( char *  jserver,
char *  who,
char *  reason 
)

Definition at line 1680 of file plexus3.c.

References findserver(), me_server, new_server(), plexus_cmd_server(), plexus_cmd_squit(), SERVER_JUPED, servlist, and snprintf().

void plexus_cmd_kick ( char *  source,
char *  chan,
char *  user,
char *  buf 
)

Definition at line 1337 of file plexus3.c.

References send_cmd().

void plexus_cmd_mode ( char *  source,