summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAdam <Adam@anope.org>2015-01-05 16:31:09 -0500
committerAdam <Adam@anope.org>2015-01-05 19:00:51 -0500
commitd79d8e2608e304760c42bdf87502e3bc51781b88 (patch)
tree179913b8b328f88d52d84c3453fceb28a2d63422
parent8ab1c71d7dc7a0d47e5711dc72e3fc9c3ee850bb (diff)
parentc46ec39e5088119cd21f5f7e16e64e61a876ca20 (diff)
Merge branch '2.0' into 2.1
Conflicts: CMakeLists.txt include/modules.h include/serialize.h modules/commands/bs_assign.cpp modules/commands/bs_badwords.cpp modules/commands/bs_bot.cpp modules/commands/bs_control.cpp modules/commands/bs_kick.cpp modules/commands/cs_access.cpp modules/commands/cs_akick.cpp modules/commands/cs_drop.cpp modules/commands/cs_entrymsg.cpp modules/commands/cs_flags.cpp modules/commands/cs_info.cpp modules/commands/cs_invite.cpp modules/commands/cs_kick.cpp modules/commands/cs_mode.cpp modules/commands/cs_register.cpp modules/commands/cs_seen.cpp modules/commands/cs_set.cpp modules/commands/cs_suspend.cpp modules/commands/cs_topic.cpp modules/commands/cs_unban.cpp modules/commands/cs_xop.cpp modules/commands/hs_del.cpp modules/commands/hs_list.cpp modules/commands/hs_request.cpp modules/commands/ms_ignore.cpp modules/commands/ms_send.cpp modules/commands/ns_recover.cpp modules/commands/ns_register.cpp modules/commands/ns_suspend.cpp modules/commands/os_dns.cpp modules/commands/os_noop.cpp modules/commands/os_oper.cpp modules/commands/os_session.cpp modules/database/db_sql_live.cpp modules/encryption/enc_bcrypt.cpp modules/extra/m_ldap_authentication.cpp modules/extra/m_ldap_oper.cpp modules/fantasy.cpp modules/m_dnsbl.cpp modules/m_sasl.cpp modules/protocol/hybrid.cpp modules/protocol/inspircd20.cpp modules/protocol/unreal.cpp modules/pseudoclients/chanserv.cpp modules/pseudoclients/nickserv.cpp modules/webcpanel/pages/chanserv/access.cpp modules/webcpanel/webcpanel.cpp modules/webcpanel/webcpanel.h src/command.cpp src/messages.cpp src/modulemanager.cpp src/regchannel.cpp src/serialize.cpp
-rwxr-xr-xConfig39
-rw-r--r--data/botserv.example.conf4
-rw-r--r--data/chanserv.example.conf7
-rw-r--r--data/example.conf7
-rw-r--r--data/memoserv.example.conf12
-rw-r--r--data/modules.example.conf50
-rw-r--r--data/operserv.example.conf2
-rw-r--r--docs/Changes.conf6
-rw-r--r--docs/INSTALL23
-rw-r--r--docs/INSTALL.fr199
-rw-r--r--include/channels.h4
-rw-r--r--include/commands.h2
-rw-r--r--include/modules.h4
-rw-r--r--include/modules/nickserv.h7
-rw-r--r--language/anope.ca_ES.po4
-rw-r--r--language/anope.de_DE.po4
-rw-r--r--language/anope.el_GR.po2
-rw-r--r--language/anope.en_US.po539
-rw-r--r--language/anope.fr_FR.po3868
-rw-r--r--language/anope.hu_HU.po4
-rw-r--r--language/anope.it_IT.po4
-rw-r--r--language/anope.nl_NL.po1087
-rw-r--r--language/anope.pl_PL.po4
-rw-r--r--language/anope.pt_PT.po2
-rw-r--r--language/anope.ru_RU.po4
-rw-r--r--language/anope.tr_TR.po4
-rw-r--r--modules/commands/bs_assign.cpp2
-rw-r--r--modules/commands/bs_badwords.cpp2
-rw-r--r--modules/commands/bs_control.cpp2
-rw-r--r--modules/commands/bs_set.cpp11
-rw-r--r--modules/commands/cs_access.cpp6
-rw-r--r--modules/commands/cs_akick.cpp12
-rw-r--r--modules/commands/cs_flags.cpp34
-rw-r--r--modules/commands/cs_info.cpp2
-rw-r--r--modules/commands/cs_mode.cpp15
-rw-r--r--modules/commands/cs_register.cpp6
-rw-r--r--modules/commands/cs_seen.cpp12
-rw-r--r--modules/commands/cs_set.cpp12
-rw-r--r--modules/commands/cs_suspend.cpp4
-rw-r--r--modules/commands/cs_topic.cpp30
-rw-r--r--modules/commands/cs_xop.cpp8
-rw-r--r--modules/commands/hs_request.cpp6
-rw-r--r--modules/commands/ms_ignore.cpp6
-rw-r--r--modules/commands/ms_send.cpp13
-rw-r--r--modules/commands/ns_recover.cpp6
-rw-r--r--modules/commands/ns_register.cpp10
-rw-r--r--modules/commands/ns_set.cpp10
-rw-r--r--modules/commands/ns_suspend.cpp4
-rw-r--r--modules/commands/os_akill.cpp6
-rw-r--r--modules/commands/os_defcon.cpp26
-rw-r--r--modules/commands/os_kick.cpp7
-rw-r--r--modules/commands/os_kill.cpp2
-rw-r--r--modules/commands/os_noop.cpp4
-rw-r--r--modules/commands/os_oper.cpp37
-rw-r--r--modules/commands/os_session.cpp52
-rw-r--r--modules/commands/os_sxline.cpp16
-rw-r--r--modules/encryption/enc_bcrypt.cpp2
-rw-r--r--modules/extra/m_ldap.cpp4
-rw-r--r--modules/extra/m_ldap_authentication.cpp8
-rw-r--r--modules/extra/m_ldap_oper.cpp8
-rw-r--r--modules/extra/m_sasl_dh-aes.cpp2
-rw-r--r--modules/extra/m_sasl_dh-blowfish.cpp4
-rw-r--r--modules/extra/stats/m_chanstats.cpp2
-rw-r--r--modules/fantasy.cpp2
-rw-r--r--modules/m_dnsbl.cpp78
-rw-r--r--modules/m_sasl.cpp14
-rw-r--r--modules/m_xmlrpc_main.cpp18
-rw-r--r--modules/protocol/bahamut.cpp6
-rw-r--r--modules/protocol/hybrid.cpp5
-rw-r--r--modules/protocol/inspircd20.cpp44
-rw-r--r--modules/protocol/ngircd.cpp27
-rw-r--r--modules/protocol/plexus.cpp3
-rw-r--r--modules/protocol/unreal.cpp3
-rw-r--r--modules/pseudoclients/botserv/botserv.cpp6
-rw-r--r--modules/pseudoclients/chanserv/chanserv.cpp8
-rw-r--r--modules/pseudoclients/nickserv/nickserv.cpp10
-rw-r--r--modules/webcpanel/pages/chanserv/access.cpp103
-rw-r--r--modules/webcpanel/pages/chanserv/modes.cpp6
-rw-r--r--modules/webcpanel/webcpanel.cpp39
-rw-r--r--modules/webcpanel/webcpanel.h4
-rw-r--r--src/channels.cpp47
-rw-r--r--src/command.cpp43
-rw-r--r--src/init.cpp25
-rw-r--r--src/messages.cpp14
-rw-r--r--src/protocol.cpp11
-rw-r--r--src/servers.cpp2
-rw-r--r--src/uplink.cpp2
-rw-r--r--src/users.cpp2
88 files changed, 3538 insertions, 3269 deletions
diff --git a/Config b/Config
index 65dcc4585..3bd1ed976 100755
--- a/Config
+++ b/Config
@@ -162,42 +162,9 @@ done
which cmake > /dev/null
if [ $? -ne 0 ] ; then
clear
- if exists "cmake-bin" ; then :
- else
- echo "Anope requires CMake 2.4 or newer, which can be downloaded at http://cmake.org"
- echo "If you have installed CMake already, ensure it is in your PATH environment variable."
-
- if [ `uname` = "Linux" ] ; then
-
- echo ""
- echo "Config can attempt to install CMake for you now, which"
- echo "will take approximately 50 MB of disk space."
- echo "Would you like to install CMake now?"
- echo2 "[y] "
- read YN
- if [ "$YN" = "n" ] ; then
- exit 0
- fi
-
- echo "Downloading CMake... this may take a minute or two."
- wget -q http://anope.org/cmake/linux-i386.php -O cmake-bin.tar.gz
- if [ $? -ne 0 ] ; then
- rm -f cmake-bin.tar.gz
- echo "Unable to download CMake"
- exit 0
- fi
- mkdir -p cmake-bin
- tar zxf cmake-bin.tar.gz -C cmake-bin
- rm -f cmake-bin.tar.gz
- echo "Done!"
- else
- exit 0
- fi
- fi
-
- CMAKE_BIN=`find cmake-bin -name cmake`
- CMAKE_BIN="`pwd`/`dirname $CMAKE_BIN`"
- PATH="$PATH:$CMAKE_BIN"
+ echo "Anope requires CMake 2.4 or newer, which can be downloaded at http://cmake.org or through your system's package manager."
+ echo "If you have installed CMake already, ensure it is in your PATH environment variable."
+ exit 0
fi
###########################################################################
diff --git a/data/botserv.example.conf b/data/botserv.example.conf
index 6cb44afc3..fbb8f166d 100644
--- a/data/botserv.example.conf
+++ b/data/botserv.example.conf
@@ -10,7 +10,7 @@
* client, the client becomes no different from a normal service bot, so you will have to use botserv/bot
* to manually delete the client.
*
- * You may then waant to map some of the below commands to other services, like placing botserv/bot on
+ * You may then want to map some of the below commands to other services, like placing botserv/bot on
* OperServ so you can delete the below client, and mapping assign and unassign to ChanServ so users are
* able to control whether or not ChanServ is in the channel. You may also want to map botserv/set/nobot
* to OperServ so you can restrict who can assign the other core service clients.
@@ -202,7 +202,7 @@ command { service = "BotServ"; name = "BADWORDS"; command = "botserv/badwords";
* Used for administrating BotServ bots.
*/
module { name = "bs_bot" }
-command { service = "BotServ"; name = "BOT"; command = "botserv/bot"; }
+command { service = "BotServ"; name = "BOT"; command = "botserv/bot"; permission = "botserv/bot"; }
/*
* bs_botlist
diff --git a/data/chanserv.example.conf b/data/chanserv.example.conf
index 86b86291b..474d9d052 100644
--- a/data/chanserv.example.conf
+++ b/data/chanserv.example.conf
@@ -1061,6 +1061,13 @@ module
* If not set, the default is +nt.
*/
mlock = "+nt"
+
+ /*
+ * The maximum number of entries that may be on a mode lock list.
+ *
+ * This directive is optional.
+ */
+ max = 32
}
command { service = "ChanServ"; name = "MODE"; command = "chanserv/mode"; group = "chanserv/management"; }
diff --git a/data/example.conf b/data/example.conf
index f746a2595..a56851b2f 100644
--- a/data/example.conf
+++ b/data/example.conf
@@ -447,7 +447,7 @@ options
/*
* If set, this will allow users to let Services send PRIVMSGs to them
- * instead of NOTICEs. Also see the defmsg option of nickserv:defaults,
+ * instead of NOTICEs. Also see the "msg" option of nickserv:defaults,
* which also toggles the default communication (PRIVMSG or NOTICE) to
* use for unregistered users.
*
@@ -752,7 +752,9 @@ log
*
* Available privileges:
* botserv/administration - Can view and assign private BotServ bots
+ * botserv/fantasy - Can use fantasy commands without the FANTASIA privilege
* chanserv/administration - Can modify the settings of any channel (including changing of the owner!)
+ * chanserv/access/list - Can view channel access and akick lists, but not modify them
* chanserv/access/modify - Can modify channel access and akick lists, and use /chanserv enforce
* chanserv/auspex - Can see any information with /chanserv info
* chanserv/no-register-limit - May register an unlimited number of channels and nicknames
@@ -766,13 +768,14 @@ log
* nickserv/confirm - Can confirm other users nicknames
* nickserv/drop - Can drop other users nicks
* operserv/config - Can modify services's configuration
+ * operserv/oper/modify - Can add and remove operators with at most the same privileges
* protected - Can not be kicked from channels by Services
*
* Available commands:
* botserv/bot/del botserv/bot/add botserv/bot/change botserv/set/private
* botserv/set/nobot
*
- * chanserv/access/list chanserv/drop chanserv/getkey chanserv/invite
+ * chanserv/drop chanserv/getkey chanserv/invite
* chanserv/list chanserv/suspend chanserv/topic
*
* chanserv/saset/bantype chanserv/saset/description chanserv/saset/email chanserv/saset/keepmodes
diff --git a/data/memoserv.example.conf b/data/memoserv.example.conf
index 1ab45514e..9f07ec424 100644
--- a/data/memoserv.example.conf
+++ b/data/memoserv.example.conf
@@ -137,7 +137,17 @@ command { service = "MemoServ"; name = "DEL"; command = "memoserv/del"; }
*
* Used to ignore memos from specific users.
*/
-module { name = "ms_ignore" }
+module
+{
+ name = "ms_ignore"
+
+ /*
+ * The maximum number of entries that may be on a memo ignore list.
+ *
+ * This directive is optional.
+ */
+ max = 32
+}
command { service = "MemoServ"; name = "IGNORE"; command = "memoserv/ignore"; }
/*
diff --git a/data/modules.example.conf b/data/modules.example.conf
index caeddb27d..4d3894bef 100644
--- a/data/modules.example.conf
+++ b/data/modules.example.conf
@@ -124,26 +124,58 @@ module { name = "help" }
* %g is the realname of the user
* %h is the hostname of the user
* %i is the IP of the user
- * %r is the reason (configured below). Will be nothing if not configured.
+ * %r is the reply reason (configured below). Will be nothing if not configured.
* %N is the network name set in networkinfo:networkname
*/
reason = "You are listed in the efnet RBL, visit http://rbl.efnetrbl.org/?i=%i for info"
- /* Replies to ban and their reason. If this is totally omitted all replies get banned. */
- 1 = "Open Proxy"
- /* Don't ban for result 2 or 3 */
- #2 = "spamtrap666"
- #3 = "spamtrap50"
- 4 = "TOR"
- 5 = "Drones / Flooding"
+ /* Replies to ban and their reason. If no relies are configured, all replies get banned. */
+ reply
+ {
+ code = 1
+ reason = "Open Proxy"
+ }
+
+ #reply
+ {
+ code = 2
+ reason = "spamtrap666"
+ }
+
+ #reply
+ {
+ code = 3
+ reason = "spamtrap50"
+ }
+
+ reply
+ {
+ code = 4
+ reason = "TOR"
+
+ /*
+ * If set, users identified to services at the time the result comes back
+ * will not be banned.
+ */
+ #allow_account = yes
+ }
+
+ reply
+ {
+ code = 5
+ reason = "Drones / Flooding"
+ }
}
- blacklist
+ #blacklist
{
name = "dnsbl.dronebl.org"
time = 4h
reason = "You have a host listed in the DroneBL. For more information, visit http://dronebl.org/lookup_branded?ip=%i&network=%N"
}
+
+ /* Exempt localhost from DNSBL checks */
+ exempt { ip = "127.0.0.1" }
}
/*
diff --git a/data/operserv.example.conf b/data/operserv.example.conf
index c81cf0e61..bfbce6013 100644
--- a/data/operserv.example.conf
+++ b/data/operserv.example.conf
@@ -260,7 +260,7 @@ command { service = "OperServ"; name = "CHANKILL"; command = "operserv/chankill"
*/
#akillreason = "This network is currently not accepting connections, please try again later."
}
-#command { service = "OperServ"; name = "DEFCON"; command = "operserv/defcon"; }
+#command { service = "OperServ"; name = "DEFCON"; command = "operserv/defcon"; permission = "operserv/defcon"; }
/*
* os_dns
diff --git a/docs/Changes.conf b/docs/Changes.conf
index de9074f11..c4a5d8ff7 100644
--- a/docs/Changes.conf
+++ b/docs/Changes.conf
@@ -1,3 +1,9 @@
+Anope Version 2.0.2
+-------------------
+Add an operserv/oper/modify privilege, required to use oper add and oper del
+Add a chanserv/access/list privilege, which allow readonly access to ChanServ access and akick lists
+Changed m_dnsbl's result configuration to be more extensible
+
Anope Version 2.0.1
-------------------
Add MUTE command to BotServ fantasy configuration
diff --git a/docs/INSTALL b/docs/INSTALL
index 6d614d0e6..0a923ef97 100644
--- a/docs/INSTALL
+++ b/docs/INSTALL
@@ -21,26 +21,19 @@ Note: You should also read the README and FAQ files!
http://www.anope.org/
- Anope can be built one of two ways. The recommended way is to use CMake.
- You can check if CMake is already installed on your system using the
- command:
+ Anope requires cmake to build. You can check if CMake is already
+ installed on your system using the command:
cmake --version
If it's installed, you will get a line that says something similar to
- "cmake version 2.6-patch 1". If the version is less than 2.4 or you get
+ "cmake version 2.8.12.2". If the version is less than 2.4 or you get
an error saying the command was not found, you will not be able to use
CMake unless you install it yourself into your home directory. CMake
can be downloaded from:
http://www.cmake.org/cmake/resources/software.html
- If you are unable to install CMake yourself (either due to lack of space
- or restrictions by your hosting provider), you still have the alternative
- to use the provided configure script. This option is not recommended and
- will eventually be phased out, but is provided for compatibility for those
- lacking CMake.
-
Next, unpack the package in your home directory, and go into the created
directory.
@@ -51,16 +44,8 @@ Note: You should also read the README and FAQ files!
Now type ./Config to start the configuration script. It will ask you a
few questions, and figure out how to compile Anope on your system. If
you are unsure about the answer to a question, use the default value.
- The question to using configure or cmake depends on your decision from
- above. If you have CMake and wish to use it, answer with cmake, otherwise
- answer with configure.
-
- You can now type make to compile Anope. If there are errors in the
- Makefile, *try to use gmake* instead. If it still doesn't work, you (or
- the system administrator if it's a shell) must install GNU make. You may
- find it at ftp://prep.ai.mit.edu/pub/gnu/.
- Now type make install (or gmake install; see above). This will install
+ Now cd build and type make and make install. This will install
all the needed files in the paths you specified with the configure
script, and setup file permissions. You should ensure that the data
directory is not accessible by other users, as malicious users may
diff --git a/docs/INSTALL.fr b/docs/INSTALL.fr
index 8baa108e8..f7af3aac8 100644
--- a/docs/INSTALL.fr
+++ b/docs/INSTALL.fr
@@ -1,5 +1,5 @@
Instructions d'installation d'Anope
-------------------------------------
+-----------------------------------
1) Installation d'Anope
2) Mettre à jour Anope
@@ -11,148 +11,139 @@ Note : Vous devrez également lire les fichiers README et FAQ !
1) Installation d'Anope
- NOTE IMPORTANTE : il n'est pas recommandé d'utiliser (et même d'installer)
- Anope en tant que root. Utilisez