示例#1
0
void _modinit(module_t * m)
{
	MODULE_TRY_REQUEST_DEPENDENCY(m, "protocol/charybdis");

	mode_list = chatd_mode_list;
	user_mode_list = chatd_user_mode_list;
	status_mode_list = chatd_status_mode_list;
	prefix_mode_list = chatd_prefix_mode_list;

	wallops_sts = &chatd_wallops_sts;
	ircd_on_login = &chatd_on_login;
	ircd_on_logout = &chatd_on_logout;
	is_valid_host = &chatd_is_valid_hostslash;

	pcommand_delete("NICK");
	pcommand_add("NICK", m_nick, 2, MSRC_USER | MSRC_SERVER);
	pcommand_delete("EUID");
	pcommand_add("EUID", m_euid, 11, MSRC_SERVER);

	ircd = &Chatd;

	hook_add_event("nick_group");
	hook_add_nick_group(nick_group);
	hook_add_event("nick_ungroup");
	hook_add_nick_ungroup(nick_ungroup);

	m->mflags = MODTYPE_CORE;

	pmodule_loaded = true;
}
示例#2
0
文件: bircd.c 项目: danopia/atheme
void _modinit(module_t * m)
{
	MODULE_TRY_REQUEST_DEPENDENCY(m, "protocol/p10-generic");

	/* Symbol relocation voodoo. */
	notice_channel_sts = &asuka_notice_channel_sts;
	wallchops = &asuka_wallchops;
	ircd_on_login = &asuka_on_login;
	ircd_on_logout = &asuka_on_logout;

	parse = &p10_parse;

	mode_list = asuka_mode_list;
	ignore_mode_list = asuka_ignore_mode_list;
	status_mode_list = asuka_status_mode_list;
	prefix_mode_list = asuka_prefix_mode_list;
	user_mode_list = asuka_user_mode_list;

	ircd = &Asuka;

	/* override these */
	pcommand_delete("N");
	pcommand_delete("M");
	pcommand_delete("OM");
	pcommand_add("N", m_nick, 2, MSRC_USER | MSRC_SERVER);
	pcommand_add("M", m_mode, 2, MSRC_USER | MSRC_SERVER);
	pcommand_add("OM", m_mode, 2, MSRC_USER); /* OPMODE, treat as MODE */

	m->mflags = MODTYPE_CORE;

	pmodule_loaded = true;
}
示例#3
0
文件: plexus.c 项目: danopia/atheme
void _modinit(module_t * m)
{
	MODULE_TRY_REQUEST_DEPENDENCY(m, "protocol/ts6-generic");

	/* Symbol relocation voodoo. */
	introduce_nick = &plexus_introduce_nick;
	ircd_on_login = &plexus_on_login;
	ircd_on_logout = &plexus_on_logout;
	sethost_sts = &plexus_sethost_sts;

	mode_list = plexus_mode_list;
	ignore_mode_list = plexus_ignore_mode_list;
	status_mode_list = plexus_status_mode_list;
	prefix_mode_list = plexus_prefix_mode_list;
	user_mode_list = plexus_user_mode_list;

	ircd = &PleXusIRCd;

	pcommand_delete("UID");
	pcommand_add("UID", m_uid, 11, MSRC_SERVER);

	hook_add_event("nick_group");
	hook_add_nick_group(nick_group);
	hook_add_event("nick_ungroup");
	hook_add_nick_ungroup(nick_ungroup);

	m->mflags = MODTYPE_CORE;

	pmodule_loaded = true;
}
示例#4
0
void _modinit(module_t * m)
{
    MODULE_TRY_REQUEST_DEPENDENCY(m, "protocol/bahamut");

    server_login = &ith_server_login;
    introduce_nick = &ithildin_introduce_nick;

    ignore_mode_list = ithildin_ignore_mode_list;
    ignore_mode_list_size = ARRAY_SIZE(ithildin_ignore_mode_list);

    ircd = &ithildin;

    pcommand_delete("NICK");
    pcommand_add("NICK", m_nick, 2, MSRC_USER | MSRC_SERVER);

    m->mflags = MODTYPE_CORE;

    pmodule_loaded = true;
}