ircu2.10.12-pk.git
23 years agoAuthor: Kev <klmitch@mit.edu>
Kevin L. Mitchell [Mon, 7 May 2001 21:21:18 +0000 (21:21 +0000)]
Author: Kev <klmitch@mit.edu>
Log message:

This is an entirely new build system for ircd.  The basics have been tested
but tuning will probably be necessary.  Unfortunately, documentation has
not yet been updated.  Please note the change to the way chroot will be
handled--the environment, including uid/gid, must be set up by an external
program, and you must give ./configure the --with-chroot=<dir> option.

Read ./configure --help for more information.

git-svn-id: file:///home/klmitch/undernet-ircu/undernet-ircu-svn/ircu2/trunk@444 c9e4aea6-c8fd-4c43-8297-357d70d61c8c

23 years agoAuthor: Kev <klmitch@mit.edu>
Kevin L. Mitchell [Wed, 2 May 2001 02:37:33 +0000 (02:37 +0000)]
Author: Kev <klmitch@mit.edu>
Log message:

Shave one more yak: remove the last vestiges of TIME_T_FMT and friends.
This has not yet been compile-tested...

git-svn-id: file:///home/klmitch/undernet-ircu/undernet-ircu-svn/ircu2/trunk@443 c9e4aea6-c8fd-4c43-8297-357d70d61c8c

23 years agoAuthor: Isomer <isomer@coders.net>
Perry Lorier [Tue, 1 May 2001 11:38:34 +0000 (11:38 +0000)]
Author: Isomer <isomer@coders.net>
Log message:

doc/iauth.txt - Hybrid's iauth protocol.  I intend to try and be compatible
with this at least with only minor extentions that we require (and then try
and get those extensions merged back into the Hybrid tree).  IRCnet has an
iauth protocol but theres is A) wasteful of FD's  B) they haven't been
cooperative in the past in sync'ing up between daemons.

doc/linux-poll.patch - Patch required to stop linux 2.2 deadlocking when under
lots of strain (thousands of clients)

{ircd,include}/iauth.{c,h} - Starts of an iauth implementation.  I have to
sleep now, so I'll try and finish it later.

git-svn-id: file:///home/klmitch/undernet-ircu/undernet-ircu-svn/ircu2/trunk@442 c9e4aea6-c8fd-4c43-8297-357d70d61c8c

23 years agoAuthor: Isomer <isomer@coders.net>
Perry Lorier [Tue, 1 May 2001 09:49:42 +0000 (09:49 +0000)]
Author: Isomer <isomer@coders.net>
Log message:

A few cleanups, let anyone /msg +k users without target limiting (are users
really going to spam X and euworld?  and if so, do they CARE?) this is so
if users are being flooded they can still /msg X to ban users, and if they
run out of targets on login they can still use X etc.  Oh, and made chkconf
compile so we can make install again.  Who knows if it actually *works*.

git-svn-id: file:///home/klmitch/undernet-ircu/undernet-ircu-svn/ircu2/trunk@441 c9e4aea6-c8fd-4c43-8297-357d70d61c8c

23 years agoAuthor: Kev <klmitch@mit.edu>
Kevin L. Mitchell [Tue, 24 Apr 2001 01:17:14 +0000 (01:17 +0000)]
Author: Kev <klmitch@mit.edu>
Log message:

I noticed that the netsplit server notice used comment1 instead of refering
to the servers directly, with the anticipated--and confusing--results.  Now
fixed.

(pull-up from u2.10.10.pl14)

git-svn-id: file:///home/klmitch/undernet-ircu/undernet-ircu-svn/ircu2/trunk@438 c9e4aea6-c8fd-4c43-8297-357d70d61c8c

23 years agoAuthor: Kev <klmitch@mit.edu>
Kevin L. Mitchell [Mon, 23 Apr 2001 20:28:50 +0000 (20:28 +0000)]
Author: Kev <klmitch@mit.edu>
Log message:

forward-ports could become a full-time job if we're not careful...

git-svn-id: file:///home/klmitch/undernet-ircu/undernet-ircu-svn/ircu2/trunk@437 c9e4aea6-c8fd-4c43-8297-357d70d61c8c

23 years agoAuthor: Kev <klmitch@mit.edu>
Kevin L. Mitchell [Mon, 23 Apr 2001 19:19:36 +0000 (19:19 +0000)]
Author: Kev <klmitch@mit.edu>
Log message:

duh ^ 2

git-svn-id: file:///home/klmitch/undernet-ircu/undernet-ircu-svn/ircu2/trunk@436 c9e4aea6-c8fd-4c43-8297-357d70d61c8c

23 years agoAuthor: Kev <klmitch@mit.edu>
Kevin L. Mitchell [Mon, 23 Apr 2001 19:09:05 +0000 (19:09 +0000)]
Author: Kev <klmitch@mit.edu>
Log message:

duh

git-svn-id: file:///home/klmitch/undernet-ircu/undernet-ircu-svn/ircu2/trunk@435 c9e4aea6-c8fd-4c43-8297-357d70d61c8c

23 years agoAuthor: Kev <klmitch@mit.edu>
Kevin L. Mitchell [Mon, 23 Apr 2001 18:42:02 +0000 (18:42 +0000)]
Author: Kev <klmitch@mit.edu>
Log message:

Pull up the m_whois fix to allow local opers to see server indications,
also.  The missing oper and idle time indications were fixed during the
original forward port, but I forgot about the bug in the first place, and
did not manage to fix it in u2.10.10.pl14

git-svn-id: file:///home/klmitch/undernet-ircu/undernet-ircu-svn/ircu2/trunk@432 c9e4aea6-c8fd-4c43-8297-357d70d61c8c

23 years agoAuthor: Kev <klmitch@mit.edu>
Kevin L. Mitchell [Sat, 21 Apr 2001 21:49:14 +0000 (21:49 +0000)]
Author: Kev <klmitch@mit.edu>
Log message:

Some small, misc. changes, along with the first step in redesigning the
configuration system.  runmalloc.[ch] finally retired, msgq_integrity()
retired, and C++-style // comments replaced with C-style /* */ comments,
since, unfortunately, all the world's not gcc.  Almost all .c files contain
an include for config.h first thing, now, and all of the includes in .h
files for config.h have been removed, since they are now redundant.

As I say, this is only the first step toward redesigning the configuration
system; make config shouldn't be necessary anymore since most of the
plethora of compile-time options have been made run-time configurable.
This change includes those changes that must be made to the .c files, and
there shouldn't be any other change that will affect them, except possibly
some macro changes in configure.in.  The end goal is to get rid of the
config subdirectory completely, and arrange things so that the remaining
compile-time options--things like DEBUGMODE and CONFIG_NDEBUG--can be
given on the ./configure command line.  Changes will also include a way to
cache those results.

Testing: Server has been compiled and run with no obvious ill effects as a
result of the changes.

git-svn-id: file:///home/klmitch/undernet-ircu/undernet-ircu-svn/ircu2/trunk@429 c9e4aea6-c8fd-4c43-8297-357d70d61c8c

23 years agoAuthor: Kev <klmitch@mit.edu>
Kevin L. Mitchell [Fri, 20 Apr 2001 20:56:56 +0000 (20:56 +0000)]
Author: Kev <klmitch@mit.edu>
Log message:

Hide server name for /who, too; allow users to see their own server name
in /whois.  Changes still untested...

git-svn-id: file:///home/klmitch/undernet-ircu/undernet-ircu-svn/ircu2/trunk@427 c9e4aea6-c8fd-4c43-8297-357d70d61c8c

23 years agoAuthor: Kev <klmitch@mit.edu>
Kevin L. Mitchell [Wed, 18 Apr 2001 20:48:19 +0000 (20:48 +0000)]
Author: Kev <klmitch@mit.edu>
Log message:

Ok, ok, I'll run make depend too...

git-svn-id: file:///home/klmitch/undernet-ircu/undernet-ircu-svn/ircu2/trunk@422 c9e4aea6-c8fd-4c43-8297-357d70d61c8c

23 years agoAuthor: Kev <klmitch@mit.edu>
Kevin L. Mitchell [Wed, 18 Apr 2001 20:38:06 +0000 (20:38 +0000)]
Author: Kev <klmitch@mit.edu>
Log message:

Save the $R for realname K-lines

git-svn-id: file:///home/klmitch/undernet-ircu/undernet-ircu-svn/ircu2/trunk@421 c9e4aea6-c8fd-4c43-8297-357d70d61c8c

23 years agoAuthor: Kev <klmitch@mit.edu>
Kevin L. Mitchell [Wed, 18 Apr 2001 20:25:58 +0000 (20:25 +0000)]
Author: Kev <klmitch@mit.edu>
Log message:

