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

Compare commits

...

205 Commits

Author SHA1 Message Date
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
Adam d9c0a13caf Anope 2.0.3 Release 2016-01-30 17:27:31 -05:00
Robby 5daa84c7f9 Update the dutch language file. 2016-01-30 23:26:32 +01:00
Adam b12669487f Allow /ms read to get a comma separated list of memo numbers as help describes. Show message if no memos could be displayed. 2016-01-30 16:54:20 -05:00
Robby 0e9a1e87d0 The default xop access for PROTECTME should really be SOP, not AOP. 2016-01-29 19:42:10 +01:00
Robby f118960a25 Update copyright to 2016. This was done with:
find include/ src/ lang/ docs/ modules/ *.* Config -exec sed -i 's/-20.. Anope Team/-2014 Anope Team/i' {} \;

Added missing copyright headers to files that didn't have it yet.
Fixed some whitespace and blank lines along the way.
2016-01-28 20:24:49 +01:00
Adam 5d6a71b6d2 Regenerate language files 2016-01-28 08:15:38 -05:00
Adam 23fab4ad06 Revert "Regenerate language files"
This reverts commit e955db6e85.
2016-01-28 08:15:24 -05:00
Adam 825dc5be46 Revert "Updated and fixed the Greek language."
This reverts commit f451c6cbac.
2016-01-28 08:14:58 -05:00
Robby b6fb6410c0 Update the dutch language file. 2016-01-27 19:14:12 +01:00
Robby 45dfea5ad9 Document m_xmlrpc_main opers 2016-01-27 18:04:55 +01:00
Adam d0a5316c67 Remove default session exception expiry time 2016-01-25 11:51:31 -05:00
Adam 382ab84938 Merge pull request #150 from westor7/patch-1
Updated and fixed the Greek language.
2016-01-25 10:31:47 -06:00
westor f451c6cbac Updated and fixed the Greek language.
Updated and fixed all the non-fuzzy languages items, previously all of them was incorrect.
Added new credits.
2016-01-24 17:20:00 +02:00
Adam 9645f53dc8 Update m_ssl_gnutls Windows library version to libgnutls-30 2016-01-23 22:25:19 -05:00
Adam 41802c28c6 Fix m_sql_oper to compile from the cleanup of the other day 2016-01-23 20:45:10 -05:00
Adam 97a13081e9 Fix typo in changes 2016-01-23 20:44:50 -05:00
Adam 38fcf15d62 Put maxlogins logic a few other important places 2016-01-23 10:53:32 -05:00
Adam 75dd784538 Fix hybrid to compile 2016-01-23 10:53:22 -05:00
Adam e955db6e85 Regenerate language files 2016-01-23 10:37:23 -05:00
Adam a434651e75 Update Changelogs 2016-01-23 10:36:04 -05:00
Adam 7d674726c2 Merge pull request #145 from miwob/style+copyright
Style+copyright
2016-01-23 09:19:08 -06:00
Adam be50211ae6 Merge pull request #149 from miwob/SendSQLine
Update SendSQLine() in hybrid's protocol module to use non-capsulatet…
2016-01-23 09:18:41 -06:00
Adam faa8f57bb2 Merge pull request #148 from SaberUK/2.0+18mod
Error out if any 1.8 modules are in the the module directory.
2016-01-23 09:18:32 -06:00
Adam 8cf21191fb Merge pull request #147 from miwob/temporary_xline
Update SendSGLine() in hybrid's protocol module to add support for te…
2016-01-23 09:18:12 -06:00
Adam ae847bcaf0 Merge pull request #144 from miwob/chankill_example
example.conf: announce operserv/chankill as well
2016-01-23 09:17:56 -06:00
Adam c4bbef0af8 Merge pull request #143 from staticfox/grammar
hs_group: Fix grammar
2016-01-23 09:17:44 -06:00
Adam 7953274a88 Re-lookup access in webcpanel after deleting access as the old group might be invalid 2016-01-23 10:15:01 -05:00
Adam d8eb3d4937 Apply regex sqlines on connect too 2016-01-23 08:58:08 -05:00
Adam f91f375b70 Show akill/xline ids in view 2016-01-22 10:29:44 -05:00
Adam eac25d016a Include memo mail information in ms_info 2016-01-22 10:13:05 -05:00
miwob 2356a1caab Update SendSQLine() in hybrid's protocol module to use non-capsulatet RESV message 2016-01-20 19:18:52 +01:00
Adam 164b349ef9 Fix various inconsistencies/crashes related to having multiple opers configured for the same user through combinations of os_oper/config/m_sql_oper 2016-01-19 16:25:02 -05:00
Peter Powell 2e370f6ed5 Error out if any 1.8 modules are in the the module directory. 2016-01-19 21:07:34 +00:00
miwob 9d30e1d63f Update SendSGLine() in hybrid's protocol module to add support for temporary x-lines 2016-01-19 20:07:45 +01:00
Adam 4771af1cb8 Couple user find by nick fixes 2016-01-19 08:30:35 -05:00
Adam 9c9df2ad1f Document ns_no_expire nick default 2016-01-19 08:30:06 -05:00
miwob 7f418a58da hybrid.cpp: clean up style to match with other code; update copyright header 2016-01-13 16:23:22 +01:00
miwob 510045858f example.conf: announce operserv/chankill as well 2016-01-12 20:00:08 +01:00
Matt Ullman d270910ace hs_group: Fix grammar 2016-01-12 09:31:58 -05:00
Adam 10aeba2da2 Merge pull request #142 from Zoddo/unreal4/uid
[Unreal4] Use UID/SID instead of nick/servername when possible
2016-01-03 11:36:03 -06:00
Zoddo 4e675c50e5 [Unreal4] Use UID/SID instead of nick/servername when possible 2016-01-03 16:31:45 +01:00
Adam 0a37576270 Actually there is no account here 2016-01-02 17:19:08 -05:00
Adam 8f6f2a2c47 Add sasl log category for auth log messages 2016-01-02 17:15:26 -05:00
Adam 36a465473e Add IRCDMESSAGE_SOFT_LIMIT to MD handler 2016-01-02 16:38:25 -05:00
Adam 23a0ecd0c4 unreal4: add md handler, certfp support 2015-12-30 16:11:41 -05:00
Adam 601af1b0eb Unreal 4 changes 2015-12-30 12:42:12 -05:00
Adam fb2aae1b17 Copy unreal -> unreal4 2015-12-30 12:42:03 -05:00
Adam ac984af11a Move CanAdd() check to after mask sanitization as it will remove other entries that are considered "covered by" the new mask 2015-12-29 14:04:45 -05:00
Adam d6cbd64621 Remove run-cc leftover 2015-12-29 14:04:04 -05:00
Adam e6bdc5dddd Merge pull request #141 from miwob/2.0+cmode_T_nonotice
Add support for channel mode +T to the ircd-hybrid protocol module
2015-12-29 12:57:09 -06:00
Adam ba805e30b8 Include gecos in GetNUHMask 2015-12-29 13:53:44 -05:00
Adam 6e48b1d56f Fix saset language reply 2015-12-28 17:45:44 -05:00
Michael Wobst cd6401f628 Add support for channel mode +T to the ircd-hybrid protocol module 2015-12-26 13:29:18 +01:00
Adam a25f94456d Fix race with recovering and svsnicing nicknames. Wait for first svsnick to go through before issuing the second. Fixes users sometimes svsnick colliding when recovering nicknames. 2015-12-19 13:38:47 -05:00
Adam b5228282e1 Merge commit '593ec34' into 2.0 2015-12-13 19:59:29 -05:00
Matt Ullman 593ec34ff7 os_akill: Sanity check AKILLing before modifing the akill list 2015-12-13 19:58:40 -05:00
Adam 7ce0eb219b Fixup ecdd046c80 to compile 2015-12-13 19:52:50 -05:00
miwob 99282e65a6 hybrid.cpp:SendClientIntroduction(): use a valid IP address format. In the future ircd-hybrid will reject UID messages with invalid IP addresses 2015-12-13 19:48:22 -05:00
Adam d07e60b3da Merge pull request #136 from miwob/add+CanSQLineChannel
hybrid.cpp: add missing CanSQLineChannel = true; to the protocol options
2015-12-13 18:46:14 -06:00
Adam 3da2cdb496 Only special case level -1 to everyone and not everything <0 2015-12-13 19:43:21 -05:00
Adam ecdd046c80 Add some replacement tokens for akick reason and welcome notice 2015-12-13 19:37:24 -05:00
Adam 98b35dfab2 Document m_xmlrpc_main notice 2015-12-13 19:28:31 -05:00
Adam 56abaf8498 Add notice method to m_xmlrpc_main 2015-12-13 19:27:15 -05:00
Adam 5394f5433a Fix SendNumericInternal on inspircd sending to the user's uid if dest is a uid 2015-12-13 19:21:53 -05:00
Adam c414433fae Allow wildcard searching emails 2015-12-13 19:19:00 -05:00
Adam 16d08e57df Fall back to account vhost in hs on/off 2015-12-13 19:14:44 -05:00
Adam 252a65af7e Update LOG dir in anoperc 2015-12-08 14:06:08 -05:00
Adam d40edcae69 null xline manager when removing so removexline doesn't get called 2015-11-05 20:50:10 -05:00
Adam 4c1cc0e05d Cleanup after xlines if directly removed 2015-11-04 20:51:02 -05:00
Adam 80c332bc41 Fix logonnews to prioritize the newest entries if it can't show them all 2015-11-04 20:05:01 -05:00
miwob 5a25a3807b hybrid.cpp: add missing CanSQLineChannel = true; to the protocol options 2015-10-24 12:45:19 +02:00
Robby 27a2645ed3 Fix chanserv botmodes. 2015-09-25 02:40:28 +02:00
Adam 830361e97d Check privilege name is valid in SetLevel 2015-09-24 17:22:44 -04:00
Adam 93a92bb73b Clear regex xlines on unload, which happens on shutdown, even though they are perm modules 2015-09-23 14:55:28 -04:00
Robby b9dc44ae9a Update the dutch language file. 2015-09-18 06:04:42 +02:00
Robby f52bbe22af Update my email address. 2015-09-18 05:38:44 +02:00
Robby 96d7797134 Bold code 2 -> 002. 2015-09-18 05:25:20 +02:00
Robby 9810da9829 Fix some sentences to be more correct. 2015-09-18 04:53:49 +02:00
Adam 5692abb316 Don't prevent channel destruction because persist is set. Perm mode/a bot should be assigned anyway which will prevent it. Fixes deleting bots out of perm channels causing desyncs 2015-09-17 20:35:46 -04:00
Adam 2e65bd4012 Channel::DeleteUser delets the container 2015-09-17 12:31:02 -04:00
Adam 1ac4a1d9a5 Defer channel deletion until after i/o. There are some edge cases with events kicking users mid-event that can delete them. 2015-09-17 10:07:30 -04:00
Adam 8d13a355cd Remove associated oper blocks in os_oper when accounts are deleted 2015-09-14 13:43:14 -04:00
Adam 8c4eec2b6e Update topic lock help to reflect how it works 2015-09-14 12:39:59 -04:00
Adam 776207ba67 Don't allow suspended users to login to webcpanel 2015-09-14 12:35:26 -04:00
Adam 2f5e880e57 Don't update channel last used time from ns alist access check 2015-09-14 12:24:13 -04:00
Adam 94f781726e Don't assign bots when persist is set if we aren't synced sinec we might not know of all modes 2015-09-11 14:54:48 -04:00
Adam 054c227df0 Merge pull request #120 from Alef-Burzmali/2.0+nobackupok
Fix db_flatfile to read the "nobackokay" setting
2015-09-06 16:12:22 -04:00
Adam 907e192aab Merge pull request #126 from SaberUK/2.0+typos
Fix a ton of typos.
2015-09-06 16:11:50 -04:00
Adam d6d0c883b0 Merge pull request #128 from SaberUK/2.0+destdir
Fix support for passing relative install paths to CMake.
2015-09-06 16:09:29 -04:00
Adam 7f4327e8ba Merge pull request #129 from AlphaT3ch/placeholder
Placeholder left in French Translation
2015-09-06 16:08:17 -04:00
Adam 132932ffaf Merge pull request #134 from retsofaj/2.0
Have CMake first check for libraries in any additional locations
2015-09-06 16:03:58 -04:00
Adam c007b829f7 Don't unset modes which have no privilege associated with them 2015-09-06 16:01:43 -04:00
Robby 3b647b0740 When toggling NOEXPIRE for a nickname, show the actual nickname in addition to the account name. 2015-09-02 20:36:24 +02:00
Adam 7a21648683 Only remove collide timers if the account matches on id 2015-08-20 15:04:03 -04:00
Jason Foster 389c1dbd92 Have CMake check for libraries first in any additional locations and second in the standard locations.
This allows (e.g.) using the Homebrew-installed OpenSSL instead of the system version.
2015-08-12 20:26:02 -04:00
Adam d95189a4d8 Fix webcpanel/memoserv/memos with a nonexistent channel 2015-07-31 18:26:49 -04:00
Adam e65a22ae9d Fix use after free from unloading modules which are the last one holding onto an IdentifyRequest 2015-07-31 17:07:30 -04:00
Adam 4e8cc4f786 Make secureops help less weird 2015-07-30 19:47:00 -04:00
Adam dfc18db1dd Remove unused variables from m_ldap 2015-07-23 08:25:28 -04:00
Adam 63dbd7fbf0 Set LDAP_OPT_PROTOCOL_VERSION 3 etc on reconnect, too 2015-07-23 08:23:48 -04:00
AlphaTech c1cdefe1a7 Placeholder left in French Translation 2015-07-16 15:21:13 -04:00
Peter Powell cd9a2af65d Fix support for passing relative install paths to CMake. 2015-07-15 00:28:59 +01:00
Adam 7fe0543bc6 Also UnsetExtensibles on botinfo 2015-07-14 18:52:23 -04:00
Peter Powell 2a6ad3d9fc Refuse to configure with old compilers that can't build Anope. 2015-07-13 19:26:02 -04:00
Adam 38cbff4156 Fix cmake for 2.4 once again 2015-07-13 19:25:37 -04:00
Adam a86162f287 Fix incorrect iteration when destructing modelockimpls 2015-07-13 18:02:44 -04:00
Adam ceddb8370c Unset extensibles on larger objects when they destruct
Some complex extensibles require the full object to still be alive in
their destructors to keep proper bookkeeping
2015-07-13 17:59:14 -04:00
Thomas Fargeix 040b06ad56 Fix db_flatfile to read "nobackupokay" 2015-07-11 10:27:27 +02:00
Peter Powell 1666b1a8d8 Fix a ton of typos. 2015-07-08 11:06:02 +01:00
Adam 4362f53cc3 Fix unused variable warning in cs_clone 2015-07-01 20:16:59 -04:00
Dominic Hargreaves cc616a7146 Allow PROGRAM_NAME to be set during configuration 2015-07-01 20:10:15 -04:00
Dominic Hargreaves 0f01c04b02 Allow disabling installation of extra tools (with DISABLE_TOOLS) 2015-07-01 20:09:46 -04:00
Dominic Hargreaves 4cbdf9a73b Support DESTDIR
If DESTDIR is set it should be prepended to CMAKE_INSTALL_PREFIX. See
<http://www.cmake.org/cmake/help/v3.2/variable/CMAKE_INSTALL_PREFIX.html>
2015-07-01 20:08:51 -04:00
Adam fce257dc43 Merge pull request #121 from SaberUK/2.0+cmake-improvements
Various improvements to the build system.
2015-07-01 20:00:59 -04:00
Adam ad7601b0cc Merge pull request #119 from Jyzee/irc2sql-away
irc2sql: handle away messages.
2015-07-01 19:51:29 -04:00
Adam 5be9de5d12 Merge pull request #123 from Alef-Burzmali/2.0+cs-levels
Allow opers with chanserv/access/list to view the levels list
2015-07-01 19:50:26 -04:00
Adam 02ed9a9725 #1649 don't update keepmodes during inhbait 2015-06-29 19:35:57 -04:00
Adam 074f163750 #1643 Umode +I is oper only on Unreal 2015-06-29 13:57:32 -04:00
Adam de023bab0a Don't allow registering service nicks 2015-06-29 13:47:50 -04:00
Adam 510a746f8d Add ns_identify:maxlogins to limit the max number of concurrent logins per account 2015-06-29 09:37:09 -04:00
Adam 8eb46772e6 Don't allow loading hostserv mods if there can be no hostserv 2015-06-29 08:58:31 -04:00
Adam d563aa0da8 Check name validity after unpackname() to check for bad names in questins and ptr/cname rdata 2015-06-29 08:48:08 -04:00
Adam 3e3312db25 Don't allow adding or changing bots to collide with users 2015-06-29 08:42:29 -04:00
Adam bb5c4906cc Also clear vhost on hs_off so the proto mods don't have to 2015-06-21 10:42:49 -04:00
Adam 444976e64f Update host on hs off too
Protocol modules which don't trigger this by causing a mode change
currently desync
2015-06-20 17:33:13 -04:00
Thomas Fargeix 57b614ae59 Allow opers with chanserv/access/list to view the levels list 2015-06-14 19:33:45 +02:00
Peter Powell 2f9eabdb72 Remove support for run-cc.
This tool is not useful anymore. It just slows the build down.
2015-05-17 21:27:09 +01:00
Jyzee a458f7c840 irc2sql: handle away messages. 2015-04-30 19:29:44 +02:00
Adam 65bf84cfb5 When introducing opered clients on inspircd send a fake opertype 2015-04-28 15:23:31 -04:00
Adam 5efaa5b206 Merge pull request #117 from aFreshMelon/fix-xmlrpc-php
Fix xmlrpc php
2015-04-04 09:50:57 -04:00
Sebastian 41f4c7dab6 A variety of small improvements to xmlrpc.php
Pretty simple stuff.

