1
0
mirror of https://github.com/anope/anope.git synced 2026-06-14 01:34:46 +02:00

Compare commits

...

147 Commits

Author SHA1 Message Date
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
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
376 changed files with 11427 additions and 10852 deletions
+17 -9
View File
@@ -45,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-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)
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-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)
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-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)
set(CMAKE242_OR_BETTER TRUE)
else(PATCH_VERSION GREATER 1)
@@ -87,6 +87,9 @@ if(CMAKE_COMPILER_IS_GNUCXX)
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
@@ -239,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)
@@ -481,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 \"\$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}/${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 \"\$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}\")")
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)
+6 -2
View File
@@ -2,7 +2,7 @@
#
# Configuration script for Services.
#
# Anope (c) 2003-2016 Anope Team
# Anope (c) 2003-2017 Anope Team
# Contact us at team@anope.org
#
# 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"
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 ""
if [ "$SOURCE_DIR" = "." ] ; then
@@ -166,7 +170,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."
-3
View File
@@ -1121,9 +1121,6 @@ module
/* Sets the time to keep seen entries in the seen database. */
purgetime = "30d"
/* Sets the delay between checks for expired seen entries. */
expiretimeout = "1d"
}
command { service = "OperServ"; name = "SEEN"; command = "operserv/seen"; permission = "operserv/seen"; }
+1 -6
View File
@@ -784,12 +784,7 @@ log
* chanserv/drop chanserv/getkey chanserv/invite
* chanserv/list chanserv/suspend chanserv/topic
*
* chanserv/saset/bantype chanserv/saset/description chanserv/saset/email chanserv/saset/keepmodes
* 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
* chanserv/saset/noexpire
*
* memoserv/sendall memoserv/staff
*
+1 -19
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"
/* 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
{
code = 1
@@ -542,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]
*
+49 -12
View File
@@ -1,4 +1,41 @@
Anope Version 2.0.3-git
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
Fix cs_access to respect chanserv/access/list privilege
@@ -16,7 +53,7 @@ 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 +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 webcpanel allowing suspended users to login
Fix hs_off on InspIRCd to not desync active user host
@@ -69,7 +106,7 @@ Anope Version 2.0.0
Added irc2sql stats module
Anope Version 1.9.9
--------------------
-------------------
A Added a better webpanel template, removed the old one
A Added SQL logging support
A Added Redis database support
@@ -81,7 +118,7 @@ F Fixed setting BotServ's default settings in the config
F Fixed some names of config items, including NickServ's kill protect
Anope Version 1.9.8
--------------------
-------------------
A Ability to configure fantasy commands in the config
A Add SVSJOIN and SVSPART commands
F Fix "leave" channel log level from not logging
@@ -93,7 +130,7 @@ F Fix crash in os_forbid with expiring entries
F Fix several issues with db_sql_live
Anope Version 1.9.7
--------------------
-------------------
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 Added chanserv:require configuration option
@@ -103,7 +140,7 @@ A Added a web panel
A db_sql_live now allows all tables to be "live", not just a select few
Anope Version 1.9.6
--------------------
-------------------
A Added ability to configure emails sent by services
A Added chanserv/up and chanserv/down
A Added m_proxyscan
@@ -122,7 +159,7 @@ F Fixed crash in /os oper info
F Fixed eventfd Config check to work properly on OpenVZ
Anope Version 1.9.5
--------------------
-------------------
A Extended LDAP support
A Added os_oper, os_kill, os_forbid, m_statusupdate, cs_sync, and bs_autoassign
A Added a new configuration file format
@@ -140,7 +177,7 @@ F Fixed setting -P on channels with only a botserv bot in it
F Fixed modemanager complaining about prefixless modes on InspIRCd
Anope Version 1.9.4
--------------------
-------------------
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 mode command
@@ -161,7 +198,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
Anope Version 1.9.3
--------------------
-------------------
A Added italics BotServ kicks support
A Tell users when their nicks expire in /ns glist and /ns info
A Added SSL support
@@ -188,7 +225,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
Anope Version 1.9.2
--------------------
-------------------
A K alias to chanserv kick command
A KB alias to chanserv ban command
A The ability to register empty nonregistered channels
@@ -219,7 +256,7 @@ F ms_rsend to really work
F SQUITing juped servers on InspIRCd1.2+
Anope Version 1.9.1
--------------------
-------------------
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 Signal handling cleanup.
@@ -260,7 +297,7 @@ Provided by Liber <Liber@jasonirc.net> - 2009
F Support operoverride and such things (stop reversing changes from nonopped people where unnecessary)
Anope Version 1.9.0
--------------------
-------------------
F Modified compile to use g++
F Improve protocol modules support (classes, virtual methods, etc)
F Move core services to use BotInfo
+11 -3
View File
@@ -1,4 +1,12 @@
Anope Version 2.0.3-git
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 ns_identify:maxlogins to limit the max number of concurrent logins per account
@@ -92,7 +100,7 @@ opertype:commands removed operserv/umode
operserv:modules removed os_umode
Anope Version 1.9.3
------------------
-------------------
** ADDED CONFIGURATION DIRECTIVES **
nickserv/auspex privilege added
SSL module added for SSL support
@@ -126,7 +134,7 @@ networkinfo:logchannel, logbot, logusers, logmaxusers, logchannel, and options:k
dumpcore because it really didn't do anything
Anope Version 1.9.2
--------------------
-------------------
** ADDED CONFIGURATION DIRECTIVES **
options:enablelogchannel added to auto turn on the logchannel on startup
options:mlock added to configure the default mlock modes on new channels
+18 -19
View File
@@ -1,4 +1,4 @@
Anope DefCon
Anope DefCon
------------
1) Introduction
@@ -11,7 +11,7 @@ Anope DefCon
1) Introduction
Anope 1.6 onwards supports a unique protection mechanism based on the
military "Defense Readiness Condition" (DefCon) system. It is based on
military "Defense Readiness Condition" (DefCon) system. It is based on
5 levels of defense readiness defined as:
DEFCON5 Normal peacetime readiness
@@ -23,9 +23,9 @@ Anope DefCon
These are configurable levels that mandates what actions Anope should
take in case of emergency and change in readiness status.
It is used to prevent abuse to both Services, and the ircd on which they
It is used to prevent abuse to both Services, and the ircd on which they
are running. Also to protect the users, primarily in the event of Clones
and/or FloodBOT attacks.
and/or FloodBOT attacks.
2) Installation
@@ -44,26 +44,26 @@ Anope DefCon
Pre-defined DefCon actions:
No new channel registrations
No New Nick Registrations
No new channel registrations
No New Nick Registrations
No Mode Lock changes
Force Chan Mode
Use Reduced Session Limit
KILL any new clients trying to connect
Services will ignore everyone but opers
Services will silently ignore everyone but opers
AKILL all new clients trying to connect
Force Chan Mode
Use Reduced Session Limit
KILL any new clients trying to connect
Services will ignore everyone but opers
Services will silently ignore everyone but opers
AKILL all new clients trying to connect
No new memos sent to block MemoServ attacks
Information regarding how to enable this for specific defcon levels can
be found in operserv.conf
4) Usage
Anope starts up in DEFCON5 (normal readiness). To change the Defcon level
in action use:
/msg OperServ DEFCON 1|2|3|4|5
Anope starts up in DEFCON5 (normal readiness). To change the Defcon level
in action use:
/msg OperServ DEFCON 1|2|3|4|5
5) Usage Example
@@ -89,6 +89,5 @@ Anope DefCon
6) Support
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.
-1
View File
@@ -32,4 +32,3 @@ Anope Internal Events
The "anope_override" identifier is for compatibility with C++11.
Its usage is highly recommended.
+3 -3
View File
@@ -1,10 +1,10 @@
Frequently Asked Questions (FAQ) concerning Anope
------------------------------------------------
-------------------------------------------------
The information in the 1.9 FAQ is subject to change at any
moment due to new developments. Please visit our website
for the most up to date information.
An updated version of the FAQ can be found here:
http://wiki.anope.org/index.php/FAQ
+3 -3
View File
@@ -60,7 +60,7 @@ Note: You should also read the README and FAQ files!
most likely not work!
If you need help, you should visit http://forum.anope.org/ or #anope on
irc.anope.org. Provide *complete* error output, along with other relevant
irc.anope.org. Provide *complete* error output, along with other relevant
information eg. OS, compiler and C++ library versions.
See the README file for more information.
@@ -116,8 +116,8 @@ Note: You should also read the README and FAQ files!
still running, and restart it if not.
First rename the example.chk script that is in Anope path (by default,
this is ~/services/conf) to services.chk and edit it. You'll need to
modify the CONFIGURATION part of the file. Then ensure that the file is
this is ~/services/conf) to services.chk and edit it. You'll need to
modify the CONFIGURATION part of the file. Then ensure that the file is
marked as executable by typing chmod +x services.chk, and try to launch the
script to see if it works (Anope must not be running when you do this ;))
+6 -6
View File
@@ -12,7 +12,7 @@ Note : Vous devrez également lire les fichiers README et FAQ !
1) Installation d'Anope
NOTE IMPORTANTE : il est déconseillé d'utiliser (et même d'installer)
Anope en tant que root. Utilisez un utilisateur non
Anope en tant que root. Utilisez un utilisateur non
privilégié. Celui que vous utilisez pour l'IRCd ou
un utilisateur dédié suffira.
@@ -27,10 +27,10 @@ Note : Vous devrez également lire les fichiers README et FAQ !
cmake --version
Si CMake est installé, vous aurez une ligne qui dit quelque chose comme
"cmake version 2.8.12.2". Si la version est inférieure à 2.4 ou si vous
"cmake version 2.8.12.2". Si la version est inférieure à 2.4 ou si vous
obtenez une erreur disant que la commande n'a pas été trouvée, vous ne
pourrez pas utiliser CMake Ă  moins de l'installer vous-mĂŞme dans votre
répertoire home. CMake peut être téléchargé ici :
répertoire home. CMake peut être téléchargé ici :
http://www.cmake.org/cmake/resources/software.html
@@ -50,7 +50,7 @@ Note : Vous devrez également lire les fichiers README et FAQ !
Ceci va installer tous les fichiers nécessaires dans les dossiers que
vous avez indiqués avec le script Config et régler les permissions des
fichiers. Vous devez vous assurer que le répertoire data n'est pas
accessible par les autres utilisateurs, car des utilisateurs
accessible par les autres utilisateurs, car des utilisateurs
malveillants pourraient causer des problèmes sur votre réseau, si les
mots de passe ne sont pas chiffrés, ou lire les mémos de tous les
utilisateurs.
@@ -82,7 +82,7 @@ Note : Vous devrez également lire les fichiers README et FAQ !
3) Configuration de l'IRCd
Les Services agissent comme un serveur IRC avec des pseudo-clients.
Les Services agissent comme un serveur IRC avec des pseudo-clients.
Pour les relier à votre réseau, vous aurez besoin de configurer votre
IRCd pour permettre aux services de se connecter.
@@ -106,7 +106,7 @@ Note : Vous devrez également lire les fichiers README et FAQ !
Allez dans le répertoire où les fichiers binaires ont été installés
(par défaut, ~/services/bin). Tapez ./services pour lancer Anope.
S'il y a des erreurs de syntaxe dans le fichier de configuration, elles
S'il y a des erreurs de syntaxe dans le fichier de configuration, elles
seront affichées à l'écran. Corrigez-les jusqu'à ce qu'il n'y en ait
plus. Un démarrage réussi ne générera pas de message.
+1 -1
View File
@@ -117,7 +117,7 @@ Anope Modules
There are a number of useful documents on the Anope Wiki. The Anope Wiki
can be reached at:
* http://wiki.anope.org/
8) Modules Repository
-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
* Re-designed configuration file
* Code refresh / rewrite into C++
+4 -4
View File
@@ -1,7 +1,7 @@
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 Services 1996-1999 Andrew Church <achurch@achurch.org>.
@@ -111,7 +111,7 @@ Table of Contents
* Kein <kein-of@yandex.ru> (ru_RU)
* Maik Funke <Han@mefalcon.org> (de_DE)
* 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)
* Christopher N. <saka@epiknet.org> (fr_FR)
* Yusuf Kurekci <ysfm.20@gmail.com> (tr_TR)
@@ -247,9 +247,9 @@ Table of Contents
If you read the documentation carefully, and didn't find the answer to
your question, feel free to post on the website forums or join our irc
channel (irc.anope.org #anope). Once you join our Support channel be as
channel (irc.anope.org #anope). Once you join our Support channel be as
precise as possible when asking a question, because we have no extraordinary
powers and can't guess things if they aren't provided.
powers and can't guess things if they aren't provided.
The more precise you are the sooner you'll be likely to get an answer.
+1 -1
View File
@@ -14,7 +14,7 @@ Table of Contents
1) Data structure
There are 4 key namespaces in Anope, they are:
id - The keys in id are used to atomically create object ids for new
objects. For example, if I were to create a new BotInfo I would first:
+3 -4
View File
@@ -20,7 +20,6 @@ Anope Bundled Tools
address. This should generate a log file of what happened when it tried
to connect to the SMTP server.
Credits:
Originally written by Dominick Meglio <codemastr@unrealircd.com>
Ported to *nix by Trystan Scott Lee <trystan@nomadirc.net>
Credits:
Originally written by Dominick Meglio <codemastr@unrealircd.com>
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:
* NSIS 2.20 <http://nsis.sourceforge.net>
+17 -1
View File
@@ -3,9 +3,10 @@
/**
* XMLRPC Functions
*
* (C) 2003-2016 Anope Team
* (C) 2003-2017 Anope Team
* Contact us at team@anope.org
*/
class AnopeXMLRPC
{
/**
@@ -114,6 +115,21 @@ class AnopeXMLRPC
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.
*
+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 -12
View File
@@ -1,6 +1,6 @@
/*
*
* (C) 2003-2016 Anope Team
* (C) 2003-2017 Anope Team
* Contact us at team@anope.org
*
* Please read COPYING and README for further details.
@@ -78,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;
@@ -103,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
@@ -136,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 */
@@ -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;
inline bool empty() const { return paths.empty(); }
};
#endif
+4 -4
View File
@@ -1,6 +1,6 @@
/*
*
* (C) 2003-2016 Anope Team
* (C) 2003-2017 Anope Team
* Contact us at team@anope.org
*
* Please read COPYING and README for further details.
@@ -25,7 +25,7 @@ extern CoreExport Serialize::Checker<nickalias_map> NickAliasList;
extern CoreExport Serialize::Checker<nickcore_map> NickCoreList;
/* A registered nickname.
* It matters that Base is here before Extensible (it is inherited by Serializable)
* It matters that Base is here before Extensible (it is inherited by Serializable)
*/
class CoreExport NickAlias : public Serializable, public Extensible
{
@@ -214,7 +214,7 @@ class CoreExport NickCore : public Serializable, public Extensible
* @return The account, if it exists
*/
static NickCore* Find(const Anope::string &nick);
void AddChannelReference(ChannelInfo *ci);
void RemoveChannelReference(ChannelInfo *ci);
void GetChannelReferences(std::deque<ChannelInfo *> &queue);
@@ -234,7 +234,7 @@ class CoreExport IdentifyRequest
std::set<Module *> holds;
bool dispatched;
bool success;
static std::set<IdentifyRequest *> Requests;
protected:
+5 -3
View File
@@ -1,6 +1,6 @@
/*
*
* (C) 2003-2016 Anope Team
* (C) 2003-2017 Anope Team
* Contact us at team@anope.org
*
* 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 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.
*/
@@ -441,13 +443,13 @@ namespace Anope
*/
extern CoreExport void Unhex(const string &src, string &dest);
extern CoreExport void Unhex(const string &src, char *dest, size_t sz);
/** Base 64 encode a string
* @param src The string to encode
* @param target Where the encoded string is placed
*/
extern CoreExport void B64Encode(const string &src, string &target);
/** Base 64 decode a string
* @param src The base64 encoded string
* @param target The plain text result
+1 -1
View File
@@ -1,7 +1,7 @@
/*
*
* (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.
*/
+1 -1
View File
@@ -1,7 +1,7 @@
/*
*
* (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.
*/
+4 -2
View File
@@ -1,6 +1,6 @@
/* Channel support
*
* (C) 2008-2016 Anope Team
* (C) 2008-2017 Anope Team
* Contact us at team@anope.org
*
* Please read COPYING and README for further details.
@@ -60,7 +60,7 @@ class CoreExport Channel : public Base, public Extensible
Anope::string topic;
/* Who set the topic */
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
* 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);
void QueueForDeletion();
static void DeleteChannels();
};
+1 -1
View File
@@ -1,6 +1,6 @@
/* Declarations for command data.
*
* (C) 2003-2016 Anope Team
* (C) 2003-2017 Anope Team
* Contact us at team@anope.org
*
* 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
*
* 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
*
* 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
*
* Please read COPYING and README for further details.
+1 -1
View File
@@ -1,7 +1,7 @@
/*
*
* (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.
*/
+2 -2
View File
@@ -1,6 +1,6 @@
/*
*
* (C) 2008-2016 Anope Team
* (C) 2008-2017 Anope Team
* Contact us at team@anope.org
*
* Please read COPYING and README for further details.
@@ -23,7 +23,7 @@ namespace Language
* and we detect a language file exists for at least one of the supported
* languages for the module, then we add the module's domain (its name)
* here.
*
*
* When strings are translated they are checked against all domains.
*/
extern std::vector<Anope::string> Domains;
+1 -1
View File
@@ -1,6 +1,6 @@
/*
*
* (C) 2003-2016 Anope Team
* (C) 2003-2017 Anope Team
* Contact us at team@anope.org
*
* 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
*
* 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
*
* 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
*
* Please read COPYING and README for further details.
@@ -18,6 +18,7 @@
class CoreExport Memo : public Serializable
{
public:
MemoInfo *mi;
bool unread;
bool receipt;
Memo();
+35 -35
View File
@@ -1,6 +1,6 @@
/*
*
* (C) 2003-2016 Anope Team
* (C) 2003-2017 Anope Team
* Contact us at team@anope.org
*
* Please read COPYING and README for further details.
@@ -22,21 +22,21 @@ namespace Message
struct CoreExport Away : IRCDMessage
{
Away(Module *creator, const Anope::string &mname = "AWAY") : IRCDMessage(creator, mname, 0) { SetFlag(IRCDMESSAGE_REQUIRE_USER); SetFlag(IRCDMESSAGE_SOFT_LIMIT); }
void Run(MessageSource &source, const std::vector<Anope::string> &params) anope_override;
};
struct CoreExport Capab : IRCDMessage
{
Capab(Module *creator, const Anope::string &mname = "CAPAB") : IRCDMessage(creator, mname, 1) { SetFlag(IRCDMESSAGE_SOFT_LIMIT); }
void Run(MessageSource &source, const std::vector<Anope::string> &params) anope_override;
};
struct CoreExport Error : IRCDMessage
{
Error(Module *creator, const Anope::string &mname = "ERROR") : IRCDMessage(creator, mname, 1) { }
void Run(MessageSource &source, const std::vector<Anope::string> &params) anope_override;
};
@@ -46,15 +46,15 @@ namespace Message
void Run(MessageSource &source, const std::vector<Anope::string> &params) anope_override;
};
struct CoreExport Join : IRCDMessage
{
Join(Module *creator, const Anope::string &mname = "JOIN") : IRCDMessage(creator, mname, 1) { SetFlag(IRCDMESSAGE_REQUIRE_USER); SetFlag(IRCDMESSAGE_SOFT_LIMIT); }
void Run(MessageSource &source, const std::vector<Anope::string> &params) anope_override;
typedef std::pair<ChannelStatus, User *> SJoinUser;
/** Handle a SJOIN.
* @param source The source of the SJOIN
* @param chan The channel the users are joining to
@@ -64,18 +64,18 @@ namespace Message
*/
static void SJoin(MessageSource &source, const Anope::string &chan, time_t ts, const Anope::string &modes, const std::list<SJoinUser> &users);
};
struct CoreExport Kick : IRCDMessage
{
Kick(Module *creator, const Anope::string &mname = "KICK") : IRCDMessage(creator, mname, 2) { SetFlag(IRCDMESSAGE_SOFT_LIMIT); }
void Run(MessageSource &source, const std::vector<Anope::string> &params) anope_override;
};
struct CoreExport Kill : IRCDMessage
{
Kill(Module *creator, const Anope::string &mname = "KILL") : IRCDMessage(creator, mname, 2) { }
void Run(MessageSource &source, const std::vector<Anope::string> &params) anope_override;
};
@@ -85,14 +85,14 @@ namespace Message
void Run(MessageSource &source, const std::vector<Anope::string> &params) anope_override;
};
struct CoreExport MOTD : IRCDMessage
{
MOTD(Module *creator, const Anope::string &mname = "MOTD") : IRCDMessage(creator, mname, 1) { }
void Run(MessageSource &source, const std::vector<Anope::string> &params) anope_override;
};
struct CoreExport Notice : IRCDMessage
{
Notice(Module *creator, const Anope::string &mname = "NOTICE") : IRCDMessage(creator, mname, 2) { SetFlag(IRCDMESSAGE_REQUIRE_USER); }
@@ -103,70 +103,70 @@ namespace Message
struct CoreExport Part : IRCDMessage
{
Part(Module *creator, const Anope::string &mname = "PART") : IRCDMessage(creator, mname, 1) { SetFlag(IRCDMESSAGE_REQUIRE_USER); SetFlag(IRCDMESSAGE_SOFT_LIMIT); }
void Run(MessageSource &source, const std::vector<Anope::string> &params) anope_override;
};
struct CoreExport Ping : IRCDMessage
{
Ping(Module *creator, const Anope::string &mname = "PING") : IRCDMessage(creator, mname, 1) { SetFlag(IRCDMESSAGE_SOFT_LIMIT); }
void Run(MessageSource &source, const std::vector<Anope::string> &params) anope_override;
};
struct CoreExport Privmsg : IRCDMessage
{
Privmsg(Module *creator, const Anope::string &mname = "PRIVMSG") : IRCDMessage(creator, mname, 2) { SetFlag(IRCDMESSAGE_REQUIRE_USER); }
void Run(MessageSource &source, const std::vector<Anope::string> &params) anope_override;
};
struct CoreExport Quit : IRCDMessage
{
Quit(Module *creator, const Anope::string &mname = "QUIT") : IRCDMessage(creator, mname, 1) { SetFlag(IRCDMESSAGE_REQUIRE_USER); }
void Run(MessageSource &source, const std::vector<Anope::string> &params) anope_override;
};
struct CoreExport SQuit : IRCDMessage
{
SQuit(Module *creator, const Anope::string &mname = "SQUIT") : IRCDMessage(creator, mname, 2) { }
void Run(MessageSource &source, const std::vector<Anope::string> &params) anope_override;
};
struct CoreExport Stats : IRCDMessage
{
Stats(Module *creator, const Anope::string &mname = "STATS") : IRCDMessage(creator, mname, 1) { SetFlag(IRCDMESSAGE_REQUIRE_USER); SetFlag(IRCDMESSAGE_SOFT_LIMIT); }
void Run(MessageSource &source, const std::vector<Anope::string> &params) anope_override;
};
struct CoreExport Time : IRCDMessage
{
Time(Module *creator, const Anope::string &mname = "TIME") : IRCDMessage(creator, mname, 0) { SetFlag(IRCDMESSAGE_SOFT_LIMIT); }
void Run(MessageSource &source, const std::vector<Anope::string> &params) anope_override;
};
struct CoreExport Topic : IRCDMessage
{
Topic(Module *creator, const Anope::string &mname = "TOPIC") : IRCDMessage(creator, mname, 2) { SetFlag(IRCDMESSAGE_REQUIRE_USER); }
void Run(MessageSource &source, const std::vector<Anope::string> &params) anope_override;
};
struct CoreExport Version : IRCDMessage
{
Version(Module *creator, const Anope::string &mname = "VERSION") : IRCDMessage(creator, mname, 0) { SetFlag(IRCDMESSAGE_SOFT_LIMIT); }
void Run(MessageSource &source, const std::vector<Anope::string> &params) anope_override;
};
struct CoreExport Whois : IRCDMessage
{
Whois(Module *creator, const Anope::string &mname = "WHOIS") : IRCDMessage(creator, mname, 1) { SetFlag(IRCDMESSAGE_SOFT_LIMIT); }
void Run(MessageSource &source, const std::vector<Anope::string> &params) anope_override;
};
+3 -2
View File
@@ -1,7 +1,7 @@
/* Mode support
*
* (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.
*/
@@ -197,7 +197,7 @@ class CoreExport ChannelModeStatus : public ChannelMode
/** constructor
* @param name The mode name
* @param mc The mode char
* @param msymbol The symbol for the mode, eg @ %
* @param msymbol The symbol for the mode, eg @ %
* @param mlevel A level for the mode, which is usually determined by the PREFIX capab
*/
ChannelModeStatus(const Anope::string &name, char mc, char msymbol, short mlevel);
@@ -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-2016 Anope Team
* (C) 2003-2017 Anope Team
* Contact us at team@anope.org
*
* Please read COPYING and README for further details.
+3 -3
View File
@@ -1,6 +1,6 @@
/* Modular support
*
* (C) 2003-2016 Anope Team
* (C) 2003-2017 Anope Team
* Contact us at team@anope.org
*
* Please read COPYING and README for further details.
@@ -72,7 +72,7 @@
/**
* This #define allows us to call a method in all
* loaded modules in a readable simple way, e.g.:
*
*
* FOREACH_MOD(OnUserConnect, (user, exempt));
*/
#define FOREACH_MOD(ename, args) \
@@ -104,7 +104,7 @@ else \
* This define is similar to the one above but returns a result.
* The first module to return a result other than EVENT_CONTINUE is the value to be accepted,
* and any modules after are ignored. This is used like:
*
*
* EventReturn MOD_RESULT;
* FOREACH_RESULT(OnUserConnect, MOD_RESULT, (user, exempt));
*/
+1 -1
View File
@@ -1,6 +1,6 @@
/* BotServ core functions
*
* (C) 2003-2016 Anope Team
* (C) 2003-2017 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-2016 Anope Team
* (C) 2003-2017 Anope Team
* Contact us at team@anope.org
*
* 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
*
* Please read COPYING and README for further details.
+1 -1
View File
@@ -1,6 +1,6 @@
/* ChanServ core functions
*
* (C) 2003-2016 Anope Team
* (C) 2003-2017 Anope Team
* Contact us at team@anope.org
*
* Please read COPYING and README for further details.
+1 -1
View File
@@ -1,6 +1,6 @@
/* ChanServ core functions
*
* (C) 2003-2016 Anope Team
* (C) 2003-2017 Anope Team
* Contact us at team@anope.org
*
* Please read COPYING and README for further details.
+5 -5
View File
@@ -1,6 +1,6 @@
/*
*
* (C) 2003-2016 Anope Team
* (C) 2003-2017 Anope Team
* Contact us at team@anope.org
*
* Please read COPYING and README for further details.
@@ -78,11 +78,11 @@ namespace DNS
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; }
inline bool operator==(const Question & other) const { return name == other.name && type == other.type && qclass == other.qclass; }
struct hash
{
size_t operator()(const Question &q) const
size_t operator()(const Question &q) const
{
return Anope::hash_ci()(q.name);
}
@@ -94,7 +94,7 @@ namespace DNS
unsigned int ttl;
Anope::string rdata;
time_t created;
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) { }
};
@@ -104,7 +104,7 @@ namespace DNS
std::vector<Question> questions;
std::vector<ResourceRecord> answers, authorities, additional;
Error error;
Query() : error(ERROR_NONE) { }
Query(const Question &q) : error(ERROR_NONE) { questions.push_back(q); }
};
+1 -1
View File
@@ -1,6 +1,6 @@
/*
*
* (C) 2003-2016 Anope Team
* (C) 2003-2017 Anope Team
* Contact us at team@anope.org
*
* Please read COPYING and README for further details.
+1 -1
View File
@@ -1,6 +1,6 @@
/*
*
* (C) 2012-2016 Anope Team
* (C) 2012-2017 Anope Team
* Contact us at team@anope.org
*
* 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
*
* Please read COPYING and README for further details.
+1 -1
View File
@@ -1,6 +1,6 @@
/* NickServ core functions
*
* (C) 2003-2016 Anope Team
* (C) 2003-2017 Anope Team
* Contact us at team@anope.org
*
* 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
*
* Please read COPYING and README for further details.
+2 -2
View File
@@ -1,6 +1,6 @@
/* OperServ ignore interface
*
* (C) 2003-2016 Anope Team
* (C) 2003-2017 Anope Team
* Contact us at team@anope.org
*
* Please read COPYING and README for further details.
@@ -25,7 +25,7 @@ class IgnoreService : public Service
{
protected:
IgnoreService(Module *c) : Service(c, "IgnoreService", "ignore") { }
public:
virtual void AddIgnore(IgnoreData *) = 0;
+4 -4
View File
@@ -1,6 +1,6 @@
/*
*
* (C) 2011-2016 Anope Team
* (C) 2011-2017 Anope Team
* Contact us at team@anope.org
*
* Please read COPYING and README for further details.
@@ -39,11 +39,11 @@ class NewsService : public Service
NewsService(Module *m) : Service(m, "NewsService", "news") { }
virtual NewsItem *CreateNewsItem() = 0;
virtual void AddNewsItem(NewsItem *n) = 0;
virtual void DelNewsItem(NewsItem *n) = 0;
virtual std::vector<NewsItem *> &GetNewsList(NewsType t) = 0;
};
+2 -2
View File
@@ -1,6 +1,6 @@
/*
*
* (C) 2011-2016 Anope Team
* (C) 2011-2017 Anope Team
* Contact us at team@anope.org
*
* Please read COPYING and README for further details.
@@ -48,7 +48,7 @@ class SessionService : public Service
virtual Exception *FindException(User *u) = 0;
virtual Exception *FindException(const Anope::string &host) = 0;
virtual Exception *FindException(const Anope::string &host) = 0;
virtual ExceptionVector &GetExceptions() = 0;
+1 -1
View File
@@ -1,6 +1,6 @@
/*
*
* (C) 2011-2016 Anope Team
* (C) 2011-2017 Anope Team
* Contact us at team@anope.org
*
* 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
*
* 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
*
* 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
*
* Please read COPYING and README for further details.
+2 -2
View File
@@ -1,6 +1,6 @@
/*
*
* (C) 2003-2016 Anope Team
* (C) 2003-2017 Anope Team
* Contact us at team@anope.org
*
* Please read COPYING and README for further details.
@@ -23,7 +23,7 @@ namespace Redis
Reply() { Clear(); }
~Reply() { Clear(); }
void Clear()
{
type = NOT_PARSED;
+17 -5
View File
@@ -1,6 +1,6 @@
/*
*
* (C) 2014-2016 Anope Team
* (C) 2014-2017 Anope Team
* Contact us at team@anope.org
*
* Please read COPYING and README for further details.
@@ -46,6 +46,7 @@ namespace SASL
{
time_t created;
Anope::string uid;
Anope::string hostname, ip;
Reference<Mechanism> mech;
Session(Mechanism *m, const Anope::string &u) : created(Anope::CurTime), uid(u), mech(m) { }
@@ -76,9 +77,10 @@ namespace SASL
class IdentifyRequest : public ::IdentifyRequest
{
Anope::string uid;
Anope::string hostname, ip;
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
{
@@ -86,7 +88,7 @@ namespace SASL
return;
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();
unsigned int maxlogins = Config->GetModule("ns_identify")->Get<unsigned int>("maxlogins");
@@ -96,7 +98,11 @@ namespace SASL
Session *s = sasl->GetSession(uid);
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(Config->GetClient("NickServ"), "sasl") << user << " identified to account " << this->GetAccount() << " using SASL";
sasl->Succeed(s, na->nc);
delete s;
}
@@ -120,8 +126,14 @@ namespace SASL
accountstatus = "nonexistent ";
else if (na->nc->HasExt("NS_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(Config->GetClient("NickServ"), "sasl") << 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
*
* 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
*
* Please read COPYING and README for further details.
+2 -2
View File
@@ -1,6 +1,6 @@
/*
*
* (C) 2010-2016 Anope Team
* (C) 2010-2017 Anope Team
* Contact us at team@anope.org
*
* Please read COPYING and README for further details.
@@ -10,6 +10,6 @@ class SSLService : public Service
{
public:
SSLService(Module *o, const Anope::string &n) : Service(o, "SSLService", n) { }
virtual void Init(Socket *s) = 0;
};
+1 -1
View File
@@ -1,6 +1,6 @@
/*
*
* (C) 2003-2016 Anope Team
* (C) 2003-2017 Anope Team
* Contact us at team@anope.org
*
* Please read COPYING and README for further details.
+2 -2
View File
@@ -1,6 +1,6 @@
/*
*
* (C) 2010-2016 Anope Team
* (C) 2010-2017 Anope Team
* Contact us at team@anope.org
*
* Please read COPYING and README for further details.
@@ -17,7 +17,7 @@ class XMLRPCRequest
Anope::string id;
std::deque<Anope::string> data;
HTTPReply& r;
XMLRPCRequest(HTTPReply &_r) : r(_r) { }
inline void reply(const Anope::string &dname, const Anope::string &ddata) { this->replies.insert(std::make_pair(dname, ddata)); }
inline const std::map<Anope::string, Anope::string> &get_replies() { return this->replies; }
+2 -2
View File
@@ -1,7 +1,7 @@
/*
*
* (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.
*/
@@ -33,7 +33,7 @@ struct CoreExport Oper
virtual ~Oper();
static std::vector<Oper *> opers;
/** Find an oper block by name
* @param name The name
* @return the oper block
+6 -5
View File
@@ -1,6 +1,6 @@
/*
*
* (C) 2003-2016 Anope Team
* (C) 2003-2017 Anope Team
* Contact us at team@anope.org
*
* Please read COPYING and README for further details.
@@ -195,9 +195,9 @@ class CoreExport IRCDProto : public Service
* initial handshake requirements.
*/
virtual void SendConnect() = 0;
/** 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
/** Called right before we begin our burst, after we have handshaked successfully with the uplink.
* At this point none of our servers, users, or channels exist on the uplink
*/
virtual void SendBOB() { }
virtual void SendEOB() { }
@@ -227,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 &);
+12 -12
View File
@@ -5,11 +5,11 @@
*
* Copyright (c) 2005-2011 Paul Hsieh
* All rights reserved.
*
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions
* are met:
*
*
* 1. Redistributions of source code must retain the above copyright
* notice, this list of conditions and the following disclaimer.
* 2. Redistributions in binary form must reproduce the above copyright
@@ -17,7 +17,7 @@
* documentation and/or other materials provided with the distribution.
* 3. The name of the author may not be used to endorse or promote products
* derived from this software without specific prior written permission.
*
*
* THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
* IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
* OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
@@ -730,15 +730,15 @@ typedef uint_least32_t uint_fast32_t;
#if defined (__TEST_PSTDINT_FOR_CORRECTNESS)
/*
/*
* Please compile with the maximum warning settings to make sure macros are not
* defined more than once.
*/
#include <stdlib.h>
#include <stdio.h>
#include <string.h>
#define glue3_aux(x,y,z) x ## y ## z
#define glue3(x,y,z) glue3_aux(x,y,z)
@@ -748,7 +748,7 @@ typedef uint_least32_t uint_fast32_t;
#define DECL(us,bits) glue3(DECL,us,) (bits)
#define TESTUMAX(bits) glue3(u,bits,=) glue3(~,u,bits); if (glue3(UINT,bits,_MAX) glue3(!=,u,bits)) printf ("Something wrong with UINT%d_MAX\n", bits)
int main () {
DECL(I,8)
DECL(U,8)
@@ -765,7 +765,7 @@ int main () {
char str0[256], str1[256];
sprintf (str0, "%d %x\n", 0, ~0);
sprintf (str1, "%d %x\n", i8, ~0);
if (0 != strcmp (str0, str1)) printf ("Something wrong with i8 : %s\n", str1);
sprintf (str1, "%u %x\n", u8, ~0);
@@ -773,20 +773,20 @@ int main () {
sprintf (str1, "%d %x\n", i16, ~0);
if (0 != strcmp (str0, str1)) printf ("Something wrong with i16 : %s\n", str1);
sprintf (str1, "%u %x\n", u16, ~0);
if (0 != strcmp (str0, str1)) printf ("Something wrong with u16 : %s\n", str1);
if (0 != strcmp (str0, str1)) printf ("Something wrong with u16 : %s\n", str1);
sprintf (str1, "%" PRINTF_INT32_MODIFIER "d %x\n", i32, ~0);
if (0 != strcmp (str0, str1)) printf ("Something wrong with i32 : %s\n", str1);
sprintf (str1, "%" PRINTF_INT32_MODIFIER "u %x\n", u32, ~0);
if (0 != strcmp (str0, str1)) printf ("Something wrong with u32 : %s\n", str1);
#ifdef INT64_MAX
#ifdef INT64_MAX
sprintf (str1, "%" PRINTF_INT64_MODIFIER "d %x\n", i64, ~0);
if (0 != strcmp (str0, str1)) printf ("Something wrong with i64 : %s\n", str1);
#endif
sprintf (str1, "%" PRINTF_INTMAX_MODIFIER "d %x\n", imax, ~0);
if (0 != strcmp (str0, str1)) printf ("Something wrong with imax : %s\n", str1);
sprintf (str1, "%" PRINTF_INTMAX_MODIFIER "u %x\n", umax, ~0);
if (0 != strcmp (str0, str1)) printf ("Something wrong with umax : %s\n", str1);
if (0 != strcmp (str0, str1)) printf ("Something wrong with umax : %s\n", str1);
TESTUMAX(8);
TESTUMAX(16);
TESTUMAX(32);
+2 -2
View File
@@ -1,6 +1,6 @@
/*
*
* (C) 2008-2016 Anope Team
* (C) 2008-2017 Anope Team
* Contact us at team@anope.org
*
* Please read COPYING and README for further details.
@@ -231,7 +231,7 @@ class CoreExport ChannelInfo : public Serializable, public Extensible
*/
Anope::string GetIdealBan(User *u) const;
/** Finds a ChannelInfo
/** Finds a ChannelInfo
* @param name channel name to lookup
* @return the ChannelInfo associated with the channel
*/
+1 -1
View File
@@ -1,6 +1,6 @@
/*
*
* (C) 2003-2016 Anope Team
* (C) 2003-2017 Anope Team
* Contact us at team@anope.org
*
* 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
*
* 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
*
* 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
*
* 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
*
* 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
*
* Please read COPYING and README for further details.
+5 -1
View File
@@ -1,6 +1,6 @@
/*
*
* (C) 2003-2016 Anope Team
* (C) 2003-2017 Anope Team
* Contact us at team@anope.org
*
* Please read COPYING and README for further details.
@@ -38,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
*/
+1 -1
View File
@@ -1,6 +1,6 @@
/*
*
* (C) 2003-2016 Anope Team
* (C) 2003-2017 Anope Team
* Contact us at team@anope.org
*
* Please read COPYING and README for further details.
+1 -1
View File
@@ -1,6 +1,6 @@
/* Timer include stuff.
*
* (C) 2003-2016 Anope Team
* (C) 2003-2017 Anope Team
* Contact us at team@anope.org
*
* 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
*
* 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) 2003-2016 Anope Team <team@anope.org>
* (C) 2003-2017 Anope Team <team@anope.org>
*
* 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
* 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.*);
* for named addresses, wildcards the leftmost part of the name unless the
* name only contains two parts. If the username begins with a ~, delete
* it.
* last octet (e.g. 35.1.1.1 -> 35.1.1.*). for named addresses, wildcards
* the leftmost part of the name unless the name only contains two parts.
* If the username begins with a ~, replace with *.
*/
Anope::string Mask() const;
+2 -2
View File
@@ -1,6 +1,6 @@
/* Build bumper
*
* (C) 2003-2016 Anope Team
* (C) 2003-2017 Anope Team
* Contact us at team@anope.org
*
* Please read COPYING and README for further details.
@@ -28,7 +28,7 @@ static std::string get_git_hash(const std::string &git_dir)
fd.close();
return "";
}
fd.close();
filebuf = filebuf.substr(5);
+1 -1
View File
@@ -1,6 +1,6 @@
/*
*
* (C) 2008-2016 Anope Team
* (C) 2008-2017 Anope Team
* Contact us at team@anope.org
*
* 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
+790 -767
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
+820 -694
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})
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
*
* Please read COPYING and README for further details.
+3 -3
View File
@@ -1,6 +1,6 @@
/* BotServ core functions
*
* (C) 2003-2016 Anope Team
* (C) 2003-2017 Anope Team
* Contact us at team@anope.org
*
* Please read COPYING and README for further details.
@@ -173,7 +173,7 @@ class CommandBSSetNoBot : public Command
if (value.equals_ci("ON"))
{
Log(LOG_ADMIN, source, this, ci) << "to enable nobot";
Log(LOG_ADMIN, source, this, ci) << "to enable nobot";
ci->Extend<bool>("BS_NOBOT");
if (ci->bi)
@@ -182,7 +182,7 @@ class CommandBSSetNoBot : public Command
}
else if (value.equals_ci("OFF"))
{
Log(LOG_ADMIN, source, this, ci) << "to disable nobot";
Log(LOG_ADMIN, source, this, ci) << "to disable nobot";
ci->Shrink<bool>("BS_NOBOT");
source.Reply(_("No-bot mode is now \002off\002 on channel %s."), ci->name.c_str());
+4 -4
View File
@@ -1,6 +1,6 @@
/* BotServ core functions
*
* (C) 2003-2016 Anope Team
* (C) 2003-2017 Anope Team
* Contact us at team@anope.org
*
* Please read COPYING and README for further details.
@@ -70,7 +70,7 @@ struct BadWordsImpl : BadWords
{
if (this->badwords->empty() || index >= this->badwords->size())
return;
FOREACH_MOD(OnBadWordDel, (ci, (*this->badwords)[index]));
delete this->badwords->at(index);
@@ -127,7 +127,7 @@ Serializable* BadWordImpl::Unserialize(Serializable *obj, Serialize::Data &data)
unsigned int n;
data["type"] >> n;
BadWordImpl *bw;
if (obj)
bw = anope_dynamic_static_cast<BadWordImpl *>(obj);
@@ -140,7 +140,7 @@ Serializable* BadWordImpl::Unserialize(Serializable *obj, Serialize::Data &data)
BadWordsImpl *bws = ci->Require<BadWordsImpl>("badwords");
if (!obj)
bws->badwords->push_back(bw);
return bw;
}
+1 -1
View File
@@ -1,6 +1,6 @@
/* BotServ core functions
*
* (C) 2003-2016 Anope Team
* (C) 2003-2017 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