CVSROOT : /cvsroot/undernet-ircu
Module : ircu2.10
Branch tags: u2_10_11
Commit time: 2003-01-07 11:15:54 UTC
Modified files:
Tag: u2_10_11
ChangeLog include/numeric.h include/patchlevel.h ircd/channel.c
ircd/m_burst.c ircd/m_create.c ircd/m_gline.c ircd/m_userhost.c
ircd/m_wallchops.c ircd/m_wallvoices.c ircd/m_whois.c
ircd/s_err.c ircd/s_stats.c ircd/s_user.c ircd/table_gen.c
ircd/whocmds.c
Log message:
Author: Isomer <[EMAIL PROTECTED]>
Log message:
Released!
---------------------- diff included ----------------------
Index: ircu2.10/ChangeLog
diff -u ircu2.10/ChangeLog:1.290.2.126 ircu2.10/ChangeLog:1.290.2.127
--- ircu2.10/ChangeLog:1.290.2.126 Sat Dec 14 17:02:37 2002
+++ ircu2.10/ChangeLog Tue Jan 7 03:15:40 2003
@@ -1,3 +1,77 @@
+2002-01-05 Perry Lorier <[EMAIL PROTECTED]>
+ * include/patchlevel.h: Release this sucker
+
+2003-01-04 Kevin L Mitchell <[EMAIL PROTECTED]>
+
+ * ircd/m_burst.c (ms_burst): There's a possibility that the user
+ could be destroyed by net rider kicks, causing a crash in
+ mode_invite_clear()--moved it to before the net rider kick loop
+
+2002-01-05 Perry Lorier <[EMAIL PROTECTED]>
+ * include/patchlevel.h: Bump PL
+
+2003-01-04 Kevin L Mitchell <[EMAIL PROTECTED]>
+
+ * ircd/table_gen.c (makeTables): + is no longer a valid channel
+ prefix
+
+2002-12-31 hikari <[EMAIL PROTECTED]>
+ * m_userhost.c: Send the real userhost to opers.
+
+2002-12-31 David Mansell <[EMAIL PROTECTED]>
+ * ircd/m_burst.c (ms_burst): when kicking net riders, clear invites
+ too.
+
+2002-12-30 Perry Lorier <[EMAIL PROTECTED]>
+ * ircd/m_gline.c: Server set glines are FORCE'd.
+
+2002-12-30 Perry Lorier <[EMAIL PROTECTED]>
+ * ircd/whocmds.c: s/&/&&/ as suggested by reed
+
+2002-12-28 David Mansell <[EMAIL PROTECTED]>
+
+ * ircd/channel.c (mode_parse_limit): don't allow -l when no limit is
+ set, don't allow -l with negative parameter (or unsigned >2^31).
+
+2002-12-29 volta <[EMAIL PROTECTED]>
+
+ * ircd/whocmds.c: fixed a bug in the who reply for field 'l',
+ that breaks HIS
+
+2002-12-28 Kevin L Mitchell <[EMAIL PROTECTED]>
+
+ * ircd/m_create.c (ms_create): we must pass in a flag, not a
+ boolean 1 or 0! Good spotting splidge...
+
+2002-12-18 Kevin L Mitchell <[EMAIL PROTECTED]>
+
+ * ircd/s_stats.c (stats_init): er, should have started at 0--not
+ that we'll ever see a /stats '\0', but just for completeness' sake
+ :)
+
+ * ircd/s_user.c (hide_hostmask): only send the reply if the user's
+ on my server
+
+2002-12-17 hikari <[EMAIL PROTECTED]>
+ * ircd/s_err.c: added RPL_HOSTHIDDEN reply text
+
+ * ircd/s_user.c: send a confirmation of mode +x using reply numeric
+ RPL_HOSTHIDDEN
+
+ * include/numeric.h: addition of RPL_HOSTHIDDEN as 396
+
+ * include/patchlevel.h: bumped to 04dev1
+
+2002-12-14 hikari <[EMAIL PROTECTED]>
+ * ircd/m_wallchops.c: fixed ms_wallchops()
+
+ * ircd/m_wallvoices.c: fixed ms_wallvoices()
+
+2002-12-13 Zoot <[EMAIL PROTECTED]>
+ * ircd/m_whois.c (do_whois): use IsChanOp and HasVoice macros
+ instead of is_chan_op() and has_voice since we already have
+ membership links.
+
2002-12-15 Isomer <[EMAIL PROTECTED]>
* include/patchlevel.h: Release this sucker!
Index: ircu2.10/include/numeric.h
diff -u ircu2.10/include/numeric.h:1.18.2.5 ircu2.10/include/numeric.h:1.18.2.6
--- ircu2.10/include/numeric.h:1.18.2.5 Tue Jun 4 11:22:13 2002
+++ ircu2.10/include/numeric.h Tue Jan 7 03:15:41 2003
@@ -16,7 +16,7 @@
* along with this program; if not, write to the Free Software
* Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
*
- * $Id: numeric.h,v 1.18.2.5 2002/06/04 18:22:13 vampire Exp $
+ * $Id: numeric.h,v 1.18.2.6 2003/01/07 11:15:41 isomer Exp $
*/
#ifndef INCLUDED_numeric_h
#define INCLUDED_numeric_h
@@ -304,6 +304,7 @@
/* RPL_USERS 393 Dalnet/EFnet/IRCnet */
/* RPL_END_USERS 394 Dalnet/EFnet/IRCnet */
/* RPL_NOUSERS 395 Dalnet/EFnet/IRCnet */
+#define RPL_HOSTHIDDEN 396 /* UMODE +x completed succesfuly */
/*
* Errors are in the range from 400-599 currently and are grouped by what
Index: ircu2.10/include/patchlevel.h
diff -u ircu2.10/include/patchlevel.h:1.10.4.62 ircu2.10/include/patchlevel.h:1.10.4.63
--- ircu2.10/include/patchlevel.h:1.10.4.62 Sat Dec 14 17:02:38 2002
+++ ircu2.10/include/patchlevel.h Tue Jan 7 03:15:41 2003
@@ -15,10 +15,10 @@
* along with this program; if not, write to the Free Software
* Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
*
- * $Id: patchlevel.h,v 1.10.4.62 2002/12/15 01:02:38 isomer Exp $
+ * $Id: patchlevel.h,v 1.10.4.63 2003/01/07 11:15:41 isomer Exp $
*
*/
-#define PATCHLEVEL "03"
+#define PATCHLEVEL "04"
#define RELEASE ".11."
Index: ircu2.10/ircd/channel.c
diff -u ircu2.10/ircd/channel.c:1.73.2.11 ircu2.10/ircd/channel.c:1.73.2.12
--- ircu2.10/ircd/channel.c:1.73.2.11 Sat Dec 14 17:02:39 2002
+++ ircu2.10/ircd/channel.c Tue Jan 7 03:15:42 2003
@@ -17,7 +17,7 @@
* along with this program; if not, write to the Free Software
* Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
*
- * $Id: channel.c,v 1.73.2.11 2002/12/15 01:02:39 isomer Exp $
+ * $Id: channel.c,v 1.73.2.12 2003/01/07 11:15:42 isomer Exp $
*/
#include "config.h"
@@ -1940,6 +1940,9 @@
t_limit = strtoul(state->parv[state->args_used++], 0, 10); /* grab arg */
state->parc--;
state->max_args--;
+
+ if ((int)t_limit<0) /* don't permit a negative limit */
+ return;
if (!(state->flags & MODE_PARSE_WIPEOUT) &&
(!t_limit || t_limit == state->chptr->mode.limit))
@@ -1952,6 +1955,10 @@
send_notoper(state);
return;
}
+
+ /* Can't remove a limit that's not there */
+ if (state->dir == MODE_DEL && !state->chptr->mode.limit)
+ return;
if (state->done & DONE_LIMIT) /* allow limit to be set only once */
return;
Index: ircu2.10/ircd/m_burst.c
diff -u ircu2.10/ircd/m_burst.c:1.12.2.4 ircu2.10/ircd/m_burst.c:1.12.2.5
--- ircu2.10/ircd/m_burst.c:1.12.2.4 Thu Oct 10 02:13:25 2002
+++ ircu2.10/ircd/m_burst.c Tue Jan 7 03:15:43 2003
@@ -20,7 +20,7 @@
* along with this program; if not, write to the Free Software
* Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
*
- * $Id: m_burst.c,v 1.12.2.4 2002/10/10 09:13:25 isomer Exp $
+ * $Id: m_burst.c,v 1.12.2.5 2003/01/07 11:15:43 isomer Exp $
*/
/*
@@ -167,6 +167,8 @@
if (parv[param][0] != '+')
continue;
if (strchr(parv[param], 'i') || strchr(parv[param], 'k')) {
+ /* Clear any outstanding rogue invites */
+ mode_invite_clear(chptr);
for (member = chptr->members; member; member = nmember) {
nmember=member->next_member;
if (!MyUser(member->user) || IsZombie(member))
Index: ircu2.10/ircd/m_create.c
diff -u ircu2.10/ircd/m_create.c:1.9.2.3 ircu2.10/ircd/m_create.c:1.9.2.4
--- ircu2.10/ircd/m_create.c:1.9.2.3 Sat Dec 14 17:02:40 2002
+++ ircu2.10/ircd/m_create.c Tue Jan 7 03:15:43 2003
@@ -20,7 +20,7 @@
* along with this program; if not, write to the Free Software
* Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
*
- * $Id: m_create.c,v 1.9.2.3 2002/12/15 01:02:40 isomer Exp $
+ * $Id: m_create.c,v 1.9.2.4 2003/01/07 11:15:43 isomer Exp $
*/
/*
@@ -180,7 +180,7 @@
chptr->creationtime = chanTS;
joinbuf_join(badop ? &join : &create, chptr,
- (badop || CHFL_CHANOP));
+ (badop ? 0 : CHFL_CHANOP));
}
joinbuf_flush(&join); /* flush out the joins and creates */
Index: ircu2.10/ircd/m_gline.c
diff -u ircu2.10/ircd/m_gline.c:1.22.2.2 ircu2.10/ircd/m_gline.c:1.22.2.3
--- ircu2.10/ircd/m_gline.c:1.22.2.2 Wed Aug 28 05:27:29 2002
+++ ircu2.10/ircd/m_gline.c Tue Jan 7 03:15:44 2003
@@ -20,7 +20,7 @@
* along with this program; if not, write to the Free Software
* Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
*
- * $Id: m_gline.c,v 1.22.2.2 2002/08/28 12:27:29 kev Exp $
+ * $Id: m_gline.c,v 1.22.2.3 2003/01/07 11:15:44 isomer Exp $
*/
/*
@@ -146,6 +146,9 @@
reason = parv[5];
} else
return need_more_params(sptr, "GLINE");
+
+ if (IsServer(sptr))
+ flags |= GLINE_FORCE;
if (!(target[0] == '*' && target[1] == '\0')) {
if (!(acptr = FindNServer(target)))
Index: ircu2.10/ircd/m_userhost.c
diff -u ircu2.10/ircd/m_userhost.c:1.9.2.1 ircu2.10/ircd/m_userhost.c:1.9.2.2
--- ircu2.10/ircd/m_userhost.c:1.9.2.1 Wed Apr 3 07:20:57 2002
+++ ircu2.10/ircd/m_userhost.c Tue Jan 7 03:15:44 2003
@@ -20,7 +20,7 @@
* along with this program; if not, write to the Free Software
* Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
*
- * $Id: m_userhost.c,v 1.9.2.1 2002/04/03 15:20:57 kev Exp $
+ * $Id: m_userhost.c,v 1.9.2.2 2003/01/07 11:15:44 isomer Exp $
*/
/*
@@ -97,7 +97,9 @@
msgq_append(0, mb, "%s%s=%c%s@%s", cli_name(cptr),
HasPriv(cptr, PRIV_DISPLAY) ? "*" : "",
cli_user(cptr)->away ? '-' : '+', cli_user(cptr)->username,
- cli_user(cptr)->host);
+ HasHiddenHost(cptr) && !IsAnOper(sptr) ?
+ cli_user(cptr)->host :
+ cli_user(cptr)->realhost);
}
/*
Index: ircu2.10/ircd/m_wallchops.c
diff -u ircu2.10/ircd/m_wallchops.c:1.5.2.1 ircu2.10/ircd/m_wallchops.c:1.5.2.2
--- ircu2.10/ircd/m_wallchops.c:1.5.2.1 Sat Dec 14 17:02:42 2002
+++ ircu2.10/ircd/m_wallchops.c Tue Jan 7 03:15:44 2003
@@ -20,7 +20,7 @@
* along with this program; if not, write to the Free Software
* Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
*
- * $Id: m_wallchops.c,v 1.5.2.1 2002/12/15 01:02:42 isomer Exp $
+ * $Id: m_wallchops.c,v 1.5.2.2 2003/01/07 11:15:44 isomer Exp $
*/
/*
@@ -147,7 +147,7 @@
if (client_can_send_to_channel(sptr, chptr)) {
sendcmdto_channel_butone(sptr, CMD_WALLCHOPS, chptr, cptr,
SKIP_DEAF | SKIP_BURST | SKIP_NONOPS,
- "%H :@ %s", chptr, parv[parc - 1]);
+ "%H :%s", chptr, parv[parc - 1]);
} else
send_reply(sptr, ERR_CANNOTSENDTOCHAN, parv[1]);
}
Index: ircu2.10/ircd/m_wallvoices.c
diff -u ircu2.10/ircd/m_wallvoices.c:1.1.4.1 ircu2.10/ircd/m_wallvoices.c:1.1.4.2
--- ircu2.10/ircd/m_wallvoices.c:1.1.4.1 Sat Dec 14 17:02:42 2002
+++ ircu2.10/ircd/m_wallvoices.c Tue Jan 7 03:15:44 2003
@@ -19,7 +19,7 @@
* along with this program; if not, write to the Free Software
* Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
*
- * $Id: m_wallvoices.c,v 1.1.4.1 2002/12/15 01:02:42 isomer Exp $
+ * $Id: m_wallvoices.c,v 1.1.4.2 2003/01/07 11:15:44 isomer Exp $
*/
/*
@@ -146,7 +146,7 @@
if (client_can_send_to_channel(sptr, chptr)) {
sendcmdto_channel_butone(sptr, CMD_WALLVOICES, chptr, cptr,
SKIP_DEAF | SKIP_BURST | SKIP_NONVOICES,
- "%H :+ %s", chptr, parv[parc - 1]);
+ "%H :%s", chptr, parv[parc - 1]);
} else
send_reply(sptr, ERR_CANNOTSENDTOCHAN, parv[1]);
}
Index: ircu2.10/ircd/m_whois.c
diff -u ircu2.10/ircd/m_whois.c:1.19.2.9 ircu2.10/ircd/m_whois.c:1.19.2.10
--- ircu2.10/ircd/m_whois.c:1.19.2.9 Sat Dec 14 17:02:42 2002
+++ ircu2.10/ircd/m_whois.c Tue Jan 7 03:15:44 2003
@@ -20,7 +20,7 @@
* along with this program; if not, write to the Free Software
* Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
*
- * $Id: m_whois.c,v 1.19.2.9 2002/12/15 01:02:42 isomer Exp $
+ * $Id: m_whois.c,v 1.19.2.10 2003/01/07 11:15:44 isomer Exp $
*/
/*
@@ -166,12 +166,17 @@
}
if (IsDeaf(acptr))
*(buf + len++) = '-';
- if (is_chan_op(acptr, chptr))
- *(buf + len++) = '@';
- else if (has_voice(acptr, chptr))
- *(buf + len++) = '+';
- else if (IsZombie(chan))
+ if (IsZombie(chan))
+ {
*(buf + len++) = '!';
+ }
+ else
+ {
+ if (IsChanOp(chan))
+ *(buf + len++) = '@';
+ else if (HasVoice(chan))
+ *(buf + len++) = '+';
+ }
if (len)
*(buf + len) = '\0';
strcpy(buf + len, chptr->chname);
Index: ircu2.10/ircd/s_err.c
diff -u ircu2.10/ircd/s_err.c:1.30.2.7 ircu2.10/ircd/s_err.c:1.30.2.8
--- ircu2.10/ircd/s_err.c:1.30.2.7 Thu Oct 10 02:13:25 2002
+++ ircu2.10/ircd/s_err.c Tue Jan 7 03:15:44 2003
@@ -16,7 +16,7 @@
* along with this program; if not, write to the Free Software
* Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
*
- * $Id: s_err.c,v 1.30.2.7 2002/10/10 09:13:25 isomer Exp $
+ * $Id: s_err.c,v 1.30.2.8 2003/01/07 11:15:44 isomer Exp $
*/
#include "config.h"
@@ -824,7 +824,7 @@
/* 395 */
{ 0 },
/* 396 */
- { 0 },
+ { RPL_HOSTHIDDEN, "%s.%s :is now your hidden host", "396" },
/* 397 */
{ 0 },
/* 398 */
Index: ircu2.10/ircd/s_stats.c
diff -u ircu2.10/ircd/s_stats.c:1.16.2.7 ircu2.10/ircd/s_stats.c:1.16.2.8
--- ircu2.10/ircd/s_stats.c:1.16.2.7 Sat Dec 14 17:02:44 2002
+++ ircu2.10/ircd/s_stats.c Tue Jan 7 03:15:44 2003
@@ -19,7 +19,7 @@
* along with this program; if not, write to the Free Software
* Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
*
- * $Id: s_stats.c,v 1.16.2.7 2002/12/15 01:02:44 isomer Exp $
+ * $Id: s_stats.c,v 1.16.2.8 2003/01/07 11:15:44 isomer Exp $
*/
#include "config.h"
@@ -477,7 +477,7 @@
int i;
/* Make darn sure the statsmap array is initialized to all zeros */
- for (i = 1; i < 256; i++)
+ for (i = 0; i < 256; i++)
statsmap[i] = 0;
/* Build the mapping */
Index: ircu2.10/ircd/s_user.c
diff -u ircu2.10/ircd/s_user.c:1.52.2.14 ircu2.10/ircd/s_user.c:1.52.2.15
--- ircu2.10/ircd/s_user.c:1.52.2.14 Sat Dec 14 17:02:44 2002
+++ ircu2.10/ircd/s_user.c Tue Jan 7 03:15:44 2003
@@ -20,7 +20,7 @@
* along with this program; if not, write to the Free Software
* Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
*
- * $Id: s_user.c,v 1.52.2.14 2002/12/15 01:02:44 isomer Exp $
+ * $Id: s_user.c,v 1.52.2.15 2003/01/07 11:15:44 isomer Exp $
*/
#include "config.h"
@@ -1058,6 +1058,11 @@
ircd_snprintf(0, cli_user(cptr)->host, HOSTLEN, "%s.%s",
cli_user(cptr)->account, feature_str(FEAT_HIDDEN_HOST));
SetFlag(cptr, flag);
+
+ /* ok, the client is now fully hidden, so let them know -- hikari */
+ if (MyConnect(cptr))
+ send_reply(cptr, RPL_HOSTHIDDEN, cli_user(cptr)->account,
+ feature_str(FEAT_HIDDEN_HOST));
/*
* Go through all channels the client was on, rejoin him
Index: ircu2.10/ircd/table_gen.c
diff -u ircu2.10/ircd/table_gen.c:1.4 ircu2.10/ircd/table_gen.c:1.4.2.1
--- ircu2.10/ircd/table_gen.c:1.4 Thu Jun 14 11:23:24 2001
+++ ircu2.10/ircd/table_gen.c Tue Jan 7 03:15:44 2003
@@ -120,7 +120,7 @@
markRange(NTL_IRCUI, '\xd8', '\xde');
markString(NTL_IRCUI, ".-_^'`~");
markString(NTL_EOL, "\n\r");
- markString(NTL_CHPFX, "#&+");
+ markString(NTL_CHPFX, "#&");
markString(NTL_KTIME, " ,-0123456789");
/* And finally let's take care of the toLower/toUpper stuff */
Index: ircu2.10/ircd/whocmds.c
diff -u ircu2.10/ircd/whocmds.c:1.12.2.7 ircu2.10/ircd/whocmds.c:1.12.2.8
--- ircu2.10/ircd/whocmds.c:1.12.2.7 Thu Oct 10 02:13:26 2002
+++ ircu2.10/ircd/whocmds.c Tue Jan 7 03:15:44 2003
@@ -20,7 +20,7 @@
* along with this program; if not, write to the Free Software
* Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
*
- * $Id: whocmds.c,v 1.12.2.7 2002/10/10 09:13:26 isomer Exp $
+ * $Id: whocmds.c,v 1.12.2.8 2003/01/07 11:15:44 isomer Exp $
*/
#include "config.h"
@@ -212,7 +212,10 @@
if (fields & WHO_FIELD_IDL)
{
*p1++ = ' ';
- if (MyUser(acptr)) {
+ if (MyUser(acptr) &&
+ (IsAnOper(sptr)
+ || !feature_bool(FEAT_HIS_WHO_SERVERNAME)
+ || acptr == sptr)) {
p1 += ircd_snprintf(0, p1, 11, "%d",
CurrentTime - cli_user(acptr)->last);
}
----------------------- End of diff -----------------------