diff options
author | rob rob@31f1291d-b8d6-0310-a050-a5561fc1590b <rob rob@31f1291d-b8d6-0310-a050-a5561fc1590b@5417fbe8-f217-4b02-8779-1006273d7864> | 2005-05-12 18:38:55 +0000 |
---|---|---|
committer | rob rob@31f1291d-b8d6-0310-a050-a5561fc1590b <rob rob@31f1291d-b8d6-0310-a050-a5561fc1590b@5417fbe8-f217-4b02-8779-1006273d7864> | 2005-05-12 18:38:55 +0000 |
commit | 1e064cc12631d498310d7bffa8cba8f2ed89b9cf (patch) | |
tree | 9d0e1a7634529fd021ef19deb28d8a4cfd7b1323 /src | |
parent | df7cd78fa8bbc2a68ec14da395a566b5bc0eb53f (diff) |
BUILD : 1.7.9 (789) BUGS : 375 NOTES : NSOperListOnly and CSOperListOnly are correctly formated in the help now.
git-svn-id: svn://svn.anope.org/anope/trunk@789 31f1291d-b8d6-0310-a050-a5561fc1590b
git-svn-id: http://anope.svn.sourceforge.net/svnroot/anope/trunk@549 5417fbe8-f217-4b02-8779-1006273d7864
Diffstat (limited to 'src')
-rw-r--r-- | src/config.c | 2 | ||||
-rw-r--r-- | src/core/cs_list.c | 25 | ||||
-rw-r--r-- | src/core/ns_list.c | 2 |
3 files changed, 18 insertions, 11 deletions
diff --git a/src/config.c b/src/config.c index 07c7f2995..f018503ac 100644 --- a/src/config.c +++ b/src/config.c @@ -858,7 +858,7 @@ int parse(char *buf, int linenum, int reload) if (n == lenof(directives)) { /* error(linenum, "Unknown directive `%s'", dir); - return 1; *//* don't cause abort */ + return 1; *//* don't cause abort */ } return retval; diff --git a/src/core/cs_list.c b/src/core/cs_list.c index fa33f2947..cda14a1df 100644 --- a/src/core/cs_list.c +++ b/src/core/cs_list.c @@ -32,9 +32,19 @@ int AnopeInit(int argc, char **argv) moduleAddVersion("$Id$"); moduleSetType(CORE); - c = createCommand("LIST", do_list, NULL, -1, CHAN_HELP_LIST, - CHAN_SERVADMIN_HELP_LIST, CHAN_SERVADMIN_HELP_LIST, - CHAN_SERVADMIN_HELP_LIST); + if (CSListOpersOnly) { + c = createCommand("LIST", do_list, is_oper, -1, CHAN_HELP_LIST, + CHAN_SERVADMIN_HELP_LIST, + CHAN_SERVADMIN_HELP_LIST, + CHAN_SERVADMIN_HELP_LIST); + + } else { + c = createCommand("LIST", do_list, NULL, -1, CHAN_HELP_LIST, + CHAN_SERVADMIN_HELP_LIST, + CHAN_SERVADMIN_HELP_LIST, + CHAN_SERVADMIN_HELP_LIST); + } + moduleAddCommand(CHANSERV, c, MOD_UNIQUE); moduleSetChanHelp(myChanServHelp); @@ -58,7 +68,9 @@ void AnopeFini(void) **/ void myChanServHelp(User * u) { - notice_lang(s_ChanServ, u, CHAN_HELP_CMD_LIST); + if (!CSListOpersOnly || (is_oper(u))) { + notice_lang(s_ChanServ, u, CHAN_HELP_CMD_LIST); + } } /** @@ -80,11 +92,6 @@ int do_list(User * u) int32 matchflags = 0; - if (CSListOpersOnly && (!u || !is_oper(u))) { - notice_lang(s_ChanServ, u, PERMISSION_DENIED); - return MOD_CONT; - } - if (!pattern) { syntax_error(s_ChanServ, u, "LIST", is_servadmin ? CHAN_LIST_SERVADMIN_SYNTAX : diff --git a/src/core/ns_list.c b/src/core/ns_list.c index d04d7f2ec..a06c78f9a 100644 --- a/src/core/ns_list.c +++ b/src/core/ns_list.c @@ -65,7 +65,7 @@ void AnopeFini(void) **/ void myNickServHelp(User * u) { - if (NSListOpersOnly && !(is_oper(u))) { + if (!NSListOpersOnly || (is_oper(u))) { notice_lang(s_NickServ, u, NICK_HELP_CMD_LIST); } } |