Pull-up of various features that have been added to the ircu2.10.10,
including such things as the advisory lock-based multiple execution
exclusion, K-lines by realname, and the HEAD_IN_SAND stuff.

Testing: The K-lines by real name are untested, and all of the K-line
infrastructure will need testing, owing to extensive changes to how they
work.

git-svn-id: file:///home/klmitch/undernet-ircu/undernet-ircu-svn/ircu2/trunk@419 c9e4aea6-c8fd-4c43-8297-357d70d61c8c

23 years agoAuthor: Kev <klmitch@mit.edu>
Kevin L. Mitchell [Mon, 16 Apr 2001 20:41:33 +0000 (20:41 +0000)]
Author: Kev <klmitch@mit.edu>
Log message:

Based on discussion with Bleep, and the change in /wallops implementation
that has taken place on u2.10.10.pl14, sendcmdto_flag_butone() has been
recast to broadcast them to all servers, regardless of what sorts of users
those servers have on/behind them.  This reduces CPU wasted on /wallops to
the minimum practical, with only a small increase in protocol overhead--in
my opinion, that overhead is not enough to worry about.

git-svn-id: file:///home/klmitch/undernet-ircu/undernet-ircu-svn/ircu2/trunk@415 c9e4aea6-c8fd-4c43-8297-357d70d61c8c

23 years agoAuthor: Kev <klmitch@mit.edu>
Kevin L. Mitchell [Mon, 16 Apr 2001 19:45:08 +0000 (19:45 +0000)]
Author: Kev <klmitch@mit.edu>
Log message:

Implementation of WALLUSERS and the various oper restrictions.  These are
currently not switchable, but it would be trivial to make them switchable
through the features subsystem; future enhancements may do just that.

git-svn-id: file:///home/klmitch/undernet-ircu/undernet-ircu-svn/ircu2/trunk@412 c9e4aea6-c8fd-4c43-8297-357d70d61c8c

23 years agoAuthor: Isomer <isomer@coders.net>
Perry Lorier [Sun, 15 Apr 2001 06:58:57 +0000 (06:58 +0000)]
Author: Isomer <isomer@coders.net>
Log message:

Lots of little changes I've been sitting on, mostly minor cleanups to m_*.c

git-svn-id: file:///home/klmitch/undernet-ircu/undernet-ircu-svn/ircu2/trunk@404 c9e4aea6-c8fd-4c43-8297-357d70d61c8c

23 years agoAuthor: Patrick Desbiens <delete@dovation.net>
Perry Lorier [Sat, 31 Mar 2001 00:04:57 +0000 (00:04 +0000)]
Author:  Patrick Desbiens <delete@dovation.net>
Log message:

French translation of Install

git-svn-id: file:///home/klmitch/undernet-ircu/undernet-ircu-svn/ircu2/trunk@390 c9e4aea6-c8fd-4c43-8297-357d70d61c8c

23 years agoAuthor: Ghostwolf <foxxe@wtfs.net>
Joseph Bongaarts [Wed, 14 Mar 2001 05:53:30 +0000 (05:53 +0000)]
Author: Ghostwolf <foxxe@wtfs.net>
Log message: Tweaked the openbsd hack so IOV_MAX would still get defined in limits.h

git-svn-id: file:///home/klmitch/undernet-ircu/undernet-ircu-svn/ircu2/trunk@386 c9e4aea6-c8fd-4c43-8297-357d70d61c8c

23 years agoAuthor:Ghostwolf <foxxe@wtfs.net>
Joseph Bongaarts [Thu, 8 Mar 2001 22:20:31 +0000 (22:20 +0000)]
Author:Ghostwolf <foxxe@wtfs.net>
Log message:
Makes ircu compile under OpenBSD

git-svn-id: file:///home/klmitch/undernet-ircu/undernet-ircu-svn/ircu2/trunk@385 c9e4aea6-c8fd-4c43-8297-357d70d61c8c

23 years agoAuthor: Kev <klmitch@mit.edu>
Kevin L. Mitchell [Mon, 12 Feb 2001 18:47:45 +0000 (18:47 +0000)]
Author: Kev <klmitch@mit.edu>
Log message:

Fix G-line bugs reguarding U-lined servers that Maniac- pointed out; fix a
bug in /list

1) If a new server signed on and a U-lined server re-issued a G-line,
   intermediate servers would not pass on that message.  Logic has been
   added to detect that it's a re-issued G-line, and the existing G-line is
   repropagated.  Note that the expire time used is the time we think the
   G-line has left, not what the U-lined server tells us.
2) If a U-lined server attempted to revoke a G-line, and we didn't have
   that G-line, not only would we ignore the message, we would fail to
   propagate it and return a "not enough parameters" reply.  Corrected by
   manually repropagating the G-line removal.
3) If a U-lined server attempted to add (or update, or re-issue) a G-line
   we knew about, that G-line's lastmod time would be updated, causing us
   to no longer consider the G-line as having been issued by a U-lined
   server.  This causes promotions we don't want occuring.  Corrected by
   prohibiting lastmod updates when the existing lastmod is 0.
4) The /list command would not deal properly with "LIST #channel", but
   would do the right thing if we did "LIST #channel <anything else>".
   This was just a logic inversion problem--I said "parc != 2" when I meant
   "parc == 2".

Testing:

The /list command now works correctly.  G-lines issued by U-lined servers
are doing the right thing.  I have not checked that G-lines issued by opers
are still working correctly, so this needs to be checked.  Also, all forms
of local G-line need to be double-checked.

git-svn-id: file:///home/klmitch/undernet-ircu/undernet-ircu-svn/ircu2/trunk@384 c9e4aea6-c8fd-4c43-8297-357d70d61c8c

23 years agoAuthor: Bleep <twhelvey1@home.com>
Bleep [Thu, 8 Feb 2001 04:20:08 +0000 (04:20 +0000)]
Author:      Bleep <twhelvey1@home.com>
Log message: Fix for protocol violation spam bug. See the ChangeLog for
rant. :)

git-svn-id: file:///home/klmitch/undernet-ircu/undernet-ircu-svn/ircu2/trunk@383 c9e4aea6-c8fd-4c43-8297-357d70d61c8c

23 years agoAuthor: Kev <klmitch@mit.edu>
Kevin L. Mitchell [Mon, 29 Jan 2001 17:46:31 +0000 (17:46 +0000)]
Author: Kev <klmitch@mit.edu>
Log message:

Fixes for 3 bugs:

1) /mode <nick> -o wasn't propagated; the privileges were being set before
   send_umode_out() could get at them, so the PRIV_PROPAGATE setting went
   away.

2) /mode #channel +b banmask, under certain circumstances, would allow
   multiple bans of the exact same mask to be added to the channel.

3) /mode #channel +b banmask would leak memory if another ban of the exact
   same mask was already present on the channel (and bug #2 wasn't
   triggered).

Testing:

Compiled and ran; unable to duplicate the errors, now.

git-svn-id: file:///home/klmitch/undernet-ircu/undernet-ircu-svn/ircu2/trunk@382 c9e4aea6-c8fd-4c43-8297-357d70d61c8c

23 years agoAuthor: Kev <klmitch@mit.edu>
Kevin L. Mitchell [Wed, 24 Jan 2001 17:32:39 +0000 (17:32 +0000)]
Author: Kev <klmitch@mit.edu>
Log message:

Fix buffer overflow problem; tune lengths fed into ircd_vsnprintf() to take
into account the fact that ircd_vsnprintf() already takes \0 into account.

Testing:

The old hack code to test for this buffer overflow is still in place,
intentionally, to catch any other problems that may crop up.  Otherwise,
this code has been compiled and tested and produces the correct results--
never knew I could write a simple client that rapidly ;)

git-svn-id: file:///home/klmitch/undernet-ircu/undernet-ircu-svn/ircu2/trunk@381 c9e4aea6-c8fd-4c43-8297-357d70d61c8c

23 years agoAuthor: Kev <klmitch@mit.edu>
Kevin L. Mitchell [Mon, 22 Jan 2001 16:24:53 +0000 (16:24 +0000)]
Author: Kev <klmitch@mit.edu>
Log message:

Remove msgq_map(), since we're using only msgq_mapiov().  Tweak some buffer
length calculations to prevent off-by-one errors.  Unfortunately, these
possible off-by-one errors cannot possibly cause the problems we're seeing,
so add some extra asserts and an incredibly ugly hack to detect the
problem's signature--a pointer transmuted to 0x8000a0d, corresponding to
\r\n\0 (+ first byte of pointer) as stored in memory.