* Better method names
* Better DocBlocks
* Lowercase variables
2015-04-04 09:43:51 +02:00
Peter Powell 0f1936f63d Fix matching the Apple Clang variant on CMake 3.0+ 2015-04-04 03:28:46 +01:00
Peter Powell 5baa6247a9 Don't overwrite CMAKE_INSTALL_PREFIX if it has already been set. 2015-04-02 01:43:05 +01:00
Peter Powell 82f5d1d61d Remove an old Autotools limitation.
This is not needed anymore as support for Autotools was removed.
2015-04-02 01:38:31 +01:00
Sebastian dd8dd3b4a0 Make xmlrpc.php comply with PSR-2 coding standard 2015-04-01 23:28:41 +02:00
Sebastian a718223585 Remove workaround that is no longer needed
This workaround was required previously but breaks the code with the corrections to the XML-RPC response.
2015-04-01 23:27:44 +02:00
Robby- abc4851287 Update the dutch language file. 2015-03-23 02:39:18 +01:00
Adam 3d1255dbe9 Anope 2.0.3-git 2015-03-22 21:22:49 -04:00
373 changed files with 14514 additions and 11451 deletions
+2
View File
@@ -28,7 +28,9 @@ Naram Qashat <cyberbotx@anope.org> <cyberbotx@5417fbe8-f217-4b02-8779-1006273d78
Naram Qashat <cyberbotx@anope.org> <cyberbotx@cyberbotx.com>
Naram Qashat <cyberbotx@anope.org> <Naram Qashat cyberbotx@cyberbotx.com@5417fbe8-f217-4b02-8779-1006273d7864>
Pieter Bootsma <geniusdex@anope.org> <geniusdex geniusdex@31f1291d-b8d6-0310-a050-a5561fc1590b@5417fbe8-f217-4b02-8779-1006273d7864>
Robby <robby@anope.org>
Robby <robby@chat.be>
Robby <robby@chatbelgie.be>
Robin Burchell <w00t@inspircd.org> <rburchell@5417fbe8-f217-4b02-8779-1006273d7864>
Robin Burchell <w00t@inspircd.org> <Robin Burchell w00t@inspircd.org@5417fbe8-f217-4b02-8779-1006273d7864>
Sebastian V. <hal9000@denorastats.org>
+41 -37
View File
@@ -10,11 +10,6 @@ if(COMMAND cmake_policy)
endif(POLICY CMP0007)
endif(COMMAND cmake_policy)
# If the Source dir and the Binary dir are the same, we are building in-source, which we will disallow due to Autotools being there (but only on non-Windows)
if(${CMAKE_CURRENT_SOURCE_DIR} STREQUAL ${CMAKE_CURRENT_BINARY_DIR} AND NOT WIN32)
message(FATAL_ERROR "You can not use CMake to build Anope from the root of it's source tree! Remove the CMakeCache.txt file from this directory, then create a separate directory (either below this directory or elsewhere), and then re-run CMake from there.")
endif(${CMAKE_CURRENT_SOURCE_DIR} STREQUAL ${CMAKE_CURRENT_BINARY_DIR} AND NOT WIN32)
# Set the project as C++ primarily, but have C enabled for the checks required later
project(Anope CXX)
enable_language(C)
@@ -50,20 +45,20 @@ if(MINOR_VERSION GREATER 5)
set(CMAKE242_OR_BETTER TRUE)
else(MINOR_VERSION GREATER 5)
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-existant in earlier versions
# Also detect if we are using CMake 2.4.8 or better, the FIND sub-command of list() is non-existent in earlier versions
if(PATCH_VERSION GREATER 7)
set(CMAKE248_OR_BETTER TRUE)
set(CMAKE244_OR_BETTER TRUE)
set(CMAKE242_OR_BETTER TRUE)
else(PATCH_VERSION GREATER 7)
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-existant 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 non-existent in earlier versions
if(PATCH_VERSION GREATER 3)
set(CMAKE244_OR_BETTER TRUE)
set(CMAKE242_OR_BETTER TRUE)
else(PATCH_VERSION GREATER 3)
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-existant in earlier versions
# ALSO detect if we are using CMake 2.4.2 or better, the APPEND sub-command of list() is non-existent in earlier versions
if(PATCH_VERSION GREATER 1)
set(CMAKE242_OR_BETTER TRUE)
else(PATCH_VERSION GREATER 1)
@@ -85,8 +80,20 @@ set(ENV{LC_ALL} C)
set(DEFAULT_LIBRARY_DIRS)
set(DEFAULT_INCLUDE_DIRS)
# Check that we aren't running on an ancient broken GCC
if(CMAKE_COMPILER_IS_GNUCXX)
execute_process(COMMAND ${CMAKE_CXX_COMPILER} -dumpversion OUTPUT_VARIABLE GCC_FULL_VERSION OUTPUT_STRIP_TRAILING_WHITESPACE)
string(REGEX REPLACE "^(\\d+\\.\\d+)" "\\1" GCC_VERSION ${GCC_FULL_VERSION})
if(GCC_VERSION LESS 4.2)
message(FATAL_ERROR "Your compiler is too old to build Anope. Upgrade to GCC 4.2 or newer!")
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)
# 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(CMAKE_COMPILER_IS_GNUCXX OR ${CMAKE_CXX_COMPILER_ID} STREQUAL "Clang")
if(CMAKE_COMPILER_IS_GNUCXX OR "${CMAKE_CXX_COMPILER_ID}" MATCHES "Clang$")
# First look for the compiler's default library directories
execute_process(COMMAND ${CMAKE_C_COMPILER} -print-search-dirs OUTPUT_VARIABLE LINES OUTPUT_STRIP_TRAILING_WHITESPACE)
# Find only the part after "libraries: "
@@ -152,7 +159,7 @@ if(CMAKE_COMPILER_IS_GNUCXX OR ${CMAKE_CXX_COMPILER_ID} STREQUAL "Clang")
if(DEFAULT_INCLUDE_DIRS)
remove_list_duplicates(DEFAULT_INCLUDE_DIRS)
endif(DEFAULT_INCLUDE_DIRS)
endif(CMAKE_COMPILER_IS_GNUCXX OR ${CMAKE_CXX_COMPILER_ID} STREQUAL "Clang")
endif(CMAKE_COMPILER_IS_GNUCXX OR "${CMAKE_CXX_COMPILER_ID}" MATCHES "Clang$")
# If we are using Visual Studio, locate the path of the Windows Server 2008 SDK or Windows Server 2003 Platform SDK, depending on which is installed
if(MSVC)
@@ -228,8 +235,6 @@ endif(EXTRA_LIBS)
# Find gettext
find_package(Gettext)
# Add an optional variable for using run-cc.pl for building, Perl will be checked later regardless of this setting
option(USE_RUN_CC_PL "Use run-cc.pl for building" OFF)
option(USE_PCH "Use precompiled headers" OFF)
# Use the following directories as includes
@@ -237,6 +242,11 @@ option(USE_PCH "Use precompiled headers" OFF)
# 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)
# Pass on REPRODUCIBLE_BUILD
if(REPRODUCIBLE_BUILD)
add_definitions(-DREPRODUCIBLE_BUILD)
endif(REPRODUCIBLE_BUILD)
# If using Windows, always add the _WIN32 define
if(WIN32)
add_definitions(-D_WIN32)
@@ -282,13 +292,15 @@ if(MINGW)
set(CMAKE_MODULE_LINKER_FLAGS "${CMAKE_MODULE_LINKER_FLAGS} ${CMAKE_SHARED_LIBRARY_CREATE_C_FLAGS}")
endif(MINGW)
# Under Windows, we set the executable name for Anope to be anope
if(WIN32)
set(PROGRAM_NAME anope)
# Under *nix, we set the executable name for Anope to be services
else(WIN32)
set(PROGRAM_NAME services)
endif(WIN32)
if(NOT PROGRAM_NAME)
# Under Windows, we set the executable name for Anope to be anope
if(WIN32)
set(PROGRAM_NAME anope)
# Under *nix, we set the executable name for Anope to be services
else(WIN32)
set(PROGRAM_NAME services)
endif(WIN32)
endif(NOT PROGRAM_NAME)
# If we are not using Visual Studio, we'll run the following checks
if(NOT MSVC)
@@ -343,12 +355,12 @@ if(CMAKE_BUILD_TYPE STREQUAL "DEBUG" OR CMAKE_BUILD_TYPE STREQUAL "RELWITHDEBINF
set(DEBUG_BUILD TRUE)
endif(CMAKE_BUILD_TYPE STREQUAL "DEBUG" OR CMAKE_BUILD_TYPE STREQUAL "RELWITHDEBINFO")
# Check for the existance of the following include files
# Check for the existence of the following include files
check_include_file(cstdint HAVE_CSTDINT)
check_include_file(stdint.h HAVE_STDINT_H)
check_include_file(strings.h HAVE_STRINGS_H)
# Check for the existance of the following functions
# Check for the existence of the following functions
check_function_exists(strcasecmp HAVE_STRCASECMP)
check_function_exists(stricmp HAVE_STRICMP)
check_function_exists(umask HAVE_UMASK)
@@ -370,19 +382,11 @@ find_program(GREP grep)
find_program(SH sh)
find_program(CHGRP chgrp)
find_program(CHMOD chmod)
find_program(PERL perl)
# If perl is included on the system and the user wants to use run-cc.pl, change the commands for compiling and linking
if(PERL AND USE_RUN_CC_PL)
set(CMAKE_CXX_COMPILE_OBJECT "${PERL} ${Anope_SOURCE_DIR}/run-cc.pl -q ${CMAKE_CXX_COMPILE_OBJECT}")
set(CMAKE_CXX_LINK_EXECUTABLE "${PERL} ${Anope_SOURCE_DIR}/run-cc.pl -q ${CMAKE_CXX_LINK_EXECUTABLE}")
set(CMAKE_CXX_CREATE_SHARED_MODULE "${PERL} ${Anope_SOURCE_DIR}/run-cc.pl -q ${CMAKE_CXX_CREATE_SHARED_MODULE}")
endif(PERL AND USE_RUN_CC_PL)
# If a INSTDIR was passed in to CMake, use it as the install prefix, otherwise set the default install prefix to the services directory under the user's home directory
if(INSTDIR)
set(CMAKE_INSTALL_PREFIX "${INSTDIR}")
else(INSTDIR)
elseif(NOT CMAKE_INSTALL_PREFIX)
set(CMAKE_INSTALL_PREFIX "$ENV{HOME}/services")
endif(INSTDIR)
@@ -485,16 +489,16 @@ get_target_property(SERVICES_BINARY ${PROGRAM_NAME} LOCATION)
get_filename_component(SERVICES_BINARY ${SERVICES_BINARY} NAME)
# At install time, create the following additional directories
install(CODE "file(MAKE_DIRECTORY \"\${CMAKE_INSTALL_PREFIX}/${DB_DIR}/backups\")")
install(CODE "file(MAKE_DIRECTORY \"\${CMAKE_INSTALL_PREFIX}/${LOGS_DIR}\")")
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}\")")
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)
# 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)
install(CODE "execute_process(COMMAND ${CHMOD} 2775 \"\${CMAKE_INSTALL_PREFIX}/\${DB_DIR}/backups\")")
install(CODE "execute_process(COMMAND ${CHMOD} 2775 \"\${CMAKE_INSTALL_PREFIX}/\${LOGS_DIR}\")")
install(CODE "execute_process(COMMAND ${CHGRP} -R ${RUNGROUP} \"\${CMAKE_INSTALL_PREFIX}\")")
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 ${CHGRP} -R ${RUNGROUP} \"\$ENV{DESTDIR}\${CMAKE_INSTALL_PREFIX}\")")
endif(NOT WIN32 AND RUNGROUP)
# On Windows platforms, install extra files
if(WIN32)
@@ -507,7 +511,7 @@ if(WIN32)
install(FILES ${EXTRA_DLLS} DESTINATION ${BIN_DIR})
endif(WIN32)
install(CODE "file(REMOVE_RECURSE \"${CMAKE_INSTALL_PREFIX}/${LIB_DIR}/modules\")")
install(CODE "file(REMOVE_RECURSE \"$ENV{DESTDIR}${CMAKE_INSTALL_PREFIX}/${LIB_DIR}/modules\")")
# Only process the CPack section if we have CPack
if(EXISTS "${CMAKE_ROOT}/Modules/CPack.cmake")
+5 -37
View File
@@ -2,7 +2,7 @@
#
# Configuration script for Services.
#
# Anope (c) 2003-2014 Anope Team
# Anope (c) 2003-2016 Anope Team
# Contact us at team@anope.org
#
# This program is free but copyrighted software; see the file COPYING for
@@ -62,12 +62,6 @@ Run_Build_System () {
BUILD_TYPE="-DCMAKE_BUILD_TYPE:STRING=RELEASE"
fi
if [ "$USE_RUN_CC_PL" = "yes" ] ; then
RUN_CC_PL="-DUSE_RUN_CC_PL:BOOLEAN=ON"
else
RUN_CC_PL="-DUSE_RUN_CC_PL:BOOLEAN=OFF"
fi
if [ "$USE_PCH" = "yes" ] ; then
PCH="-DUSE_PCH:BOOLEAN=ON"
else
@@ -97,9 +91,9 @@ Run_Build_System () {
REAL_SOURCE_DIR="$SOURCE_DIR"
fi
echo "cmake $GEN_TYPE $WITH_INST $WITH_RUN $WITH_PERM $BUILD_TYPE $RUN_CC_PL $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 $RUN_CC_PL $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
echo ""
if [ "$SOURCE_DIR" = "." ] ; then
@@ -131,7 +125,6 @@ INSTDIR=$HOME/services
RUNGROUP=
UMASK=
DEBUG="no"
USE_RUN_CC_PL="no"
USE_PCH="no"
EXTRA_INCLUDE_DIRS=
EXTRA_LIB_DIRS=
@@ -173,7 +166,7 @@ done
# Check for CMake and (optionally) install it
###########################################################################
which cmake > /dev/null
cmake --version 2>&1 > /dev/null
if [ $? -ne 0 ] ; then
clear
echo "Anope requires CMake 2.4 or newer, which can be downloaded at http://cmake.org or through your system's package manager."
@@ -321,30 +314,6 @@ echo ""
####
TEMP_YN="n"
if [ "$USE_RUN_CC_PL" = "yes" ] ; then
TEMP_YN="y"
fi
echo "You can optionally have the build run through run-cc.pl, which will"
echo "cause warnings and errors (if any) to be colored yellow and red,"
echo "respectively. This relies on Perl being installed, so if you say yes"
echo "to this without Perl, the option will be ignored."
echo "NOTE: If you are using MinGW, it is NOT recommended to say yes to"
echo "this, it may fail."
echo "Would you like to utilize run-cc.pl?"
echo2 "[$TEMP_YN] "
read YN
if [ "$YN" ] ; then
if [ "$YN" = "y" ] ; then
USE_RUN_CC_PL="yes"
else
USE_RUN_CC_PL="no"
fi
fi
echo ""
####
TEMP_YN="n"
if [ "$USE_PCH" = "yes" ] ; then
TEMP_YN="y"
@@ -401,7 +370,7 @@ echo ""
####
echo "Are there any extra arguments you wish to pass to CMake?"
echo "If you need no extra arugments to CMake, enter NONE in all caps."
echo "If you need no extra arguments to CMake, enter NONE in all caps."
echo2 "[$EXTRA_CONFIG_ARGS] "
if read INPUT ; then : ; else echo "" ; exit 1 ; fi
if [ "$INPUT" ] ; then
@@ -426,7 +395,6 @@ INSTDIR="$INSTDIR"
RUNGROUP="$RUNGROUP"
UMASK=$UMASK
DEBUG="$DEBUG"
USE_RUN_CC_PL="$USE_RUN_CC_PL"
USE_PCH="$USE_PCH"
EXTRA_INCLUDE_DIRS="$EXTRA_INCLUDE_DIRS"
EXTRA_LIB_DIRS="$EXTRA_LIB_DIRS"
+2 -1
View File
@@ -449,7 +449,8 @@ macro(calculate_libraries SRC SRC_LDFLAGS EXTRA_DEPENDS)
if(DEFAULT_LIBRARY_DIRS OR WSDK_PATH OR DEFINED $ENV{VCINSTALLDIR})
find_library(FOUND_${LIBRARY}_LIBRARY NAMES ${LIBRARY} PATHS ${DEFAULT_LIBRARY_DIRS} ${WSDK_PATH}/lib $ENV{VCINSTALLDIR}/lib ${EXTRA_INCLUDE} ${EXTRA_LIBS})
else(DEFAULT_LIBRARY_DIRS OR WSDK_PATH OR DEFINED $ENV{VCINSTALLDIR})
find_library(FOUND_${LIBRARY}_LIBRARY NAMES ${LIBRARY} ${EXTRA_INCLUDE} ${EXTRA_LIBS})
find_library(FOUND_${LIBRARY}_LIBRARY NAMES ${LIBRARY} PATHS ${EXTRA_INCLUDE} ${EXTRA_LIBS} NO_DEFAULT_PATH)
find_library(FOUND_${LIBRARY}_LIBRARY NAMES ${LIBRARY} PATHS ${EXTRA_INCLUDE} ${EXTRA_LIBS})
endif(DEFAULT_LIBRARY_DIRS OR WSDK_PATH OR DEFINED $ENV{VCINSTALLDIR})
# If the library was found, we will add it to the linker flags
if(FOUND_${LIBRARY}_LIBRARY)
+1 -1
View File
@@ -665,7 +665,7 @@ privilege
rank = 300
level = 10
flag = "a"
xop = "AOP"
xop = "SOP"
}
/*
+4 -3
View File
@@ -255,7 +255,8 @@ serverinfo
* - ngircd
* - plexus
* - ratbox
* - unreal
* - unreal (for 3.2.x)
* - unreal4
*/
module
{
@@ -736,7 +737,7 @@ log
log
{
target = "globops"
admin = "global/* operserv/mode operserv/kick operserv/akill operserv/s*line operserv/noop operserv/jupe operserv/oline operserv/set operserv/svsnick operserv/svsjoin operserv/svspart nickserv/getpass */drop"
admin = "global/* operserv/chankill operserv/mode operserv/kick operserv/akill operserv/s*line operserv/noop operserv/jupe operserv/oline operserv/set operserv/svsnick operserv/svsjoin operserv/svspart nickserv/getpass */drop"
servers = "squit"
users = "oper"
other = "expire/* bados akill/*"
@@ -835,7 +836,7 @@ opertype
/* The name of this opertype */
name = "Services Operator"
/* What opertype(s) this inherits from. Seperate with a comma. */
/* What opertype(s) this inherits from. Separate with a comma. */
inherits = "Helper, Another Helper"
/* What commands (see above) this opertype may use */
-19
View File
@@ -243,7 +243,6 @@ module { name = "help" }
ldap
{
server = "ldap://127.0.0.1"
port = 389
/*
* Admin credentials used for performing searches and adding users.
@@ -543,24 +542,6 @@ module { name = "help" }
*/
#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]
*
+12 -3
View File
@@ -79,7 +79,7 @@ module
confirmemailchanges = no
/*
* A message sent to users on connect if they use an unregistered nick.
* A message sent to users on connect if they use an unregistered nick. %n will be replaced with the user's nickname.
*
* This directive is optional.
*/
@@ -107,6 +107,7 @@ module
* - msg: Services messages will be sent as PRIVMSGs instead of NOTICEs, requires
* options:useprivmsg to be enabled as well
* - ns_keepmodes: Enables keepmodes, which retains user modes across sessions
* - 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
* memo_receive. If you really want no defaults, use "none" by itself as the option.
@@ -381,7 +382,15 @@ command { service = "NickServ"; name = "UNGROUP"; command = "nickserv/ungroup";
*
* Used for identifying to accounts.
*/
module { name = "ns_identify" }
module
{
name = "ns_identify"
/*
* If set, limits the number of concurrent users that can be logged in as a given account at once.
*/
maxlogins = 10
}
command { service = "NickServ"; name = "ID"; command = "nickserv/identify"; hide = true; }
command { service = "NickServ"; name = "IDENTIFY"; command = "nickserv/identify"; }
@@ -390,7 +399,7 @@ command { service = "NickServ"; name = "IDENTIFY"; command = "nickserv/identify"
*
* Provides the commands:
* nickserv/info. - Used for gathering information about an account.
* nickserv/set/hide, nickserv/saset/hide - Used for configuring which options are publically shown in nickserv/info.
* nickserv/set/hide, nickserv/saset/hide - Used for configuring which options are publicly shown in nickserv/info.
*
*/
module { name = "ns_info" }
+1 -3
View File
@@ -570,10 +570,8 @@ module
/*
* Sets the default expiry time for session exceptions.
*
* This directive is required if os_session is loaded.
*/
exceptionexpiry = 1d
#exceptionexpiry = 1d
/*
* The message that will be NOTICE'd to a user just before they are removed from the network because
+2 -2
View File
@@ -21,7 +21,7 @@ The syntax is usually *_cast<type>(var).
static_cast
-----------
From my expierence, this cast is closest to C-style casting for non-pointer
From my experience, this cast is closest to C-style casting for non-pointer
types as well as between some (but not all) pointer types. This type of cast,
like C-style casting, is performed at compile-time. static_cast can also do
a downcast of a derived class to a base class, but only if the base class is
@@ -80,7 +80,7 @@ Bad_cast exception.
Note that in Anope we prefer if Anope::debug_cast is used.
This uses dynamic_cast (and checks for a NULL pointer return) on debug builds
and static_cast on release builds, to speed up the program beacuse of dynamic_cast's
and static_cast on release builds, to speed up the program because of dynamic_cast's
reliance on RTTI.
reinterpret_cast
+1 -1
View File
@@ -1,4 +1,4 @@
Orginally pulled from: http://www.inspircd.org/wiki/Coding_Guidelines
Originally pulled from: http://www.inspircd.org/wiki/Coding_Guidelines
---
+50 -2
View File
@@ -1,3 +1,51 @@
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
Fix cs_access to respect chanserv/access/list privilege
Fix cs_access to match level -1 as every user, not any level <0
Fix problems related to object destruction order when using db_sql_live
Show memo notify settings in ms_info
Fix some actions bumping channels last used time that shouldn't have
Add maxlogins configuration directive to limit the number of concurrent logins to one account
Fix race with auto svsnick on ghost sometimes causing nick collisions instead
Fix saset langauge reply
Show akill/sxlines ids in VIEW
Fix crash when an oper is configured in both the configuration and via os_oper
Fix m_ldap reconnect logic not properly setting protocol and network timeout settings
Fix crash from unloading regex modules when regex xlines exist
Fix irc2sql to store away messages
Add notice method to m_xmlrpc_main
Fix numerics on InspIRCd from being sent to user UID
Fix usermode +I on UnrealIRCd to be considered oper only
Fix crash in webcpanel when deleting your own access on a channel
Fix webcpanel allowing suspended users to login
Fix hs_off on InspIRCd to not desync active user host
Fix bs_bot to not allow colliding bots into users
Don't allow hostserv modules to load if there is no hostserv
Fix ns_register allowing bot nicks to be registered through webcpanel
Don't update chanserv keepmodes during inhabit
Fix build on cmake 2.4
Allow searching emails by wildcard in ns_getemail
Anope Version 2.0.2
-------------------
Fix keepmodes preventing the first user of a channel from being deopped
@@ -173,8 +221,8 @@ A Added ns_resetpass module to the core
A CS ACCESS VIEW which shows who added the access and last time used
A Last used time to CS AKICK VIEW
A Added a sha_256 encryption module
A Added the ability to load multiple encryption modules, and the ability to seamlessly convert your database between diferent encryptions
A Added configuration options to allow Anope to reconnect if it disconnects from the uplink instead of dieing
A Added the ability to load multiple encryption modules, and the ability to seamlessly convert your database between different encryptions
A Added configuration options to allow Anope to reconnect if it disconnects from the uplink instead of dying
A Added support for linking with IPv6
F Unban command to accept an optional nick arg
F Some typos in services.conf
+11
View File
@@ -1,3 +1,14 @@
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 ns_identify:maxlogins to limit the max number of concurrent logins per account
Document ns_no_expire nickserv default
Remove default session exception expiry time
Anope Version 2.0.2
-------------------
Add an operserv/oper/modify privilege, required to use oper add and oper del
+3 -3
View File
@@ -1,7 +1,7 @@
Anope -- a set of IRC services for IRC networks
-----------------------------------------------
Anope is 2003-2014 Anope Team <team@anope.org>.
Anope is 2003-2016 Anope Team <team@anope.org>.
Based on Epona 2000-2002 PegSoft <epona@pegsoft.net>.
Based on Services 1996-1999 Andrew Church <achurch@achurch.org>.
@@ -107,7 +107,7 @@ Table of Contents
Anope Translations:
* Robby <robby@chat.be> (nl_NL)
* Robby <robby@chatbelgie.be> (nl_NL)
* Kein <kein-of@yandex.ru> (ru_RU)
* Maik Funke <Han@mefalcon.org> (de_DE)
* Isaac Fontal <i_fontal@hotmail.com> (es_ES)
@@ -175,7 +175,7 @@ Table of Contents
* ngIRCd 19.2 or later
* Plexus 3 or later
* Ratbox 2.0.6 or later
* UnrealIRCd 3.2 or later
* UnrealIRCd 3.2 or 4
Anope could also work with some of the daemons derived by the ones listed
above, but there's no support for them if they work or don't work.
+1 -1
View File
@@ -152,7 +152,7 @@ Table of Contents
HMSET hash:BotInfo:8 nick redis user redis host services.anope.org realname "Services for IRC Networks"
Note if you are using HSET instead of HMSET you will need to use a transaction, as shown in the above example.
If you are watching your services logs you will immediatly see:
If you are watching your services logs you will immediately see:
USERS: redis!redis@services.anope.org (Services for IRC Networks) connected to the network (services.anope.org)
+6 -3
View File
@@ -7,7 +7,7 @@ checkAuthentication - Takes two parameters, an account name and a password. Chec
is correct for the account name, useful for making login pages on websites.
command - Takes three parameters, a service name (BotServ, ChanServ, NickServ), a user name (whether online or not), and the command
to execute. This will execute a the given command to Anope using the given service name. If the user given is online, the
to execute. This will execute the given command to Anope using the given service name. If the user given is online, the
command reply will go to them, if not it is returned by XMLRPC.
stats - Takes no parameters, returns miscellaneous stats that can be found in the /operserv stats command.
@@ -17,10 +17,13 @@ channel - Takes one parameter, a channel name, and returns real time information
user - Takes one parameter, a user name, and returns real time information regarding that user.
opers - Takes no parameters, returns opertypes, their privileges and commands.
notice - Takes three parameters, source user, target user, and message. Sends a message to the user.
XMLRPC was designed to be used with db_sql, and will not return any information that can be pulled from the SQL
database, such as accounts and registered channel information. It is instead used for pulling realtime data such
as users and channels currently online. For examples on how to use these calls in PHP, see xmlrpc.php in docs/XMLRPC.
Also note that the parameter named "id" is reserved for query ID. If you pass a query to Anope containing a value for id. it will
be stored by Anope and the same id will be passed back in the result.
+128 -74
View File
@@ -1,90 +1,144 @@
<?php
/* XMLRPC Functions
*
* (C) 2003-2014 Anope Team
* Contact us at team@anope.org
*
*/
/**
* XMLRPC Functions
*
* (C) 2003-2016 Anope Team
* Contact us at team@anope.org
*/
class AnopeXMLRPC
{
private $Host;
/**
* The XMLRPC host
*
* @var string
*/
private $host;
function __construct($Host)
{
$this->Host = $Host;
}
/**
* Initiate a new AnopeXMLRPC instance
*
* @param $host
*/
public function __construct($host)
{
$this->host = $host;
}
/** Run an XMLRPC command. Name should be a query name and params an array of parameters, eg:
* $this->RunXMLRPC("checkAuthentication", array("adam", "qwerty"));
* If successful returns back an array of useful information.
*
* Note that $params["id"] is reserved for query ID, you may set it to something if you wish.
* If you do, the same ID will be passed back with the reply from Anope.
*/
function RunXMLRPC($name, $params)
{
$xmlquery = xmlrpc_encode_request($name, $params);
$context = stream_context_create(array("http" => array(
"method" => "POST",
"header" => "Content-Type: text/xml",
"content" => $xmlquery)));
/**
* Run an XMLRPC command. Name should be a query name and params an array of parameters, eg:
* $this->raw("checkAuthentication", ["adam", "qwerty"]);
* If successful returns back an array of useful information.
*
* Note that $params["id"] is reserved for query ID, you may set it to something if you wish.
* If you do, the same ID will be passed back with the reply from Anope.
*
* @param $name
* @param $params
* @return array|null
*/
public function run($name, $params)
{
$xmlquery = xmlrpc_encode_request($name, $params);
$context = stream_context_create(["http" => [
"method" => "POST",
"header" => "Content-Type: text/xml",
"content" => $xmlquery]]);
$inbuf = file_get_contents($this->Host, false, $context);
$response = xmlrpc_decode($inbuf);
$inbuf = file_get_contents($this->host, false, $context);
$response = xmlrpc_decode($inbuf);
if (isset($response[0]))
return $response[0];
return NULL;
}
if ($response) {
return $response;
}
/** Do Command on Service as User, eg:
* $anope->DoCommand("ChanServ", "Adam", "REGISTER #adam");
* Returns an array of information regarding the command execution, if
* If 'online' is set to yes, then the reply to the command was sent to the user on IRC.
* If 'online' is set to no, then the reply to the command is in the array member 'return'
*/
function DoCommand($Service, $User, $Command)
{
return $this->RunXMLRPC("command", array($Service, $User, $Command));
}
return null;
}
/** Check an account/nick name and password to see if they are valid
* Returns the account display name if valid
*/
function CheckAuthentication($Account, $Pass)
{
$ret = $this->RunXMLRPC("checkAuthentication", array($Account, $Pass));
/**
* Do Command on Service as User, eg:
* $anope->command("ChanServ", "Adam", "REGISTER #adam");
* Returns an array of information regarding the command execution, if
* If 'online' is set to yes, then the reply to the command was sent to the user on IRC.
* If 'online' is set to no, then the reply to the command is in the array member 'return'
*
* @param $service
* @param $user
* @param $command
* @return array|null
*/
public function command($service, $user, $command)
{
return $this->run("command", [$service, $user, $command]);
}
if ($ret && $ret["result"] == "Success")
return $ret["account"];
return NULL;
}
/**
* Check an account/nick name and password to see if they are valid
* Returns the account display name if valid
*
* @param $account
* @param $pass
* @return string|null
*/
public function auth($account, $pass)
{
$ret = $this->run("checkAuthentication", [$account, $pass]);
/* Returns an array of misc stats regarding Anope
*/
function DoStats()
{
return $this->RunXMLRPC("stats", NULL);
}
if ($ret && $ret["result"] == "Success") {
return $ret["account"];
}
/* Look up data for a channel
* Returns an array containing channel information, or an array of size one
* (just containing the name) if the channel does not exist
*/
function DoChannel($Channel)
{
return $this->RunXMLRPC("channel", array($Channel));
}
return null;
}
/* Like DoChannel(), but different.
*/
function DoUser($User)
{
return $this->RunXMLRPC("user", array($User));
}
/**
* Returns an array of misc stats regarding Anope
*
* @return array|null
*/
public function stats()
{
return $this->run("stats", null);
}
/**
* Look up data for a channel
* Returns an array containing channel information, or an array of size one
* (just containing the name) if the channel does not exist
*
* @param $channel
* @return array|null
*/
public function 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.
*
* @param $user
* @return array|null
*/
public function user($user)
{
return $this->run("user", [$user]);
}
}
$anopexmlrpc = new AnopeXMLRPC("http://127.0.0.1:8080/xmlrpc");
?>
$anope = new AnopeXMLRPC("http://127.0.0.1:8080/xmlrpc");
+1 -6
View File
@@ -148,12 +148,7 @@ while (1)
if ($input eq "q") {
if (-e "build/CMakeFiles") {
if (-e "cmake-bin") {
my $cmake_path = `find cmake-bin -name cmake -print0`;
system($cmake_path, "build/.");
} else {
system("cmake", "build/.");
}
system("cmake", "build/.");
print "\nNow cd build, then run make to build Anope.\n\n";
} else {
print "\nBuild directory not found. You should run ./Config now.\n\n"
+11 -14
View File
@@ -1,13 +1,12 @@
/*
*
* (C) 2003-2014 Anope Team
* (C) 2003-2016 Anope Team
* Contact us at team@anope.org
*
* Please read COPYING and README for further details.
*
* Based on the original code of Epona by Lara.
* Based on the original code of Services by Andy Church.
*
*/
#ifndef ACCESS_H
@@ -79,12 +78,7 @@ class CoreExport ChanAccess : public Serializable
Serialize::Reference<NickCore> nc;
public:
typedef std::multimap<const ChanAccess *, const ChanAccess *> Set;
/* 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;
typedef std::vector<ChanAccess *> Path;
/* The provider that created this access entry */
AccessProvider *provider;
@@ -104,12 +98,14 @@ class CoreExport ChanAccess : public Serializable
void Serialize(Serialize::Data &data) const anope_override;
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
* @param u The user
* @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.
* @param name The privilege name
@@ -137,13 +133,13 @@ class CoreExport ChanAccess : public Serializable
/* 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.
*/
class CoreExport AccessGroup : public std::vector<ChanAccess *>
class CoreExport AccessGroup
{
public:
/* access entries + paths */
std::vector<ChanAccess::Path> paths;
/* Channel these access entries are on */
const ChannelInfo *ci;
/* Path from these entries to other entries that they depend on */
ChanAccess::Path path;
/* Account these entries affect, if any */
const NickCore *nc;
/* super_admin always gets all privs. founder is a special case where ci->founder == nc */
@@ -171,7 +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;
inline bool empty() const { return paths.empty(); }
};
#endif
+1 -2
View File
@@ -1,13 +1,12 @@
/*
*
* (C) 2003-2014 Anope Team
* (C) 2003-2016 Anope Team
* Contact us at team@anope.org
*
* Please read COPYING and README for further details.
*
* Based on the original code of Epona by Lara.
* Based on the original code of Services by Andy Church.
*
*/
#ifndef ACCOUNT_H
+6 -5
View File
@@ -1,13 +1,12 @@
/*
*
* (C) 2003-2014 Anope Team
* (C) 2003-2016 Anope Team
* Contact us at team@anope.org
*
* Please read COPYING and README for further details.
*
* Based on the original code of Epona by Lara.
* Based on the original code of Services by Andy Church.
*
*/
#ifndef ANOPE_H
@@ -337,7 +336,9 @@ namespace Anope
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> { };
#ifndef REPRODUCIBLE_BUILD
static const char *const compiled = __TIME__ " " __DATE__;
#endif
/** The time Anope started.
*/
@@ -543,7 +544,7 @@ namespace Anope
extern CoreExport Anope::string Random(size_t len);
}
/** sepstream allows for splitting token seperated lists.
/** sepstream allows for splitting token separated lists.
* Each successive call to sepstream::GetToken() returns
* the next token, until none remain, at which point the method returns
* an empty string.
@@ -615,7 +616,7 @@ class CoreExport sepstream
bool StreamEnd();
};
/** A derived form of sepstream, which seperates on commas
/** A derived form of sepstream, which separates on commas
*/
class commasepstream : public sepstream
{
@@ -625,7 +626,7 @@ class commasepstream : public sepstream
commasepstream(const Anope::string &source, bool allowempty = false) : sepstream(source, ',', allowempty) { }
};
/** A derived form of sepstream, which seperates on spaces
/** A derived form of sepstream, which separates on spaces
*/
class spacesepstream : public sepstream
{
+2 -4
View File
@@ -1,10 +1,9 @@
/*
*
* Copyright (C) 2008-2011 Adam <Adam@anope.org>
* Copyright (C) 2008-2014 Anope Team <team@anope.org>
* (C) 2008-2011 Adam <Adam@anope.org>
* (C) 2008-2016 Anope Team <team@anope.org>
*
* Please read COPYING and README for further details.
*
*/
#ifndef BASE_H
@@ -142,4 +141,3 @@ class Reference : public ReferenceBase
};
#endif // BASE_H
+2 -3
View File
@@ -1,10 +1,9 @@
/*
*
* Copyright (C) 2008-2011 Robin Burchell <w00t@inspircd.org>
* Copyright (C) 2008-2014 Anope Team <team@anope.org>
* (C) 2008-2011 Robin Burchell <w00t@inspircd.org>
* (C) 2008-2016 Anope Team <team@anope.org>
*
* Please read COPYING and README for further details.
*
*/
#ifndef BOTS_H
+7 -2
View File
@@ -1,10 +1,9 @@
/* Channel support
*
* (C) 2008-2014 Anope Team
* (C) 2008-2016 Anope Team
* Contact us at team@anope.org
*
* Please read COPYING and README for further details.
*
*/
#ifndef CHANNELS_H
@@ -32,6 +31,8 @@ struct ChanUserContainer : public Extensible
class CoreExport Channel : public Base, public Extensible
{
static std::vector<Channel *> deleting;
public:
typedef std::multimap<Anope::string, Anope::string> ModeList;
private:
@@ -300,6 +301,10 @@ class CoreExport Channel : public Base, public Extensible
* @param ts The time the channel was created
*/
static Channel *FindOrCreate(const Anope::string &name, bool &created, time_t ts = Anope::CurTime);
void QueueForDeletion();
static void DeleteChannels();
};
#endif // CHANNELS_H
+1 -1
View File
@@ -1,6 +1,6 @@
/* Declarations for command data.
*
* (C) 2003-2014 Anope Team
* (C) 2003-2016 Anope Team
* Contact us at team@anope.org
*
* Please read COPYING and README for further details.
+1 -2
View File
@@ -1,13 +1,12 @@
/*
*
* (C) 2003-2014 Anope Team
* (C) 2003-2016 Anope Team
* Contact us at team@anope.org
*
* Please read COPYING and README for further details.
*
* Based on the original code of Epona by Lara.
* Based on the original code of Services by Andy Church.
*
*/
#ifndef CONFIG_H
+1 -4
View File
@@ -1,16 +1,14 @@
/*
*
* (C) 2003-2014 Anope Team
* (C) 2003-2016 Anope Team
* Contact us at team@anope.org
*
* Please read COPYING and README for further details.
*
* Based on the original code of Epona by Lara.
* Based on the original code of Services by Andy Church.
*
*/
class AccessGroup;
class AutoKick;
class BotInfo;
@@ -53,4 +51,3 @@ struct MemoInfo;
struct ModeLock;
struct Oper;
namespace SASL { struct Message; }
+3 -2
View File
@@ -1,10 +1,9 @@
/*
*
* (C) 2003-2014 Anope Team
* (C) 2003-2016 Anope Team
* Contact us at team@anope.org
*
* Please read COPYING and README for further details.
*
*/
#ifndef EXTENSIBLE_H
@@ -40,6 +39,8 @@ class CoreExport Extensible
virtual ~Extensible();
void UnsetExtensibles();
template<typename T> T* GetExt(const Anope::string &name) const;
bool HasExt(const Anope::string &name) const;
+3 -4
View File
@@ -1,10 +1,9 @@
/*
*
* Copyright (C) 2002-2011 InspIRCd Development Team
* Copyright (C) 2009-2014 Anope Team <team@anope.org>
* (C) 2002-2011 InspIRCd Development Team
* (C) 2009-2016 Anope Team <team@anope.org>
*
* Please read COPYING and README for further details.
*
*/
#ifndef HASHCOMP_H
@@ -123,7 +122,7 @@ namespace ci
* @param s1 String to find in
* @param n Position to search up to
* @param c Character to search for
* @return Pointer to the first occurance of c in s1
* @return Pointer to the first occurrence of c in s1
*/
static const char *find(const char *s1, int n, char c);
};
+1 -3
View File
@@ -1,10 +1,9 @@
/*
*
* (C) 2008-2014 Anope Team
* (C) 2008-2016 Anope Team
* Contact us at team@anope.org
*
* Please read COPYING and README for further details.
*
*/
#include "anope.h"
@@ -126,4 +125,3 @@ namespace Language
#define HOST_SET_IDENTTOOLONG _("Error! The vHost ident is too long, please use an ident shorter than %d characters.")
#define HOST_NOT_ASSIGNED _("Please contact an Operator to get a vHost assigned to this nick.")
#define HOST_NO_VIDENT _("Your IRCd does not support vIdent's, if this is incorrect, please report this as a possible bug")
+2 -4
View File
@@ -1,13 +1,12 @@
/*
*
* (C) 2003-2014 Anope Team
* (C) 2003-2016 Anope Team
* Contact us at team@anope.org
*
* Please read COPYING and README for further details.
*
* Based on the original code of Epona by Lara.
* Based on the original code of Services by Andy Church.
*
*/
#ifndef LISTS_H
@@ -52,7 +51,7 @@ class CoreExport NumberList
virtual void HandleNumber(unsigned number);
/** Called when there is an error with the numbered list
* Return false to immediatly stop processing the list and return
* Return false to immediately stop processing the list and return
* This is all done before we start calling HandleNumber, so no numbers will have been processed yet
* @param list The list
* @return false to stop processing
@@ -93,4 +92,3 @@ class CoreExport InfoFormatter
};
#endif // LISTS_H
+1 -3
View File
@@ -1,13 +1,12 @@
/*
*
* (C) 2003-2014 Anope Team
* (C) 2003-2016 Anope Team
* Contact us at team@anope.org
*
* Please read COPYING and README for further details.
*
* Based on the original code of Epona by Lara.
* Based on the original code of Services by Andy Church.
*
*/
#ifndef LOGGER_H
@@ -143,4 +142,3 @@ class CoreExport LogInfo
};
#endif // LOGGER_H
+1 -3
View File
@@ -1,14 +1,12 @@
/*
*
* (C) 2003-2014 Anope Team
* (C) 2003-2016 Anope Team
* Contact us at team@anope.org
*
* Please read COPYING and README for further details.
*
* Based on the original code of Epona by Lara.
* Based on the original code of Services by Andy Church.
*
*
*/
#ifndef MAIL_H
+2 -2
View File
@@ -1,13 +1,12 @@
/*
*
* (C) 2003-2014 Anope Team
* (C) 2003-2016 Anope Team
* Contact us at team@anope.org
*
* Please read COPYING and README for further details.
*
* Based on the original code of Epona by Lara.
* Based on the original code of Services by Andy Church.
*
*/
#ifndef MEMO_H
@@ -19,6 +18,7 @@
class CoreExport Memo : public Serializable
{
public:
MemoInfo *mi;
bool unread;
bool receipt;
Memo();
+1 -3
View File
@@ -1,13 +1,12 @@
/*
*
* (C) 2003-2014 Anope Team
* (C) 2003-2016 Anope Team
* Contact us at team@anope.org
*
* Please read COPYING and README for further details.
*
* Based on the original code of Epona by Lara.
* Based on the original code of Services by Andy Church.
*
*/
#include "protocol.h"
@@ -172,4 +171,3 @@ namespace Message
};
} // namespace Message
+3 -2
View File
@@ -1,7 +1,7 @@
/* Mode support
*
* Copyright (C) 2008-2011 Adam <Adam@anope.org>
* Copyright (C) 2008-2014 Anope Team <team@anope.org>
* (C) 2008-2011 Adam <Adam@anope.org>
* (C) 2008-2016 Anope Team <team@anope.org>
*
* Please read COPYING and README for further details.
*/
@@ -395,6 +395,7 @@ class CoreExport Entry
Anope::string mask;
public:
unsigned short cidr_len;
int family;
Anope::string nick, user, host, real;
/** Constructor
+1 -1
View File
@@ -1,6 +1,6 @@
/*
*
* (C) 2003-2014 Anope Team
* (C) 2003-2016 Anope Team
* Contact us at team@anope.org
*
* Please read COPYING and README for further details.
+2 -3
View File
@@ -1,13 +1,12 @@
/* Modular support
*
* (C) 2003-2014 Anope Team
* (C) 2003-2016 Anope Team
* Contact us at team@anope.org
*
* Please read COPYING and README for further details.
*
* Based on the original code of Epona by Lara.
* Based on the original code of Services by Andy Church.
*
*/
#include "serialize.h"
@@ -1016,7 +1015,7 @@ class CoreExport Module : public Extensible
*/
virtual void OnLogMessage(LogInfo *li, const Log *l, const Anope::string &msg) { throw NotImplementedException(); }
/** Called when a DNS request (question) is recieved.
/** Called when a DNS request (question) is received.
* @param req The dns request
* @param reply The reply that will be sent
*/
+1 -4
View File
@@ -1,14 +1,12 @@
/* BotServ core functions
*
* (C) 2003-2014 Anope Team
* (C) 2003-2016 Anope Team
* Contact us at team@anope.org
*
* Please read COPYING and README for further details.
*
* Based on the original code of Epona by Lara.
* Based on the original code of Services by Andy Church.
*
*
*/
/** Flags for badwords
@@ -70,4 +68,3 @@ struct BadWords
virtual void Check() = 0;
};
+1 -3
View File
@@ -1,14 +1,12 @@
/* BotServ core functions
*
* (C) 2003-2014 Anope Team
* (C) 2003-2016 Anope Team
* Contact us at team@anope.org
*
* Please read COPYING and README for further details.
*
* Based on the original code of Epona by Lara.
* Based on the original code of Services by Andy Church.
*
*
*/
/* Indices for TTB (Times To Ban) */
+2 -3
View File
@@ -1,9 +1,9 @@
/*
* (C) 2003-2014 Anope Team
*
* (C) 2003-2016 Anope Team
* Contact us at team@anope.org
*
* Please read COPYING and README for further details.
*
*/
struct EntryMsg
@@ -32,4 +32,3 @@ struct EntryMessageList : Serialize::Checker<std::vector<EntryMsg *> >
virtual EntryMsg* Create() = 0;
};
+1 -2
View File
@@ -1,6 +1,6 @@
/* ChanServ core functions
*
* (C) 2003-2014 Anope Team
* (C) 2003-2016 Anope Team
* Contact us at team@anope.org
*
* Please read COPYING and README for further details.
@@ -40,4 +40,3 @@ struct LogSettings : Serialize::Checker<std::vector<LogSetting *> >
virtual ~LogSettings() { }
virtual LogSetting *Create() = 0;
};
+2 -3
View File
@@ -1,6 +1,6 @@
/* ChanServ core functions
*
* (C) 2003-2014 Anope Team
* (C) 2003-2016 Anope Team
* Contact us at team@anope.org
*
* Please read COPYING and README for further details.
@@ -80,11 +80,10 @@ struct ModeLocks
virtual const ModeLock *GetMLock(const Anope::string &mname, const Anope::string &param = "") = 0;
/** Get the current mode locks as a string
* @param complete True to show mlock parameters aswell
* @param complete True to show mlock parameters as well
* @return A string of mode locks, eg: +nrt
*/
virtual Anope::string GetMLockAsString(bool complete) const = 0;
virtual void Check() = 0;
};
+16 -19
View File
@@ -1,15 +1,14 @@
/*
*
* (C) 2003-2014 Anope Team
* (C) 2003-2016 Anope Team
* Contact us at team@anope.org
*
* Please read COPYING and README for further details.
*
* Based on the original code of Epona by Lara.
* Based on the original code of Services by Andy Church.
*
*/
#ifndef DNS_H
#define DNS_H
@@ -53,7 +52,7 @@ namespace DNS
QUERYFLAGS_Z = 0x70,
QUERYFLAGS_RCODE = 0xF
};
enum Error
{
ERROR_NONE,
@@ -70,13 +69,13 @@ namespace DNS
ERROR_NO_RECORDS,
ERROR_INVALIDTYPE
};
struct Question
{
Anope::string name;
QueryType type;
unsigned short qclass;
Question() : type(QUERY_NONE), qclass(0) { }
Question(const Anope::string &n, QueryType t, unsigned short c = 1) : name(n), type(t), qclass(c) { }
inline bool operator==(const Question & other) const { return name == other.name && type == other.type && qclass == other.qclass; }
@@ -89,7 +88,7 @@ namespace DNS
}
};
};
struct ResourceRecord : Question
{
unsigned int ttl;
@@ -99,7 +98,7 @@ namespace DNS
ResourceRecord(const Anope::string &n, QueryType t, unsigned short c = 1) : Question(n, t, c), ttl(0), created(Anope::CurTime) { }
ResourceRecord(const Question &q) : Question(q), ttl(0), created(Anope::CurTime) { }
};
struct Query
{
std::vector<Question> questions;
@@ -123,14 +122,14 @@ namespace DNS
virtual void Process(Request *req) = 0;
virtual void RemoveRequest(Request *req) = 0;
virtual bool HandlePacket(ReplySocket *s, const unsigned char *const data, int len, sockaddrs *from) = 0;
virtual void UpdateSerial() = 0;
virtual void Notify(const Anope::string &zone) = 0;
virtual uint32_t GetSerial() const = 0;
};
/** A DNS query.
*/
class Request : public Timer, public Question
@@ -146,22 +145,22 @@ namespace DNS
Request(Manager *mgr, Module *c, const Anope::string &addr, QueryType qt, bool cache = false) : Timer(0), Question(addr, qt), manager(mgr),
use_cache(cache), id(0), creator(c) { }
virtual ~Request()
{
manager->RemoveRequest(this);
}
/** Called when this request succeeds
* @param r The query sent back from the nameserver
*/
virtual void OnLookupComplete(const Query *r) = 0;
/** Called when this request fails or times out.
* @param r The query sent back from the nameserver, check the error code.
*/
virtual void OnError(const Query *r) { }
/** Used to time out the query, xalls OnError and lets the TimerManager
* delete this request.
*/
@@ -173,9 +172,7 @@ namespace DNS
this->OnError(&rr);
}
};
} // namespace DNS
#endif // DNS_H
+1 -3
View File
@@ -1,13 +1,12 @@
/*
*
* (C) 2003-2014 Anope Team
* (C) 2003-2016 Anope Team
* Contact us at team@anope.org
*
* Please read COPYING and README for further details.
*
* Based on the original code of Epona by Lara.
* Based on the original code of Services by Andy Church.
*
*/
namespace Encryption
@@ -34,4 +33,3 @@ namespace Encryption
virtual IV GetDefaultIV() = 0;
};
}
+8
View File
@@ -1,3 +1,11 @@
/*
*
* (C) 2012-2016 Anope Team
* Contact us at team@anope.org
*
* Please read COPYING and README for further details.
*/
#ifndef ANOPE_HTTPD_H
#define ANOPE_HTTPD_H
+8
View File
@@ -1,3 +1,11 @@
/*
*
* (C) 2011-2016 Anope Team
* Contact us at team@anope.org
*
* Please read COPYING and README for further details.
*/
#ifndef ANOPE_LDAP_H
#define ANOPE_LDAP_H
+1 -2
View File
@@ -1,6 +1,6 @@
/* NickServ core functions
*
* (C) 2003-2014 Anope Team
* (C) 2003-2016 Anope Team
* Contact us at team@anope.org
*
* Please read COPYING and README for further details.
@@ -68,4 +68,3 @@ class CertService : public Service
virtual NickCore* FindAccountFromCert(const Anope::string &cert) = 0;
};
+8 -1
View File
@@ -1,3 +1,11 @@
/*
*
* (C) 2011-2016 Anope Team
* Contact us at team@anope.org
*
* Please read COPYING and README for further details.
*/
#ifndef OS_FORBID_H
#define OS_FORBID_H
@@ -43,4 +51,3 @@ class ForbidService : public Service
static ServiceReference<ForbidService> forbid_service("ForbidService", "forbid");
#endif
+1 -3
View File
@@ -1,6 +1,6 @@
/* OperServ ignore interface
*
* (C) 2003-2014 Anope Team
* (C) 2003-2016 Anope Team
* Contact us at team@anope.org
*
* Please read COPYING and README for further details.
@@ -9,7 +9,6 @@
* Based on the original code of Services by Andy Church.
*/
struct IgnoreData
{
Anope::string mask;
@@ -42,4 +41,3 @@ class IgnoreService : public Service
};
static ServiceReference<IgnoreService> ignore_service("IgnoreService", "ignore");
+8 -1
View File
@@ -1,3 +1,11 @@
/*
*
* (C) 2011-2016 Anope Team
* Contact us at team@anope.org
*
* Please read COPYING and README for further details.
*/
#ifndef OS_NEWS
#define OS_NEWS
@@ -42,4 +50,3 @@ class NewsService : public Service
static ServiceReference<NewsService> news_service("NewsService", "news");
#endif // OS_NEWS
+8 -1
View File
@@ -1,3 +1,11 @@
/*
*
* (C) 2011-2016 Anope Team
* Contact us at team@anope.org
*
* Please read COPYING and README for further details.
*/
#ifndef OS_SESSION_H
#define OS_SESSION_H
@@ -84,4 +92,3 @@ Serializable* Exception::Unserialize(Serializable *obj, Serialize::Data &data)
}
#endif
+8 -1
View File
@@ -1,3 +1,11 @@
/*
*
* (C) 2011-2016 Anope Team
* Contact us at team@anope.org
*
* Please read COPYING and README for further details.
*/
#ifndef CHANSERV_H
#define CHANSERV_H
@@ -15,4 +23,3 @@ class ChanServService : public Service
};
#endif // CHANSERV_H
+8 -1
View File
@@ -1,3 +1,11 @@
/*
*
* (C) 2011-2016 Anope Team
* Contact us at team@anope.org
*
* Please read COPYING and README for further details.
*/
#ifndef GLOBAL_H
#define GLOBAL_H
@@ -17,4 +25,3 @@ class GlobalService : public Service
};
#endif // GLOBAL_H
+8 -1
View File
@@ -1,3 +1,11 @@
/*
*
* (C) 2011-2016 Anope Team
* Contact us at team@anope.org
*
* Please read COPYING and README for further details.
*/
#ifndef MEMOSERV_H
#define MEMOSERV_H
@@ -31,4 +39,3 @@ class MemoServService : public Service
};
#endif // MEMOSERV_H
+8 -1
View File
@@ -1,3 +1,11 @@
/*
*
* (C) 2011-2016 Anope Team
* Contact us at team@anope.org
*
* Please read COPYING and README for further details.
*/
#ifndef NICKSERV_H
#define NICKSERV_H
@@ -14,4 +22,3 @@ class NickServService : public Service
};
#endif // NICKSERV_H
+1 -3
View File
@@ -1,10 +1,9 @@
/*
*
* (C) 2003-2014 Anope Team
* (C) 2003-2016 Anope Team
* Contact us at team@anope.org
*
* Please read COPYING and README for further details.
*
*/
namespace Redis
@@ -71,4 +70,3 @@ namespace Redis
virtual void CommitTransaction() = 0;
};
}
+7 -3
View File
@@ -1,6 +1,6 @@
/*
*
* (C) 2014 Anope Team
* (C) 2014-2016 Anope Team
* Contact us at team@anope.org
*
* Please read COPYING and README for further details.
@@ -89,10 +89,14 @@ namespace SASL
if (!na || na->nc->HasExt("NS_SUSPENDED"))
return OnFail();
unsigned int maxlogins = Config->GetModule("ns_identify")->Get<unsigned int>("maxlogins");
if (maxlogins && na->nc->users.size() >= maxlogins)
return OnFail();
Session *s = sasl->GetSession(uid);
if (s)
{
Log(Config->GetClient("NickServ")) << "A user identified to account " << this->GetAccount() << " using SASL";
Log(Config->GetClient("NickServ"), "sasl") << "A user identified to account " << this->GetAccount() << " using SASL";
sasl->Succeed(s, na->nc);
delete s;
}
@@ -117,7 +121,7 @@ namespace SASL
else if (na->nc->HasExt("NS_SUSPENDED"))
accountstatus = "suspended ";
Log(Config->GetClient("NickServ")) << "A user failed to identify for " << accountstatus << "account " << this->GetAccount() << " using SASL";
Log(Config->GetClient("NickServ"), "sasl") << "A user failed to identify for " << accountstatus << "account " << this->GetAccount() << " using SASL";
}
};
}
+2 -2
View File
@@ -1,5 +1,6 @@
/*
* (C) 2003-2014 Anope Team
*
* (C) 2003-2016 Anope Team
* Contact us at team@anope.org
*
* Please read COPYING and README for further details.
@@ -14,4 +15,3 @@ struct MiscData
MiscData() { }
virtual ~MiscData() { }
};
+2 -2
View File
@@ -1,5 +1,6 @@
/*
* (C) 2003-2014 Anope Team
*
* (C) 2003-2016 Anope Team
* Contact us at team@anope.org
*
* Please read COPYING and README for further details.
@@ -213,4 +214,3 @@ namespace SQL
};
}
+7 -1
View File
@@ -1,3 +1,10 @@
/*
*
* (C) 2010-2016 Anope Team
* Contact us at team@anope.org
*
* Please read COPYING and README for further details.
*/
class SSLService : public Service
{
@@ -6,4 +13,3 @@ class SSLService : public Service
virtual void Init(Socket *s) = 0;
};
+2 -1
View File
@@ -1,5 +1,6 @@
/*
* (C) 2003-2014 Anope Team
*
* (C) 2003-2016 Anope Team
* Contact us at team@anope.org
*
* Please read COPYING and README for further details.
+8 -1
View File
@@ -1,3 +1,11 @@
/*
*
* (C) 2010-2016 Anope Team
* Contact us at team@anope.org
*
* Please read COPYING and README for further details.
*/
#include "httpd.h"
class XMLRPCRequest
@@ -37,4 +45,3 @@ class XMLRPCServiceInterface : public Service
virtual void Reply(XMLRPCRequest &request) = 0;
};
+3 -3
View File
@@ -1,9 +1,9 @@
/*
* Copyright (C) 2008-2011 Robin Burchell <w00t@inspircd.org>
* Copyright (C) 2008-2014 Anope Team <team@anope.org>
*
* (C) 2008-2011 Robin Burchell <w00t@inspircd.org>
* (C) 2008-2016 Anope Team <team@anope.org>
*
* Please read COPYING and README for further details.
*
*/
#ifndef OPERTYPE_H
+3 -3
View File
@@ -1,13 +1,12 @@
/*
*
* (C) 2003-2014 Anope Team
* (C) 2003-2016 Anope Team
* Contact us at team@anope.org
*
* Please read COPYING and README for further details.
*
* Based on the original code of Epona by Lara.
* Based on the original code of Services by Andy Church.
*
*/
#ifndef PROTOCOL_H
@@ -228,8 +227,9 @@ class CoreExport IRCDProto : public Service
*/
virtual void SendOper(User *u);
virtual void SendSASLMechanisms(std::vector<Anope::string> &) { }
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 IsChannelValid(const Anope::string &);
+1 -1
View File
@@ -73,7 +73,7 @@
* include stdint.h. The hope is that one or the other can be
* used with no real difference.
*
* 5) In the current verison, if your platform can't represent
* 5) In the current version, if your platform can't represent
* int32_t, int16_t and int8_t, it just dumps out with a compiler
* error.
*
+3 -4
View File
@@ -1,10 +1,9 @@
/*
*
* (C) 2008-2014 Anope Team
* (C) 2008-2016 Anope Team
* Contact us at team@anope.org
*
* Please read COPYING and README for further details.
*
*/
#ifndef REGCHANNEL_H
@@ -133,8 +132,8 @@ class CoreExport ChannelInfo : public Serializable, public Extensible
/** Retrieve the access for a user or group in the form of a vector of access entries
* (as multiple entries can affect a single user).
*/
AccessGroup AccessFor(const User *u);
AccessGroup AccessFor(const NickCore *nc);
AccessGroup AccessFor(const User *u, bool updateLastUsed = true);
AccessGroup AccessFor(const NickCore *nc, bool updateLastUsed = true);
/** Get the size of the accss vector for this channel
* @return The access vector size
+1 -3
View File
@@ -1,13 +1,12 @@
/*
*
* (C) 2003-2014 Anope Team
* (C) 2003-2016 Anope Team
* Contact us at team@anope.org
*
* Please read COPYING and README for further details.
*
* Based on the original code of Epona by Lara.
* Based on the original code of Services by Andy Church.
*
*/
#ifndef REGEXPR_H
@@ -44,4 +43,3 @@ class CoreExport RegexProvider : public Service
};
#endif // REGEXPR_H
+3 -4
View File
@@ -1,13 +1,12 @@
/*
*
* (C) 2003-2014 Anope Team
* (C) 2003-2016 Anope Team
* Contact us at team@anope.org
*
* Please read COPYING and README for further details.
*
* Based on the original code of Epona by Lara.
* Based on the original code of Services by Andy Church.
*
*/
#ifndef SERIALIZE_H
@@ -65,9 +64,9 @@ class CoreExport Serializable : public virtual Base
Serialize::Type *s_type;
/* Iterator into serializable_items */
std::list<Serializable *>::iterator s_iter;
/* The hash of the last serialized form of this object commited to the database */
/* The hash of the last serialized form of this object committed to the database */
size_t last_commit;
/* The last time this object was commited to the database */
/* The last time this object was committed to the database */
time_t last_commit_time;
protected:
+1 -2
View File
@@ -1,13 +1,12 @@
/*
*
* (C) 2003-2014 Anope Team
* (C) 2003-2016 Anope Team
* Contact us at team@anope.org
*
* Please read COPYING and README for further details.
*
* Based on the original code of Epona by Lara.
* Based on the original code of Services by Andy Church.
*
*/
#ifndef SERVERS_H
+1 -3
View File
@@ -1,13 +1,12 @@
/*
*
* (C) 2003-2014 Anope Team
* (C) 2003-2016 Anope Team
* Contact us at team@anope.org
*
* Please read COPYING and README for further details.
*
* Based on the original code of Epona by Lara.
* Based on the original code of Services by Andy Church.
*
*/
#ifndef SERVICE_H
@@ -172,4 +171,3 @@ class ServiceAlias
};
#endif // SERVICE_H
+1 -2
View File
@@ -1,13 +1,12 @@
/*
*
* (C) 2003-2014 Anope Team
* (C) 2003-2016 Anope Team
* Contact us at team@anope.org
*
* Please read COPYING and README for further details.
*
* Based on the original code of Epona by Lara.
* Based on the original code of Services by Andy Church.
*
*/
#ifndef SERVICES_H
+1 -2
View File
@@ -1,13 +1,12 @@
/*
*
* (C) 2003-2014 Anope Team
* (C) 2003-2016 Anope Team
* Contact us at team@anope.org
*
* Please read COPYING and README for further details.
*
* Based on the original code of Epona by Lara.
* Based on the original code of Services by Andy Church.
*
*/
#ifndef SOCKETENGINE_H
+6 -3
View File
@@ -1,13 +1,12 @@
/*
*
* (C) 2003-2014 Anope Team
* (C) 2003-2016 Anope Team
* Contact us at team@anope.org
*
* Please read COPYING and README for further details.
*
* Based on the original code of Epona by Lara.
* Based on the original code of Services by Andy Church.
*
*/
#ifndef SOCKETS_H
@@ -39,6 +38,10 @@ union CoreExport sockaddrs
*/
void clear();
/** Get address family.
*/
int family() const;
/** Get the size of the sockaddr we represent
* @return The size
*/
@@ -372,7 +375,7 @@ class CoreExport ListenSocket : public virtual Socket
virtual ~ListenSocket();
/** Process what has come in from the connection
* @return false to destory this socket
* @return false to destroy this socket
*/
bool ProcessRead();
+1 -2
View File
@@ -1,13 +1,12 @@
/*
*
* (C) 2003-2014 Anope Team
* (C) 2003-2016 Anope Team
* Contact us at team@anope.org
*
* Please read COPYING and README for further details.
*
* Based on the original code of Epona by Lara.
* Based on the original code of Services by Andy Church.
*
*/
#ifndef THREADENGINE_H
+1 -2
View File
@@ -1,13 +1,12 @@
/* Timer include stuff.
*
* (C) 2003-2014 Anope Team
* (C) 2003-2016 Anope Team
* Contact us at team@anope.org
*
* Please read COPYING and README for further details.
*
* Based on the original code of Epona by Lara.
* Based on the original code of Services by Andy Church.
*
*/
#ifndef TIMERS_H
+1 -3
View File
@@ -1,13 +1,12 @@
/*
*
* (C) 2003-2014 Anope Team
* (C) 2003-2016 Anope Team
* Contact us at team@anope.org
*
* Please read COPYING and README for further details.
*
* Based on the original code of Epona by Lara.
* Based on the original code of Services by Andy Church.
*
*/
#ifndef UPLINK_H
@@ -52,4 +51,3 @@ class UplinkSocket : public ConnectionSocket, public BufferedSocket
extern CoreExport UplinkSocket *UplinkSock;
#endif // UPLINK_H
+3 -5
View File
@@ -1,14 +1,12 @@
/*
*
* (C) 2008-2011 Robin Burchell <w00t@inspircd.org>
* (C) 2003-2014 Anope Team
* Contact us at team@anope.org
* (C) 2003-2016 Anope Team <team@anope.org>
*
* Please read COPYING and README for further details.
*
* Based on the original code of Epona by Lara.
* Based on the original code of Services by Andy Church.
*
*/
#ifndef USERS_H
@@ -44,7 +42,7 @@ class CoreExport User : public virtual Base, public Extensible, public CommandRe
Anope::string vident;
Anope::string ident;
Anope::string uid;
/* If the user is on the access list of the nick theyre on */
/* If the user is on the access list of the nick they're on */
bool on_access;
/* Map of user modes and the params this user has (if any) */
ModeList modes;
@@ -103,7 +101,7 @@ class CoreExport User : public virtual Base, public Extensible, public CommandRe
* @param svhost The vhost of the user
* @param sip The ip of the user
* @param sserver The server of the user
* @param srealname The realname/gecos of teh user
* @param srealname The realname/gecos of the user
* @param ts User's timestamp
* @param smodes User's modes
* @param suid The unique identifier of the user.
+1 -1
View File
@@ -1,6 +1,6 @@
/* Build bumper
*
* (C) 2003-2014 Anope Team
* (C) 2003-2016 Anope Team
* Contact us at team@anope.org
*
* Please read COPYING and README for further details.
+3 -2
View File
@@ -1,10 +1,9 @@
/*
*
* (C) 2008-2014 Anope Team
* (C) 2008-2016 Anope Team
* Contact us at team@anope.org
*
* Please read COPYING and README for further details.
*
*/
#ifndef XLINE_H
@@ -113,6 +112,8 @@ class CoreExport XLineManager : public Service
*/
void AddXLine(XLine *x);
void RemoveXLine(XLine *);
/** Delete an entry from this XLineManager
* @param x The entry
* @return true if the entry was found and deleted, else false
+828 -733
View File
File diff suppressed because it is too large Load Diff
+854 -739
View File
File diff suppressed because it is too large Load Diff
+860 -741
View File
File diff suppressed because it is too large Load Diff
+765 -661
View File
File diff suppressed because it is too large Load Diff
+889 -743
View File
File diff suppressed because it is too large Load Diff
+645 -571
View File
File diff suppressed because it is too large Load Diff
+826 -732
View File
File diff suppressed because it is too large Load Diff
+883 -742
View File
File diff suppressed because it is too large Load Diff
+1113 -1122
View File
File diff suppressed because it is too large Load Diff
+829 -731
View File
File diff suppressed because it is too large Load Diff
+830 -732
View File
File diff suppressed because it is too large Load Diff
+830 -732
View File
File diff suppressed because it is too large Load Diff
+831 -731
View File
File diff suppressed because it is too large Load Diff
+4
View File
@@ -12,6 +12,10 @@ macro(build_modules SRC)
if(IS_DIRECTORY "${MODULE_SRC}")
build_modules("${MODULE_SRC}")
else(IS_DIRECTORY "${MODULE_SRC}")
string(REGEX MATCH "\\.c$" ANOPE18MODULE ${MODULE_SRC})
if(ANOPE18MODULE)
message(FATAL_ERROR "Anope 1 modules are not compatible with Anope 2!\nOffending module: ${MODULE_SRC}")
endif(ANOPE18MODULE)
string(REGEX MATCH "\\.cpp$" CPP ${MODULE_SRC})
if(CPP)
set_source_files_properties(${MODULE_SRC} PROPERTIES LANGUAGE CXX COMPILE_FLAGS "${CXXFLAGS}")
+1 -1
View File
@@ -1,6 +1,6 @@
/*
*
* (C) 2003-2014 Anope Team
* (C) 2003-2016 Anope Team
* Contact us at team@anope.org
*
* Please read COPYING and README for further details.
+1 -1
View File
@@ -1,6 +1,6 @@
/* BotServ core functions
*
* (C) 2003-2014 Anope Team
* (C) 2003-2016 Anope Team
* Contact us at team@anope.org
*
* Please read COPYING and README for further details.
+1 -1
View File
@@ -1,6 +1,6 @@
/* BotServ core functions
*
* (C) 2003-2014 Anope Team
* (C) 2003-2016 Anope Team
* Contact us at team@anope.org
*
* Please read COPYING and README for further details.
+20 -4
View File
@@ -1,6 +1,6 @@
/* BotServ core functions
*
* (C) 2003-2014 Anope Team
* (C) 2003-2016 Anope Team
* Contact us at team@anope.org
*
* Please read COPYING and README for further details.
@@ -75,6 +75,13 @@ class CommandBSBot : public Command
return;
}
User *u = User::Find(nick, true);
if (u)
{
source.Reply(_("Nick \002%s\002 is currently in use."), u->nick.c_str());
return;
}
BotInfo *bi = new BotInfo(nick, user, host, real);
Log(LOG_ADMIN, source, this) << "ADD " << bi->GetMask() << " " << bi->realname;
@@ -161,10 +168,19 @@ class CommandBSBot : public Command
return;
}
if (!nick.equals_ci(bi->nick) && BotInfo::Find(nick, true))
if (!nick.equals_ci(bi->nick))
{
source.Reply(_("Bot \002%s\002 already exists."), nick.c_str());
return;
if (BotInfo::Find(nick, true))
{
source.Reply(_("Bot \002%s\002 already exists."), nick.c_str());
return;
}
if (User::Find(nick, true))
{
source.Reply(_("Nick \002%s\002 is currently in use."), nick.c_str());
return;
}
}
if (!nick.equals_ci(bi->nick))
+1 -1
View File
@@ -1,6 +1,6 @@
/* BotServ core functions
*
* (C) 2003-2014 Anope Team
* (C) 2003-2016 Anope Team
* Contact us at team@anope.org
*
* Please read COPYING and README for further details.
+1 -1
View File
@@ -1,6 +1,6 @@
/* BotServ core functions
*
* (C) 2003-2014 Anope Team
* (C) 2003-2016 Anope Team
* Contact us at team@anope.org
*
* Please read COPYING and README for further details.

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