1
0
mirror of https://github.com/anope/anope.git synced 2026-07-07 06:53:13 +02:00

Compare commits

...

208 Commits

Author SHA1 Message Date
Adam 0574de2d22 Anope 2.0.6 Release 2017-12-11 11:46:10 -05:00
Adam c9c53dbe61 Add README.md, for github 2017-11-19 17:28:05 -05:00
Adam a084245822 README: remove some outdated links 2017-11-19 17:28:05 -05:00
Robby 77e3f062da Update the dutch language file. 2017-11-17 23:56:15 +01:00
Adam 8bb3067e42 Update Changes and Changes.conf 2017-10-12 19:58:02 -04:00
Adam 0c469abe4a Call OnDelChan prior to unsetting extensibles
cs_set uses this to set -P on permanent channels if they are persistent.

Also move similar event in nickcore/nickalias destruction
2017-10-12 19:37:06 -04:00
Adam d63e32a579 No longer try to create persistent channels on the fly
Change initial channel creation to on post init so it will be part of
the burst.
2017-10-12 19:30:48 -04:00
Adam f13c450b93 Add post init event 2017-10-12 19:28:34 -04:00
Adam e95c07291a unreal4: send sjoin with empty users in SendChannel 2017-10-12 19:28:12 -04:00
Adam 2963fc0a1d unreal4: send modes in sjoin 2017-10-12 19:27:51 -04:00
Adam 5d309d46e1 plexus: fix overriding SendSVSLogin 2017-10-10 21:19:23 -04:00
Adam 2e7fcd3098 Merge pull request #199 from syzop/2.0+unrealsaslmechs
Advertise SASL mechanisms to UnrealIRCd servers.
2017-10-09 11:29:55 -04:00
Adam 884759aed4 Merge pull request #200 from syzop/2.0+saslbydefault
Load sasl module by default.
2017-10-09 11:23:09 -04:00
Bram Matthys 2ec65023a6 Load sasl module by default. 2017-10-09 10:31:21 +02:00
Bram Matthys 0093f3fa44 Advertise SASL mechanisms to UnrealIRCd servers. 2017-10-09 10:22:50 +02:00
Adam 2ad76278dd Use full path to file for conf.cpp file could not be opened error message 2017-08-05 18:31:57 -04:00
Tim Gunter 23e59d9f2c Allow calls to XMLRPC to impersonate supplied user, if online 2017-07-28 09:08:40 -04:00
Adam 3cb9e0b97c m_xmlrpc: fix incorrect string find usage 2017-07-24 20:30:34 -04:00
Adam 0b7b6d9d6d ns_group: don't require a user to group 2017-07-24 10:04:07 -04:00
Adam 56e6efbe8f Default require_oper to true. Fixes os_oper unserializer because it doesn't set it. 2017-07-02 18:03:36 -04:00
Adam feed624cdc webcpanel: rate limit login attempts 2017-06-05 18:44:48 -04:00
Adam 1a6f42b994 webcpanel: escape values in template_fileserver
Remove other escapes to prevent double escape.

Not all replaced values were escaped, such as replies from commands.
2017-06-05 10:11:22 -04:00
Adam 04f49225c9 httputils: escape ampersand too 2017-06-05 10:10:58 -04:00
Adam b18d1a69b6 Merge pull request #174 from Techman-/2.0+inspsasl
InspIRCd: Send CHGIDENT/CHGHOST on SVSLOGIN
2017-05-27 12:29:12 -04:00
Adam 0ace685597 Merge pull request #188 from key2peace/2.0
IPv6 support for m_dnsbl and sockaddrs::reverse()
2017-05-27 09:58:34 -04:00
Alexander Maassen bfcfd0b727 Moved m_dns's reverse ip method to sockaddrs::reverse().
Updated m_dnsbl to support ipv6.
2017-05-27 09:56:18 -04:00
Adam 087f1cb359 m_dnsbl: fix exempts, allow cidrs, default exempt 127.0.0.0/8 2017-05-17 08:51:57 -04:00
Adam 010d20198e m_regex_posix: use REG_ICASE 2017-03-30 19:10:31 -04:00
Adam 953e804231 example.conf: disable regexengine directive by default 2017-03-30 17:02:36 -04:00
Adam c656fe0694 regchannel: fix compile warning from previous commit 2017-03-27 22:25:49 -04:00
Adam fb3ec7a897 cs_akick: don't show channel doesn't exist message in enforce from adding akicks 2017-03-27 21:41:35 -04:00
Adam 274658f955 Fix autokick destructor to properly remove channel references from accounts 2017-03-27 21:14:32 -04:00
Adam 7621306f4b example.conf: update to reflect deprecated status of older encryption modules 2017-03-26 18:34:03 -04:00
Adam b804867105 Remove weird warning in nickserv help which for some reason assumes admins' abuse policies 2017-03-23 20:05:09 -04:00
Adam f8f1550c31 Merge pull request #187 from miwob/new-mode
Add channel mode 'u', and 'L' to hybrid protocol module; Remove usele…
2017-03-19 18:56:06 -04:00
Adam 0fcc66711b m_sasl: pass module to logger 2017-03-19 18:55:32 -04:00
Adam 8d9574e306 readme: change minimum supported hybrid version to 8.2 2017-03-19 18:55:19 -04:00
miwob 6cb17c734c Add channel mode 'u', and 'L' to hybrid protocol module; Remove useless CAPABs that are mandatory for some years now. 2017-03-19 12:02:22 +01:00
Adam 3545e8e383 Fix ns_keep_modes default option in nickserv.conf 2017-03-18 15:30:17 -04:00
Adam 3c18e02b0b logger.cpp: fix variable shadow warning 2017-03-16 21:37:34 -04:00
Adam b831cd8a36 Include ip for web clients in command log messages for source 2017-03-16 20:23:57 -04:00
Adam 516ab164f6 redis: check for socket errors when loading database on startup 2017-03-16 20:13:56 -04:00
Adam b2d028533d cs_xop: fix showing alternative access methods in help 2017-03-15 21:44:05 -04:00
Adam a88d9cb1f0 modes.cpp: correct usage of format string passed to SendMode 2017-03-08 19:58:25 -05:00
Adam b57ef5d2c7 db_redis: don't crash if destroying an object with no type 2017-03-08 16:23:30 -05:00
Adam 1a96390826 unreal4: set +xt on chghost as unreal does 2017-03-01 17:44:05 -05:00
Adam 60339edf40 cs_set: don't lower ts from own clients joining 2017-02-21 14:44:33 -05:00
Adam 6990c692d6 Unwrap list modes too in cs_mode, and fix clear on virtual modes to show an error 2017-02-21 12:36:59 -05:00
Adam 98e62b4032 Fix logging in cs_mode set 2017-02-21 12:35:51 -05:00
Adam a1d7d42d6a Unwrap mode changes in RemoveMode before checking if it is set, fixes os_mode not being able to remove extbans etc 2017-02-21 12:35:20 -05:00
Adam 3f7c0829ef os_forbid: match forbids exact on add/del 2017-02-21 09:59:10 -05:00
Adam 46d8af781d Verify configured servername and uplink password are valid 2017-02-21 08:19:03 -05:00
Adam 67b7c8bd7d os_logsearch: fix quick match 2017-02-12 16:46:13 -05:00
Adam 21486e2c81 Merge pull request #185 from fallen/2.0
Update French language file
2017-02-06 14:20:40 -05:00
Adam 29ac40b584 ns_set_misc/cs_set_misc: send syntax help too 2017-02-06 14:06:55 -05:00
Adam dde444ed0e protocol/inspircd12: set +x on /hs off 2017-02-06 13:15:01 -05:00
Adam 9b6c209c80 bs_badwords: allow opers with botserv/administration to list/clear badwords too 2017-02-04 20:21:40 -05:00
Yann Sionneau 3c7d67c8cd Update French language file
- translate "nick" to "pseudo"
- remove "XOP" arg from set secureops
2017-02-04 23:47:05 +01:00
Adam c730291762 logger: some log events rely on empty sources 2017-01-23 08:03:51 -05:00
Adam c593661f40 Anope 2.0.6-git 2017-01-22 17:04:20 -05:00
Adam a9bf251886 Anope 2.0.5 Release 2017-01-22 16:09:36 -05:00
Adam beac29b1d0 m_sasl: don't allow logging into unconfirmed accounts 2017-01-22 16:00:06 -05:00
Adam 35d6437d45 Remove old language strings from lang files 2017-01-20 09:45:25 -05:00
Robby 76ce8ece1a Cleanup some excess whitespaces and tabs, and fix a few typos along the way. 2017-01-17 05:03:25 +01:00
Adam 464093d36e Regenerate language files 2017-01-16 18:59:30 -05:00
Adam 71bb3fefcc Update Changes 2017-01-16 18:58:30 -05:00
Adam 1f6f9f5dbb Revert "Remove efnetrbl from example dnsbl configuration" 2017-01-16 18:45:08 -05:00
Adam 34bf21f7d1 Correct a couple expiry time checks from DoTime() 2017-01-16 18:42:29 -05:00
Adam 847dfd9523 Merge pull request #182 from genius3000/2.0+protocol_match_name
protocol/inspircd: Match servername as well on ENCAP
2017-01-16 18:33:09 -05:00
Adam a96e40e249 Merge pull request #183 from SaberUK/2.0+cmake
Don't give misleading instructions when running CMake fails.
2017-01-16 18:32:34 -05:00
Robby 8656b65e39 Update copyright to 2017.
This was done with:
find docs/ include/ language/ modules/ src/ *.* Config -exec sed -i 's/-20.. Anope Team/-2017 Anope Team/i' {} \;