Testing:

The changes compile and run--but we *want* this patch to dump core!  Make
absolutely sure you compile with -g.  Hopefully this'll catch the culprit,
or at least bring us one step closer to finding the problem.

git-svn-id: file:///home/klmitch/undernet-ircu/undernet-ircu-svn/ircu2/trunk@380 c9e4aea6-c8fd-4c43-8297-357d70d61c8c

23 years agoAuthor: Kev <klmitch@mit.edu>
Kevin L. Mitchell [Thu, 18 Jan 2001 16:08:03 +0000 (16:08 +0000)]
Author: Kev <klmitch@mit.edu>
Log message:

Set client privs when a user is introduced by a remote server.

Testing:

Compiled and tested--remote opers have all expected privileges,
including PRIV_PROPAGATE...so they'll be propagated to their
uplinks!

git-svn-id: file:///home/klmitch/undernet-ircu/undernet-ircu-svn/ircu2/trunk@379 c9e4aea6-c8fd-4c43-8297-357d70d61c8c

23 years agoAuthor: Kev <klmitch@mit.edu>
Kevin L. Mitchell [Wed, 17 Jan 2001 17:50:25 +0000 (17:50 +0000)]
Author: Kev <klmitch@mit.edu>
Log message:

So BSDI 4.1 doesn't use poll(); interesting...

git-svn-id: file:///home/klmitch/undernet-ircu/undernet-ircu-svn/ircu2/trunk@378 c9e4aea6-c8fd-4c43-8297-357d70d61c8c

23 years agoAuthor: Kev <klmitch@mit.edu>
Kevin L. Mitchell [Wed, 17 Jan 2001 15:47:48 +0000 (15:47 +0000)]
Author: Kev <klmitch@mit.edu>
Log message:

Separate whowas_clean() from MyFree() call; default LOCOP_KILL to on.

Testing:

These changes are "clearly" correct, and so I have not even compile-checked
them; sorry.

git-svn-id: file:///home/klmitch/undernet-ircu/undernet-ircu-svn/ircu2/trunk@377 c9e4aea6-c8fd-4c43-8297-357d70d61c8c

23 years agoAuthor: Kev <klmitch@mit.edu>
Kevin L. Mitchell [Mon, 15 Jan 2001 15:49:43 +0000 (15:49 +0000)]
Author: Kev <klmitch@mit.edu>
Log message:

Maniac- reported that opers weren't being properly displayed by whois; this
was tracked down to bugs in the privilege setting routine.  Bug 1) feattab
had some privileges bit-wise OR'd together, which stopped working when the
privileges became small integers specifying a bit position, rather than the
bits themselves; corrected by splitting up all the OR'd lines.  Bug 2)
antiprivs was not being applied to privs; this turned out to be an off-by-
one error in the loop; corrected by using <= instead of just <

Testing:

Tested for the behavior Maniac- reported; this has been corrected.  Privs
are now being set correctly as well.

git-svn-id: file:///home/klmitch/undernet-ircu/undernet-ircu-svn/ircu2/trunk@375 c9e4aea6-c8fd-4c43-8297-357d70d61c8c

23 years agoAuthor: Kev <klmitch@mit.edu>
Kevin L. Mitchell [Sun, 7 Jan 2001 04:11:22 +0000 (04:11 +0000)]
Author: Kev <klmitch@mit.edu>
Log message:

These don't belong in this branch (yet)...

git-svn-id: file:///home/klmitch/undernet-ircu/undernet-ircu-svn/ircu2/trunk@364 c9e4aea6-c8fd-4c43-8297-357d70d61c8c

23 years agoAuthor: Kev <klmitch@mit.edu>
Kevin L. Mitchell [Sun, 7 Jan 2001 04:00:27 +0000 (04:00 +0000)]
Author: Kev <klmitch@mit.edu>
Log message:

Beginning to rough in how the event model will work...

git-svn-id: file:///home/klmitch/undernet-ircu/undernet-ircu-svn/ircu2/trunk@363 c9e4aea6-c8fd-4c43-8297-357d70d61c8c

23 years agoAuthor: Kev <klmitch@mit.edu>
Kevin L. Mitchell [Wed, 3 Jan 2001 20:05:58 +0000 (20:05 +0000)]
Author: Kev <klmitch@mit.edu>
Log message:

Fixed a minor bug in the privilege setup function; featurized
NICKNAMEHISTORYLENGTH--by rewriting much of whowas.c.

Testing:

I've tested the new feature and made sure that whowas does what's expected,
and it seems to.  Brute-force it to make sure, but we should be fine...

git-svn-id: file:///home/klmitch/undernet-ircu/undernet-ircu-svn/ircu2/trunk@355 c9e4aea6-c8fd-4c43-8297-357d70d61c8c

23 years agoAuthor: Kev <klmitch@mit.edu>
Kevin L. Mitchell [Wed, 3 Jan 2001 03:03:04 +0000 (03:03 +0000)]
Author: Kev <klmitch@mit.edu>
Log message:

Add notify functionality to features interface; featurize
DEFAULT_LIST_PARAM, rewriting much of m_list in the process.

Testing:

It compiles and runs and appears to function properly; please brute-force.

git-svn-id: file:///home/klmitch/undernet-ircu/undernet-ircu-svn/ircu2/trunk@354 c9e4aea6-c8fd-4c43-8297-357d70d61c8c

23 years agoAuthor: Kev <klmitch@mit.edu>
Kevin L. Mitchell [Tue, 2 Jan 2001 21:47:31 +0000 (21:47 +0000)]
Author: Kev <klmitch@mit.edu>
Log message:

Some efficiency enhancements in m_motd.c; a new way to set the PRNG's seed
and some randomness enhancements (feedback); featurization of many compile-
time options; a new feature flag to inhibit all display of something, like,
say, the random seed.

Testing:

Compiles, no warnings; runs without apparent problems.  Please brute-force
it to see if any of the features can be broken.

git-svn-id: file:///home/klmitch/undernet-ircu/undernet-ircu-svn/ircu2/trunk@353 c9e4aea6-c8fd-4c43-8297-357d70d61c8c

23 years agoAuthor: Isomer <isomer@coders.net>
Perry Lorier [Tue, 2 Jan 2001 08:26:51 +0000 (08:26 +0000)]
Author: Isomer <isomer@coders.net>
Log message:

* Don't core if no motd present.  Thanks to Amarande for that one.

git-svn-id: file:///home/klmitch/undernet-ircu/undernet-ircu-svn/ircu2/trunk@352 c9e4aea6-c8fd-4c43-8297-357d70d61c8c

23 years agoAuthor: Isomer <isomer@coders.net>
Perry Lorier [Tue, 2 Jan 2001 01:53:34 +0000 (01:53 +0000)]
Author: Isomer <isomer@coders.net>
Log message:

* Added HekTik's fix to guppy's /msg's go to -n+m channels.

* Protocol violation stuff

* Protocol negotiation stuffs

* added another param to 004 for modes that have parameters.

* Ripped out more P09 crap.

* Probably buggered the entire thing up.

git-svn-id: file:///home/klmitch/undernet-ircu/undernet-ircu-svn/ircu2/trunk@351 c9e4aea6-c8fd-4c43-8297-357d70d61c8c

23 years agoAuthor: Kev <klmitch@mit.edu>
Kevin L. Mitchell [Tue, 19 Dec 2000 21:37:58 +0000 (21:37 +0000)]
Author: Kev <klmitch@mit.edu>
Log message:

Removed last vestiges of GODMODE; made a whole bunch of formerly compile-
time options into run-time options through the features subsystem; bashed
a couple of bugs in ircd_log.c and m_ison.c; added a new "read-only" flag
to ircd_features.c.

Testing:

Compiles and runs; m_ison.c compiles.  Again, needs extensive testing; turn
the features on and off and see what happens.

NOTICE NOTICE NOTICE NOTICE NOTICE NOTICE NOTICE NOTICE NOTICE NOTICE

Make sure you add "F:HUB:TRUE" to your ircd.conf if you normally turn HUB
on.  I may make HUB go away completely in the future, but not until
m_server gets rewritten from scratch.

git-svn-id: file:///home/klmitch/undernet-ircu/undernet-ircu-svn/ircu2/trunk@350 c9e4aea6-c8fd-4c43-8297-357d70d61c8c

23 years agoAuthor: Kev <klmitch@mit.edu>
Kevin L. Mitchell [Mon, 18 Dec 2000 21:24:00 +0000 (21:24 +0000)]
Author: Kev <klmitch@mit.edu>
Log message:

