summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorNaram Qashat cyberbotx@cyberbotx.com <Naram Qashat cyberbotx@cyberbotx.com@5417fbe8-f217-4b02-8779-1006273d7864>2008-10-05 02:24:39 +0000
committerNaram Qashat cyberbotx@cyberbotx.com <Naram Qashat cyberbotx@cyberbotx.com@5417fbe8-f217-4b02-8779-1006273d7864>2008-10-05 02:24:39 +0000
commit2726877999b4660ca318b4e98ba2e60caeff3974 (patch)
tree38ffd1707c1ed5d2d3b8c272ef85dfaaf577f22b
parenta02f8503e75eb4bb03c79a8d4c4e93a825302fff (diff)
Merge branch 'anopeng' into anopeng-config
git-svn-id: http://anope.svn.sourceforge.net/svnroot/anope/trunk@1420 5417fbe8-f217-4b02-8779-1006273d7864
-rw-r--r--Changes2
-rw-r--r--Changes.lang3
-rw-r--r--include/extern.h16
-rw-r--r--lang/cat.l6
-rw-r--r--lang/de.l4
-rw-r--r--lang/en_us.l6
-rw-r--r--lang/es.l6
-rw-r--r--lang/fr.l6
-rw-r--r--lang/gr.l6
-rw-r--r--lang/hun.l6
-rw-r--r--lang/it.l6
-rw-r--r--lang/nl.l6
-rw-r--r--lang/pl.l6
-rw-r--r--lang/pt.l6
-rw-r--r--lang/ru.l6
-rw-r--r--lang/tr.l6
-rw-r--r--src/base64.c6
-rw-r--r--src/botserv.c6
-rw-r--r--src/channels.c32
-rw-r--r--src/chanserv.c22
-rw-r--r--src/core/cs_logout.c3
-rw-r--r--version.log8
22 files changed, 108 insertions, 66 deletions
diff --git a/Changes b/Changes
index 8199984b6..811b25906 100644
--- a/Changes
+++ b/Changes
@@ -12,6 +12,8 @@ Anope Version S V N
09/30 F Fixed error in the SASET help. [#950]
10/01 F Fixed an error in the OS IGNORE documentation. [#948]
10/01 F Fixed DB routines not storing nick passwords properly. [#940]
+10/04 F Fixed errors in CS LOGOUT documentation. [#941]
+10/04 F Fixed missing optional params in MODLIST help. [#951]
Provided by Robin Burchell <w00t@inspircd.org> - 2008
09/22 F Enabled UMODE functionality for InspIRCd 1.1 [ #00]
diff --git a/Changes.lang b/Changes.lang
index 94815dfc5..3bfb0ea73 100644
--- a/Changes.lang
+++ b/Changes.lang
@@ -2,12 +2,15 @@ Anope Version S V N
--------------------
*** New Strings:
PASSWORD_TOO_LONG
+ CHAN_LOGOUT_FOUNDER_FAILED
*** Mod Strings:
OPER_HELP_OPER
NICK_HELP_SASET_PASSWORD
OPER_IGNORE_SYNTAX
OPER_HELP_IGNORE
+ CHAN_LOGOUT_ALL_SUCCEEDED
+ OPER_HELP_MODLIST
*** Del Strings:
PASSWORD_TRUNCATED
diff --git a/include/extern.h b/include/extern.h
index 83c67b52e..c8dd9598a 100644
--- a/include/extern.h
+++ b/include/extern.h
@@ -502,12 +502,12 @@ E int rdb_init();
E int rdb_open();
E int rdb_close();
E char *rdb_quote(char *str);
-E int rdb_tag_table(char *table);
-E int rdb_tag_table_where(char *table, char *clause);
-E int rdb_empty_table(char *table);
-E int rdb_clean_table(char *table);
-E int rdb_clean_table_where(char *table, char *clause);
-E int rdb_scrub_table(char *table, char *clause);
+E int rdb_tag_table(const char* table);
+E int rdb_tag_table_where(const char* table, const char* clause);
+E int rdb_empty_table(const char* table);
+E int rdb_clean_table(const char* table);
+E int rdb_clean_table_where(const char* table, const char* clause);
+E int rdb_scrub_table(const char* table, const char* clause);
E int rdb_direct_query(char *query);
E int rdb_ns_set_display(char *newnick, char *oldnick);
E int rdb_save_ns_core(NickCore * nc);
@@ -1129,12 +1129,12 @@ E void anope_cmd_svswatch(const char *sender, const char *nick, const char *parm
E char *common_get_vident(User *u);
E char *common_get_vhost(User *u);
E const char *send_token(const char *token1, const char *token2);
-E char *base64enc(long i);
+E const char* base64enc(long i);
E long base64dec(char *b64);
E long base64dects(const char *ts);
E int b64_encode(char *src, size_t srclength, char *target, size_t targsize);
E int b64_decode(const char *src, char *target, size_t targsize);
-E char *encode_ip(unsigned char *ip);
+E const char* encode_ip(unsigned char *ip);
E int decode_ip(const char *buf);
#define Anope_Free(x) if ((x) != NULL) free(x)
diff --git a/lang/cat.l b/lang/cat.l
index b2563a946..3aad2e3f6 100644
--- a/lang/cat.l
+++ b/lang/cat.l
@@ -1116,7 +1116,9 @@ CHAN_LOGOUT_SERVADMIN_SYNTAX
CHAN_LOGOUT_SUCCEEDED
L'usuari %s ha estat desconnectat del canal %s.
CHAN_LOGOUT_ALL_SUCCEEDED
- Tots els usuaris identificats han estat desconnectats del canal %s.
+ Tots els usuaris identificats han estat desconnectats del canal %s (except the channel founder).
+CHAN_LOGOUT_FOUNDER_FAILED
+ You may not log out of %s (you are founder).
# DROP responses
CHAN_DROP_SYNTAX
@@ -6327,7 +6329,7 @@ OPER_HELP_MODINFO
Limited to Services Roots.
OPER_HELP_MODLIST
- Syntax: MODLIST
+ Syntax: MODLIST [Core|3rd|protocol|encryption|supported|qatested]
Lists all currently loaded modules.
diff --git a/lang/de.l b/lang/de.l
index 02ed7796c..85a146a9a 100644
--- a/lang/de.l
+++ b/lang/de.l
@@ -1129,7 +1129,7 @@ CHAN_LOGOUT_SERVADMIN_SYNTAX
CHAN_LOGOUT_SUCCEEDED
Der User %s wurde vom Channel %s ausgeloggt.
CHAN_LOGOUT_ALL_SUCCEEDED
- Alle identifizierten User wurden vom Channel ausgeloggt %s.
+ Alle identifizierten User wurden vom Channel ausgeloggt %s (except the channel founder).
# DROP responses
CHAN_DROP_SYNTAX
@@ -6333,7 +6333,7 @@ OPER_HELP_MODINFO
Module auf.
OPER_HELP_MODLIST
- Syntax: MODLIST
+ Syntax: MODLIST [Core|3rd|protocol|encryption|supported|qatested]
Listet alle derzeit geladenen Module auf.
diff --git a/lang/en_us.l b/lang/en_us.l
index 32b4054df..abc906342 100644
--- a/lang/en_us.l
+++ b/lang/en_us.l
@@ -1093,7 +1093,9 @@ CHAN_LOGOUT_SERVADMIN_SYNTAX
CHAN_LOGOUT_SUCCEEDED
User %s has been logged out of channel %s.
CHAN_LOGOUT_ALL_SUCCEEDED
- All users identified have been logged out of channel %s.
+ All users identified have been logged out of channel %s (except the channel founder).
+CHAN_LOGOUT_FOUNDER_FAILED
+ You may not log out of %s (you are founder).
# DROP responses
CHAN_DROP_SYNTAX
@@ -5974,7 +5976,7 @@ OPER_HELP_MODINFO
This command lists information about the specified loaded module
OPER_HELP_MODLIST
- Syntax: MODLIST
+ Syntax: MODLIST [Core|3rd|protocol|encryption|supported|qatested]
Lists all currently loaded modules.
diff --git a/lang/es.l b/lang/es.l
index b25dbbcea..ae92f6302 100644
--- a/lang/es.l
+++ b/lang/es.l
@@ -1116,7 +1116,9 @@ CHAN_LOGOUT_SERVADMIN_SYNTAX
CHAN_LOGOUT_SUCCEEDED
El usuario %s ha sido desconectado del canal %s.
CHAN_LOGOUT_ALL_SUCCEEDED
- Todos los usuarios identificados han sido desconectados del canal %s.
+ Todos los usuarios identificados han sido desconectados del canal %s (except the channel founder).
+CHAN_LOGOUT_FOUNDER_FAILED
+ You may not log out of %s (you are founder).
# DROP responses
CHAN_DROP_SYNTAX
@@ -6299,7 +6301,7 @@ OPER_HELP_MODINFO
Limitado a Services Roots.
OPER_HELP_MODLIST
- Sintaxis: MODLIST
+ Sintaxis: MODLIST [Core|3rd|protocol|encryption|supported|qatested]
Lista todos los modulos actualmente cargados.
diff --git a/lang/fr.l b/lang/fr.l
index f964201ff..12cdeb0b7 100644
--- a/lang/fr.l
+++ b/lang/fr.l
@@ -1127,7 +1127,9 @@ CHAN_LOGOUT_SERVADMIN_SYNTAX
CHAN_LOGOUT_SUCCEEDED
L'utilisateur %s n'est plus identifié pour le canal %s.
CHAN_LOGOUT_ALL_SUCCEEDED
- Tous les utilisateurs identifiés au canal %s ne le sont plus.
+ Tous les utilisateurs identifiés au canal %s ne le sont plus (except the channel founder).
+CHAN_LOGOUT_FOUNDER_FAILED
+ You may not log out of %s (you are founder).
# DROP responses
CHAN_DROP_SYNTAX
@@ -6367,7 +6369,7 @@ OPER_HELP_MODINFO
Limité aux Services Roots.
OPER_HELP_MODLIST
- Syntaxe: MODLIST
+ Syntaxe: MODLIST [Core|3rd|protocol|encryption|supported|qatested]
Liste les modules actuelement chargés.
diff --git a/lang/gr.l b/lang/gr.l
index 7788cff5e..ff4ed0998 100644
--- a/lang/gr.l
+++ b/lang/gr.l
@@ -1114,7 +1114,9 @@ CHAN_LOGOUT_SERVADMIN_SYNTAX
CHAN_LOGOUT_SUCCEEDED
Ï ÷ñÞóôçò %s Ýãéíå logged out áðü ôï êáíÜëé %s.
CHAN_LOGOUT_ALL_SUCCEEDED
- ¼ëïé ïé ÷ñÞóôåò logged out áðü ôï êáíÜëé %s.
+ ¼ëïé ïé ÷ñÞóôåò logged out áðü ôï êáíÜëé %s (except the channel founder).
+CHAN_LOGOUT_FOUNDER_FAILED
+ You may not log out of %s (you are founder).
# DROP responses
CHAN_DROP_SYNTAX
@@ -6227,7 +6229,7 @@ OPER_HELP_MODINFO
Limited to Services Roots.
OPER_HELP_MODLIST
- Syntax: MODLIST
+ Syntax: MODLIST [Core|3rd|protocol|encryption|supported|qatested]
Lists all currently loaded modules.
diff --git a/lang/hun.l b/lang/hun.l
index 2d108a6a3..a8fcec87a 100644
--- a/lang/hun.l
+++ b/lang/hun.l
@@ -1107,7 +1107,9 @@ CHAN_LOGOUT_SERVADMIN_SYNTAX
CHAN_LOGOUT_SUCCEEDED
%s felhasználó kijelentkezett a %s csatornáról.
CHAN_LOGOUT_ALL_SUCCEEDED
- Minden felhasználó kijelentkezett a %s csatornáról.
+ Minden felhasználó kijelentkezett a %s csatornáról (except the channel founder).
+CHAN_LOGOUT_FOUNDER_FAILED
+ You may not log out of %s (you are founder).
# DROP válaszok
CHAN_DROP_SYNTAX
@@ -6129,7 +6131,7 @@ OPER_HELP_MODINFO
Korlátozva Szervíz Rootnak.
OPER_HELP_MODLIST
- Syntax: MODLIST
+ Syntax: MODLIST [Core|3rd|protocol|encryption|supported|qatested]
Listázza az összes betöltött aktív modult.
diff --git a/lang/it.l b/lang/it.l
index 5f16f57cb..2ec611ea1 100644
--- a/lang/it.l
+++ b/lang/it.l
@@ -1104,7 +1104,9 @@ CHAN_LOGOUT_SERVADMIN_SYNTAX
CHAN_LOGOUT_SUCCEEDED
L'utente %s non è più identificato per il canale %s.
CHAN_LOGOUT_ALL_SUCCEEDED
- Tutti gli utenti non sono più identificati per il canale %s.
+ Tutti gli utenti non sono più identificati per il canale %s (except the channel founder).
+CHAN_LOGOUT_FOUNDER_FAILED
+ You may not log out of %s (you are founder).
# DROP responses
CHAN_DROP_SYNTAX
@@ -6191,7 +6193,7 @@ OPER_HELP_MODINFO
Limitato ai Services Root.
OPER_HELP_MODLIST
- Sintassi: MODLIST
+ Sintassi: MODLIST [Core|3rd|protocol|encryption|supported|qatested]
Elenca tutti i moduli attualmente caricati.
diff --git a/lang/nl.l b/lang/nl.l
index e3509b104..2aae513ed 100644
--- a/lang/nl.l
+++ b/lang/nl.l
@@ -1119,7 +1119,9 @@ CHAN_LOGOUT_SERVADMIN_SYNTAX
CHAN_LOGOUT_SUCCEEDED
Gebruiker %s is uitgelogd van kanaal %s.
CHAN_LOGOUT_ALL_SUCCEEDED
- Alle geidentificeerde gebruikers zijn uitgelogd van kanaal %s.
+ Alle geidentificeerde gebruikers zijn uitgelogd van kanaal %s (except the channel founder).
+CHAN_LOGOUT_FOUNDER_FAILED
+ You may not log out of %s (you are founder).
# DROP responses
CHAN_DROP_SYNTAX
@@ -6154,7 +6156,7 @@ OPER_HELP_MODINFO
geladen module.
OPER_HELP_MODLIST
- Gebruik: MODLIST
+ Gebruik: MODLIST [Core|3rd|protocol|encryption|supported|qatested]
Geeft alle momenteel geladen modules weer.
diff --git a/lang/pl.l b/lang/pl.l
index a1d58d95c..ac06d3324 100644
--- a/lang/pl.l
+++ b/lang/pl.l
@@ -1190,7 +1190,9 @@ CHAN_LOGOUT_SUCCEEDED
U¿ytkownik %s zosta³ wylogowany z kana³u %s.
CHAN_LOGOUT_ALL_SUCCEEDED
Wszyscy zidentyfikowani u¿ytkownicy zostali
- wylogowani z kana³u %s.
+ wylogowani z kana³u %s (except the channel founder).
+CHAN_LOGOUT_FOUNDER_FAILED
+ You may not log out of %s (you are founder).
# DROP responses
CHAN_DROP_SYNTAX
@@ -6629,7 +6631,7 @@ OPER_HELP_MODINFO
Limited to Services Roots.
OPER_HELP_MODLIST
- Syntax: MODLIST
+ Syntax: MODLIST [Core|3rd|protocol|encryption|supported|qatested]
Lists all currently loaded modules.
diff --git a/lang/pt.l b/lang/pt.l
index 98c248097..751fb2f36 100644
--- a/lang/pt.l
+++ b/lang/pt.l
@@ -1113,7 +1113,9 @@ CHAN_LOGOUT_SERVADMIN_SYNTAX
CHAN_LOGOUT_SUCCEEDED
Usuário %s foi desconectado do canal %s.
CHAN_LOGOUT_ALL_SUCCEEDED
- Todos os usuários registrados foram desconectados do canal %s.
+ Todos os usuários registrados foram desconectados do canal %s (except the channel founder).
+CHAN_LOGOUT_FOUNDER_FAILED
+ You may not log out of %s (you are founder).
# DROP responses
CHAN_DROP_SYNTAX
@@ -6120,7 +6122,7 @@ OPER_HELP_MODINFO
Limitado aos Service Root Administrators.
OPER_HELP_MODLIST
- Sintaxe: MODLIST
+ Sintaxe: MODLIST [Core|3rd|protocol|encryption|supported|qatested]
Lista todos os módulos atualmente carregados.
diff --git a/lang/ru.l b/lang/ru.l
index 002c30737..fb44efee0 100644
--- a/lang/ru.l
+++ b/lang/ru.l
@@ -1093,7 +1093,9 @@ CHAN_LOGOUT_SERVADMIN_SYNTAX
CHAN_LOGOUT_SUCCEEDED
Ïîëüçîâàòåëü %s áûë äåèäåíòèôèöèðîâàí îò êàíàëà %s.
CHAN_LOGOUT_ALL_SUCCEEDED
- Âñå èäåíòèôèöèðîâàííûå ïîëüçîâàòåëè áûëè äåèäåíòèôèöèðîâàíû îò êàíàëà %s.
+ Âñå èäåíòèôèöèðîâàííûå ïîëüçîâàòåëè áûëè äåèäåíòèôèöèðîâàíû îò êàíàëà %s (except the channel founder).
+CHAN_LOGOUT_FOUNDER_FAILED
+ You may not log out of %s (you are founder).
# DROP responses
CHAN_DROP_SYNTAX
@@ -6001,7 +6003,7 @@ OPER_HELP_MODINFO
Ýòà êîìàíäà ïîêàæåò èíôîðìàöèþ îá óêàçàííîì çàãðóæåíîì ìîäóëå
OPER_HELP_MODLIST
- Ñèíòàêñèñ: MODLIST
+ Ñèíòàêñèñ: MODLIST [Core|3rd|protocol|encryption|supported|qatested]
Ñïèñîê âñåõ çàãðóæåííûõ ìîäóëåé
diff --git a/lang/tr.l b/lang/tr.l
index 0bf7d3ef5..3b8a4982c 100644
--- a/lang/tr.l
+++ b/lang/tr.l
@@ -1121,7 +1121,9 @@ CHAN_LOGOUT_SERVADMIN_SYNTAX
CHAN_LOGOUT_SUCCEEDED
Kullanýcý %s artýk %s kanalý tarafýndan tanýnmýyor.
CHAN_LOGOUT_ALL_SUCCEEDED
- Tüm tanýmlý kullanýcýlar artýk %s kanalý tarafýndan tanýnmýyor.
+ Tüm tanýmlý kullanýcýlar artýk %s kanalý tarafýndan tanýnmýyor (Except the channel founder).
+CHAN_LOGOUT_FOUNDER_FAILED
+ You may not log out of %s (you are founder).
# DROP responses
CHAN_DROP_SYNTAX
@@ -6170,7 +6172,7 @@ OPER_HELP_MODINFO
Limited to Services Roots.
OPER_HELP_MODLIST
- Syntax: MODLIST
+ Syntax: MODLIST [Core|3rd|protocol|encryption|supported|qatested]
Lists all currently loaded modules.
diff --git a/src/base64.c b/src/base64.c
index 2c78a9703..af3378cf4 100644
--- a/src/base64.c
+++ b/src/base64.c
@@ -20,14 +20,14 @@
static char *int_to_base64(long);
static long base64_to_int(char *);
-char *base64enc(long i)
+const char* base64enc(long i)
{
if (i < 0)
return ("0");
return int_to_base64(i);
}
-long base64dec(char *b64)
+long base64dec(char* b64)
{
if (b64)
return base64_to_int(b64);
@@ -280,7 +280,7 @@ int b64_decode(const char *src, char *target, size_t targsize)
return (tarindex);
}
-char *encode_ip(unsigned char *ip)
+const char* encode_ip(unsigned char *ip)
{
static char buf[25];
unsigned char *cp;
diff --git a/src/botserv.c b/src/botserv.c
index 9f05ec9b3..b1507b2e8 100644
--- a/src/botserv.c
+++ b/src/botserv.c
@@ -90,7 +90,7 @@ void botserv(User * u, char *buf)
return;
} else if (stricmp(cmd, "\1PING") == 0) {
if (!(s = strtok(NULL, ""))) {
- s = "";
+ *s = 0;
}
ircdproto->SendCTCP(findbot(s_BotServ), u->nick, "PING %s", s);
} else {
@@ -113,7 +113,7 @@ void botmsgs(User * u, BotInfo * bi, char *buf)
if (!stricmp(cmd, "\1PING")) {
if (!(s = strtok(NULL, ""))) {
- s = "";
+ *s = 0;
}
ircdproto->SendCTCP(bi, u->nick, "PING %s", s);
}
@@ -745,7 +745,7 @@ void bot_join(ChannelInfo * ci)
/* Should we be invited? */
if ((ci->c->mode & anope_get_invite_mode())
- || (ci->c->limit && ci->c->usercount >= ci->c->limit))
+ || (ci->c->limit && (unsigned int)ci->c->usercount >= ci->c->limit))
ircdproto->SendNoticeChanops(NULL, ci->c->name,
"%s invited %s into the channel.",
ci->bi->nick, ci->bi->nick);
diff --git a/src/channels.c b/src/channels.c
index 599ce6585..5fdd6b73b 100644
--- a/src/channels.c
+++ b/src/channels.c
@@ -68,7 +68,7 @@ char *chan_get_modes(Channel * chan, int complete, int plus)
char *end = res;
if (chan->mode) {
- int n = 0;
+ unsigned int n = 0;
CBModeInfo *cbmi = cbmodeinfos;
do {
@@ -762,7 +762,7 @@ void do_sjoin(const char *source, int ac, const char **av)
struct c_userlist *cu;
const char *s = NULL;
char *end, cubuf[7], *end2;
- const char *cumodes[6];
+ const char *modes[6];
int is_sqlined = 0;
int ts = 0;
int is_created = 0;
@@ -783,10 +783,10 @@ void do_sjoin(const char *source, int ac, const char **av)
c->creation_time = ts;
for (cu = c->users; cu; cu = cu->next) {
/* XXX */
- cumodes[0] = "-ov";
- cumodes[1] = cu->user->nick;
- cumodes[2] = cu->user->nick;
- chan_set_modes(source, c, 3, cumodes, 2);
+ modes[0] = "-ov";
+ modes[1] = cu->user->nick;
+ modes[2] = cu->user->nick;
+ chan_set_modes(source, c, 3, modes, 2);
}
if (c->ci && c->ci->bi) {
/* This is ugly, but it always works */
@@ -807,7 +807,7 @@ void do_sjoin(const char *source, int ac, const char **av)
}
cubuf[0] = '+';
- cumodes[0] = cubuf;
+ modes[0] = cubuf;
/* We make all the users join */
s = av[ac - 1]; /* Users are always the last element */
@@ -891,9 +891,9 @@ void do_sjoin(const char *source, int ac, const char **av)
int i;
for (i = 1; i < end2 - cubuf; i++)
- cumodes[i] = user->nick;
+ modes[i] = user->nick;
chan_set_modes(source, c, 1 + (end2 - cubuf - 1),
- cumodes, 2);
+ modes, 2);
}
if (c->ci && (!serv || is_sync(serv))
@@ -924,7 +924,7 @@ void do_sjoin(const char *source, int ac, const char **av)
}
cubuf[0] = '+';
- cumodes[0] = cubuf;
+ modes[0] = cubuf;
/* We make all the users join */
s = av[2]; /* Users are always the last element */
@@ -976,9 +976,9 @@ void do_sjoin(const char *source, int ac, const char **av)
int i;
for (i = 1; i < end2 - cubuf; i++)
- cumodes[i] = user->nick;
+ modes[i] = user->nick;
chan_set_modes(source, c, 1 + (end2 - cubuf - 1),
- cumodes, 2);
+ modes, 2);
}
chan_set_correct_modes(user, c, 1);
@@ -999,7 +999,7 @@ void do_sjoin(const char *source, int ac, const char **av)
}
cubuf[0] = '+';
- cumodes[0] = cubuf;
+ modes[0] = cubuf;
/* We make all the users join */
s = sstrdup(source); /* Users are always the last element */
@@ -1051,9 +1051,9 @@ void do_sjoin(const char *source, int ac, const char **av)
int i;
for (i = 1; i < end2 - cubuf; i++)
- cumodes[i] = user->nick;
+ modes[i] = user->nick;
chan_set_modes(source, c, 1 + (end2 - cubuf - 1),
- cumodes, 2);
+ modes, 2);
}
chan_set_correct_modes(user, c, 1);
@@ -1118,7 +1118,7 @@ void do_cmode(const char *source, int ac, const char **av)
{
Channel *chan;
ChannelInfo *ci = NULL;
- int i;
+ unsigned int i;
const char *t;
if (ircdcap->tsmode) {
diff --git a/src/chanserv.c b/src/chanserv.c
index a878d0882..b3812dc1c 100644
--- a/src/chanserv.c
+++ b/src/chanserv.c
@@ -135,7 +135,7 @@ char *get_mlock_modes(ChannelInfo * ci, int complete)
char *end = res;
if (ci->mlock_on || ci->mlock_off) {
- int n = 0;
+ unsigned int n = 0;
CBModeInfo *cbmi = cbmodeinfos;
if (ci->mlock_on) {
@@ -274,7 +274,7 @@ void chanserv(User * u, char *buf)
return;
} else if (stricmp(cmd, "\1PING") == 0) {
if (!(s = strtok(NULL, ""))) {
- s = "";
+ *s = 0;
}
ircdproto->SendCTCP(findbot(s_ChanServ), u->nick, "PING %s", s);
} else {
@@ -314,6 +314,7 @@ void load_cs_dbase(void)
for (i = 0; i < 256 && !failed; i++) {
uint16 tmp16;
uint32 tmp32;
+ unsigned int read;
int n_levels;
char *s;
NickAlias *na;
@@ -328,7 +329,7 @@ void load_cs_dbase(void)
last = &ci->next;
ci->prev = prev;
prev = ci;
- SAFE(read_buffer(ci->name, f));
+ SAFE(read = read_buffer(ci->name, f));
SAFE(read_string(&s, f));
if (s) {
ci->founder = findcore(s);
@@ -353,7 +354,7 @@ void load_cs_dbase(void)
} else {
ci->successor = NULL;
}
- SAFE(read_buffer(ci->founderpass, f));
+ SAFE(read = read_buffer(ci->founderpass, f));
SAFE(read_string(&ci->desc, f));
if (!ci->desc)
ci->desc = sstrdup("");
@@ -364,7 +365,7 @@ void load_cs_dbase(void)
SAFE(read_int32(&tmp32, f));
ci->last_used = tmp32;
SAFE(read_string(&ci->last_topic, f));
- SAFE(read_buffer(ci->last_topic_setter, f));
+ SAFE(read = read_buffer(ci->last_topic_setter, f));
SAFE(read_int32(&tmp32, f));
ci->last_topic_time = tmp32;
SAFE(read_int32(&ci->flags, f));
@@ -479,7 +480,7 @@ void load_cs_dbase(void)
SAFE(read_int16(&memos->flags, f));
SAFE(read_int32(&tmp32, f));
memos->time = tmp32;
- SAFE(read_buffer(memos->sender, f));
+ SAFE(read = read_buffer(memos->sender, f));
SAFE(read_string(&memos->text, f));
memos->moduleData = NULL;
}
@@ -632,10 +633,11 @@ void save_cs_dbase(void)
for (i = 0; i < 256; i++) {
int16 tmp16;
+ unsigned int written;
for (ci = chanlists[i]; ci; ci = ci->next) {
SAFE(write_int8(1, f));
- SAFE(write_buffer(ci->name, f));
+ SAFE(written = write_buffer(ci->name, f));
if (ci->founder)
SAFE(write_string(ci->founder->display, f));
else
@@ -644,14 +646,14 @@ void save_cs_dbase(void)
SAFE(write_string(ci->successor->display, f));
else
SAFE(write_string(NULL, f));
- SAFE(write_buffer(ci->founderpass, f));
+ SAFE(written = write_buffer(ci->founderpass, f));
SAFE(write_string(ci->desc, f));
SAFE(write_string(ci->url, f));
SAFE(write_string(ci->email, f));
SAFE(write_int32(ci->time_registered, f));
SAFE(write_int32(ci->last_used, f));
SAFE(write_string(ci->last_topic, f));
- SAFE(write_buffer(ci->last_topic_setter, f));
+ SAFE(written = write_buffer(ci->last_topic_setter, f));
SAFE(write_int32(ci->last_topic_time, f));
SAFE(write_int32(ci->flags, f));
SAFE(write_string(ci->forbidby, f));
@@ -708,7 +710,7 @@ void save_cs_dbase(void)
SAFE(write_int32(memos->number, f));
SAFE(write_int16(memos->flags, f));
SAFE(write_int32(memos->time, f));
- SAFE(write_buffer(memos->sender, f));
+ SAFE(written = write_buffer(memos->sender, f));
SAFE(write_string(memos->text, f));
}
diff --git a/src/core/cs_logout.c b/src/core/cs_logout.c
index fff40ed4e..d8fb911ed 100644
--- a/src/core/cs_logout.c
+++ b/src/core/cs_logout.c
@@ -87,6 +87,9 @@ int do_logout(User * u)
notice_lang(s_ChanServ, u, NICK_X_NOT_IN_USE, nick);
} else if (!is_servadmin && u2 != u && !is_real_founder(u, ci)) {
notice_lang(s_ChanServ, u, ACCESS_DENIED);
+ /* Since founders can not logout we should tell them -katsklaw */
+ } else if (u2 == u && is_real_founder(u, ci)) {
+ notice_lang(s_ChanServ, u, CHAN_LOGOUT_FOUNDER_FAILED, chan);
} else {
if (u2) {
make_unidentified(u2, ci);
diff --git a/version.log b/version.log
index 0c2765ca2..0d1d1e5f1 100644
--- a/version.log
+++ b/version.log
@@ -13,6 +13,14 @@ VERSION_BUILD=""
# $Log$
#
+# BUILD : 1.7.22 (1464)
+# BUGS : 951
+# NOTES : Applied patch by katsklaw to add missing optional parameters to OS MODLIST help.
+#
+# BUILD : 1.7.22 (1463)
+# BUGS : 941
+# NOTES : Applied patches by chaz and katsklaw to fix issues with CS LOGOUT documentation.
+#
# BUILD : 1.7.22 (1462)
# BUGS : 940
# NOTES : Fixed a bug in the database system causing certain nickserv password hashes to be stored incorrectly. Note that THIS BREAKS BACKWARDS COMPATIBILITY !!! As of now nick.db is no longer backwards compatible.