Added missing copyright headers to files that didn't have it yet.
2017-01-16 03:13:25 +01:00
Robby 39422beaef Update the dutch language file. 2017-01-14 02:57:44 +01:00
Peter Powell 6d29538346 Don't give misleading instructions when running CMake fails. 2017-01-13 22:02:00 +00:00
Adam bdf4650ff8 m_dnsbl: widen allowed reply range to 127.0.0.0/8 2017-01-12 13:26:29 -05:00
Adam 074bde5ccc db_sql: run table creation queries during import synchronously too 2017-01-11 20:44:55 -05:00
Adam a4f7d847ab unreal4: use SENDUMODE instead of GLOBOPS 2017-01-11 20:42:20 -05:00
Adam 5beb338247 Remove efnetrbl from example dnsbl configuration 2017-01-08 15:48:54 -05:00
Adam 7b1154de69 ns_register: notify users of unconfirmed accounts on register when there is no user too 2017-01-08 13:08:04 -05:00
Adam 46aeb8b70b os_list: show number of channels listed, too 2017-01-07 18:09:14 -05:00
Adam fe6271dffb ngircd: move metadata non-exietent user log message to debug 2017-01-07 18:04:07 -05:00
Adam 7cede5bb60 os_list: also allow patterns in nick!user@host#realname form 2017-01-07 18:03:53 -05:00
Adam 2b7f0084b7 Move log messages for status mode change for unknown user to debug 2016-12-22 20:59:04 -05:00
Adam ec7ce09ef4 Make User::Mask behave more like 1.8 2016-12-22 20:52:43 -05:00
Adam 574c8dfbc7 Fix previous commit, deleting sessions removes it from the map which invalidates the reference 2016-12-21 10:35:57 -05:00
Adam 4381031994 m_sasl: log hostname/ip, if provided 2016-12-19 19:03:10 -05:00
Adam b3010c3c6b logger: log source nick if there is no user or account 2016-12-15 08:24:40 -05:00
Adam d092f5e7c8 Fix detecting if chghost/chgident is loaded on inspircd and don't send them unless they are 2016-12-11 09:43:22 -05:00
Adam 358f46b8ae Fix setting kill quick in webcpanel 2016-12-11 09:34:37 -05:00
Adam e5125c2c84 Allow nonconfirmed opers to confirm accounts 2016-12-11 09:24:52 -05:00
Adam 65db59b3ec Remove unnecessary functions from ngircd that duplicate the default behavior, fix a few typos in comments 2016-12-10 23:28:50 -05:00
Adam 95cd7a6aee inspircd12: fix mode handler to handle opers changing other users umodes correctly 2016-12-01 19:10:46 -05:00
Adam 12515fd2c1 cs_access: fix typo 2016-12-01 19:08:39 -05:00
Adam 437a6dbb29 os_logsearch: optimize non wildcard searches, allow regex 2016-11-22 19:44:25 -05:00
Adam d96ca9b824 os_logsearch: add a hard max limit and make the limiter smarter 2016-11-22 19:35:11 -05:00
genius3000 aefde6e44d protocol/inspircd: Match servername as well on ENCAP 2016-11-22 02:26:41 -07:00
Adam 23a0628fba db_old: convert languages to UTF-8 encoded version 2016-11-11 13:30:22 -05:00
Adam ef9c69f99d Don't apply secureops to users with chanserv/administration privilege, not protected 2016-11-05 12:06:26 -04:00
Adam 8be331618c ns_group: allow userless execution 2016-11-05 11:07:02 -04:00
Adam a5fdf7c546 irc2sql: fix changing status modes to update ison modes 2016-11-05 10:36:28 -04:00
Adam dba19d839a cs_access: fix negative access to apply to the -1/0 special casing 2016-11-05 10:35:47 -04:00
Adam 7453c71c00 irc2sql: fix crash on shutdown with no sql 2016-11-05 10:34:25 -04:00
Adam f09ea316dd irc2sql: update max topic len to 512 2016-11-05 10:34:09 -04:00
Adam ac0f3c5ccf m_mysql: null empty columns instead of setting to '' 2016-11-04 22:56:15 -04:00
Adam 76ea111980 irc2sql: fix a couple SQL errors 2016-11-04 22:07:00 -04:00
Adam 9f9183afc4 help: always use command name from config, which may be a different case 2016-11-03 23:23:57 -04:00
Adam ef32505633 dns: set error to REFUSED when there are no answers 2016-11-03 23:15:07 -04:00
Adam 304494322f Don't apply secureops to protected users 2016-11-03 23:08:49 -04:00
Adam 9e510cd0d9 Fix userless /ns set email, #1689 2016-11-03 23:04:22 -04:00
Adam 0f49d1051a Don't try to include files with empty paths 2016-11-03 22:58:50 -04:00
Adam 4b97a9b13f Fix crash loading enc_old prior to the proto mods 2016-11-03 22:54:35 -04:00
Adam 07f72a3122 os_list: fix regex matching 2016-10-25 14:35:36 -04:00
Adam f4543edfe2 plexus: add noop and sasl support 2016-10-16 18:52:40 -04:00
Adam 095751363d db_sql: don't update objects pending creation as it duplicates it 2016-10-16 18:51:58 -04:00
Adam 1b67b97e93 ns_maxemail: equals_ci for comparing emails 2016-10-06 14:59:22 -04:00
Adam d4bf0957d1 inspircd20: specifially add channel modes official-join and operprefix as status modes, sometimes they are sent in CAPAB without a status prefix which causes them to be added as parameter modes 2016-10-04 21:45:45 -04:00
Adam 99acdcf168 cs_mode: check chanserv privilege too for status modes on set 2016-10-04 21:28:43 -04:00
Adam e95950ee26 cs_mode: make override logging of mode set more reliable 2016-10-04 21:13:43 -04:00
Adam fc0171fb40 memoserv: always use display for memo source 2016-09-30 21:03:35 -04:00
Adam 1c82697ccb Revert "Always use display for memo source"
This reverts commit d8a945b1a6.
2016-09-30 20:52:38 -04:00
AlphaTech f3bb46a9f5 MemoServ - Read All 2016-09-25 17:27:30 -04:00
Michael Hazell 3b62c8f3e2 InspIRCd: Send CHGIDENT/CHGHOST on SVSLOGIN 2016-09-25 14:50:03 -04:00
Adam 4d054aa2b2 Merge pull request #173 from genius3000/2.0-remove-expiretimeout-cs_seen
Thanks
2016-09-25 14:38:16 -04:00
Adam 3a8ff5d456 Merge pull request #177 from attilamolnar/2.0+sqliteleak
m_sqlite: Fix possible memory leak when opening a database fails
2016-09-25 14:37:01 -04:00
Adam 0b783b66a4 Merge pull request #178 from Techman-/2.0+resv
Thanks
2016-09-25 14:36:46 -04:00
Adam 0c7050c506 Merge pull request #175 from genius3000/2.0-email-date_header
Added a Date field to the Header
2016-09-25 14:35:43 -04:00
Adam d02b3c1c45 Merge pull request #176 from Alef-Burzmali/2.0+update-fr2
Thanks
2016-09-25 14:33:49 -04:00
Adam d8a945b1a6 Always use display for memo source 2016-09-14 17:24:06 -04:00
Adam b50fbec705 cs_seen: allow unregistered users to use 2016-09-13 12:36:48 -04:00
Adam d488efdcfe ms_cancel: cleanup, consider accounts by equiality instead of sender name to account name 2016-09-06 14:46:19 -04:00
Adam 13c5eec00a m_ssl_openssl: allow certificate chain files to be used 2016-09-05 10:41:52 -04:00
Michael Hazell 39eb9f8cfc ratbox: fix RESVs
Also, enable channel support because it wasn't specified already and point charybdis to these methods instead.
2016-09-04 04:05:11 -04:00
Thomas Fargeix 83c2f8e970 Update French language file. 2016-08-19 21:33:57 +02:00
genius3000 e23cf0c221 Added a Date field to the Header 2016-08-17 10:22:44 -06:00
Attila Molnar de174149f7 m_sqlite: Fix possible memory leak when opening a database fails 2016-08-17 14:09:05 +02:00
genius3000 663e79e4d3 Remove 'expiretimeout' from chanserv.example.conf
As seen within this commit: https://github.com/anope/anope/commit/22658d63bdb1e52a66f4514af45fa55ca5891345
'expiretimeout' is no longer set within cs_seen and I can't see it used elsewhere to be needed in the config.
2016-08-08 23:39:19 -06:00
Adam 2a5e7827bd Merge pull request #172 from bonnedav/patch-1
Thanks
2016-08-08 09:34:14 -04:00
bonnedav 9c0b843665 Remove unused commands from oper config. 2016-08-08 02:41:42 -06:00
Adam 8fdfa6e094 Fix #1684 more, can have non-user sources for encap sasl 2016-07-25 22:27:30 -04:00
Adam dad4be050b cs_xop: remove unused code 2016-07-25 19:35:19 -04:00
Adam 937b0e7185 db_old: fix warnings 2016-07-25 19:34:59 -04:00
Adam db4f38bcf5 Bump for 2.0.5-git 2016-07-23 17:37:05 -04:00
Adam c2e09fdaea Anope 2.0.4 Release 2016-07-23 16:26:14 -04:00
Adam 01768bc73e Update Changes.conf 2016-07-23 16:25:37 -04:00
Adam c18eedec18 ns_set: clear last modes before unserializing them 2016-07-23 16:20:54 -04:00
Adam 0e0615c6fe Note Windows installer fixes in changelog 2016-07-23 16:17:33 -04:00
Adam 5bd3fde79b cs_set: clear last modes before unserializing them 2016-07-23 16:17:21 -04:00
Adam 647f8cd4e6 Add/fix various checks on source user existing in the protocol modules 2016-07-23 15:47:33 -04:00
Adam b2e25db159 Merge pull request #171 from Techman-/2.0+charybdis-resv-fixes
charybdis.cpp: Properly support RESVs
2016-07-23 15:38:26 -04:00
Adam 9f9371531d Fix making directories from the Windows installer 2016-07-23 15:22:54 -04:00
Michael Hazell b578ed2544 charybdis.cpp: Properly support RESVs
Properly support RESV and UNRESV in Charybdis, and improve RESV setting for pseudoclients when bursting.
2016-07-21 23:27:20 -04:00
Adam 0a7f167060 m_dns: accept unpacking the root domain, and don't consider exceptions from nameserver/additional record unpacking as fatal to query parsing 2016-07-19 21:17:58 -04:00
Adam d427772bd3 os_defcon: find module by name, it might not be loaded yet 2016-07-10 20:51:03 -04:00
Robby b2d670298b Update the dutch language file. 2016-07-07 16:07:24 +02:00
Adam 6b646fa1f8 Update Changes 2016-07-03 13:57:11 -04:00
Adam 72269c44e5 Merge pull request #170 from Zoddo/charybdis/join0
Thanks
2016-07-03 13:47:49 -04:00
Adam 3b2366e4ba Merge pull request #169 from SaberUK/2.0+which
Use "cmake --version" instead of "which cmake" to detect CMake.
2016-07-03 13:46:41 -04:00
Adam 257a8a9a24 ns_maxemail: optionally remove gmail aliases 2016-07-03 13:42:18 -04:00
Adam 7a1d2e11dd chankill: don't add duplicate akills 2016-07-03 13:31:12 -04:00
Adam 8dc687b657 #1682: store aftype with masks and include cidrs in GetNUHMask 2016-07-03 13:29:27 -04:00
Adam 18fc113984 #1681 update last realname always on signon 2016-07-03 13:06:06 -04:00
Adam 20c1a5d638 #1680: fix Anope::Duration with one year durations 2016-07-03 12:42:16 -04:00
Adam 8000ae0c0f #1677 apply sqlines even if the ircd doesn't on non opers 2016-07-03 12:36:34 -04:00
Adam 284d95bfe2 #1675: fix saset display to update the account name on the correct clients 2016-07-03 12:27:01 -04:00
Adam c7d5ee4bec Fix /ns confirm to set +r/accounts when appropriate 2016-07-03 12:17:44 -04:00
Adam 4c4cc0ded7 Fix xmlrpc notice call to return something to prevent m_xmlrpc from thinking it is a http 404 2016-07-03 12:08:21 -04:00
Adam 83f89bfece Clarify botserv repeat kicker message and allow setting repeat times to 1 2016-06-25 13:04:32 -04:00
Adam 7cf4245359 Enable -fno-delete-null-pointer-checks on GCC 6 2016-06-22 20:20:28 -04:00
Zoddo 9284441491 Handle /join 0 for ratbox & charybdis 2016-06-02 12:23:26 +02:00
Peter Powell 7592a6981b Use "cmake --version" instead of "which cmake" to detect CMake. 2016-05-21 17:54:33 +01:00
Adam 56b158ea43 Fix handling nick introduction collisions on unreal4 2016-05-20 21:18:34 -04:00
Adam 0143dafe51 Merge pull request #165 from sketchni/patch-1
Add the notice method to XMLRPC.
2016-04-22 10:17:41 -05:00
Adam a2dbcc620e Merge pull request #166 from jmdh/2.0-reproducible
Optionally strip variable build date from compiled program
2016-04-22 10:17:11 -05:00
Adam 9b5fdea8f2 Fix randomnews to work when there are more than newscount random news 2016-04-22 11:15:42 -04:00
Dominic Hargreaves fab07d6b75 Optionally strip variable build date from compiled program
To aid build reproducibility, don't include the build date/time if
-DREPRODUCIBLE_BUILD is defined.

Based on the patch provided by Alexis BienvenĂĽe in the Debian report.