Rearranged a couple of features to try to make things a little neater;
rearranged some code to make it more streamlined.

I also created a subdirectory with API documentation; this is for
documentation of special little subsystems, such as the features subsystem
or the logging system, or even something like modebuf's and MsgQ's.  Please
read doc/api/api.txt and tell me what you think...

Testing:

The features changes compile and link, but I have not performed run-time
tests.  The documentation that I have written should be mostly complete,
but let me know if you want more information...

git-svn-id: file:///home/klmitch/undernet-ircu/undernet-ircu-svn/ircu2/trunk@349 c9e4aea6-c8fd-4c43-8297-357d70d61c8c

23 years ago* ircd/os_bsd.c: Added os_set_tos for BSD users.
Greg Sikorski [Sat, 16 Dec 2000 20:23:55 +0000 (20:23 +0000)]
* ircd/os_bsd.c: Added os_set_tos for BSD users.

Author: Greg Sikorski <gte@atomicrevs.demon.co.uk>
Log message:

git-svn-id: file:///home/klmitch/undernet-ircu/undernet-ircu-svn/ircu2/trunk@348 c9e4aea6-c8fd-4c43-8297-357d70d61c8c

23 years agoAuthor: Kev <klmitch@mit.edu>
Kevin L. Mitchell [Sat, 16 Dec 2000 18:56:20 +0000 (18:56 +0000)]
Author: Kev <klmitch@mit.edu>
Log message:

Several things: First, fixed a bug in do_whois.  Then defined some new
features so I can turn off OPER_SET.  Afterwards, make boolean options also
accept "ON" and "OFF".  Finally, defined a new command to report an
operator's privileges.  Also fixed Isomer's change to use the F_I macro
properly (after adding flags to the macros...).

Testing:

Compiled and run and everything seems to be OK.  Again, brute-force it and
make sure opers have the privileges they're supposed to have.  Also note
that feature settings only apply to opers that just oper'd up; if you oper
up, then change a feature setting, it won't affect your privileges.

git-svn-id: file:///home/klmitch/undernet-ircu/undernet-ircu-svn/ircu2/trunk@347 c9e4aea6-c8fd-4c43-8297-357d70d61c8c

23 years agoAuthor: Isomer <isomer@coders.net>
Perry Lorier [Sat, 16 Dec 2000 12:56:07 +0000 (12:56 +0000)]
Author: Isomer <isomer@coders.net>
Log message:

Added TOS twiddling to Kev's "feature" subsystem.  It compiles, who knows
if it will run...

git-svn-id: file:///home/klmitch/undernet-ircu/undernet-ircu-svn/ircu2/trunk@346 c9e4aea6-c8fd-4c43-8297-357d70d61c8c

23 years agoAuthor: Isomer <isomer@coders.net>
Perry Lorier [Sat, 16 Dec 2000 12:38:09 +0000 (12:38 +0000)]
Author: Isomer <isomer@coders.net>
Log message:

Beginning of support for setting the Type Of Service bits - by default
ircu traffic is now set to 'low delay' (no lag! no lag!) which may help.
Network admins can then adjust their network to let traffic with various
ToS's do various things.  If I could figure out how Kev's "feature" subsystem
worked then I'd make it configurable via that.

git-svn-id: file:///home/klmitch/undernet-ircu/undernet-ircu-svn/ircu2/trunk@345 c9e4aea6-c8fd-4c43-8297-357d70d61c8c

23 years agoAuthor: Kev <klmitch@mit.edu>
Kevin L. Mitchell [Sat, 16 Dec 2000 08:20:48 +0000 (08:20 +0000)]
Author: Kev <klmitch@mit.edu>
Log message:

Implement an ACL for IRC operators; set ACL out of information provided by
the .conf through the feature system.

Testing:

It's been tested on one server all by its lonesome, and seems to work fine;
it needs to be rigorously tested on a network with other users, and by both
local and global operators, with various fiddling of the /set's.  This big
a change to the privileges structure can lead to interesting anomolies.
Unfortunately, documentation is sparse; I'll look into correcting that when
I can, but don't hold your breath.

git-svn-id: file:///home/klmitch/undernet-ircu/undernet-ircu-svn/ircu2/trunk@344 c9e4aea6-c8fd-4c43-8297-357d70d61c8c

23 years agoAuthor: Isomer <isomer@coders.net>
Perry Lorier [Sat, 16 Dec 2000 07:00:33 +0000 (07:00 +0000)]
Author: Isomer <isomer@coders.net>
Log message:

Don't core if no prefix is sent over a s<->s link.

Testing required:

Does it still link to other servers? :)

git-svn-id: file:///home/klmitch/undernet-ircu/undernet-ircu-svn/ircu2/trunk@343 c9e4aea6-c8fd-4c43-8297-357d70d61c8c

23 years agoAuthor: Kev <klmitch@mit.edu>
Kevin L. Mitchell [Sat, 16 Dec 2000 02:28:11 +0000 (02:28 +0000)]
Author: Kev <klmitch@mit.edu>
Log message:

Fixed some bugs in debug logging code...

git-svn-id: file:///home/klmitch/undernet-ircu/undernet-ircu-svn/ircu2/trunk@342 c9e4aea6-c8fd-4c43-8297-357d70d61c8c

23 years agoAuthor: Kev <klmitch@mit.edu>
Kevin L. Mitchell [Fri, 15 Dec 2000 20:29:16 +0000 (20:29 +0000)]
Author: Kev <klmitch@mit.edu>
Log message:

Finish the design of the features subsystem and fix some logging bogosity.
Last thing to do with features: Make compile-time constants go away.

Testing:

Brute-force the logging stuff.  This change destabilizes that stuff a bit.

git-svn-id: file:///home/klmitch/undernet-ircu/undernet-ircu-svn/ircu2/trunk@341 c9e4aea6-c8fd-4c43-8297-357d70d61c8c

23 years agoAuthor: Kev <klmitch@mit.edu>
Kevin L. Mitchell [Fri, 15 Dec 2000 20:16:07 +0000 (20:16 +0000)]
Author: Kev <klmitch@mit.edu>
Log message:

Fixed a bug that would crash the server anytime flush_connections() was
called with a 0 argument--boy do I feel dumb.

git-svn-id: file:///home/klmitch/undernet-ircu/undernet-ircu-svn/ircu2/trunk@340 c9e4aea6-c8fd-4c43-8297-357d70d61c8c

23 years agoAuthor: Kev <klmitch@mit.edu>
Kevin L. Mitchell [Fri, 15 Dec 2000 15:30:00 +0000 (15:30 +0000)]
Author: Kev <klmitch@mit.edu>
Log message:

Create a linked list of connections that have queued data.  This allows
flush_connections to scan only the connections that have queued data,
rather than going through every single connection on the server.  This
will improve efficiency, but I doubt it'll have a significant impact on
CPU usage.

Testing:

Compiles and runs with no apparent errors.  It needs to be brute-forced
to make sure there are no assertion failures.

Notes:

If you ever call MsgQClear(), you MUST call client_drop_sendq() as well!
(Perhaps this should be changed to have client_drop_sendq() call
MsgQClear() itself?)

git-svn-id: file:///home/klmitch/undernet-ircu/undernet-ircu-svn/ircu2/trunk@339 c9e4aea6-c8fd-4c43-8297-357d70d61c8c

23 years agoAuthor: Diane Bruce <db@tfm.com> (by way of Kev <klmitch@mit.edu>)
Kevin L. Mitchell [Fri, 15 Dec 2000 01:14:59 +0000 (01:14 +0000)]
Author: Diane Bruce <db@tfm.com> (by way of Kev <klmitch@mit.edu>)
Log message:

- rfc1489 is ambigous about how to handle ISON. The example shows
  no ':' used in the command, which means each nick would appear in
  parv[1] to parv[n].  After discussion with hop on efnet/undernet
  it became apparent there is a problem. ircnet gets it right, but they
  loop over all parv as well as strtoken'ing on ' '
  My suggested fix is to loop over each parv[1] to parc, and scanning
  each one for ' '. I prefer to use parc rather than relying on a parv[]
  being NULL, but you could do a slightly more efficient version that way.

- Trailing spaces are removed, apparently that breaks some ircII clients.
  epic according to hoppie, is ok, but still...

(This patch was applied by hand because of the number of changes involved;
hope I got the trailing space behavior correct--I removed all trailing
spaces. -Kev)

Testing:

I tested it; it doesn't crash the server.  If ISON gets more than the
maximum number of arguments before hitting a colon, the server tries to
look up :<nick>, but this isn't much of a suprise.  Looks nice :)

 -Kev

