diff options
Diffstat (limited to 'src')
-rw-r--r-- | src/base64.c | 6 | ||||
-rw-r--r-- | src/botserv.c | 6 | ||||
-rw-r--r-- | src/channels.c | 32 | ||||
-rw-r--r-- | src/chanserv.c | 22 | ||||
-rw-r--r-- | src/core/cs_logout.c | 3 |
5 files changed, 37 insertions, 32 deletions
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); |