summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--include/account.h102
-rw-r--r--include/anope.h110
-rw-r--r--include/bots.h20
-rw-r--r--include/channels.h19
-rw-r--r--include/commands.h24
-rw-r--r--include/config.h6
-rw-r--r--include/extensible.h85
-rw-r--r--include/memo.h14
-rw-r--r--include/modes.h113
-rw-r--r--include/modules.h8
-rw-r--r--include/protocol.h20
-rw-r--r--include/regchannel.h142
-rw-r--r--include/serialize.h1
-rw-r--r--include/servers.h32
-rw-r--r--include/sockets.h9
-rw-r--r--include/users.h14
-rw-r--r--modules/commands/bs_assign.cpp6
-rw-r--r--modules/commands/bs_bot.cpp4
-rw-r--r--modules/commands/bs_botlist.cpp4
-rw-r--r--modules/commands/bs_info.cpp36
-rw-r--r--modules/commands/bs_kick.cpp74
-rw-r--r--modules/commands/bs_set.cpp24
-rw-r--r--modules/commands/cs_akick.cpp28
-rw-r--r--modules/commands/cs_ban.cpp22
-rw-r--r--modules/commands/cs_clone.cpp14
-rw-r--r--modules/commands/cs_drop.cpp6
-rw-r--r--modules/commands/cs_enforce.cpp22
-rw-r--r--modules/commands/cs_getkey.cpp2
-rw-r--r--modules/commands/cs_info.cpp44
-rw-r--r--modules/commands/cs_kick.cpp8
-rw-r--r--modules/commands/cs_list.cpp10
-rw-r--r--modules/commands/cs_mode.cpp2
-rw-r--r--modules/commands/cs_register.cpp20
-rw-r--r--modules/commands/cs_seen.cpp6
-rw-r--r--modules/commands/cs_set.cpp78
-rw-r--r--modules/commands/cs_status.cpp4
-rw-r--r--modules/commands/cs_suspend.cpp112
-rw-r--r--modules/commands/cs_topic.cpp10
-rw-r--r--modules/commands/cs_updown.cpp4
-rw-r--r--modules/commands/help.cpp6
-rw-r--r--modules/commands/hs_off.cpp2
-rw-r--r--modules/commands/hs_on.cpp2
-rw-r--r--modules/commands/ms_cancel.cpp2
-rw-r--r--modules/commands/ms_check.cpp2
-rw-r--r--modules/commands/ms_info.cpp26
-rw-r--r--modules/commands/ms_list.cpp8
-rw-r--r--modules/commands/ms_read.cpp8
-rw-r--r--modules/commands/ms_rsend.cpp2
-rw-r--r--modules/commands/ms_set.cpp34
-rw-r--r--modules/commands/ns_access.cpp2
-rw-r--r--modules/commands/ns_ajoin.cpp20
-rw-r--r--modules/commands/ns_alist.cpp4
-rw-r--r--modules/commands/ns_cert.cpp6
-rw-r--r--modules/commands/ns_group.cpp18
-rw-r--r--modules/commands/ns_identify.cpp6
-rw-r--r--modules/commands/ns_info.cpp38
-rw-r--r--modules/commands/ns_list.cpp16
-rw-r--r--modules/commands/ns_logout.cpp2
-rw-r--r--modules/commands/ns_recover.cpp17
-rw-r--r--modules/commands/ns_register.cpp28
-rw-r--r--modules/commands/ns_resetpass.cpp4
-rw-r--r--modules/commands/ns_set.cpp65
-rw-r--r--modules/commands/ns_status.cpp2
-rw-r--r--modules/commands/ns_suspend.cpp108
-rw-r--r--modules/commands/ns_update.cpp2
-rw-r--r--modules/commands/os_chankill.cpp2
-rw-r--r--modules/commands/os_defcon.cpp53
-rw-r--r--modules/commands/os_dns.cpp4
-rw-r--r--modules/commands/os_forbid.cpp14
-rw-r--r--modules/commands/os_ignore.cpp4
-rw-r--r--modules/commands/os_jupe.cpp2
-rw-r--r--modules/commands/os_list.cpp26
-rw-r--r--modules/commands/os_login.cpp6
-rw-r--r--modules/commands/os_news.cpp4
-rw-r--r--modules/commands/os_noop.cpp8
-rw-r--r--modules/commands/os_oline.cpp2
-rw-r--r--modules/commands/os_sxline.cpp6
-rw-r--r--modules/database/db_flatfile.cpp16
-rw-r--r--modules/database/db_old.cpp90
-rw-r--r--modules/database/db_plain.cpp104
-rw-r--r--modules/extra/cs_statusupdate.cpp14
-rw-r--r--modules/extra/m_chanstats.cpp19
-rw-r--r--modules/extra/m_dnsbl.cpp2
-rw-r--r--modules/extra/m_helpchan.cpp6
-rw-r--r--modules/extra/m_proxyscan.cpp2
-rw-r--r--modules/extra/m_sql_oper.cpp4
-rw-r--r--modules/extra/m_ssl.cpp35
-rw-r--r--modules/extra/m_xmlrpc_main.cpp12
-rw-r--r--modules/extra/webcpanel/pages/chanserv/drop.cpp6
-rw-r--r--modules/extra/webcpanel/pages/chanserv/set.cpp70
-rw-r--r--modules/extra/webcpanel/pages/memoserv/memos.cpp10
-rw-r--r--modules/extra/webcpanel/pages/nickserv/alist.cpp4
-rw-r--r--modules/extra/webcpanel/pages/nickserv/info.cpp54
-rw-r--r--modules/protocol/bahamut.cpp54
-rw-r--r--modules/protocol/hybrid.cpp58
-rw-r--r--modules/protocol/inspircd11.cpp94
-rw-r--r--modules/protocol/inspircd12.cpp148
-rw-r--r--modules/protocol/inspircd20.cpp134
-rw-r--r--modules/protocol/ngircd.cpp76
-rw-r--r--modules/protocol/plexus.cpp52
-rw-r--r--modules/protocol/ratbox.cpp18
-rw-r--r--modules/protocol/unreal.cpp154
-rw-r--r--modules/pseudoclients/botserv.cpp26
-rw-r--r--modules/pseudoclients/chanserv.cpp8
-rw-r--r--modules/pseudoclients/global.cpp2
-rw-r--r--modules/pseudoclients/memoserv.cpp10
-rw-r--r--modules/pseudoclients/nickserv.cpp52
-rw-r--r--modules/pseudoclients/operserv.cpp14
-rw-r--r--src/bots.cpp29
-rw-r--r--src/channels.cpp127
-rw-r--r--src/command.cpp30
-rw-r--r--src/config.cpp82
-rw-r--r--src/extensible.cpp99
-rw-r--r--src/memos.cpp18
-rw-r--r--src/messages.cpp12
-rw-r--r--src/modes.cpp165
-rw-r--r--src/nickalias.cpp29
-rw-r--r--src/nickcore.cpp33
-rw-r--r--src/pipeengine.cpp14
-rw-r--r--src/protocol.cpp4
-rw-r--r--src/regchannel.cpp126
-rw-r--r--src/servers.cpp39
-rw-r--r--src/socket_clients.cpp16
-rw-r--r--src/socketengines/socketengine_epoll.cpp21
-rw-r--r--src/sockets.cpp28
-rw-r--r--src/threadengine.cpp4
-rw-r--r--src/uplink.cpp8
-rw-r--r--src/users.cpp94
128 files changed, 1855 insertions, 2291 deletions
diff --git a/include/account.h b/include/account.h
index a44bd22d4..c3d5800b4 100644
--- a/include/account.h
+++ b/include/account.h
@@ -25,79 +25,19 @@ typedef Anope::hash_map<NickCore *> nickcore_map;
extern CoreExport Serialize::Checker<nickalias_map> NickAliasList;
extern CoreExport Serialize::Checker<nickcore_map> NickCoreList;
-/** Flags set on NickAliases
- */
-enum NickNameFlag
-{
- NS_BEGIN,
-
- /* Nick never expires */
- NS_NO_EXPIRE,
- /* This nick is being held after a kill by an enforcer client
- * or is being SVSHeld. Used by ns_release to determin if something
- * should be allowed to be released
- */
- NS_HELD,
- /* We are taking over this nick, either by SVSNICK or KILL.
- * We are waiting for the confirmation of either of these actions to
- * proceed. This is checked in NickAlias::OnCancel
- */
- NS_COLLIDED,
-
- NS_END
-};
-
-/** Flags set on NickCores
- */
-enum NickCoreFlag
-{
- NI_BEGIN,
-
- /* Kill others who take this nick */
- NI_KILLPROTECT,
- /* Dont recognize unless IDENTIFIED */
- NI_SECURE,
- /* Use PRIVMSG instead of NOTICE */
- NI_MSG,
- /* Don't allow user to change memo limit */
- NI_MEMO_HARDMAX,
- /* Notify of memos at signon and un-away */
- NI_MEMO_SIGNON,
- /* Notify of new memos when sent */
- NI_MEMO_RECEIVE,
- /* Don't show in LIST to non-servadmins */
- NI_PRIVATE,
- /* Don't show email in INFO */
- NI_HIDE_EMAIL,
- /* Don't show last seen address in INFO */
- NI_HIDE_MASK,
- /* Don't show last quit message in INFO */
- NI_HIDE_QUIT,
- /* Kill in 20 seconds instead of in 60 */
- NI_KILL_QUICK,
- /* Kill immediatly */
- NI_KILL_IMMED,
- /* User gets email on memo */
- NI_MEMO_MAIL,
- /* Don't show services access status */
- NI_HIDE_STATUS,
- /* Nickname is suspended */
- NI_SUSPENDED,
- /* Autoop nickname in channels */
- NI_AUTOOP,
- /* If set means the nick core does not have their email addrses confirmed.
- */
- NI_UNCONFIRMED,
- /* Chanstats are enabled for this user */
- NI_STATS,
-
- NI_END
-};
-
/* A registered nickname.
* It matters that Base is here before Extensible (it is inherited by Serializable)
+ *
+ * Possible flags:
+ * NO_EXPIRE - Nick never expires
+ * HELD - This nick is being held after a kill by an enforcer client
+ * or is being SVSHeld.
+ * COLLIDED - We are taking over this nick, either by SVSNICK or KILL
+ * and are waiting for the confirmation of either of these actions to
+ * proceed. This is checked in NickAlias::OnCancel
+ *
*/
-class CoreExport NickAlias : public Serializable, public Extensible, public Flags<NickNameFlag>
+class CoreExport NickAlias : public Serializable, public Extensible
{
Anope::string vhost_ident, vhost_host, vhost_creator;
time_t vhost_created;
@@ -184,8 +124,28 @@ class CoreExport NickAlias : public Serializable, public Extensible, public Flag
/* A registered account. Each account must have a NickAlias with the same nick as the
* account's display.
* It matters that Base is here before Extensible (it is inherited by Serializable)
+ *
+ * Possible flags:
+ * KILLPROTECT - Kill other users who try to take this nick
+ * SECURE - Don't recognize unless identified
+ * MSG - Use PRIVMSG instead of notice
+ * MEMO_HARDMAX - Don't allow user to change memo limit
+ * MEMO_SIGNON - Notify of memos at signon and unaway
+ * MEMO_RECEIEVE - Notify of new memos when sent
+ * PRIVATE - Don't show in LIST to non-servadmins
+ * HIDE_EMAIL - Don't show email in INFO
+ * HIDE_MASK - Don't show last seen address in INFO
+ * HIDE_QUIT - Don't show last quit message in INFO
+ * KILL_QUICK - Kill quicker
+ * KILL_IMMED - Kill immediately
+ * MEMO_MAIL - User gets email on