git-svn-id: file:///home/klmitch/undernet-ircu/undernet-ircu-svn/ircu2/trunk@338 c9e4aea6-c8fd-4c43-8297-357d70d61c8c

23 years agoAuthor: Kev <klmitch@mit.edu>
Kevin L. Mitchell [Thu, 14 Dec 2000 16:32:04 +0000 (16:32 +0000)]
Author: Kev <klmitch@mit.edu>
Log message:

This is it!  Connection information in struct Client has been pulled out
into its own structure, struct Connection.  I've also added a couple of
fields to struct Connection to enable me to create a more efficient
implementation of flush_connections() in the future...

Testing:

Compiles and runs without any apparent problems.  We need to bombard it
with clones up the wazoo to verify the integrity of make_client() and
free_client().

git-svn-id: file:///home/klmitch/undernet-ircu/undernet-ircu-svn/ircu2/trunk@337 c9e4aea6-c8fd-4c43-8297-357d70d61c8c

23 years agoAuthor: Kev <klmitch@mit.edu>
Kevin L. Mitchell [Wed, 13 Dec 2000 19:14:26 +0000 (19:14 +0000)]
Author: Kev <klmitch@mit.edu>
Log message:

This finishes phase one of the struct Client/struct Connection divorce.
Everybody is now using the accessor macros.  IT IS VERY IMPORTANT THAT
ANY NEW CODE USE THESE MACROS!  Phase two will be much smaller, involving
only a new structure and changes to some accessor macros in client.h, and
some code moving from list.c to client.c with addition of struct Connection
allocation.

It somehow seems appropriate that MIT's mascot is the beaver.

Testing:

I've compiled and run the server and can't see any differences in behavior.
This is, however, a huge change, so something may very well be messed up.
Brute-force is the order of the day.

git-svn-id: file:///home/klmitch/undernet-ircu/undernet-ircu-svn/ircu2/trunk@336 c9e4aea6-c8fd-4c43-8297-357d70d61c8c

23 years agoAuthor: Kev <klmitch@mit.edu>
Kevin L. Mitchell [Tue, 12 Dec 2000 23:55:28 +0000 (23:55 +0000)]
Author: Kev <klmitch@mit.edu>
Log message:

Here's some more conversions.  This gets everything but the m_*.c stuff.
Even though it's currently unstable, I'd appreciate testing to catch
anything I might have missed so far...

git-svn-id: file:///home/klmitch/undernet-ircu/undernet-ircu-svn/ircu2/trunk@335 c9e4aea6-c8fd-4c43-8297-357d70d61c8c

23 years agoAuthor: Kev <klmitch@mit.edu>
Kevin L. Mitchell [Tue, 12 Dec 2000 02:33:04 +0000 (02:33 +0000)]
Author: Kev <klmitch@mit.edu>
Log message:

I'm fed up with struct Client as it is.  I'm going to restructure the
interface quite a bit, though the basic fields in struct Client will
remain as they are.  However, instead of having a two-size struct Client,
I will split it into a struct Client and a struct Connection (or similar).

The first step to doing this is creating a set of accessor macros and
making all of ircd use them to access the fields.  This will allow me to
divorce the structures and only have to change the accessor macros and the
struct Client allocation functions and a bit of networking code, rather
than going through all of ircd later and fixing things after they're all
broken.

This commit is the first step toward this.  All the affected header files
have been converted, and all the .c files up through hash.c have been
carefully checked.  Everything compiles cleanly at this point, so I am
assuming that it works; I'll double-check when this phase of the project is
complete.

git-svn-id: file:///home/klmitch/undernet-ircu/undernet-ircu-svn/ircu2/trunk@334 c9e4aea6-c8fd-4c43-8297-357d70d61c8c

23 years agoAuthor: Kev <klmitch@mit.edu>
Kevin L. Mitchell [Mon, 11 Dec 2000 20:27:14 +0000 (20:27 +0000)]
Author: Kev <klmitch@mit.edu>
Log message:

Fix a G-line bug reported by maniac@cetlink.net in private email.

git-svn-id: file:///home/klmitch/undernet-ircu/undernet-ircu-svn/ircu2/trunk@333 c9e4aea6-c8fd-4c43-8297-357d70d61c8c

23 years agoAuthor: Kev <klmitch@mit.edu>
Kevin L. Mitchell [Sun, 10 Dec 2000 19:02:30 +0000 (19:02 +0000)]
Author: Kev <klmitch@mit.edu>
Log message:

Make sure IOV_MAX gets defined on a couple of platforms...

git-svn-id: file:///home/klmitch/undernet-ircu/undernet-ircu-svn/ircu2/trunk@332 c9e4aea6-c8fd-4c43-8297-357d70d61c8c

23 years agoAuthor: Kev <klmitch@mit.edu>
Kevin L. Mitchell [Sun, 10 Dec 2000 00:43:35 +0000 (00:43 +0000)]
Author: Kev <klmitch@mit.edu>
Log message:

Now we're using the struct iovec stuff.

Status: probably stable

Testing needed:

This patch makes some changes to some OS-specific code that I cannot test;
the new code needs to be compiled on several different platforms and a
report of any warnings or errors during compile-time or of any problems
under very heavy load needs to be made.  In making such reports, make sure
you report the system type (uname -a output), and also report the results
of "ls -l ircd/ircd_osdep.c"

Testing done:

It's been tested and seems to work under Linux 2.2.16-3.

git-svn-id: file:///home/klmitch/undernet-ircu/undernet-ircu-svn/ircu2/trunk@331 c9e4aea6-c8fd-4c43-8297-357d70d61c8c

23 years agoAuthor: Kev <klmitch@mit.edu>
Kevin L. Mitchell [Sat, 9 Dec 2000 08:46:50 +0000 (08:46 +0000)]
Author: Kev <klmitch@mit.edu>
Log message:

Fix a tiny presentation error that was resulting in a /clearmode that
removed no modes sending an empty HACK(4) notice

git-svn-id: file:///home/klmitch/undernet-ircu/undernet-ircu-svn/ircu2/trunk@326 c9e4aea6-c8fd-4c43-8297-357d70d61c8c

23 years agoAuthor: Kev <klmitch@mit.edu>
Kevin L. Mitchell [Fri, 8 Dec 2000 20:19:33 +0000 (20:19 +0000)]
Author: Kev <klmitch@mit.edu>
Log message:

Implement a msgq system and switch to it, removing some old dead code in
the process--this includes removing help from Configure.help that no longer
has a corresponding compile-time option, as well as permanently switching
to the new mode implementation.

One of the effects this has is a switch to a priority-queue system, which
should allow wallops to be moved to the head of the sendq.  Lag no longer
becomes an issue for important routing notifications.

Status: stable

Testing needed:

This patch needs to be tested under heavy load.

Testing done:

Compiles and runs with no apparent problems

git-svn-id: file:///home/klmitch/undernet-ircu/undernet-ircu-svn/ircu2/trunk@325 c9e4aea6-c8fd-4c43-8297-357d70d61c8c

23 years agoAuthor: Kev <klmitch@mit.edu>
Kevin L. Mitchell [Fri, 8 Dec 2000 18:59:16 +0000 (18:59 +0000)]
Author: Kev <klmitch@mit.edu>
Log message:

Never send server notices containing server IP addresses.

Note: more tuning will be necessary for the new logging system...

git-svn-id: file:///home/klmitch/undernet-ircu/undernet-ircu-svn/ircu2/trunk@324 c9e4aea6-c8fd-4c43-8297-357d70d61c8c

23 years agoAuthor: Kev <klmitch@mit.edu>
Kevin L. Mitchell [Tue, 5 Dec 2000 23:13:29 +0000 (23:13 +0000)]
Author: Kev <klmitch@mit.edu>
Log message:

ircd_features.c is supposed to #include "ircd_features.h", not
"features.h"

Testing done: compiles cleanly

git-svn-id: file:///home/klmitch/undernet-ircu/undernet-ircu-svn/ircu2/trunk@323 c9e4aea6-c8fd-4c43-8297-357d70d61c8c

23 years agoAuthor: Greg Sikorski <gte@atomicrevs.demon.co.uk>
Greg Sikorski [Tue, 5 Dec 2000 01:01:38 +0000 (01:01 +0000)]
Author: Greg Sikorski <gte@atomicrevs.demon.co.uk>
Log message:

2000-12-05  Greg Sikorski <gte@atomicrevs.demon.co.uk>
        * ircd/m_topic.c: Added missing braces that caused all remote
          topics to be ignored.

git-svn-id: file:///home/klmitch/undernet-ircu/undernet-ircu-svn/ircu2/trunk@322 c9e4aea6-c8fd-4c43-8297-357d70d61c8c