Bug-Debian: https://bugs.debian.org/820152
Patch-Name: reproducible_datetime.diff
2016-04-21 23:08:12 +01:00
Sketch 1d198da436 Add the notice method to XMLRPC. 2016-04-20 15:41:23 +01:00
Adam 8b6e17fe7e Change access check in cs_updown to not allow actions on users with equal access 2016-04-16 18:14:23 -04:00
Adam 86484b6c2b Merge pull request #164 from SaberUK/2.0+extras
Remove references to cmake-bin which was removed ages ago.
2016-04-16 16:59:21 -05:00
Adam c14ae99d32 Merge pull request #163 from Zoddo/fix_sasl_reauth
Send new account name to the IRCd on SASL reauth
2016-04-16 16:59:00 -05:00
Adam cb0cda2f8d Missed channel deletion in ~ChannelInfo 2016-04-16 18:00:47 -04:00
Peter Powell 2af363755a Remove references to cmake-bin which was removed ages ago. 2016-04-16 13:05:44 +01:00
Zoddo 753b8dc989 Send new account name to the IRCd on SASL reauth 2016-04-15 10:49:30 +02:00
Adam d2ea1e7917 Merge pull request #160 from Zoddo/charybdis/fix_euid
Fix host on charybdis if there is no vhost
2016-04-14 19:18:14 -05:00
Adam a8f66578b1 Merge pull request #161 from Zoddo/charybdis/vhost_svslogin
Send vident/vhost in SVSLOGIN with SASL
2016-04-14 19:17:39 -05:00
Adam ca39aeb554 Merge pull request #162 from SaberUK/2.0+sasl
Remove support for DH-AES and DH-BLOWFISH.
2016-04-14 19:16:56 -05:00
Adam a941f9bde0 Remove memos from memoinfo more reliably 2016-04-14 20:15:53 -04:00
Peter Powell f4f6787c9c Remove support for DH-AES and DH-BLOWFISH.
These SASL mechanisms are considered insecure and should not be
used anymore.
2016-04-13 20:26:50 +01:00
Zoddo 82816cb206 Send vident/vhost in SVSLOGIN with SASL
Only charybdis seems to support that for the moment.
2016-04-10 18:24:25 +02:00
Zoddo 58f0c8c612 Fix host on charybdis if there is no vhost 2016-04-10 17:53:53 +02:00
Adam 21e1913c0f Fix subtle typo in command initializer list 2016-04-05 16:01:16 -04:00
Adam 79e7c3f98a Also defer channel deletion when processing sjoins 2016-03-19 16:21:40 -04:00
Adam 72127e1b00 Merge pull request #159 from Diftraku/2.0
proto/charybdis: Add support for MECHLIST
2016-03-17 17:15:56 -05:00
Toni Kaija ed47588087 proto/charybdis: Add support for MECHLIST 2016-03-17 15:13:11 +02:00
Adam 448967cefc Merge pull request #156 from SaberUK/2.0+sasl-mechlist
Implement support for SASL 3.2 mechanism lists.
2016-03-15 17:41:48 -05:00
Adam 979027138b Merge pull request #155 from SaberUK/2.0+sasl-reauth
Fix logging into accounts with SASL on servers that support reauth.
2016-03-15 17:40:26 -05:00
Robby 176e0e4f37 Update the dutch language file. 2016-03-09 22:42:45 +01:00
Adam b431d4dccf cs_clone: don't clone registered time 2016-03-08 19:49:30 -05:00
Adam 1b12b80b48 language: incrementing _nl_msg_cat_cntr is still required on some systems apparently (freebsd 10?). I don't know why. 2016-03-08 19:47:06 -05:00
Peter Powell 52fdc45597 Implement support for SASL 3.2 mechanism lists. 2016-02-28 16:36:43 +00:00
Peter Powell 91762524e2 Fix logging into accounts with SASL on servers that support reauth. 2016-02-28 13:22:19 +00:00
Adam 413b38b1c1 Fail sasl external auth immediately if cert is empty 2016-02-13 18:25:04 -05:00
Adam ecdccd6ad6 And use account here, user might be null 2016-02-13 18:19:47 -05:00
Adam e0fd118b3e Fix access path changes in ns_alist from earlier 2016-02-13 18:11:03 -05:00
Adam c10d7bdada Update chanserv secure help to reflect more accurately what it does 2016-02-13 14:41:23 -05:00
Adam 4e2ca31cf5 Rewrite access path system to be simplier and use recursion
Show where access is "from" in chanserv/status
2016-02-13 14:16:29 -05:00
Adam addd2a1987 Correct umode +I change in Changelog, is for unreal 2016-02-11 08:36:12 -05:00
Adam 4071487f80 Merge pull request #154 from SaberUK/2.0+inspfix
Fix a low risk privilege escalation exploit on InspIRCd with m_autoop.
2016-02-11 07:03:55 -06:00
Peter Powell 9c17c2d818 Fix a privilege escalation exploit on InspIRCd with m_autoop. 2016-02-10 08:56:23 +00:00
Adam dd9fcca45d Anope 2.0.4-git 2016-01-30 18:50:28 -05:00
378 changed files with 11899 additions and 11350 deletions
+17 -9
View File
@@ -45,20 +45,20 @@ if(MINOR_VERSION GREATER 5)
set(CMAKE242_OR_BETTER TRUE) set(CMAKE242_OR_BETTER TRUE)
else(MINOR_VERSION GREATER 5) else(MINOR_VERSION GREATER 5)
set(CMAKE26_OR_BETTER FALSE) set(CMAKE26_OR_BETTER FALSE)
# Also detect if we are using CMake 2.4.8 or better, the FIND sub-command of list() is non-existent in earlier versions # Also detect if we are using CMake 2.4.8 or better, the FIND sub-command of list() is nonexistent in earlier versions
if(PATCH_VERSION GREATER 7) if(PATCH_VERSION GREATER 7)
set(CMAKE248_OR_BETTER TRUE) set(CMAKE248_OR_BETTER TRUE)
set(CMAKE244_OR_BETTER TRUE) set(CMAKE244_OR_BETTER TRUE)
set(CMAKE242_OR_BETTER TRUE) set(CMAKE242_OR_BETTER TRUE)
else(PATCH_VERSION GREATER 7) else(PATCH_VERSION GREATER 7)
set(CMAKE248_OR_BETTER FALSE) set(CMAKE248_OR_BETTER FALSE)
# Also detect if we are using CMake 2.4.4 or better, the CheckCXXCompilerFlag module and SORT sub-command of list() are non-existent in earlier versions # Also detect if we are using CMake 2.4.4 or better, the CheckCXXCompilerFlag module and SORT sub-command of list() are nonexistent in earlier versions
if(PATCH_VERSION GREATER 3) if(PATCH_VERSION GREATER 3)
set(CMAKE244_OR_BETTER TRUE) set(CMAKE244_OR_BETTER TRUE)
set(CMAKE242_OR_BETTER TRUE) set(CMAKE242_OR_BETTER TRUE)
else(PATCH_VERSION GREATER 3) else(PATCH_VERSION GREATER 3)
set(CMAKE244_OR_BETTER FALSE) set(CMAKE244_OR_BETTER FALSE)
# ALSO detect if we are using CMake 2.4.2 or better, the APPEND sub-command of list() is non-existent in earlier versions # ALSO detect if we are using CMake 2.4.2 or better, the APPEND sub-command of list() is nonexistent in earlier versions
if(PATCH_VERSION GREATER 1) if(PATCH_VERSION GREATER 1)
set(CMAKE242_OR_BETTER TRUE) set(CMAKE242_OR_BETTER TRUE)
else(PATCH_VERSION GREATER 1) else(PATCH_VERSION GREATER 1)
@@ -87,6 +87,9 @@ if(CMAKE_COMPILER_IS_GNUCXX)
if(GCC_VERSION LESS 4.2) if(GCC_VERSION LESS 4.2)
message(FATAL_ERROR "Your compiler is too old to build Anope. Upgrade to GCC 4.2 or newer!") message(FATAL_ERROR "Your compiler is too old to build Anope. Upgrade to GCC 4.2 or newer!")
endif(GCC_VERSION LESS 4.2) endif(GCC_VERSION LESS 4.2)
if(GCC_VERSION GREATER 6.0 OR GCC_VERSION EQUAL 6.0)
set(CXXFLAGS "${CXXFLAGS} -fno-delete-null-pointer-checks")
endif(GCC_VERSION GREATER 6.0 OR GCC_VERSION EQUAL 6.0)
endif(CMAKE_COMPILER_IS_GNUCXX) endif(CMAKE_COMPILER_IS_GNUCXX)
# If we are using a GNU compiler (have to use CXX because it seems to fail on C), we will be able to determine it's default paths for libraries and includes # If we are using a GNU compiler (have to use CXX because it seems to fail on C), we will be able to determine it's default paths for libraries and includes
@@ -239,6 +242,11 @@ option(USE_PCH "Use precompiled headers" OFF)
# source include directory so the precompiled headers work correctly. # source include directory so the precompiled headers work correctly.
include_directories(${Anope_BINARY_DIR}/include ${Anope_SOURCE_DIR}/include ${Anope_BINARY_DIR}/language ${Anope_SOURCE_DIR}/modules/pseudoclients) include_directories(${Anope_BINARY_DIR}/include ${Anope_SOURCE_DIR}/include ${Anope_BINARY_DIR}/language ${Anope_SOURCE_DIR}/modules/pseudoclients)
# Pass on REPRODUCIBLE_BUILD
if(REPRODUCIBLE_BUILD)
add_definitions(-DREPRODUCIBLE_BUILD)
endif(REPRODUCIBLE_BUILD)
# If using Windows, always add the _WIN32 define # If using Windows, always add the _WIN32 define
if(WIN32) if(WIN32)
add_definitions(-D_WIN32) add_definitions(-D_WIN32)
@@ -481,16 +489,16 @@ get_target_property(SERVICES_BINARY ${PROGRAM_NAME} LOCATION)
get_filename_component(SERVICES_BINARY ${SERVICES_BINARY} NAME) get_filename_component(SERVICES_BINARY ${SERVICES_BINARY} NAME)
# At install time, create the following additional directories # At install time, create the following additional directories
install(CODE "file(MAKE_DIRECTORY \"\$ENV{DESTDIR}${CMAKE_INSTALL_PREFIX}/${DB_DIR}/backups\")") install(CODE "file(MAKE_DIRECTORY \"\$ENV{DESTDIR}\${CMAKE_INSTALL_PREFIX}/${DB_DIR}/backups\")")
install(CODE "file(MAKE_DIRECTORY \"\$ENV{DESTDIR}${CMAKE_INSTALL_PREFIX}/${LOGS_DIR}\")") install(CODE "file(MAKE_DIRECTORY \"\$ENV{DESTDIR}\${CMAKE_INSTALL_PREFIX}/${LOGS_DIR}\")")
if(WIN32) if(WIN32)
install(CODE "file(MAKE_DIRECTORY \"\${CMAKE_INSTALL_PREFIX}/${DB_DIR}/runtime\")") install(CODE "file(MAKE_DIRECTORY \"\$ENV{DESTDIR}\${CMAKE_INSTALL_PREFIX}/${DB_DIR}/runtime\")")
endif(WIN32) endif(WIN32)
# On non-Windows platforms, if RUNGROUP is set, change the permissions of the below directories, as well as the group of the data directory # On non-Windows platforms, if RUNGROUP is set, change the permissions of the below directories, as well as the group of the data directory
if(NOT WIN32 AND RUNGROUP) if(NOT WIN32 AND RUNGROUP)
install(CODE "execute_process(COMMAND ${CHMOD} 2775 \"\$ENV{DESTDIR}${CMAKE_INSTALL_PREFIX}/\${DB_DIR}/backups\")") install(CODE "execute_process(COMMAND ${CHMOD} 2775 \"\$ENV{DESTDIR}\${CMAKE_INSTALL_PREFIX}/\${DB_DIR}/backups\")")
install(CODE "execute_process(COMMAND ${CHMOD} 2775 \"\$ENV{DESTDIR}${CMAKE_INSTALL_PREFIX}/\${LOGS_DIR}\")") install(CODE "execute_process(COMMAND ${CHMOD} 2775 \"\$ENV{DESTDIR}\${CMAKE_INSTALL_PREFIX}/\${LOGS_DIR}\")")
install(CODE "execute_process(COMMAND ${CHGRP} -R ${RUNGROUP} \"\$ENV{DESTDIR}${CMAKE_INSTALL_PREFIX}\")") install(CODE "execute_process(COMMAND ${CHGRP} -R ${RUNGROUP} \"\$ENV{DESTDIR}\${CMAKE_INSTALL_PREFIX}\")")
endif(NOT WIN32 AND RUNGROUP) endif(NOT WIN32 AND RUNGROUP)
# On Windows platforms, install extra files # On Windows platforms, install extra files
if(WIN32) if(WIN32)
+6 -2
View File
@@ -2,7 +2,7 @@
# #
# Configuration script for Services. # Configuration script for Services.
# #
# Anope (c) 2003-2016 Anope Team # Anope (c) 2003-2017 Anope Team
# Contact us at team@anope.org # Contact us at team@anope.org
# #
# This program is free but copyrighted software; see the file COPYING for # This program is free but copyrighted software; see the file COPYING for
@@ -94,6 +94,10 @@ Run_Build_System () {
echo "cmake $GEN_TYPE $WITH_INST $WITH_RUN $WITH_PERM $BUILD_TYPE $PCH $EXTRA_INCLUDE $EXTRA_LIBS $EXTRA_CONFIG_ARGS $REAL_SOURCE_DIR" echo "cmake $GEN_TYPE $WITH_INST $WITH_RUN $WITH_PERM $BUILD_TYPE $PCH $EXTRA_INCLUDE $EXTRA_LIBS $EXTRA_CONFIG_ARGS $REAL_SOURCE_DIR"
cmake $GEN_TYPE $WITH_INST $WITH_RUN $WITH_PERM $BUILD_TYPE $PCH $EXTRA_INCLUDE $EXTRA_LIBS $EXTRA_CONFIG_ARGS $REAL_SOURCE_DIR cmake $GEN_TYPE $WITH_INST $WITH_RUN $WITH_PERM $BUILD_TYPE $PCH $EXTRA_INCLUDE $EXTRA_LIBS $EXTRA_CONFIG_ARGS $REAL_SOURCE_DIR
if [ $? -ne 0 ]; then
echo "You should fix these issues and then run ./Config -quick to rerun CMake."
exit 1
fi
echo "" echo ""
if [ "$SOURCE_DIR" = "." ] ; then if [ "$SOURCE_DIR" = "." ] ; then
@@ -166,7 +170,7 @@ done
# Check for CMake and (optionally) install it # Check for CMake and (optionally) install it
########################################################################### ###########################################################################
which cmake > /dev/null cmake --version 2>&1 > /dev/null
if [ $? -ne 0 ] ; then if [ $? -ne 0 ] ; then
clear clear
echo "Anope requires CMake 2.4 or newer, which can be downloaded at http://cmake.org or through your system's package manager." echo "Anope requires CMake 2.4 or newer, which can be downloaded at http://cmake.org or through your system's package manager."
+46
View File
@@ -0,0 +1,46 @@
## About
Anope is an open source set of IRC Services. It is highly modular, with a vast number of configurable parameters, and is the most used IRC services package. There are also many modules on the [modsite](https://modules.anope.org) to add additional features. It runs on Linux, BSD, and Windows, and supports many modern IRCds, including InspIRCd, UnrealIRCd, and ircd-hybrid. For more details, credits, command line options, and contact information see [docs/README](https://github.com/anope/anope/blob/2.0/docs/README).
* [Website](https://anope.org)
* [GitHub](https://github.com/anope)
* IRC \#anope on irc.anope.org
## Installation
### Linux/BSD
Download the latest release off of the [releases page](https://github.com/anope/anope/releases).
```
$ ./Config
$ cd build
$ make
$ make install
```
Now change to the directory where you installed Anope to, e.g. `$ cd ~/services/`
### Windows
Download the latest release off of the [releases page](https://github.com/anope/anope/releases) and run the installer.
## Configuration
Copy conf/example.conf to conf/services.conf
```
$ cp conf/example.conf conf/services.conf
```
Edit services.conf, configuring the uplink, serverinfo, and protocol module configurations. Example link blocks for popular IRCds are included in the the example.conf documentation. The [Anope wiki](https://wiki.anope.org) is also a good source of information. Our support channel is located at #anope on [irc.anope.org](irc://irc.anope.org/#anope).
Note that the example configuration file includes other example configuration files. If you want to modify the other example configuration files, copy them (e.g. `modules.example.conf` to `modules.conf`) and modify the `include` directive in `services.conf` to include the new file.
## Running
Run `$ ./bin/services` to start Anope. If asked to provide logs for support, use the `--support` flag, e.g.: `$ ./bin/services --support`
## Installing extra modules
Extra modules, which are usually modules which require extra libraries to use, such as m\_mysql, can be enabled with the `./extras` command from the source directory. Then re-run `Config`, `make` and `make install` again. Third party modules can be installed by placing them into the `modules/third` directory.
-3
View File
@@ -1121,9 +1121,6 @@ module
/* Sets the time to keep seen entries in the seen database. */ /* Sets the time to keep seen entries in the seen database. */
purgetime = "30d" purgetime = "30d"
/* Sets the delay between checks for expired seen entries. */
expiretimeout = "1d"
} }
command { service = "OperServ"; name = "SEEN"; command = "operserv/seen"; permission = "operserv/seen"; } command { service = "OperServ"; name = "SEEN"; command = "operserv/seen"; permission = "operserv/seen"; }
+9 -19
View File
@@ -532,7 +532,7 @@ options
* *
* Note for this to work the regex module providing the regex engine must be loaded. * Note for this to work the regex module providing the regex engine must be loaded.
*/ */
regexengine = "regex/pcre" #regexengine = "regex/pcre"
/* /*
* A list of languages to load on startup that will be available in /nickserv set language. * A list of languages to load on startup that will be available in /nickserv set language.
@@ -784,12 +784,7 @@ log
* chanserv/drop chanserv/getkey chanserv/invite * chanserv/drop chanserv/getkey chanserv/invite
* chanserv/list chanserv/suspend chanserv/topic * chanserv/list chanserv/suspend chanserv/topic
* *
* chanserv/saset/bantype chanserv/saset/description chanserv/saset/email chanserv/saset/keepmodes * chanserv/saset/noexpire
* chanserv/saset/founder chanserv/saset/keeptopic chanserv/saset/restricted
* chanserv/saset/peace chanserv/saset/persist chanserv/saset/private
* chanserv/saset/secure chanserv/saset/securefounder chanserv/saset/secureops
* chanserv/saset/signkick chanserv/saset/successor chanserv/saset/topiclock
* chanserv/saset/url chanserv/saset/noexpire chanserv/saset/autoop
* *
* memoserv/sendall memoserv/staff * memoserv/sendall memoserv/staff
* *
@@ -1206,23 +1201,14 @@ module
* encrypted by this module. Old passwords stored in another encryption method are * encrypted by this module. Old passwords stored in another encryption method are
* automatically re-encrypted by the primary encryption module on next identify. * automatically re-encrypted by the primary encryption module on next identify.
* *
* NOTE: enc_old is Anope's previous (broken) MD5 implementation which is present in * enc_md5, enc_sha1, and enc_old are deprecated, and are provided for users
* versions prior to Anope 1.7.17. If your databases were made using that module, * to upgrade to a newer encryption module. Do not use them as the primary
* use this and not enc_md5. * encryption module. They will be removed in a future release.
*
* NOTE: enc_sha1 relies on how the OS stores 2+ byte data internally, and is
* potentially broken when moving between 2 different OSes, such as moving from
* Linux to Windows. It is recommended that you use enc_sha256 instead if you want
* to use an SHA-based encryption. If you choose to do so, it is also recommended
* that you first try to get everyone's passwords converted to enc_sha256 before
* switching OSes by placing enc_sha256 at the beginning of the list.
* *
*/ */
#module { name = "enc_bcrypt" } #module { name = "enc_bcrypt" }
module { name = "enc_sha256" } module { name = "enc_sha256" }
#module { name = "enc_md5" }
#module { name = "enc_sha1" }
/* /*
* When using enc_none, passwords will be stored without encryption. This isn't secure * When using enc_none, passwords will be stored without encryption. This isn't secure
@@ -1230,6 +1216,10 @@ module { name = "enc_sha256" }
*/ */
#module { name = "enc_none" } #module { name = "enc_none" }
/* Deprecated encryption modules */
#module { name = "enc_md5" }
#module { name = "enc_sha1" }
/* /*
* enc_old is Anope's previous (broken) MD5 implementation used from 1.4.x to 1.7.16. * enc_old is Anope's previous (broken) MD5 implementation used from 1.4.x to 1.7.16.
* If your databases were made using that module, load it here to allow conversion to the primary * If your databases were made using that module, load it here to allow conversion to the primary
+3 -21
View File
@@ -129,7 +129,7 @@ module { name = "help" }
*/ */
reason = "You are listed in the efnet RBL, visit http://rbl.efnetrbl.org/?i=%i for info" reason = "You are listed in the efnet RBL, visit http://rbl.efnetrbl.org/?i=%i for info"
/* Replies to ban and their reason. If no relies are configured, all replies get banned. */ /* Replies to ban and their reason. If no replies are configured, all replies get banned. */
reply reply
{ {
code = 1 code = 1
@@ -175,7 +175,7 @@ module { name = "help" }
} }
/* Exempt localhost from DNSBL checks */ /* Exempt localhost from DNSBL checks */
exempt { ip = "127.0.0.1" } exempt { ip = "127.0.0.0/8" }
} }
/* /*
@@ -540,25 +540,7 @@ module { name = "help" }
* authenticating users through this mechanism. Supported mechanisms are: * authenticating users through this mechanism. Supported mechanisms are:
* PLAIN, EXTERNAL. * PLAIN, EXTERNAL.
*/ */
#module { name = "m_sasl" } module { name = "m_sasl" }
/*
* m_sasl_dh-aes [EXTRA]
*
* Add the DH-AES mechanism to SASL.
* Requires m_sasl to be loaded.
* Requires openssl.
*/
#module { name = "m_sasl_dh-aes" }
/*
* m_sasl_dh-blowfish [EXTRA]
*
* Add the DH-BLOWFISH mechanism to SASL.
* Requires m_sasl to be loaded.
* Requires openssl.
*/
#module { name = "m_sasl_dh-blowfish" }
/* /*
* m_ssl_gnutls [EXTRA] * m_ssl_gnutls [EXTRA]
+1 -1
View File
@@ -106,7 +106,7 @@ module
* - autoop: User will be automatically opped in channels they enter and have access to * - autoop: User will be automatically opped in channels they enter and have access to
* - msg: Services messages will be sent as PRIVMSGs instead of NOTICEs, requires * - msg: Services messages will be sent as PRIVMSGs instead of NOTICEs, requires
* options:useprivmsg to be enabled as well * options:useprivmsg to be enabled as well
* - ns_keepmodes: Enables keepmodes, which retains user modes across sessions * - ns_keep_modes: Enables keepmodes, which retains user modes across sessions
* - ns_no_expire: Enables no expire. Unconfirmed expire overrules this. * - ns_no_expire: Enables no expire. Unconfirmed expire overrules this.
* *
* This directive is optional, if left blank, the options will default to ns_secure, memo_signon, and * This directive is optional, if left blank, the options will default to ns_secure, memo_signon, and
+65 -12
View File
@@ -1,4 +1,57 @@
Anope Version 2.0.3-git Anope Version 2.0.6
-------------------
Log client IP for web clients running commands via webcpanel
Fix log file path for the config file could not be opened log message
Allow nickserv/group to be used via XMLRPC
Fix logsearch without wildcards
Support cidr exempts in m_dnsbl
Add support for IPv6 dnsbls
Add +u and +L channel modes for ircd-hybrid
Set +x after hostserv/off on InspIRCd and UnrealIRCd
Fix chanserv/mode not being able to set extbans
Send CHGIDENT/CHGHOST on SVSLOGIN on InspIRCd
Fix escaping replies from commands in webcpanel
Enable require_oper for all opers added via operserv/oper
Advertise SASL mechanisms to UnrealIRCd servers
Anope Version 2.0.5
-------------------
Fix negative levels to not match users with negative access
Fix memo sender to always be the account name of the sender
Allow unregistered users to use the ChanServ seen command
Fix secureops to not be enforced on operators with the chanserv/administration privilege
Fix command name in HELP syntax messages to always be upper case
Show unconfirmed nickname messages on registration in webcpanel
Fix NickServ SET EMAIL to be executable via XMLRPC
Fix OperServ USERLIST/CHANLIST to accept regexes
Allow OperServ USERLIST to also match realname syntax (n!u@h#r)
Fix db_old importing languages to use the UTF-8 version
Fix m_dns to return REFUSED if no answers could be found
Fix ns_maxemail to be case insensitive
Add MemoServ READ ALL command
Add support for NickServ GROUP to be executed via XMLRPC
Add support for logging hostname/ip of SASL authentication attempts, if supported by IRCd
Anope Version 2.0.4
-------------------
Add notice rpc method to XMLRPC
Fix access check in cs_updown to not allow actions on users with equal access
Fix randomnews to work when there are more than 'newscount' random news
Fix crash from handling nick introduction collisions on unreal4
Add support for GCC6
Fix handling /join 0 on ratbox
Fix saset display to update the account of the proper user
Fix nickserv/confirm to send account and +r when appropriate
Fix chankill to not add duplicate akills
Allow nickserv/maxemail to disregard gmail style aliases when comparing emails
Fix chanserv/mode when setting listmodes with CIDR ranges
Fix reported expiry time when the time is divisible by 1 year
Clearify botserv repeat kicker help and allow setting repeat times to 1
Send vident/vhost with SASL login
Add support for SASL reauth
Fix log and database backup directories to be properly created by the installer
Anope Version 2.0.3
------------------- -------------------
Add support for UnrealIRCd 4 Add support for UnrealIRCd 4
Fix cs_access to respect chanserv/access/list privilege Fix cs_access to respect chanserv/access/list privilege
@@ -16,7 +69,7 @@ Fix crash from unloading regex modules when regex xlines exist
Fix irc2sql to store away messages Fix irc2sql to store away messages
Add notice method to m_xmlrpc_main Add notice method to m_xmlrpc_main
Fix numerics on InspIRCd from being sent to user UID Fix numerics on InspIRCd from being sent to user UID
Fix +I on InspIRCd to be considered oper only Fix usermode +I on UnrealIRCd to be considered oper only
Fix crash in webcpanel when deleting your own access on a channel Fix crash in webcpanel when deleting your own access on a channel
Fix webcpanel allowing suspended users to login Fix webcpanel allowing suspended users to login
Fix hs_off on InspIRCd to not desync active user host Fix hs_off on InspIRCd to not desync active user host
@@ -69,7 +122,7 @@ Anope Version 2.0.0
Added irc2sql stats module Added irc2sql stats module
Anope Version 1.9.9 Anope Version 1.9.9
-------------------- -------------------
A Added a better webpanel template, removed the old one A Added a better webpanel template, removed the old one
A Added SQL logging support A Added SQL logging support
A Added Redis database support A Added Redis database support
@@ -81,7 +134,7 @@ F Fixed setting BotServ's default settings in the config
F Fixed some names of config items, including NickServ's kill protect F Fixed some names of config items, including NickServ's kill protect
Anope Version 1.9.8 Anope Version 1.9.8
-------------------- -------------------
A Ability to configure fantasy commands in the config A Ability to configure fantasy commands in the config
A Add SVSJOIN and SVSPART commands A Add SVSJOIN and SVSPART commands
F Fix "leave" channel log level from not logging F Fix "leave" channel log level from not logging
@@ -93,7 +146,7 @@ F Fix crash in os_forbid with expiring entries
F Fix several issues with db_sql_live F Fix several issues with db_sql_live
Anope Version 1.9.7 Anope Version 1.9.7
-------------------- -------------------
A Added ability for using regex as patterns for various commands A Added ability for using regex as patterns for various commands
A Extended ability of operserv/akill to also match against nick and realname A Extended ability of operserv/akill to also match against nick and realname
A Added chanserv:require configuration option A Added chanserv:require configuration option
@@ -103,7 +156,7 @@ A Added a web panel
A db_sql_live now allows all tables to be "live", not just a select few A db_sql_live now allows all tables to be "live", not just a select few
Anope Version 1.9.6 Anope Version 1.9.6
-------------------- -------------------
A Added ability to configure emails sent by services A Added ability to configure emails sent by services
A Added chanserv/up and chanserv/down A Added chanserv/up and chanserv/down
A Added m_proxyscan A Added m_proxyscan
@@ -122,7 +175,7 @@ F Fixed crash in /os oper info
F Fixed eventfd Config check to work properly on OpenVZ F Fixed eventfd Config check to work properly on OpenVZ
Anope Version 1.9.5 Anope Version 1.9.5
-------------------- -------------------
A Extended LDAP support A Extended LDAP support
A Added os_oper, os_kill, os_forbid, m_statusupdate, cs_sync, and bs_autoassign A Added os_oper, os_kill, os_forbid, m_statusupdate, cs_sync, and bs_autoassign
A Added a new configuration file format A Added a new configuration file format
@@ -140,7 +193,7 @@ F Fixed setting -P on channels with only a botserv bot in it
F Fixed modemanager complaining about prefixless modes on InspIRCd F Fixed modemanager complaining about prefixless modes on InspIRCd
Anope Version 1.9.4 Anope Version 1.9.4
-------------------- -------------------
A Automatically set channel founder to the user with the highest access if there is no successor A Automatically set channel founder to the user with the highest access if there is no successor
A /chanserv clone command to copy settings from one channel to another. A /chanserv clone command to copy settings from one channel to another.
A /chanserv mode command A /chanserv mode command
@@ -161,7 +214,7 @@ F Some failed logic in /operserv exception that prevents proper exceptions from
F Fixed the anope_os_sxlines MySQL table and code to work after restarting F Fixed the anope_os_sxlines MySQL table and code to work after restarting
Anope Version 1.9.3 Anope Version 1.9.3
-------------------- -------------------
A Added italics BotServ kicks support A Added italics BotServ kicks support
A Tell users when their nicks expire in /ns glist and /ns info A Tell users when their nicks expire in /ns glist and /ns info
A Added SSL support A Added SSL support
@@ -188,7 +241,7 @@ F Anoperc start/stop to send the globaloncycle global, and fixed anoperc rehash
F Fixed a potential crash if HostServ or BotServ was disbled F Fixed a potential crash if HostServ or BotServ was disbled
Anope Version 1.9.2 Anope Version 1.9.2
-------------------- -------------------
A K alias to chanserv kick command A K alias to chanserv kick command
A KB alias to chanserv ban command A KB alias to chanserv ban command
A The ability to register empty nonregistered channels A The ability to register empty nonregistered channels
@@ -219,7 +272,7 @@ F ms_rsend to really work
F SQUITing juped servers on InspIRCd1.2+ F SQUITing juped servers on InspIRCd1.2+
Anope Version 1.9.1 Anope Version 1.9.1
-------------------- -------------------
F Don't enforce akick/forbidden/etc.-restrictions on clients on ulined servers. F Don't enforce akick/forbidden/etc.-restrictions on clients on ulined servers.
F Remove modules_unload_all fini + hack that goes with it. F Remove modules_unload_all fini + hack that goes with it.
F Signal handling cleanup. F Signal handling cleanup.
@@ -260,7 +313,7 @@ Provided by Liber <Liber@jasonirc.net> - 2009
F Support operoverride and such things (stop reversing changes from nonopped people where unnecessary) F Support operoverride and such things (stop reversing changes from nonopped people where unnecessary)
Anope Version 1.9.0 Anope Version 1.9.0
-------------------- -------------------
F Modified compile to use g++ F Modified compile to use g++
F Improve protocol modules support (classes, virtual methods, etc) F Improve protocol modules support (classes, virtual methods, etc)
F Move core services to use BotInfo F Move core services to use BotInfo
+18 -3
View File
@@ -1,4 +1,19 @@
Anope Version 2.0.3-git Anope Version 2.0.6
-------------------
Mark enc_md5 and enc_sha1 as deprecated. Their use has been discouraged for years, and they will be removed in a future release.
Exempt all of 127.0.0.0/8 from m_dnsbl by default
Load m_sasl by default
Fix documentation for nickserv default option ns_keep_modes
Anope Version 2.0.5
-------------------
No significant changes.
Anope Version 2.0.4
-------------------
Removed m_sasl_dh-aes and m_sasl_dh-blowfish
Anope Version 2.0.3
------------------- -------------------
Add operserv/chankill to default globops log Add operserv/chankill to default globops log
Add ns_identify:maxlogins to limit the max number of concurrent logins per account Add ns_identify:maxlogins to limit the max number of concurrent logins per account
@@ -92,7 +107,7 @@ opertype:commands removed operserv/umode
operserv:modules removed os_umode operserv:modules removed os_umode
Anope Version 1.9.3 Anope Version 1.9.3
------------------ -------------------
** ADDED CONFIGURATION DIRECTIVES ** ** ADDED CONFIGURATION DIRECTIVES **
nickserv/auspex privilege added nickserv/auspex privilege added
SSL module added for SSL support SSL module added for SSL support
@@ -126,7 +141,7 @@ networkinfo:logchannel, logbot, logusers, logmaxusers, logchannel, and options:k
dumpcore because it really didn't do anything dumpcore because it really didn't do anything
Anope Version 1.9.2 Anope Version 1.9.2
-------------------- -------------------
** ADDED CONFIGURATION DIRECTIVES ** ** ADDED CONFIGURATION DIRECTIVES **
options:enablelogchannel added to auto turn on the logchannel on startup options:enablelogchannel added to auto turn on the logchannel on startup
options:mlock added to configure the default mlock modes on new channels options:mlock added to configure the default mlock modes on new channels
-1
View File
@@ -91,4 +91,3 @@ Anope DefCon
You might get DefCon support by posting on our online forum, or maybe on You might get DefCon support by posting on our online forum, or maybe on
our #anope channel at /server irc.anope.org. our #anope channel at /server irc.anope.org.
-1
View File
@@ -32,4 +32,3 @@ Anope Internal Events
The "anope_override" identifier is for compatibility with C++11. The "anope_override" identifier is for compatibility with C++11.
Its usage is highly recommended. Its usage is highly recommended.
+1 -1
View File
@@ -1,5 +1,5 @@
Frequently Asked Questions (FAQ) concerning Anope Frequently Asked Questions (FAQ) concerning Anope
------------------------------------------------ -------------------------------------------------
The information in the 1.9 FAQ is subject to change at any The information in the 1.9 FAQ is subject to change at any
moment due to new developments. Please visit our website moment due to new developments. Please visit our website
-1
View File
@@ -4,4 +4,3 @@ Highlighted News in Anope 1.9
* Added in live updating SQL and the ability to execute commands through SQL * Added in live updating SQL and the ability to execute commands through SQL
* Re-designed configuration file * Re-designed configuration file
* Code refresh / rewrite into C++ * Code refresh / rewrite into C++
+4 -6
View File
@@ -1,7 +1,7 @@
Anope -- a set of IRC services for IRC networks Anope -- a set of IRC services for IRC networks
----------------------------------------------- -----------------------------------------------
Anope is 2003-2016 Anope Team <team@anope.org>. Anope is 2003-2017 Anope Team <team@anope.org>.
Based on Epona 2000-2002 PegSoft <epona@pegsoft.net>. Based on Epona 2000-2002 PegSoft <epona@pegsoft.net>.
Based on Services 1996-1999 Andrew Church <achurch@achurch.org>. Based on Services 1996-1999 Andrew Church <achurch@achurch.org>.
@@ -9,8 +9,6 @@ This program is free but copyrighted software; see the file COPYING for
details. details.
Information about Anope may be found at http://www.anope.org/ Information about Anope may be found at http://www.anope.org/
Information about Epona may be found at http://www.epona.org/
Information about Services may be found at http://www.ircservices.esper.net/
Table of Contents Table of Contents
----------------- -----------------
@@ -19,7 +17,7 @@ Table of Contents
3) Installation 3) Installation
4) Command Line Options 4) Command Line Options
5) Messages Translation 5) Messages Translation
6) Contact and Mailing List 6) Contact
1) Credits 1) Credits
@@ -111,7 +109,7 @@ Table of Contents
* Kein <kein-of@yandex.ru> (ru_RU) * Kein <kein-of@yandex.ru> (ru_RU)
* Maik Funke <Han@mefalcon.org> (de_DE) * Maik Funke <Han@mefalcon.org> (de_DE)
* Isaac Fontal <i_fontal@hotmail.com> (es_ES) * Isaac Fontal <i_fontal@hotmail.com> (es_ES)
* Janos Kapitany <sarkanyka@cjbchat.hu> (hu_HU) * Janos Kapitany <sarkanyka@cjbchat.hu> (hu_HU)
* Szymon S'wierkosz <szymek@adres.pl> (pl_PL) * Szymon S'wierkosz <szymek@adres.pl> (pl_PL)
* Christopher N. <saka@epiknet.org> (fr_FR) * Christopher N. <saka@epiknet.org> (fr_FR)
* Yusuf Kurekci <ysfm.20@gmail.com> (tr_TR) * Yusuf Kurekci <ysfm.20@gmail.com> (tr_TR)
@@ -170,7 +168,7 @@ Table of Contents
* Bahamut 1.4.27 or later (including 1.8) * Bahamut 1.4.27 or later (including 1.8)
* Charybdis 3.4 or later * Charybdis 3.4 or later
* Hybrid 8.1 or later * Hybrid 8.2 or later
* InspIRCd 1.2 or 2.0 * InspIRCd 1.2 or 2.0
* ngIRCd 19.2 or later * ngIRCd 19.2 or later
* Plexus 3 or later * Plexus 3 or later
+3 -4
View File
@@ -20,7 +20,6 @@ Anope Bundled Tools
address. This should generate a log file of what happened when it tried address. This should generate a log file of what happened when it tried
to connect to the SMTP server. to connect to the SMTP server.
Credits: Credits:
Originally written by Dominick Meglio <codemastr@unrealircd.com> Originally written by Dominick Meglio <codemastr@unrealircd.com>
Ported to *nix by Trystan Scott Lee <trystan@nomadirc.net> Ported to *nix by Trystan Scott Lee <trystan@nomadirc.net>
-1
View File
@@ -159,4 +159,3 @@ Anope for Windows
Anope's Windows Installer was made using: Anope's Windows Installer was made using:
* NSIS 2.20 <http://nsis.sourceforge.net> * NSIS 2.20 <http://nsis.sourceforge.net>
+17 -1
View File
@@ -3,9 +3,10 @@
/** /**
* XMLRPC Functions * XMLRPC Functions
* *
* (C) 2003-2016 Anope Team * (C) 2003-2017 Anope Team
* Contact us at team@anope.org * Contact us at team@anope.org
*/ */
class AnopeXMLRPC class AnopeXMLRPC
{ {
/** /**
@@ -114,6 +115,21 @@ class AnopeXMLRPC
return $this->run("channel", [$channel]); return $this->run("channel", [$channel]);
} }
/**
* Sent a notice to a user.
* Returns an array containing channel information, or an array of size one
* (just containing the name) if the channel does not exist
*
* @param $source
* @param $target
* @param $message
* @return array|null
*/
public function notice($source, $target, $message)
{
return $this->run("notice", [$source, $target, $message]);
}
/** /**
* Like channel(), but different. * Like channel(), but different.
* *
+1 -6
View File
@@ -148,12 +148,7 @@ while (1)
if ($input eq "q") { if ($input eq "q") {
if (-e "build/CMakeFiles") { if (-e "build/CMakeFiles") {
if (-e "cmake-bin") { system("cmake", "build/.");
my $cmake_path = `find cmake-bin -name cmake -print0`;
system($cmake_path, "build/.");
} else {
system("cmake", "build/.");
}
print "\nNow cd build, then run make to build Anope.\n\n"; print "\nNow cd build, then run make to build Anope.\n\n";
} else { } else {
print "\nBuild directory not found. You should run ./Config now.\n\n" print "\nBuild directory not found. You should run ./Config now.\n\n"
+11 -12
View File
@@ -1,6 +1,6 @@
/* /*
* *
* (C) 2003-2016 Anope Team * (C) 2003-2017 Anope Team
* Contact us at team@anope.org * Contact us at team@anope.org
* *
* Please read COPYING and README for further details. * Please read COPYING and README for further details.
@@ -78,12 +78,7 @@ class CoreExport ChanAccess : public Serializable
Serialize::Reference<NickCore> nc; Serialize::Reference<NickCore> nc;
public: public:
typedef std::multimap<const ChanAccess *, const ChanAccess *> Set; typedef std::vector<ChanAccess *> Path;
/* shows the 'path' taken to determine if an access entry matches a user
* .first are access entries checked
* .second are access entries which match
*/
typedef std::pair<Set, Set> Path;
/* The provider that created this access entry */ /* The provider that created this access entry */
AccessProvider *provider; AccessProvider *provider;
@@ -103,12 +98,14 @@ class CoreExport ChanAccess : public Serializable
void Serialize(Serialize::Data &data) const anope_override; void Serialize(Serialize::Data &data) const anope_override;
static Serializable* Unserialize(Serializable *obj, Serialize::Data &); static Serializable* Unserialize(Serializable *obj, Serialize::Data &);
static const unsigned int MAX_DEPTH = 4;
/** Check if this access entry matches the given user or account /** Check if this access entry matches the given user or account
* @param u The user * @param u The user
* @param nc The account * @param nc The account
* @param p The path to the access object which matches will be put here * @param next Next channel to check if any
*/ */
virtual bool Matches(const User *u, const NickCore *nc, Path &p) const; virtual bool Matches(const User *u, const NickCore *nc, ChannelInfo* &next) const;
/** Check if this access entry has the given privilege. /** Check if this access entry has the given privilege.
* @param name The privilege name * @param name The privilege name
@@ -136,13 +133,13 @@ class CoreExport ChanAccess : public Serializable
/* A group of access entries. This is used commonly, for example with ChannelInfo::AccessFor, /* A group of access entries. This is used commonly, for example with ChannelInfo::AccessFor,
* to show what access a user has on a channel because users can match multiple access entries. * to show what access a user has on a channel because users can match multiple access entries.
*/ */
class CoreExport AccessGroup : public std::vector<ChanAccess *> class CoreExport AccessGroup
{ {
public: public:
/* access entries + paths */
std::vector<ChanAccess::Path> paths;
/* Channel these access entries are on */ /* Channel these access entries are on */
const ChannelInfo *ci; const ChannelInfo *ci;
/* Path from these entries to other entries that they depend on */
ChanAccess::Path path;
/* Account these entries affect, if any */ /* Account these entries affect, if any */
const NickCore *nc; const NickCore *nc;
/* super_admin always gets all privs. founder is a special case where ci->founder == nc */ /* super_admin always gets all privs. founder is a special case where ci->founder == nc */
@@ -170,6 +167,8 @@ class CoreExport AccessGroup : public std::vector<ChanAccess *>
bool operator<(const AccessGroup &other) const; bool operator<(const AccessGroup &other) const;
bool operator>=(const AccessGroup &other) const; bool operator>=(const AccessGroup &other) const;
bool operator<=(const AccessGroup &other) const; bool operator<=(const AccessGroup &other) const;
inline bool empty() const { return paths.empty(); }
}; };
#endif #endif
+2 -1
View File
@@ -1,6 +1,6 @@
/* /*
* *
* (C) 2003-2016 Anope Team * (C) 2003-2017 Anope Team
* Contact us at team@anope.org * Contact us at team@anope.org
* *
* Please read COPYING and README for further details. * Please read COPYING and README for further details.
@@ -246,6 +246,7 @@ class CoreExport IdentifyRequest
virtual void OnSuccess() = 0; virtual void OnSuccess() = 0;
virtual void OnFail() = 0; virtual void OnFail() = 0;
Module *GetOwner() const { return owner; }
const Anope::string &GetAccount() const { return account; } const Anope::string &GetAccount() const { return account; }
const Anope::string &GetPassword() const { return password; } const Anope::string &GetPassword() const { return password; }
+3 -1
View File
@@ -1,6 +1,6 @@
/* /*
* *
* (C) 2003-2016 Anope Team * (C) 2003-2017 Anope Team
* Contact us at team@anope.org * Contact us at team@anope.org
* *
* Please read COPYING and README for further details. * Please read COPYING and README for further details.
@@ -336,7 +336,9 @@ namespace Anope
template<typename T> class multimap : public std::multimap<string, T, ci::less> { }; template<typename T> class multimap : public std::multimap<string, T, ci::less> { };
template<typename T> class hash_map : public TR1NS::unordered_map<string, T, hash_ci, compare> { }; template<typename T> class hash_map : public TR1NS::unordered_map<string, T, hash_ci, compare> { };
#ifndef REPRODUCIBLE_BUILD
static const char *const compiled = __TIME__ " " __DATE__; static const char *const compiled = __TIME__ " " __DATE__;
#endif
/** The time Anope started. /** The time Anope started.
*/ */
+1 -1
View File
@@ -1,7 +1,7 @@
/* /*
* *
* (C) 2008-2011 Adam <Adam@anope.org> * (C) 2008-2011 Adam <Adam@anope.org>
* (C) 2008-2016 Anope Team <team@anope.org> * (C) 2008-2017 Anope Team <team@anope.org>
* *
* Please read COPYING and README for further details. * Please read COPYING and README for further details.
*/ */
+1 -1
View File
@@ -1,7 +1,7 @@
/* /*
* *
* (C) 2008-2011 Robin Burchell <w00t@inspircd.org> * (C) 2008-2011 Robin Burchell <w00t@inspircd.org>
* (C) 2008-2016 Anope Team <team@anope.org> * (C) 2008-2017 Anope Team <team@anope.org>
* *
* Please read COPYING and README for further details. * Please read COPYING and README for further details.
*/ */
+4 -2
View File
@@ -1,6 +1,6 @@
/* Channel support /* Channel support
* *
* (C) 2008-2016 Anope Team * (C) 2008-2017 Anope Team
* Contact us at team@anope.org * Contact us at team@anope.org
* *
* Please read COPYING and README for further details. * Please read COPYING and README for further details.
@@ -60,7 +60,7 @@ class CoreExport Channel : public Base, public Extensible
Anope::string topic; Anope::string topic;
/* Who set the topic */ /* Who set the topic */
Anope::string topic_setter; Anope::string topic_setter;
/* The timestamp associated with the topic. Not necessarually anywhere close to Anope::CurTime. /* The timestamp associated with the topic. Not necessarily anywhere close to Anope::CurTime.
* This is the time the topic was *originally set*. When we restore the topic we want to change the TS back * This is the time the topic was *originally set*. When we restore the topic we want to change the TS back
* to this, but we can only do this on certain IRCds. * to this, but we can only do this on certain IRCds.
*/ */
@@ -302,6 +302,8 @@ class CoreExport Channel : public Base, public Extensible
*/ */
static Channel *FindOrCreate(const Anope::string &name, bool &created, time_t ts = Anope::CurTime); static Channel *FindOrCreate(const Anope::string &name, bool &created, time_t ts = Anope::CurTime);
void QueueForDeletion();
static void DeleteChannels(); static void DeleteChannels();
}; };
+3 -1
View File
@@ -1,6 +1,6 @@
/* Declarations for command data. /* Declarations for command data.
* *
* (C) 2003-2016 Anope Team * (C) 2003-2017 Anope Team
* Contact us at team@anope.org * Contact us at team@anope.org
* *
* Please read COPYING and README for further details. * Please read COPYING and README for further details.
@@ -59,6 +59,8 @@ class CoreExport CommandSource
public: public:
/* The account executing the command */ /* The account executing the command */
Reference<NickCore> nc; Reference<NickCore> nc;
/* for web clients */
Anope::string ip;
/* Where the reply should go */ /* Where the reply should go */
CommandReply *reply; CommandReply *reply;
/* Channel the command was executed on (fantasy) */ /* Channel the command was executed on (fantasy) */
+2 -1
View File
@@ -1,6 +1,6 @@
/* /*
* *
* (C) 2003-2016 Anope Team * (C) 2003-2017 Anope Team
* Contact us at team@anope.org * Contact us at team@anope.org
* *
* Please read COPYING and README for further details. * Please read COPYING and README for further details.
@@ -78,6 +78,7 @@ namespace Configuration
File(const Anope::string &, bool); File(const Anope::string &, bool);
~File(); ~File();
const Anope::string &GetName() const; const Anope::string &GetName() const;
Anope::string GetPath() const;
bool IsOpen() const; bool IsOpen() const;
bool Open(); bool Open();
+1 -1
View File
@@ -1,6 +1,6 @@
/* /*
* *
* (C) 2003-2016 Anope Team * (C) 2003-2017 Anope Team
* Contact us at team@anope.org * Contact us at team@anope.org
* *
* Please read COPYING and README for further details. * Please read COPYING and README for further details.
+1 -1
View File
@@ -1,6 +1,6 @@
/* /*
* *
* (C) 2003-2016 Anope Team * (C) 2003-2017 Anope Team
* Contact us at team@anope.org * Contact us at team@anope.org
* *
* Please read COPYING and README for further details. * Please read COPYING and README for further details.
+1 -1
View File
@@ -1,7 +1,7 @@
/* /*
* *
* (C) 2002-2011 InspIRCd Development Team * (C) 2002-2011 InspIRCd Development Team
* (C) 2009-2016 Anope Team <team@anope.org> * (C) 2009-2017 Anope Team <team@anope.org>
* *
* Please read COPYING and README for further details. * Please read COPYING and README for further details.
*/ */
+1 -1
View File
@@ -1,6 +1,6 @@
/* /*
* *
* (C) 2008-2016 Anope Team * (C) 2008-2017 Anope Team
* Contact us at team@anope.org * Contact us at team@anope.org
* *
* Please read COPYING and README for further details. * Please read COPYING and README for further details.
+1 -1
View File
@@ -1,6 +1,6 @@
/* /*
* *
* (C) 2003-2016 Anope Team * (C) 2003-2017 Anope Team
* Contact us at team@anope.org * Contact us at team@anope.org
* *
* Please read COPYING and README for further details. * Please read COPYING and README for further details.
+1 -1
View File
@@ -1,6 +1,6 @@
/* /*
* *
* (C) 2003-2016 Anope Team * (C) 2003-2017 Anope Team
* Contact us at team@anope.org * Contact us at team@anope.org
* *
* Please read COPYING and README for further details. * Please read COPYING and README for further details.
+1 -1
View File
@@ -1,6 +1,6 @@
/* /*
* *
* (C) 2003-2016 Anope Team * (C) 2003-2017 Anope Team
* Contact us at team@anope.org * Contact us at team@anope.org
* *
* Please read COPYING and README for further details. * Please read COPYING and README for further details.
+2 -1
View File
@@ -1,6 +1,6 @@
/* /*
* *
* (C) 2003-2016 Anope Team * (C) 2003-2017 Anope Team
* Contact us at team@anope.org * Contact us at team@anope.org
* *
* Please read COPYING and README for further details. * Please read COPYING and README for further details.
@@ -18,6 +18,7 @@
class CoreExport Memo : public Serializable class CoreExport Memo : public Serializable
{ {
public: public:
MemoInfo *mi;
bool unread; bool unread;
bool receipt; bool receipt;
Memo(); Memo();
+1 -1
View File
@@ -1,6 +1,6 @@
/* /*
* *
* (C) 2003-2016 Anope Team * (C) 2003-2017 Anope Team
* Contact us at team@anope.org * Contact us at team@anope.org
* *
* Please read COPYING and README for further details. * Please read COPYING and README for further details.
+2 -1
View File
@@ -1,7 +1,7 @@
/* Mode support /* Mode support
* *
* (C) 2008-2011 Adam <Adam@anope.org> * (C) 2008-2011 Adam <Adam@anope.org>
* (C) 2008-2016 Anope Team <team@anope.org> * (C) 2008-2017 Anope Team <team@anope.org>
* *
* Please read COPYING and README for further details. * Please read COPYING and README for further details.
*/ */
@@ -395,6 +395,7 @@ class CoreExport Entry
Anope::string mask; Anope::string mask;
public: public:
unsigned short cidr_len; unsigned short cidr_len;
int family;
Anope::string nick, user, host, real; Anope::string nick, user, host, real;
/** Constructor /** Constructor
+1 -1
View File
@@ -1,6 +1,6 @@
/* /*
* *
* (C) 2003-2016 Anope Team * (C) 2003-2017 Anope Team
* Contact us at team@anope.org * Contact us at team@anope.org
* *
* Please read COPYING and README for further details. * Please read COPYING and README for further details.
+7 -1
View File
@@ -1,6 +1,6 @@
/* Modular support /* Modular support
* *
* (C) 2003-2016 Anope Team * (C) 2003-2017 Anope Team
* Contact us at team@anope.org * Contact us at team@anope.org
* *
* Please read COPYING and README for further details. * Please read COPYING and README for further details.
@@ -301,6 +301,11 @@ class CoreExport Module : public Extensible
* before they will be called. * before they will be called.
*/ */
/** Called on startup after database load, but before
* connecting to the uplink.
*/
virtual void OnPostInit() { throw NotImplementedException(); }
/** Called before a user has been kicked from a channel. /** Called before a user has been kicked from a channel.
* @param source The kicker * @param source The kicker
* @param cu The user, channel, and status of the user being kicked * @param cu The user, channel, and status of the user being kicked
@@ -1099,6 +1104,7 @@ class CoreExport Module : public Extensible
enum Implementation enum Implementation
{ {
I_OnPostInit,
I_OnPreUserKicked, I_OnUserKicked, I_OnReload, I_OnPreBotAssign, I_OnBotAssign, I_OnBotUnAssign, I_OnUserConnect, I_OnPreUserKicked, I_OnUserKicked, I_OnReload, I_OnPreBotAssign, I_OnBotAssign, I_OnBotUnAssign, I_OnUserConnect,
I_OnNewServer, I_OnUserNickChange, I_OnPreHelp, I_OnPostHelp, I_OnPreCommand, I_OnPostCommand, I_OnSaveDatabase, I_OnNewServer, I_OnUserNickChange, I_OnPreHelp, I_OnPostHelp, I_OnPreCommand, I_OnPostCommand, I_OnSaveDatabase,
I_OnLoadDatabase, I_OnEncrypt, I_OnDecrypt, I_OnBotFantasy, I_OnBotNoFantasyAccess, I_OnBotBan, I_OnBadWordAdd, I_OnLoadDatabase, I_OnEncrypt, I_OnDecrypt, I_OnBotFantasy, I_OnBotNoFantasyAccess, I_OnBotBan, I_OnBadWordAdd,
+1 -1
View File
@@ -1,6 +1,6 @@
/* BotServ core functions /* BotServ core functions
* *
* (C) 2003-2016 Anope Team * (C) 2003-2017 Anope Team
* Contact us at team@anope.org * Contact us at team@anope.org
* *
* Please read COPYING and README for further details. * Please read COPYING and README for further details.
+1 -1
View File
@@ -1,6 +1,6 @@
/* BotServ core functions /* BotServ core functions
* *
* (C) 2003-2016 Anope Team * (C) 2003-2017 Anope Team
* Contact us at team@anope.org * Contact us at team@anope.org
* *
* Please read COPYING and README for further details. * Please read COPYING and README for further details.
+1 -1
View File
@@ -1,6 +1,6 @@
/* /*
* *
* (C) 2003-2016 Anope Team * (C) 2003-2017 Anope Team
* Contact us at team@anope.org * Contact us at team@anope.org
* *
* Please read COPYING and README for further details. * Please read COPYING and README for further details.
+1 -1
View File
@@ -1,6 +1,6 @@
/* ChanServ core functions /* ChanServ core functions
* *
* (C) 2003-2016 Anope Team * (C) 2003-2017 Anope Team
* Contact us at team@anope.org * Contact us at team@anope.org
* *
* Please read COPYING and README for further details. * Please read COPYING and README for further details.
+1 -1
View File
@@ -1,6 +1,6 @@
/* ChanServ core functions /* ChanServ core functions
* *
* (C) 2003-2016 Anope Team * (C) 2003-2017 Anope Team
* Contact us at team@anope.org * Contact us at team@anope.org
* *
* Please read COPYING and README for further details. * Please read COPYING and README for further details.
+1 -1
View File
@@ -1,6 +1,6 @@
/* /*
* *
* (C) 2003-2016 Anope Team * (C) 2003-2017 Anope Team
* Contact us at team@anope.org * Contact us at team@anope.org
* *
* Please read COPYING and README for further details. * Please read COPYING and README for further details.
+1 -1
View File
@@ -1,6 +1,6 @@
/* /*
* *
* (C) 2003-2016 Anope Team * (C) 2003-2017 Anope Team
* Contact us at team@anope.org * Contact us at team@anope.org
* *
* Please read COPYING and README for further details. * Please read COPYING and README for further details.
+4 -1
View File
@@ -1,6 +1,6 @@
/* /*
* *
* (C) 2012-2016 Anope Team * (C) 2012-2017 Anope Team
* Contact us at team@anope.org * Contact us at team@anope.org
* *
* Please read COPYING and README for further details. * Please read COPYING and README for further details.
@@ -228,6 +228,9 @@ namespace HTTPUtils
case '"': case '"':
dst += "&quot;"; dst += "&quot;";
break; break;
case '&':
dst += "&amp;";
break;
default: default:
dst += src[i]; dst += src[i];
} }
+1 -1
View File
@@ -1,6 +1,6 @@
/* /*
* *
* (C) 2011-2016 Anope Team * (C) 2011-2017 Anope Team
* Contact us at team@anope.org * Contact us at team@anope.org
* *
* Please read COPYING and README for further details. * Please read COPYING and README for further details.
+1 -1
View File
@@ -1,6 +1,6 @@
/* NickServ core functions /* NickServ core functions
* *
* (C) 2003-2016 Anope Team * (C) 2003-2017 Anope Team
* Contact us at team@anope.org * Contact us at team@anope.org
* *
* Please read COPYING and README for further details. * Please read COPYING and README for further details.
+3 -1
View File
@@ -1,6 +1,6 @@
/* /*
* *
* (C) 2011-2016 Anope Team * (C) 2011-2017 Anope Team
* Contact us at team@anope.org * Contact us at team@anope.org
* *
* Please read COPYING and README for further details. * Please read COPYING and README for further details.
@@ -45,6 +45,8 @@ class ForbidService : public Service
virtual ForbidData *FindForbid(const Anope::string &mask, ForbidType type) = 0; virtual ForbidData *FindForbid(const Anope::string &mask, ForbidType type) = 0;
virtual ForbidData *FindForbidExact(const Anope::string &mask, ForbidType type) = 0;
virtual std::vector<ForbidData *> GetForbids() = 0; virtual std::vector<ForbidData *> GetForbids() = 0;
}; };
+1 -1
View File
@@ -1,6 +1,6 @@
/* OperServ ignore interface /* OperServ ignore interface
* *
* (C) 2003-2016 Anope Team * (C) 2003-2017 Anope Team
* Contact us at team@anope.org * Contact us at team@anope.org
* *
* Please read COPYING and README for further details. * Please read COPYING and README for further details.
+1 -1
View File
@@ -1,6 +1,6 @@
/* /*
* *
* (C) 2011-2016 Anope Team * (C) 2011-2017 Anope Team
* Contact us at team@anope.org * Contact us at team@anope.org
* *
* Please read COPYING and README for further details. * Please read COPYING and README for further details.
+1 -1
View File
@@ -1,6 +1,6 @@
/* /*
* *
* (C) 2011-2016 Anope Team * (C) 2011-2017 Anope Team
* Contact us at team@anope.org * Contact us at team@anope.org
* *
* Please read COPYING and README for further details. * Please read COPYING and README for further details.
+1 -1
View File
@@ -1,6 +1,6 @@
/* /*
* *
* (C) 2011-2016 Anope Team * (C) 2011-2017 Anope Team
* Contact us at team@anope.org * Contact us at team@anope.org
* *
* Please read COPYING and README for further details. * Please read COPYING and README for further details.
+1 -1
View File
@@ -1,6 +1,6 @@
/* /*
* *
* (C) 2011-2016 Anope Team * (C) 2011-2017 Anope Team
* Contact us at team@anope.org * Contact us at team@anope.org
* *
* Please read COPYING and README for further details. * Please read COPYING and README for further details.
+1 -1
View File
@@ -1,6 +1,6 @@
/* /*
* *
* (C) 2011-2016 Anope Team * (C) 2011-2017 Anope Team
* Contact us at team@anope.org * Contact us at team@anope.org
* *
* Please read COPYING and README for further details. * Please read COPYING and README for further details.
+1 -1
View File
@@ -1,6 +1,6 @@
/* /*
* *
* (C) 2011-2016 Anope Team * (C) 2011-2017 Anope Team
* Contact us at team@anope.org * Contact us at team@anope.org
* *
* Please read COPYING and README for further details. * Please read COPYING and README for further details.
+3 -1
View File
@@ -1,6 +1,6 @@
/* /*
* *
* (C) 2003-2016 Anope Team * (C) 2003-2017 Anope Team
* Contact us at team@anope.org * Contact us at team@anope.org
* *
* Please read COPYING and README for further details. * Please read COPYING and README for further details.
@@ -58,6 +58,8 @@ namespace Redis
public: public:
Provider(Module *c, const Anope::string &n) : Service(c, "Redis::Provider", n) { } Provider(Module *c, const Anope::string &n) : Service(c, "Redis::Provider", n) { }
virtual bool IsSocketDead() = 0;
virtual void SendCommand(Interface *i, const std::vector<Anope::string> &cmds) = 0; virtual void SendCommand(Interface *i, const std::vector<Anope::string> &cmds) = 0;
virtual void SendCommand(Interface *i, const Anope::string &str) = 0; virtual void SendCommand(Interface *i, const Anope::string &str) = 0;
+17 -5
View File
@@ -1,6 +1,6 @@
/* /*
* *
* (C) 2014-2016 Anope Team * (C) 2014-2017 Anope Team
* Contact us at team@anope.org * Contact us at team@anope.org
* *
* Please read COPYING and README for further details. * Please read COPYING and README for further details.
@@ -46,6 +46,7 @@ namespace SASL
{ {
time_t created; time_t created;
Anope::string uid; Anope::string uid;
Anope::string hostname, ip;
Reference<Mechanism> mech; Reference<Mechanism> mech;
Session(Mechanism *m, const Anope::string &u) : created(Anope::CurTime), uid(u), mech(m) { } Session(Mechanism *m, const Anope::string &u) : created(Anope::CurTime), uid(u), mech(m) { }
@@ -76,9 +77,10 @@ namespace SASL
class IdentifyRequest : public ::IdentifyRequest class IdentifyRequest : public ::IdentifyRequest
{ {
Anope::string uid; Anope::string uid;
Anope::string hostname, ip;
public: public:
IdentifyRequest(Module *m, const Anope::string &id, const Anope::string &acc, const Anope::string &pass) : ::IdentifyRequest(m, acc, pass), uid(id) { } IdentifyRequest(Module *m, const Anope::string &id, const Anope::string &acc, const Anope::string &pass, const Anope::string &h, const Anope::string &i) : ::IdentifyRequest(m, acc, pass), uid(id), hostname(h), ip(i) { }
void OnSuccess() anope_override void OnSuccess() anope_override
{ {
@@ -86,7 +88,7 @@ namespace SASL
return; return;
NickAlias *na = NickAlias::Find(GetAccount()); NickAlias *na = NickAlias::Find(GetAccount());
if (!na || na->nc->HasExt("NS_SUSPENDED")) if (!na || na->nc->HasExt("NS_SUSPENDED") || na->nc->HasExt("UNCONFIRMED"))
return OnFail(); return OnFail();
unsigned int maxlogins = Config->GetModule("ns_identify")->Get<unsigned int>("maxlogins"); unsigned int maxlogins = Config->GetModule("ns_identify")->Get<unsigned int>("maxlogins");
@@ -96,7 +98,11 @@ namespace SASL
Session *s = sasl->GetSession(uid); Session *s = sasl->GetSession(uid);
if (s) if (s)
{ {
Log(Config->GetClient("NickServ"), "sasl") << "A user identified to account " << this->GetAccount() << " using SASL"; Anope::string user = "A user";
if (!hostname.empty() && !ip.empty())
user = hostname + " (" + ip + ")";
Log(this->GetOwner(), "sasl", Config->GetClient("NickServ")) << user << " identified to account " << this->GetAccount() << " using SASL";
sasl->Succeed(s, na->nc); sasl->Succeed(s, na->nc);
delete s; delete s;
} }
@@ -120,8 +126,14 @@ namespace SASL
accountstatus = "nonexistent "; accountstatus = "nonexistent ";
else if (na->nc->HasExt("NS_SUSPENDED")) else if (na->nc->HasExt("NS_SUSPENDED"))
accountstatus = "suspended "; accountstatus = "suspended ";
else if (na->nc->HasExt("UNCONFIRMED"))
accountstatus = "unconfirmed ";
Log(Config->GetClient("NickServ"), "sasl") << "A user failed to identify for " << accountstatus << "account " << this->GetAccount() << " using SASL"; Anope::string user = "A user";
if (!hostname.empty() && !ip.empty())
user = hostname + " (" + ip + ")";
Log(this->GetOwner(), "sasl", Config->GetClient("NickServ")) << user << " failed to identify for " << accountstatus << "account " << this->GetAccount() << " using SASL";
} }
}; };
} }
+1 -1
View File
@@ -1,6 +1,6 @@
/* /*
* *
* (C) 2003-2016 Anope Team * (C) 2003-2017 Anope Team
* Contact us at team@anope.org * Contact us at team@anope.org
* *
* Please read COPYING and README for further details. * Please read COPYING and README for further details.
+1 -1
View File
@@ -1,6 +1,6 @@
/* /*
* *
* (C) 2003-2016 Anope Team * (C) 2003-2017 Anope Team
* Contact us at team@anope.org * Contact us at team@anope.org
* *
* Please read COPYING and README for further details. * Please read COPYING and README for further details.
+1 -1
View File
@@ -1,6 +1,6 @@
/* /*
* *
* (C) 2010-2016 Anope Team * (C) 2010-2017 Anope Team
* Contact us at team@anope.org * Contact us at team@anope.org
* *
* Please read COPYING and README for further details. * Please read COPYING and README for further details.
+1 -1
View File
@@ -1,6 +1,6 @@
/* /*
* *
* (C) 2003-2016 Anope Team * (C) 2003-2017 Anope Team
* Contact us at team@anope.org * Contact us at team@anope.org
* *
* Please read COPYING and README for further details. * Please read COPYING and README for further details.
+1 -1
View File
@@ -1,6 +1,6 @@
/* /*
* *
* (C) 2010-2016 Anope Team * (C) 2010-2017 Anope Team
* Contact us at team@anope.org * Contact us at team@anope.org
* *
* Please read COPYING and README for further details. * Please read COPYING and README for further details.
+1 -1
View File
@@ -1,7 +1,7 @@
/* /*
* *
* (C) 2008-2011 Robin Burchell <w00t@inspircd.org> * (C) 2008-2011 Robin Burchell <w00t@inspircd.org>
* (C) 2008-2016 Anope Team <team@anope.org> * (C) 2008-2017 Anope Team <team@anope.org>
* *
* Please read COPYING and README for further details. * Please read COPYING and README for further details.
*/ */
+5 -4
View File
@@ -1,6 +1,6 @@
/* /*
* *
* (C) 2003-2016 Anope Team * (C) 2003-2017 Anope Team
* Contact us at team@anope.org * Contact us at team@anope.org
* *
* Please read COPYING and README for further details. * Please read COPYING and README for further details.
@@ -196,8 +196,8 @@ class CoreExport IRCDProto : public Service
*/ */
virtual void SendConnect() = 0; virtual void SendConnect() = 0;
/** Called right before we begin our burst, after we have handshaked successfully with the uplink/ /** Called right before we begin our burst, after we have handshaked successfully with the uplink.
* At this point none of our servesr, users, or channels exist on the uplink * At this point none of our servers, users, or channels exist on the uplink
*/ */
virtual void SendBOB() { } virtual void SendBOB() { }
virtual void SendEOB() { } virtual void SendEOB() { }
@@ -227,8 +227,9 @@ class CoreExport IRCDProto : public Service
*/ */
virtual void SendOper(User *u); virtual void SendOper(User *u);
virtual void SendSASLMechanisms(std::vector<Anope::string> &) { }
virtual void SendSASLMessage(const SASL::Message &) { } virtual void SendSASLMessage(const SASL::Message &) { }
virtual void SendSVSLogin(const Anope::string &uid, const Anope::string &acc) { } virtual void SendSVSLogin(const Anope::string &uid, const Anope::string &acc, const Anope::string &vident, const Anope::string &vhost) { }
virtual bool IsNickValid(const Anope::string &); virtual bool IsNickValid(const Anope::string &);
virtual bool IsChannelValid(const Anope::string &); virtual bool IsChannelValid(const Anope::string &);
+1 -1
View File
@@ -1,6 +1,6 @@
/* /*
* *
* (C) 2008-2016 Anope Team * (C) 2008-2017 Anope Team
* Contact us at team@anope.org * Contact us at team@anope.org
* *
* Please read COPYING and README for further details. * Please read COPYING and README for further details.
+1 -1
View File
@@ -1,6 +1,6 @@
/* /*
* *
* (C) 2003-2016 Anope Team * (C) 2003-2017 Anope Team
* Contact us at team@anope.org * Contact us at team@anope.org
* *
* Please read COPYING and README for further details. * Please read COPYING and README for further details.
+1 -1
View File
@@ -1,6 +1,6 @@
/* /*
* *
* (C) 2003-2016 Anope Team * (C) 2003-2017 Anope Team
* Contact us at team@anope.org * Contact us at team@anope.org
* *
* Please read COPYING and README for further details. * Please read COPYING and README for further details.
+1 -1
View File
@@ -1,6 +1,6 @@
/* /*
* *
* (C) 2003-2016 Anope Team * (C) 2003-2017 Anope Team
* Contact us at team@anope.org * Contact us at team@anope.org
* *
* Please read COPYING and README for further details. * Please read COPYING and README for further details.
+1 -1
View File
@@ -1,6 +1,6 @@
/* /*
* *
* (C) 2003-2016 Anope Team * (C) 2003-2017 Anope Team
* Contact us at team@anope.org * Contact us at team@anope.org
* *
* Please read COPYING and README for further details. * Please read COPYING and README for further details.
+1 -1
View File
@@ -1,6 +1,6 @@
/* /*
* *
* (C) 2003-2016 Anope Team * (C) 2003-2017 Anope Team
* Contact us at team@anope.org * Contact us at team@anope.org
* *
* Please read COPYING and README for further details. * Please read COPYING and README for further details.
+1 -1
View File
@@ -1,6 +1,6 @@
/* /*
* *
* (C) 2003-2016 Anope Team * (C) 2003-2017 Anope Team
* Contact us at team@anope.org * Contact us at team@anope.org
* *
* Please read COPYING and README for further details. * Please read COPYING and README for further details.
+10 -1
View File
@@ -1,6 +1,6 @@
/* /*
* *
* (C) 2003-2016 Anope Team * (C) 2003-2017 Anope Team
* Contact us at team@anope.org * Contact us at team@anope.org
* *
* Please read COPYING and README for further details. * Please read COPYING and README for further details.
@@ -38,6 +38,10 @@ union CoreExport sockaddrs
*/ */
void clear(); void clear();
/** Get address family.
*/
int family() const;
/** Get the size of the sockaddr we represent /** Get the size of the sockaddr we represent
* @return The size * @return The size
*/ */
@@ -53,6 +57,11 @@ union CoreExport sockaddrs
*/ */
Anope::string addr() const; Anope::string addr() const;
/** Get the reverse address represented by this addr
* @return The reverse address
*/
Anope::string reverse() const;
/* Is this address ipv6? */ /* Is this address ipv6? */
bool ipv6() const; bool ipv6() const;
+1 -1
View File
@@ -1,6 +1,6 @@
/* /*
* *
* (C) 2003-2016 Anope Team * (C) 2003-2017 Anope Team
* Contact us at team@anope.org * Contact us at team@anope.org
* *
* Please read COPYING and README for further details. * Please read COPYING and README for further details.
+1 -1
View File
@@ -1,6 +1,6 @@
/* Timer include stuff. /* Timer include stuff.
* *
* (C) 2003-2016 Anope Team * (C) 2003-2017 Anope Team
* Contact us at team@anope.org * Contact us at team@anope.org
* *
* Please read COPYING and README for further details. * Please read COPYING and README for further details.
+1 -1
View File
@@ -1,6 +1,6 @@
/* /*
* *
* (C) 2003-2016 Anope Team * (C) 2003-2017 Anope Team
* Contact us at team@anope.org * Contact us at team@anope.org
* *
* Please read COPYING and README for further details. * Please read COPYING and README for further details.
+4 -5
View File
@@ -1,7 +1,7 @@
/* /*
* *
* (C) 2008-2011 Robin Burchell <w00t@inspircd.org> * (C) 2008-2011 Robin Burchell <w00t@inspircd.org>
* (C) 2003-2016 Anope Team <team@anope.org> * (C) 2003-2017 Anope Team <team@anope.org>
* *
* Please read COPYING and README for further details. * Please read COPYING and README for further details.
* *
@@ -347,10 +347,9 @@ class CoreExport User : public virtual Base, public Extensible, public CommandRe
/* Returns a mask that will most likely match any address the /* Returns a mask that will most likely match any address the
* user will have from that location. For IP addresses, wildcards the * user will have from that location. For IP addresses, wildcards the
* appropriate subnet mask (e.g. 35.1.1.1 -> 35.*; 128.2.1.1 -> 128.2.*); * last octet (e.g. 35.1.1.1 -> 35.1.1.*). for named addresses, wildcards
* for named addresses, wildcards the leftmost part of the name unless the * the leftmost part of the name unless the name only contains two parts.
* name only contains two parts. If the username begins with a ~, delete * If the username begins with a ~, replace with *.
* it.
*/ */
Anope::string Mask() const; Anope::string Mask() const;
+1 -1
View File
@@ -1,6 +1,6 @@
/* Build bumper /* Build bumper
* *
* (C) 2003-2016 Anope Team * (C) 2003-2017 Anope Team
* Contact us at team@anope.org * Contact us at team@anope.org
* *
* Please read COPYING and README for further details. * Please read COPYING and README for further details.
+1 -1
View File
@@ -1,6 +1,6 @@
/* /*
* *
* (C) 2008-2016 Anope Team * (C) 2008-2017 Anope Team
* Contact us at team@anope.org * Contact us at team@anope.org
* *
* Please read COPYING and README for further details. * Please read COPYING and README for further details.
+716 -691
View File
File diff suppressed because it is too large Load Diff
+716 -706
View File
File diff suppressed because it is too large Load Diff
+719 -709
View File
File diff suppressed because it is too large Load Diff
+727 -696
View File
File diff suppressed because it is too large Load Diff
+722 -707
View File
File diff suppressed because it is too large Load Diff
+1049 -1160
View File
File diff suppressed because it is too large Load Diff
+715 -692
View File
File diff suppressed because it is too large Load Diff
+722 -704
View File
File diff suppressed because it is too large Load Diff
+534 -507
View File
File diff suppressed because it is too large Load Diff
+717 -691
View File
File diff suppressed because it is too large Load Diff
+716 -692
View File
File diff suppressed because it is too large Load Diff
+716 -692
View File
File diff suppressed because it is too large Load Diff
+716 -691
View File
File diff suppressed because it is too large Load Diff
-1
View File
@@ -167,4 +167,3 @@ endmacro(build_subdir)
include_directories(${CMAKE_CURRENT_SOURCE_DIR}) include_directories(${CMAKE_CURRENT_SOURCE_DIR})
build_modules(${CMAKE_CURRENT_SOURCE_DIR}) build_modules(${CMAKE_CURRENT_SOURCE_DIR})
+1 -1
View File
@@ -1,6 +1,6 @@
/* /*
* *
* (C) 2003-2016 Anope Team * (C) 2003-2017 Anope Team
* Contact us at team@anope.org * Contact us at team@anope.org
* *
* Please read COPYING and README for further details. * Please read COPYING and README for further details.
+1 -1
View File
@@ -1,6 +1,6 @@
/* BotServ core functions /* BotServ core functions
* *
* (C) 2003-2016 Anope Team * (C) 2003-2017 Anope Team
* Contact us at team@anope.org * Contact us at team@anope.org
* *
* Please read COPYING and README for further details. * Please read COPYING and README for further details.
+2 -2
View File
@@ -1,6 +1,6 @@
/* BotServ core functions /* BotServ core functions
* *
* (C) 2003-2016 Anope Team * (C) 2003-2017 Anope Team
* Contact us at team@anope.org * Contact us at team@anope.org
* *
* Please read COPYING and README for further details. * Please read COPYING and README for further details.
@@ -393,7 +393,7 @@ class CommandBSBadwords : public Command
return; return;
} }
if (!source.AccessFor(ci).HasPriv("BADWORDS") && (!need_args || !source.HasPriv("botserv/administration"))) if (!source.AccessFor(ci).HasPriv("BADWORDS") && !source.HasPriv("botserv/administration"))
{ {
source.Reply(ACCESS_DENIED); source.Reply(ACCESS_DENIED);
return; return;
+1 -1
View File
@@ -1,6 +1,6 @@
/* BotServ core functions /* BotServ core functions
* *
* (C) 2003-2016 Anope Team * (C) 2003-2017 Anope Team
* Contact us at team@anope.org * Contact us at team@anope.org
* *
* Please read COPYING and README for further details. * Please read COPYING and README for further details.
+1 -1
View File
@@ -1,6 +1,6 @@
/* BotServ core functions /* BotServ core functions
* *
* (C) 2003-2016 Anope Team * (C) 2003-2017 Anope Team
* Contact us at team@anope.org * Contact us at team@anope.org
* *
* Please read COPYING and README for further details. * Please read COPYING and README for further details.
+1 -1
View File
@@ -1,6 +1,6 @@
/* BotServ core functions /* BotServ core functions
* *
* (C) 2003-2016 Anope Team * (C) 2003-2017 Anope Team
* Contact us at team@anope.org * Contact us at team@anope.org
* *
* Please read COPYING and README for further details. * Please read COPYING and README for further details.
+1 -1
View File
@@ -1,6 +1,6 @@
/* BotServ core functions /* BotServ core functions
* *
* (C) 2003-2016 Anope Team * (C) 2003-2017 Anope Team
* Contact us at team@anope.org * Contact us at team@anope.org
* *
* Please read COPYING and README for further details. * Please read COPYING and README for further details.

Some files were not shown because too many files have changed in this diff Show More