23 years agoAuthor: Kev <klmitch@mit.edu>
Kevin L. Mitchell [Mon, 4 Dec 2000 20:07:31 +0000 (20:07 +0000)]
Author: Kev <klmitch@mit.edu>
Log message:

Switched from calling ircd_log/write_log to log_write; removed all the
compile-time cruft associated with logging and syslogging; corrected a
couple of bugs in the new ircd_log.c functions; corrected a warning, then a
bug in m_create.c, presumably introduced by Isomer

Status: stable

Testing needed: Beat on it for a while.  example.conf still references
USERLOG and OPERLOG subsystems, but they no longer exist; use USER and OPER
instead.

git-svn-id: file:///home/klmitch/undernet-ircu/undernet-ircu-svn/ircu2/trunk@321 c9e4aea6-c8fd-4c43-8297-357d70d61c8c

23 years agoAuthor: Isomer <isomer@coders.net>
Perry Lorier [Sun, 3 Dec 2000 11:42:12 +0000 (11:42 +0000)]
Author: Isomer <isomer@coders.net>
Log message:

Added 'End of Names' when joining channel.  thanks to hektik for pointing
this out.

Testing needed:
 * Make sure it displays End Of Names when it should
 * Make sure it doesn't display End Of Names when it shouldn't

git-svn-id: file:///home/klmitch/undernet-ircu/undernet-ircu-svn/ircu2/trunk@320 c9e4aea6-c8fd-4c43-8297-357d70d61c8c

23 years agoAuthor: net <simms@LUCIDA.QC.CA> (by way of Kev <klmitch@mit.edu>)
Kevin L. Mitchell [Fri, 1 Dec 2000 16:08:47 +0000 (16:08 +0000)]
Author: net <simms@LUCIDA.QC.CA> (by way of Kev <klmitch@mit.edu>)
Log message:

Do a freelist for struct Motd

Testing done:

I (Kev) tested this, and it works, and there does not appear to be any form
of memory leak.

git-svn-id: file:///home/klmitch/undernet-ircu/undernet-ircu-svn/ircu2/trunk@319 c9e4aea6-c8fd-4c43-8297-357d70d61c8c

23 years agoAuthor: Kev <klmitch@mit.edu>
Kevin L. Mitchell [Thu, 30 Nov 2000 22:20:24 +0000 (22:20 +0000)]
Author: Kev <klmitch@mit.edu>
Log message:

Finished most of the logging system (except for conversions to log_write())
by implementing the feature system, composed of F-lines, to set features
from the .conf, and the three new commands /set, /reset, and /get, to
manipulate feature settings on the fly.

Status: Stable, but expect bugs

Testing needed:

I'm too tired to try to figure out what sort of bugs might be hanging
around.  Beat on it for a while...

git-svn-id: file:///home/klmitch/undernet-ircu/undernet-ircu-svn/ircu2/trunk@318 c9e4aea6-c8fd-4c43-8297-357d70d61c8c

23 years agoAuthor: Kev <klmitch@mit.edu>
Kevin L. Mitchell [Wed, 29 Nov 2000 21:54:23 +0000 (21:54 +0000)]
Author: Kev <klmitch@mit.edu>
Log message:

Finishing up work on the logging API; lots of dead code added to ircd_log.c
which is intended to be called from appropriate places in the configuration
file parser (I'll add that later).  Started switching bits and pieces over
to the new API.

Status: mostly stable

Testing done:

Compiles and seems to work; some of the functionality can't be tested until
some more work gets done.  The eventual upshot of all this work will be the
eventual replacement of GPATH and others with configuration file options.

git-svn-id: file:///home/klmitch/undernet-ircu/undernet-ircu-svn/ircu2/trunk@317 c9e4aea6-c8fd-4c43-8297-357d70d61c8c

23 years agoAuthor: Kev <klmitch@mit.edu>
Kevin L. Mitchell [Tue, 28 Nov 2000 22:28:20 +0000 (22:28 +0000)]
Author: Kev <klmitch@mit.edu>
Log message:

Started working on a new logging API that can log to files and/or to
syslog; the intent will be to eventually make this flexible enough that
log files for subsystems can be set from the .conf.

Status: Stable
Testing done:

Compiles.  No run-time checking done because nothing calls these functions
yet.

Future directions:

An API for setting log files needs to be added.  It would also be nice to
have support for sending the log messages through the server notices
mechanism.

git-svn-id: file:///home/klmitch/undernet-ircu/undernet-ircu-svn/ircu2/trunk@316 c9e4aea6-c8fd-4c43-8297-357d70d61c8c

23 years agoAuthor: Kev <klmitch@mit.edu>
Kevin L. Mitchell [Tue, 28 Nov 2000 18:30:23 +0000 (18:30 +0000)]
Author: Kev <klmitch@mit.edu>
Log message:

Fixed the bugs I found in the motd routines; these should now be working.

Someone should consider adding freelist stuff here.

Testing done: most of what I outlined in the previous commit
Status: stable
Testing needed: double-check for possible memory leaks

git-svn-id: file:///home/klmitch/undernet-ircu/undernet-ircu-svn/ircu2/trunk@315 c9e4aea6-c8fd-4c43-8297-357d70d61c8c

23 years agoAuthor: Kev <klmitch@mit.edu>
Kevin L. Mitchell [Mon, 27 Nov 2000 21:47:53 +0000 (21:47 +0000)]
Author: Kev <klmitch@mit.edu>
Log message:

Further rewrites of the MOTD stuff--now the API is fairly clean and well
compartmentalized, so it should be able to work into even a completely new
.conf structure without much trouble at all.  ircd.motd and remote.motd are
read in on initialization and rehash, but T-lines aren't cached unless they
get used, to try to save memory.  There's a new motd_recache() routine that
flushes just the cached MOTDs; this is currently not hooked into the rehash
handler.  Also, we're using ISO dates.

Testing done: Compile-checked; I have not had time to do more, yet.
Status: unstable
Testing needed: Compile it and make sure it doesn't crash when you log in,
  either with or without NODEFAULTMOTD.  Check that T-lines with both
  hostmasks and class designations work.  Check that /rehash or kill -HUP
  don't crash the server.  Watch memory usage to see if there's any
  indications of memory leaks (hard).  Verify that caches get cleared on
  /rehash.  Verify that dates and times are correct and correctly
  displayed.  Verify that /stats T reports all your T-lines and in the
  correct order, with a mix of class- and hostmask-based T-lines.  Check
  what happens if your motd is 0 length.  Basically, try to exercise every
  code path in motd.c and the bits of code that I changed :)

git-svn-id: file:///home/klmitch/undernet-ircu/undernet-ircu-svn/ircu2/trunk@314 c9e4aea6-c8fd-4c43-8297-357d70d61c8c

23 years agoAuthor: Kev <klmitch@mit.edu>
Kevin L. Mitchell [Wed, 22 Nov 2000 19:01:19 +0000 (19:01 +0000)]
Author: Kev <klmitch@mit.edu>
Log message:

The MOTD stuff was a crock.  It's now less of a crock.  Among other
things, we're no longer calling m_motd from register_user.  This
interface may still be subject to change...

Status: stable
Testing done: Signon with NODEFAULTMOTD #define'd; remote MOTDs; local
  MOTDs; T-lines by hostname and by class; T-line conf ordering
Testing needed: Signon without NODEFAULTMOTD #define'd

git-svn-id: file:///home/klmitch/undernet-ircu/undernet-ircu-svn/ircu2/trunk@313 c9e4aea6-c8fd-4c43-8297-357d70d61c8c

23 years agoAuthor: Kev <klmitch@mit.edu>
Kevin L. Mitchell [Mon, 20 Nov 2000 21:10:06 +0000 (21:10 +0000)]
Author: Kev <klmitch@mit.edu>
Log message:

Use client name instead of client numeric; tested

git-svn-id: file:///home/klmitch/undernet-ircu/undernet-ircu-svn/ircu2/trunk@311 c9e4aea6-c8fd-4c43-8297-357d70d61c8c

23 years agoAuthor: Kev <klmitch@mit.edu>
Kevin L. Mitchell [Mon, 20 Nov 2000 21:05:43 +0000 (21:05 +0000)]
Author: Kev <klmitch@mit.edu>
Log message:

Apply a bandaid to Iso's m_motd change; rewrite protocol_violation so that
it actually works

Testing done: Tested BURST with too few arguments--produced correct
behavior.  Am able to connect to the server as a user without coring
it :)

Status: Stable

git-svn-id: file:///home/klmitch/undernet-ircu/undernet-ircu-svn/ircu2/trunk@310 c9e4aea6-c8fd-4c43-8297-357d70d61c8c

23 years agoAuthor: Isomer <perry@coders.net>
Perry Lorier [Mon, 20 Nov 2000 19:02:17 +0000 (19:02 +0000)]
Author: Isomer <perry@coders.net>
Log message:

        * ircd/ircd_reply.c: added 'protocol_violation', thus alerting us
        to problems in the server<->server protocol.

        * ircd/m_connect.c: allow remote connects with a port of '0'
        meaning to use the port in the config file.

        * ircd/m_create.c: Enable hacking protection, lets see how far we
        get.

        * ircd/m_error.c: The RFC says never accept ERROR from unreg'd
        clients, so we don't any more.

        * ircd/m_kill.c: The kill path is now made up of numnicks of servers,
        and the user@host is displayed of the victim.

        * ircd/m_map.c: reloaded 'dump_map'.

        * ircd/m_trace.c: allow per class T:

        * ircd/m_stats.c: allow local opers /remote stats anywhere on the 'net.

git-svn-id: file:///home/klmitch/undernet-ircu/undernet-ircu-svn/ircu2/trunk@308 c9e4aea6-c8fd-4c43-8297-357d70d61c8c

23 years agoAuthor: Isomer <isomer@coders.net>
Perry Lorier [Fri, 17 Nov 2000 00:16:20 +0000 (00:16 +0000)]
Author: Isomer <isomer@coders.net>
Log message:

Fixed bug as reported by maniac. (Topic's not being propergated properly)

Fixed bug as reported by net, cleaning up the patch slightly. (clients not
having their 'IPchecked flag' set)

git-svn-id: file:///home/klmitch/undernet-ircu/undernet-ircu-svn/ircu2/trunk@307 c9e4aea6-c8fd-4c43-8297-357d70d61c8c

23 years agoAuthor: Kev <klmitch@mit.edu>
Kevin L. Mitchell [Thu, 2 Nov 2000 17:31:27 +0000 (17:31 +0000)]
Author: Kev <klmitch@mit.edu>
Log message:

1) Use do_names() directly instead of calling through m_names(), which is
ugly.

2) Add channel creation TS to JOIN protocol messages, which also requires
us to seperate them; never transmute a JOIN into a CREATE, but create the
channel with the proper TS, or with MAGIC_REMOTE_JOIN_TS.

3) Remove a compiler warning.

Testing done: Checked for correct behavior; checked at the server<->server
level to ensure channels are created with appropriate timestamps; also
checked that CREATE gets bounced with MODE -o in appropriate circumstances.

Testing needed: Beat on this heavily and make sure nothing weird happens ;)

git-svn-id: file:///home/klmitch/undernet-ircu/undernet-ircu-svn/ircu2/trunk@306 c9e4aea6-c8fd-4c43-8297-357d70d61c8c

23 years agoAuthor: Isomer <isomer@coders.net>
Perry Lorier [Mon, 30 Oct 2000 22:54:10 +0000 (22:54 +0000)]
Author: Isomer <isomer@coders.net>
Log message:

Fixed the warning message everyone keeps reminding me about :)

git-svn-id: file:///home/klmitch/undernet-ircu/undernet-ircu-svn/ircu2/trunk@305 c9e4aea6-c8fd-4c43-8297-357d70d61c8c

23 years agoAuthor: Isomer <isomer@coders.net>
Perry Lorier [Mon, 30 Oct 2000 09:45:17 +0000 (09:45 +0000)]
Author: Isomer <isomer@coders.net>
Log message:

Fixed over aggressive cut and no paste in m_oper

git-svn-id: file:///home/klmitch/undernet-ircu/undernet-ircu-svn/ircu2/trunk@304 c9e4aea6-c8fd-4c43-8297-357d70d61c8c

23 years agoAuthor: Isomer <isomer@coders.net>
Perry Lorier [Mon, 30 Oct 2000 09:28:15 +0000 (09:28 +0000)]
Author: Isomer <isomer@coders.net>
Log message:

Lots of little changes

To check:
 * glines
 * ./ircd --help doesn't start the server
 * silence works
 * check oper still owkrs
 * check error messages on accept
 * lotsa other things, read the changelog :)

git-svn-id: file:///home/klmitch/undernet-ircu/undernet-ircu-svn/ircu2/trunk@303 c9e4aea6-c8fd-4c43-8297-357d70d61c8c

23 years agoAuthor: net <simms@LUCIDA.QC.CA>
Perry Lorier [Mon, 30 Oct 2000 00:34:27 +0000 (00:34 +0000)]
Author: net <simms@LUCIDA.QC.CA>

Log message:

Fixed bugs that Isomer left

Testing Required:
Gline random people and check that the right people are disconnected

git-svn-id: file:///home/klmitch/undernet-ircu/undernet-ircu-svn/ircu2/trunk@302 c9e4aea6-c8fd-4c43-8297-357d70d61c8c

23 years agoAuthor: Kev <klmitch@mit.edu>
Kevin L. Mitchell [Thu, 26 Oct 2000 16:36:10 +0000 (16:36 +0000)]
Author: Kev <klmitch@mit.edu>
Log message:

* ircd/m_join.c (m_join): reply on attempt to join a BADCHANed
channel is now ERR_BANNEDFROMCHAN instead of ERR_BADCHANNAME

git-svn-id: file:///home/klmitch/undernet-ircu/undernet-ircu-svn/ircu2/trunk@300 c9e4aea6-c8fd-4c43-8297-357d70d61c8c

23 years agoAuthor: Kev <klmitch@mit.edu>
Kevin L. Mitchell [Tue, 24 Oct 2000 21:05:00 +0000 (21:05 +0000)]
Author: Kev <klmitch@mit.edu>
Log message:

* ircd/channel.c: ok, now last mode rules; mode +ps will always
result in +s (and won't send a mode if the channel is already +s);
mode +sp will always result in +p; -n+n on a +n channel results in
no mode change; -n+n on a -n channel results in a +n mode change;
etc.

Status: stable; I don't expect there will be any more problems besides bugs

Testing done: Simple modes conform to the behavior I expect, i.e., last
  mode takes precedence.  No empty mode commands are forwarded to remote
  servers.  +p and +s are mutually exclusive.  No unset modes are removed.

Testing needed: Brute force check it and report any problems; I'm
  particularly concerned with BURSTs and server MODEs, though reports on
  OPMODE and user MODEs will also need to be considered.  It should work.

git-svn-id: file:///home/klmitch/undernet-ircu/undernet-ircu-svn/ircu2/trunk@299 c9e4aea6-c8fd-4c43-8297-357d70d61c8c

23 years agoAuthor: Kev <klmitch@mit.edu>
Kevin L. Mitchell [Mon, 23 Oct 2000 21:44:48 +0000 (21:44 +0000)]
Author: Kev <klmitch@mit.edu>
Log message:

Fixed a couple of bugs in the new mode parser, in particular a bug in
mode_parse_limit that wiped out all modes when you did -l, and another
more minor bug having to do with presentation--i.e., if you did a +p
on a channel that was not +s, you would see "-s+p"

Some behavior may still be unexpected; for instance, "mode #test +ps" will
toggle the channel mode between +p and +s, because of the mutual
exclusivity, and if you do "mode #test -n+n" on a +n channel, you will get
"mode #test -n".  We may be able to solve this by removing the shortcut
test at the top of mode_parse_mode...

Testing done: I checked to see if the -iklmntp * behavior worked correctly,
and it did--note that "*" there will be properly treated as an error if the
channel key is, say, "foobar" ;)  I also checked to see that +p/+s worked
as I desired, and it does--which is how I know of the other behavior ;)

Testing needed: tell me what kind of behavior your prefer!

git-svn-id: file:///home/klmitch/undernet-ircu/undernet-ircu-svn/ircu2/trunk@298 c9e4aea6-c8fd-4c43-8297-357d70d61c8c

23 years agoAuthor: Greg Sikorski <gte@atomicrevs.demon.co.uk>
Greg Sikorski [Thu, 28 Sep 2000 18:40:50 +0000 (18:40 +0000)]
Author: Greg Sikorski <gte@atomicrevs.demon.co.uk>
Log message:

Switch logic in m_names to avoid an assert() while debugging.

--Gte

git-svn-id: file:///home/klmitch/undernet-ircu/undernet-ircu-svn/ircu2/trunk@297 c9e4aea6-c8fd-4c43-8297-357d70d61c8c

23 years agoAuthor: Bleep <helveytw@home.com>
Bleep [Wed, 20 Sep 2000 01:51:38 +0000 (01:51 +0000)]
Author:      Bleep <helveytw@home.com>
Log message: Fixup compile errors for chkconf, somehow the dependencies
for chkconf don't get revised correctly.

git-svn-id: file:///home/klmitch/undernet-ircu/undernet-ircu-svn/ircu2/trunk@296 c9e4aea6-c8fd-4c43-8297-357d70d61c8c

23 years agoAuthor: Bleep <helveytw@home.com>
Bleep [Tue, 19 Sep 2000 05:41:48 +0000 (05:41 +0000)]
Author:      Bleep <helveytw@home.com>
Log message: Moved K:lines to new data structures and list, fixup affected
code, rework stats code a bit to report them correctly.

git-svn-id: file:///home/klmitch/undernet-ircu/undernet-ircu-svn/ircu2/trunk@295 c9e4aea6-c8fd-4c43-8297-357d70d61c8c

23 years agoAuthor: Bleep <helveytw@home.com>
Bleep [Mon, 18 Sep 2000 00:39:27 +0000 (00:39 +0000)]
Author:      Bleep <helveytw@home.com>
Log message: general cleanups in connection class code

git-svn-id: file:///home/klmitch/undernet-ircu/undernet-ircu-svn/ircu2/trunk@294 c9e4aea6-c8fd-4c43-8297-357d70d61c8c

23 years agoAuthor: Bleep <helveytw@home.com>
Bleep [Sun, 17 Sep 2000 08:32:40 +0000 (08:32 +0000)]
Author:      Bleep <helveytw@home.com>
Log message: Move me config stuff to local conf, fixup affected code,
test changes.

git-svn-id: file:///home/klmitch/undernet-ircu/undernet-ircu-svn/ircu2/trunk@293 c9e4aea6-c8fd-4c43-8297-357d70d61c8c

23 years agoAuthor: Bleep <helveytw@home.com>
Bleep [Sun, 17 Sep 2000 07:01:08 +0000 (07:01 +0000)]
Author:      Bleep <helveytw@home.com>
Log message: add missing prototype

git-svn-id: file:///home/klmitch/undernet-ircu/undernet-ircu-svn/ircu2/trunk@292 c9e4aea6-c8fd-4c43-8297-357d70d61c8c

23 years agoAuthor: Bleep <helveytw@home.com>
Bleep [Sun, 17 Sep 2000 06:49:55 +0000 (06:49 +0000)]
Author:      Bleep <helveytw@home.com>
Log message: Merge in changes from .10 pl 12, fixup merge conflicts,
temporarily back out IPcheck changes to get bug fixes from .10.
Build and test, remake dependencies.

git-svn-id: file:///home/klmitch/undernet-ircu/undernet-ircu-svn/ircu2/trunk@291 c9e4aea6-c8fd-4c43-8297-357d70d61c8c

23 years agoAuthor: Bleep <helveytw@home.com>
Bleep [Sun, 17 Sep 2000 03:41:38 +0000 (03:41 +0000)]
Author:      Bleep <helveytw@home.com>
Log message: general mayhem, tweak this add that, refactor logic a bit,
add client.c, move regular expressions to ircd_string

git-svn-id: file:///home/klmitch/undernet-ircu/undernet-ircu-svn/ircu2/trunk@290 c9e4aea6-c8fd-4c43-8297-357d70d61c8c

23 years agoAuthor: Bleep <helveytw@home.com>
Bleep [Sat, 16 Sep 2000 05:35:02 +0000 (05:35 +0000)]
Author:      Bleep <helveytw@home.com>
Log message: Add CRuleConf struct and support code, change state machine
to strip quotes from quoted strings, fixup code that depended on changes,
tested the whole mess.

git-svn-id: file:///home/klmitch/undernet-ircu/undernet-ircu-svn/ircu2/trunk@289 c9e4aea6-c8fd-4c43-8297-357d70d61c8c

23 years agoAuthor: Bleep <helveytw@home.com>
Bleep [Fri, 15 Sep 2000 07:27:09 +0000 (07:27 +0000)]
Author:     Bleep <helveytw@home.com>
Log message: More general mayhem in confland. Convert listeners, t lines,
admin stuff. General cleanups, test the whole mess. Moved hostent
validation to res.c and rewrite using a regex.

Note: The validation rules are somewhat restrictive, I didn't modify the
rules. Specifically it disallows underscores in the hostname. We may want
to consider relaxing this rule, most people do. Perhaps we should put this
in a config file?

git-svn-id: file:///home/klmitch/undernet-ircu/undernet-ircu-svn/ircu2/trunk@288 c9e4aea6-c8fd-4c43-8297-357d70d61c8c

23 years agoAuthor: Bleep <helveytw@home.com>
Bleep [Thu, 14 Sep 2000 06:55:47 +0000 (06:55 +0000)]
Author:      Bleep <helveytw@home.com>
Log message: ewps missed one of the bugs

git-svn-id: file:///home/klmitch/undernet-ircu/undernet-ircu-svn/ircu2/trunk@287 c9e4aea6-c8fd-4c43-8297-357d70d61c8c

23 years agoAuthor: Bleep <helveytw@home.com>
Bleep [Thu, 14 Sep 2000 06:53:38 +0000 (06:53 +0000)]
Author:      Bleep <helveytw@home.com>
Log message: rewrite conf parser, fix logic bug, add struct

git-svn-id: file:///home/klmitch/undernet-ircu/undernet-ircu-svn/ircu2/trunk@286 c9e4aea6-c8fd-4c43-8297-357d70d61c8c

23 years agoAuthor: Bleep <helveytw@home.com>
Bleep [Wed, 13 Sep 2000 07:55:56 +0000 (07:55 +0000)]
Author: Bleep <helveytw@home.com>
Log message:
Put clients, slinks, and memberships in free lists

git-svn-id: file:///home/klmitch/undernet-ircu/undernet-ircu-svn/ircu2/trunk@285 c9e4aea6-c8fd-4c43-8297-357d70d61c8c

23 years agoAuthor: Kev <klmitch@mit.edu>
Kevin L. Mitchell [Wed, 30 Aug 2000 15:58:53 +0000 (15:58 +0000)]
Author: Kev <klmitch@mit.edu>
Log message:

Pulled up the do_names() fix from u2.10.10.pl11

git-svn-id: file:///home/klmitch/undernet-ircu/undernet-ircu-svn/ircu2/trunk@279 c9e4aea6-c8fd-4c43-8297-357d70d61c8c

23 years agoAuthor: Isomer <isomer@coders.net>
Perry Lorier [Sat, 15 Jul 2000 23:55:33 +0000 (23:55 +0000)]
Author: Isomer <isomer@coders.net>
Log message:

IP gline's / k:lines are now done with bit tests.  This should be much
much faster.

As a side effect you can now gline/kline  10.0.0.0/8 for instance.

git-svn-id: file:///home/klmitch/undernet-ircu/undernet-ircu-svn/ircu2/trunk@271 c9e4aea6-c8fd-4c43-8297-357d70d61c8c

23 years agoAuthor: Isomer <isomer@coders.net>
Perry Lorier [Sat, 15 Jul 2000 12:29:16 +0000 (12:29 +0000)]
Author: Isomer <isomer@coders.net>
Log message:

Fixed lots of compiletime warnings.  Thanks to CyberDude that gave me
a shell so I could test.

git-svn-id: file:///home/klmitch/undernet-ircu/undernet-ircu-svn/ircu2/trunk@269 c9e4aea6-c8fd-4c43-8297-357d70d61c8c

23 years agoAuthor: Isomer
Perry Lorier [Sat, 15 Jul 2000 01:31:24 +0000 (01:31 +0000)]
Author: Isomer
Log message:

More doco changes, IPcheck 'fixes'.

git-svn-id: file:///home/klmitch/undernet-ircu/undernet-ircu-svn/ircu2/trunk@268 c9e4aea6-c8fd-4c43-8297-357d70d61c8c

23 years agoAuthor: Greg Sikorski <gte@atomicrevs.demon.co.uk>
Greg Sikorski [Sun, 9 Jul 2000 14:19:44 +0000 (14:19 +0000)]
Author: Greg Sikorski <gte@atomicrevs.demon.co.uk>
Log message:

Clean up compiler warning.

m_oper.c: In function `m_oper':
m_oper.c:206: warning: implicit declaration of function `write_log'
m_oper.c:207: warning: implicit declaration of function `myctime'

git-svn-id: file:///home/klmitch/undernet-ircu/undernet-ircu-svn/ircu2/trunk@266 c9e4aea6-c8fd-4c43-8297-357d70d61c8c