1
0
mirror of https://github.com/unrealircd/unrealircd.git synced 2026-06-14 07:44:45 +02:00

2984 Commits

Author SHA1 Message Date
Bram Matthys 45d04d8940 - Undid that. Version is now 3.3-willneverbereleased.
Added comment to changelog:
*****

THIS WAS THE DEVELOPMENT BRANCH FOR UNREAL3.3*. HOWEVER, 3.3* HAS BEEN
DISCONTINUED. FOCUS IS ON 4.* (NEXT-GEN IRCD) AND 3.2* (CURRENT STABLE
IRCD).
FOR 3.2* USE THE BRANCH 'unreal3_2_fixes'
DO NOT USE THIS 3.3* BRANCH FOR ANYTHING OTHER THAN COPYING FEATURES/FIXES
FROM 3.3* TO 3.2* !!

*****
2007-10-24 12:18:52 +00:00
stskeeps 2711cd2c86 - Changed version into 3.2.8 as this will be the target for devel branch 2007-07-18 11:25:14 +00:00
stskeeps a212fe9347 implementing multi service support 2007-07-15 14:21:29 +00:00
stskeeps ea303f149d - Small fix in s_conf.c and Velcro 2007-06-27 11:30:08 +00:00
aquanight ca86e3b898 Config -advanced for --with-moduleswhich 2007-06-22 15:17:22 +00:00
stskeeps 83384cef2a - Fixed typo in new module build switch 2007-06-22 14:30:47 +00:00
stskeeps 38c54cf5fb - Added Command *CommandAdd_Alias(Module *module, char *cmd, char *tok, int
(*func)(aClient*, aClient*, int, char**, char *sentcmd), unsigned char
  params, int flags), which will add a command that gets the command that
  the user sent along in sentcmd
2007-06-22 12:44:13 +00:00
stskeeps c5da05f68b - Added -b flag to install in make install, so src/ircd, INSTALL_CONFS,
src/modules/*.so and *.pem is backed up to name~ if already exists
2007-06-22 09:46:30 +00:00
stskeeps 5f7a7dc9b0 - Renamed spamfilter.conf to spamfilters.conf.sample, to have one less
problem with overwriting during install
2007-06-22 09:21:09 +00:00
stskeeps f84c1da01d #0003396 regarding not copying server.*pem 2007-06-22 08:25:42 +00:00
wolfsage dc69fdc2b7 Index: Changes
===================================================================
RCS file: /home/cmunk/ircsystems/cvsroot/unreal/Changes,v
retrieving revision 1.1.1.1.2.1.2.1.2.2446
diff -u -r1.1.1.1.2.1.2.1.2.2446 Changes
--- Changes	21 Jun 2007 19:37:46 -0000	1.1.1.1.2.1.2.1.2.2446
+++ Changes	22 Jun 2007 03:25:21 -0000
@@ -1809,3 +1809,5 @@
   a ./Config option. Default is commandsandmodules. Any takers?
 - Changed logging into not open/close constantly, #0002943. This may leaks
   fds and cause problems, so its a heads up
+- Some minor changes to unreal.in, to fix unreal stop, start, and
+  restart a bit.
2007-06-22 03:26:07 +00:00
stskeeps 81627d4e9e - Changed logging into not open/close constantly, #0002943. This may leaks
fds and cause problems, so its a heads up
2007-06-21 19:37:47 +00:00
stskeeps b4f2619a64 - Added configure --with-moduleswhich=PARA where PARA can be:
onlycommands = only build commands.so (plus chanmodes)
  onlymodules = only build m_* modules (plus chanmodes)
  commandsandmodules = build both. We still need to add this as a default or
  a ./Config option. Default is commandsandmodules. Any takers?
2007-06-21 19:02:46 +00:00
stskeeps 2944546c1d - #0003399 changing numeric 307 to has identified for this nickname 2007-06-21 18:13:06 +00:00
stskeeps 64b46a7123 - Fixed a MYOSNAME bug (ret is <0 if failure)
- Changed regexp engine to PCRE. Heads up: May severely break things. You
  need to ./Config -q; make clean all to get this working.
- Laid groundwork for seperated build (onlycommands, commandsandmodules,
  onlymodules)
2007-06-20 00:35:07 +00:00
aquanight cb7856a788 uname() vs uname #0001438 2007-06-17 22:38:55 +00:00
stskeeps 6f20433c8b - Made m_tkl use NULL instead of TOK_NONE 2007-06-17 12:56:23 +00:00
stskeeps 002b4478ee - #0003363 patched by adrianp, changing IRC_UID and IRC_GID into
defines IRC_USER, IRC_GROUP which is a string specifiying what user name/
  group name that should be changed into, instead of a hardcoded gid/uid.
  This should make it easier for packaged binary releases to work (even
  though this probably means Debian will take us in, ick .. Can't we pull
  a new fight with debian-legal again?)
2007-06-17 12:35:17 +00:00
stskeeps 920291f4ba *** empty log message *** 2007-06-15 19:40:12 +00:00
stskeeps 05074adef2 - #0001740 reported by Trocotronic, making the IRCd send ERROR : to all
links with possible reason for RESTART; like /die does it.
2007-06-12 21:36:20 +00:00
stskeeps 2eda2e95ca - #0002475 reported by aquanight on detecting \'s in module filenames on
win32 and not do ./module for it
2007-06-12 21:30:08 +00:00
stskeeps 925cf08021 - #0003177 patched by aegis, changing non-modular add_Command to
CommandAdd's through a huge patch. This may break some things, so heads
  up. From now on add_Command is unsafe land for modules and may be removed
  without warning.
2007-06-12 20:53:11 +00:00
stskeeps 112a576c9c - #0002172 reported by Stealth, patched by WolfSage, fixing if you have an
admin block, and forget a semicolon on a line, Unreal will proceed to use
  the block with no error, but the information will be incorrect/incomplete.
2007-06-11 22:26:07 +00:00
stskeeps 7d14f833e6 - Broke compile with portnum fix, fixed
- #0003027 reported by Trocotronic, regarding doing -l <para> on SJOIN,
  and not -l as supposed. This may have caused desyncs
2007-06-11 21:51:20 +00:00
stskeeps 36ba7623cf - Removed anything involving portnum global variable. Not proper in
newconf world
- #0002920 reported by aquanight, regarding command line mkpasswd,
  patched by BuHHunyx. Syntax: wircd.exe -P|-p authmethod password.
  If it is -p, it will get shown in a MessageBox, -P it will get copied
to clipboard
2007-06-11 18:36:05 +00:00
wolfsage 83a7cdd734 Index: Changes
===================================================================
RCS file: /home/cmunk/ircsystems/cvsroot/unreal/Changes,v
retrieving revision 1.1.1.1.2.1.2.1.2.2431
diff -u -r1.1.1.1.2.1.2.1.2.2431 Changes
--- Changes	10 Jun 2007 08:33:04 -0000	1.1.1.1.2.1.2.1.2.2431
+++ Changes	10 Jun 2007 18:25:29 -0000
@@ -1758,3 +1758,5 @@
 - #0002451 reported by GSF19 regarding *** Q: %s tried to kick you, when
   it should be *** q: %s. (Actually that's ugly too but at least it
   matches the umode for now)
+- #0002695 reported by w00t regarding unused check_registered and
+  check_registered_user calls in s_misc.c
2007-06-10 18:25:35 +00:00
wolfsage 9b866fa123 Index: Changes
===================================================================
RCS file: /home/cmunk/ircsystems/cvsroot/unreal/Changes,v
retrieving revision 1.1.1.1.2.1.2.1.2.2430
diff -u -r1.1.1.1.2.1.2.1.2.2430 Changes
--- Changes	10 Jun 2007 07:58:43 -0000	1.1.1.1.2.1.2.1.2.2430
+++ Changes	10 Jun 2007 08:33:01 -0000
@@ -1755,3 +1755,6 @@
 - #0001518 reported by Cnils regarding new WHO functionality: -c with
   no args now shows all users not in a channel if you are an IRCOp,
   and +c shows all users in at least 1 channel.
+- #0002451 reported by GSF19 regarding *** Q: %s tried to kick you, when
+  it should be *** q: %s. (Actually that's ugly too but at least it
+  matches the umode for now)
2007-06-10 08:33:05 +00:00
wolfsage b7a5fdb989 Index: Changes
===================================================================
RCS file: /home/cmunk/ircsystems/cvsroot/unreal/Changes,v
retrieving revision 1.1.1.1.2.1.2.1.2.2429
diff -u -r1.1.1.1.2.1.2.1.2.2429 Changes
--- Changes	10 Jun 2007 04:26:07 -0000	1.1.1.1.2.1.2.1.2.2429
+++ Changes	10 Jun 2007 07:58:39 -0000
@@ -1752,5 +1752,6 @@
 - #0001317 reported by thilo regarding removal of (username) being
   appended to topics set by U:Lined servers.
 - Added missing semicolons to some help.conf entries
-- #0001518 reported by Cnils regarding new WHO functionality: +c with
-  no args now shows all users not in a channel if you are an IRCOp
+- #0001518 reported by Cnils regarding new WHO functionality: -c with
+  no args now shows all users not in a channel if you are an IRCOp,
+  and +c shows all users in at least 1 channel.
2007-06-10 07:58:43 +00:00
wolfsage 7b2b77df4e Index: Changes
===================================================================
RCS file: /home/cmunk/ircsystems/cvsroot/unreal/Changes,v
retrieving revision 1.1.1.1.2.1.2.1.2.2428
diff -u -r1.1.1.1.2.1.2.1.2.2428 Changes
--- Changes	10 Jun 2007 03:02:24 -0000	1.1.1.1.2.1.2.1.2.2428
+++ Changes	10 Jun 2007 04:26:04 -0000
@@ -1752,3 +1752,5 @@
 - #0001317 reported by thilo regarding removal of (username) being
   appended to topics set by U:Lined servers.
 - Added missing semicolons to some help.conf entries
+- #0001518 reported by Cnils regarding new WHO functionality: +c with
+  no args now shows all users not in a channel if you are an IRCOp
2007-06-10 04:26:08 +00:00
wolfsage 4238193d07 Index: Changes
===================================================================
RCS file: /home/cmunk/ircsystems/cvsroot/unreal/Changes,v
retrieving revision 1.1.1.1.2.1.2.1.2.2427
diff -u -r1.1.1.1.2.1.2.1.2.2427 Changes
--- Changes	10 Jun 2007 00:38:02 -0000	1.1.1.1.2.1.2.1.2.2427
+++ Changes	10 Jun 2007 03:02:19 -0000
@@ -1751,3 +1751,4 @@
 - Updated c-ares to latest release (1.4.0)
 - #0001317 reported by thilo regarding removal of (username) being
   appended to topics set by U:Lined servers.
+- Added missing semicolons to some help.conf entries
2007-06-10 03:02:24 +00:00
wolfsage 7e96a1c9ee Forgot to reference bug reporter 2007-06-10 00:38:02 +00:00
wolfsage 4458de5c5b Index: Changes
===================================================================
RCS file: /home/cmunk/ircsystems/cvsroot/unreal/Changes,v
retrieving revision 1.1.1.1.2.1.2.1.2.2425
diff -u -r1.1.1.1.2.1.2.1.2.2425 Changes
--- Changes	9 Jun 2007 23:05:14 -0000	1.1.1.1.2.1.2.1.2.2425
+++ Changes	10 Jun 2007 00:32:44 -0000
@@ -1749,3 +1749,5 @@
 - #0003340 bug regarding compile warnings for lib/tre-parse.c. Upgraded
   tre to latest release (0.7.5)
 - Updated c-ares to latest release (1.4.0)
+- #0001317 reported by thilo regarding removal of (username) being
+  appended to topics set by U:Lined servers.
2007-06-10 00:33:19 +00:00
wolfsage d03f91e9b4 Index: Changes
===================================================================
RCS file: /home/cmunk/ircsystems/cvsroot/unreal/Changes,v
retrieving revision 1.1.1.1.2.1.2.1.2.2424
diff -u -r1.1.1.1.2.1.2.1.2.2424 Changes
--- Changes	9 Jun 2007 20:32:54 -0000	1.1.1.1.2.1.2.1.2.2424
+++ Changes	9 Jun 2007 23:04:41 -0000
@@ -1748,3 +1748,4 @@
 - #0003107 feature request by Sakkath regarding new WHO flag: +p <port>
 - #0003340 bug regarding compile warnings for lib/tre-parse.c. Upgraded
   tre to latest release (0.7.5)
+- Updated c-ares to latest release (1.4.0)
2007-06-09 23:05:15 +00:00
wolfsage fc2fad2c92 Index: Changes
===================================================================
RCS file: /home/cmunk/ircsystems/cvsroot/unreal/Changes,v
retrieving revision 1.1.1.1.2.1.2.1.2.2423
diff -u -r1.1.1.1.2.1.2.1.2.2423 Changes
--- Changes	9 Jun 2007 19:15:18 -0000	1.1.1.1.2.1.2.1.2.2423
+++ Changes	9 Jun 2007 20:32:30 -0000
@@ -1746,3 +1746,5 @@
 - #0003382 reported by stealth regarding nested C-style comments messing
 - up example.conf parsing
 - #0003107 feature request by Sakkath regarding new WHO flag: +p <port>
+- #0003340 bug regarding compile warnings for lib/tre-parse.c. Upgraded
+  tre to latest release (0.7.5)
2007-06-09 20:32:55 +00:00
wolfsage fcbb0fcd69 Index: Changes
===================================================================
RCS file: /home/cmunk/ircsystems/cvsroot/unreal/Changes,v
retrieving revision 1.1.1.1.2.1.2.1.2.2422
diff -u -r1.1.1.1.2.1.2.1.2.2422 Changes
--- Changes	9 Jun 2007 18:00:05 -0000	1.1.1.1.2.1.2.1.2.2422
+++ Changes	9 Jun 2007 19:15:14 -0000
@@ -1745,3 +1745,4 @@
   directive which loads velcro modules
 - #0003382 reported by stealth regarding nested C-style comments messing
 - up example.conf parsing
+- #0003107 feature request by Sakkath regarding new WHO flag: +p <port>
2007-06-09 19:15:18 +00:00
wolfsage f4850d25c0 Index: Changes
===================================================================
RCS file: /home/cmunk/ircsystems/cvsroot/unreal/Changes,v
retrieving revision 1.1.1.1.2.1.2.1.2.2421
diff -u -r1.1.1.1.2.1.2.1.2.2421 Changes
--- Changes	6 Jun 2007 17:50:32 -0000	1.1.1.1.2.1.2.1.2.2421
+++ Changes	9 Jun 2007 18:00:01 -0000
@@ -1743,4 +1743,5 @@
 - Some more Velcro changes to make it fit into 3.3
 - Some more actual working Velcro code, adding "loadmodule4" config
   directive which loads velcro modules
-
+- #0003382 reported by stealth regarding nested C-style comments messing
+- up example.conf parsing
2007-06-09 18:00:05 +00:00
stskeeps a0870fb76d - Some more actual working Velcro code, adding loadmodule4 config
directive which loads velcro modules
2007-06-06 17:50:33 +00:00
stskeeps 77317ec9f7 - Added HookAddCfg as a more typesafe way to add
HOOKTYPE_CONFIGRUN/CONFIGTEST. Was needed for Velcro and possibly other
  situations
- Some more Velcro changes to make it fit into 3.3
2007-06-06 15:36:40 +00:00
wolfsage 943d5ad6d5 Index: Changes
===================================================================
RCS file: /home/cmunk/ircsystems/cvsroot/unreal/Changes,v
retrieving revision 1.1.1.1.2.1.2.1.2.2418
diff -u -r1.1.1.1.2.1.2.1.2.2418 Changes
--- Changes	5 Jun 2007 19:46:32 -0000	1.1.1.1.2.1.2.1.2.2418
+++ Changes	5 Jun 2007 20:00:33 -0000
@@ -1735,3 +1735,5 @@
 - Changed Velcro/build to actually be able to compile to get included into
   u3 space
 - Patched #002531 by Stealth, removing /stats H
+- Fixed a bug introduced by another patch that caused log files to be
+  created without any permissions
2007-06-05 20:00:42 +00:00
stskeeps ca2b4ddecc - Changed Velcro/build to actually be able to compile to get included into
u3 space
- Patched #002531 by Stealth, removing /stats H
2007-06-05 19:46:32 +00:00
stskeeps 94d36995e5 - Changed Velcro/build script to fix a bug 2007-06-05 19:07:26 +00:00
stskeeps 5849092137 - Adding Velcro (the build system from unreal4), for some experimentation
with a new module API. Is currently not autoconf'ied, makefile'ed, etc.
  May the screaming commence.
2007-06-04 21:05:36 +00:00
stskeeps f119a2cea0 Index: Changes
===================================================================
RCS file: /home/cmunk/ircsystems/cvsroot/unreal/Changes,v
retrieving revision 1.1.1.1.2.1.2.1.2.2414
diff -u -r1.1.1.1.2.1.2.1.2.2414 Changes
--- Changes	30 May 2007 21:10:04 -0000	1.1.1.1.2.1.2.1.2.2414
+++ Changes	4 Jun 2007 17:21:12 -0000
@@ -1726,3 +1726,5 @@
   "UnrealIRCd is not running" as opposed to "kill: 3426: no such process" etc.
 - #0003368 patched by Stealth giving users access to do /module on remote
   servers
+- #0002677 reported by aquanight, removing listen::options::remoteadmin,
+  listen::options::mask, set::options::no-stealth
2007-06-04 17:21:21 +00:00
stskeeps 6357fb1f07 Index: Changes
===================================================================
RCS file: /home/cmunk/ircsystems/cvsroot/unreal/Changes,v
retrieving revision 1.1.1.1.2.1.2.1.2.2413
diff -u -r1.1.1.1.2.1.2.1.2.2413 Changes
--- Changes	27 May 2007 20:50:19 -0000	1.1.1.1.2.1.2.1.2.2413
+++ Changes	30 May 2007 21:09:43 -0000
@@ -1724,3 +1724,5 @@
 - #0002833 reported and patched by tabrisnet, implementing UHNAMES
 - #0003156 reported by Bricker: Made ./unreal dump some nicer errors eg
   "UnrealIRCd is not running" as opposed to "kill: 3426: no such process" etc.
+- #0003368 patched by Stealth giving users access to do /module on remote
+  servers
2007-05-30 21:10:04 +00:00
aquanight f880c03323 Nicer error messages for ./unreal 2007-05-27 20:50:19 +00:00
aquanight 52743f1871 Nicer error messages for ./unreal 2007-05-27 20:48:39 +00:00
stskeeps 56ce16788f Index: Changes
===================================================================
RCS file: /home/cmunk/ircsystems/cvsroot/unreal/Changes,v
retrieving revision 1.1.1.1.2.1.2.1.2.2410
diff -u -r1.1.1.1.2.1.2.1.2.2410 Changes
--- Changes	20 May 2007 02:59:15 -0000	1.1.1.1.2.1.2.1.2.2410
+++ Changes	20 May 2007 21:18:59 -0000
@@ -1721,3 +1721,4 @@
   random keys 10 ~ 20 characters in length (doesn't (yet) work for Win32).
 - Misc fix for disabling extban chains, should've done stuff in our autoconf
   stuff instead of hacking configure directly :P .
+- #0002833 reported and patched by tabrisnet, implementing UHNAMES
2007-05-20 21:19:05 +00:00
aquanight 542fa2bcfc Added ./unreal gencloak 2007-05-20 02:59:16 +00:00
wolfsage ee77248055 Index: Changes
===================================================================
RCS file: /home/cmunk/ircsystems/cvsroot/unreal/Changes,v
retrieving revision 1.1.1.1.2.1.2.1.2.2408
diff -u -r1.1.1.1.2.1.2.1.2.2408 Changes
--- Changes	18 May 2007 08:02:32 -0000	1.1.1.1.2.1.2.1.2.2408
+++ Changes	20 May 2007 02:29:40 -0000
@@ -1715,4 +1715,5 @@
   originally by the inspircd team.
 - Fixed a number of compile errors/runtime errors on win32 (also a SSL
   brainfart regarding DH), #0003345, patched by fez
-
+- #0003350 - reported by aquanight regarding ./unreal restart not
+  working in 3.3*. Now works properly again.
2007-05-20 02:29:54 +00:00
stskeeps 50d7a4ecea Index: Changes
===================================================================
RCS file: /home/cmunk/ircsystems/cvsroot/unreal/Changes,v
retrieving revision 1.1.1.1.2.1.2.1.2.2407
diff -u -r1.1.1.1.2.1.2.1.2.2407 Changes
--- Changes	17 May 2007 13:22:12 -0000	1.1.1.1.2.1.2.1.2.2407
+++ Changes	18 May 2007 08:02:21 -0000
@@ -1713,3 +1713,6 @@
 - Added set::ssl::dh to indicate DH parameters. These are needed to support
   DSA certificates and should probably make them work from now on. Code
   originally by the inspircd team.
+- Fixed a number of compile errors/runtime errors on win32 (also a SSL
+  brainfart regarding DH), #0003345, patched by fez
+
2007-05-18 08:02:33 +00:00
stskeeps c643895de7 Index: Changes
===================================================================
RCS file: /home/cmunk/ircsystems/cvsroot/unreal/Changes,v
retrieving revision 1.1.1.1.2.1.2.1.2.2406
diff -u -r1.1.1.1.2.1.2.1.2.2406 Changes
--- Changes	17 May 2007 11:38:07 -0000	1.1.1.1.2.1.2.1.2.2406
+++ Changes	17 May 2007 13:22:05 -0000
@@ -1710,3 +1710,6 @@
 - Added set::ssl::server-cipher-list, #002368 requested by Beastie
 - Added set::ssl::renegotiate-bytes, set::ssl:renegotiate-timeout, #0002971
   suggested by tabrisnet. Gets activated when >0. Please set sane values.
+- Added set::ssl::dh to indicate DH parameters. These are needed to support
+  DSA certificates and should probably make them work from now on. Code
+  originally by the inspircd team.
2007-05-17 13:22:13 +00:00
stskeeps 4b13535e28 Index: Changes
===================================================================
RCS file: /home/cmunk/ircsystems/cvsroot/unreal/Changes,v
retrieving revision 1.1.1.1.2.1.2.1.2.2405
diff -u -r1.1.1.1.2.1.2.1.2.2405 Changes
--- Changes	17 May 2007 10:52:42 -0000	1.1.1.1.2.1.2.1.2.2405
+++ Changes	17 May 2007 11:37:57 -0000
@@ -1708,3 +1708,5 @@
 - IRCd now also sets the &me fd as being non blocking (wasn't before, that
   was odd..)
 - Added set::ssl::server-cipher-list, #002368 requested by Beastie
+- Added set::ssl::renegotiate-bytes, set::ssl:renegotiate-timeout, #0002971
+  suggested by tabrisnet. Gets activated when >0. Please set sane values.
2007-05-17 11:38:08 +00:00
stskeeps bcd5d4a339 Index: Changes
===================================================================
RCS file: /home/cmunk/ircsystems/cvsroot/unreal/Changes,v
retrieving revision 1.1.1.1.2.1.2.1.2.2404
diff -u -r1.1.1.1.2.1.2.1.2.2404 Changes
--- Changes	17 May 2007 09:56:42 -0000	1.1.1.1.2.1.2.1.2.2404
+++ Changes	17 May 2007 10:52:33 -0000
@@ -1707,3 +1707,4 @@
   through this under load, and speeding up connection).
 - IRCd now also sets the &me fd as being non blocking (wasn't before, that
   was odd..)
+- Added set::ssl::server-cipher-list, #002368 requested by Beastie
2007-05-17 10:52:42 +00:00
stskeeps 832c612317 Index: Changes
===================================================================
RCS file: /home/cmunk/ircsystems/cvsroot/unreal/Changes,v
retrieving revision 1.1.1.1.2.1.2.1.2.2403
diff -u -r1.1.1.1.2.1.2.1.2.2403 Changes
--- Changes	15 May 2007 00:38:07 -0000	1.1.1.1.2.1.2.1.2.2403
+++ Changes	17 May 2007 09:56:36 -0000
@@ -1702,3 +1702,8 @@
   concept, so please tell me if some OS'es break bigtime.
 - #003075 - reported by aquanight regarding log block failing silently
   for non-creatable log files. Now fails with an error message.
+- Now using #0003028, with more intelligent accept() handling. The IRCd
+  will now attempt to accept() up to LISTEN_SIZE (possibly saving CPU
+  through this under load, and speeding up connection).
+- IRCd now also sets the &me fd as being non blocking (wasn't before, that
+  was odd..)
2007-05-17 09:56:42 +00:00
wolfsage c9d21d8ab0 Index: Changes
===================================================================
RCS file: /home/cmunk/ircsystems/cvsroot/unreal/Changes,v
retrieving revision 1.1.1.1.2.1.2.1.2.2402
diff -u -r1.1.1.1.2.1.2.1.2.2402 Changes
--- Changes	14 May 2007 20:47:03 -0000	1.1.1.1.2.1.2.1.2.2402
+++ Changes	15 May 2007 00:37:58 -0000
@@ -1700,3 +1700,5 @@
 - Added m_template.cpp and 'make custommodulecpp MODULEFILE=m_template'
   ability - meaning, C++ modules for Unreal. This is mostly a proof of
   concept, so please tell me if some OS'es break bigtime.
+- #003075 - reported by aquanight regarding log block failing silently
+  for non-creatable log files. Now fails with an error message.
2007-05-15 00:38:07 +00:00
stskeeps 0e87ac8aaf Index: Changes
===================================================================
RCS file: /home/cmunk/ircsystems/cvsroot/unreal/Changes,v
retrieving revision 1.1.1.1.2.1.2.1.2.2401
diff -u -r1.1.1.1.2.1.2.1.2.2401 Changes
--- Changes	14 May 2007 19:26:07 -0000	1.1.1.1.2.1.2.1.2.2401
+++ Changes	14 May 2007 20:46:34 -0000
@@ -1695,3 +1695,8 @@
 - More cleanup - this may potentially break some OS'es, but let us catch
   this in testing
 - Fixed CommandAdd prototype a bit
+- Made autoconf detect c++ compiler, now availiable in CXX
+- Made the actual ircd be compiled by c++ compiler (linking, not source)
+- Added m_template.cpp and 'make custommodulecpp MODULEFILE=m_template'
+  ability - meaning, C++ modules for Unreal. This is mostly a proof of
+  concept, so please tell me if some OS'es break bigtime.
2007-05-14 20:47:05 +00:00
stskeeps 548cf88bce - Fixed CommandAdd prototype a bit 2007-05-14 19:26:07 +00:00
stskeeps e597f79e31 Index: Changes
===================================================================
RCS file: /home/cmunk/ircsystems/cvsroot/unreal/Changes,v
retrieving revision 1.1.1.1.2.1.2.1.2.2399
diff -u -r1.1.1.1.2.1.2.1.2.2399 Changes
--- Changes	14 May 2007 14:14:08 -0000	1.1.1.1.2.1.2.1.2.2399
+++ Changes	14 May 2007 14:22:31 -0000
@@ -1692,3 +1692,5 @@
 - Changed IRCCommand::friend into IRCCommand::partner
 - Removed an odd declaration in common.h regarding find_user_link
 - Changed make_virthost prototype to not include a C++ keyword
+- More cleanup - this may potentially break some OS'es, but let us catch
+  this in testing
2007-05-14 14:22:51 +00:00
stskeeps 9ac0513c56 Index: Changes
===================================================================
RCS file: /home/cmunk/ircsystems/cvsroot/unreal/Changes,v
retrieving revision 1.1.1.1.2.1.2.1.2.2398
diff -u -r1.1.1.1.2.1.2.1.2.2398 Changes
--- Changes	14 May 2007 13:41:57 -0000	1.1.1.1.2.1.2.1.2.2398
+++ Changes	14 May 2007 14:13:50 -0000
@@ -1690,3 +1690,5 @@
   This change should not break extban modules, and should need some more extensive testing.
 - Removed some more confusion in source (module IRC commands vs IRC commands)
 - Changed IRCCommand::friend into IRCCommand::partner
+- Removed an odd declaration in common.h regarding find_user_link
+- Changed make_virthost prototype to not include a C++ keyword
2007-05-14 14:14:09 +00:00
stskeeps 69095eb401 - Changed IRCCommand::friend into IRCCommand::partner 2007-05-14 13:41:57 +00:00
aquanight 2c7a3f2e66 Chained extbans support. 2007-05-13 23:09:24 +00:00
stskeeps ee3c5683db - Changed all references to 'class' to 'cclass' (connection class) - to
avoid some keyword confusion and other wacky ideas
2007-05-13 22:38:25 +00:00
wolfsage daf4161e12 Index: Changes
===================================================================
RCS file: /home/cmunk/ircsystems/cvsroot/unreal/Changes,v
retrieving revision 1.1.1.1.2.1.2.1.2.2394
diff -u -r1.1.1.1.2.1.2.1.2.2394 Changes
--- Changes	13 May 2007 16:48:38 -0000	1.1.1.1.2.1.2.1.2.2394
+++ Changes	13 May 2007 17:56:05 -0000
@@ -1666,3 +1666,4 @@
 - A bug was introduced in the patch for #0003139. Patched by WolfSage
 - #0002533 reported by Dodge_Ram, patched by WolfSage, regarding notices
   not being sent when /*line and /shun are used to request stats
+- Removed class.h and minor references to aClass. Patched by WolfSage
2007-05-13 17:56:31 +00:00
wolfsage 1a7c68a72b Index: Changes
===================================================================
RCS file: /home/cmunk/ircsystems/cvsroot/unreal/Changes,v
retrieving revision 1.1.1.1.2.1.2.1.2.2393
diff -u -r1.1.1.1.2.1.2.1.2.2393 Changes
--- Changes	13 May 2007 16:02:53 -0000	1.1.1.1.2.1.2.1.2.2393
+++ Changes	13 May 2007 16:48:33 -0000
@@ -1664,4 +1664,5 @@
 - #0003333 reported by fbi, regarding a unreferenced and duplicate
   m_botmotd in core and modules
 - A bug was introduced in the patch for #0003139. Patched by WolfSage
-
+- #0002533 reported by Dodge_Ram, patched by WolfSage, regarding notices
+  not being sent when /*line and /shun are used to request stats
2007-05-13 16:48:38 +00:00
wolfsage 2c7a00d11f Let's see if it works this time 2007-05-13 16:27:52 +00:00
wolfsage ea630663f9 Index: Changes
===================================================================
RCS file: /home/cmunk/ircsystems/cvsroot/unreal/Changes,v
retrieving revision 1.1.1.1.2.1.2.1.2.2392
diff -u -r1.1.1.1.2.1.2.1.2.2392 Changes
--- Changes	13 May 2007 13:42:27 -0000	1.1.1.1.2.1.2.1.2.2392
+++ Changes	13 May 2007 16:02:50 -0000
@@ -1662,4 +1662,6 @@
 - #0003327 reported by fbi, regarding a unreferenced and duplicate
   m_opermotd/m_motd in core
 - #0003333 reported by fbi, regarding a unreferenced and duplicate
-  m_botmotd in core and modules
\ No newline at end of file
+  m_botmotd in core and modules
+- A bug was introduced in the patch for #0003139. Patched by WolfSage
+
2007-05-13 16:02:53 +00:00
stskeeps 7e87518dda Index: Changes
===================================================================
RCS file: /home/cmunk/ircsystems/cvsroot/unreal/Changes,v
retrieving revision 1.1.1.1.2.1.2.1.2.2391
diff -u -r1.1.1.1.2.1.2.1.2.2391 Changes
--- Changes	10 May 2007 23:14:51 -0000	1.1.1.1.2.1.2.1.2.2391
+++ Changes	13 May 2007 13:41:57 -0000
@@ -1661,3 +1661,5 @@
   about SQUIT in help.conf
 - #0003327 reported by fbi, regarding a unreferenced and duplicate
   m_opermotd/m_motd in core
+- #0003333 reported by fbi, regarding a unreferenced and duplicate
+  m_botmotd in core and modules
\ No newline at end of file
2007-05-13 13:42:27 +00:00
stskeeps b7492458bf - #0003327 reported by fbi, regarding a unreferenced and duplicate
m_opermotd/m_motd in core
2007-05-10 23:14:51 +00:00
stskeeps ae2abd4f50 - #0002549 reported by Ostdeutschland, regarding lacking information
about SQUIT in help.conf
2007-05-04 15:38:11 +00:00
stskeeps ea36514f06 - #0003139 reported by vonitsanet, improving error messages on /connect
when trying to /connect to a server with wildcards (* and ?) in the link
  block. We also raise an error if link::options::autoconnect is used
  together with wildcards in hostname.
2007-05-04 14:59:39 +00:00
stskeeps a59bd57d5b - #0002318 reported by Stealth, regarding small error in oper block
documentation
2007-05-04 14:38:45 +00:00
stskeeps 59e80b2535 - #0002040 reported by aquanight, removing dependancy on +l for +L. This 2007-05-04 14:33:33 +00:00
stskeeps f8d18df440 - #0003313 reported by Stealth, regarding not erroring/warning when me::name
is bigger than HOSTLEN, from now it will error on config read.
2007-05-04 14:21:58 +00:00
stskeeps 97adf80062 +- #0003092 reported by tabrisnet, patched by WolfSage, regarding documentation says
+  link::bind-ip is optional, but not specifying it produces an error
2007-05-03 14:33:22 +00:00
stskeeps e73cb3e8f4 - #0003060 reported by Robby22, patched by WolfSage, regarding remote
rehashing -ssl / -garbage is not Global'd, and a bugfix to an earlier
  WolfSage patch
2007-05-01 08:27:56 +00:00
Bram Matthys 26eca67b82 - Disallowing channels with : in them, it's not worth to risk breakage of 32* to 33*,
services, and other things like odd-extbans and things we haven't thought about,
  all for allowing one silly character.
2007-04-29 22:41:00 +00:00
aquanight 0cd066d62d Fix SVSKILL sending illegal QUIT 2007-04-29 22:19:23 +00:00
stskeeps 5545cc49b9 ? Makefile
? Unreal.patch
? bindir.patch
? cert-swhois.patch.txt
? config.log
? config.settings
? config.status
? config_sslzipdirfix.patch
? dgets.patch
? diff-msg-wildcardfix
? diff-remove-addline
? diff-remove-unused-crap
? ircd.log
? ircd.pid
? ircd.tune
? locop.patch
? locops_see_ulines_in_map.patch
? login_page.php?return=%2Ffile_download.php?file_id=408
? myoper.patch
? pingseconds.patch
? quitreaderrormsg.patch
? readerrorquitmsg.patch
? s_conf.patch
? s_serv.patch
? server.cert.pem
? server.key.pem
? server.req.pem
? ssl.rnd
? tmp
? unreal
? unreal318fix.patch
? unrealircd.conf
? userip.patch
? extras/c-ares
? extras/c-ares-1.3.2
? extras/c-ares.tar
? extras/regexp
? extras/tre-0.7.2
? extras/tre.tar
? include/setup.h
? ircdcron/ircdchk
? src/ircd
? src/version.c
? src/modules/Makefile
? src/modules/m_cycle.cpp
? src/modules/test.cpp
? src/modules/chanmodes/Makefile
Index: Changes
===================================================================
RCS file: /home/cmunk/ircsystems/cvsroot/unreal/Changes,v
retrieving revision 1.1.1.1.2.1.2.1.2.2380
diff -u -r1.1.1.1.2.1.2.1.2.2380 Changes
--- Changes	26 Apr 2007 12:55:16 -0000	1.1.1.1.2.1.2.1.2.2380
+++ Changes	26 Apr 2007 15:18:34 -0000
@@ -1632,3 +1632,6 @@
   Devel.WolfSage.org[192.168.2.97] closed the connection. This would
   probably have caused netsplits to go unnoticed.
 - #0002095 removing /helpop broadcasting
+- #0003298 reported by Stealth patched by WolfSage, regarding KICK now sends
+  proper channel name to other servers, Local KICK now displays proper
+  channel name from other servers
Index: src/modules/m_kick.c
===================================================================
RCS file: /home/cmunk/ircsystems/cvsroot/unreal/src/modules/Attic/m_kick.c,v
retrieving revision 1.1.2.6
diff -u -r1.1.2.6 m_kick.c
--- src/modules/m_kick.c	25 Apr 2007 17:37:05 -0000	1.1.2.6
+++ src/modules/m_kick.c	26 Apr 2007 15:18:35 -0000
@@ -149,10 +149,10 @@
 					goto attack;

 				/* Note for coders regarding oper override:
-				 * always let a remote kick (=from a user on another server) trough or
+				 * always let a remote kick (=from a user on another server) through or
 				 * else we will get desynched. In short this means all the denying should
 				 * always contain a && MyClient(sptr) [or sptr!=cptr] and at the end
-				 * a remote kick should always be allowed (pass trough). -- Syzop
+				 * a remote kick should always be allowed (pass through). -- Syzop
 				 */

 				/* applies to everyone (well except remote/ulines :p) */
@@ -336,12 +336,12 @@
 						/* NORMAL */
 						sendto_channel_butserv(chptr,
 						    sptr, ":%s KICK %s %s :%s",
-						    parv[0], name, who->name, comment);
+						    parv[0], chptr->chname, who->name, comment);
 					}
 				}
 				sendto_serv_butone_token(cptr, parv[0],
 				    MSG_KICK, TOK_KICK, "%s %s :%s",
-				    name, who->name, comment);
+				    chptr->chname, who->name, comment);
 				if (lp)
 				{
 					remove_user_from_channel(who, chptr);
2007-04-26 15:18:40 +00:00
stskeeps 017c87cd4d - #0002095 removing /helpop broadcasting 2007-04-26 12:55:18 +00:00
stskeeps 22c17e5009 Index: Changes
===================================================================
RCS file: /home/cmunk/ircsystems/cvsroot/unreal/Changes,v
retrieving revision 1.1.1.1.2.1.2.1.2.2378
diff -u -r1.1.1.1.2.1.2.1.2.2378 Changes
--- Changes	25 Apr 2007 17:37:04 -0000	1.1.1.1.2.1.2.1.2.2378
+++ Changes	26 Apr 2007 05:32:14 -0000
@@ -1627,3 +1627,8 @@
   variable to determine what should be copied.
 - #0003281 regarding removing masked channels, this will make channels with
   :'s in them not be backwards compatible with 3.2.*, patch by WolfSage
+- #0003301 regarding sending @1 ]:Server %s closed the connection
+  Devel.WolfSage.org[192.168.2.97] instead of @1 ] :Server
+  Devel.WolfSage.org[192.168.2.97] closed the connection. This would
+  probably have caused netsplits to go unnoticed.
+
2007-04-26 05:32:22 +00:00
stskeeps 054a30e061 - #0003281 regarding removing masked channels, this will make channels with
:'s in them not be backwards compatible with 3.2.*, patch by WolfSage
2007-04-25 17:37:05 +00:00
stskeeps 68ed7aee77 - #0003294 reported by Bock, patched by aegis regarding a problem with make
install, that also cleans up the stuff to install a bit, with adding a
  variable to determine what should be copied.
2007-04-25 17:01:44 +00:00
stskeeps c3d01a03de - #0003288 patched by fbi, read error prefix in quit msg if socket error on
read and write for write
2007-04-24 19:43:48 +00:00
stskeeps 07c8d7604f - #0003000 reported and patched by Stealth, regarding Send TKL updates to G snomask 2007-04-24 11:51:55 +00:00
stskeeps 3ca6c4d3bc - Patch by WolfSage to make /rehash -all case insensitive. 2007-04-24 11:47:55 +00:00
stskeeps cf6965e9e2 - #0003223 reported by JasonTik patched by WolfSage, regarding undocumented
max link pass length. This now -WARNS- when there is a password bigger
  than PASSWDLEN.
2007-04-24 11:36:33 +00:00
stskeeps 7e6ca53e67 - #0002301 reported by vonitsanet patched by WolfSage, regarding adding oper
username to /whois, visible if you are an oper
2007-04-24 11:29:08 +00:00
stskeeps 8481b9da1d - Implemented #0002990, changing 432 into: %s 432 %s %s :%s, 2007-04-24 11:21:15 +00:00
stskeeps b6879d2b63 - #0003272 patched by w00t, regarding remove restrictions on NOTICE/PRIVMSG for opers. 2007-04-24 11:04:07 +00:00
stskeeps 4db5289ea6 - #0003232 reported by vonitsanet patched by djGrr, regarding /map is not shown u:lined servers to local opers and /links does. 2007-04-24 10:59:02 +00:00
stskeeps 1e0c422213 - #0002685 reported by w00t, patched by WolfSage, regarding useless if () in m_help.c 2007-04-24 10:53:20 +00:00
stskeeps c9ea9a7251 - #0002846 reported by alex323, patched by WolfSage, regarding local ircop cannot issue CLOSE command 2007-04-24 10:46:16 +00:00
stskeeps ad9c35029e - #0003287 reported and patched by satmd regarding 318 end of /whois list
breaks RFC
- Fixed a typo in #003091 related patch
2007-04-24 10:41:36 +00:00
stskeeps f21c338460 - #0003216 patched by djGrrr, regarding when you run ./Config for a second
time after settings are saved in config.settings, the SSLDIR and ZIPLINKSDIR
  defaults are basically completely ignored.
2007-04-24 10:20:47 +00:00
stskeeps d776eb39e2 - #0003091,#0003068,#003290 reported by Bock, aegis, WolfSage and patched by aegis, regarding
Makefile.in includes networks* files/dirs, Problems when specifying
  different directory for binary in Config, error on 'make install' if path
  to binary not exist
2007-04-24 10:16:48 +00:00
stskeeps 49e4360cde - #0003212 patched by Grunt, regarding /userip <someone_else> seemingly
shows my (cloaked) IP
2007-04-24 10:09:57 +00:00
stskeeps e136f05517 - #0003285 patched by w00t, removing add_local_domain and other useless
stuff
2007-04-24 09:43:02 +00:00
stskeeps 8650bb40f9 Index: Changes
===================================================================
RCS file: /home/cmunk/ircsystems/cvsroot/unreal/Changes,v
retrieving revision 1.1.1.1.2.1.2.1.2.2360
diff -u -r1.1.1.1.2.1.2.1.2.2360 Changes
--- Changes	24 Apr 2007 08:54:04 -0000	1.1.1.1.2.1.2.1.2.2360
+++ Changes	24 Apr 2007 09:03:21 -0000
@@ -1591,3 +1591,6 @@
 - #0003146 reported by vonitsanet, regarding Modes O,S (etc) not rejected for modes-on-connect
   fixed by djGrrr
 - #0003289 suggested and patched by fbi, adding (Ping timeout: 182 seconds)
+- #0002932 reported by therock247uk, patched by WolfSage, regarding Local
+  opers can /chghost /chgident /chgname on someone thats on another server on
+  the network
2007-04-24 09:03:26 +00:00
stskeeps e979619d0c Index: Changes
===================================================================
RCS file: /home/cmunk/ircsystems/cvsroot/unreal/Changes,v
retrieving revision 1.1.1.1.2.1.2.1.2.2359
diff -u -r1.1.1.1.2.1.2.1.2.2359 Changes
--- Changes	18 Apr 2007 13:40:02 -0000	1.1.1.1.2.1.2.1.2.2359
+++ Changes	24 Apr 2007 08:53:59 -0000
@@ -1590,3 +1590,4 @@
   allows cloakkey 1 and 3 to be identical.
 - #0003146 reported by vonitsanet, regarding Modes O,S (etc) not rejected for modes-on-connect
   fixed by djGrrr
+- #0003289 suggested and patched by fbi, adding (Ping timeout: 182 seconds)
2007-04-24 08:54:05 +00:00
stskeeps 353e366445 ? Makefile
? config.log
? config.settings
? config.status
? dgets.patch
? diff-remove-addline
? ircd.log
? ircd.pid
? ircd.tune
? login_page.php?return=%2Ffile_download.php?file_id=408
? server.cert.pem
? server.key.pem
? server.req.pem
? ssl.rnd
? tmp
? unreal
? unrealircd.conf
? extras/c-ares
? extras/c-ares-1.3.2
? extras/c-ares.tar
? extras/regexp
? extras/tre-0.7.2
? extras/tre.tar
? include/setup.h
? ircdcron/ircdchk
? src/ircd
? src/version.c
? src/modules/Makefile
? src/modules/m_cycle.cpp
? src/modules/test.cpp
? src/modules/chanmodes/Makefile
Index: Changes
===================================================================
RCS file: /home/cmunk/ircsystems/cvsroot/unreal/Changes,v
retrieving revision 1.1.1.1.2.1.2.1.2.2358
diff -u -r1.1.1.1.2.1.2.1.2.2358 Changes
--- Changes	18 Apr 2007 13:21:03 -0000	1.1.1.1.2.1.2.1.2.2358
+++ Changes	18 Apr 2007 13:38:36 -0000
@@ -1586,5 +1586,7 @@
 - #0002420 reported by KnuX fixed by WolfSage
 - #0003147 reported by vonitsanet, fixed by djGrrr regarding making
   spamfilters work in case of /setname
-- #0002157 repoted by Dukat, fixed by djGrrr regarding cloaking module
+- #0002157 reported by Dukat, fixed by djGrrr regarding cloaking module
   allows cloakkey 1 and 3 to be identical.
+- #0003146 reported by vonitsanet, regarding Modes O,S (etc) not rejected for modes-on-connect
+  fixed by djGrrr
Index: src/s_conf.c
===================================================================
RCS file: /home/cmunk/ircsystems/cvsroot/unreal/src/s_conf.c,v
retrieving revision 1.1.1.1.6.1.2.374
diff -u -r1.1.1.1.6.1.2.374 s_conf.c
--- src/s_conf.c	16 Apr 2007 17:05:47 -0000	1.1.1.1.6.1.2.374
+++ src/s_conf.c	18 Apr 2007 13:38:47 -0000
@@ -6940,23 +6940,17 @@
 			}
 		}
 		else if (!strcmp(cep->ce_varname, "modes-on-connect")) {
+			char *p;
 			CheckNull(cep);
 			CheckDuplicate(cep, modes_on_connect, "modes-on-connect");
-			if (strchr(cep->ce_vardata, 'z'))
-			{
-				config_error("%s:%i: set::modes-on-connect may not have +z",
-					cep->ce_fileptr->cf_filename, cep->ce_varlinenum);
-				errors++;
-			}
+			for (p = cep->ce_vardata; *p; p++)
+				if (strchr("oOaANCrzSgHhqtW", *p))
+				{
+					config_error("%s:%i: set::modes-on-connect may not include mode '%c'",
+						cep->ce_fileptr->cf_filename, cep->ce_varlinenum, *p);
+					errors++;
+				}
 			templong = (long) set_usermode(cep->ce_vardata);
-			if (templong & UMODE_OPER)
-			{
-				config_error("%s:%i: set::modes-on-connect contains +o",
-					cep->ce_fileptr->cf_filename,
-					cep->ce_varlinenum);
-				errors++;
-				continue;
-			}
 		}
 		else if (!strcmp(cep->ce_varname, "modes-on-join")) {
 			char *c;
2007-04-18 13:40:02 +00:00
stskeeps 0f38bad303 - #0002157 repoted by Dukat, fixed by djGrrr regarding cloaking module
allows cloakkey 1 and 3 to be identical.
2007-04-18 13:21:04 +00:00
stskeeps 3897fada86 Index: Changes
===================================================================
RCS file: /home/cmunk/ircsystems/cvsroot/unreal/Changes,v
retrieving revision 1.1.1.1.2.1.2.1.2.2356
diff -u -r1.1.1.1.2.1.2.1.2.2356 Changes
--- Changes	16 Apr 2007 17:21:19 -0000	1.1.1.1.2.1.2.1.2.2356
+++ Changes	17 Apr 2007 17:21:10 -0000
@@ -1583,4 +1583,6 @@
 - #0002844 reported by RandomNumber: Spamfilter bawks on capitalizing actions
 - #0002404 reported by White_Magic, patched by w00t, removing /addline
   (which the bug report wasnt about)
-- #0002420 reported by KnuX fixed by .. not sure
+- #0002420 reported by KnuX fixed by WolfSage
+- #0003147 reported by vonitsanet, fixed by djGrrr regarding making
+  spamfilters work in case of /setname
2007-04-17 17:21:22 +00:00
stskeeps b61dee6561 - #0002420 reported by KnuX fixed by .. not sure 2007-04-16 17:21:19 +00:00
stskeeps 9c23d3d80d Index: Changes
===================================================================
RCS file: /home/cmunk/ircsystems/cvsroot/unreal/Changes,v
retrieving revision 1.1.1.1.2.1.2.1.2.2354
diff -u -r1.1.1.1.2.1.2.1.2.2354 Changes
--- Changes	16 Apr 2007 16:47:15 -0000	1.1.1.1.2.1.2.1.2.2354
+++ Changes	16 Apr 2007 17:05:37 -0000
@@ -1581,3 +1581,5 @@
 - #0003159 reported by aegis and Bock, regarding typos in documentation
 - #0002560 reported and patched by w00t, regarding a typo in /SAMODE
 - #0002844 reported by RandomNumber: Spamfilter bawks on capitalizing actions
+- #0002404 reported by White_Magic, patched by w00t, removing /addline
+  (which the bug report wasnt about)
2007-04-16 17:05:48 +00:00
stskeeps e62959f1fe - #0002844 reported by RandomNumber: Spamfilter bawks on capitalizing actions 2007-04-16 16:47:15 +00:00
stskeeps f332d8754a Index: Changes
===================================================================
RCS file: /home/cmunk/ircsystems/cvsroot/unreal/Changes,v
retrieving revision 1.1.1.1.2.1.2.1.2.2352
diff -u -r1.1.1.1.2.1.2.1.2.2352 Changes
--- Changes	16 Apr 2007 16:19:06 -0000	1.1.1.1.2.1.2.1.2.2352
+++ Changes	16 Apr 2007 16:33:46 -0000
@@ -1579,3 +1579,4 @@
 - #0002842 reported by Zell, fixed by WolfSage regarding glitch in rehash
   output glitch
 - #0003159 reported by aegis and Bock, regarding typos in documentation
+- #0002560 reported and patched by w00t, regarding a typo in /SAMODE
2007-04-16 16:33:50 +00:00
stskeeps a1e8de34f8 - #0003159 reported by aegis and Bock, regarding typos in documentation 2007-04-16 16:19:07 +00:00
stskeeps ebab7885c8 - #0002842 reported by Zell, fixed by WolfSage regarding glitch in rehash
output glitch
2007-04-16 16:11:50 +00:00
stskeeps 2e993427c6 Index: Changes
===================================================================
RCS file: /home/cmunk/ircsystems/cvsroot/unreal/Changes,v
retrieving revision 1.1.1.1.2.1.2.1.2.2349
diff -u -r1.1.1.1.2.1.2.1.2.2349 Changes
--- Changes	15 Apr 2007 22:42:35 -0000	1.1.1.1.2.1.2.1.2.2349
+++ Changes	16 Apr 2007 06:36:23 -0000
@@ -1574,3 +1574,5 @@
 - Fixed #0003171 reported by danieldg (typo)
 - #0003118 reported by vonitsanet (typo in ADDOMOTD), fixed by WolfSage
 - #0003272 reported and fixed by WolfSage (addmotd, addomotd in help.conf)
+- #0003274 reported by Stealth regarding using actual nick and not given
+  nick in SAPART
2007-04-16 06:36:26 +00:00
stskeeps 7778376e80 Index: Changes
===================================================================
RCS file: /home/cmunk/ircsystems/cvsroot/unreal/Changes,v
retrieving revision 1.1.1.1.2.1.2.1.2.2348
diff -u -r1.1.1.1.2.1.2.1.2.2348 Changes
--- Changes	15 Apr 2007 22:21:09 -0000	1.1.1.1.2.1.2.1.2.2348
+++ Changes	15 Apr 2007 22:42:31 -0000
@@ -1573,3 +1573,4 @@
 MOTDs
 - Fixed #0003171 reported by danieldg (typo)
 - #0003118 reported by vonitsanet (typo in ADDOMOTD), fixed by WolfSage
+- #0003272 reported and fixed by WolfSage (addmotd, addomotd in help.conf)
2007-04-15 22:42:35 +00:00
stskeeps 6efe4637a8 Index: Changes
===================================================================
RCS file: /home/cmunk/ircsystems/cvsroot/unreal/Changes,v
retrieving revision 1.1.1.1.2.1.2.1.2.2347
diff -u -r1.1.1.1.2.1.2.1.2.2347 Changes
--- Changes	15 Apr 2007 21:29:31 -0000	1.1.1.1.2.1.2.1.2.2347
+++ Changes	15 Apr 2007 22:21:05 -0000
@@ -1572,3 +1572,4 @@
 - Fixed #0003002 reported by DelGurth, fixed by WolfSage regarding trailing \'s in
 MOTDs
 - Fixed #0003171 reported by danieldg (typo)
+- #0003118 reported by vonitsanet (typo in ADDOMOTD), fixed by WolfSage
2007-04-15 22:21:10 +00:00
stskeeps d2fef70316 Index: Changes
===================================================================
RCS file: /home/cmunk/ircsystems/cvsroot/unreal/Changes,v
retrieving revision 1.1.1.1.2.1.2.1.2.2346
diff -u -r1.1.1.1.2.1.2.1.2.2346 Changes
--- Changes	15 Apr 2007 15:34:42 -0000	1.1.1.1.2.1.2.1.2.2346
+++ Changes	15 Apr 2007 21:29:27 -0000
@@ -1568,4 +1568,7 @@
 - Patch to remove lusers.c and change from bzero to memset in ircd.c
   by w00t
 - Patch to remove curses leftover (I am going to assume SIGWINCH isn't a
-  problem) by w00t
\ No newline at end of file
+  problem) by w00t
+- Fixed #0003002 reported by DelGurth, fixed by WolfSage regarding trailing \'s in
+MOTDs
+- Fixed #0003171 reported by danieldg (typo)
2007-04-15 21:29:31 +00:00
stskeeps e41424fdff - Patch to remove lusers.c and change from bzero to memset in ircd.c 2007-04-15 15:34:42 +00:00
stskeeps fbe0c28ec5 *** empty log message *** 2007-04-15 15:34:16 +00:00
stskeeps cd298bd951 ? Makefile
? config.log
? config.settings
? config.status
? ircd.log
? ircd.pid
? ircd.tune
? server.cert.pem
? server.key.pem
? server.req.pem
? ssl.rnd
? tmp
? unreal
? unrealircd.conf
? extras/c-ares
? extras/c-ares-1.3.2
? extras/c-ares.tar
? extras/regexp
? extras/tre-0.7.2
? extras/tre.tar
? include/setup.h
? ircdcron/ircdchk
? src/ircd
? src/version.c
? src/modules/Makefile
? src/modules/chanmodes/Makefile
Index: Changes
===================================================================
RCS file: /home/cmunk/ircsystems/cvsroot/unreal/Changes,v
retrieving revision 1.1.1.1.2.1.2.1.2.2344
diff -u -r1.1.1.1.2.1.2.1.2.2344 Changes
--- Changes	15 Apr 2007 09:45:01 -0000	1.1.1.1.2.1.2.1.2.2344
+++ Changes	15 Apr 2007 15:33:53 -0000
@@ -1565,4 +1565,7 @@
  authentication for services, you can probably use the code in here to do it
  quite simple.
  .. please mind any errors, it's been years since I (Stskeeps) last committed to here :)
-
+- Patch to remove lusers.c and change from bzero to memset in ircd.c
+  by w00t
+- Patch to remove curses leftover (I am going to assume SIGWINCH isn't a
+  problem) by w00t
Index: include/config.h
===================================================================
RCS file: /home/cmunk/ircsystems/cvsroot/unreal/include/config.h,v
retrieving revision 1.1.1.1.6.1.2.102
diff -u -r1.1.1.1.6.1.2.102 config.h
--- include/config.h	16 Dec 2006 16:56:31 -0000	1.1.1.1.6.1.2.102
+++ include/config.h	15 Apr 2007 15:33:54 -0000
@@ -535,16 +535,6 @@
  * whatever else.  -4 allows "safety" margin of 1 and space reserved.
  */
 #define	MAXCLIENTS	(MAXCONNECTIONS-4)
-#ifdef HAVECURSES
-# define DOCURSES
-#else
-# undef DOCURSES
-#endif
-#ifdef HAVETERMCAP
-# define DOTERMCAP
-#else
-# undef DOTERMCAP
-#endif
 # define stricmp strcasecmp
 # define strnicmp strncasecmp
 #if defined(CLIENT_FLOOD)
Index: include/proto.h
===================================================================
RCS file: /home/cmunk/ircsystems/cvsroot/unreal/include/Attic/proto.h,v
retrieving revision 1.1.2.9
diff -u -r1.1.2.9 proto.h
--- include/proto.h	22 Jun 2005 22:55:45 -0000	1.1.2.9
+++ include/proto.h	15 Apr 2007 15:33:54 -0000
@@ -26,9 +26,6 @@
 int  sendmodeto_one(aClient *cptr, char *from, char *name, char *mode, char *param, TS creationtime);
 void make_cmodestr(void);

-/* lusers.c */
-void init_ircstats(void);
-
 /* match.c */
 char *collapse(char *pattern);

Index: include/struct.h
===================================================================
RCS file: /home/cmunk/ircsystems/cvsroot/unreal/include/struct.h,v
retrieving revision 1.1.1.1.6.1.2.274
diff -u -r1.1.1.1.6.1.2.274 struct.h
--- include/struct.h	13 Mar 2007 02:18:31 -0000	1.1.1.1.6.1.2.274
+++ include/struct.h	15 Apr 2007 15:33:54 -0000
@@ -681,13 +681,6 @@
 /* blah */
 #define IsSkoAdmin(sptr) (IsAdmin(sptr) || IsNetAdmin(sptr) || IsSAdmin(sptr))

-/*
- * defines for curses in client
- */
-#define	DUMMY_TERM	0
-#define	CURSES_TERM	1
-#define	TERMCAP_TERM	2
-
 /* Dcc deny types (see src/s_extra.c) */
 #define DCCDENY_HARD	0
 #define DCCDENY_SOFT	1
Index: src/Makefile
===================================================================
RCS file: /home/cmunk/ircsystems/cvsroot/unreal/src/Makefile,v
retrieving revision 1.1.1.1.6.1.2.46
diff -u -r1.1.1.1.6.1.2.46 Makefile
--- src/Makefile	5 Aug 2006 13:23:29 -0000	1.1.1.1.6.1.2.46
+++ src/Makefile	15 Apr 2007 15:33:54 -0000
@@ -22,7 +22,7 @@
 CC = danger will robinson

 OBJS=timesynch.o res.o s_bsd.o auth.o aln.o channel.o cloak.o crule.o dbuf.o \
-	events.o fdlist.o hash.o help.o ircd.o ircsprintf.o list.o lusers.o \
+	events.o fdlist.o hash.o help.o ircd.o ircsprintf.o list.o \
 	match.o modules.o packet.o parse.o s_auth.o \
 	s_conf.o s_debug.o s_err.o s_extra.o s_kline.o \
 	s_misc.o s_numeric.o s_serv.o s_svs.o $(STRTOUL) socket.o \
@@ -171,9 +171,6 @@
 list.o: list.c $(INCLUDES)
 	$(CC) $(CFLAGS) -c list.c

-lusers.o: lusers.c $(INCLUDES)
-	$(CC) $(CFLAGS) -c lusers.c
-
 res.o: res.c $(INCLUDES) ../include/res.h
 	$(CC) $(CFLAGS) -c res.c

Index: src/ircd.c
===================================================================
RCS file: /home/cmunk/ircsystems/cvsroot/unreal/src/ircd.c,v
retrieving revision 1.1.1.1.6.1.2.208
diff -u -r1.1.1.1.6.1.2.208 ircd.c
--- src/ircd.c	27 Jan 2007 15:45:41 -0000	1.1.1.1.6.1.2.208
+++ src/ircd.c	15 Apr 2007 15:33:55 -0000
@@ -103,7 +103,7 @@
 char REPORT_DO_DNS[256], REPORT_FIN_DNS[256], REPORT_FIN_DNSC[256],
     REPORT_FAIL_DNS[256], REPORT_DO_ID[256], REPORT_FIN_ID[256],
     REPORT_FAIL_ID[256];
-extern ircstats IRCstats;
+ircstats IRCstats;
 aClient me;			/* That's me */
 MODVAR char *me_hash;
 aClient *client = &me;		/* Pointer to beginning of Client list */
@@ -315,11 +315,6 @@
 #ifndef HAVE_RELIABLE_SIGNALS
 	(void)signal(SIGALRM, dummy);
 	(void)signal(SIGPIPE, dummy);
-#ifndef HPUX			/* Only 9k/800 series require this, but don't know how to.. */
-# ifdef SIGWINCH
-	(void)signal(SIGWINCH, dummy);
-# endif
-#endif
 #else
 # ifdef POSIX_SIGNALS
 	struct sigaction act;
@@ -329,14 +324,8 @@
 	(void)sigemptyset(&act.sa_mask);
 	(void)sigaddset(&act.sa_mask, SIGALRM);
 	(void)sigaddset(&act.sa_mask, SIGPIPE);
-#  ifdef SIGWINCH
-	(void)sigaddset(&act.sa_mask, SIGWINCH);
-#  endif
 	(void)sigaction(SIGALRM, &act, (struct sigaction *)NULL);
 	(void)sigaction(SIGPIPE, &act, (struct sigaction *)NULL);
-#  ifdef SIGWINCH
-	(void)sigaction(SIGWINCH, &act, (struct sigaction *)NULL);
-#  endif
 # endif
 #endif
 }
@@ -1098,11 +1087,11 @@
 #else
 	WSAStartup(wVersionRequested, &wsaData);
 #endif
-	bzero((char *)&me, sizeof(me));
-	bzero(&StatsZ, sizeof(StatsZ));
+	memset(&me, 0, sizeof(me));
+	memset(&StatsZ, 0, sizeof(StatsZ));
 	setup_signals();
 	charsys_reset();
-	init_ircstats();
+	memset(&IRCstats, 0, sizeof(IRCstats));
 #ifdef USE_LIBCURL
 	url_init();
 #endif
@@ -1927,10 +1916,6 @@
 	(void)sigemptyset(&act.sa_mask);
 	(void)sigaddset(&act.sa_mask, SIGPIPE);
 	(void)sigaddset(&act.sa_mask, SIGALRM);
-# ifdef	SIGWINCH
-	(void)sigaddset(&act.sa_mask, SIGWINCH);
-	(void)sigaction(SIGWINCH, &act, NULL);
-# endif
 	(void)sigaction(SIGPIPE, &act, NULL);
 	act.sa_handler = dummy;
 	(void)sigaction(SIGALRM, &act, NULL);
@@ -1947,13 +1932,7 @@
 #else
 # ifndef	HAVE_RELIABLE_SIGNALS
 	(void)signal(SIGPIPE, dummy);
-#  ifdef	SIGWINCH
-	(void)signal(SIGWINCH, dummy);
-#  endif
 # else
-#  ifdef	SIGWINCH
-	(void)signal(SIGWINCH, SIG_IGN);
-#  endif
 	(void)signal(SIGPIPE, SIG_IGN);
 # endif
 	(void)signal(SIGALRM, dummy);
2007-04-15 15:33:59 +00:00
stskeeps 56958c9545 Index: Changes
===================================================================
RCS file: /home/cmunk/ircsystems/cvsroot/unreal/Changes,v
retrieving revision 1.1.1.1.2.1.2.1.2.2343
diff -u -r1.1.1.1.2.1.2.1.2.2343 Changes
--- Changes	6 Apr 2007 22:17:27 -0000	1.1.1.1.2.1.2.1.2.2343
+++ Changes	15 Apr 2007 09:44:58 -0000
@@ -1546,3 +1546,23 @@
 - Added include::bind-ip to bind an ip to download in case of having defined LIBCURL, suggested by djGrrr (#00003185).
 - oper::from::userhost now accepts a CIDR address (eg *me@1.2.3.0/24), requested by djGrrr (#0003234).
 - Corrected a couple of grammar errors in WebTV whois (/msg IRC WHOIS nick) output, reported by CuLpA (#0003244).
+- Implemented #0003254 - Auth type 'sslcertfingerprint-sha1', suggested by
+  djGrr. There are reservations regarding the security of this, but for most
+   purposes it should be okay. Cryptographically minded people may comment.
+  This may also be used to allow remote included opers with SSL certificate
+  fingerprints as we cannot as of yet remote include client certificates
+  (#0002832, suggested by Stealth)
+  Example use:
+  $ openssl x509 -in cert.pem -noout -sha1 -fingerprint
+   (where cert.pem is the oper's/server's/etc SSL client certificate)
+  SHA1 Fingerprint=FA:A6:A3:42:95:34:15:68:26:35:40:18:8D:50:68:D4:15:C8:12:9E
+
+ translating into this auth block:
+ password "FA:A6:A3:42:95:34:15:68:26:35:40:18:8D:50:68:D4:15:C8:12:9E" { sslcertfingerprint-sha1; };
+ (the auth code is case sensitive).
+
+ If anyone is interested in making a module for SSL client certificate
+ authentication for services, you can probably use the code in here to do it
+ quite simple.
+ .. please mind any errors, it's been years since I (Stskeeps) last committed to here :)
+
2007-04-15 09:45:01 +00:00
aquanight 10bf77903f Fixed a couple of webtv whois grammar errors. 2007-04-06 22:17:27 +00:00
aquanight ce5303499d implement #3234, oper cidr 2007-03-13 02:18:32 +00:00
trocotronic 49ec84f55e Added include::bind-ip 2007-03-08 16:34:48 +00:00
trocotronic 5c83aeb8cb Added class::options::notargetlag 2007-03-03 19:51:59 +00:00
aquanight 852e074b8d Fixed serverprotocol.html typo. 2007-02-19 19:33:57 +00:00
Bram Matthys 50241b173a maths is teh hard 2007-02-16 14:09:16 +00:00
Bram Matthys 454aa172f6 - Fixed file descriptor leakage on rehash. This resulted in [number of modules loaded]
file descriptors being leaked upon every /REHASH.
  So if you, for example, had 3 modules loaded and rehashed 30 times, it would cause
  the ircd to consume 60 useless file descriptors (which often means 60 less file
  descriptors being available to clients).
2007-02-16 14:06:15 +00:00
Bram Matthys 29a78afbf8 - Changed password length from 32 to 48, is allocated dynamically anyway. 2007-02-06 15:34:47 +00:00
aquanight 46cfa34bd9 /rehash -dns/-ssl documented 2007-02-02 18:15:59 +00:00
trocotronic 067416d76a Made ./unreal configtest 2007-01-27 15:45:41 +00:00
aquanight 8ffb35563d Added extended ban ~j. 2007-01-25 17:20:22 +00:00
trocotronic 79b741feaf Fixed typo 2007-01-25 15:35:26 +00:00
trocotronic b637e33d7e Booting ircd extended to 5 secs 2007-01-25 15:34:44 +00:00
Bram Matthys 9004ddea06 - Fixed SAPART causing a flood of notices from all servers, fun. Reported and patch
provided by djGrrr.
2007-01-22 13:02:11 +00:00
Bram Matthys 133adeed90 - Fixed SDESC not messaging +s +s clients on local server when it is used, reported by
dre, patch provided by djGrrr.
2007-01-22 12:51:44 +00:00
Bram Matthys fd78f47031 - Added ability to enable "no fake lag" for a user through through services via the
new commands SVSNOLAG/SVS2NOLAG (syntax: SVSNOLAG [+|-] NickName). Obviously, care
  should be taken when giving such access to a user since he/she will be able to flood
  at full speed and could possibly take down the entire IRCd (well, everyone on it).
  Suggested by avb, coded by djGrrr.
2007-01-22 12:47:32 +00:00
Bram Matthys 5faee2f717 - /WHOIS now shows the ident of local users - if ident enabled and they had an ident -
instead of always "*" in the 'is connecting from' line. Suggested and patch provided
  by djGrrr (#0002888).
  NOTE: This needs checking, this patch changed the 'unknown' stuff to ~.. doublecheck
  the allow block and everything.. didn't we use unknown@ there sometimes? I'll leave this
  to someone else...
2007-01-22 12:37:10 +00:00
Bram Matthys 443149f01a - Fixed bug where SVSO was unable to give various operflags such as q, d, X, reported
by prodigy2k7 (#0003203).
2007-01-22 12:32:57 +00:00
aquanight ff81c7e846 Italic fix to serverprotocol 2006-12-28 16:35:32 +00:00
aquanight 4aeb5b7df7 Fixed description of STATS regarding server senders. 2006-12-23 22:17:53 +00:00
aquanight 6687fc0c96 Added TOKEN and STATS to serverprotocol.html. 2006-12-23 20:02:17 +00:00
Bram Matthys 38088f0e79 - Showing even more SSL server errors now, hopefully all of them, also changed the
error notice a bit so it's much more like non-SSL server link errors. Reported by
  vonitsanet (#0003150).
2006-12-19 19:39:32 +00:00
Bram Matthys 4b1a0f9771 - Fixed possible crash with using quarantine, reported by Sephiroth (#0003151). 2006-12-19 12:57:25 +00:00
trocotronic 88ae0eb161 - CRC32 is ripped out reported by Trocotronic (#0002963).
- DOMAINNAME is removed from ./Config reported by satmd (#0003063).
- THROTTLING and FAST_BADWORD_REPLACE cannot be configured in config.h reported by raymondvrolijk (#0002937).
- /sqline supports sqlining for channels. #*ble* will forbid channels and *ble* will forbid only nicks (not channels).
  Forbid message showed by numeric ERR_FORBIDDENCHANNEL (448) reported by aragon and Jase (#0000935, #0003012).
- conf_deny NOTICE message is replace by ERR_FORBIDDENCHANNEL.
2006-12-16 16:56:32 +00:00
Bram Matthys 22265ef4b0 - Post-3.2.5 CVS-only bug: Fixed spamfilter on user target not working properly when
changing nicks (was still trying to match on the old nick), reported by vonitsanet
  (#0003143).
2006-12-12 17:26:19 +00:00
Bram Matthys f4d6a50004 - Fixed SSL bug where an outgoing connect (either autoconnect, or /connect), would not
show any error message when it failed. Error information has also been slightly
  improved. Reported by vonitsanet (#0003138).
2006-12-06 14:34:11 +00:00
Bram Matthys 3adea60d91 - Improved detection of bad set::modes-on-oper and oper::modes, now rejecting things like
'o', 'z', and more.
- Fix from above fixes an /OPER announce problem reported by Bock (#0003135).
2006-12-05 13:51:41 +00:00
Bram Matthys 4d0bff1244 that's better... (again fix for previous) 2006-12-03 22:51:40 +00:00
Bram Matthys e020a53a47 - Renamed all chanmodule modules <-- now updated makefile.in ;P 2006-12-03 22:34:01 +00:00
Bram Matthys 31944265d5 - Now actually committed +G (different file, see next) ;)
- Renamed all chanmodule modules:
  +G = wordcensor
  +j = jointhrottle
  +Q = nokicks
  +f = chanflood
2006-12-03 21:16:58 +00:00
Bram Matthys 22c4007ee2 - Modulized channel mode +G (src/modules/chanmodes/chmode_upG.c) 2006-12-03 20:49:56 +00:00
Bram Matthys 2043609896 - Tagged chanmode modules as official (oops..) 2006-12-03 19:50:06 +00:00
Bram Matthys 893b1fb5b7 - Added donators since 3.2.5
- Setting set::pingpong-warning didn't work, reported by vonitsanet, patch supplied by
  avb (#0003131).
2006-12-01 15:43:18 +00:00
aquanight fae0aeee4c serverprotocol.html 3.2.6 info 2006-11-29 19:59:51 +00:00
Bram Matthys 95ba27b262 - fix for above (c-ares win32 lib) 2006-11-26 14:37:34 +00:00
Bram Matthys 65ad12e105 updated changelog comment, giving more credit
- Made SAPART work for mulitple channels, just like SAJOIN. Reported by Snake and
  SeigHart, patch provided by Bock (#0003064). This also fixes SAPART now being
  announced to all opers globally, just like SAJOIN.
2006-11-26 12:54:16 +00:00
Bram Matthys 39db232a0b - c-ares resolver: upgrade to 1.3.2. 2006-11-25 19:40:29 +00:00
Bram Matthys 7fa2109d8d FIXFORFIX
- Fixed bug where omitting class::connfreq would result in a huge connection attempt
  flood when autoconnect was enabled. We now set class::connfreq to 60 if it's not
  specified. Reported by Milliways (#0003018).
2006-11-25 16:48:57 +00:00
Bram Matthys f007f038a3 spelllllingg... 2006-11-25 16:43:03 +00:00
Bram Matthys c99189bb09 - Fixed bug where ommitting class::connfreq would not give a config error, and would
cause a huge connection attempt flood when autoconnect was enabled. Reported by
  Milliways (#0003018).
2006-11-25 16:42:34 +00:00
Bram Matthys 614b53165e - Fixed compile bug on Solaris due to missing INADDR_NONE, fix provided by Schak
(#0003125).
2006-11-24 21:21:33 +00:00
Bram Matthys 238a1c0c18 - Fixed charsys config error message sometimes saying stuff about set::accept-language,
which should be set::allowed-nickchars (the former does not exist). Reported and
  patch provided by avb (#0003122).
2006-11-24 21:07:23 +00:00
Bram Matthys e2f782743e - Added information about extbans to help.conf (/HELPOP ?EXTBANS). Patch from Bock
(#0003113).
- Made SAPART work for mulitple channels, just like SAJOIN. Patch provided by Bock
  (#0003064). This also fixes SAPART now being announced to all opers globally, just
  like SAJOIN.
- Finally fixed /RESTART issue on windows for good, should now always restart correctly.
  Patch provided by BuHHunyx and Bock (#0002734).
2006-11-24 20:56:13 +00:00
Bram Matthys 547978596a - Removed all files in networks/, the directory itself may stay for now. Those files were
old, newest one dating back to 2002 (most of them 2001)... much better if this is handled
  internally by the networks themselves anyway (and then they can put cloak keys in their
  network file too, which they now can't ;p). I wonder if someone actually still used it anyway.
2006-11-23 19:41:50 +00:00
aquanight 6d2ae0e5c4 serverprotocol.html fixes 2006-11-22 21:38:24 +00:00
Bram Matthys 42ef5be6ac - Changed some minor Makefile stuff
- Fixed belarussian-w1251 charset.. accidently copied a "'" which caused an internal
  error.
2006-11-22 15:38:22 +00:00
aquanight 24ffc94440 Improved link::hub/leaf/leafdepth description + leafdepth typo fix. 2006-11-16 22:22:44 +00:00
Bram Matthys c9bb7e3e17 - Fixed a couple of typos and other one-line-text fixes at various places: reported by
aegis (#3081), DanPMK (#2818), tabrisnet (#2974, #2970, #2467), penna (#2721),
  Brad (#2488), vonitsanet (#2467).
- Made OpenSSL version dynamic, reported by buildsmart (#0002975).
- Rejecting fake +z modes in conf, reported by rve (#0002532).
2006-11-12 21:50:50 +00:00
Bram Matthys df0588531f - /INVITE's from people on the silence list are now (silently) ignored, suggested by
White_Magic (#0002478).
2006-11-12 20:27:37 +00:00
Bram Matthys 7bf4127108 - Snomask N: Don't show nickchanges for U-lines, reported by seneces (#0002636).
- Fixed set::dns::bind-ip directive seen as duplicate, reported by aegis (#0003074).
- set::dns::* block is now no longer mandatory. All info has always been read from
  /etc/resolv.conf (*NIX) or the registry (Win32), and the set::dns block is ignored
  (except for set::dns::bind-ip, but that's a special case). Suggested by many including
  djGrrr to make things slightly more logical (#0003019).
- As a consequence of the above, set::dns blocks were removed from doc/example*conf.
- Added two more characters to Catalan charset, reported by rmh (#0002995).
- Added set::pingpong-warning [yes|no] which decides whether to send the "** If you are
  having problems connecting due to ping timeouts, please type /quote pong .." message
  to each client when NOSPOOF is enabled (usually on Win32). The default is NO.
  Previously this message was always sent if NOSPOOF was on, which often caused
  confusion among users. The message was intended for non-confirming clients, but these
  should be fixed by now, and those that were not fixed (self-made bots/etc) did often
  not understand the message anyway. Anyway, you can still turn it on ;). (#2680).
2006-11-12 19:41:53 +00:00
Bram Matthys 21ab148d31 - Fixed 'SVSMOTD !' not deleting the services motd in memory, reported by avb (#0003110). 2006-11-12 18:59:43 +00:00
Bram Matthys 594644dd62 - Cutoff webtv whois at MAXTARGETS (#0003004). 2006-11-11 20:25:31 +00:00
Bram Matthys 6930f843c3 - Made win32 compile again, reported by Bock (#0003106). 2006-11-05 20:13:22 +00:00
Bram Matthys 8ef42da438 - Moved a couple isatty() calls to DEBUGMODE (#0002945). 2006-11-05 00:29:01 +00:00
Bram Matthys 7f7e8496b2 - Win32: Fixed a few compiler warnings, suggested by Zell (#0002890). 2006-11-05 00:21:23 +00:00
Bram Matthys be0a8ab801 - If the 'crypt' algorithm is used, then passwords were/are truncated to 8 characters.
We now print a warning when this happens (both on the IRC command and command-line).
  Suggested by JasonTik (#0002953).
2006-11-04 23:54:54 +00:00
Bram Matthys d784acb0fd - Services timestamps are now always treated as an unsigned long (0..2^32-1), instead
of accidently as signed long during netsynchs. This bug caused issues with values
  larger than 2147483647. Reported by avenger (#0002980).
2006-11-04 22:25:39 +00:00
Bram Matthys 67a2c3aff8 - Win32: we now no longer crash if no access to write to service.log, suggested and
patch by Xuefer (#0002886).
2006-11-04 21:41:18 +00:00
Bram Matthys d172d7e490 - Win32: SSL private key prompt should now no longer crash. Patch provided by Alexey
Markevich (#0002866).
2006-11-04 13:23:52 +00:00
Bram Matthys 4aa480a48e - [internal] Made a spamfilter_build_user_string function that will build the spamfilter
user target string (nick!user@host:info), insteaf of doing it at like 5 places.
- Spamfilter target 'u' (user): the host field (nick!user@HOST:realname) is now escaped
  with brackets if it's an IPv6 address, eg: blah!blah@[1:2:3:4:5:6:7:8]:hello, reported
  by aquanight and others (#0003010).
2006-11-04 00:11:47 +00:00
Bram Matthys b97df7b529 - Using SVSMODE (or SVS2MODE) to set -x will now actually remove the vhost from memory,
instead of letting it magically reappear whenever +x is set. This means services can
  now properly "unvhost" a user by sending a "SVSMODE User -x+x" (then any existing vhost
  will be removed and user will have a cloaked host). Reported by avenger and others
  (#0002933).
2006-11-03 23:32:39 +00:00
Bram Matthys 9d00e22db9 - Fixed m_names.so not being build (a problem for people not using commands.so),
reported by aegis (#0003085).
2006-11-03 22:41:26 +00:00
Bram Matthys 4a205703cc - Fixed some unitialized pointer things for win32 w/ssl on keyprompt, no idea if it
helps, though. Would appreciate it if another code looks into this. -- Syzop
2006-11-03 19:31:40 +00:00
Bram Matthys 898d859b77 - Made it so that when 'java' is enabled for a listen block, then the 2nd parameter to
NICK is not seen as a password on this port. Patch from afolentes (#0003097).
2006-11-03 19:23:42 +00:00
Bram Matthys 15eeec8d2b - Updated ukrainian-w1251 and belarussian-w1251 charsets: some characters were previously
included that shouldn't. Reported by avb (#0003102), patch supplied by Bock.
2006-11-03 13:41:42 +00:00
Bram Matthys cb6df4e455 - Committed watch away notification, I did this more than a month ago but can't be bothered
to document it right now, just want to get it off my cvs queue ;P.
  Syntax is 'WATCH A +TestUser' to have someone with away notification on your watchlist.
2006-10-28 14:19:48 +00:00
Bram Matthys 1fe247500e - Fixed a couple of add_Command/del_Command lines in m_chgname and m_helpop trying to
add the same token twice. Didn't cause any trouble, normally, though...
2006-10-28 14:18:07 +00:00
aquanight 66de87ec29 Fixing deny link 2006-10-09 05:39:03 +00:00
aquanight 4b0796a091 Couple more not-sending-token fixes. 2006-10-01 23:00:57 +00:00
aquanight daf9ebb95f Fix #3077 (+C not killed on SVSO -). 2006-09-30 17:09:04 +00:00
aquanight 8ec4782859 Made some messages send TOKEN properly. 2006-09-29 19:45:59 +00:00
Bram Matthys 8c3a44ced1 - Fixed zlib version check: 1.x is compatible with all 1.*, etc. (#0002966). 2006-09-28 20:44:35 +00:00
aquanight e88a77d557 Fixed segfault from unknown charsets. 2006-09-24 23:22:58 +00:00
Bram Matthys 039e223df2 - Windows 2003: Fixed UnrealIRCd unable to boot if no DNS server is configured, we now
fallback to set::dns::nameserver in such a case. Thanks to Romeo (reporter, #0002802)
  and Bock for tracing this down.
2006-09-23 12:04:00 +00:00
Bram Matthys 38701f718a Added two FIXME's 2006-09-22 19:57:29 +00:00
Bram Matthys fa8fbc6a61 - Fixed cloak cutoff problem with long hosts. 2006-09-22 19:53:22 +00:00
Bram Matthys 99b50af732 suggest->suggested 2006-09-10 23:05:43 +00:00
Bram Matthys c6fc8dfa28 - Updated doc/coding-guidelines again 2006-09-10 23:05:16 +00:00
Bram Matthys 47652fc22c plok! 2006-09-10 23:05:00 +00:00
Bram Matthys ba8e5cd7a0 (PATCH FROM TROCOTRONIC -- UNEDITTED)
- Added set::nick-length so the nick length can be dynamically changed (from 1-30),
  requested by various people including IdiotStic (#0003042).
2006-09-10 22:15:54 +00:00
Bram Matthys 158676655c - Some more updates for above, plus updated authors list and all. 2006-09-08 23:09:37 +00:00
Bram Matthys 0cc02e308c - Setting some version info properly to 3.3-pre-alpha, removing all translated documents
(they will be readded around beta1 or so, to easy the work for translators a bit).
2006-09-08 22:35:20 +00:00
Bram Matthys f1b278e450 - Bugfix for above (wrongpasscont). 2006-09-08 22:28:57 +00:00
aquanight 2b9476c923 add allow::options::wrongpasscont 2006-09-07 22:42:00 +00:00
Bram Matthys 2bdc12b8f8 - Fixed small memory leak in resolver (~40 bytes when connecting to a server)
- Made Unreal use the original name in case of a CNAME, instead of the forwarded name,
  reported by jerrcsnet (#0003054).
- The "looking up your hostname" message was always sent, regardless of show-connect-info.
2006-09-06 12:30:12 +00:00
Bram Matthys 8dd90cc2ed - Fix for above so it doesn't -r the client if +r and case changing.
- Made WATCH not send a LOGOFF/LOGON for a nickchange with case-change (blah -> BLAH).
2006-09-03 20:40:04 +00:00
aquanight 4f2480fff2 Some SVSNICK collision fixes. 2006-09-03 19:41:29 +00:00
Bram Matthys acca35a057 - Fixed bug in MODE #channel showing extended channel mode parameters when not in #channel.
- Made 'MODE #channel b' and friends show bans to ircops even when not in channel.
2006-08-29 13:25:41 +00:00
Bram Matthys ebd5551d0f (PATCH FROM Trocotronic, although slightly changed/improved/partsdeleted by me)
- Kick non-SSL users when the channel turns out to be +z during netmerge, reported by
  Ron2K (#0002942).
2006-08-29 12:02:08 +00:00
Bram Matthys 42b3540a3c - Module coders: Fixed CALLBACKTYPE_CLOAK_EX, it was not working properly at all. 2006-08-29 11:58:58 +00:00
Bram Matthys 597226b3a4 - Fixed some bugs in webtv code that could have caused trouble in the future (off by one),
reported by Ilja van Sprundel.
2006-08-23 18:25:28 +00:00
Bram Matthys 6a5b247542 - Fixed SSL crash problem due to previous SSL change. 2006-08-23 10:45:08 +00:00
Bram Matthys d988ffa7ab - Added HOOKTYPE_CAN_KICK (sptr, who, chptr, comment, sptr_flags, who_flags). Returns an
error message if the kick should be denied. The upper layer (thus NOT you) takes care
  of OperOverride.
- Modulized channel mode +Q (src/modules/chanmodes/chmode_upQ.c)
(unmentioned: ripped out old MODE_FLOODLIMIT stuff -- 2 lines)
2006-08-21 23:03:31 +00:00
Bram Matthys 5f6816df57 - Fixed /SAJOIN able to join insecure users to +z channels, reported by phedny (#0002601). 2006-08-20 23:32:39 +00:00
Bram Matthys a7cdae2d81 - Small compile fix for above 2006-08-20 23:25:18 +00:00
Bram Matthys 2294fe88cc - The server SSL certificate and private key can now be reloaded without requiring a server
restart, simply use: /REHASH -ssl
2006-08-20 23:05:39 +00:00
Bram Matthys ae84795a12 CHANGELOG COMMENT EDIT: - Fixed sjoin issue due to modulizing. 2006-08-19 22:40:12 +00:00
Bram Matthys 6f8d4f83f8 - Sjoin issue due to +F modulizing fixed (tested. though, lightly) 2006-08-19 22:39:36 +00:00
Bram Matthys dc63d47084 - This might fix sjoin for above 2006-08-19 22:33:57 +00:00
Bram Matthys 9ad0ad77d7 - Moved HOOKTYPE_LOCAL_NICKCHANGE and HOOKTYPE_REMOTE_NICKCHANGE to *after* the nickchange.
As a consequence of this the last parameter you get in your hook is now 'oldnick' rather
  than 'newnick'. So the new nick is in sptr->name now and oldnick in last parameter.
- Added HOOKTYPE_PRE_CHANMSG, this should now be used for blocking/morphing text.
  It has the parameters: sptr, chptr, text, notice
- HOOKTYPE_CHANMSG now no longer allows one to block the text (use HOOKTYPE_PRE_CHANMSG for
  that). It's also moved to after the message was actually sent.
- Added HOOKTYPE_KNOCK (sptr, chptr)
- Added HOOKTYPE_MODECHAR_FIXME. Internal for now, will be replaced with a proper
  HOOKTYPE_MODECHAR later (and arguments will change). It's just an internal hack for
  chmode +f for now ;).
- Updated indent.pro to use length=110. It still does not indent how I want it to be though,
  so don't use it yet ;).
- Moved channel mode +f to src/modules/chanmodes/chmode_f.c, interestingly enough this took
  longer than recoding extcmodes paramter support and moving chan mode +j.
  It's not only looking like a complex channel mode, it actually *IS* one ;).
  TODO: make sure it actually works, and fix sjoining (partly not implemented yet->crash) ;p
2006-08-19 22:28:44 +00:00
aquanight 9ea0e07fff Whoops. 2006-08-19 21:51:06 +00:00
aquanight f3acb92ca8 doc fix for svsnline 2006-08-19 20:29:56 +00:00
aquanight dfa40c5367 missed one 2006-08-19 20:10:03 +00:00
aquanight 11ab94eb6c failed oper notices moved to snomask +o 2006-08-19 20:02:10 +00:00
darkelf b27881f912 fdlist and helpers implementation currently new io is broken helper codes we
have to change unreal helpers in future but currently for making working io they
are not bad to use.
2006-08-19 08:45:21 +00:00
darkelf 1ca4c73f43 forgotten defines at ssl.c and ircd.c 2006-08-19 05:44:09 +00:00
Bram Matthys 81ae7da025 - Start of modulizing of channel modes. This basically just means we will be using extcmodes
for everything. Recode of extcmodes partially complete (only 30% or something), using a
  FAST 'slot system' now in the channel structure for paramter modes instead of linked lists.
  Besides the slot system being faster, it also causes less memory fragmentation (and
  memory fragmentation actually causes slower CPU as well, especially when running for a
  long time). Channel modes are still permanent and all.
  I'm first going to move modes to modules and then later on have a go at making them non-
  permanent (already know exactly how to do it, but other things go first ;p).
  Documentation on how all this works will be added later as well. It's really work-in-progress
  at the moment, which means: the API might (or 'will') change.
  Channel modes will be in src/modules/chanmodes, named chmode_<modechar>.c, that's the
  general rule at least.. Some will be 'packed together' like the RFC modes s/n/t/k/l/etc.
  Channel mode 'j' has been moved to src/modules/chanmodes/chmode_j.c which seems to work ok.
  Details (aka: documentation) about which loadmodule's will be needed for which modes
  (like I said, since some will be bundled in for example an 'rfc' module) will also be added
  later. For now it doesn't matter much, since there's only j ;).
  Side note: some +j code is still in the core (only eating 4 bytes per-user and 4 bytes
  per-channel, though), and will remain there for now.
  I did the work of above in 2 days, so ehm.. it's still far from complete, but I don't want
  to wait for one BIG commit which changes half of the ircd :P.
  Added hooks (needs to be documented, like all other hooks, one day ;p):
  HOOKTYPE_CAN_JOIN: called from can_join(), seems more logical than PRE_LOCAL_JOIN, also
  more nicely passes the key and link stuff.
  HOOKTYPE_CAN_SEND: not implemented yet. will be called from can_send()
  HOOKTYPE_CLEANUP_CLIENT: called from free_client()
  HOOKTYPE_CLEANUP_USER: called from free_user()
  HOOKTYPE_CLEANUP_USER2: called from exit_client when freeing a user.. I know, this
  might sound redundant, but then again.. some things REQUIRE a certain order (like before
  freeing membership links).. Or at least I don't want to break the current logic ;).
2006-08-17 15:29:41 +00:00
darkelf 20e42e5bbe Fixed broken compile because of sockaddr_storage 2006-08-16 16:32:53 +00:00
darkelf b7d50aee12 Indented Code also added DoEvents to new io engine. 2006-08-16 16:32:12 +00:00
darkelf 10584456b4 fdlist structure added to fdlist.h 2006-08-16 15:54:58 +00:00
darkelf 95d9f969d8 Moved write_pidfile function to ircd.c 2006-08-16 13:39:06 +00:00
darkelf 32843244bd Added new defines with NEW_IO some of old NOPOLL define names changed to
NEW_IO too.
2006-08-16 06:59:30 +00:00
darkelf e0c9b38269 Removed warning at SocketLoop 2006-08-13 21:49:13 +00:00
aquanight f71456670c Fix error msg in unreal_copyfile 2006-08-13 21:27:31 +00:00
aquanight ef3afb8844 fixed loadmodule to use correct error msg when actual module .so is missing 2006-08-13 19:35:20 +00:00
darkelf e884446871 SocketLoop become general io loop function for *nix too. 2006-08-09 13:26:23 +00:00
darkelf 3d40229700 Align typo 2006-08-08 21:32:41 +00:00
darkelf 47a9211bf0 Changes file entries 2006-08-08 21:31:46 +00:00
darkelf 078fd039d4 Removed old set_blocking function. 2006-08-05 17:01:21 +00:00
darkelf 0523a55aca Removed old buggy poll code from s_bsd.c and s_debug.c 2006-08-05 16:52:00 +00:00
Bram Matthys cbdd3138c8 Resynch with 3.2* cvs .551 (=post-3.2.5). This should mark the real start of Unreal3.3* 2006-08-05 13:23:53 +00:00
Bram Matthys 361d1646e9 some version # -> 3.3* crap 2005-06-22 23:20:25 +00:00
Bram Matthys 9894663a55 better cvsignore 2005-06-22 23:05:18 +00:00
Bram Matthys 704b6260d2 branch off from current unreal3_2_fixes (post-Unreal3.2.3), for Unreal 3.3* (that's the idea at least). 2005-06-22 22:56:06 +00:00
Bram Matthys 335ff44a54 *** 3.2 release *** 2004-04-24 23:07:39 +00:00
Bram Matthys 019666b21f hmk, rephrased the "module support @ windows " sentence I added. 2004-04-24 20:37:38 +00:00
Bram Matthys 5e16df15a0 - Some doc/release notes updates on win module support. 2004-04-24 19:58:53 +00:00
Bram Matthys 533895722b - Added temporary fix for include "http://www.blah.com/"; crashbug...although I doubt
many people would use it. Reported by Angrywolf (#0001757).
2004-04-24 15:30:36 +00:00
Bram Matthys 45bf0ede3d TYPO.. just in time before pre2 :P 2004-04-23 22:26:35 +00:00
Bram Matthys ad9a40e7c4 - Changed version to 3.2 already
** internal pre2 release **
2004-04-23 22:25:38 +00:00
Bram Matthys 6199e0f98c - Fixed some remote includes issues and added a connect/transfer timeout, server should
now no longer be frozen if the site is unreachable. Reported by Ron2K (#0001751).
2004-04-23 22:05:36 +00:00
Bram Matthys 0eb09818c0 gzline user@host -> *@ipmask 2004-04-23 20:38:48 +00:00
Bram Matthys 12b538a6a8 - Docs/help.conf tweak on /connect syntax (#0001755).
- German doc updates (from April 18) + gzline docs tweak.
2004-04-23 20:37:46 +00:00
Bram Matthys 8b26ed3a2a BLALBSDJFsid 2004-04-16 22:44:31 +00:00
Bram Matthys deb07e14b3 ** internal pre1 release (testing only) ** 2004-04-16 22:43:09 +00:00
Bram Matthys 324bcc3cf9 - Minor sajoin/sapart ERR_NEEDMOREPARAMS tweak. 2004-04-16 22:41:46 +00:00
Bram Matthys ebcfe963a5 - Fixed SJOIN bug: it sometimes was setting too many modes at once. 2004-04-16 20:52:42 +00:00
Bram Matthys f032115d8a - Changed version to pre1 2004-04-16 19:20:25 +00:00
Bram Matthys 090589cfad update.. 2004-04-16 18:10:05 +00:00
Bram Matthys 0a790a5649 oh, forgot target quit... 2004-04-16 17:41:31 +00:00
Bram Matthys 376494f384 - spamfilter.conf: added signatures for Gaggle worm. 2004-04-16 17:30:59 +00:00
Bram Matthys ac7aa6ed03 fixed implicit declaration for reread_motdsandrules(). 2004-04-15 22:06:03 +00:00
Bram Matthys e53a688c7e - doc/unreal32docs.html and help.conf updates (#0001734 + other stuff). 2004-04-15 21:51:01 +00:00
Bram Matthys 8350a7958a - Fixed /rehash bug if an .so (or remote include?) failed to load properly,
reported by fez (#0001736).
2004-04-15 16:14:14 +00:00
Bram Matthys ab22a8bcb1 - Added some release notes already. 2004-04-15 01:30:57 +00:00
Bram Matthys 407f9af942 - Various doc/text updates 2004-04-14 23:09:16 +00:00
Bram Matthys fa6edb8c64 - Made ./unreal rehash (= kill -1 <pid>) also reread motd/rules/etc just as a
normal /rehash does, reported by superh (#0001699).
2004-04-14 18:51:14 +00:00
Bram Matthys e501f1b90f - Force a TRE recompile if ./Config is re-run, due to timestamp fun if you were
upgrading to CVS every time TRE was not recompiled even if you did make clean.
2004-04-14 18:21:49 +00:00
Bram Matthys d1bfc78a45 - Fixed /who +m bug for opers, reported by Bugz (#0001715).
- Fixed halfop mode code to not check remote halfop modes (desynch danger).
2004-04-13 22:22:50 +00:00
Bram Matthys 24336c6153 - Updated server<->server code for MODE so operoverride bug #0001704 and other
feature requests can be fixed/added in the future (3.2.1).
2004-04-13 19:04:41 +00:00
Bram Matthys c78a8c6110 - Fixed something if sptr->user->virthost was NULL (which is/should never be the case),
just to be sure... (#0001724).
2004-04-11 15:20:19 +00:00
codemastr 7399ad2cde Fixed a typo in /credits 2004-04-10 16:10:07 +00:00
codemastr 7ba09e3efd Made a note in example.conf about not using link::options::autoconnect for services 2004-04-07 22:22:20 +00:00
codemastr 23eddafaf7 Fixed /stats ? for Q and q 2004-04-07 22:18:27 +00:00
codemastr 7ebd0473b9 Updated /credits a bit more 2004-04-07 22:13:21 +00:00
Bram Matthys e9d96c267a - German doc updates (spelling+synch). // + moved language choose thingy to top 2004-04-07 20:51:28 +00:00
codemastr 1d140eff88 Updated credits 2004-04-07 02:33:13 +00:00
Bram Matthys 1103ffe636 - Windows: Updated makefile/unrealinst.iss/zip.h to use zlib 1.2.1. 2004-04-05 22:26:03 +00:00
codemastr 05c1c38d76 Fixed vhost::swhois not being shown remotely 2004-04-05 22:06:31 +00:00
codemastr a3a4158556 Patched win32 TRE 2004-04-05 21:47:15 +00:00
Bram Matthys d1982e4983 - Patched TRE 0.6.6 to fix known crashbug (#0001684), testing is welcomed. 2004-04-05 17:04:14 +00:00
Bram Matthys 0ac1676043 reference to translated doc (and vice versa) 2004-04-04 18:12:58 +00:00
Bram Matthys 829c102c7f typo ;) 2004-04-04 16:47:19 +00:00
Bram Matthys 2c8e443170 Added $Id$ thingy 2004-04-04 16:46:47 +00:00
Bram Matthys 5f9e2bff0b - Added german translation of unreal32docs (doc/unreal32docs.de.html), translated by Stylus740 which will also maintain it. 2004-04-03 21:46:24 +00:00
Bram Matthys 3a738a4c5d - Added german translation of unreal32docs (doc/unreal32docs.de.html), translated
by Stylus740 which will also maintain it.
2004-04-03 21:45:38 +00:00
Bram Matthys db7e75636d - spamfilter.conf: added signature for LOI trojan. 2004-04-01 03:57:11 +00:00
codemastr 602ea12b9f Fixed an SVSMODE #chan -qaohv bug 2004-03-29 23:18:26 +00:00
Bram Matthys ef942d39a2 - spamfilter.conf: changed a lot of rules from 'block' to 'gline', left some
on 'block' however if there was some (very low) chance on false positives (even though
  just like 0.01%).
2004-03-27 22:54:42 +00:00
Bram Matthys f6b0bf15b5 - Usermode 'r' (registered) was unset even in case of "case"-nickchanges (like:
'Syzop' -> 'syzop'). This affected f.e. ircservices. Reported by LoVeR (#0001679).
2004-03-27 20:13:27 +00:00
Bram Matthys a87a1688b6 - Made the setup script use the new compression method 'lzma' which makes the setup.exe
~300Kb smaller. Now also requires Inno Setup 4.1.6 (tested with 4.2.0).
2004-03-27 00:58:18 +00:00
codemastr 1ac0936d8a win32 installer changes 2004-03-26 23:12:22 +00:00
codemastr ec12bd4c05 Fixed a win32 GUI bug with rehash all not rehashing motd/rules 2004-03-26 21:25:45 +00:00
codemastr f095d6e9de Fixed a win32 resolver problem with detecting nameservers 2004-03-26 21:14:43 +00:00
codemastr a998fe14cc Fixed a /stats S modes-on-join extended mode problem 2004-03-22 21:35:56 +00:00
codemastr 6be3ab9291 Updated TRE to 0.6.6 2004-03-21 19:01:15 +00:00
codemastr 6c7a6b507f Imported TRE 0.6.6 for win32 2004-03-21 18:12:21 +00:00
codemastr cdaaa80c70 Made environment variables correctly work in Config 2004-03-20 04:23:58 +00:00
Bram Matthys d731cf04ab - Fixed /spamfilter reason field bug.. things were double escaped sometimes,
especially in post-RC2-cvs this was noticable. Reported by Fury (#0001670).
- help.conf: updated snomasks section.
2004-03-19 21:32:03 +00:00
Bram Matthys da9bd6e5e9 - Fixed /spamfilter removal problem... often the wrong entry was removed [!] or
nothing was removed at all. Reported by MiNdErAsR, RealCFC and others (#0001669).
2004-03-19 02:18:04 +00:00
codemastr 51704ca942 Fixed an SQLINE memory leak 2004-03-14 22:25:24 +00:00
codemastr 4e5ebba53f Added Nkie worm spamfilters to spamfilter.conf 2004-03-14 20:21:12 +00:00
Bram Matthys 2da3de60c4 - Added conf check for too large spamfilter regex + reason field. Reported by
Z3l3zT (#0001648).
2004-03-14 20:16:54 +00:00
codemastr c35aede803 Fixed a version.c.SH typo 2004-03-13 19:35:51 +00:00
Bram Matthys 6094f628eb - Fixed win32 compile problem. Reported by Troco (#0001644). 2004-03-13 15:48:49 +00:00
Bram Matthys 04177a8106 fixed win32 compile problem 2004-03-13 15:46:33 +00:00
Bram Matthys 8273643f88 - More Opteron fixes... sizeof() fun, %B fun (always use a 'long'!), etc..
- Added __attribute__ stuff for ircsprintf() to catch more warnings.
2004-03-11 21:59:08 +00:00
Bram Matthys 1c671a47bd SSsshht ;p 2004-03-11 20:39:58 +00:00
Bram Matthys 3294afe918 - Hide server IP in /stats z
- First Opteron crash bugfix. Thanks to Liverbugg for helping us trace this issue.
2004-03-11 20:34:36 +00:00
codemastr 017669dc40 Removed cp -f from curlinstall (non-portable) 2004-03-10 18:42:47 +00:00
codemastr 99a3c53703 Remote include installer changes and /credits updates 2004-03-10 17:11:27 +00:00
codemastr 2f64d946b4 Made set::modes-on-join work with extcmodes 2004-03-10 03:49:04 +00:00
Bram Matthys 6717b75911 minor adjustment. 2004-03-10 01:43:45 +00:00
Bram Matthys 80f397df6b changed version to 'RC2 *CVS*' 2004-03-10 01:25:30 +00:00
Bram Matthys 3a3ca8bac8 pjoink!!! 2004-03-10 01:24:55 +00:00
Bram Matthys 15b52e94b4 - Added '__' -> '_' decoding for spamfilter reason field. 2004-03-10 01:23:58 +00:00
codemastr dd6eb1bd34 Fixed a spamfilter memory leak 2004-03-10 01:00:22 +00:00
Bram Matthys f1bd72ffad pjoink 2004-03-09 23:14:20 +00:00
Bram Matthys 0f3204698b - spamfilter.conf: added soex trojan. Sig provided by Jay. 2004-03-09 20:47:10 +00:00
codemastr 25639df741 Documented except tkl qline/sqline 2004-03-09 00:31:10 +00:00
codemastr 248188cf54 Removed src/win32/version.c 2004-03-08 18:47:58 +00:00
codemastr 3d87f28751 Added check to detect broad /spamfilter masks 2004-03-08 03:38:16 +00:00
Bram Matthys 445a85871a - spamfilter.conf: fixed fyle sig (was bad!), some minor updates to the rest,
added mirc 6.12 exploit sig. Reported by PHANTOm.
2004-03-08 00:22:31 +00:00
Bram Matthys 84be2cf06f pjoink 2004-03-07 22:10:56 +00:00
Bram Matthys 63d7c6d04a *** RC2fix release *** 2004-03-07 22:10:19 +00:00
codemastr ddcec35e9f Fixed a compile problem on Solaris 2004-03-07 22:03:41 +00:00
codemastr 5b1be6a347 Fixed a HOOKTYPE_PRE_LOCAL_JOIN bug 2004-03-07 21:50:07 +00:00
Bram Matthys c1ca95b71f *** RC2 release *** 2004-03-07 18:51:29 +00:00
Bram Matthys 47aab8caaa - Changed version to RC2 2004-03-07 17:27:02 +00:00
Bram Matthys 9b242fd101 - And some more spamfilter.conf rules (aplore, gtbot, sdbot, spybot). <== this was already committed, just updating changes on it ;)
- Minor doc update.
2004-03-07 15:23:51 +00:00
Bram Matthys 61ab744d2a minor 'reason' adjustments (to make it more general) + . -> \. thingy 2004-03-06 22:18:11 +00:00
codemastr 7bc23b4279 More spamfilter updates 2004-03-06 20:26:24 +00:00
Bram Matthys 301dbe6e59 spybot .syn sig 2004-03-06 19:57:21 +00:00
codemastr c324f1455a GTBot detection filters 2004-03-06 19:20:12 +00:00
Bram Matthys 6e05e85dfb blank 2004-03-06 18:43:01 +00:00
codemastr 4f00918d7a Spamfilter.conf typo 2004-03-06 18:12:36 +00:00
codemastr 01cb63c745 Updated /credits with more donators 2004-03-06 17:41:17 +00:00
Bram Matthys 16802a8b6b - And some more spamfilter.conf rules (mirseed & fagot). 2004-03-06 04:22:31 +00:00
Bram Matthys 29eb81904a - Added first 2 rules to spamfilter.conf, update release notes and unrealinst.iss
for it too (also added missing badwords.quit.conf file @ win32).
2004-03-06 02:27:08 +00:00
Bram Matthys 41d7b0733b - Added rest of release notes. 2004-03-06 00:01:11 +00:00
codemastr 0fb0490262 Imported TRE 0.6.5 on Linux 2004-03-05 22:43:38 +00:00
codemastr 76fdc6505f Upgraded win32 TRE lib to 0.6.5 2004-03-05 22:29:39 +00:00
codemastr 2b19a70d31 Redesigned HOOKTYPE_PRE_LOCAL_JOIN 2004-03-04 23:06:54 +00:00
Bram Matthys 1854b50784 let's be nice and give credit.. 2004-03-04 19:48:08 +00:00
Bram Matthys 8a6619c0a8 - Fixed yet another fun remote includes memory corruption crash bug due
to curl strangeness (took me 2 hours to trace down, great!).
2004-03-04 19:33:59 +00:00
Bram Matthys c389dc58b5 - Minor doc updates on SSL (mIRC now supports SSL a bit). 2004-03-03 22:49:47 +00:00
Bram Matthys f58c46a334 - Updated SSL error for underlying syscall error a bit (#0001615). 2004-03-03 21:27:05 +00:00
Bram Matthys 9ba52eea92 - Added 90% of RC2 release notes.
- Cosmetic doc updates (#0001596) reported by HERZ.
2004-03-02 20:31:59 +00:00
Bram Matthys ad1a98523f a 2004-02-29 21:18:35 +00:00
Bram Matthys 7d2da2b910 - Q comes after P. Thanks to Rocko for remind us! (fixes /stats P bug ;p). 2004-02-29 21:15:45 +00:00
codemastr d48540a6d4 Fixed another remote include bug 2004-02-26 00:49:27 +00:00
codemastr 739feded92 More win32 remote include fixes 2004-02-25 23:17:32 +00:00
codemastr 19d843e650 Fixed a remote include problem with deleting files 2004-02-25 22:14:30 +00:00
Bram Matthys afc24e4fa8 - Made numerics 518-520 a bit more clear by mentioning the channelname in it.
Suggested by Zell (#0001589).
2004-02-25 21:39:04 +00:00
Bram Matthys 179e6dfe6d - Fixed a zero-terminate bug in remote includes: urls with '?' in it could
cause a crash, reported by Joolz (#0001587).
2004-02-25 21:21:49 +00:00
Bram Matthys 669cf6e189 - Fixed an issue where chanmode +f was often set by the server again
in a netjoin when there was no need to (nothing to synch).
- Added spamfilter::except which allows you to specify targets
  (eg: channels) where spamfilter should not take action. Requested by Fury
  (#0001586). Ex: set { spamfilter { except "#spamreport,#help"; }; };
2004-02-25 20:49:00 +00:00
Bram Matthys 0a166e3663 GRRR! bad/old module header! badbadbad m_template!! 2004-02-23 23:14:32 +00:00
Bram Matthys a573b29a0f - Fixed a bug in individual m_*.so loading, 39 new modules were affected. 2004-02-23 23:14:05 +00:00
Bram Matthys 2ae44c13b6 - '0' tkltime in spamfilter now really means 'perm', not '*line for
0 seconds' or something. Reported by Certus.
2004-02-23 22:20:02 +00:00
Bram Matthys a16533d0e9 - Improved dcc blocking support (both for spamfilter and deny dcc). 2004-02-23 17:28:07 +00:00
codemastr 1435dcb9fa Fixed a TKL update bug with sqlines 2004-02-22 22:30:59 +00:00
Bram Matthys 139e019e30 - Added some extra debugging for tkl update notice...
- Fixed a problem in 'tkl update': lowest expire time won instead of
  highest. Reported by Malcolm.
2004-02-22 22:14:00 +00:00
Bram Matthys a54752dd9e - Added a warning if your listen portrange affects >100 ports
(eg for idiots doing 6667-7000 which uses 333 sockets).
2004-02-22 20:43:59 +00:00
Bram Matthys 511ca1c3ec - Minor fix for previous.
- Improved 'viruschan' spamfilter target:
  - better msg after the forced join
  - +oaq's in set::spamfilter::virus-help-channel receive a notice about
    which filter the user matched.
  - it disables all commands except PONG, ADMIN, and msg/notices to
    set::spamfilter::virus-help-channel.
- Made snomask +S also show the spamfilter reason field.
- Added class::pingfreq checking, should be 30-600 now.. else you might
  get mysterious (mass) disconnect issues.
- Lol, I made /connect dissapear during modulizing ;).
2004-02-22 19:39:43 +00:00
Bram Matthys 8e0b0eb0fa in-between-commit 2004-02-22 19:34:44 +00:00
codemastr a09d36532e Moved qlines to TKL 2004-02-22 18:41:06 +00:00
Bram Matthys ce850c8317 really.. 2004-02-22 03:23:31 +00:00
Bram Matthys 86e58f58ba now? 2004-02-22 03:21:51 +00:00
Bram Matthys 9bd077b7cd no it's not fixed syz, CHAOS chaoooos 2004-02-22 03:20:06 +00:00
Bram Matthys d071464264 - Fixed a bug which prevented "/spamfilter del[..]" from working.
Reported by Fury (#0001575).
2004-02-22 03:08:43 +00:00
Bram Matthys 790a69a402 compile fixes 2004-02-22 02:56:28 +00:00
Bram Matthys 2a8252d0c0 - Modulized: connect... should be the last one till 3.2final.
- Fixed some compile warnings/problems caused by modulizing.
2004-02-22 02:53:07 +00:00
Bram Matthys 3f14551bc2 pjoink 2004-02-22 02:52:12 +00:00
Bram Matthys 346dc05818 - Modulized: svsfline, dccdeny, undccdeny, whowas 2004-02-22 02:40:13 +00:00
Bram Matthys 6ca03d0922 win compile fix 2004-02-22 02:02:05 +00:00
Bram Matthys f47d14342c winfix 2004-02-22 01:59:50 +00:00
Bram Matthys 7b3fe6a13d - Modulized: server, stats 2004-02-22 01:57:47 +00:00
Bram Matthys 01143520c6 made it compile on win32 again 2004-02-22 00:33:54 +00:00
Bram Matthys 5afdd3139f removed m_eos... win compile fun 2004-02-22 00:31:12 +00:00
Bram Matthys 1612b284be GRRR 2004-02-22 00:28:30 +00:00
Bram Matthys efa91d73b4 removed wallops 2004-02-22 00:25:15 +00:00
Bram Matthys 809b19743e - Modulized: netinfo, links, help, rules, close, map, eos and made it compile on win32 again. 2004-02-22 00:21:58 +00:00
Bram Matthys f997b16918 - Modulized: addline, addmotd, addomotd, wallops, globops, locops, chatops,
admin, trace.
- Removed: gnotice, goper
2004-02-21 23:40:58 +00:00
Bram Matthys 8ebf5b9a18 - Updated docs on tempshun and new spamfilter features. 2004-02-21 15:50:15 +00:00
Bram Matthys bbda4bcc6b - Added /tempshun, temporary shuns the current session of specified nick
(just like the 'tempshun' in spamfilter and ban version). Suggested by
  Cnils (#0001526). [docs/help.conf will be updated later]
2004-02-21 04:24:21 +00:00
codemastr 6016b57f1d ... 2004-02-21 01:10:58 +00:00
codemastr f8a13c22b2 Remote include fixes for Windows 2004-02-21 00:52:54 +00:00
Bram Matthys 81a1431665 - Fixed a bug in 'Flood from unknown connection' (#0001566). 2004-02-20 23:47:07 +00:00
Bram Matthys 648d73556c spamfilter improvements
- Fixed a few wrong macro's (ircstrdup/ircfree) in s_conf.c causing
  very weird behavior... This also fixes a bug where set::spamfilter::ban-reason
  would have the value of ban-time.
- Improved spamfilter again.
  - The new syntax is:
    /spamfilter [what] [type] [action] [tkltime] [reason] [regex]
    [tkltime] specifies the duration of any *lines placed by this rule.
    [reason] specifies the *line, kill and/or block reason.. no spaces
    allowed, but '_' will be escaped to a space.
    In both cases you can simply use '-' to skip and use the default.
    Ex: /spamfilter add p block - - Come watch me on my webcam
        /spamfilter add p gline 3h Please_go_to_www.viruscan.xx/
        nicepage/virus=blah Come watch me on my webcam
  - A message is now shown if the msg/notice/dcc is blocked.
  - There are 2 new spamfilter action types:
    'dccblock' will mark the user so (s)he's unable to send any files by DCC.
    'viruschan' will part the user from all channels and join
     set::spamfilter::virus-help-channel (default: #help).
     this action might be improved to do more later.
  - Internal: added EXTTKL PROTOCTL, this determinates if 10 parameters
    instead of 8 are supported for m_tkl (used by spamfilter add).
  This new system needs some testing... :)
2004-02-20 23:28:57 +00:00
codemastr 389c51c212 Fixed a problem with setting +qaohv on a +S user 2004-02-20 04:16:53 +00:00
codemastr fc4649781c Remote include fix to deal with memory corruption bug 2004-02-20 03:51:01 +00:00
codemastr 110bc140c6 Made PATH_MAX get found under Solaris 2004-02-19 23:11:38 +00:00
codemastr 05030fa603 Fixed allow::options::noident 2004-02-19 00:16:26 +00:00
codemastr 1d9301b73a Fixed a VHP problem causing SETHOST to be sent before NICK or not at all 2004-02-18 22:30:45 +00:00
Bram Matthys 145bf5dc1d - Fixed a bug in the unreal_checkregex() routine which could cause a crash
if you added an invalid regex. Reported by Tony (#0001556).
or... 'freeing a buffer on the stack is not exactly good!' ;)
2004-02-18 00:27:30 +00:00
Bram Matthys 8992874efa - Added support for single-target specifiction like spamfilter { regex "blah";
action kill; target private; }; previously it didn't warn/error on this
  but it didn't work either.
2004-02-17 21:09:56 +00:00
Bram Matthys 4769908543 - Added some set::throttle::* checking if insane values were supplied.
Reported by Troco (#0001555).
2004-02-17 20:47:43 +00:00
stskeeps 9cfc83d98d Changes 2004-02-17 20:45:03 +00:00
Bram Matthys d6e0d8ba0e - Module coders: for extended channelmodes the EXCHK_ACCESS* the return
value should now be one of EX_*:
  EX_DENY        : disallowed, except for oper override
  EX_ALLOW       : allowed
  EX_ALWAYS_DENY : disallowed, even in case of operoverride (eg for
                   operlevel modes like +A).
  Note that it's backward compatible since TRUE/EX_ALLOW=1 and FALSE/EX_DENY=0.
- Fixed a few bugs with oper override & extended chanmodes, for example
  chanmode +T could not be set by a globop w/can_override and non-+hoaq.
2004-02-17 20:37:26 +00:00
codemastr 6696331f66 Slightly changed extcmodes access control 2004-02-17 01:15:16 +00:00
Bram Matthys 9c8a1047f4 more more more! 2004-02-17 00:52:24 +00:00
Bram Matthys 4ab6fe18e4 abc! 2004-02-17 00:47:21 +00:00
Bram Matthys bb936d21f6 pjoink 2004-02-17 00:46:31 +00:00
codemastr 6648072334 Modulized knock, umode2, squit, protoctl 2004-02-17 00:40:42 +00:00
Bram Matthys f775b3cf91 sjoin, pass, userhost, ison, silence modulized... 2004-02-17 00:20:24 +00:00
codemastr a306586071 ... 2004-02-16 23:20:24 +00:00
codemastr 38adc8e08a Modulized time and svskill 2004-02-16 23:17:13 +00:00
codemastr ee54d529b2 Added HOOKTYPE_REHASH_COMPLETE 2004-02-16 23:03:42 +00:00
Bram Matthys 376fecbf18 TYPO 2004-02-16 22:21:10 +00:00
Bram Matthys 3e9ea217fb boink 2004-02-16 22:18:51 +00:00
Bram Matthys 01c5b99faa - Added [OLD?] flag in /module so you can easily spot old beta* modules.
- Modulized: samode, sajoin, sapart, kick, topic, invite, list
2004-02-16 22:10:39 +00:00
codemastr 1fd40599ce Fixed an ircsprintf problem with SJB64 2004-02-16 22:06:37 +00:00
codemastr 1f7a1dfb2b Docs typo fix 2004-02-16 16:58:10 +00:00
Bram Matthys 8789c6860a HMM!!! 2004-02-16 15:11:00 +00:00
stskeeps 43cc8b4875 Renamed HOOKTYPE_LOCAL_TOPIC to HOOKTYPE_TOPIC and made it actually work. 2004-02-16 10:58:44 +00:00
stskeeps f33bfea7b2 - Added HOOKTYPE_UMODE_CHANGE (sptr, oldflags, newflags) - this may
not be accurate as umode changes are done manually many places.
2004-02-16 10:03:32 +00:00
codemastr 794ce094a4 Removed reference to svstime in help.conf 2004-02-16 04:59:33 +00:00
Bram Matthys 3c9f54fb45 - Fixed a bug in "unkickable users" (umode +q), they could still be kicked
by non-netadmin ircops in some (many) cases, reported by Zell (#0001541).
note: this fix is still "wrong", because the whole override/whatever
system is flawed ;p.
2004-02-15 16:14:16 +00:00
codemastr f8a2359f62 Fixed a tmp/ bug on Linux 2.2 and updated /Credits 2004-02-15 05:06:59 +00:00
Bram Matthys da86427258 *** RC1 release *** 2004-02-14 19:48:12 +00:00
Bram Matthys 46ed9c2ef7 pjoink! 2004-02-14 19:26:43 +00:00
codemastr 36673fe643 Changed version to RC1 2004-02-14 19:16:09 +00:00
Bram Matthys 476e2ce72b - Fixed fdlist bug/warning if a local operator /oper'd up twice. Reported by DukePyrolator (#0001539). 2004-02-14 17:09:33 +00:00
Bram Matthys 28174f6e44 this should be it.. hopefully... 2004-02-14 16:37:52 +00:00
Bram Matthys cc91e5fde3 - Ouch!! Fixed a severe bug which caused opers not being recognized on remote
servers causing various problems... This was caused by a change 1-2 days ago.
  Reported by Rocko (#0001537).
2004-02-13 20:49:43 +00:00
codemastr b8c0185563 setup.h.in cleanups 2004-02-13 04:52:07 +00:00
codemastr 865ac6f8a5 Added a new Donation file 2004-02-12 23:03:41 +00:00
Bram Matthys f7bc069ef7 typo :p 2004-02-12 01:23:28 +00:00
Bram Matthys f1be169364 - We are having fun with Makefiles... 2004-02-12 01:17:33 +00:00
Bram Matthys 1d9168e957 - Added 80% of release notes, rest will be added a day before release or so :). 2004-02-12 00:25:32 +00:00
codemastr 0a1822a628 Added m_svssno 2004-02-12 00:19:10 +00:00
codemastr a607cc8b19 Added svssno/svs2sno 2004-02-11 23:04:36 +00:00
codemastr 8e55a798fa Made mknod deal with umask settings 2004-02-11 03:51:47 +00:00
codemastr 176ce7b047 Removed remote restart 2004-02-11 03:47:59 +00:00
codemastr e4dddbe7c0 Fixed a problem with config loading and module errors 2004-02-11 03:44:31 +00:00
Bram Matthys 3f4eb6ab46 - Started using the umode->allowed stuff a bit ourselves, just to be sure. 2004-02-10 23:28:43 +00:00
Bram Matthys 0bc26457b1 - Fixed a snomask bug reported by Cat / HERZ (#0001531). 2004-02-10 15:51:21 +00:00
Bram Matthys f916c64422 - Added a section "Security tips/checklist" to unreal32docs.html, this is something
I worked on a few months ago... It tries to explain how to get a server/network
  secured, what the potential risks are, etc... Of course security is a complex topic
  so I cannot talk about everything in it, but I tried to mention the main risks and
  what you can do about it in a (hopefully) simple and understandable language ;).
2004-02-10 01:21:26 +00:00
Bram Matthys bfa00c8626 - Fixed minor compile warning. 2004-02-07 22:51:13 +00:00
Bram Matthys ebbeddf969 - Forgot to add src/modules/m_sendsno.c to CVS, also fixed 2 compile warnings
and a crashbug related to previous commit.. bug hunting will continue ;).
2004-02-07 17:05:44 +00:00
Bram Matthys 3671a765cb this should be the last "big commit" before release :p.
- Added snomasks 'S' (Spamfilter) which notifies you of any spamfilter matches.
- [internal] always return after spamfilter match, don't continue looping trough
  targets list (eg in case of: /msg #a,#b,#c spamspam), otherwise you would get
  duplicate notification msgs.
- Added SENDSNO server command, similar to SENDUMODE but for snomasks, this is
  used by the spamfilter snomask (+S) so you get network-wide notifications.
- Added "compiled for.." versioning system, this way a beta17 module can't be loaded
  on beta18, etc... People often forgot to recompile their modules or had old ones
  somewhere by mistake, therefore crashing after upgrades... this should fix this
  (in the future). Module coders don't have to do anything for making this work,
  it's done automatically (via modules.h).
2004-02-07 15:49:37 +00:00
Bram Matthys a29dc83e69 - Ripped out fast (bad)words support out of spamfilter to avoid confusion, also renamed
spamfilter::word to spamfilter::regex to make it even more clear (since we match
  on the whole line and have nothing to do with words.. 'word' doesn't make sense).
- Updated docs with some better regex examples, reported by AngryWolf (#0001520).
2004-02-06 21:37:28 +00:00
codemastr 45c557f0ec Made -qaohv on +S require +N 2004-02-05 22:58:24 +00:00
Bram Matthys 4d2de582f1 doc updates on snomask N 2004-02-05 19:52:55 +00:00
Bram Matthys e52cf2119a - [internal] cleaned up snomask removal after deoper, now remove_oper_snomasks() is
called which might look a bit ugly, but is better than before (scattered on 3 places).
- Added snomasks 'N' which allows you to see nick changes of clients on other servers,
  requested by several people (#0001323).
2004-02-05 19:47:37 +00:00
Bram Matthys 1d12b2b0f9 - Made blocked dcc notices (sent to umode +v) global, suggested by neothematrix (#1513). 2004-02-05 02:12:01 +00:00
Bram Matthys 781cce98cb - '/rehash -all' had bugs and is now considered depricated, just use '/rehash' instead.
On '/rehash' we reload everything already so the '-all' option was useless anyway.
  Reported by fez (#0001516).
2004-02-05 01:52:09 +00:00
Bram Matthys d4723ee2e2 - Added can_dccdeny operflag so you can give your local/global opers access to this too.
Co-admin, admin, sadmin and netadmin get it by default. Suggested in #0001247.
- Updated operflag docs.
2004-02-05 01:34:59 +00:00
Bram Matthys 43b5886b7e - Limited 'All Connections in Use' message to max 1 every 15s, this DOES NOT mean we will
introduce throttling of other msgs (or making this configurable)... this is just
  an exception because this msg is sent to _all opers_ and you cannot disable it by
  unsetting certain snomasks. Anything lower than 15s would be bad anyway since this
  is a very serious error condition. Requested by LoVeR (#0001412).
2004-02-05 00:50:40 +00:00
Bram Matthys d7967cc004 - Modified 404 numeric a bit (#0001515).
- Fixed 'no server notice on /restart or /die', reported by Lx (#0001062). This was caused
  by a bug in flush_connections(&me), hopefully there won't be any side effects.
- Fixed file owner problems when IRC_UID/IRC_GID is used (eg: when running chrooted).
- Fixed crashbug if we were unable to write a remote include file to disk.
2004-02-04 23:11:02 +00:00
codemastr 425a4e57ee Fixed a remote include cached file bug 2004-02-04 01:58:48 +00:00
Bram Matthys 7b4ef15606 - Fixed invalid nameserver info when chrooted (nameserver was always localhost). 2004-02-03 22:42:27 +00:00
Bram Matthys a65906bc5e - Fixed issue when 2 servers link with identical user@host *:lines but with different
expire times, reason field, etc... Entries are now fully synced between servers.
  Reported by Cnils (#0001448).
- Added umode +T to help.conf
- Fixed an issue with add/del/remove in /spamfilter being case sensitive.
2004-02-03 21:13:02 +00:00
codemastr 165da0c5bd Some setuid/setgid and chroot changes and sajoin changes 2004-02-03 19:02:53 +00:00
Bram Matthys 094acdf25c - Cosmetic 'stats /zip' output change (#0001435).
- Made services admins able to see on which channel services bots are, just
  like a netadmins can, suggested by EviL_SmUrF (#0001481).
2004-02-01 19:52:47 +00:00
Bram Matthys 96925ef9b4 - Fixed possible compile bug (caused by HOOKTYPE_TKL_EXCEPT). 2004-01-31 21:05:41 +00:00
Bram Matthys 5d4e4339ff - Added HOOKTYPE_TKL_EXCEPT (arg: cptr, tkline) which is called from find_tkline_match
and find_tkline_match_zap. This can be used to add custom TKL exceptions.
2004-01-30 21:48:41 +00:00
codemastr 4ce745ca37 SSL fix and added can_setq 2004-01-30 21:13:32 +00:00
codemastr 66700cf631 Prevent multiple spaces in a MODE message 2004-01-30 00:50:42 +00:00
codemastr 0d70cd81d7 Fixed a problem with the snprintf checking code 2004-01-29 22:57:20 +00:00
codemastr 10aa5e9978 Made ./Config remember libcurl directory 2004-01-29 22:38:40 +00:00
Bram Matthys 3821d5c558 - Fixed '/SetHost Error' flood from all servers in some circumstances like re-opering, reported by blotter45 (#0001400). 2004-01-29 16:58:05 +00:00
Bram Matthys 6ef85abc6f - updated /stats help and docs on '/stats f' 2004-01-29 16:50:02 +00:00
Bram Matthys be83c94c68 - added set::spamfilter::* to docs 2004-01-28 00:57:43 +00:00
Bram Matthys 8f4dd07074 - win32 compile fix (typo) 2004-01-28 00:24:57 +00:00
Bram Matthys d2c6bb5ad5 spamfilter etc... *pray* 2004-01-28 00:16:33 +00:00
codemastr bd5b7ee6b8 Fixed a bug with HOOKTYPE_CONFIGTEST with perm modules 2004-01-27 00:25:03 +00:00
Bram Matthys 3aef23eecf added HOOKTYPE_REMOTE_CHANMODE 2004-01-22 22:47:19 +00:00
Bram Matthys a68898df22 - Changed NOSPOOF msg in ./Config a bit since this can also be effective against
"blind proxies" (like HTTP POST proxies).
- WebTV updates: made it so (user generated) channel notices are now displayed as
  privmsgs in the channel. Also made the /knock channelnotice a privmsg for webtv.
2004-01-22 22:03:04 +00:00
Bram Matthys 7c4418113b - Changed random number generator to use arc4random-alike routines so we can get "secure"
random numbers. We will also no longer be using rand()/random() anywhere.
  Thanks to dek\ for pointing out this is potentionally dangerous, especially on
  win32 with NOSPOOF enabled.
2004-01-19 19:49:28 +00:00
codemastr dc11242795 Made the configure script not add -I or -L for /usr/include and /usr/lib 2004-01-18 21:58:01 +00:00
codemastr de40c73a20 Updated /module docs 2004-01-18 21:41:41 +00:00
codemastr 560af0ec1b Added set::silence-limit 2004-01-18 20:27:38 +00:00
codemastr 80dc3a80bc Updated /stats docs 2004-01-17 20:56:20 +00:00
codemastr 3185d8c23b Added HOOKTYPE_PRE_LOCAL_QUIT 2004-01-17 20:37:52 +00:00
codemastr c07e1f96e1 Renamed FAKE_LAG_FOR_LOCOPS and made chanops override chmode +V 2004-01-17 20:13:48 +00:00
codemastr e406e0d99a Added EXBCHK_PARAM and some noew logging flags 2004-01-17 19:30:46 +00:00
codemastr f6ed927791 Made permanent modules receive HOOKTYPE_REHASH 2004-01-17 19:01:25 +00:00
codemastr e7c7909d66 Various minor changes 2004-01-17 18:38:40 +00:00
Bram Matthys 3980a7f7f6 - internal: Ok, I'm committing this in parts... did most of the TKL spamfilter
integration now, no.. it doesn't work at all yet but most of the internal stuff
  has now been done (but I temporarely need to work on other things now).
   moved/added a lot of regex stuff, banaction/spamfilter helper functions, etc
  into s_misc.c. [note: current code has some bugs but since the stuff isn't
  used that's no problem... it's also a bit ugly, do NOT mail me about these things ;p]
- Enabled talk-trough-+M for opers (just like +m)
- Disabled talk-trough-+m/+M for opers if NO_OPEROVERRIDE is defined
- Display zlib/SSL version in /version (oper only)... will prolly be improved later.
- updated doc/compiling_win32.txt
2004-01-16 21:40:18 +00:00
codemastr cfa469a940 Doc change 2004-01-11 21:36:57 +00:00
codemastr cbf7f33bf1 /who fixes 2004-01-11 21:01:53 +00:00
codemastr 58d2882fb5 Fixed a /kick bug 2004-01-11 15:38:24 +00:00
codemastr 11877f5270 Various fixes 2004-01-10 16:33:26 +00:00
codemastr ccd8318cd4 Extban fixes 2004-01-10 05:53:36 +00:00
codemastr aeff467a36 Made extbans use the module objects system 2004-01-09 00:56:15 +00:00
codemastr 5ce3fcc1e3 Fixes for TRE under win32 2004-01-08 19:00:44 +00:00
codemastr 973ac25a4a Made CmodeAdd return MODERR_EXISTS if the mode already exists 2004-01-08 16:51:29 +00:00
codemastr 1da0b9a540 Bug fixes and EXTBAN 005 token 2004-01-08 16:39:35 +00:00
codemastr 759be00efe Fixed a compile bug regarding TRE 2004-01-07 00:28:46 +00:00
codemastr 3dd67bf248 Integrated TRE into Unreal 2004-01-04 20:12:31 +00:00
codemastr ce14fdec61 Added TRE compiling 2004-01-04 19:11:50 +00:00
codemastr ab919886b5 More work on TRE 2004-01-03 17:43:29 +00:00
codemastr 57dcbd80f7 Operoverride fixes 2004-01-03 05:01:00 +00:00
codemastr decc5ba107 Remove FLAGS_TS8 stuff 2004-01-03 01:23:08 +00:00
codemastr d274d493fd ... 2004-01-02 23:12:27 +00:00
codemastr 43070cde48 More TRE stuff 2004-01-02 21:15:35 +00:00
codemastr 5de605d767 Made the TRE library get compiled 2004-01-02 20:30:41 +00:00
codemastr be84de8bde Updated the TRE library source to 0.6.4 2004-01-02 20:14:15 +00:00
codemastr 7c0620eae8 Updated the win32 TRE lib to 0.6.4 2004-01-02 20:04:35 +00:00
codemastr 1ff17b798e Updated the TRE library source code to 0.6.3 2004-01-02 04:32:35 +00:00
Bram Matthys 56cb95f189 - internal: Modified TKL system (getting ready for anti-spam system):
Instead of 1 big list of *lines, it's now an array to easily distinct between types.
  Also made tk->usermask static (USERLEN+2) instead of dynamic.
  These changes should give enough speed improvement to make the new anti-spam/anti-ads
  feature fast enough.
2004-01-01 22:53:50 +00:00
codemastr 081056522e More remote include fixes 2003-12-31 21:24:23 +00:00
Bram Matthys 0e0015a77a - Added some additional warnings for insane large values for allow::maxperip, and class::* stuff. Reported by Erik_Rana (#0001463). 2003-12-31 17:22:10 +00:00
codemastr 042ce07691 Various remote include fixes 2003-12-30 18:45:40 +00:00
codemastr 829a3c8a1f Made remote includes work with SSL protocols 2003-12-26 00:51:25 +00:00
codemastr 3be92d0201 added configure checks for libcurl and other various changes 2003-12-26 00:29:36 +00:00
codemastr f8e916d356 Fixed a bug with unloading modules on Mod_Load failuer 2003-12-23 22:28:42 +00:00
codemastr 084d57cef1 Updated TRE dll and fixed a MAX_PATH problem 2003-12-23 01:47:02 +00:00
codemastr 99d1b1e0d1 Made it possible to use remote includes in win32 2003-12-23 00:25:04 +00:00
codemastr 5daa253210 Added join_channel 2003-12-21 20:22:50 +00:00
Bram Matthys 41f81b2643 - internal: changed is_banned() again: cptr,sptr -> sptr (dropped cptr). It was too
confusing (and thus causing bad code/bugs) and was never used anyway.
2003-12-21 15:10:13 +00:00
Bram Matthys 93e187f4a3 - As expected, fixed a crashbug in extended bans system. Reported by Rocko (#0001444). 2003-12-21 14:48:48 +00:00
codemastr da3afb3420 Made the extban stuff compatible with the module API 2003-12-20 21:21:10 +00:00
Bram Matthys 240f7fbd04 minor fix 2003-12-19 23:50:11 +00:00
Bram Matthys 6ad735364f - Updated win32 makefile... 2003-12-19 23:43:25 +00:00
Bram Matthys 426fbd9663 - Added "extended bans". An idea from SorceryNet ircd.
These bans look like ~<type>:<stuff>. Currently the following bans are available:
  ~q: quiet bans (ex: ~q:*!*@blah.blah.com). People matching these bans can join
      but are unable to speak, unless they have +v or higher.
  ~c: channel bans (ex: ~c:#idiots). People in #idiots are unable to join the channel.
  ~r: gecos (realname) bans (ex: ~r:*Stupid_bot_script*). If the realname of a user
      matches this then (s)he is unable to join.
      NOTE: an underscore ('_') matches both a space (' ') and an underscore ('_'),
            so this ban would match 'Stupid bot script v1.4'.

  These bantypes can also be used in the channel exception list (+e).
  +e ~r:*w00t* makes anyone with 'w00t' in their realname able to join,
  and +e ~c:#admin makes anyone in #admin able to join, etc..

  This system allows modules to add extended bantypes too.

  This feature requires some additional testing, also the module interface will
  probably be changed in the next few weeks, and perhaps more extended bans will
  be added before next release.. we'll see...
2003-12-19 23:39:30 +00:00
codemastr cd5567a02a Merged the win32 makefiles into one file 2003-12-19 20:18:37 +00:00
codemastr 3439f9f02b Added include/url.h 2003-12-17 19:19:10 +00:00
codemastr f8486ab94b Added a patch to make hide-ulines apply to /who, /whois and /whowas 2003-12-17 03:24:47 +00:00
codemastr af289c8687 Various fixes and changes 2003-12-16 19:39:38 +00:00
codemastr 53f0297b8c Started some work on the remote include system 2003-12-14 04:49:46 +00:00
Bram Matthys 105dd3c092 - Added set::static-part: similar to static-quit, default 'no' (static-part disabled).
If set to 'yes' or '1' it will strip all part comments,
  if set to something else it will use that as a part comment.
- Partial cleanup of m_part (hopefully I didn't destroy anything).
- Minor stats compile warning fixed
2003-12-11 21:27:33 +00:00
Bram Matthys 6c4e63656b - Made it compile at windows again 2003-12-10 03:28:40 +00:00
Bram Matthys c3d09408e9 - Added error checking/error messages to new module reloading system, to catch errors like
insufficient hd space, permission denied, etc..
2003-12-10 03:16:16 +00:00
Bram Matthys cb6b67e586 - Made "chanop notices" only go to @#chan on non-prefixaq servers (and to ~&@#chan otherwise),
internal: added ugly macro CHANOPPFX which is "~&@" if prefix_aq, else "@".
2003-12-10 02:28:12 +00:00
codemastr f2a2fa77c8 New module rehash system fixes 2003-12-07 04:58:39 +00:00
codemastr 3a5a4947f0 Made it so modules can be reloaded (new image) on /rehash 2003-12-06 01:09:32 +00:00
Bram Matthys 5a6e957a9d docs.. 2003-12-06 00:27:59 +00:00
Bram Matthys 5a48671691 - Added channelmode +T: no notices allowed in channel. 2003-12-05 22:43:48 +00:00
Bram Matthys 6d497a9ae6 - '/rehash <server>' didn't reload motds&rules files, reported by w00t (#0001409). 2003-12-05 14:55:11 +00:00
Bram Matthys 5cec9564f6 kine-address to kline-address 2003-11-30 23:25:46 +00:00
Bram Matthys b537553d2e - example.conf: added +i in modes-on-connect.
- Temporarely added fdlist debugcode, please report any bugreports it gives,
  it would especially be helpful if you know _what_ triggered the error :).
2003-11-30 23:17:33 +00:00
codemastr b27e04b7a1 Fixed a bug with SVSNLINE - 2003-11-30 00:48:37 +00:00
Bram Matthys 1f0e883094 documented E version flag... 2003-11-26 19:57:43 +00:00
codemastr 5eafc5a1bc Fixed a problem with the rehashflag hook 2003-11-26 19:52:13 +00:00
codemastr 957e72dd98 Added HOOKTYPE_PRE_LOCAL_PART 2003-11-26 19:51:02 +00:00
codemastr abef160bce Changed the callback for HOOKTYPE_REHASHFLAG 2003-11-24 21:28:46 +00:00
Bram Matthys 7571387422 - A last-minute fix, lalala... 2003-11-24 15:32:02 +00:00
Bram Matthys 039a9753cd - A last-minute fix, omg... 2003-11-24 15:04:48 +00:00
Bram Matthys e43e1e1799 got everything ready for sts to tag :p 2003-11-23 17:33:57 +00:00
Bram Matthys 364c4a879c - Changed version to beta19 2003-11-22 23:52:01 +00:00
Bram Matthys 9eedf89ea5 typo, gr! 2003-11-21 20:43:52 +00:00
Bram Matthys 044d01e1d7 - Added stuff that will easy the transition to extended bans next release.
- Added beta19 release notes
- Made USE_ZIP the default again in src/win32/unrealinst.iss
2003-11-21 20:30:53 +00:00
Bram Matthys 948b4e61ad - Added comment regarding MLOCK and set::restrict-chanmodes in unreal32docs.html.
- Made PREFIX_AQ a ./Config question at *NIX and enabled it by default at Win32.
2003-11-21 15:13:45 +00:00
Bram Matthys fd5579dbde - Fixed a compile problem on alpha, reported by Hyperi (#0001374).
- Made "operator count bug" not notice all opers (log only), unless in debugmode.
2003-11-20 19:33:03 +00:00
Bram Matthys 3897fa417b - Made OperOverride work for chanmode +Q (#0001370).
- A few example.conf changes.
2003-11-20 17:28:40 +00:00
Bram Matthys b462450293 - Made /rehash reread botmotd and opermotd (#0001291). 2003-11-20 02:22:01 +00:00
Bram Matthys dee0370ced - Fixed remote BOTMOTD bug reported by Angrywolf (#0001365).
- Workaround for "special ban makes it impossible to add other bans" bug
  reported by wilkie, SerialKillinNinja, etc.
2003-11-20 01:37:42 +00:00
Bram Matthys 37a93b5502 - Added oper::maxlogins which allows you to limit the number of concurrent session
with the same oper block. Suggested by kain.
- Made /dns oper-only (the ircd command, not your client /dns command :p).
- Various help.conf fixes. Reported by nukie (#0001373).
2003-11-19 23:41:34 +00:00
Bram Matthys eacfd5eb5c - Fixed a snomask issue reported by Magnet (#0001354). 2003-11-11 23:22:53 +00:00
Bram Matthys dc73bd3a2d - Made win32 work again (broke it by /module patch 35 minutes ago). 2003-11-11 20:20:23 +00:00
Bram Matthys d6fd665ede - Multiple /module changes (the command):
- Normal users can now get a list, versioninfo will be hidden however.
  - Opers get some additional details like hooks and commandoverride's.
  - Opers can use /module <servername> to get a remote list of loaded modules.
  - Added flag [3RD] to show it's a 3rd party module
  This was requested by by quite some people because serveradmins started to load
  "spy modules" without clearly mentioning it in the MOTD (which is highly unethical
  and in some countries even illegal due to privacy law). Also the remote module
  list was requested by quite a few opers.
  Sure, this isn't a 100% guarantee but at least if someone goes hiding stuff
  then it's clear what their intentions are (and thus will be refused support, ..).
- Changed emailaddr in help window at windows to unreal-users mailinglist.
- Made the cloak mismatch msg during linking a bit more scary.
- Added comment to 'Install as a service' option in installer to help n00bs a bit.
2003-11-11 19:45:09 +00:00
Bram Matthys 58f0749fa3 - Fixed desynch bug regarding extended channelmodes. Reported by AngryWolf (#0001347) 2003-11-09 02:52:43 +00:00
Bram Matthys 9d33644df1 - Fix for permanent modules w/ config hooks (they were not called). 2003-11-06 17:34:46 +00:00
codemastr 17104a0d9e Removed references to tkline/tzline from help.conf 2003-11-05 23:47:02 +00:00
Bram Matthys b4f5788c8f - (Internal) Moved most valid-host checking into 1 function, valid_host(),
which checks for invalid characters.
- Added hostname check for me::name since this could cause mysterious trouble.
2003-11-04 01:38:01 +00:00
Bram Matthys c3dd8d08d5 - Made it so chanmode +f flood detection doesn't apply to u-lined servers. This was
already indirectly the case because services don't support the EOS command, but
  now some (homemade) services do :p. Reported by Troco (#0001337).
2003-11-04 00:27:31 +00:00
Bram Matthys 448ad3839a - Fixed a UMODE2 bug. 2003-11-03 17:10:20 +00:00
Bram Matthys ae87101170 - Added insane OperOverride system for joining +z channels (#0001189).
This seems better than just allowing the insecure oper trough +z.
2003-11-03 01:06:23 +00:00
Bram Matthys 3b37b0927f - Fixed a bug where link::options::autoconnect wasn't working after rehash, ircd
had to be restarted to make it work. Will now try to connect on /rehash to
  servers with autoconnect enabled. Bug was reported by Rocko (#0001321).
2003-11-03 00:05:47 +00:00
Bram Matthys 1e162381ac - Fixed some other weird remote PING/PONG stuff as well. 2003-11-02 20:05:12 +00:00
Bram Matthys c25223913c - (Internal) Added __attribute__ format checking for most format string functions,
this will currently produce a lot of warnings with -Wall.
- Fixed 159 of 184 warnings detected by the above, the other warnings are false.
  Most warnings had to do with long vs int, and thus the format strings (%d->%ld)
  or the vars (int->long) have been changed (many of these were time_t/TS vs int).
  Only a few rare crashbugs were discovered.
- Module coders: for HOOKTYPE_LOCAL_CHANMODE the 'sendts' parameter was changed
  from type 'int' to 'time_t', while in most circumstances (like on ia32)
  you won't notice, I suggest you to update your callback functions anyway.
- Possibly fixed an issue with set::modes-on-join and mode +f, it could have
  set random remove-chanmode times in the default chanmode line.
2003-11-02 02:58:11 +00:00
Bram Matthys e52956fd77 - Don't allow remote pongs if unregistered. 2003-11-01 13:58:44 +00:00
Bram Matthys 79bc20a994 - Minor doc updates regarding snomasks reported by Stoebi (#0001324).
- Fixed two OperOverride kick bugs:
  - If ircop is +h and victim is +h it would deny it, reported by Special (#0001308)
  - Ircops (all except netadmin) had trouble kicking +q people, if the ircop isn't
    op'ed he can kick them, but if he has +o he can't. Reported by Michi (#0001012).
  If you use mixed unreal versions you can get desynch problems if you use those
  fixed things (like kick a +h if you are +h) because older servers will still block
  the kick. You will receive a 'You cannot kick channel' message from every older
  server so you'll at least be notified ;p.
2003-10-31 19:08:47 +00:00
stskeeps 5a32b8dc7e foo 2003-10-31 17:13:34 +00:00
stskeeps ba0dd97653 foo 2003-10-31 16:50:10 +00:00
Bram Matthys 2c00dd0546 added set::ban-version-tkl-time to /stats S and updated docs. 2003-10-30 21:38:45 +00:00
Bram Matthys 84d32b5378 - Fixed bug where color quits were stripped when they shouldn't be >:).
- Added 'action' field to ban version { } which can be: kill: kills the user (default),
  tempshun: shun the specific connection only, kline/zline/gline/gzline/shun: place
  a ban on *@IP. Time of those bans can be specified in set::ban-version-tkl-time.
  It's up to the admin to take a good decision, sometimes zlines are best (=won't use
  much sockets but will reconnect quite quickly), sometimes tempshun (=will use 1 socket
  but generates nearly no network traffic), sometimes klines/glines, etc..
2003-10-30 19:08:50 +00:00
Bram Matthys 5baebf692b - Moved it a bit too far (outside the loop), should be fixed now. 2003-10-28 18:47:05 +00:00
Bram Matthys 60f7aadf05 - Module coders: Moved call to HOOKTYPE_LOCAL_JOIN down to where the JOIN, NAMES, etc
are already sent... this seems to make more sense since we have a prejoin hook now.
2003-10-28 02:00:28 +00:00
Bram Matthys 9f4ce0d91d Added set::options::allow-part-if-shunned, is that name long enough? god.. 2003-10-27 00:44:41 +00:00
codemastr 4fcae4f1a1 Made DCC deny work with files with spaces 2003-10-26 20:39:47 +00:00
Bram Matthys 4264082420 - Fixed a bug regarding +f and bounce modes, would cause a crash, reported by Rocko. 2003-10-26 20:05:38 +00:00
Bram Matthys ff85a1f7b4 - Added HOOKTYPE_REMOTE_NICKCHANGE (called like: cptr, sptr, newnick). 2003-10-25 18:51:49 +00:00
Bram Matthys d64fb8dbab Multiple changes...
- Changed some useless stuff.
- Enabled EXTCMODE by default, I presume it's stable but can't promise anything.
- Module coders: changed 'allowed' callback function for umodes&snomasks,
  from 'aClient *sptr' to 'aClient *sptr, int what'.
  'what' will be MODE_ADD if trying to add and MODE_DEL if trying to remove.
2003-10-25 16:39:23 +00:00
Bram Matthys 2a469b1942 - Fixed a problem regarding module hooks, if a hook was called within a hook it could cause
problems (like pre connect hook -> exit_client -> quit hook).
2003-10-23 22:15:52 +00:00
Bram Matthys be86f0db32 - Fix for +L without +l desynch on serverlinking. 2003-10-23 17:30:32 +00:00
Bram Matthys ea7aca9a66 "typo"... not all *lines are glines :p 2003-10-19 20:11:33 +00:00
Bram Matthys 7efd5e8cda - Fixed gline with weird value causing a crash at windows, reported by Spectre (#0001309). 2003-10-19 20:03:23 +00:00
Bram Matthys ad9d0370fa Added remove-chanmode-after-X-minutes in +f & checks for /sethost&/chghost to same host.
- Added checks for /sethost&/chghost to same host.
- Added remove-chanmode-after-X-minutes in +f.
  The format is +f [30j#R5]:15, where 5 is the "do -R after 5 minutes". For a default
  action like +i you would have to do the same: +f [30j#i5]:15 (remove 'i' after 5 minutes).
  Additionally, 2 config items are added:
  - set::modef-default-unsettime, if this is set to for example '5' then things like
    +f [30j]:15 will be transormed into +f [30j#i5]:15. It's just a default, the user can still
    override it. By default this feature is not used.
  - set::modef-max-unsettime, specifies the maximum amount of time for the <time> parameter,
    by default this is set to 60 (=1 hour), the value should be between 0 and 255.
  I didn't do the extended tests I usually do but it seems stable, also the docs are updated
  but are probably updated again later to make it a bit more readable.
  Feel free to report any bugs as soon as you discover them.
  The only thing I could think of is: _usually_ only 1 server will have the -i/-R/.. timer
  running, so if that server splits (or even worse dies) it will only be -i/-R/.. at that server
  and when they sync back they merge chanmodes so +i/+R is set again.
  I don't consider this a huge problem but maybe it can be inconveniently, if people have
  a lot of trouble with this I'll have to consider a 50% recode of the +f system :/.
2003-10-18 18:44:54 +00:00
Bram Matthys 2b9f88c6d2 - Optimized send code re-enabled, I disabled it 6h ago due a bug-triggering-a-bug (see next).
- Fixed a PING bug resulting in 'trying to send .. to myself' msg.
- Some spelling corrections in unreal32docs.html.
2003-10-14 19:43:07 +00:00
Bram Matthys e02aab8d41 temporarely rollback... have some crashbug somewhere. 2003-10-14 14:01:07 +00:00
Bram Matthys b189e632c9 - Now it would be even better if it actually compiles... 2003-10-14 04:26:27 +00:00
Bram Matthys 3ef5ae6a80 - Yet another code audit:
- (Just for the record, this audit has nothing to do with the ircnet buffer overflow,
     unrealircd is not vulnerable)
  - Various fixes
  - Visual bug regarding +f & server synching, it was sometimes setting mode +f multiple
    times depending on the ban-/userlist.
  - Fixed a possible desynch regarding chmode +L.
  - Fixed possible client confusion regarding bans.
2003-10-13 17:56:49 +00:00
codemastr f3f2390615 Added umode +T (no ctcp) 2003-10-04 20:13:10 +00:00
codemastr 0e22126286 Added the ability to limit /who replies 2003-10-03 23:36:39 +00:00
Bram Matthys 5a65bcac20 blah... useless change. 2003-10-03 20:01:15 +00:00
Bram Matthys 8359ab9c76 - Fixed even more negative oper count bugs... 2003-10-03 19:52:12 +00:00
codemastr 97402c11a6 Fixed a negative oper count bug in SVSNOOP 2003-10-02 22:32:53 +00:00
codemastr 573dc68378 Documentation fixes 2003-09-28 21:08:52 +00:00
codemastr 59d73bf18c Added a command override system for modules 2003-09-28 19:43:15 +00:00
Bram Matthys 7d95c02ed1 - Minor botmotd-on-mode+B fix (was causing some useless servertraffic). 2003-09-28 02:06:03 +00:00
codemastr db445c0faf Sped up the message searching functions 2003-09-27 00:29:24 +00:00
codemastr 6612642d47 ... 2003-09-24 00:15:34 +00:00
codemastr 55ce8f9356 fixed a problem with tre.dll 2003-09-24 00:06:00 +00:00
Bram Matthys b0705fb7c5 - Changed version to 'beta18' 2003-09-21 22:19:38 +00:00
codemastr 3e4cfea3da Updated modules to use the new macros 2003-09-21 19:59:50 +00:00
Bram Matthys 7646a3735c - Minor doc update. 2003-09-21 18:09:14 +00:00
cknight 138923af18 Added ref link to section 4.9 from section 4.34 2003-09-21 18:04:54 +00:00
cknight 6b5adc7fe8 Updated .CHANGES.NEW to read Beta18 2003-09-21 17:23:54 +00:00
cknight b1338a1b41 Very Very small change to doc/example.conf 2003-09-21 16:46:25 +00:00
Bram Matthys 1b719f393f - Fixed hunt_server* bug 2003-09-21 16:40:54 +00:00
Bram Matthys 59a417e369 - Fixed a win32 resolver lockup bug 2003-09-21 14:31:17 +00:00
codemastr d803c716d6 Added some macros for modules 2003-09-20 23:39:45 +00:00
codemastr d051786f5c Channel hook changes 2003-09-20 19:57:46 +00:00
Bram Matthys 729689a4cd - Fix for HOOKTYPE_REMOTE_QUIT (was called for local quits too) 2003-09-20 14:47:47 +00:00
codemastr af2834d5e9 Added HOOKTYPE_REHASHFLAG 2003-09-20 00:20:36 +00:00
Bram Matthys 7aa7ea31b8 - Added beta18 release notes (might be changed) 2003-09-19 23:00:38 +00:00
codemastr b72b10d5ae TRE 2003-09-19 21:24:47 +00:00
Bram Matthys a316e4af6f - Added HOOKTYPE_REMOTE_QUIT 2003-09-18 23:41:32 +00:00
Bram Matthys 2d4f52665c - Added HOOKTYPE_LOCAL_PASS and HOOKTYPE_REMOTE_CONNECT 2003-09-18 01:31:10 +00:00
Bram Matthys d722051fb6 - Added set::default-bantime. It allows you to set the default time for a gline/kline/gzline/shun/etc when the time is not not specified (like with /gline *@*.stupid.net). 2003-09-18 00:08:48 +00:00
Bram Matthys 36392a485e +f regarding -R/-M blalbalba docs etc, grr commit plz! 2003-09-15 19:25:24 +00:00
codemastr 4ec62271c8 Made the win32 version use libtre for regex instead of GNU regex 2003-09-14 23:35:33 +00:00
codemastr 142f037fd2 Linux PPC fix 2003-09-14 16:43:02 +00:00
Bram Matthys 3c96db4e4d - Added HOOKTYPE_UNKUSER_QUIT (disconnects of unregistered clients). 2003-09-14 16:17:38 +00:00
codemastr 192556763f Fixed a win32 resolver bug 2003-09-12 21:33:11 +00:00
Bram Matthys 04f934d04c - Finished some of the extcmode code (memleaks). 2003-09-12 01:58:11 +00:00
Bram Matthys b63c1d2399 - Added checks for ipv4 listen lines on ipv6 compile. 2003-09-12 00:05:55 +00:00
Bram Matthys 7e2ca393ad - Minor +f code tweaks. 2003-09-11 19:33:20 +00:00
Bram Matthys 8f5fcc1704 - Fix-for-fix-for-+mu-fix (it was still crashing)... don't ask. 2003-09-08 00:29:02 +00:00
Bram Matthys 217c9ee30d there was no newline at end :p 2003-09-07 23:17:28 +00:00
Bram Matthys 6057b5749a - Fixed a SVSMOTD crashbug (removing of motd). 2003-09-07 22:55:15 +00:00
Bram Matthys 9e23c67a61 - Fixed Q:lined nickname msgs during linking and a debug fix. 2003-09-07 21:05:42 +00:00
Bram Matthys 632e0cbf88 - Improved SSL error msg sent to junk snomask. 2003-09-07 18:14:19 +00:00
codemastr d0a632a7b1 Fixed a typo 2003-09-07 16:07:41 +00:00
Bram Matthys 6237ee2239 - Fixed a crashbug introduced by +mu fixes 3 days ago (#0001237). 2003-09-07 15:50:11 +00:00
Bram Matthys da6eceef41 - Added official-channels block. These channels are listed in /list even if they have 0 users. 2003-09-06 23:16:18 +00:00
Bram Matthys 06cdd686de - Added clientsonly/serversonly/ssl/java flags to /stats P (#0000992). 2003-09-06 19:46:43 +00:00
Bram Matthys 7aa1ff0f78 - Added warn option to deny channel, this will send a notice to the eyes snomask when a user attempts to join. Suggested by Joolz (#0000992). 2003-09-06 19:27:37 +00:00
Bram Matthys 1eabf58160 Made it so that with +M and user not +r and not voice/halfop/ops/etc the part message isn't shown, just like with +m. 2003-09-06 00:39:07 +00:00
Bram Matthys e42336433c - Temporarely added trace code for hunting down negative operator counts (#0001155). 2003-09-05 23:06:17 +00:00
Bram Matthys 8899e0b366 - Will now strip/block color codes in quits if any channel the user is in has mode +S/+c. 2003-09-05 22:19:09 +00:00
Bram Matthys 4975d04299 - Badwords filtering is now only done for local clients, previously every server was filtering the message. This will reduce CPU usage, especially at hubs (#0001022). 2003-09-05 21:53:19 +00:00
Bram Matthys 4128d32eab - Fixed a chroot bug, reported by iceblade (#0001112). 2003-09-05 21:13:36 +00:00
Bram Matthys 153a3eea53 blah 2003-09-05 21:00:25 +00:00
Bram Matthys 8bfcc56c9e - Fixed an old bug where allow::hostname localhost (or *@localhost) didn't work (#0001115). 2003-09-05 20:38:52 +00:00
Bram Matthys 0475c6b874 - Fixed a /rehash crash regarding badword all & regex badwords, reported by Angrywolf (#0001230). 2003-09-05 20:11:48 +00:00
Bram Matthys 5c1225fc71 - Doc fixes/updates reported by Angrywolf (#0001163, #0001176). 2003-09-05 19:56:46 +00:00
Bram Matthys fb1ad02810 - Fixed a double OperOverride notice bug reported by DukePyrolator (#0001180). 2003-09-05 19:39:05 +00:00
Bram Matthys 49f5e68768 - Made anti away flood system work just like anti nick flood (#0001205). NO_FLOOD_AWAY is now enabled and away-flood is set to 4 per 120s by default. 2003-09-04 23:20:52 +00:00
Bram Matthys bc5a744312 - And another +f + modes-on-join one... 2003-09-04 20:33:20 +00:00
Bram Matthys 09178f3a0c - Fixed a crashbug with +f and services, reported by Rocko (#0001227). 2003-09-04 20:04:49 +00:00
Bram Matthys c9f03422e7 - Fixed a bug in +f + modes-on-join + 't' subfloodtype, reported by Rocko (#0001228). 2003-09-04 19:22:33 +00:00
Bram Matthys b140156778 - Probably fixed a bug regarding 'setting mode' notice with +f (was sometimes sent to non-chanops).
- Fixed multiple chmode +u bugs: remote join, netjoin, +mu relay between servers, kick and
  a part bug. Most of them reported by Lx (#0001097).
2003-09-04 19:04:43 +00:00
Bram Matthys aee400a104 extra +f action support: c#m c#M j#R m#M 2003-09-01 15:33:33 +00:00
Bram Matthys 8c5246bc25 - Fixed problem with opers having both 'admin' and 'coadmin' causing double-notices (#0001043). 2003-08-31 21:11:13 +00:00
Bram Matthys 7efe268c3b - Made SSL users unable to -z themselves, also added 2 flags to /stats S, reported by Joolz (#0001200). 2003-08-31 20:52:37 +00:00
Bram Matthys 331d10b5a4 - Fixed bug regarding hidden opers + m_whois cleanup (#0001208). 2003-08-31 20:04:00 +00:00
Bram Matthys 51b15e583c - Fixed minor config parser memleak reported by AngryWolf (#0001214). 2003-08-31 18:36:01 +00:00
Bram Matthys dc1a5a3e04 - Fixed a channel sync bug reported by thilo&Rocko (#0001218). 2003-08-31 18:10:16 +00:00
Bram Matthys 372814470f - Fixed ~5 compiler warnings at *NIX and ~20 at windows. Some of them _could_ have caused problems. // - Moved EOS debugging code to DEBUGMODE. 2003-08-31 00:36:31 +00:00
Bram Matthys 2f38c277f0 major channelmode +f change... oh-oh... I really hope this works ok :p 2003-08-30 20:23:49 +00:00
codemastr 09377cf3a0 Module system error reporting support 2003-08-24 19:41:51 +00:00
codemastr 23cdfb4597 ... 2003-08-24 15:53:22 +00:00
codemastr e741087ce4 extcmode changes 2003-08-24 00:56:31 +00:00
codemastr a450522052 *nix resolver for Windows 2003-08-21 16:11:08 +00:00
Bram Matthys bf156f47b6 - Allow opers to talk in channel even if +m (#0001109). 2003-08-17 19:39:30 +00:00
Bram Matthys e484db317d Allow o/a/q'd users to nickchange if banned (#0001150), Added badword all { }, config.h cleanup
==
- Allow o/a/q'd users to nickchange if banned (#0001150).
- Added badword all { }, this will add the badword to the badword channel, badword message
  and badword quit lists... could be useful :p.
- Little config.h cleanup (removed obsolete non-working defines).
2003-08-17 01:28:04 +00:00
Bram Matthys da18f18fa3 Minor oob read; someone forgot a parameter in sendto_one ;p 2003-08-17 00:05:38 +00:00
Bram Matthys 7f9841b01d Internal code cleanups, changed away flood configthing, added nickflood protection
===
- Internal code cleanups: EOS var rename, got rid of old UnknownUser structs, moved
  anti away flood to new flood struct.
- Changed away flood configuration to set::anti-flood::away-flood <count>:<period>.
- Added nickflood protection, can be set in set::anti-flood::away-flood <count>:<period>
  to allow max 'count' nickchanges per 'period' seconds. The default is 3 per 60s.
  As usual, the nickchange limiting does not apply to ircops.
2003-08-16 22:49:51 +00:00
Bram Matthys fe63f8476a - Fixed minor /WALLOPS bug reported by Praetorian_ (#0001195). 2003-08-16 16:11:52 +00:00
Bram Matthys 57f337a738 *just commit da crap* 2003-08-16 15:56:50 +00:00
Bram Matthys 1681fce504 multiple changes...
- Updated example.conf with a more strict default oper-only-stats.
- Made '/stats S' and '/stats Z' oper only again (always).
- Hopefully fixed incoming/outgoing rate in /stats T. Only the stats of the first
  listener was counted instead of the total. This also explains why on some (many?)
  ircd configurations it always showed 0.00 kb/s and why HTM (high traffic mode)
  was never kicking in.
2003-08-10 20:53:09 +00:00
codemastr 61fed28198 ... 2003-08-06 23:55:34 +00:00
codemastr 392fad7d3a Fixed a stats l/L bug 2003-08-06 23:55:13 +00:00
Bram Matthys 64eb8a9aa5 - A few documentation updates/fixes
- 005 CHANMODES= set back to original value before extcmode merge
- made some functions in channel.c non-static so module coders
  can use them (they are not defined in the header files [yet] however).
- fixed 2 minor oob write issues
2003-08-04 21:38:33 +00:00
codemastr c5643f70c3 Fixed a +k/+L bug with using the same parameter 2003-08-04 21:32:30 +00:00
codemastr f2ee326b4c ... 2003-08-04 20:54:51 +00:00
codemastr 73469bfea0 ... 2003-08-04 20:43:18 +00:00
codemastr 06b63be683 Added ModuleGetOptions and ModuleSetOptions 2003-08-04 20:40:32 +00:00
codemastr 78e9f881db Fixed a snomask and umode bug 2003-08-04 18:02:51 +00:00
codemastr 4db7542ee1 Recoded the usermode module system 2003-08-03 23:30:12 +00:00
codemastr c8bfc594cd Fixed a /stats bug 2003-08-03 18:05:49 +00:00
codemastr 4ac2e2ce6b /stats fixes 2003-08-03 00:00:56 +00:00
Bram Matthys 3eb5f121ef - stats bugfixes: a null pointer crash and a '/stats k' bug. 2003-08-02 00:00:21 +00:00
codemastr 83c2567d34 ... 2003-08-01 19:43:08 +00:00
codemastr 161e62ccc0 Added a new stats system 2003-08-01 19:13:46 +00:00
codemastr 313aa1e26c Fixed a problem with Sleep 2003-08-01 16:53:21 +00:00
Bram Matthys 6f2d85fbb6 - Fixed bug in /silence regarding cloaked hosts, reported by kuwatog (#0001157). 2003-07-31 16:37:25 +00:00
Bram Matthys 89ddc95c72 - minor m_kick tweak. [could help us in the future] 2003-07-29 19:13:36 +00:00
Bram Matthys 81035a2c3e - Fixed bug with SWHOIS: oper::swhois wasn't broadcasted correctly which made it only show up in local (or server) /whois, reported by format (#0001141). 2003-07-29 18:52:28 +00:00
Bram Matthys 41a0896d6d - First big part of modulized extended channelmodes system 2003-07-29 17:07:17 +00:00
Bram Matthys ded7f11727 - Some minor text/documentation fixes. 2003-07-28 15:43:30 +00:00
Bram Matthys b73de3c497 - Will now error at too large cloak keys (2147483647 and greater) because it's dangerous
and could cause cloak key differences (ex: mixed ia32&ia64 networks).
2003-07-22 17:01:58 +00:00
codemastr 6e45d6ccd3 Fixed a PPC problem 2003-07-18 22:02:14 +00:00
codemastr 4bda94acf3 Crontab fixes 2003-07-16 21:13:25 +00:00
codemastr 550ec43931 Documentation updates 2003-07-15 19:08:44 +00:00
codemastr 523c2fe815 Fixed a +b/+e bug 2003-07-15 18:31:53 +00:00
codemastr ecc53cc37a Fixed numerous logging bugs 2003-07-15 18:21:53 +00:00
codemastr d6f59a90c7 Various fixes/cleanups 2003-07-15 14:52:44 +00:00
codemastr 5732a799bd Made unreal work under Linux PPC 2003-07-15 14:35:46 +00:00
codemastr 51462f5ee1 ... 2003-07-14 22:23:32 +00:00
stskeeps f3f3703273 - Fixed ircd.c compile error discovered by Ravage 2003-07-14 15:33:43 +00:00
codemastr 822db16d91 Cleaned up some /die code under Window 2003-07-13 19:39:37 +00:00
codemastr 9df80388a7 various bug fixes and updates 2003-07-13 16:43:26 +00:00
Bram Matthys f574385475 - Fixed problem with make custommodule and multiple EXLIBS arguments (EXLIBS="-la -lb -lc"). 2003-07-07 18:27:47 +00:00
Bram Matthys 460a61a6d6 - Fixed ban version crash and another read-after-free. 2003-07-06 22:13:01 +00:00
codemastr 5ac4bae7ef Added a system to allow modules to create snomasks 2003-07-01 19:22:24 +00:00
codemastr d2187a72e1 Added a find text feature to the win32 editor 2003-06-26 15:15:27 +00:00
codemastr eed7f9c62d Made the win32 editor maximizable 2003-06-25 20:43:11 +00:00
codemastr 71c691ed0b Added a goto button on the win32 editor toolbar 2003-06-25 16:08:42 +00:00
codemastr 2d0e78cb02 Win32 editor changes 2003-06-25 00:27:06 +00:00
Bram Matthys 7a82d28b19 - Updated docs a bit (how-to-get-support/FAQ link style). 2003-06-22 21:49:04 +00:00
Bram Matthys f6cd86a00a added readme and fdlist bounds checking. 2003-06-22 21:33:50 +00:00
codemastr 9c713f7aa7 Added set::channel-command-prefix 2003-06-22 17:12:39 +00:00
Bram Matthys 507559b6be - IPv6: added warning if a ::ffff:a.b.c.d type addr doesn't work since this "feature" is disabled by default at newer *BSD versions. Also improved another warning. 2003-06-22 00:23:45 +00:00
codemastr b7c02898fe Fixed some SVSMODE/SVS2MODE bugs 2003-06-19 14:44:44 +00:00
Bram Matthys b4dbc4dc72 - Fixed bug with /list and '?' wildcard, reported by maGGus. 2003-06-18 23:32:36 +00:00
Bram Matthys 909bc03521 ./update will now refer user to the docs on upgrade instructions. 2003-06-16 19:24:58 +00:00
cvs2hg 1d04e380a2 fixup commit for tag 'unreal3_2_beta17' 2003-06-15 17:01:50 +00:00
codemastr 31f2e23e30 temporarily disabled TRE 2003-06-15 17:01:49 +00:00
codemastr 4535a0d008 Minor crontab fix and docs update 2003-06-15 16:52:04 +00:00
Bram Matthys 0c56bf9ad2 lalala 2003-06-15 16:17:34 +00:00
Bram Matthys d927eef7dd blah 2003-06-15 14:16:41 +00:00
stskeeps 5b8ca94431 *** Unreal3.2-beta17 release *** (god save us) 2003-06-15 09:10:02 +00:00
Bram Matthys 953d70ba28 - Fixed PRIVMSG bug with multiple targets. 2003-06-14 20:31:26 +00:00
codemastr 153b7c284a Added an experimental (disabled by default) prefix system for +a and +q 2003-06-14 00:05:26 +00:00
codemastr 9661a1a713 Made ./Config setup TRE 2003-06-13 15:11:57 +00:00
codemastr 41c3d206c5 Added the TRE regex library 2003-06-08 19:55:48 +00:00
codemastr c5489b186d Added some WebTV stuff 2003-06-04 22:50:48 +00:00
codemastr 40157a056b Added short motds 2003-06-03 22:38:46 +00:00
codemastr 3af1172dce Recoded some resolver mutex stuff 2003-06-01 19:18:57 +00:00
codemastr d478ad75c2 Fixed a win32 resolver bug 2003-06-01 19:05:03 +00:00
Bram Matthys 50911f28e9 - Minor oob fix for parse_v4_netmask 2003-06-01 19:00:48 +00:00
Bram Matthys 00f857ae99 - Resolver fix nr #1 (prolly not "the real problem"). 2003-06-01 18:49:46 +00:00
codemastr a6d33b3841 Win32 editor fix 2003-05-31 19:26:41 +00:00
Bram Matthys f7d2e7a972 - Fixed _some_ gcc3.3 + -Wall warnings. 2003-05-31 02:12:44 +00:00
Bram Matthys bb53b0be8c - Fixed some MOTD problems: remote MOTD gone after rehash (#0001007) and motd time, etc... 2003-05-31 01:28:14 +00:00
codemastr 88af97045e Changed /whois 'secret channel' flag to '?' 2003-05-30 21:02:15 +00:00
codemastr 825ee732bf ./Config fixes for Solaris 2003-05-30 20:31:07 +00:00
Bram Matthys b3576b29db - Removed "Duplicate user entry in SJOIN" notice because the problem has been traced down. 2003-05-29 19:23:12 +00:00
Bram Matthys cf91b1d89a - Doc updates 2003-05-29 14:35:33 +00:00
Bram Matthys 2cc542f427 added some helpop/docs stuff stating username in /oper is case sensitive. 2003-05-28 22:44:11 +00:00
Bram Matthys fce9f6463a multiple patches:
- Module coders: new hooks: part, kick, chanmode, topic. changed: quit (added 'comment' param).
- Enlarged REPORT_* vars a bit.
- IPv6: UnrealIRCd can now lookup ip6.arpa addresses too (original IRCnet patch modified for
  UnrealIRCd by Onliner).
2003-05-27 22:38:17 +00:00
codemastr 11b0c97e85 Changed some wording in TKL 2003-05-23 17:31:35 +00:00
Bram Matthys 187ef2996d - Fixed bug in HOOKTYPE_LOCAL_JOIN which could cause 0-member-channels if a hook returned 1 and the channel was new. 2003-05-22 18:52:11 +00:00
luke 83bf47452d Fixed /map 2003-05-21 14:21:40 +00:00
codemastr 0d33d9a412 Fixed a win32 editor bug 2003-05-20 18:43:57 +00:00
Bram Matthys 2dc82a43cc - Probably fixed server-notices bug (duplicates, to non-opers) caused by a few SVS* cmds, reported by _loco_ (#0000991). 2003-05-20 17:57:25 +00:00
codemastr a4a447e788 Made /whois slightly faster 2003-05-19 20:39:39 +00:00
codemastr d7efc09cef Removed a reference to pthreads 2003-05-18 17:30:56 +00:00
codemastr 225a84e300 Removed TSP 2003-05-18 17:27:51 +00:00
Bram Matthys 33b1fb5d41 set::options::mkpasswd-for-everyone + Added error messages if not oper for: sdesc, mkpasswd, htm, rping, opermotd 2003-05-17 17:52:24 +00:00
Bram Matthys 96720abeda - Fixed regex detection problem (introduced by a change 2 days ago). <- i added that () comment so ppl don't think it was in beta16 ;p 2003-05-17 15:48:57 +00:00
codemastr 23248c91e6 Changed who flag & to ? 2003-05-16 20:01:22 +00:00
Bram Matthys 83d19d60e4 - Updated src/win32/unrealinst.iss a bit 2003-05-15 18:52:53 +00:00
codemastr 730c302c72 Made regex use extended regexps, and fixed a Sun compile problem 2003-05-15 18:40:08 +00:00
codemastr 2c3eb0339c Solaris compile fix, and deny channel::redirect 2003-05-14 22:34:44 +00:00
stskeeps 878a0f899b - Check in autoconf for MacOS X that will make compiling and running on it
to work
2003-05-13 12:35:52 +00:00
stskeeps 9e70767b8d little fix 2003-05-13 09:50:08 +00:00
stskeeps 7ea0e34f85 - Committed little de-Fizzer module to extras/ 2003-05-13 09:12:59 +00:00
codemastr 7589b92df7 Fixed an SVSMOTD bug 2003-05-12 19:14:03 +00:00
Bram Matthys 99dbe995c0 - Code cleanup (sys_errlist[]) 2003-05-12 18:45:21 +00:00
Bram Matthys 9d377150a1 forgot to change date!!!~~~ 2003-05-11 22:52:28 +00:00
codemastr 2e03a27b15 Fixed a bug in del_throttling_bucket 2003-05-11 21:38:30 +00:00
codemastr 847a2f4944 Resolver changes 2003-05-11 21:33:30 +00:00
Bram Matthys 374a7d5950 Added set::ident::connect-timeout and set::ident::read-timeout, updated example.conf: added throttle block. 2003-05-11 21:08:13 +00:00
Bram Matthys b780fc9347 - Updated flags in /version (and greeting), added 'Z' for zip links support, updated tech doc. 2003-05-11 19:12:57 +00:00
Bram Matthys fb5ea7d873 channelmode +f fix /// IPv6: Fixed unable-to-resolve-bug if both a A/AAAA record and NS/MX/etc records were present 2003-05-11 16:26:58 +00:00
Bram Matthys 0e4a8945e6 - And another minor +L fix. 2003-05-10 23:19:51 +00:00
Bram Matthys 4e74bbac1e - Code cleanup/merge m_join/channel_link: fixed multiple channelmode +L problems. 2003-05-10 21:56:31 +00:00
codemastr 370acc2abe Made it so it is no longer necessary for modules to copy the ModuleInfo structure 2003-05-10 18:53:50 +00:00
Bram Matthys f0a5ab1310 - Moved /stats zip from NOTICE to RPL_TEXT, updated stats documentation. 2003-05-10 00:27:29 +00:00
Bram Matthys dc3f546925 - Fixed numeric checking... someone was really drunk when he coded this "if ((l < 0) && (l > 254))" ;p. 2003-05-09 23:44:11 +00:00
Bram Matthys f46494f02f /WHO code cleanup + partial recode + bugfixes /// Updated example.conf about U-lines since many people set them wrong. 2003-05-09 20:02:20 +00:00
stskeeps c7366d942f Added CASEMAPPING=ascii as per request 2003-05-09 08:29:41 +00:00
Bram Matthys e0a4cf5100 - Misc /whois and webtv whois fixes 2003-05-09 00:41:25 +00:00
Bram Matthys 66d64a62c5 Fixed minor ban_version undeflow, no risk.
No risk coz a 0 len can only happen by a "\1version :" and in that case the -1'th char would be ':'... ;p.
2003-05-08 23:43:55 +00:00
codemastr f3e2f1c524 NETINFO * for cloak-keys 2003-05-08 23:32:38 +00:00
codemastr 012ba4da76 made ban version {} also listen to CTCP SCRIPT 2003-05-08 19:09:31 +00:00
codemastr a9f06266b7 Made the command loop slightly faster 2003-05-08 17:43:31 +00:00
codemastr ed7a06f1e5 Renamed channel mode +a to 'channel admin' 2003-05-08 17:37:25 +00:00
Bram Matthys 54f35ce6a5 added include "help.conf" to example.conf, not worht mentioning in Changes ;p 2003-05-08 02:12:04 +00:00
codemastr 740e86e4b9 Added a CommandExists function 2003-05-06 22:26:48 +00:00
Bram Matthys c6be4ee44f - Removed some leftover TECHAT references (#0000953). 2003-05-06 21:55:21 +00:00
Bram Matthys 906f4dd0b7 - Little find_client() audit. 2003-05-06 18:42:52 +00:00
Bram Matthys eb6b8f89bb - Fixed ripemd-160 vs ripemd160 confusion, reported by thelight (#0000949). 2003-05-06 03:48:17 +00:00
Bram Matthys 1557bab74a - Fixed a local /kill bug during connection phase, reported by Gilou (#0000952). 2003-05-06 00:18:02 +00:00
codemastr 114cec45b1 New version flag system 2003-05-04 21:30:38 +00:00
codemastr 69f0e97c9e Fixed a SVSMODE bug 2003-05-04 18:50:24 +00:00
codemastr c7de811b78 Fixed an operoverride bug with +aq 2003-05-04 17:37:25 +00:00
Bram Matthys 337d05a43d - Fixed unprecise RPING output at windoze, reported by pak (#0000945). + useless code cleanups 2003-05-04 16:44:40 +00:00
Bram Matthys 0a74098238 Fixed a badword::action block bug with regex. 2003-05-04 14:10:13 +00:00
Bram Matthys 0c0faa05af - Removed some leftover +I code (can_stealth/^). 2003-05-03 22:28:31 +00:00
Bram Matthys d1fc8bff14 - Fixed "make install" error caused by bugreport file removal. 2003-05-03 22:00:51 +00:00
codemastr 8d6e18d086 Fixed a /topic operoverride bug and vhost::vhost verification added 2003-05-03 18:18:07 +00:00
cvs2hg 95762dff6d fixup commit for tag 'unreal3_2_beta16' 2003-05-03 15:37:06 +00:00
stskeeps 526cd8ba65 beta16 release 2003-05-03 15:37:05 +00:00
stskeeps 5023f55bc9 fooo 2003-05-02 15:55:39 +00:00
stskeeps ae68ad4994 blah 2003-05-02 15:54:28 +00:00
stskeeps d20f17fa8b Removed credits.potential 2003-05-02 15:44:04 +00:00
stskeeps f637e456d7 - Removed some more html files. 2003-05-02 15:40:53 +00:00
Bram Matthys 88cc0b6d96 BOPM windoze URL 2003-05-02 00:45:22 +00:00
Bram Matthys e91c2a8eed - Made SVSNOOP work. Reported by Lx (#0000933). [not dangerous to fix ;P] 2003-05-01 19:52:06 +00:00
Bram Matthys 09f74a9b11 Added warning if set::scan exists with a nice BOPM url etc. 2003-05-01 19:44:11 +00:00
Bram Matthys e244c24a26 release notes, moved REMOVED thing to top... will save us a few users screaming for help... 2003-05-01 19:29:54 +00:00
Bram Matthys 9f4d4e674e docs, module hook, blablabla. 2003-05-01 19:23:00 +00:00
stskeeps 40f4bb7e6c - Mm, let's see what this checkin brings:
* Removed thread questions from Config, and autoconf code from
    configure.in, leaving in the old macros though, but inactive
    --enable-standardthreads is dead as of now
  * Undefined HOOKTYPE_SCAN_INFO
  * Removed CONF_EXCEPT_SCAN
  * Removed locking in events, Lock/UnlockEventSystem still active for other
    possible uses.
  * Removed scanners, web server module
  * Removed except scan {}
  * Removed SCAN_API stuff from l_commands.c, win32 makefiles, etc
  * Removed basically any mentions of threads in source tree, excepting
    threads.h which Resolver uses on win32
  * Documentation changes not done yet
2003-05-01 18:31:58 +00:00
codemastr e385747451 Removed +I reference from help.conf 2003-04-29 22:28:15 +00:00
Bram Matthys 68a589daf5 Updated docs on +p 2003-04-29 18:45:57 +00:00
codemastr 0bdb6a2e78 Docs updates 2003-04-28 17:26:04 +00:00
codemastr b4e8b60973 release preparations 2003-04-27 21:40:22 +00:00
Bram Matthys ebc9d6242f - Preparing beta16: release notes ready, version updated in docs/text (except version.h). 2003-04-27 18:57:04 +00:00
Bram Matthys 9f1c81541d - Usermode +q can now be set by services admins, as stated in docs (#0000923). 2003-04-27 15:00:27 +00:00
Bram Matthys 59b1217a94 w00t ;P 2003-04-27 14:26:32 +00:00
codemastr d35810e819 Fixed a bug with ban version {} 2003-04-26 23:31:56 +00:00
codemastr a6f56a6121 ... 2003-04-26 18:52:29 +00:00
codemastr 69ac5a529b Allow Ulines to use a TS in the past for topics 2003-04-26 18:49:54 +00:00
codemastr a25630a958 module umode changes 2003-04-26 16:37:14 +00:00
Bram Matthys 31978ef74f Friendly IPv6 msg.. 2003-04-24 14:58:07 +00:00
Bram Matthys eed1a83d78 - Some documentation improvements regarding link::hostname. 2003-04-24 14:20:42 +00:00
Bram Matthys 9a56a16ee2 - Added link::options::nohostcheck which makes Unreal not to validate the incomming host/IP against the link::host field, usefull for dynamic DNS hosts. 2003-04-24 14:09:38 +00:00
Bram Matthys 8aefa6cdce - Fixed minor badwords /rehash memleak. 2003-04-24 02:13:28 +00:00
Bram Matthys d202cc0868 - Some code cleanups (s_conf.c, now has a config_setdefaultsettings()). 2003-04-24 01:42:16 +00:00
Bram Matthys 2d0abfa787 - Enabled throttling support by default, you need to have a (correct) set::throttle block to make it work, otherwise it's just turned off. 2003-04-24 01:21:52 +00:00
Bram Matthys fbabd2bd1e Additional SJOIN debug info in case of fishy timestamp 2003-04-20 20:34:09 +00:00
Bram Matthys 4a679b34c4 - Fixed usermode +S: was accidently a local usermode (#0000909) 2003-04-20 20:22:33 +00:00
Bram Matthys 01c8f8bdc7 - Added IP bans like *!*@194.109.* (#0000474). 2003-04-19 20:48:52 +00:00
Bram Matthys 4b066b3347 - Fixed far connect (+s +F): connects from U-lined servers are now hidden again. 2003-04-19 20:25:29 +00:00
Bram Matthys 3c5e7ff5e7 - Fixed a PRIVMSG channelprefix bug reported by aragon (#0000902) 2003-04-18 15:30:35 +00:00
Bram Matthys a63eee5ee9 I won the fight... 2003-04-17 18:13:01 +00:00
Bram Matthys 201c0e39bc Fix-for-fix (debug stuff), sendto... real... opers... 2003-04-17 18:01:55 +00:00
Bram Matthys 9691748a7e - Added some temporarely SQLINE debugging/trace code 2003-04-17 16:58:38 +00:00
Bram Matthys f13b9b539e - Fixed a compile error with openssl enabled at redhat 9. 2003-04-16 22:28:19 +00:00
codemastr d7f20fb507 Docs update 2003-04-16 19:28:39 +00:00
codemastr 8409ff6234 Fixed a bug where /nsg and /notice didn't use tokens for nick@server forms 2003-04-16 18:49:00 +00:00
codemastr f866ce40df Fixed a bug with reporting invalid set::dns directives 2003-04-16 18:12:32 +00:00
Bram Matthys 6ebcf46459 - Minor error msg improvements
- Fixed a bug with wrong hub/leaf settings ("non-hub introduced leaf") causing a crash (#0000732).
2003-04-16 17:05:00 +00:00
codemastr dd1364321a Fixed a ban version {} bug, added an aliases/anope.conf, and updated some docs 2003-04-15 21:56:24 +00:00
codemastr c2a4509d9c Made the channel be hidden from /who if you are +p 2003-04-13 23:46:04 +00:00
Bram Matthys 3c6ecbcbb2 - Fix for set::restrict-channelmodes (eating parameters). 2003-04-13 20:05:54 +00:00
codemastr bf0b2a98cd Docs update 2003-04-13 19:10:42 +00:00
Bram Matthys 3618b2a2fa - badword::action::block should now be ok 2003-04-13 19:04:46 +00:00
codemastr 8732330e38 Cleanups and /chgident fix 2003-04-13 18:10:56 +00:00
codemastr c8477ddb6a Made except ban override ban ip 2003-04-13 17:42:23 +00:00
codemastr a38c76dd44 ... 2003-04-13 17:13:01 +00:00
codemastr 7000658c42 Fixed some /stats b stuff and added badword::action 2003-04-13 16:51:08 +00:00
Bram Matthys e7672e9027 - Updated channelmode +f "algoritm", much better now. Reported by JimmyZ, Rocko, and others. 2003-04-13 16:39:40 +00:00
codemastr 87d89c721c Throttling fixes and changes 2003-04-13 00:43:04 +00:00
Bram Matthys 3ef30832cf Improved throttle hashing (both IPv4 and IPv6)... prime numbers are fun ;) 2003-04-12 21:46:58 +00:00
Bram Matthys 4c59392caa That's better... should be ok now ;). Not mentioning in Changes, no visual change. 2003-04-12 20:43:51 +00:00
Bram Matthys fa19910694 blah 2003-04-12 20:30:51 +00:00
Bram Matthys fca6689a19 fix-for-fix 2003-04-12 20:30:27 +00:00
Bram Matthys f473314312 - Improved IPv6 throttle hashing 2003-04-12 20:21:38 +00:00
codemastr 2c53187cad Fixed another throttling bug 2003-04-12 19:50:09 +00:00
Bram Matthys 7d88957dd6 Another code cleanup for -Wall.. added some functions to h.h etc. 2003-04-12 17:21:44 +00:00
Bram Matthys 406ba755d6 - code cleanup / misc minor bugfixes (MyMalloc, oper msgs) 2003-04-12 15:56:25 +00:00
codemastr 3a368be7e5 Fixed an SQLINE bug 2003-04-11 23:57:15 +00:00
codemastr 705c24399c docs update 2003-04-11 21:08:15 +00:00
Bram Matthys 3b56433320 - Added allow::options::ssl and allow::options::nopasscont, requested by iguy and Scytale. 2003-04-11 18:26:20 +00:00
Bram Matthys 498d82f5fe Added set::restrict-channelmodes and very minor speedup in restrict-usermodes handling. 2003-04-11 16:05:02 +00:00
Bram Matthys e21d4aceba - Fixed cloaking bug reported by Rocko (#0000869) 2003-04-11 14:29:35 +00:00
Bram Matthys fbd413549f blah 2003-04-11 02:30:26 +00:00
Bram Matthys 6f5683242a - Added tld::options::ssl so you can have different motd/rules files if the user is using SSL.
Also there's tld::options::remote but that's currently not used :P.
2003-04-11 02:19:29 +00:00
Bram Matthys 0778c391b6 Some useless BUFFERPOOL changes, only affects users manually running ./configure (do they exist? ;P)... 2003-04-11 00:57:48 +00:00
Bram Matthys f4c5418326 Let's be nice and give some thanks ;P. 2003-04-11 00:19:35 +00:00
Bram Matthys 8a4856fa8b Fixed MAJOR "messages are lost" caused by BUFFERPOOL being to low and bad return checking of dbuf_put.
If BUFFERPOOL dbuf_put would return -1, but at some places !dbuf_put was used,
I've changed it so it will return 0 (so use !dbuf_put now, don't use dbuf_put(...) < 0 :P).
I also added some nice warning thing. I couldn't send from the send routine because that's risky ;).
And...... I also doubled the default BUFFERPOOL, so if you leave everything the default then
BUFFERPOOL is now 52Mb instead of 26Mb, which should be ok for now.
2003-04-11 00:09:46 +00:00
codemastr d41d26a163 SQLINE/UNSQLINE and SVSNLINE fixes 2003-04-10 21:13:36 +00:00
Bram Matthys 7c9ba1feda - Added SSL quit error messages 2003-04-10 19:58:30 +00:00
Bram Matthys 49aa8d9921 - Changed throttling errormsg so mIRC recognizes it and waits a while. 2003-04-10 18:48:38 +00:00
Bram Matthys 152be25b08 - Fixed opermode bug which could cause the ircd to crash a while later (#0000823). 2003-04-10 17:59:17 +00:00
codemastr 27928952dd Possibly fixed an SSL crash 2003-04-08 23:49:01 +00:00
codemastr 318cd17c06 example.conf typo 2003-04-08 23:15:06 +00:00
codemastr f21a9758cf Fixed a bug with precedence in TKL 2003-04-07 21:46:47 +00:00
codemastr 6a990f2b05 Fixed a bug with ban version {} with NOSPOOF 2003-04-07 18:42:48 +00:00
Bram Matthys 5e95ab5595 - Fixed a fast badword replace crash (#0000834) reported by orga 2003-04-07 00:20:13 +00:00
codemastr b190794a4b Docs typo fix 2003-04-06 22:12:41 +00:00
Bram Matthys 94adac199e - Fixed yet another oob read in config parser (ie: #0000841).
Boring.. boring..
2003-04-05 22:37:20 +00:00
Bram Matthys 3348c84048 - Fixed 2 other oob reads in config parser (parsing of size and time). 2003-04-05 22:16:14 +00:00
Bram Matthys daf80ca716 - Fixed an oper bug with /names on a +s channel (#0000816). 2003-04-05 21:26:18 +00:00
Bram Matthys 629d0d59f7 - Fixed a set::modes-on-join bug and fixed an oob read in config parser.
(1st=someone forgot a bzero)
2003-04-05 21:16:21 +00:00
stskeeps c1dd98ece4 - Made throttling use DelListItem and fixed some confusing regarding
undeffing of THROTTLING
2003-04-01 12:25:59 +00:00
codemastr 4c23c4eeae Fixed some set::allow-userhost-change problems 2003-03-29 00:06:12 +00:00
codemastr 68fac1298d ... 2003-03-25 01:03:36 +00:00
codemastr 7424fa2904 Moved the 'missing user in SJOIN' notice to snomask +j 2003-03-24 17:36:27 +00:00
codemastr b71c11416a Away flood stopper patch 2003-03-24 01:07:57 +00:00
codemastr 8d950fbe2e ... 2003-03-23 20:22:08 +00:00
codemastr 21416a3a14 Added set::modes-on-join and fixed some docs typos 2003-03-23 17:27:04 +00:00
codemastr b6f456471e docs typo fix 2003-03-22 17:21:58 +00:00
codemastr f006ffe3c9 Added usermode +p 'hide channels in whois' 2003-03-21 21:43:38 +00:00
codemastr fe1dcfb6c2 Docs update 2003-03-21 17:23:55 +00:00
codemastr a2f68d0ae3 Docs updates 2003-03-21 00:49:08 +00:00
codemastr dc7564d5b8 Zip links fixes 2003-03-18 17:45:26 +00:00
codemastr df15fa62e1 Documentation update 2003-03-18 16:48:26 +00:00
codemastr ead651585e Rewrote the unknown connection flood system 2003-03-18 00:19:00 +00:00
codemastr 45a1b02ec2 Added ban version {} 2003-03-17 19:30:57 +00:00
codemastr 149a544fcf Fixed a bug where +x made hosts lowercase 2003-03-15 19:49:01 +00:00
codemastr e01932f2ba Added chmode +M to numeric 005 and a /restart and /die cleanup 2003-03-15 19:06:34 +00:00
Bram Matthys 631bf5823c - Fixed a restrict-usermodes bug reported by Rocko (#0000796)
Also some additional cleanups
2003-03-12 17:37:19 +00:00
Bram Matthys 1afff0c681 - Fixed compile error 2003-03-12 05:05:03 +00:00
codemastr 3e5953bfff Moved 'unknown connection flood' to snomask +f 2003-03-11 22:10:01 +00:00
Bram Matthys 0690d9bf2f - Fixed "proxyscan on quit" bug (#0000788) 2003-03-10 19:44:26 +00:00
codemastr 4ab745e0eb Updated some docs 2003-03-10 17:31:19 +00:00
codemastr 5250f5907e Added set::throttle::period 2003-03-10 17:09:51 +00:00
codemastr 6f78df5776 help.conf updates 2003-03-10 00:25:12 +00:00
Bram Matthys 3ff5f281a9 - Improved previous /version bugfix 2003-03-09 22:09:02 +00:00
Bram Matthys 9d6afdb321 - Improved fake lag stuff 2003-03-09 17:17:07 +00:00
Bram Matthys 9223dec1ee - Fixed a version bug. 2003-03-09 15:35:19 +00:00
Bram Matthys 45e2b69a07 - Fixed a match() bug
In case of a mask like '*\' it was trying to read out of bounds data.
2003-03-09 03:07:59 +00:00
Bram Matthys fa1f8c3d0f - Fixed a /who big which could make the server crash (oper only). 2003-03-08 20:53:15 +00:00
codemastr f5baa63cce Fixed a /list bug with +s channels and opers 2003-03-08 17:41:04 +00:00
stskeeps 853c27be84 bah 2003-03-07 14:47:30 +00:00
stskeeps 53f30bda07 - Fixed a buffer overflow that could be used against setuid setups,
found by rave@dtors.net, reported by kokanin
- Disabled CMDLINE_CONFIG(-f) by default
2003-03-07 14:37:26 +00:00
Bram Matthys 577125079e - Doc updates (SSL/stunnel example was wrong) 2003-03-04 21:08:47 +00:00
stskeeps 8ad07e6a5e h
:q
h
:q
2003-03-04 08:48:07 +00:00
stskeeps 849487df98 beta15 release 2003-03-03 18:37:55 +00:00
Bram Matthys 93a2477f3b - Fixed /setident bug 2003-03-02 23:13:33 +00:00
stskeeps 2271adf889 bah 2003-03-02 21:07:03 +00:00
Bram Matthys b231cf713d Improved story about SSL (links to xchat and stunnel, stunnel.conf example). 2003-03-02 02:17:06 +00:00
Bram Matthys 5957da083d Blah... layout
- bla
to
* bla
2003-03-01 23:10:27 +00:00
Bram Matthys dda16e5ef5 Integrated my unreal_beta15.txt into .RELEASE_NOTES, original release notes
still at end of the file. Most stuff about features has been integrated into
the documentation, so probably pretty much of it can be removed...
2003-03-01 23:08:13 +00:00
Bram Matthys 4d5987adee Documentation updates, and some replaces beta14->beta15 already (not yet
the version.h thing)
2003-03-01 21:33:41 +00:00
Bram Matthys d435c5becf - WebTV fixes 2003-02-28 14:40:11 +00:00
Bram Matthys a28a349eb2 - Documentation/text updates. 2003-02-28 01:00:36 +00:00
Bram Matthys def6483548 - Added SVSWATCH: allows U-lined server to modify the watch list of a user.
- Added SVSSILENCE: allows U-lined server to modify the silence list of a user.
2003-02-27 23:23:24 +00:00
Bram Matthys 06eaede3f2 - Added allow-userhost-change checks to /vhost.
Fixed Changes typo from me (forced-rejoin -> force-rejoin)
2003-02-27 18:41:26 +00:00
Bram Matthys 41e06cba28 - Made set::allow-userhost-change forced-rejoin work.
- Fixed chmode +u bug when chanop was parting but wasn't sent to normal users.
2003-02-27 17:13:04 +00:00
Bram Matthys b9ec2de0cb - Added feature that if the chan is +m AND +u (so both!) and you ban IRC!*@* then ops
will no longer see the "relayed" message from IRC.
2003-02-26 22:07:11 +00:00
Bram Matthys 60b77d4485 - Added EventMarkDel which marks an event for deletion for the (next) DoEvents() call.
- Fixed /rehash stall caused by delayed unloading of the scan module (deadlock).
2003-02-24 03:04:23 +00:00
codemastr 99ee86c9c9 NS cleanups 2003-02-23 21:47:56 +00:00
codemastr 931d78cd9b ... 2003-02-23 17:23:46 +00:00
Bram Matthys 28d355f649 - Code cleanup (gcc 3.2 warnings with -Wall).
Compile tests done: Linux, Linux SSL, Linux SSL+ZIP, Windows, Windows ZIP, Windows SSL+ZIP.
This might also have fixed some (or 1) bug(s) :P.
2003-02-23 03:41:39 +00:00
Bram Matthys 8fbb67818b - Added set::options::dont-resolve (=hostnames of incomming clients won't be resolved).
This is more usefull than the no nameserver + useip solution since with this no resolving
is done for incomming clients, but connecting to other servers (with hostnames) still works fine ;P.
2003-02-22 22:34:40 +00:00
Bram Matthys 4795a45150 - Fixed two ident bugs (multihomed&connect), both resulted in ident not working.
multihomed issue:
Instead of binding cptr->listener->ip it now uses getsockname(), otherwise it
won't work if you have a listen *:6667 thing + multihomed (it will connect for
example from 33.33.33.1 while the client connected to 33.33.33.5.
connect issue:
there was some kind of file descriptor race condition because of the way our
whole read_message() thing is coded... an ident socket might have been closed
+ a new might have been accepted... blablabla ;)
I wonder if anyone reads these CVS logs lol :).
2003-02-22 21:16:30 +00:00
codemastr 2a90309216 Added badword quit {} to replace CENSOR_QUIT 2003-02-22 19:41:00 +00:00
Bram Matthys 2cc2a89e5b Again. 2003-02-21 20:09:55 +00:00
Bram Matthys 76fd66d27f - Documentation updates (unreal32docs.html, example.conf).
Againnnnnn
2003-02-21 19:22:59 +00:00
Bram Matthys 64dab7821a - Fixed remote /rehash bug (#0000600). Actually rewrote 20/25% ;).
Also minor doc fixes, not worth mentioning in Changelog.
2003-02-21 02:44:48 +00:00
Bram Matthys 775378a410 - Documentation updates (added a section about features).
Also colour -> color ;P.
And... removed doc/Unreal31_to_32.html because it's no longer needed now
since I have integrated it in the features section / unreal32docs.html.
2003-02-20 23:51:25 +00:00
codemastr ca9a7a1e89 Fixed a TKL bug 2003-02-20 23:12:07 +00:00
Bram Matthys 2f10a46e1e - Fixed chmode +u again. 2003-02-19 16:02:29 +00:00
Bram Matthys 0d1e674fcf - Fixed win32 compile error 2003-02-19 02:59:50 +00:00
Bram Matthys aa44d4d728 - Updated win32 compile instructions
- Fixed set::dns error messages
2003-02-19 02:37:23 +00:00
Bram Matthys eb7333c874 - Added /who *.host.com support (ircop only), this was already possible via /who -h <host>
but most ppl expect it to work this way too.
2003-02-18 22:29:40 +00:00
Bram Matthys 4a7cef66dd - Fixed bug with channel mode +u: Quits/nick changes of other users were shown. 2003-02-18 18:59:37 +00:00
Bram Matthys 08eb667db8 - Fixed some case insensitive checks in configfile parsing, fixed to be case sensitive.
- Module changes: added two hooks: HOOKTYPE_USERMSG and HOOKTYPE_CHANMSG, changed umode_get.
The HOOKTYPE_USERMSG has been tested with a +D (deaf for private msgs except for opers)
module, the channel thing not yet...
added global/local mode flag to umode_get, or use umode_lget (local) / umode_gget (global) :P.
Blah.
2003-02-18 18:29:07 +00:00
Bram Matthys 7a4d7df866 - Fixed some case insensitive checks in configfile parsing, fixed to be case sensitive.
if someone used LoadModule instead of loadmodule no warning was shown. This issue is
known to cause negative psychological effects on some users.
2003-02-17 21:11:48 +00:00
codemastr d729d2a0e4 Fixed an alias bug 2003-02-17 20:03:55 +00:00
Bram Matthys 5a1bdba209 - Removed some debugging messages 2003-02-17 19:03:34 +00:00
codemastr 0c5ef6def4 Removed some more +I code, and fixed a /who bug 2003-02-16 22:36:07 +00:00
codemastr 8569877110 Fixed a TKL rehash bug and recoded aliases to be much faster 2003-02-16 21:57:31 +00:00
Bram Matthys e116c095f2 - Fixed MyConnect()/MyClient() bug causing memory leak. 2003-02-16 21:12:32 +00:00
Bram Matthys 9b38176f98 List options were not correctly freed when /list was completed.
The bug was it did free the yeslist/nolist elements but not the data in it (lp->value) :PP.
Changed to use free_str_list() instead, just like in exit_client.
2003-02-16 04:59:26 +00:00
Bram Matthys 36d7d271cc - set::services-server is now required to be set (#0000730). 2003-02-15 23:41:23 +00:00
Bram Matthys f2eb5f48b6 - Zip links: Added link::compression-level so you can set the compression level per link 2003-02-15 21:13:37 +00:00
codemastr 4606d94e27 +I stuff removed, and other stuff 2003-02-15 20:20:35 +00:00
Bram Matthys 0c12e70d59 - Fixed compile warning in ssl.c. 2003-02-15 18:16:57 +00:00
codemastr bf116f1f6c Removed cmode +H, coadmins can use /rehash -flags, added cmode +M 2003-02-15 01:27:48 +00:00
codemastr 8e3272ba0b Fixed a win32 bug 2003-02-14 23:20:05 +00:00
Bram Matthys f014032901 - Fixed link::port bug reported by AngryWolf: was signed so ports >32767 had problems 2003-02-13 17:12:54 +00:00
Bram Matthys 1901911405 - Removed usermode +I (invisibility) 2003-02-12 21:44:09 +00:00
Bram Matthys 5f772f0457 this helps... 2003-02-12 20:45:48 +00:00
Bram Matthys addd54c38f Revert set::options::owner-gets-dot patch. 2003-02-12 20:44:14 +00:00
Bram Matthys 71a7e91363 - Added set::options::owner-gets-dot which will give chanowners a . prefix. 2003-02-12 02:12:13 +00:00
Bram Matthys 82201421eb Made ".. did a /whois on you" always show the real host (#0000705). 2003-02-10 00:56:58 +00:00
Bram Matthys 934b898914 Fixed a bug in coadmin: global flags were not added (#0000716). 2003-02-10 00:41:19 +00:00
Bram Matthys 954ccf7265 added set::restrict-usermodes 2003-02-09 20:51:25 +00:00
Bram Matthys efc2c8f326 Updated docs. 2003-02-07 23:08:01 +00:00
codemastr 8070b2397e Fixed an except ban {} problem 2003-02-07 16:21:23 +00:00
Bram Matthys a127469d42 Added USE_ZIP stuff to win32 installer script. 2003-02-07 00:08:32 +00:00
Bram Matthys 09013995f6 Updated protoctl.txt (added ZIP). 2003-02-06 23:55:56 +00:00
Bram Matthys bd8cbf6713 * don't send SHOWCONNECTINFO if the link is (known to be) a server.
* same for scan message
* don't say "you have not registered" on NOTICE in unregistered state.
* made a send_prot(aClient, ConfigItem_link) for sending PROTOCTL message,
  takes care of sending ZIP in token in case of a ziplink (indeed, I don't
  send "ZIP" if it's not marked as a ziplink).
* added automatic fallback tot uncompressed link in case one of the sides
  has zip turned off or not compiled in.
* added configcheck for link::options::zip turned on when not compiled
  in (just like we do with ssl).
2003-02-06 01:09:17 +00:00
Bram Matthys af988ce74d Added config error if link::options::zip was enabled at a non-zip compiled server. 2003-02-05 22:14:39 +00:00
Bram Matthys 1c0860e841 - Fixed an ident bug, maybe it actually works now.. (#0000709) reported by marviiin. 2003-02-05 21:32:37 +00:00
Bram Matthys c177eb2580 Code (comments) cleanup. Yes very usefull.. ahem ;). 2003-02-05 20:15:28 +00:00
Bram Matthys 0dde38dd6a ZIP_LINKS fixes/debugging. 2003-02-05 01:28:31 +00:00
codemastr 0ca9f4c2c5 ... 2003-02-05 00:59:51 +00:00
codemastr 06dc8646a4 added ziplinks support to ./Config and updated SSL support in ./Config 2003-02-05 00:44:14 +00:00
codemastr da33a9e646 Fixed a bug when compiling with SSL ZIP_LINKS 2003-02-04 22:50:56 +00:00
Bram Matthys 1bea78bd0e - Fixed a bug in m_part reported by Angrywould, cause unknown (yet).
- Currently it's not possible to compile with ZIP_LINKS _and_ SSL without changing zlib.h :(.
It really sucks... it's because zlib.h has a typedef for 'free_func' and this is also used
in openssl header files as a (useless) name... :((. I did some updates to allow future zlib
changes, dunnow if they will because it can break other zlib programs. It compiled fine at
windows, but not at Linux... you need to replace free_func to zlib_free_func in zlib.h in
order to get ZIP_LINKS + SSL to work... but like I said, that may break programs (ARGH!).
2003-02-04 21:23:47 +00:00
Bram Matthys 6ceb9cb6f7 Code cleanup (in many files heh)... I replaced all:
IsHidden(sptr) ? sptr->user->virthost : sptr->user->realhost
stuff to a simple GetHost(sptr) macro (defined in struct.h).
Smaller and less error phrone :). Also fixed the if IsHidden -> if (IsHidden
found by codemastr .
2003-02-04 19:40:38 +00:00
Bram Matthys d98e7d3112 Fixed bug in ISON. 2003-02-04 18:50:55 +00:00
Bram Matthys 0b2d842d55 Code cleanup in m_umode. 2003-02-04 18:02:44 +00:00
Bram Matthys c0a3cd9c14 Fixed minor memleak with zip links (a few k per server link). 2003-02-04 16:54:53 +00:00
Bram Matthys 24f36c846c Documentation updates for nodnscache. 2003-02-04 02:13:35 +00:00
Bram Matthys 7ad5f10d76 - Fixed a resolver bug where cache entries didn't timeout correctly.
- Made async resolve-and-connect work
- Added link::options::nodnscache which means Unreal will not cache the host forever for
  outgoing server connections, you could for example enable this if you are linking two servers
  with an often changing host (like dyndns.org).
2003-02-04 02:09:40 +00:00
codemastr 1efcc56dce Fixed a throttling bug 2003-02-03 21:38:02 +00:00
Bram Matthys 39be4901df Added recvq column to /stats y reply. 2003-02-03 21:32:51 +00:00
Bram Matthys c5369043c7 Added better (specific) link error messages (only on the "incomming" side)
so you can easily see whether servername, hostname/ip or username is wrong.
2003-02-03 21:05:50 +00:00
Bram Matthys 6f9060ce4e Minor doc updates (mainly example.conf) 2003-02-03 20:27:33 +00:00
Bram Matthys 6f2be400c3 Major unreal32docs.html documentation update:
* Changed layout
* Removed text, split up 3.1.x->3.2.x upgrade info to Unreal31_to_32.html
  (actually that's just .RELEASE.NOTES, need a bit more explanation and
   stuff about converting configs etc).
* Improved Me, Class, Allow, Listen and Set block text/layout/etc.
* Removed typo's
2003-02-03 20:14:16 +00:00
Bram Matthys d7b0c619bd Fixed /topic for opers when not in +s-channel 2003-02-03 18:52:06 +00:00
Bram Matthys ded0df0b31 Don't encrypt SSL certificate by default @ win32. Why would we encrypt by default
at windows and not at *NIX? Also it's incompatible with running as a service.
AFAIK it doesn't increase security very much: if you own the box you can easily
snif the keyboard, read the certificate from memory, etc..
2003-02-03 17:44:33 +00:00
Bram Matthys 19960bf7de Fixed bug in ipv6 + unknown connection flood. 2003-02-03 17:27:21 +00:00
Bram Matthys 7e3664afe5 Bugfix for crash with STRIPBADWORDS_CHAN_ALWAYS (null pointer). 2003-02-03 16:33:05 +00:00
Bram Matthys 138fcd19e7 Added (optional) class::recvq so you can dynamically/per class set the recvq (flood control).
CLIENT_FLOOD in config.h is still used as a default value if recvq is not specified.
2003-02-03 01:51:26 +00:00
Bram Matthys 8d329b611a enabled FAST_BADWORD_REPLACE by default 2003-02-02 23:13:26 +00:00
Bram Matthys ef150daae7 Two tiny text fixes: missing space and an CRLF in 'sending to me' thing,
and some probably impossible oob read but just in case added a length check,
blahhh (sending empty line).
2003-02-02 23:05:03 +00:00
codemastr 56da92cab9 Added set::snomask-on-connect 2003-02-02 22:53:59 +00:00
Bram Matthys 0131baaf5b - Fixed bug which made opers unable to do -a/-q (#0000654).
- Fixed bug in +q/+a list (/mode #chan q) <= lol this was some historic
bug by DrBin or something ;). In case you wanna know.. the whole loop logic
was wrong... initalisation vs null pointer check... ;).
2003-02-02 03:39:52 +00:00
Bram Matthys 463a2b29c5 memleak bugfix for my previous improved-write/buffer-errors-patch.
Additionally, I've increased my life chances with 100% thanks to _this_ patch.
2003-02-02 01:09:43 +00:00
Bram Matthys 84596e0fc5 Redesigned "Dead socket" error msg thing. Added a error_str to client struct,
which is set if dead_link is called. You will now see "Write error",
"Max SendQ exceeded" etc error messages in the quit reason instead of just
the "Dead socket" message. Changed "notice" parameter of dead_link, now just
the reason and not a format string, maybe rename that var.
2003-02-02 00:48:02 +00:00
codemastr 47dabe4c36 Aliases updates 2003-02-01 19:18:06 +00:00
codemastr ab5ff5cdea Started work on set::allow-userhost-change 2003-02-01 19:14:31 +00:00
codemastr 0004c00d7a Documentation updates 2003-01-29 20:41:04 +00:00
codemastr 33cb958615 Fixed a channel mode +A bug 2003-01-29 20:27:02 +00:00
Bram Matthys 0a1aacda89 Fixed missing 's' flag in oper::snomask causing not receiving any server notices (attempt II) 2003-01-29 01:15:09 +00:00
codemastr 12a5746d47 Rechanged 'a Services Administrator' back to 'a Services Operator' 2003-01-29 00:56:01 +00:00
Bram Matthys a5ea13adc9 Added '/stats zip' 2003-01-29 00:19:16 +00:00
Bram Matthys 637867bc6d Added makefiles to compile with zip links @ windows (zlib needed). 2003-01-28 23:13:49 +00:00
Bram Matthys 95c0add864 Fix for error msgs flood at (at least) Linux 2.4.x and FreeBSD caused by
socket already disconnected when getpeername() is done.
2003-01-28 22:14:56 +00:00
Bram Matthys bcac798a99 Fixed whois: "a Services Operator" -> "a Services Administrator" 2003-01-28 20:32:21 +00:00
Bram Matthys 007d0c1d32 Added STRIPBADWORDS_CHAN_ALWAYS (a define, disabled by default) for always
censoring badwords from all channels (+G or not).
2003-01-28 20:24:55 +00:00
Bram Matthys f6333714a2 Fixed some minor sending-1-byte-too-much bugs when all connections where in use. 2003-01-28 19:06:56 +00:00
Bram Matthys 92fe4e04a3 Removed unnecessary #ifdef blocks added by previous ZIP_LINKS patch 2003-01-28 03:27:48 +00:00
Bram Matthys 482df3dce3 Added ZIP_LINKS: using flag FLAGS_ZIP (0x1000000, was FLAGS_UNOCCUP2),
instead of using a 2nd flag here for the special case of "the first zip msg"
like in hybrid/etc I use cptr->zip->first to flag that. Except for the many
#ifdef ZIP_LINKS blocks added I also had to do some stuff outside it, like
crc32->our_crc32 because zlib defines it, made a READBUF define (8192),
added a msg var to parsing/send functions.. blah.. etc ;P.
I've also put the patch online at www.vulnscan.org/tmp/zip_links.diff so you
can easily look what I've changed.
TODO: ask in ./Config if ziplinks should be enabled and let ./configure check
for zlib + add the library to IRCDLIBS in Makefile if enabled.
TODO: some little code cleanups
2003-01-28 02:50:19 +00:00
Bram Matthys d0dc13faa5 Little fix for previous throttling fix (accessing just free()d memory). 2003-01-27 21:25:27 +00:00
Bram Matthys 09776ff03f Fixed triple WATCH reply bug (#0000632) when USER was send before NICK. 2003-01-27 21:00:21 +00:00
codemastr 00698d9fd4 Fixed an SVSO bug and a throttling bug 2003-01-27 19:54:00 +00:00
codemastr 1db740e154 Fixed an HCN bug with client exiting notices 2003-01-27 19:30:34 +00:00
Bram Matthys e070a40353 Fixed crash when link::leaf (and some other link:: things) was empty. (#0000610) 2003-01-26 21:58:29 +00:00
Bram Matthys 9d48eee701 Tweaked fix for 2-bans-needed-trick a bit. I was checking against last virthost,
now always checking against cloaked host... Just feels better :P.
2003-01-26 15:20:06 +00:00
Bram Matthys deb038730a Minor documentation update for SVSNLINE. (#0000651) 2003-01-26 03:18:36 +00:00
Bram Matthys 74a984da48 Fixed 2-bans-needed-trick (#0000626). If a user got banned while having mode +x,
then does a -x virthost gets freed and the user can join again/circumvent the ban.
virhost should probably be moved in to the User struct like char virthost[HOSTLEN+1]
but in the meantime I've just removed the free() when someone does -x.
I noticed we already do make_userhost at connect even if mode +x isn't set, and also
is_banned checks if virthost exists.. if so -> check if that's banned... so this
patch won't decrease performance much.
2003-01-26 02:18:30 +00:00
Bram Matthys 117ec38808 Channel msging optimization by 10-30%. 2003-01-25 21:26:53 +00:00
Bram Matthys 423a8c2739 Fixed yet another bug in new badwords replace system (should be almost finished now! ;P). 2003-01-25 18:44:23 +00:00
Bram Matthys c4c87fb803 Blah... forgot to remove some debugging code in badwords.c (new fast replace system) 2003-01-25 01:32:17 +00:00
Bram Matthys efaf9d6709 Fixed halfop bug, ex: /mode -o+b user *!*@blah.com will get +b user!*@*. (#0000653)
The bug was we forgot to return wheter a parameter was eaten or not (returned always 0).
2003-01-24 23:37:33 +00:00
Bram Matthys 1dfdeb42f0 Temporarely added user-already-in-chan check in m_sjoin to help tracing user-twice-in-chan bug
which has been reported by two users (#0000594). About speed: I think it'll just use a few usec
so that's <100ms for X.000 users ;P.
2003-01-24 22:47:37 +00:00
Bram Matthys 3fc6734e65 Fixed minor bug in resolving of IPv4 names if IPv6 is enabled (#0000659).
We were doing: T_AAAA, if that fails then T_A. But in that case when a host
has both T_A and T_AAAA entries, the reverse lookup will fail for ipv4.
Now using T_ANY to fetch both T_A and T_AAAA addresses at once.
2003-01-24 20:34:11 +00:00
Bram Matthys 73810a4f82 Cleanups in badwords.c: removed duplicate code, now one big stripbadwords() function which
is called by stripbadwords_channel()/stripbadwords_message().
2003-01-24 02:49:41 +00:00
Bram Matthys e8d8a27cbc Added a much faster (>100x) badwords replace routine which will be used for easy replaces like
"blah", "*blah", "blah*" and "*blah*"... otherwise regexp is used. Disabled by default until
it's really finished and fully tested.
2003-01-24 02:18:33 +00:00
Bram Matthys 3a546fb04c Cleanup of m_userhost / my previous patch screwed things up ;P 2003-01-23 21:05:44 +00:00
Bram Matthys 358a00e90c Fixed some formatting issues. 2003-01-23 20:47:06 +00:00
Bram Matthys e333890b0f Fixed SSL session cache bug, symptoms were: stunnel can only connect the 1st time,
reconnecting etc fails with (in stunnel log) "SSL_connect: Peer suddenly disconnected".
This happends with OpenSSL 0.9.7.
2003-01-23 17:03:53 +00:00
Bram Matthys 78dc344785 Added much better checking for weird characters in hostnames.
We were doing "deny known bad characters" instead of "only allow known good characters", this was REALLY bad...
This patch limits hostnames to alphanumeric, '-', '_' and '.'.
2003-01-22 19:37:42 +00:00
Bram Matthys a79e26deff Fixed major (?) bug in resolver (affects ipv4 only), could cause long stalls / crashes.
for (i = 0; &HE(cp)->h_addr_list[i]; i++) was used in ipv4 mode, but should be
without the &... this caused some stalls (like 11 seconds) at my machine because the
loop was executing >1 million times (I don't understand why it didnt crash however).
2003-01-21 23:01:44 +00:00
Bram Matthys 735b011f3e (added to Changelog this time:) Added win32 compile instructions in doc/compiling_win32.txt 2003-01-21 22:47:45 +00:00
Bram Matthys e9b96afef8 Added win32 compile instructions in doc/compiling_win32.txt. 2003-01-21 22:46:48 +00:00
Bram Matthys d932cf0220 Fixed bug in channel mode +L #aaaaaaaaa<etcetc>. 2003-01-20 21:17:24 +00:00
Bram Matthys e71f39ea62 Fixed bug in non-working channel mode +H. There was a #ifdef ENABLE_INVISOPER
block around +H checking, but this #ifdef is only at this place and is also
never defined... Removed #ifdef because that's now in module...
2003-01-20 20:48:59 +00:00
Bram Matthys d944643010 Minor documentation fixes reported by Jollino (LUSERS, OFLAGS mode h) 2003-01-20 20:00:57 +00:00
Bram Matthys 1e51112790 Fixed win32 compile error because of report_error patch (oops, lalala :P).
Added P_ECONNABORTED and P_ECONNRESET.
2003-01-20 19:33:18 +00:00
stskeeps 56a0d8adf7 removed ircdreg 2003-01-20 16:08:35 +00:00
Bram Matthys 6a9579930a Fixed crash when +x is in modes-on-oper, user has -x and then /oper's. 2003-01-20 15:21:38 +00:00
Bram Matthys 9c31edf6e7 Made netadmins able to see users in all chans by using /who #chan or /names #chan. 2003-01-20 03:44:13 +00:00
Bram Matthys d7e7562626 I love ugly code!! I fixed an out of bound memory read a week ago in the
time function, however my fix was wrong / usually the out of bounds memory
reading went well so the function worked... now it didn't... patched ;P.
Some examples: 4s = 8, 1m = 61, 1h = 3601, 1h2m = 3722.
2003-01-20 01:38:59 +00:00
Bram Matthys 2a266829e3 Fixed SVSMODE bug in handling of non-qaohvbe modes. (#0000631)
*parabuf wasn't set to '\0' so previous modes were applied in some cases...
2003-01-20 00:46:27 +00:00
Bram Matthys 86021bdd9b Fixed shun: ADMIN and PONG are allowed if shunned, also manually removing
a SHUN from a user affects connected clients immediatly. Moved ~45 lines of
code to a seperate function for this.
2003-01-20 00:30:51 +00:00
Bram Matthys 87b22510c0 Fixed some of the FreeBSD warnings, like 'Cannot accept connections' and
'getsockopt(IP_OPTIONS)' reported in bug #0000616. There's still one around
somewhere, but it's a start. Also modified report_error so it reports both
the socket error AND the system error if they are different.
2003-01-19 23:46:16 +00:00
Bram Matthys 1c1f135f8d useless change: &me.name -> me.name in my previous patch, doesn't change
anything but it was annoying my eye ;P.
2003-01-19 23:29:22 +00:00
Bram Matthys 1d0936d07a Added RPL_ENDOFSTATS after tkl_stats output if called by /kline, /gline, etc
without parameters.
2003-01-19 22:58:07 +00:00
Bram Matthys 22f60e47c8 Fixed compile error in src/random.c at win32. Also added some nice #ifdef's
so we don't get unused var warnings in non-SSL mode...
2003-01-19 22:41:03 +00:00
Bram Matthys 5e2cf7b90f Fixed compile error in makefile.win32.ssl (added src/random.c) 2003-01-19 22:29:02 +00:00
Bram Matthys d5faf64581 Added message if '/helpop' is used without parameters by helpops. (dont panic!) 2003-01-19 21:26:34 +00:00
Bram Matthys f97b537b09 Fix for missing mode 'S' in 005 CHANMODES= message 2003-01-19 20:30:30 +00:00
Bram Matthys 193265ef69 Added access level required for chmodes, documented +G, changed USERCMDS layout 2003-01-19 20:21:35 +00:00
Bram Matthys 0c74c5cd11 Fixed example.conf set::dns::retries, 2s -> 2 2003-01-19 20:05:57 +00:00
cvs2hg 5ad7468aa1 fixup commit for tag 'unreal3_2_beta13' 2003-01-18 09:01:53 +00:00
stskeeps c5991fc8da fixed crypt on win32 2003-01-18 09:01:52 +00:00
stskeeps a05c61042b BAH FUCK 2003-01-17 22:20:48 +00:00
stskeeps e42a63972e ** beta14 released ** 2003-01-17 22:03:13 +00:00
stskeeps e5dc32a0d0 - Compile fixes regarding throttling
- Fix when you use another make than make
2003-01-17 20:32:49 +00:00
stskeeps 5289be076a - Preperations for beta14. Will be a recommended upgrade 2003-01-17 17:10:11 +00:00
luke f83daf4607 stupidity 2003-01-17 15:23:51 +00:00
codemastr eb1e4f000b Resolver bug fix 2003-01-16 22:10:06 +00:00
stskeeps 381350618f - One more fix to the above 2003-01-16 15:19:25 +00:00
stskeeps 1aabd39d27 - Fixed a bug where helpop would pass on a null pointer 2003-01-16 13:45:26 +00:00
stskeeps ea2f1c6fc7 - Fixed a bug where helpop would pass on a null pointer if it was a remote
client (this needs more investigating, could someone find out how the fuck
  it can get a remote helpop that's blank anyhow?).
2003-01-16 06:19:12 +00:00
mcskaf 3ff374d811 We were writing a null to the log file when we reached max size. Bug #0000613 reported by AngryWolf 2003-01-15 23:16:15 +00:00
mcskaf 0349a1d1d8 We were writing a null to the log file when we reached max size. Bug #0000613 reported by AngryWolf 2003-01-15 23:10:13 +00:00
stskeeps 7601cbcf12 - Adding throttling, read config.h for more info. For the uneducated,
throttling is to reconnect way too fast repeatedly. Thanks to [Real] for
  the idea
2003-01-15 18:32:25 +00:00
codemastr c02033f3ca Fixed a bug when leaving off a parameter for a password config entry 2003-01-15 16:40:15 +00:00
codemastr 3095782cfd Various fixes 2003-01-14 21:25:04 +00:00
codemastr fed61efcdb Misc. fixes 2003-01-11 19:33:42 +00:00
mcskaf fe9dc6d3c4 Fixed bug 601 - ipport_seperate() used strtok() to separate ip:port but when
just :port was specified it skipped the leading : and assigned the port to ip
and null to the port causing the calling routine to seg fault.
2003-01-07 02:30:21 +00:00
codemastr 8523a7554b Fixed a random bug and added link::password-connect encryption error 2003-01-05 16:51:15 +00:00
codemastr d47e956c5b Fixed a bug in the empty channel fix 2003-01-05 01:28:23 +00:00
codemastr b455704e7f Added a patch by Syzop to increase randomness of the random numbers 2003-01-05 01:26:28 +00:00
luke 909c5843cb Fixed bug with whole bunch of users in an empty channel (codemastr found it) 2003-01-04 21:42:03 +00:00
codemastr 286115c256 Fixed some conf3 bugs 2003-01-03 17:44:02 +00:00
codemastr 91b9fa2281 Removed USE_LONGMODE 2003-01-03 17:05:58 +00:00
codemastr a123023350 Added the ability to specify port ranges 2003-01-02 20:49:44 +00:00
codemastr d7c59f9961 Fixed a few bugs 2003-01-02 19:32:58 +00:00
codemastr efa61e7ec0 Fixed a bug in the binary searching routines 2002-12-29 17:34:51 +00:00
codemastr 2270e37dca Added pretty_time_val 2002-12-20 22:09:38 +00:00
codemastr 31171c09b4 Fixed a bug where setting umode -o didn't set -h 2002-12-19 21:59:22 +00:00
codemastr 67b1118abb Added set::snomask-on-oper 2002-12-19 21:49:37 +00:00
griever 24cd9ff5ef TKL fix and shit 2002-12-19 20:40:40 +00:00
mcskaf a94f2e208f Fix bug 552 2002-12-17 20:08:00 +00:00
mcskaf ab66342581 Fix bug 552 2002-12-17 19:56:36 +00:00
mcskaf c3f23435d5 Detect include file error. 2002-12-17 19:53:41 +00:00
stskeeps e1b22ca767 bah src/umodes.c 2002-12-16 13:36:50 +00:00
stskeeps 3c99989a07 fuck it all 2002-12-16 13:36:18 +00:00
codemastr 0fc5b50258 Docs updates 2002-12-15 16:30:47 +00:00
codemastr 5196094ca7 Added chmode +u to help.conf 2002-12-15 01:43:16 +00:00
codemastr 140eed6b4c Fixed a win32 bug with showing included files on the config menu 2002-12-15 01:35:07 +00:00
codemastr f5e278fac7 Fixed a +/-f bug when using values > 65535. Now limits to 500:500 2002-12-14 18:22:20 +00:00
codemastr 5a4e05a429 Fixed a crash if oper::flags is missing 2002-12-14 18:14:59 +00:00
codemastr 7c0bc3f0be Fixed a tsctl and a make install bug 2002-12-14 17:29:39 +00:00
codemastr a15d1337c0 ... 2002-12-13 22:35:07 +00:00
codemastr 696533a163 Rewrote some +G code 2002-12-13 22:06:17 +00:00
codemastr ef5f1c354b Added set::htm for htm options 2002-12-11 17:35:18 +00:00
stskeeps a76476371e *** beta13 released *** 2002-12-09 20:02:25 +00:00
stskeeps 04be404c6c - Changed base version name to Unreal3.2, instead of Unreal3.2-Selene
- Made McSkaf part of core coder team
2002-12-09 19:54:35 +00:00
mcskaf 997cb99faf Changed DWORD to u_int32_t. 2002-12-08 20:32:56 +00:00
mcskaf c609e0bbb1 IRCCreateThreadEx() was causing exception on Windows. 2002-12-08 20:09:27 +00:00
codemastr 2783e635b6 Fixed a typo 2002-12-08 18:44:30 +00:00
codemastr 5f9285e139 Updated version number in win32 installer 2002-12-05 20:09:27 +00:00
cvs2hg 2eef007c8a fixup commit for tag 'unreal3_2_beta13_rc1' 2002-12-05 19:51:26 +00:00
stskeeps d2e87700c3 - Added back the commands check that didn't get added in conf3 (lamers
beware)
2002-12-05 19:51:25 +00:00
codemastr 1c74c7458f docs updates 2002-12-05 16:54:05 +00:00
mcskaf 9102ebacf7 Use P_EWORKING in connect(). 2002-12-01 19:44:12 +00:00
mcskaf 2d9186c7a3 Fixed a dumb mistake. 2002-12-01 19:13:47 +00:00
mcskaf c28b3db527 Changed connect() success/fail checking in scanners for all OSs. 2002-12-01 19:10:26 +00:00
mcskaf 28fbd0bafe Added P_EWORKING define. Indicates a socket call is in progress on all OSs. 2002-12-01 18:53:06 +00:00
codemastr 2182c90be5 Release preparations 2002-12-01 18:23:11 +00:00
codemastr 6c167e3590 Documentation updates and misc. fixes 2002-12-01 17:50:08 +00:00
mcskaf b148656164 Change resolver to use our IRCMutex macros. 2002-12-01 17:42:56 +00:00
codemastr 5d31e2ac68 Changed the thread API to fix some win32 crashes 2002-12-01 17:11:34 +00:00
codemastr 1a64c71e7f Added a patch for logging vhosts in connect/disconnect notices 2002-11-30 21:11:05 +00:00
codemastr 48fb658531 Removed m_kline.c and m_zline.c they are now implimented as part of m_tkl.c 2002-11-30 21:01:12 +00:00
codemastr 211e930a1e Fixed an oper count bug with SVS2MODE 2002-11-30 19:22:43 +00:00
stskeeps f7d349e60a - Changed .SICI to point to cacert.org instead (patch by evilbunny) 2002-11-29 07:23:04 +00:00
stskeeps a5547b65f4 - Made config actually add listeners when rehashing (...) also you can now
change listener flags using /rehash
2002-11-28 17:34:19 +00:00
codemastr d21fc4bcca Fixed some logical module rehash problems 2002-11-28 16:21:05 +00:00
mcskaf b39615e26a Fixed doc: Changed set::scan::ban-time to set::scan::bantime. Added set::scan::timeout. 2002-11-27 22:05:59 +00:00
mcskaf a3c6b57a70 Changed set::scan::ban-time to set::scan::bantime. Added set::scan::timeout. 2002-11-27 22:03:47 +00:00
mcskaf ebed8efde7 Fixed typos in set::scan::bind-ip and set::scan::ban-time 2002-11-27 21:05:20 +00:00
codemastr 84fe71337e Docs fixes 2002-11-27 20:45:42 +00:00
stskeeps 8bf8eff75a - Removed makeconf 2002-11-27 20:40:30 +00:00
codemastr 9dd4b699b8 Cleaned up module code 2002-11-27 17:40:28 +00:00
codemastr 24eac63abd Changed the conf3 return values 2002-11-27 17:19:33 +00:00
stskeeps 4b738b28e2 - Small typo in config validation found by ins4ne 2002-11-27 15:23:35 +00:00
stskeeps c43a4d35c4 stuff 2002-11-27 14:55:47 +00:00
stskeeps fcfbf1cdaf serious who bug 2002-11-27 14:53:51 +00:00
codemastr dd2bf9e926 Fixed a bug where chmode +q users could not kick chmode +a users 2002-11-26 23:07:13 +00:00
codemastr 6750bca21c ... 2002-11-26 20:23:23 +00:00
codemastr 736474aa5f Finished module rehashing 2002-11-26 20:15:17 +00:00
codemastr 0ba49b9c4e Made modules rehash under dynamic linking 2002-11-26 19:52:02 +00:00
codemastr b87f79a271 Made alias{}'s get rehashed 2002-11-24 23:32:25 +00:00
mcskaf a21df7fcf5 Fixed sendto_ functions to use slot number as index into sentalong array. 2002-11-23 00:09:48 +00:00
codemastr 7ce89318f8 conf3 fix 2002-11-22 23:25:49 +00:00
mcskaf 3d945f5b1d Fixed sendto_ functions to use slot number as index into sentalong array. 2002-11-22 23:25:20 +00:00
mcskaf eba7f5ffe0 Fixed sendto_ functions to use slot number as index into sentalong array. 2002-11-22 23:07:35 +00:00
codemastr 387565717f Converted deny {} to conf3 2002-11-22 22:25:19 +00:00
codemastr 6a65111f12 Fixed several conf3 errors 2002-11-22 21:46:31 +00:00
stskeeps cd83b8a845 - Fixed win32 compile error with default: ; 2002-11-22 21:04:40 +00:00
stskeeps e4bd382898 - /rehash for conf3 (that works) :) 2002-11-22 16:16:33 +00:00
codemastr ce64bf6f6c Changes to the module config system 2002-11-18 20:04:36 +00:00
codemastr 594f8646d3 Made modules able to have config directives 2002-11-18 00:54:05 +00:00
codemastr e392d1435f Fixed a bug when set::help-channel is missing 2002-11-17 20:00:43 +00:00
codemastr d1e0d459c5 Added can_override oper flag 2002-11-17 17:31:30 +00:00
codemastr 1b17b5c0be Fixed a win32 debugger bug 2002-11-17 01:49:22 +00:00
codemastr 5e9107815e Added SVSLUSERS 2002-11-16 20:52:16 +00:00
codemastr 45590c3b5d Made alias {} work in conf3 and recoded the way aliases work somewhat 2002-11-08 21:26:44 +00:00
stskeeps 808acb8e57 - Finished up conf3, still needing some directives added but it sortof works. Rehash doesn't yet.
-  Fixed some idiotic lack of src/modules/Makefile.in changes for the sake of commands.so when
  /zline /kline etc was moved to a module
2002-11-05 19:25:21 +00:00
stskeeps f99caaa2bd Fixed alphabeticalising of named oper flags, added _conf/test_link 2002-11-05 13:52:44 +00:00
codemastr d75ffab485 Fixed some configure problems with gcc3 2002-11-02 20:32:47 +00:00
codemastr 16dd1804be Converted log and help to conf3 2002-11-02 17:24:54 +00:00
codemastr 85598d17ce Conf3 cleanups 2002-11-01 20:31:08 +00:00
codemastr b28ad5f76c Changed config flag parsers to use a binary search 2002-11-01 20:11:36 +00:00
codemastr 6dae920358 Made the main conf3 searching routine use a binary search 2002-10-27 20:31:02 +00:00
codemastr 9a280f3e14 Possible win32 resolver fix, conf3 fixes 2002-10-27 17:32:33 +00:00
stskeeps 402f031da1 bug 2002-10-26 21:42:36 +00:00
stskeeps 09bacf360e - Made CLIENT_FLOOD more customizable
- Fixed some conf3 compile errors and block-modded _*_tld
2002-10-26 19:55:24 +00:00
codemastr 6d77b60387 Added some additional NT Service options to the win32 installer 2002-10-26 19:20:52 +00:00
codemastr 1e23915986 Merged unrealinstssl.iss into unrealinst.iss 2002-10-25 17:37:53 +00:00
griever 391098a197 kline has been replaced with tkline 2002-10-24 15:58:44 +00:00
stskeeps 553c66eae6 . 2002-10-20 20:33:29 +00:00
stskeeps 34287cb733 f 2002-10-19 17:40:23 +00:00
stskeeps 6ad5b43fb5 - Fixed conf3 bug with _conf_except tkl 2002-10-19 17:37:52 +00:00
stskeeps 613c78924d conf3 2002-10-19 17:33:05 +00:00
cknight ab5c9b3a0a - Documentation - Corrected several HTML formating problems 2002-10-17 11:11:13 +00:00
cknight de97efbd21 - example.conf - Corrected incorrect set::services-services statment in alias block - reported by mcskaf (#0000401)
- Documentation - Corrected Spelling mistake in HTM mode - Reported by CoNfOuNd (#0000387)
- Documentation - Added coadmin to table of oper types - Reported by FrostByghte (#0000359)
2002-10-17 10:45:57 +00:00
cknight 479a6cf6c3 - Documentation - Updatet sec2.0 - list of Supported OS's for Win32 Version
- Documentation - Updated sec1.1 - Instructed to use bugs.unrealircd.org to report problems with docs
- Documentation - Updated misc hyperlinks - doc/unreal32docs.html
- Documentation - Updated sec3.31 - Added better description to the format we present set:: settings
- Documentation - Updated sec3.31 - Added more details to set directives
- Documentation - Updated sec3.25 - Added option vhost::swhois to section 3.25 Vhost block
- Documentation - Replaced text vair {} with <> to prevent confusion.
- Documentation - Documented that lusers now supports remote servers
- Documentation - Corrected vhost::from example as reported by joolz #329
- Documentation - Corrected set::scan:messages, currently listed as set::messages - as reported by joolz (#329)
- Documentation - Added channel mode t & description as reported by stfcs (#315)
2002-10-16 15:31:41 +00:00
codemastr 806701ac23 Scanner win32 fixes 2002-10-13 21:47:57 +00:00
codemastr 0a1a2e217f Fixed an htm bug with reporting no such server 2002-10-13 17:56:19 +00:00
codemastr 8d87ef6194 Added /lusers server.name support 2002-10-13 17:39:18 +00:00
codemastr 612751abde Fixed an samode bug 2002-10-13 17:15:29 +00:00
codemastr 1977439e27 Fixed another tkl bug 2002-10-05 00:27:22 +00:00
stskeeps 1c81b72a4f - Fixed crash bug in m_tkl_line 2002-10-04 18:35:40 +00:00
stskeeps 62b7acc6be dd 2002-09-28 14:28:14 +00:00
stskeeps 1d3c41ef75 Removed some IPv6 resolver specifics that seemed illogical (reference to Jollino's IPv6 crashes) 2002-09-28 12:47:59 +00:00
stskeeps bb6711691b - Fixed bug #0000342 reported by James LiGate about tokens leaking through from clients 2002-09-28 12:32:18 +00:00
stskeeps 379a8ccc3b Fixed bug with all TKL commands not accepting nicks anymore (#0000370 reported by Ravage) 2002-09-28 12:16:10 +00:00
stskeeps 979f96ca3a Fixed bug #0000371 reported by havlaz about an extra \n slipped in with the TKL notice 2002-09-28 11:59:01 +00:00
stskeeps 8f7455d423 - Fixed bug #0000377 reported by MorPheus where IPs of servers were shown in nick collision notices 2002-09-28 11:48:25 +00:00
stskeeps ce0ae3a46d - Fixed bug #0000372 reported by MorPheus where Killed (<everything-but-the-first-char-in-killer-letter-got-shown> (reason)) 2002-09-28 11:40:10 +00:00
stskeeps 4bc07b8789 +- Added set::ssl::options, with three options:
+    fail-if-no-clientcert   - If SSL client connects and doesn't provide a client certificate, abort connection immediately
+    verify-certificate      - Check the certificate's validity using X509 methods, check if we trust CA's, etc.
+                              It however does slip self signed certificates through UNLESS
+    no-self-signed          - Don't allow self-signed certificates through (requires verify-certificate)
+- Made conf parser mention if we make a link->options with CONNECT_SSL if we don't support SSL (and remove the CONNECT_SSL flag)
+- Made conf parser mention if we make a SSL listener and we don't support SSL
+- Added set::ssl::trusted-ca-file, if enabled, it will point the SSL stuff to use that file as trusted CA's (for verify-certificate)
+- Made conf _not_ bitch that it doesn't know set::ssl
+- Removed some leftover client certificate stuff
2002-09-28 11:02:05 +00:00
stskeeps 9d43770bd0 doc shit 2002-09-27 18:51:12 +00:00
stskeeps 282cc51768 - Changed auth method sslpubkey into sslclientcert, which means it will check the X509 certificate of the
user using X509_cmp. Also needing is some policy/conf setting to adjust if to reject invalid client certificates or whatever..
2002-09-27 16:08:03 +00:00
codemastr 519b491c1b Fixed a bug with /who -h 2002-09-20 20:06:33 +00:00
stskeeps c8c316c56d - Made channel keys be case sensitive 2002-09-07 09:26:45 +00:00
stskeeps 6926cca1bb - Added Syzop's various zero-terminate patches and fixes for crashes when
you send commands like JOIN from a server directly
2002-09-07 01:32:00 +00:00
codemastr 9f4f72d2af Now using unsigned chars 2002-09-02 15:30:03 +00:00
codemastr 13b2ebc773 ... 2002-09-01 18:55:19 +00:00
codemastr ff14d5d0bf Compile warning cleanups 2002-09-01 18:33:47 +00:00
codemastr 227563a13d removed some old win32 debugger debug code 2002-09-01 14:41:12 +00:00
stskeeps 6aa5b7a341 - Made the IRC_UID stuff more proper.. 2002-09-01 14:39:41 +00:00
stskeeps 9d35460488 bah 2002-09-01 09:27:23 +00:00
stskeeps e1872e1231 - Added Nugget's setuid patch 2002-08-31 16:30:29 +00:00
codemastr b5827fd1de Fixed some /who bugs 2002-08-31 15:33:05 +00:00
codemastr 528238f541 Fixed a bug in TKL that would allow *@* bans 2002-08-31 12:49:28 +00:00
codemastr 3ce3b10e04 Fixed a win32 editor bug with chars > 128 2002-08-28 20:50:09 +00:00
codemastr 478970ed36 Made alias {} use tokens where available 2002-08-28 17:40:17 +00:00
codemastr b89c6a8cd1 Added oper login to the 'is now an operator' notice 2002-08-28 12:12:21 +00:00
codemastr 12264cfa1b Fixed a bug with installed Unreal as a service under WinNT4 2002-08-28 12:06:23 +00:00
stskeeps a1e5a746e3 - A minor fix in SSL_is_inited stuff in s_bsd 2002-08-27 13:16:15 +00:00
stskeeps 4aff4a0376 - More SSL debugging stuff.. 2002-08-27 12:34:43 +00:00
stskeeps 9251a76f63 Added some more debugging stuff, made check_pings a little more readable 2002-08-27 05:04:30 +00:00
stskeeps a5809bba80 bah 2002-08-26 15:13:43 +00:00
stskeeps 9b597033ef bah 2002-08-26 15:10:19 +00:00
stskeeps a15ce8eb54 bah 2002-08-26 14:55:14 +00:00
stskeeps 012bad26c7 SSL debuggin stuff 2002-08-26 14:53:12 +00:00
stskeeps 709d9b87dd - Added a newline in dynconf.h 2002-08-26 10:16:44 +00:00
stskeeps 36e88f1364 - Fixed a problem with set::ssl::certificate and set::ssl::key that used
+  ->ce_varname instead of ->ce_vardata. Found by badSol
2002-08-26 01:02:29 +00:00
codemastr e1c7eead30 ... 2002-08-25 16:54:00 +00:00
codemastr cebae72da4 Fixed a win32 password encryption bug in NT service mode 2002-08-25 16:35:17 +00:00
codemastr 1f2e1a8bcf Added vhost::swhois 2002-08-25 16:10:09 +00:00
cvs2hg a44e23dcfe fixup commit for tag 'unreal3_2_beta12_fixes' 2002-08-25 14:09:01 +00:00
stskeeps 065b111e22 - Compile fix regarding above fix 2002-08-25 14:09:00 +00:00
stskeeps f62b8718aa Fixed problem where SSL handshakes weren't unknown--'ed on remove reported
by Alzirr
2002-08-25 12:57:45 +00:00
cknight f363332faa - Updated docs to include ripemd-160 encryption option 2002-08-25 11:48:04 +00:00
cknight 30efe19cbd - Added set::static-quit to unreal32docs.html 2002-08-25 11:38:27 +00:00
stskeeps 63ece5f2bc - Made so every join is a SJOIN to prevent TS0 problems. Read config.h to disable this if it causes problems 2002-08-25 05:04:58 +00:00
stskeeps 154860ee3a TOPIC_NICK_IS_NUHOST 2002-08-25 04:49:37 +00:00
stskeeps 5785860f71 - Make makecert.bat and encpem.bat show their use in titlebar when run 2002-08-25 04:33:16 +00:00
stskeeps e1b478909e - Made set::static-quit - check doc/example.conf for documentation - but
this allows the admin to decide a standard custom quit for users. so they
  won't be able to make their own quits. This affects set::prefix-quit and
  ANTI_SPAM_QUIT_TIME - it simply replaces it with the message if enabled
2002-08-25 04:26:45 +00:00
stskeeps 21d8c88e2c - Made standard-threads default, and made a Config option if to use FSU
pthreads or not
2002-08-25 03:03:11 +00:00
stskeeps a6776a30a2 - Removed ssl.rnd as it was not supposed to be provided by CVS 2002-08-25 02:08:13 +00:00
cknight 9074722d4b - Corrected release date in doc/unreal32docs.html 2002-08-24 19:21:56 +00:00
cknight 96f0f8274a *** empty log message *** 2002-08-24 18:31:59 +00:00
cknight b4ef73ca7c *** empty log message *** 2002-08-24 16:25:53 +00:00
cknight afc784ddb4 - - Reformated unreal32docs.html in something other than MS Word. 93k now! 2002-08-24 16:20:09 +00:00
luke f851f61b15 +O/+A ban implementation 2002-08-24 15:54:37 +00:00
cknight 751e14cbe2 - Made minor changes to help.conf 2002-08-24 15:48:52 +00:00
stskeeps 5fafec8555 .k
CVS
: ----------------------------------------------------------------------
2002-08-24 14:40:42 +00:00
stskeeps aff113dab8 - Added src/win32/gplplusssl.rtf for ssl-install script to show during
install in license - GPL + the notes from openssl
2002-08-24 13:13:21 +00:00
stskeeps a6c1bdacfb win32 install script changes to deal with version switchover 2002-08-24 12:24:27 +00:00
stskeeps ffbddddb8c Some install script win32 changes to deal with unreal32docs.html 2002-08-24 10:17:19 +00:00
codemastr 477ae217ab Made it so the win32 version of Unreal can't be reinstalled/uninstalled while it is currently running 2002-08-24 01:01:30 +00:00
codemastr 9fbe091509 Made /die exit nicely in service mode 2002-08-23 22:40:36 +00:00
codemastr b2efdf1fe4 unreal service utility changes and win32 resolver fixes 2002-08-23 21:26:02 +00:00
stskeeps 0f9fd774f4 - Changed version to beta12 2002-08-23 17:44:27 +00:00
stskeeps f2fd20d29d - Stripped the docs. 100kb down, but a reformat in something other than MS
word would really really help.
2002-08-23 17:33:25 +00:00
codemastr a29a242639 Made it so clicking wircd.exe when in NT service mode still starts Unreal 2002-08-23 16:48:41 +00:00
codemastr 8550484118 Fixed a set {} memory leak at /rehash 2002-08-22 16:21:40 +00:00
codemastr be5de25086 Recoded /helpop to work correctly 2002-08-21 20:35:22 +00:00
codemastr e898770e64 Fixed a host cloaking bug involving non-dot hosts 2002-08-21 17:23:17 +00:00
codemastr 9950600bcd ... 2002-08-21 17:16:28 +00:00
codemastr 96f407770c Fixed a /invite bug where remote invites didn't work 2002-08-21 17:12:51 +00:00
stskeeps 275d304475 - Added set::ssl::certificate and set::ssl::key to point to where we got the certificat
PEM and the private key PEM
2002-08-21 17:10:46 +00:00
codemastr 8c42cec638 Fixed a typo in /akill and /rakill 2002-08-20 20:20:03 +00:00
luke 18d25aa3e6 grammar bug + halfop kicking halfop bug 2002-08-20 18:58:11 +00:00
stskeeps 7c386cfe5a - FAKE_LAG_FOR_LOCOPS define added in config.h - enables local ops to
override RFC1459 flood control
2002-08-20 18:01:41 +00:00
griever 593b611a11 Added o and O flags for oper override verify and oper override. 2002-08-20 15:46:24 +00:00
griever f8bf69302c Removed LEAST_IDLE 2002-08-20 15:13:05 +00:00
codemastr 20b250b98c Removed .NEW_CONFIG references from the win32 installer scripts 2002-08-20 00:00:28 +00:00
codemastr fbbf54bd9d Fixed a bug where set {} info wasn't cleared out at rehash 2002-08-19 22:47:57 +00:00
codemastr b2752c2ffb Changed cr/lf to just lf in doc/unreal32docs.html 2002-08-19 18:56:46 +00:00
codemastr e72710e0e8 Fixed an oper::swhois bug where the swhois was not propagated 2002-08-19 17:55:03 +00:00
cknight 13a7293f34 - Removed old docs and added new docs to Makefile.in
- Updated .CHANGES.NEW with new version # and link to docs
- Updated .RELEASE.NOTES with new version # and link to docs
- Added NEW doc/unreal32docs.html Docs
2002-08-19 00:42:15 +00:00
cknight f6aa7cdcf6 - Removed ./Setup - No longer supported (read the docs!)
- Removed .NEW_CONFIG - No longer needed
- Removed INSTALL - Refer to NEW docs Unreal32docs.html
- Removed doc/commands.txt - Refer to NEW docs Unreal32docs.html
- Removed doc/faq - Refer to NEW docs Unreal32docs.html
- Removed doc/conf.doc - Refer to NEW Docs Unreal32docs.html
- Removed doc/unrealircd.doc - Refer to NEW docs Unreal32docs.html
- Removed doc/Elite.Changes - Out Dated
- Removed doc/services-install-guide - Refer to NEW docs Unreal32docs.html
- Modfied Unreal.nfo to include ref. to new docs
2002-08-18 21:33:45 +00:00
codemastr cc5258fe8a Added EGD support 2002-08-18 20:28:33 +00:00
cknight e73cb3dac5 Removed /doc/faq not needed included in new docset 2002-08-18 19:21:58 +00:00
stskeeps 330d102bad Fixed some installer problems wrt SSL compile, and added makefile.win32.ssl 2002-08-18 11:16:42 +00:00
stskeeps a1f707ef63 - Added some somewhat path specifics to unrealinstssl.iss 2002-08-18 10:42:49 +00:00
stskeeps 2d074be8fc - Removed GNU malloc totally from the FSU pthreads distribution 2002-08-18 10:33:17 +00:00
codemastr 90fff06b2b Fixed a win32 installer problem with dbghelp.dll installation 2002-08-17 00:57:16 +00:00
stskeeps 566e03e5b2 - Fixed problem with DEBUG ERROR when SSL handshaking (reported by some people) 2002-08-14 20:47:07 +00:00
codemastr 8f883d65b7 Fixed a win32 ssl installer problem 2002-08-14 17:42:51 +00:00
stskeeps 68794a3ffc - Fixed problem where the parameters of the RAKILL aliasing to TKL were switched,
and a missing return for normal users.
2002-08-13 17:41:00 +00:00
codemastr 1fa5ed84e6 Fixed invite 2002-08-12 18:16:01 +00:00
codemastr efb54b62f3 Fixed a bug where MAXCONNECTIONS is shown as 0 when it is too high 2002-08-12 17:51:49 +00:00
stskeeps 6901d27508 - Module load fix for a minor fuckup in SQLINE/UNSQLINE 2002-08-12 17:03:03 +00:00
stskeeps 7f3096ee6b - Allowed SQLINE/UNSQLINE to come from a U:lined client as well 2002-08-12 15:45:46 +00:00
stskeeps 6b51c2d53b .. Fixed a problem with normal unix source compiling as codemastr had
#ifdef _WIN32 'ed find_match_server, causing me to believe it was gone.
2002-08-12 15:18:32 +00:00
codemastr 272b7dd892 ... 2002-08-11 00:40:24 +00:00
codemastr 43e470f898 make install fix 2002-08-11 00:38:03 +00:00
stskeeps 9eede48af4 - Added note about Linux and FD_SETSIZE > 1024 in release notes
- Made IRCd bitch properly when MAXCONNECTIONS>FD_SETSIZE
2002-08-10 17:49:52 +00:00
stskeeps 41a69863d6 bay 2002-08-10 17:08:35 +00:00
stskeeps 07eb941a58 arg 2002-08-10 16:51:44 +00:00
stskeeps f8f829840d FD_SETSIZE crap 2002-08-10 15:40:08 +00:00
codemastr bb95bdfa7c Removed some useless code and added more modules 2002-08-09 20:26:04 +00:00
codemastr 1aa70c7b77 Removed src/s_unreal.c 2002-08-09 18:21:59 +00:00
codemastr 333499a98c Win32 installer 2002-08-07 21:35:51 +00:00
cvs2hg c51b8fe5dd fixup commit for tag 'unreal3_2_beta11' 2002-08-07 21:10:50 +00:00
stskeeps 7af962ecf7 SSL fixes 2002-08-07 21:10:49 +00:00
stskeeps 133ba46362 Operoverride_verify stuff. 2002-08-07 20:52:51 +00:00
luke 608963e031 blah 2002-08-07 20:40:49 +00:00
luke 081b1cd12e sts sucks with grammar 2002-08-07 18:44:45 +00:00
stskeeps 7c4f43b36e --CVS: ---------------------------------------------------------------------- 2002-08-07 17:28:23 +00:00
stskeeps 1db6a86254 - Cleaned out Credits (i'll fix the web part of it later), made doug lea malloc default
+  on Linux FSU Pthread installs. (When we got a better way, we will have full doug lea malloc..)
2002-08-07 17:23:52 +00:00
codemastr 6096b9844e Removed some useless things in include/config.h 2002-08-06 16:28:25 +00:00
luke 85fa5c5bd9 Updated config.h for operoverride_verify 2002-08-06 13:59:58 +00:00
codemastr 6b44a0d643 .RELEASE.NOTES change 2002-08-06 01:26:51 +00:00
codemastr 80d837fa8b Removed support for SSLv2 2002-08-05 17:54:52 +00:00
stskeeps 31d2224b2c - Made +x send out a SETHOST to VHP servers, requested by PreZ@DarkerNet 2002-08-04 08:41:55 +00:00
stskeeps b4f0d0fc9d - Compile error fix regarding version.h 2002-08-03 20:20:14 +00:00
stskeeps 8236faeaf6 Removed doc/Etiquette 2002-08-03 20:13:37 +00:00
stskeeps bf1ccab9a9 +- Removed doc/features.txt, doc/unrealircd.conf.txt, include/relinfo.h,
+  include/stamp.h, src/buildm4, src/chkconf.c, src/conftool.c
2002-08-03 20:12:35 +00:00
stskeeps c2b48d3ce4 - Fixed SSL compile error wrt to /trace 2002-08-03 19:01:26 +00:00
codemastr ba26cc59a9 updated .RELEASE.NOTES 2002-08-03 18:45:51 +00:00
codemastr 6e076ba67b installer fixes and version number change 2002-08-03 18:31:11 +00:00
stskeeps f99d6689ca RELEASENOTES stuff 2002-08-03 18:24:29 +00:00
stskeeps 66eb6fa848 SSL stuff 2002-08-03 16:10:25 +00:00
stskeeps 959c5b0188 Added some OpenSSL version showing 2002-08-03 13:47:23 +00:00
stskeeps 0c730e8931 bah 2002-08-03 11:52:01 +00:00
stskeeps 7d7d4aafca fix 2002-08-03 11:49:37 +00:00
stskeeps 385d9f3ada - SSL compile error fix in s_bsd.c 2002-08-03 11:25:40 +00:00
stskeeps ff4bc60486 Fixed SSL linking, again.. 2002-08-03 11:09:20 +00:00
ejb 7bb73b5e6f - send +f and +L correctly in CHANMODES 005. 2002-08-03 08:53:41 +00:00
codemastr 4897441259 Added some technical documentation 2002-08-02 22:35:20 +00:00
codemastr dc27e6470d Fixed some SJ3 bugs that could cause desync 2002-08-02 20:40:09 +00:00
stskeeps 4d410f5982 - Seemingily we can't do SSLv3 only for ctx_server? 2002-08-02 11:54:03 +00:00
stskeeps c9be3fbac8 +- Fixed some SSL errors. read() returns -1 on error, so ircd_SSL_write and
+  ircd_SSL_read must emulate the same. codemastr: could you check what the
+  win32 equiviant of EIO is? I don't think my WSAEIO or whatever I called it
+  in sys.h is correct.
2002-08-02 11:45:31 +00:00
stskeeps 51539ee85b - Fixed some compile errors found by Zerwas and fixed some implementation problems of
the not able to set +z when there's non +z users (ULines not counted) in channel
2002-08-02 09:22:58 +00:00
luke f448495e3a Made notices pretty 2002-08-01 23:15:12 +00:00
luke f45917c16c New operoverride system...hope it works 2002-08-01 19:53:30 +00:00
luke b22f4c890b fixed modebuf, parabuf sizes 2002-08-01 17:56:54 +00:00
stskeeps 9e205fe3d5 - Made the win32 installer have the option of installing as a service under NT and fixed a
+  shortcut bug
+- Fixed sptr->user->realhost becoming lowercase upon a +x
+- Fixed +bbbbb lots of crap desynch bug
+- Fixed OperOverride snotice bugs with halfop
+- Standardized OperOverride notices
2002-08-01 16:39:05 +00:00
stskeeps ba60adb833 fixed no nssl compile error 2002-07-25 18:35:48 +00:00
stskeeps c0af661c77 More SSL horror and fixed a missing , in m_who 2002-07-24 17:59:26 +00:00
codemastr 54ed370fb3 Fixed a /who hop count bug 2002-07-24 17:49:39 +00:00
codemastr 5b32996538 Some config changes and documentation updates 2002-07-24 17:00:37 +00:00
stskeeps 5af8478d67 moo 2002-07-24 10:22:22 +00:00
stskeeps 2336498e9d blah 2002-07-24 10:11:35 +00:00
stskeeps d7c8623438 . 2002-07-24 10:00:17 +00:00
stskeeps 4e84c85ceb - Added ircd/safe_SSL_read/write from bahamut+inet6/azzuranet. This can be done much nic
when newio is done.
2002-07-23 19:04:18 +00:00
stskeeps 775f3fe272 Fixed some ./configure errors 2002-07-23 17:55:02 +00:00
stskeeps 8aabac59e9 Credits changes 2002-07-23 16:12:16 +00:00
stskeeps 4f1345c350 Removed mutex.c 2002-07-23 15:35:39 +00:00
stskeeps f69335e62b - Made ./configure check if it has parameters, and error if it don't. 2002-07-23 13:11:52 +00:00
stskeeps 13f23e478d - Changed ./update to use update.unrealircd.com 2002-07-23 12:45:58 +00:00
stskeeps c4908cb4fd Added some release notes with regards to scanners 2002-07-23 12:33:44 +00:00
stskeeps f19ebceee6 Fixed a silly bug with regards to matching against compressed IPs in link {} checking 2002-07-22 20:39:58 +00:00
stskeeps f0564193ba - Added a #ifdef _WIN32 for extern BOOL IsService; in ircd.c that made compile break
on non WIN32 systems
- Depricated AKILL/RAKILL and made them alias to TKL G +/- - for normal users they
  just reply that the commands are depricated. Server compatiblity is maintained.
  Eventually it will just be removed. Thank god for modules.
2002-07-22 20:33:49 +00:00
codemastr 36e4b65c45 Made the win32 uninstaller remove dbghelp.dll if it was installed 2002-07-22 00:50:49 +00:00
codemastr a1456aa107 Added an installer script to generate the SSL win32 version 2002-07-21 21:40:24 +00:00
codemastr a799e48f82 Removed StackTrace and implimented a home-grown debugger for win32 2002-07-21 21:31:44 +00:00
codemastr dce6edf333 Removed a TechAdmin reference in makeconf 2002-07-19 20:26:03 +00:00
codemastr 33403f2c3c Added an installer for win32 2002-07-19 18:15:53 +00:00
codemastr ec47a030fb Added WinNT Service Support 2002-07-19 17:31:51 +00:00
luke 02d7d80eb6 Secure channel only (+z) ERR_BANNEDFROMCHAN fix 2002-07-19 00:27:48 +00:00
stskeeps 1dbd3b42d5 - Fixed compile problem with non-glob/win32 systems (sunos 4.1) found by rshurr 2002-07-18 18:05:18 +00:00
luke 6336f7706f Added s_join fix to changes 2002-07-17 16:51:49 +00:00
luke 2fa495de1f Added self to /info 2002-07-17 16:49:31 +00:00
luke 7003df9aaf m_sjoin bugfix to resolve banlist problems 2002-07-17 16:42:11 +00:00
codemastr a0d6f168eb Fixed a makeconf bug that would make it not work after make install in some cases 2002-07-13 17:39:26 +00:00
codemastr 3c11cbb999 Fixed an oper bug where locops didn't get a hidden host 2002-07-13 16:56:01 +00:00
codemastr c5572fa6d5 Fixed a +sp bug 2002-07-12 18:00:45 +00:00
codemastr 032b8c523c ... 2002-07-12 15:51:33 +00:00
codemastr 188fa47e73 Fixed an alias {} prefix bug 2002-07-12 00:52:00 +00:00
stskeeps a1a299b9ff - Added extras/channeldumper.c 2002-07-03 11:25:41 +00:00
codemastr fdfdbd993e Added MD5 and SHA1 encryption to the win32 version 2002-07-01 21:09:01 +00:00
codemastr e81ca7b87c Added support for RIPEMD-160 encryption of passwords 2002-07-01 16:32:15 +00:00
codemastr 65729501ed More WinXP IPv6 fixes 2002-06-30 16:03:38 +00:00
codemastr 6353f10f82 Started WinXP IPv6 2002-06-29 23:28:14 +00:00
codemastr 305d71e552 Removed some obsolete docs 2002-06-29 23:25:10 +00:00
codemastr 17eb4e57d1 Updated INSTALL 2002-06-22 15:39:15 +00:00
codemastr 15e00b6dff made set::scan::bind-ip work in win32 and added AWAYLEN= token to 005 2002-06-22 00:43:22 +00:00
stskeeps 110c1b4fe4 - Fixed minor problem with former patch 2002-06-21 10:41:46 +00:00
stskeeps 7bef381cc6 - Added set::scan::bind-ip, set::scan::message, on request of RaYmAn, documented
in example.conf
2002-06-21 10:23:16 +00:00
ejb f38f758639 - Added /who +R which shows real host to opers. 2002-06-20 19:49:44 +00:00
ejb 539f218fce - Fix a minor stupid in m_quit.c. 2002-06-19 03:50:53 +00:00
codemastr 6282bc7180 more count bug fixes 2002-06-19 00:06:51 +00:00
codemastr 7b39825bb1 Fixed an oper count bug 2002-06-18 23:44:43 +00:00
codemastr cedb574f89 Fixed a bug that could cause an incorrect oper count 2002-06-18 17:07:13 +00:00
codemastr 2b769d576d Updated install to tell the user to use make install 2002-06-18 16:27:06 +00:00
ejb 5d9a49587c - couple of updates to INSTALL. 2002-06-17 20:45:05 +00:00
ejb 6466d1ed3f - Changed m_quit.c slightly, removed a redundant strlen, made prefix-quit of
"no" not use one at all, since this is in example.conf and is sensicle..
2002-06-17 03:42:25 +00:00
ejb 145d3dfb7e - Rewrote m_who.c from scratch. It's slightly different, help.conf explains exactly how. 2002-06-17 03:00:37 +00:00
codemastr 8dd7b3efee Documentation changes 2002-06-16 20:39:22 +00:00
ejb d27f817403 - Added myself to s_info.c:m_info(). 2002-06-16 19:48:02 +00:00
stskeeps 2d2dcbd93a moo 2002-06-15 20:40:56 +00:00
stskeeps b5ae2f7fc8 crack 2002-06-15 20:12:13 +00:00
stskeeps ed34721f16 Failsafe 2002-06-15 19:46:55 +00:00
codemastr a92c041b88 ... 2002-06-09 22:43:59 +00:00
stskeeps 4761f302f6 Included larne's /who patch, adding a multitude of symbols? :P 2002-06-08 19:53:54 +00:00
codemastr b59cead0b2 Fixed a /who bug where + wasn't displayed for voices 2002-06-07 23:40:38 +00:00
codemastr 560155275b Fixed a win32 bug where the tray config menu didn't display anything 2002-06-07 23:29:11 +00:00
codemastr 8694c3ffbe Converted the status window to a modeless dialog 2002-06-07 19:47:30 +00:00
codemastr 562397aa87 Fixed a hidehost bug where ABC.com would generate a different key than abc.com 2002-06-07 16:28:02 +00:00
codemastr 6f5590934f Made module load failure non fatal 2002-06-07 16:14:06 +00:00
codemastr 6fd5101305 Fixed a module bug when there is an include between a module-config-directive and the loadmodule 2002-06-06 21:42:54 +00:00
codemastr 9d1c5c2ceb Fixed a scanner bug causing it to never timeout 2002-06-06 21:31:32 +00:00
codemastr c27a3229c7 Fixed a maxperip and maxunknownconnectionsperip bug in IPv6 2002-06-04 16:46:45 +00:00
codemastr 18892b6446 ... 2002-06-04 16:23:58 +00:00
codemastr 542ecdc7fb Fixed a bug in the new allow system 2002-06-04 16:21:21 +00:00
codemastr a510d024d6 Added allow::options 2002-05-31 21:53:33 +00:00
codemastr ac1c9232bf Fixed some /stats Z problems 2002-05-29 19:53:34 +00:00
codemastr b2ec3ec1a7 Fixed a typo in doc/example.conf (and a few cleanups) 2002-05-29 16:26:21 +00:00
stskeeps 3699932d77 - Fixed some stuff to deal with #136 - Please note that we do NOT compress our addies
- reason for this is because for example ::ffff:192.168.1.5 would really fuck up stuff
  in the IRC protocol
2002-05-28 23:55:07 +00:00
codemastr 2b68123854 Fixed some typos and hostilename problems 2002-05-28 22:03:52 +00:00
codemastr 636aa8352b Fixed a stats l/L bug 2002-05-27 19:28:42 +00:00
stskeeps e0048f7525 - Made ident checking work on IPv6 as well 2002-05-27 17:44:10 +00:00
stskeeps f8865a5aa1 - Fixed a openssl+ipv6 bug, pointed out by Aragon .. This probably breaks some other crap, but what
the heck..
2002-05-25 16:56:59 +00:00
stskeeps 1f75896d56 - Added OpenIRC-CA in .SICI 2002-05-23 09:31:36 +00:00
codemastr 870289c2fd Finally REALLY fixed the scanner (note to Stskeeps: bcmp returns 0 when there IS a match) 2002-05-21 20:54:14 +00:00
codemastr 037b2e6434 Removed some SOCKS scanner debug code 2002-05-21 20:20:17 +00:00
codemastr a6ddaba35b Added gethostbyname_r config check 2002-05-21 18:52:27 +00:00
griever 2484153b70 ... 2002-05-21 01:06:14 +00:00
codemastr 49bb821199 Network file additions/deletions 2002-05-19 22:59:09 +00:00
codemastr 99db84be8c Updated docs and changed version to beta10 2002-05-19 15:18:12 +00:00
griever 8d1ff52f0d Fixed various bugs 2002-05-18 22:41:16 +00:00
codemastr e53e4a93db Credits changes 2002-05-10 22:04:30 +00:00
codemastr e77382c196 Fixed an OpenBSD bug 2002-05-10 21:27:18 +00:00
stskeeps d90d0f52f6 - Fixed a number of bugs in the upper patch. 2002-05-10 17:29:49 +00:00
stskeeps f19f945836 mm 2002-05-10 16:09:26 +00:00
stskeeps 8833852342 :src/ircd.c 2002-05-10 16:02:25 +00:00
stskeeps c343bf91f7 . 2002-05-10 15:59:06 +00:00
stskeeps 1ccd58d2a2 - Rewrote check_pings and the whole way banning people are handled. Do loop.do_banch
to provoke a bans check. This possibly fixes #00001702, #0000137 and other
  funny bugs.
2002-05-10 15:50:54 +00:00
codemastr e1f991f196 Fixed a config parser bug 2002-05-08 23:44:16 +00:00
stskeeps 60a2ebc493 - Fixed a bug with \r\n being mistakenly parsed wrong. Thanks to John_z 2002-05-07 20:59:47 +00:00
codemastr a88f70518c Fixed some free call typecasting 2002-05-01 20:13:37 +00:00
codemastr 29454d1c56 Fixed a socks scanner bug 2002-04-30 22:13:33 +00:00
codemastr f31620b194 Fixed a bug where except ban didn't work 2002-04-28 19:37:23 +00:00
codemastr 3bd9fbcccf Fixed a typo after make is done 2002-04-28 18:45:14 +00:00
codemastr 9834eb7566 Fixed some typos 2002-04-28 18:37:23 +00:00
codemastr ac6f01c0df Fixed another memory leak with the scanners 2002-04-28 18:28:49 +00:00
stskeeps d2db682c97 . 2002-04-26 12:42:33 +00:00
stskeeps 49c8a45728 . 2002-04-26 11:55:31 +00:00
stskeeps 0322db7ebd g 2002-04-25 19:58:45 +00:00
stskeeps 8d35c56efb - Some fixes with connect(). Knowing my luck this will fuck up to hell 2002-04-25 19:55:55 +00:00
stskeeps 9cf9781698 - Memory leak fixes with scanners 2002-04-25 14:28:32 +00:00
griever de9b9854b9 Fixed some stuff 2002-04-23 01:12:45 +00:00
codemastr 640404a4d5 Fixed some 64bit int cloak problems and updated credits 2002-04-19 20:24:41 +00:00
codemastr 13597dc40d Fixed some problems with sykper's patch 2002-04-19 19:43:39 +00:00
stskeeps 5d401a394e - Some more of skyper's security audit patch. Some of them were simply
unfair in regards to performance or blindly added strlcats/strlcpy
2002-04-18 19:05:22 +00:00
stskeeps b95b9d9e27 compile fix 2002-04-18 15:20:39 +00:00
stskeeps 491d6f70c2 First part of skyper's security audit patch 2002-04-15 20:17:36 +00:00
stskeeps f18eb925c4 - Documentation bug #0000152 reported by Tony at sexnet.org fixed regarding
example.conf being wrong about set::socks
2002-04-15 07:31:37 +00:00
codemastr 296b085008 Fixed a bug involving +H and oper counts 2002-04-02 21:28:43 +00:00
codemastr b0178e83bd Fixed a +c bug involving locops 2002-03-28 21:37:27 +00:00
codemastr 4a49f9b21f Fixed a /stats q bug causing a crash with sqlines with no reason 2002-03-26 22:50:27 +00:00
codemastr c20d8fb8f8 Fixed a win32 editor bug causing a crash when you click save multiple times 2002-03-25 21:10:51 +00:00
stskeeps e478bced2e .. 2002-03-25 07:57:46 +00:00
griever 0ce08bb11a blah 2002-03-25 04:48:01 +00:00
codemastr a7851a2b95 Made +I work under win32 2002-03-24 17:25:43 +00:00
codemastr e65a717cf4 Changed version to beta9 and updated documentation 2002-03-24 17:17:26 +00:00
codemastr 430121770f Added EXLIBS= to make custommodule 2002-03-24 17:11:24 +00:00
codemastr e55a6611c8 conf_unknown bug fix 2002-03-23 20:14:44 +00:00
stskeeps 1937f8c742 . 2002-03-23 19:32:21 +00:00
codemastr b516697885 Dynamic hook type system 2002-03-20 19:45:20 +00:00
stskeeps 94306ba8a5 - Cosmetic fix for /setident, found by juli .. 2002-03-20 16:38:37 +00:00
stskeeps c695ee4bcf - One little patch for humanity, one giant step for science.. 2002-03-19 21:14:24 +00:00
stskeeps ba08714e66 - Fix for desynch problem with the fix in /mode system, Thanks to Luke 2002-03-19 19:57:26 +00:00
codemastr 0f9d6e71e8 Updated doc/conf.doc 2002-03-19 16:49:36 +00:00
codemastr 9237ce85cf ... 2002-03-19 16:48:09 +00:00
codemastr f10832a977 Changed HOOKTYPE_JOIN to HOOKTYPE_LOCAL_JOIN 2002-03-19 16:41:43 +00:00
codemastr 7523a30430 Updated all modules to use 3.2-b8 format 2002-03-19 16:00:34 +00:00
codemastr 7587d594da Added HOOKTYPE_JOIN 2002-03-19 15:19:34 +00:00
codemastr 65a2668ede Added log {} syslog support 2002-03-18 23:26:12 +00:00
stskeeps ffea432f5a cfrap 2002-03-17 23:06:56 +00:00
stskeeps e679134624 - Fixed bug with mode buffer overflow .. I'm not 100% positive it works..
Thanks to larne, Luke, SciFi, panda, ^Tux^.. Syzop .. and the countless
  people bitching about their servers going down.
2002-03-17 22:39:06 +00:00
griever 12869627e6 This really should be in all changes files 2002-03-16 20:54:37 +00:00
griever 7819ffae6c Fixed m_oper +Oo bug. 2002-03-16 20:34:17 +00:00
stskeeps 73b7a8be1e - Fix with status needed for remote clients too. Found by
Craig/FrostyCoolSlug <Craig@e-tidalwave.org>
2002-03-16 18:09:15 +00:00
codemastr 0b632d5e71 Fixed a Chinese nick bug 2002-03-16 17:10:17 +00:00
stskeeps 0576528af0 Mroe shit 2002-03-16 16:54:55 +00:00
stskeeps ef43f0f2ca Fix with debugmode 2002-03-16 16:51:56 +00:00
codemastr 0c540e883f Converted commands to use module objects 2002-03-15 23:35:55 +00:00
codemastr 0131d9f325 /mkpasswd typo fix and doc/unrealircd.doc update 2002-03-14 01:24:20 +00:00
stskeeps 2399936a6a - Fixed leftovers of non- char *configfile compliance. Thanks to ace and
various other people ..
2002-03-13 22:03:42 +00:00
codemastr b4a6f24f80 Fixed a listen::options::serversonly bug 2002-03-13 21:18:09 +00:00
codemastr 2f449e0918 Module Insanity Prototype Fix 2002-03-13 20:45:06 +00:00
codemastr fd925b3c28 Module Insanity v1 2002-03-13 20:42:40 +00:00
codemastr 5753585026 Fixed a win32 editor line count bug 2002-03-12 23:36:25 +00:00
stskeeps 1c73d5ae45 . 2002-03-12 20:40:42 +00:00
stskeeps 1a9b9ccf1a more shit 2002-03-12 20:39:16 +00:00
stskeeps ce580bbe09 - Small release tricks 2002-03-12 20:29:17 +00:00
stskeeps 1c22a8257c - Compile fix for TS2ts 2002-03-11 14:17:56 +00:00
griever 335e30513c Fixed -Wall warnings for TSTime 2002-03-11 04:26:27 +00:00
codemastr 38c48fef75 Fixed an IPv6 problem 2002-03-10 20:25:09 +00:00
codemastr 662f6398f3 Release preparation 2002-03-10 19:24:16 +00:00
codemastr 420991af6a Removed my_name_for_link (unused) 2002-03-08 22:13:51 +00:00
codemastr 0f2ae3c278 Win32 fix with u_int16_t 2002-03-06 21:45:04 +00:00
codemastr 4823908acb Removed src/cio_main.c, src/cio_init.c, include/cio.h, include/ciofunc.h extremely old unused code 2002-03-06 21:43:59 +00:00
codemastr 03aa90bc43 ... 2002-03-05 23:22:21 +00:00
codemastr bef880aa6a Removed all remnants of PROTO() 2002-03-05 23:09:39 +00:00
codemastr b8fecd310f ... 2002-03-05 19:34:10 +00:00
griever 104e7200f5 FOO! 2002-03-05 00:49:03 +00:00
codemastr eaecb8c42a Win32 -Wall cleanup 2002-03-04 23:34:13 +00:00
codemastr c4d3ae9df1 Clean compile with -Wall 2002-03-04 21:31:01 +00:00
codemastr b60eb8f989 Readded examples to doc/conf.doc 2002-03-03 19:25:35 +00:00
codemastr 8de39f6dc5 Made extraflags be checked by deny version and fixed a +I bug 2002-03-03 16:04:51 +00:00
codemastr a46ebe1f38 Added various patches by Syzop 2002-03-02 17:18:11 +00:00
griever 78fa804531 blah 2002-02-25 19:56:49 +00:00
stskeeps 2b6390daa3 fixed problem with wrong moved cptr passwd 2002-02-19 16:19:36 +00:00
stskeeps 4aa8f59611 - Fixed #undef STRIPBADWORDS problem, patch by light 2002-02-18 15:37:52 +00:00
griever 3debe8680a -Wall -Wno-implicit 2002-02-16 21:31:51 +00:00
griever 1c9ee5c817 -Wparentheses 2002-02-16 20:54:51 +00:00
griever e5d74b9ae0 -Wformat 2002-02-16 20:40:12 +00:00
griever 6f8aca82f3 -Wunused 2002-02-16 20:15:41 +00:00
griever dbaab6e026 Fixed ugly code 2002-02-16 19:24:42 +00:00
codemastr d3e7ab8006 Credits update and htm fix 2002-02-16 16:48:40 +00:00
codemastr 3a4c06ffd3 Fixed a typo in the docs 2002-02-15 23:00:05 +00:00
stskeeps 73af1fd6e0 . 2002-02-15 22:50:37 +00:00
stskeeps 4fd3ec7525 . 2002-02-15 22:48:51 +00:00
stskeeps 19cd68a204 - lack of time sucks. openbsd problem 2002-02-15 22:46:33 +00:00
codemastr 2d7eb2c1b1 Possibly fixed the /who flags bug 2002-02-12 20:06:20 +00:00
stskeeps c5d855eb10 - Fixed m_rawto.c problem found by TheDarkOne 2002-02-11 20:41:25 +00:00
codemastr d29b6498fb Modified the _ fix to work on all OSes that need it 2002-02-11 17:08:18 +00:00
stskeeps 1f8489a471 . 2002-02-11 16:23:02 +00:00
stskeeps 02acda1628 - Fixed an issue with -x and /quit and whowas, found by RaYmAn 2002-02-11 16:16:25 +00:00
stskeeps fccb560c67 . 2002-02-11 14:34:46 +00:00
stskeeps 376e3d3d6f - Fixed a problem with Mod_Handler being **, found by andi 2002-02-11 13:29:11 +00:00
stskeeps f92fcae257 - Added SJOIN fix so it won't accept NULL channels 2002-02-11 12:48:27 +00:00
stskeeps 7c54ce70c9 - Added andi's OpenBSD fix for the symbol issue with prefix _ 2002-02-11 12:24:15 +00:00
stskeeps 0206d844e9 +- Added tainted variable. 3rd party modules must ++ this upon load,
+  -- upon unload. Will show a 3 in flags.
+- Added extras/m_rawto.c - 3rd party module. Fixed some documentation
2002-02-11 11:03:05 +00:00
stskeeps afcb0b2a03 - Made makefile ability to "make custommodule MODULEFILE=m_zline"
if m_zline.c is in src/modules/, it will get compiled. This SHOULD
  help 3rd party modules atleast
2002-02-11 10:24:11 +00:00
stskeeps 9194aece63 Various 2002-02-06 19:38:30 +00:00
stskeeps a9f1838c3e - Various fixes to virthost system, may fix some memory corruptions
and potential exploits.
2002-02-06 19:35:42 +00:00
stskeeps 78ef8effe9 - Various fixes to virthost system, may fix some memory corruptions
and potential exploits.
2002-02-06 19:33:21 +00:00
stskeeps 90d56ef4e5 fix broken 2002-02-06 15:03:15 +00:00
griever ae0f7643dd Fixing broken tokens 2002-02-05 23:47:44 +00:00
codemastr 30b0175a39 ... 2002-02-03 17:25:52 +00:00
codemastr bd6729ad93 More -Wall cleanups 2002-02-03 17:15:37 +00:00
stskeeps 51d0d59ced slight compile error 2002-02-03 15:11:55 +00:00
stskeeps 9daf3d0b73 - BEFORE you use event functions, LockEventSystem(), after,
UnlockEventSystem(). In EVENT() functions, the system _is_ locked.
  This might fix the double recursion mutex problem we got.
2002-02-03 15:09:49 +00:00
stskeeps 7805566ceb - Fixed loadmodule invisibility.so: undefined symbol:
get_umode bug, reported by James-Bond, #0000060)
2002-02-02 16:50:51 +00:00
griever c7fbfa3e92 Yeah yeah, blah blah shit 2002-02-02 02:24:44 +00:00
codemastr 8e7b926c31 Made the win32 version set read only log files to writable 2002-01-31 21:11:29 +00:00
codemastr 887a003b98 Added a shutdown confirm message box when you click the X in win32 2002-01-31 20:32:38 +00:00
codemastr 5a0d13d9fa Fixed a umode system error with unknown modes 2002-01-31 17:50:56 +00:00
codemastr 164869dca5 Documented the new set::scan::* directives in doc/conf.doc 2002-01-30 22:10:54 +00:00
codemastr 538c318eb6 Fixed win32 scanner bugs, and added a menu option to view log files in win32 2002-01-29 22:45:17 +00:00
stskeeps fa2e9760f9 - Changed some m_ functions into CMD_FUNC(m_*) 2002-01-29 13:48:00 +00:00
codemastr 5a366beda7 Scanner config changes 2002-01-29 00:21:57 +00:00
codemastr 0f6d91091e ... 2002-01-28 00:39:32 +00:00
codemastr 8be7cbab05 Made all functiosn use new-style parameter lists 2002-01-28 00:38:02 +00:00
stskeeps 112d928f11 - Fix for /version crash, reported by RaYmAn 2002-01-27 23:18:32 +00:00
stskeeps 6d239e28ec - -Wall cleanup cleanup with SSL AUTH problem 2002-01-27 22:40:11 +00:00
codemastr d10bc57b74 ... 2002-01-27 20:31:56 +00:00
codemastr 6b8c83ba85 Cleaned up a bunch of -Wall warnings 2002-01-27 20:28:41 +00:00
stskeeps 93f759f200 - Changed umode +I behavoiur to you have to be loading invisibility.so to ha
the +I functionality. Code is still in IRCd, but isn't used until module
  is loaded. Loading of this will cause an R to be added to /version
  flags. Hopefully this will satisify some people's thoughts about a so
  called spy tool being enabled by default. Also added flag_add(char *)
  and flag_del(char) for modules to add to flags string. -Sts
- Removed -win32 postfix for wircds, look in /version for W instead
- Removed ircnetwork part of /version
2002-01-27 18:07:20 +00:00
codemastr dc3f1ba227 Documented link::cipher and except tkl in doc/conf.doc 2002-01-26 20:47:42 +00:00
codemastr b549340657 Added except tkl 2002-01-26 20:38:12 +00:00
codemastr 8f68a64363 Made SHOW_SECRET defined by default 2002-01-26 18:16:02 +00:00
codemastr 15c765449b Fixed a t.next recode typo and added -pipe check for gcc 2002-01-26 17:54:14 +00:00
stskeeps ec5231f565 - Fixed some t.next's and replaced with codemastr method(tm) 2002-01-26 00:20:20 +00:00
stskeeps db060a11b8 - Fixed some minor issues with dialog interface for .pem SSL passwords
- Added makecert.bat / encpem.bat to src/win32, which are used in SSL release
2002-01-26 00:17:35 +00:00
stskeeps f52f030346 fix 2002-01-26 00:12:32 +00:00
codemastr 58c667c7c3 Added a win32 dialog for the SSL .pem passwords 2002-01-25 23:11:29 +00:00
stskeeps a3a04d9797 - Added link::cipher for #define USE_SSL, use this to select
ciphers, read example.conf for more. Closes #000016. Suggested by narf
2002-01-25 22:22:11 +00:00
codemastr 3e89146e19 Fixed a listener bug 2002-01-24 21:11:19 +00:00
codemastr ce009a31ba Fixed a win32 bug that causes the editor to cut text at 32KB 2002-01-24 21:00:09 +00:00
stskeeps e39a1f9884 zogg socks fix 2002-01-24 18:29:19 +00:00
stskeeps 7a7e2de05c - Added patch in #0000053 by |savage|, speedup in can_send 2002-01-24 17:48:04 +00:00
stskeeps 59084e02a1 +- Fixed #0000046 regarding Module_free memory leak 2002-01-24 17:44:03 +00:00
codemastr 6fda3150a6 Removed some useless tkl code 2002-01-22 20:19:40 +00:00
codemastr 6db9156993 Fixed a listener bug reported by Dragon974 2002-01-22 20:03:54 +00:00
codemastr e306a6e55c Recoded hooks to work like events 2002-01-21 18:25:20 +00:00
codemastr e72587c252 ... 2002-01-20 20:19:40 +00:00
codemastr eca91bee1f Fixed a module object bug involving static linking 2002-01-20 16:04:13 +00:00
codemastr 0b873a2b6b Recoded hooks to use module objects 2002-01-20 15:42:48 +00:00
griever c78c669fdd wtf.. 2002-01-20 00:01:36 +00:00
stskeeps 863e32a3d9 Problem with sendto_ops and null aclient->user fix 2002-01-19 18:12:22 +00:00
codemastr de2c5e6cc7 Various changes to the module system 2002-01-19 17:04:04 +00:00
griever 84c70bdd2f Blah... 2002-01-15 20:07:30 +00:00
griever aedfae229a Fixes about stuff 2002-01-15 04:32:00 +00:00
griever f65e857d4e sendto_ops is SNO_SNOTICE now 2002-01-15 04:27:14 +00:00
griever 587f4c4281 fix for stuff... made kline-address error easier to understand 2002-01-15 03:50:24 +00:00
griever f5f4e4500f Blah de poop! 2002-01-15 00:39:04 +00:00
codemastr dbda73fa56 Fixed various bugs and some cleanups 2002-01-14 20:01:36 +00:00
griever 0dd1483fc3 example.conf and m_oper fixes 2002-01-13 22:00:27 +00:00
griever 96d2cf936b MAXPARA removal 2002-01-12 22:18:48 +00:00
griever f7ab73f82e stupid error 2002-01-10 20:22:46 +00:00
stskeeps 12cdefe981 . 2002-01-09 13:52:25 +00:00
griever 8b6f528b54 *prays* 2002-01-08 02:17:05 +00:00
griever f512f9b901 now does a NOQUIT type thing for SQUITs 2002-01-08 02:14:49 +00:00
griever 819e0c98ea uh? 2002-01-08 01:14:28 +00:00
codemastr 2f67e63456 Updated INSTALL because people don't read channel topics 2002-01-08 00:22:55 +00:00
griever c2649c5438 Code cleanups 2002-01-07 22:42:45 +00:00
griever b34268dad0 Fixed gline bug 2002-01-07 22:35:12 +00:00
codemastr e20e9dfd85 Added Tkline, Tzline, and Gzline to the docs 2002-01-07 22:08:24 +00:00
codemastr 455d732636 Changed version to beta6 2002-01-07 19:19:47 +00:00
codemastr ba01670af2 Updated release notes 2002-01-07 19:12:37 +00:00
codemastr 9e42107355 Converted all calls to hunt_server to hunt_server_token 2002-01-07 19:01:07 +00:00
codemastr d25d7900df Added the ability to go to a specific line in the win32 editor 2002-01-07 18:41:57 +00:00
codemastr d48edbdf5c Added hunt_server_token 2002-01-07 16:07:02 +00:00
griever b1fce6bb63 omg... 2002-01-06 04:24:57 +00:00
griever ff4517fa8a ... 2002-01-06 04:09:44 +00:00
griever 2ed3bf18df Fixed compile bug with me not knowing structure stuff 2002-01-06 04:08:04 +00:00
griever 3a49482363 Fixed target limits 2002-01-06 03:50:07 +00:00
griever 1055c2b73c Yay, sts was drunk 2002-01-06 02:01:34 +00:00
codemastr 29f53a13c4 More editor changes 2002-01-05 20:32:30 +00:00
codemastr 40a014a66e Fixed a token error 2002-01-04 22:18:56 +00:00
codemastr 393217392f Removed some // comments 2002-01-04 00:30:05 +00:00
codemastr 711b771b39 Made a few cleanups to the win32 code 2002-01-02 21:35:26 +00:00
codemastr 0f93326707 ... 2002-01-02 21:21:30 +00:00
codemastr bdd52d3eb8 Made the win32 editor use a toolbar, and added XP GUI support 2002-01-02 21:20:29 +00:00
griever 8b753d84eb Moved some stuff to the local section of aClient
stuff is still commented out (don't whine about //comments
as the lines are gonna be removed anyway)
in case this makes it core
2002-01-02 04:21:21 +00:00
griever 70a129aac4 Doh, forgot to comment the & too... 2002-01-02 04:12:21 +00:00
griever f0ddd37c49 Removed archaic useless stuff 2002-01-02 03:46:14 +00:00
stskeeps d20059ea7d +- Removed some ancient debugging code (num - %s) 2002-01-01 16:40:00 +00:00
stskeeps bebebf6cdf +- Made support in *nix for encrypted SSL private keys,
+  "make encpem" to make an encrypted server key if you already have one
2002-01-01 16:25:29 +00:00
codemastr 3bdee011e9 Fixed a typo in example.conf 2001-12-31 16:29:09 +00:00
stskeeps 259b1a5eeb +- Fixed .1081 problem, see bug #0000020 for more information about how
+  it REALLY should be fixed
2001-12-31 00:55:48 +00:00
codemastr 49780c8113 Fixed a editor bug where it always says the file was modified 2001-12-30 20:55:51 +00:00
codemastr 9aeeca3ee8 Fixed svsnoop 2001-12-30 20:52:14 +00:00
stskeeps be3f21edd7 +- Fix for svsnoop symdep problem 2001-12-30 20:43:53 +00:00
stskeeps 407aa55e58 +- Fixed problem with EventDel, doing eventptr instead of eventptr->name
+- Fixed bug #0000019 reported by Syzop, and bug found by same to deal with
+  individual module loading
2001-12-30 19:51:31 +00:00
codemastr 08ad7f0816 Made tld::mask user user@host instead of just host 2001-12-30 17:39:33 +00:00
stskeeps 0f9b578baa +- Crash in scan_http fixed, h->in instead of &h->in = bad 2001-12-30 11:41:25 +00:00
stskeeps 976aa0cb77 +- doh, missing a ! in m_tkl.c that allows us to do bad things(TM)
+- Fix for nested comments, found by lnxgk
+- C++ comment fix, lnxgk again.
2001-12-30 08:48:41 +00:00
griever 929dd62144 *cant enter a commit log because he's too busy laughing at himself* 2001-12-30 07:54:22 +00:00
codemastr 4df1253ab3 Removed set::hosts::techadmin from all network files 2001-12-30 00:34:23 +00:00
griever 662ad36275 Fixed makenet so techadmin-host is gone 2001-12-29 23:40:46 +00:00
griever 75b989d67a added mutex.c 2001-12-28 23:10:30 +00:00
codemastr 5b5ed53edb Fixed a major events bug caused by drunken coding 2001-12-28 22:44:24 +00:00
codemastr 009a3d498c Fixed a /chgname bug where you needed a : to have spaces 2001-12-28 22:25:57 +00:00
codemastr 9b8b45099f Fixed a bug causing weird things to happen after /rehash 2001-12-28 22:14:13 +00:00
griever 5d0f93255b Grr.... 2001-12-28 21:38:52 +00:00
codemastr b4091f77ff Fixed an editor bug under WinXP 2001-12-28 17:47:38 +00:00
stskeeps 4934786273 +- Reversed freeze bug fix, _NP means NON PORTABLE
+- Fixed a freeze problem with conf_deny_link
2001-12-27 13:01:00 +00:00
griever 0d0a632f51 Fixed (I think) freeze bug in m_htm, this might not work on all pthread implementations 2001-12-27 06:01:15 +00:00
griever 3594f2ee45 Made it so "modulename.so" -> "./modulename.so"` 2001-12-27 05:59:05 +00:00
stskeeps c07e8962e5 +- Small fix for #427583 mode bug 2001-12-26 23:35:25 +00:00
griever 9c947f140e Duh... 2001-12-26 22:38:10 +00:00
codemastr 86206ed51c Fixed a win32 editor bug 2001-12-26 17:03:27 +00:00
stskeeps 836be977eb +- Actually enabled MD5, SHA1 methods when SSL was defined. (fix for drunk
+  coding)
2001-12-25 18:13:34 +00:00
codemastr 3859340b2a Fixed a bug in new-style oper flags making it ignore some flags 2001-12-25 18:10:39 +00:00
stskeeps b2ef3ec1b6 crypt fix 2001-12-25 13:29:50 +00:00
griever 5c0894e57c fixed bug in /stats o causing classless oper{} blocks to possibly core 2001-12-25 05:23:33 +00:00
griever 12cee06bf1 Fixed /map bug that allowed users to find U:Lined servers 2001-12-25 02:24:24 +00:00
stskeeps c753c7adc1 +- Fixes for ->user structures 2001-12-24 22:43:14 +00:00
codemastr 897a8cec60 Fixed a DEFAULT_PERMISSIONS bug 2001-12-24 22:34:02 +00:00
codemastr 548c108ecb Fixed a last minute win32 bug 2001-12-24 18:51:40 +00:00
stskeeps 7ec691c0ed +- make install fix 2001-12-24 13:54:59 +00:00
stskeeps 129bc36adf +- Fixed some slave work.. return MOD_SUCCESS; in all command modules.. 2001-12-24 11:19:49 +00:00
stskeeps 23bc0b40e6 +- Changed to beta5 2001-12-24 09:02:00 +00:00
stskeeps 6ccda4cc95 +- Added back good old error reporting in ./unreal start 2001-12-24 08:16:58 +00:00
codemastr 8480b860cf Updated /info 2001-12-23 23:29:51 +00:00
codemastr 8505657eab Final Release Cleanups 2001-12-23 23:08:27 +00:00
stskeeps 9dd3367f72 +- Credits fixes 2001-12-23 22:51:58 +00:00
stskeeps e888024e63 +- CIDR IPv6 fixes, scan_* fixes 2001-12-23 22:27:10 +00:00
codemastr 41f65241a4 Added a few network files 2001-12-23 21:26:52 +00:00
codemastr 77e03b3c91 Credits updates 2001-12-23 19:17:27 +00:00
codemastr 1a0131e9a9 Made a few updconf changes 2001-12-22 21:25:35 +00:00
codemastr cd2b8186e7 Documentation updates 2001-12-22 21:09:33 +00:00
codemastr 64ee79c5f5 Fixed a /time bug in win32 2001-12-22 20:51:06 +00:00
stskeeps f387fbbd4f +- Auth_Make fix for crypt method 2001-12-22 16:59:08 +00:00
stskeeps 3981a679c5 +- Changed SERVICES-NAME warning to error 2001-12-22 16:07:48 +00:00
stskeeps e65e01ddff +- Config parser fixes (bugs found by Souleh) 2001-12-22 15:42:21 +00:00
codemastr 68615a398f Fixed a typo in s_misc.c 2001-12-22 01:50:47 +00:00
codemastr c6266dc19c Fixed some other scanner bugs 2001-12-21 23:08:03 +00:00
codemastr dae5b893d1 Scan API cleanup, goto = evil 2001-12-21 22:58:00 +00:00
stskeeps a4de9ac1e2 +- Added #undef SECURECHANMSGSONLYGOTOSECURE - send only channel msgs to +z
+  people on +z channels
+- win32 fixes
2001-12-21 17:40:43 +00:00
stskeeps ea1e7b3f70 win32 fixes, again 2001-12-21 17:18:16 +00:00
stskeeps edd0b08139 win32 fixes 2001-12-21 15:05:59 +00:00
griever d9d5cdc910 m_sendumode done 2001-12-20 21:54:09 +00:00
griever 343f193e7b ...misspelling 2001-12-20 21:07:45 +00:00
griever a1b3eb1331 Fixed some errors 2001-12-20 20:55:45 +00:00
griever 3a482d26ca Dumbass bug... 2001-12-20 20:33:16 +00:00
griever 68bfeffa70 Slightly working m_sendumode recode, nits:
it will send to people only with ALL umodes, but with ANY of the
snomasks

blame it on sendto_umode and sendto_snomask for being wierdass
2001-12-20 03:46:00 +00:00
griever 6e42d09c50 beginning of new SMO code, testing to make sure it worky
new command format:
SMO modes :message
OR
SMO modes snomasks :message

if you want to use JUST snomasks, put "+" as the mode

the modes parameter accepts a snomask as long as there
isn't a mode with same name
2001-12-20 00:07:38 +00:00
griever 567f3b8fcb Compiles and works fine now :D 2001-12-19 00:53:36 +00:00
griever f8d1e81206 now lets see if it will compile 2001-12-19 00:04:32 +00:00
griever 6c6130fab6 Untested, not sure if it even compiles TKL shits, testing on t2n as soon as this is committed 2001-12-18 23:57:13 +00:00
stskeeps 7695fb209d +- Made link::hubmask and link::leafmask actually work properly 2001-12-18 17:39:10 +00:00
griever 2cc3eb2266 Changes modified 2001-12-17 20:34:39 +00:00
griever 4fca682f8c Error is getting really annoying... 2001-12-17 00:51:31 +00:00
griever 6e67d9dea0 added set::modes-on-oper (modes all opers get when they op up)
made Aa oflags include O
modified docs to reflect such
2001-12-17 00:43:51 +00:00
griever 5d2092858d Made +N give you +OaA as well, since everyone used it that way
Grr, it seems like such a hack to me but ok :(
2001-12-17 00:13:37 +00:00
codemastr 4291191149 Help system recode 2001-12-16 00:35:57 +00:00
griever d2a90a5101 *#($&@#(*$! 2001-12-14 22:48:20 +00:00
griever 5d5ffa3f06 !*@*$^%! I reported this bug MONTHS ago people! 2001-12-14 22:44:08 +00:00
stskeeps e881a256f4 +- Some scan unloading stuff 2001-12-14 14:29:21 +00:00
stskeeps 5171e9e08a +- Made "Module already loaded" a non fatal error (funny msg on rehash)
+- Fixed typical codemastr "Let's delete this from a list we haven't even
+  added it to yet *giggles and twirls around*" bug, do to with config_set_unknown
+- Fixed events bug, added recoded scan module, got a lot of stuff to fix so
+  far. Problems, unloading, (delay), tkl doesn't always sweep it all,
2001-12-13 21:59:37 +00:00
codemastr 2b2f767ca5 Added more HP-UX code 2001-12-12 21:19:30 +00:00
codemastr c4a8e970d3 Module v3 changes 2001-12-11 23:02:58 +00:00
griever 4e32d3a5dc Corrected credits, moved the #ifdef for NO_FDLIST 2001-12-11 21:24:18 +00:00
codemastr ccaa0f444b .. 2001-12-11 20:48:00 +00:00
codemastr c2420f2eee ... 2001-12-11 20:45:45 +00:00
codemastr eb4eb7a8c6 ... 2001-12-11 20:38:17 +00:00
codemastr b15292c980 Removed umode +T and oflags fue 2001-12-11 20:37:30 +00:00
griever 37f6ff3a10 Reflects m_oper recode and tkl oflags 2001-12-11 03:39:56 +00:00
griever 7689d54b8e +T is on its deathbed, expect it to be gone soon
m_oper mostly recoded
Various oflags now silently ignored by m_oper although kept in the oflags
var.
expect TEChat, the T oflag, and hosts::techadmin to be removed shortly
2001-12-11 02:37:32 +00:00
codemastr 0171967e18 Moved the mkpasswd program into the ./unreal script 2001-12-10 22:02:47 +00:00
stskeeps db82fc23b5 +- Module v3 bugfixes. cause: codemastr lack find n replace skill 2001-12-10 14:35:15 +00:00
codemastr 39562944c3 ... 2001-12-10 00:30:00 +00:00
codemastr 28af208a1b More module v3 fixes 2001-12-10 00:26:38 +00:00
codemastr 3b52789751 More module v3 fixes 2001-12-09 23:47:46 +00:00
codemastr 3d564a403f Fixed some more module v3 problems and upgrade all modules 2001-12-09 20:19:35 +00:00
stskeeps 26dff4eeba +- Small v3 fix with no dependency problem 2001-12-09 16:40:03 +00:00
codemastr 38588ba0b5 Fixed a win32 module v3 bug 2001-12-09 16:38:31 +00:00
stskeeps 07adb99680 +- Added module v3 code. Needs testing, and NO MODULES DOES NOT COMPILE 2001-12-09 10:44:11 +00:00
codemastr 89caaab24c Added HOOKTYPE_SERVER_CONNECT and HOOKTYPE_SERVER_QUIT 2001-12-05 23:02:33 +00:00
codemastr 573328e4e1 Added snomask +q for Q:line notices 2001-12-04 20:13:03 +00:00
codemastr 19c649fb90 snomask changes 2001-12-03 22:42:53 +00:00
griever 923624c784 Bug that caused m_oper to core randomly if oper was -x 2001-12-03 01:17:53 +00:00
griever 44be34875f Changelog.. 2001-12-02 20:51:49 +00:00
griever 1612ed7411 added can_gkline and can_gzline (for soon-to-come gzline module), old
flags are t and Z. Someone change docs accordingly
2001-12-02 20:45:17 +00:00
codemastr e872aa28a9 Converted a bunch of structures to use ListStruct 2001-12-02 17:57:24 +00:00
stskeeps abea394dc6 ---------------------------------------------------------------------- 2001-12-02 14:50:58 +00:00
stskeeps 528d82b219 +- Added ssl-pubkey auth method (parameter = pem file for public key) 2001-12-02 14:39:59 +00:00
codemastr 6d9cef9f03 ... 2001-12-02 02:06:54 +00:00
codemastr eb38fa93a3 Added cidr.c and ssl.c to the win32 makefile 2001-12-02 01:47:17 +00:00
stskeeps d7889e777e moo 2001-12-01 23:55:30 +00:00
griever fd638b155b *gets smacked by sts* 2001-11-29 21:12:06 +00:00
griever 503bf841fb *gets smacked by sts* 2001-11-29 21:00:20 +00:00
griever 69647bba3b Argh, no newline notices getting annoying now 2001-11-29 04:51:23 +00:00
griever b4bfa43e5b Added list of ppl I would like to thank :D 2001-11-29 04:49:43 +00:00
griever 67059bd3ae Changed the way ipv4 IPs are cloaked, you now need to crack all three
cloak keys to break ipv4 IPs. ip6 ips and hostnames are too ambiguous to
be susceptable.

#define COMPAT_BETA4_KEYS undoes this fix, and is required for ipv4 bans
to be interoperable between pre-beta4 and post-beta4 servers. This should
be defined on all win32 compiles at least until the first rc or final for
3.2
2001-11-28 20:39:20 +00:00
griever eb038e2938 added ANNOYING_BAN_THING to config.h, disabled by default
previous functionality: mode +b would check match() both
ways, but chanserv AKICK and bot auto-bans would break w/
this, as they would try to set for instance *!*@*.mrrmnh.adelphia.net
but if *!*@rox-1B7EB386.mrrmnh.adelphia.net were set (for example)
chanserv/the bot would flood kick them, over and over and over. No
real point to this one, so I just diked it out.

Modified Files:
 Tag: devel
 	include/config.h src/channel.c
2001-11-28 03:43:58 +00:00
codemastr 1780862cfc Added some functions for generic linked list modifications 2001-11-26 19:37:41 +00:00
codemastr 9d26bac09f ... 2001-11-26 15:56:44 +00:00
codemastr 0d2753331a ... 2001-11-26 15:50:04 +00:00
codemastr dcd9969537 Started some work on CIDR support (added some functions from hybrid7) 2001-11-26 15:40:43 +00:00
codemastr 5eea2a9daf ... 2001-11-26 15:39:13 +00:00
codemastr 893f67668f Fixed a FSU Pthreads bug on Slackware (thanks to Frank Mueller) 2001-11-24 00:34:26 +00:00
codemastr e43ac717cd Added host54.net to /credits 2001-11-22 16:18:58 +00:00
griever 9fdf9cd9e9 Typo fixes &stuff 2001-11-22 05:47:26 +00:00
codemastr e57336c9c7 Changed some function names 2001-11-19 20:30:30 +00:00
codemastr 28b8a0ef9b Fixed a minor events issue 2001-11-18 22:28:01 +00:00
codemastr 0a7e518e6f Redid the event system to be more accurate 2001-11-18 22:13:04 +00:00
stskeeps 62b2de07a7 +- Made delayed module unloading possible, make a int mod_delay() adding
+  an event, for e_unload_module_delayed
2001-11-17 14:54:32 +00:00
stskeeps 535aa4456a +- Made Events do thread locking (so we can do funny things and kill small
+  furry animals in the attempt for the perfect scanning module) .. yes, this
+  is drunken coding
2001-11-16 21:47:35 +00:00
codemastr abedc78b8b Fixed a make install problem and added some Auth support 2001-11-15 22:29:23 +00:00
stskeeps 197378a364 . 2001-11-15 22:00:37 +00:00
stskeeps c980e53fad . 2001-11-15 21:48:44 +00:00
stskeeps e9123b12db +- Added new auth.c API and a lot of different crap .. will document later 2001-11-15 20:26:52 +00:00
stskeeps 4f18b48a57 +- Fixed password crash bug, found by \dev\NULL-Z-[Zap] 2001-11-15 15:13:13 +00:00
griever 6bb18c87e5 Removed the three lines of code (!!) that caused the SSL freeze-on-connect
bug, gonna fix that error handling.
2001-11-14 20:28:13 +00:00
griever ca70706ad6 <----- Head coder 2001-11-14 20:16:49 +00:00
codemastr f6a3b1f399 Fixed the last of the font and editor-cutting-text bugs (hopefully) 2001-11-13 22:21:48 +00:00
codemastr 1a1a4ebd65 Fixed a codemastr(TM) drunk-coding win32 bug 2001-11-13 19:38:15 +00:00
codemastr aed84e3bf0 Win32 editor changes 2001-11-13 00:40:19 +00:00
codemastr 706c911fc3 Win32 GUI changes 2001-11-11 21:14:02 +00:00
codemastr 621793b491 ... 2001-11-11 00:36:24 +00:00
codemastr 0693a8dd27 Added the ability to edit tld {} files from the win32 editor 2001-11-11 00:34:24 +00:00
codemastr 5e14382326 Added hscroll to the win32 editor if it is needed 2001-11-10 23:45:31 +00:00
codemastr 4b8042603a Fixed a win32 bug where pasting text into the editor would use the wrong font 2001-11-10 20:55:11 +00:00
codemastr ab9db56291 Added support for PS_STRINGS and pstat 2001-11-10 18:13:05 +00:00
codemastr 2a595d3a87 ./unreal updates 2001-11-10 17:37:08 +00:00
codemastr 670c9ee653 Made the /kline hostmask checker work like the G:line checker, (it was too easy to K:line *@*) 2001-11-09 22:17:24 +00:00
codemastr c83f79a44a Fixed a bug that made the G:line host checker ignore ? 2001-11-09 19:32:03 +00:00
stskeeps e2ef04d112 +- VERSION M_SERVER fix by skold
+- Fixed connecting with IPv6
+- Ident requests now orgin with the listener that the user connected on
+- More IPv6 fixes, DNS resolving actually works now too.. (crackhead IRCnet
+  coding)
+- Webserver caching fix
2001-11-08 16:40:34 +00:00
codemastr 327f15d17c Fixed a win32 typo 2001-11-07 21:35:11 +00:00
stskeeps 0b01bc3852 Linux IPv6 Fixes 2001-11-07 13:48:42 +00:00
stskeeps 2c6726c95d .. 2001-11-07 13:29:06 +00:00
stskeeps 053cbcaae4 gr 2001-11-07 13:27:49 +00:00
stskeeps f8756691a5 . 2001-11-07 13:26:37 +00:00
stskeeps 2a55293bcc , 2001-11-07 13:25:54 +00:00
codemastr 2d21f6055d Added aliases/auspice.conf, and added a /register command to aliases/aliases.conf 2001-11-05 22:02:22 +00:00
codemastr afebe1568a Changed the setproctitle check to also check in -lutil (some OSes have it there) 2001-11-05 21:38:27 +00:00
stskeeps be48165fb6 +- Added some setproctitle(.., me.name) for extra l33tness :P~ 2001-11-05 21:30:23 +00:00
codemastr b960288402 Added autoconf check for setproctitle 2001-11-05 21:26:50 +00:00
codemastr cad8d53264 - Made ./unreal generated by configure to make sure it has the correct path of the exe 2001-11-05 20:47:39 +00:00
stskeeps 44a48a2dc0 +- IPv6 fixes for IP_OPTIONS (disables under IPv6, i mean .. IRC multicast.
+  WTF?)
2001-11-05 15:06:13 +00:00
stskeeps cca85ebe57 +- IPv6 fixes to make dual ipv4/ipv6 work 2001-11-05 14:33:18 +00:00
stskeeps 8e2cc100ce +- IPv6 fixes to Inet_si2p & Inet_si2pB 2001-11-05 14:11:36 +00:00
codemastr d11cc14a12 Fixed a bug where the win32 help dialog links were plain text 2001-11-05 00:07:10 +00:00
codemastr 29b7ea7ee8 Added make install and ./unreal utility 2001-11-04 22:09:30 +00:00
codemastr 9c49d0d3b1 ... 2001-11-04 20:12:38 +00:00
codemastr 8382e074e1 Fixed a win32 bug where the editor would cut off text 2001-11-04 17:55:10 +00:00
codemastr 49cf99c68a Updated module dependancies to allow a module to load the module containing the symbol 2001-11-01 20:57:19 +00:00
codemastr a5e31d042d Fixed a typo in makenet 2001-10-29 21:29:44 +00:00
codemastr 56fee9b881 Made some nameser.h changes to work win win32 2001-10-28 16:47:07 +00:00
cvs2hg a5d191e5ac fixup commit for tag 'unreal3_2_beta4' 2001-10-28 16:18:49 +00:00
stskeeps b9d034d6bd +- Preperation for beta4 2001-10-28 16:18:48 +00:00
stskeeps 9a97f7e249 +- Made the missing commands error a little more.. tardfriendly 2001-10-28 16:11:47 +00:00
codemastr d537da4058 Fixed a snomask bug found by Rob 2001-10-28 15:55:31 +00:00
stskeeps 58d81ad35f +- Fixed a DEBUGMODE problem with umodes.c 2001-10-27 13:18:49 +00:00
codemastr 6e17ab11f1 Fixed a nickserv password bug found and fixed by Mathieu 2001-10-23 21:25:34 +00:00
codemastr 0f2be18a1f Added M_RESETIDLE to fix a /privmsg bug 2001-10-17 20:04:23 +00:00
codemastr 22d5b9bee8 Changed the size of umodestring 2001-10-16 19:06:07 +00:00
stskeeps 6b10bee66d +- Made umode_delete(flag, mode); 2001-10-16 17:09:51 +00:00
codemastr 493697bbdf Added new umode system to the win32 makefile 2001-10-16 00:03:01 +00:00
stskeeps 66d3c85d23 +- Added umodes.c, long val = get_umode('c'); 2001-10-15 23:01:31 +00:00
stskeeps 3f9849b5fd +- Added a hell lot of DNS debugging code, and fixed the BIGENDIAN problem
+  with resolver. Thanks to dawn and Trash.net for shell on a sparc
2001-10-14 21:54:25 +00:00
codemastr 85ce15ddf7 Added a utility to auto create version.c for win32. 2001-10-14 19:49:48 +00:00
codemastr 7a9b14634b Removed tokens for /users, /summon, and /samode 2001-10-13 23:19:40 +00:00
codemastr 6b9b8a6da9 Fixed the Win32 Z:line bug 2001-10-13 19:32:05 +00:00
codemastr 7193f9615f Hopefully fixed the weird Z:line bug on win32? 2001-10-13 17:05:18 +00:00
codemastr e516af9535 Fixed a win32 bug where the http scanner didn't get loaded 2001-10-13 16:48:23 +00:00
stskeeps 9fc7398b87 +- Fixed codemastr-on-crack bug regarding oflag 2001-10-11 16:53:52 +00:00
cvs2hg 4e2a05f99a fixup commit for tag 'unreal3_2_beta3' 2001-10-08 17:29:47 +00:00
stskeeps 8b6e1d7166 Bugreport stuff 2001-10-08 17:29:46 +00:00
codemastr 19c8f1b7dc Final changes to prepare for beta3 2001-10-08 17:24:56 +00:00
codemastr 74d080b3fc Fixed a typo in config.h 2001-10-08 17:11:16 +00:00
codemastr 6bad7c8dfa Added headers to all the new modules 2001-10-08 17:06:32 +00:00
codemastr a274714cfa Made changes so the new modules compile on win32 2001-10-07 21:54:14 +00:00
stskeeps 79b4805745 +- Added in Fish's patches
+- Added bitching when you lack needed IRC commands
+- Removed REMGLINE
2001-10-07 20:28:15 +00:00
codemastr a05ec38409 updated makefile.win32 with all the new modules 2001-10-07 16:50:08 +00:00
stskeeps f9a92827ae +- Fixed a /who bug, found by IXpfah 2001-10-07 10:28:06 +00:00
stskeeps 2ac54ecc8b *** empty log message *** 2001-10-07 08:56:11 +00:00
codemastr f331b6919e Added aliases/ which contains aliases for popular services, and made makeconf load scan_http.so 2001-10-07 00:07:24 +00:00
codemastr 8bfbd374c3 Added some stuff that should fix the bug in Windows when including files in other directories 2001-10-05 23:21:04 +00:00
codemastr 3c9327788e Fixed a bug where /userhost would report oper status regardless of +H 2001-10-05 20:02:29 +00:00
codemastr 029c43afd1 Made the http scanner work on win32 2001-10-02 22:01:39 +00:00
codemastr 3b5b9db44f Fixed a win32 bug in scan.c 2001-10-02 21:52:02 +00:00
codemastr d24030d129 Made some changes to allow Unreal to compile on win32 2001-10-01 19:53:13 +00:00
stskeeps 3c633f425b +- Made port default to 6667 when options autoconnect in link {} 2001-10-01 13:24:11 +00:00
stskeeps 0d1a1e42d0 .. 2001-10-01 13:08:35 +00:00
stskeeps b571a80006 +- Made Link denied error a little more descriptive 2001-09-27 14:42:48 +00:00
stskeeps e38b645d11 . 2001-09-17 13:17:36 +00:00
stskeeps 8d3f493976 +- Fixed a #undef INET6 bug 2001-09-17 12:59:42 +00:00
stskeeps 1e438f3560 + fixing a IPv6 bug
+- Made Inet_si2p (sin to presensation), fixing the "*", bug, some debugging
+  fixes, fixed a lot of IPv6 bugs, hopefully - thanks to JK for borrowing
+  his box
2001-09-09 20:09:59 +00:00
stskeeps ee9f9d9af0 +- Removed bsd.c and made socket.c, moving signal stuff to ircd.c, possible
+  fixing a IPv6 bug
2001-09-09 09:43:56 +00:00
stskeeps a19ea15bd6 +- Fixed a IPv6 bindip problem 2001-09-07 12:22:31 +00:00
stskeeps 4ece596b39 +- Some more VFS/PHTML fixes, it actually works now, thanks to butter 2001-09-06 16:24:07 +00:00
stskeeps 09c6afc43e +- modulize documentation, some web server fixes, preparation for uabr 2001-09-06 13:54:31 +00:00
codemastr 5c86649f70 win32 makefile changes 2001-09-02 23:58:09 +00:00
codemastr 82ae1cbf63 Moved /svso and /svsnick to modules 2001-09-02 23:39:16 +00:00
codemastr 6a7e82d048 Made the config file a bit more sturdy 2001-09-02 20:16:10 +00:00
codemastr 3a815c775f Fixed a typo in the win32 makefile 2001-09-02 17:05:40 +00:00
codemastr 87b4e4e268 Updated updconf.c to use except scan 2001-09-02 16:21:38 +00:00
stskeeps 43e77f77bf +- HTTPd VFS fixes 2001-09-01 14:33:07 +00:00
stskeeps 614e22400a +- Made except socks become except scan, and made it actually WORK, and some
+  bugreport fixes
2001-09-01 13:27:17 +00:00
codemastr e04c12a2ea Win32 Cleanup 2001-08-31 21:23:11 +00:00
codemastr e4eec40d91 Removed some missed win32 debug code 2001-08-30 23:40:53 +00:00
stskeeps 1e1e1cdbb6 +- Added a bug reporting tool (still alpha) 2001-08-29 20:05:02 +00:00
codemastr aa98a583be Added the ability to add aliases like /identify 2001-08-29 19:28:52 +00:00
codemastr 0385ce8152 Module additions 2001-08-24 22:17:26 +00:00
codemastr 5cd4cb01f8 Fixed a log::maxsize bug where it would screw up when the file didn't exist 2001-08-24 20:44:33 +00:00
codemastr 2386f8d835 log::maxsize now supports 1MB, etc 2001-08-24 00:58:20 +00:00
codemastr 37e54912c3 Fixed a possible /oper bug 2001-08-23 23:39:53 +00:00
codemastr e7695b3920 Fixed a oper host bug 2001-08-23 23:24:31 +00:00
codemastr d365f0d165 Cleaned up /oper a lot 2001-08-23 20:20:59 +00:00
codemastr d8ba78a6c1 Added a bunch more webtv support, send PRIVMSG instead of NOTICE if +V 2001-08-23 17:44:46 +00:00
codemastr 08caa076ed aClient memory cleanups 2001-08-22 20:02:19 +00:00
codemastr d26b59a9e2 Started work on usermode +V 2001-08-22 16:59:03 +00:00
stskeeps a8f79f88db +- Added support for nested comments in the configuration file (by chasm)
+- Added chasm to /info
2001-08-22 13:06:06 +00:00
codemastr d5b5fa710c Moved SHOWCONNECTINFO define to set::options::show-connect-info 2001-08-21 18:23:43 +00:00
codemastr f24eba8c0d Fixed another alias {} bug 2001-08-20 20:09:37 +00:00
codemastr 823e638f0c Moved FAILOPER_WARN define to set::options::fail-oper-warn 2001-08-20 19:08:59 +00:00
codemastr 461d65148b Added bahamut usermode +R 2001-08-20 16:29:37 +00:00
codemastr ceb76ae6da Fixed another alias {} bug 2001-08-19 22:36:13 +00:00
codemastr 85a0944914 Fixed a bug in alias {} found by RaYmAn 2001-08-19 22:02:26 +00:00
codemastr 9417c9af8e Added alias {} to doc/example.conf 2001-08-19 21:30:27 +00:00
stskeeps 816b24afa5 +- Fixed some credits, recoded httpd (still in progress)
+- Disabled #undef PROPER_CORE
2001-08-19 20:16:18 +00:00
codemastr e7a8ad621e Added config directive alias for dynamic services commands, ex /nickserv 2001-08-19 17:45:57 +00:00
codemastr 07c95cff3f /mode cleanups 2001-08-18 19:11:03 +00:00
codemastr f8697288ec Fixed up http proxy scan and added SOCKS5 scanner 2001-08-17 17:29:42 +00:00
codemastr effda4c445 Fixed a /gline crash bug 2001-08-17 16:26:44 +00:00
stskeeps 769a2e42e3 +- Added scan_http, scans on 80, 3128, 8080 in a threaded manner 2001-08-12 15:07:04 +00:00
stskeeps 27c1195bac +- Some httpd stuff and a #define CHROOTDIR problem found by Zhadum 2001-08-12 11:54:34 +00:00
codemastr ffdf227cbc Fixed a win32 bug that caused crashes in the editor 2001-08-08 21:13:33 +00:00
codemastr 145cc3f7d3 Fixed a win2000 bug causing a crash 2001-08-08 19:31:58 +00:00
codemastr 5b6c60798e Removed some win32 stuff 2001-08-08 16:04:22 +00:00
cvs2hg 4fc33756f4 fixup commit for tag 'unreal3_2_beta2' 2001-08-07 17:12:30 +00:00
stskeeps 8e4abdfd2a +- Preparation for beta2 2001-08-07 17:12:29 +00:00
stskeeps 4ee2331d5c .. 2001-08-07 17:10:17 +00:00
stskeeps 44443c260c +- /who fixes regarding +I +H and crap 2001-08-07 16:39:53 +00:00
codemastr 9c41b1d76d Fixed a bug where operflag eyes didn't work 2001-08-07 16:01:46 +00:00
stskeeps 041f0f910f +- /who fix
+- Another /who fix, what crashed it I assume - helped by narf to find this
2001-08-07 15:19:37 +00:00
stskeeps 0e2ac061b8 +- Fixed vhost bug that forgot to add a \0 in the end of the string
+- /who fix
\ No newline at end of file
2001-08-07 12:29:23 +00:00
codemastr f766d70414 Fixed a umode2 bug that crashed the server 2001-08-06 17:28:29 +00:00
stskeeps 8665f36abc +- Fixed a SNOMASK problem found by Arantis 2001-08-06 15:02:07 +00:00
stskeeps 62939b2033 +- /who fix .. removed nick matching functionality.. 2001-08-06 09:51:10 +00:00
stskeeps ec7b2bc247 *** empty log message *** 2001-08-06 09:20:43 +00:00
stskeeps b1714abad9 . 2001-08-06 07:24:49 +00:00
codemastr 74bad8673a release notes changes 2001-08-05 23:41:33 +00:00
stskeeps 667d52199d +- Using bahamut /who now, this needs some testing.. 2001-08-05 23:38:17 +00:00
codemastr 409f1a95ab Fixed a major snomask bug found by narf 2001-08-05 23:08:59 +00:00
stskeeps ce54560b19 +- Docs prepare 2001-08-05 17:50:38 +00:00
codemastr 21d6293f4c Updated documentation 2001-08-05 17:37:28 +00:00
codemastr fb4525ab19 Fixed an oper-only-stats bug 2001-08-05 17:24:12 +00:00
stskeeps c64debf500 +- Fixed bug with SSL, detected properly and fixed by Chawmp 2001-08-05 16:43:13 +00:00
codemastr 871948d23a Added config check to determine the order to specify the ssl libraries 2001-08-04 18:28:37 +00:00
codemastr 90d9c1df8c Implimented snomask 2001-08-04 17:17:54 +00:00
stskeeps e158540a37 +- Fixed some more IPv6 stuff in httpd 2001-08-04 14:01:46 +00:00
stskeeps decae969ee +- Fixed a codemastr-on-crack /version bug, and fixed some IPv6 stuff in
+  scan*
2001-08-04 13:52:04 +00:00
codemastr bdeda461ed Added log::maxsize 2001-08-03 17:10:40 +00:00
stskeeps 9e3151a79e . 2001-08-03 14:24:49 +00:00
stskeeps d8eb70490a +- Fixed Osiris's example.conf
+- Fixed IPv6 bindip error found by Madkiss
2001-08-03 13:05:06 +00:00
stskeeps 9a089dd8bf . 2001-08-03 06:09:11 +00:00
stskeeps 3b4fe7b347 . 2001-08-03 06:06:53 +00:00
stskeeps a4c2faf453 +- Fixed Osiris's broken example.conf 2001-08-03 06:06:16 +00:00
codemastr c1edf8265f Fixed a win32 bug where /restart didn't remove the tray icon 2001-08-02 20:11:58 +00:00
codemastr 87296d9c89 Fixed some typos in s_conf.c 2001-08-02 19:46:14 +00:00
codemastr a6d3abb12f fixed some config stuff and added more network files 2001-08-02 00:36:35 +00:00
stskeeps 7ce43de8f7 +- Fixed bindip problem with it not being made 2001-08-01 19:53:53 +00:00
codemastr 739139d71e Fixed some config issues and added /stats r to stats help 2001-08-01 19:42:38 +00:00
codemastr 8c39ccec5e made the config recognize several values for a yes/no option 2001-08-01 18:06:34 +00:00
codemastr 082c2bfb1c Added set::anti-spam-quit-message-time idea from hybrid7 2001-08-01 17:01:59 +00:00
codemastr 1af13d4588 added set::oper-only-stats 2001-08-01 00:22:13 +00:00
codemastr 30039008df Removed some obsolete code 2001-07-31 21:29:32 +00:00
codemastr a2e17ca2fe Made the Win32 version report the actual OS to opers in /version rather than just say 'Win32' 2001-07-31 21:09:56 +00:00
stskeeps ff8bc65911 +- Fixed fence post marker overwrite in /vhost, found and fixed by tgf 2001-07-31 21:07:27 +00:00
codemastr 943436a1de Rewrote Addit, hopefully it fixes the SJOIN problems? 2001-07-31 17:39:41 +00:00
codemastr 64962b0ce7 Fixed a typo in the win32 makefile 2001-07-31 17:07:35 +00:00
codemastr e1167a2b2e Various win32 fixes and /restart cleanup 2001-07-31 17:00:45 +00:00
codemastr b0536af4e9 Fixed a possible restart/die bug 2001-07-31 16:37:11 +00:00
codemastr af87d2c18b Added more network files 2001-07-30 16:52:30 +00:00
stskeeps 5067013a80 +- Added tgf's patches for these bugs:
+   * if you dont have a rules file and do "rehash -motd" then the server
+   segfaults.
+   * setgid has to be called before setuid... cos if you change to a non-priv
+      uid first then you are not allowed to setgid!
+
+
2001-07-30 16:50:46 +00:00
stskeeps d7baf33ec3 +- Fixed SVSMODE compile error 2001-07-30 13:04:48 +00:00
codemastr e3a23bdbd1 Added SVSMODE # -e 2001-07-29 22:07:54 +00:00
codemastr ed9ead415c Added wildcard support to include and loadmodule in win32 2001-07-29 21:10:43 +00:00
codemastr 664f148366 Fixed a bug affecting /oper and /vhost caused by IP checking 2001-07-29 16:33:14 +00:00
codemastr 9861da3f1e added more network files 2001-07-28 17:40:53 +00:00
stskeeps 3d8f9eea24 +- Fixed SQLINE bug, FINALLY. (forgot to set type ..oops..) 2001-07-28 17:32:19 +00:00
codemastr 16d16095c7 Added 2 more network files 2001-07-28 01:03:27 +00:00
codemastr 9317a83683 Made a bunch of config errors non fatal 2001-07-28 00:51:35 +00:00
codemastr 7a5cd21953 SVSMODE # flags added 2001-07-27 20:45:39 +00:00
codemastr ae2b0cdf8b Added SVSMODE #channel -b nick to remove matching bans 2001-07-27 17:28:54 +00:00
codemastr d4af2c0207 Made my_itoa use _itoa on win32 2001-07-26 16:23:14 +00:00
codemastr 887f71760c Win32 code cleanup 2001-07-25 16:42:19 +00:00
stskeeps 682d1f26f8 . 2001-07-25 14:35:20 +00:00
codemastr bd3d626cdb network file updates 2001-07-25 00:26:50 +00:00
stskeeps 72512f54db +- More SQLINE fixes.. does it work now? 2001-07-24 22:13:33 +00:00
stskeeps 5132528ca4 sqline 2001-07-24 17:11:59 +00:00
stskeeps 96b14ad6c5 +- Fixed SQLINE problem 2001-07-24 16:58:56 +00:00
codemastr 2ca9d3d6d7 Removed all the obsolete network files 2001-07-23 20:54:41 +00:00
stskeeps b919813837 +- Made CR compatilbity actually work, it autojoins now :) 2001-07-23 18:19:52 +00:00
codemastr ce8eec12ab Fixed a /rehash -motd bug 2001-07-22 16:02:01 +00:00
codemastr c50086fc3c Fixed a scan_socks bug under win32 2001-07-21 16:04:37 +00:00
codemastr 1686954b28 Fixed a win32 bug dealing with the new RTF parser 2001-07-20 21:10:31 +00:00
codemastr aeb3aad5fe added a 3d edge to the color selector in win32 2001-07-20 17:29:37 +00:00
stskeeps 6e98479aae . 2001-07-20 16:37:23 +00:00
stskeeps 9d88337a9b scan_socks stuff 2001-07-20 16:33:53 +00:00
codemastr 37f97c5b49 Fixed a bug in the win32 status dialog 2001-07-20 16:31:23 +00:00
stskeeps 699f22a0fb . 2001-07-20 16:26:34 +00:00
codemastr 023032c213 Fixed a bug in the new editor 2001-07-19 21:25:57 +00:00
codemastr c0bb81d1ca Major changes to the win32 editor 2001-07-19 17:37:58 +00:00
stskeeps e102ce8603 +- Added in Ossie's example.conf v2 2001-07-18 07:57:33 +00:00
stskeeps 4756c12519 +- Patched in zogg's scan_socks patch, second edition 2001-07-18 05:34:46 +00:00
stskeeps fa37709af6 +- Added correct uptime to web interface 2001-07-17 21:37:47 +00:00
stskeeps ae4eb55dac +- Fixed some flaws in httpd, that made it break unmercifully 2001-07-17 21:20:42 +00:00
stskeeps 8d0bcef963 +- Minor bugfix in scan_socks, + some comments 2001-07-17 08:45:08 +00:00
codemastr a424c8063a Fixed a /sapart bug 2001-07-16 20:34:54 +00:00
codemastr 7b515e04a5 Added a patch by Zogg to fix a socks scanner problem 2001-07-16 20:24:14 +00:00
codemastr c5c3b2081d made options to make /stats K and /stats G oper only 2001-07-16 18:03:59 +00:00
codemastr 9378291b21 ... 2001-07-16 17:53:00 +00:00
codemastr acf66442e8 Various bug fixes 2001-07-16 17:51:18 +00:00
stskeeps c4d4754511 +- Fixed possible bug with allowing :'s in +k/+L ..
+- Added a credit
2001-07-16 07:41:35 +00:00
codemastr 3fa29a16e5 Various fixes 2001-07-16 00:59:34 +00:00
stskeeps 9406e963de . 2001-07-15 20:51:57 +00:00
codemastr 26f91d1c7e Some gcc 3.0 fixes and other stuff 2001-07-15 20:43:50 +00:00
stskeeps 83c0a3738d +- Fixed struct IN_ADDR problems on some OS'es 2001-07-15 18:40:13 +00:00
stskeeps 5393853cac +- Fixed -nexus.nexusirc.org- *** Notice -- Trying to send [:Alzirr WALLOPS
+  :test bug, found by Alzirr
2001-07-15 18:38:07 +00:00
stskeeps 43b56373c4 +- Fixed *** nick has quit (no Days come, days go), by defaulting to "Quit: " 2001-07-15 18:32:02 +00:00
stskeeps e6df04d821 +- Fixed some CHINESE_NICK stuff 2001-07-15 18:23:45 +00:00
stskeeps 1b285c492f *** empty log message *** 2001-07-15 17:49:53 +00:00
codemastr 202a064904 ... 2001-07-15 17:18:35 +00:00
codemastr 42cbdce0bd Few little bug fixes 2001-07-15 17:13:56 +00:00
stskeeps 52dbb6c0dc . 2001-07-15 10:27:35 +00:00
stskeeps c53bee2244 +- Commited the web server prototype made by Stskeeps, web design by WildChild
+- Ripped out the old DF watch system, using bahamut's now
2001-07-15 10:25:59 +00:00
stskeeps a4b63af2e1 +- Commited the web server prototype made by Stskeeps, web design by WildChild 2001-07-14 21:04:16 +00:00
stskeeps 9b6a674d9c +- Various preparitions for beta1 2001-07-13 20:47:44 +00:00
stskeeps 748c2830c0 +- Changed version to -beta1 2001-07-13 19:55:02 +00:00
stskeeps b66d4a8b0d +- Documentation bug fix 2001-07-13 19:40:04 +00:00
stskeeps 8de27cef2a +- Documentation (example.conf from Osiris) 2001-07-13 19:32:28 +00:00
stskeeps 40f7f0b104 +- Removed the redefining stuff in s_conf.c 2001-07-13 17:18:30 +00:00
stskeeps c8c5ff9571 . 2001-07-13 12:39:21 +00:00
stskeeps ae3ac9012d . 2001-07-13 12:10:43 +00:00
stskeeps 7de9d2d6a6 ... 2001-07-13 11:42:40 +00:00
stskeeps 351a8b48ec . 2001-07-13 11:19:44 +00:00
stskeeps 29ad0e8ff0 +- Fixed u_intXX_t problem 2001-07-13 10:59:15 +00:00
stskeeps 3c7ce7454d +- Fixed some possible points of confusion with hash.c regarding unsigned int
+  & signed int
2001-07-13 08:38:14 +00:00
stskeeps 519a8f893e +- Fixed problem with MAXCONNECTIONS when no parameters given in ./configure 2001-07-12 22:36:19 +00:00
stskeeps ce66aaad96 +- Fixed a validate_conf problem found by Janos
+- Fixed some minor invalid numeric stuff
2001-07-12 18:11:25 +00:00
codemastr 1b5e8d03c2 Fixed a ban bug where temp bans were not cleared on rehash 2001-07-12 17:20:23 +00:00
stskeeps dc1a1f4be0 +- Minor SJOIN fix .. 2001-07-10 11:14:12 +00:00
stskeeps c6e8b4b28b +- Added possiblity to add parameters to configure in Config 2001-07-10 09:52:44 +00:00
stskeeps 510a8fb9c2 . 2001-07-09 22:36:20 +00:00
stskeeps bd1a3ecf55 . 2001-07-09 22:36:19 +00:00
stskeeps 463aa1532c . 2001-07-09 22:34:02 +00:00
stskeeps 962be3514c . 2001-07-09 22:30:12 +00:00
stskeeps ab60bb826c . 2001-07-09 22:08:39 +00:00
stskeeps fd558d0675 +- Some configure.in fixes to pthread stuff 2001-07-09 21:18:10 +00:00
stskeeps 409d1f248a . 2001-07-08 20:23:21 +00:00
stskeeps 295a4468f7 +- Made badword fix found by eternal/Jsmj
+- Changed pthread process check to pthread_join on proposal and idea by
+  codemastr
2001-07-08 20:08:30 +00:00
stskeeps 6b9a544188 . 2001-07-08 16:24:41 +00:00
stskeeps 4d24208f23 *** empty log message *** 2001-07-08 16:19:01 +00:00
stskeeps 883d888620 . 2001-07-08 15:43:38 +00:00
stskeeps 9e0b621890 . 2001-07-08 14:55:33 +00:00
stskeeps 3bb6eb48bb +- Made badword fix found by eternal/Jsmj 2001-07-08 14:53:51 +00:00
stskeeps 137df47190 +- Fixed a documentation bug in unrealircd.conf.txt, made config_error
+  actually bitch when loop.ircd_booted
2001-07-07 08:12:21 +00:00
stskeeps c2d74a527a +- Fixed some rant stuff 2001-07-06 15:32:03 +00:00
stskeeps ad3de916c8 +- Fixed so we compile without symbols in win32 .. 2001-07-05 18:11:35 +00:00
codemastr 2a921e28a7 Fixed a little scan.so bug 2001-07-05 17:41:44 +00:00
stskeeps cfd4e898d8 . 2001-07-05 16:53:02 +00:00
stskeeps 41246edb24 - Made scan_socks & scan work under win32. Only bug is a \1 IP in /quote scan (?) 2001-07-05 16:36:14 +00:00
stskeeps 615936938b Made win32 work 2001-07-04 14:10:08 +00:00
codemastr dd7b98a4c2 Fixed an SVSFLINE bug when removing an unknown dccdeny 2001-07-03 22:10:26 +00:00
codemastr 55becdc356 various fixes 2001-07-03 21:38:37 +00:00
codemastr 80c9185de9 Updated m_template.c to use module version 2 2001-07-03 16:53:59 +00:00
stskeeps 33c6693da0 . 2001-07-03 14:39:25 +00:00
stskeeps 477df429d3 +- Made a /scan fix, and fixed some version numbers found by Morbid 2001-07-03 14:20:45 +00:00
codemastr 0a5b46f054 Win32 fixes 2001-07-02 22:47:00 +00:00
stskeeps 50d86c6013 *** empty log message *** 2001-07-02 20:36:19 +00:00
codemastr b22821ec55 Removed a bunch of unused code 2001-07-02 20:32:53 +00:00
codemastr f585e79a0b ... 2001-07-02 20:24:12 +00:00
stskeeps 8d2bbbab95 +- Fixed some IsToken / sendto_serv_butone screwups, actually think they're
+  codemastr(TM) coding
2001-07-02 19:17:53 +00:00
stskeeps 62a39b24d7 +- Minor cosmetic fixes, and SVSNLINE (ban realname).
+   SVSNLINE + reason_why_moo :realname mask - Add global ban realname
+    ('_' is converted into spaces)
+   SVSNLINE - :realname mask             - Remove global ban realname
+   SVSNLINE *                            - Wipes all global ban realname
+- Fixed FIXME dcc_deny_wipe_services
+
+
\ No newline at end of file
2001-07-02 18:31:42 +00:00
codemastr 29a0ae1871 removed a few missed userload.h references 2001-07-02 17:59:29 +00:00
codemastr f3e02b9ada Removed include/userload.h (not used) 2001-07-02 16:30:06 +00:00
codemastr 63b3220971 Updated the stats help list for newconf 2001-07-02 16:21:24 +00:00
stskeeps e9f47d1271 . 2001-07-02 09:17:50 +00:00
stskeeps d3aef18d3e . 2001-07-02 08:26:25 +00:00
stskeeps e01cf0f3f4 +- Random cosmetic fixes 2001-07-02 08:24:04 +00:00
codemastr 9f19792b95 fixed some misc rh7 warnings 2001-07-02 00:57:57 +00:00
stskeeps ad7a03644c +- /htm fix by Griever 2001-07-01 23:14:14 +00:00
stskeeps b3ec92858a *** empty log message *** 2001-07-01 22:34:31 +00:00
stskeeps 2fe7e4986f +- Some /info stuff, updated docs, .CHANGES.NEW, .RELEASENOTES 2001-07-01 22:32:44 +00:00
stskeeps af397fa6c2 . 2001-07-01 20:11:08 +00:00
codemastr c36797d8f1 Fixed a scan bug on rehash 2001-07-01 19:44:49 +00:00
stskeeps 514a1026eb +- Added some thread debugging, and fixed a SVS2MODE bug 2001-07-01 10:14:46 +00:00
stskeeps 189242d07c . 2001-06-30 16:26:22 +00:00
stskeeps e6fd53f363 . 2001-06-30 12:06:23 +00:00
stskeeps 5795f3c489 +- Fixed some minor mod_load troubles, and made it go a little more sensible
+  regarding retarded rehashes
2001-06-29 23:28:18 +00:00
codemastr 0053fe0b8a Made a minor message change to ./Setup 2001-06-29 21:47:35 +00:00
codemastr e959419e4a Rewrote updconf to actually work 2001-06-29 21:44:06 +00:00
stskeeps 52fd41449e - Fixed a pthread_join 2001-06-29 18:44:29 +00:00
codemastr 6d3b664922 Updated thread porting code to support more functions 2001-06-29 18:38:11 +00:00
stskeeps 5357d536a1 +- Moved blackhole into scan.c and removed blackhole.c, and fixed some
+  blackhole bugs.
2001-06-29 18:37:33 +00:00
codemastr 89ac1c8723 fixed a module bug 2001-06-29 15:02:54 +00:00
codemastr 09e4767c45 module changes 2001-06-29 14:57:21 +00:00
codemastr c2e3552039 Made unreal call all the mod_unload's when it shuts down 2001-06-29 14:03:16 +00:00
stskeeps f2bd92c9ad +- Made version.c depend on ../Changes 2001-06-29 09:48:05 +00:00
stskeeps de306fc395 +- Commited the +k fix to +L 2001-06-29 09:04:40 +00:00
stskeeps 7680ec834a -- Made glob() use GLOB_LIMIT on OpenBSD 2.9 to help prevent a DoS
+- Fixed autoconf/Makefile screwup caused by codemastr
+- Fixed a problem with IPv6 always enabled (could you check this fix, code?)
 - Fixed a bug allowing channek keys to have spaces
 - Cleaned up some thread porting code
 - Added a new versioning system to allow easy tracking of bugs
+- Made glob() use GLOB_LIMIT on OpenBSD 2.9 to help prevent a DoS
 - Fixed makeconf
+- Changed the way modules work. We're now at MOD_VERSION 2
+- Changed ALL MODULES to version 2
2001-06-28 20:30:54 +00:00
codemastr a499f98271 fixed makeconf 2001-06-27 21:40:59 +00:00
codemastr dfb1942aba added a new versioning system to help track bugs 2001-06-27 20:53:47 +00:00
codemastr 91c6e584e6 cleaned up some thread porting code a bit 2001-06-27 17:16:39 +00:00
codemastr 794500dbc5 Fixed a bug allowing channel keys to have spaces 2001-06-27 15:44:52 +00:00
codemastr 2c9232113e Made glob() used GLOB_LIMIT on OpenBSD 2.9 to try and stop DoSing 2001-06-27 15:38:10 +00:00
codemastr d276e9a197 added IPv6 support to ./Config 2001-06-27 00:35:42 +00:00
codemastr 16e06cb6a0 Added the ability to use file globs in loadmodule and include 2001-06-26 23:45:56 +00:00
codemastr e03c23820a added configure check for glob.h 2001-06-26 23:44:59 +00:00
codemastr 95d1575c54 removed some remnants of umode +b 2001-06-26 19:57:49 +00:00
codemastr 2fe33658f3 cleaned up mod_depend a bit to look nicer 2001-06-26 17:08:54 +00:00
stskeeps 724f829a0e +- Added in Griever's SJOIN fix 2001-06-26 09:27:44 +00:00
stskeeps 0246583fe1 +- Added mod_depend checking, see scan_socks.c for example 2001-06-25 23:34:15 +00:00
codemastr e604a72114 Fixed /stats to work fully with newconf 2001-06-25 20:13:37 +00:00
codemastr 740084b6d9 Fixed a bug where configure would pick both -ldescrypt and -lcrypt 2001-06-25 19:58:21 +00:00
codemastr df21d67573 moved swhois and svsmotd to modules 2001-06-24 21:03:08 +00:00
codemastr a3e375745c moved svsmode and svs2mode to m_svsmode.so 2001-06-24 20:36:05 +00:00
codemastr d30a4f619c Added a little utility to make converting an m_* command to a module easier 2001-06-24 19:55:35 +00:00
codemastr 3b0d162573 too lazy to write a real message 2001-06-24 19:40:56 +00:00
codemastr 3aa24503f5 Fixed a rehash bug dealing with stderr 2001-06-24 17:12:31 +00:00
codemastr 3e656cf43e ... 2001-06-23 20:14:46 +00:00
codemastr 793a447df1 ... 2001-06-23 20:14:45 +00:00
codemastr c88e6392c0 ... 2001-06-23 20:12:37 +00:00
codemastr 412b6fdec3 ... 2001-06-23 20:10:42 +00:00
codemastr 9952f21f5b Made Unreal use FSU Pthreads if the system has 'broken' pthreads 2001-06-23 20:08:16 +00:00
stskeeps 2f9a35ed6f +- Some more INET6 fixes 2001-06-23 13:57:14 +00:00
stskeeps 6eb059436b +- Taking some more Config changes 2001-06-22 22:10:27 +00:00
stskeeps c85f59cfe3 . 2001-06-22 21:51:44 +00:00
stskeeps 432f632839 . 2001-06-22 21:46:05 +00:00
stskeeps d2ea4937ed blah 2001-06-22 21:43:37 +00:00
stskeeps 6cf10d76c9 . 2001-06-22 21:33:01 +00:00
stskeeps 323f7f67be +- Fixed a configure.in error with IRCDLOBS 2001-06-22 21:29:01 +00:00
stskeeps 776fa42cf7 +- Some more more configure.in fixes, regarding -export-dynamic, and buffer
+  pools, and some illegal if test $var = othervar
2001-06-22 21:10:13 +00:00
stskeeps 12eabdba06 +- Some more configure.in fixes, and made ./Config -q & -quick (do not ask
+  questions, just run with data in config.settings)
2001-06-22 20:53:00 +00:00
stskeeps 266b0bb33f +- Moved config/ to autoconf/
+- Some fixes to configure.in that seemly got deleted?
2001-06-22 18:10:26 +00:00
stskeeps 432b8296f4 +- Moved config/ to autoconf/ 2001-06-22 17:17:11 +00:00
stskeeps 82f62f84be OpenBSD bug fixes 2001-06-21 21:02:12 +00:00
codemastr 5ceda9a5ac *** empty log message *** 2001-06-20 17:48:03 +00:00
codemastr 7f62aab7d3 Fixed a few configure problems with sunos and amiga 2001-06-20 16:55:35 +00:00
codemastr cc4596cf7e Fixed the keywalk bug reported by BaTmAn 2001-06-19 16:15:43 +00:00
stskeeps d269e1a8a1 +- Made CRYPTOIRCD get cached in config.cache
+- Fixed generation of certs, moved from configure.in to Config
+- Fixed lack of -lssl
2001-06-19 16:09:48 +00:00
codemastr a46aa2a4bb Config changes 2001-06-19 15:46:24 +00:00
stskeeps 5b7168d1e1 +- Minor fixes to Config, a license, etc 2001-06-19 15:26:08 +00:00
codemastr 82c52cb2a9 rewrote Config to be more of an interface than a standalone config utility 2001-06-19 01:03:21 +00:00
codemastr de215877c1 fixed a typo in configure 2001-06-19 00:28:38 +00:00
stskeeps ee1c51020b +- Config fixes, settings.h and Makefile.dist are now dead. RIP. 2001-06-18 20:55:48 +00:00
codemastr f40ec73cbb ... 2001-06-18 20:21:57 +00:00
codemastr aa5ee8b79f added ./configure (autoconf generated configure script 2001-06-18 17:19:35 +00:00
codemastr e28fe9d777 Added numeric 005 NETWORK= token support 2001-06-17 17:03:13 +00:00
stskeeps 00ed3759bb +- Fixed some scan-socks and blackhole fuckups 2001-06-17 17:02:09 +00:00
codemastr ca95bdbbed Fixed a quarantine bug(?) 2001-06-16 15:18:44 +00:00
stskeeps 63170bd946 +- Removed the old SOCKS check code. 2001-06-16 10:36:08 +00:00
stskeeps 0abf279a66 +- Fixed a codemastr screwup in quarantine code 2001-06-15 21:06:10 +00:00
stskeeps a0538911d4 \ No newline at end of file
+- Made blackhole.so work
+- Fixed a set_non_blocking bug
2001-06-14 15:31:42 +00:00
stskeeps 901bcc8a41 +- Made blackhole.so work 2001-06-13 14:13:32 +00:00
codemastr fe9735bd4e Added link::options::quarantine 2001-06-11 15:21:08 +00:00
codemastr 3196657cd4 removed agent.c updated win32 makefile 2001-06-11 14:44:13 +00:00
codemastr b18a357202 rm 2001-06-11 14:43:54 +00:00
codemastr 49030ee0dd Added hook HOOKTYPE_PRE_LOCAL_CONNECT 2001-06-11 14:39:08 +00:00
codemastr f5fa79afac added numeric 105 in /version 2001-06-11 14:18:40 +00:00
stskeeps 78520f8cd0 +- Fixed double dependicies bug.. stupid dlsym 2001-06-10 21:57:39 +00:00
codemastr 8db346ed62 Added some pthread checking support 2001-06-10 20:43:47 +00:00
stskeeps 29b19f988b +- Minor src/Makefile screwup fix 2001-06-10 20:42:38 +00:00
codemastr 8e4f620f7d Allowed capturing of unknown set {} variables by modules (conf_unknown_set) 2001-06-10 20:24:23 +00:00
stskeeps 8f28d5f0d5 +- Fixed /quote sethost : and /quote setident : exploit, found by ac1d, fixed
+  by Griever
2001-06-10 19:50:24 +00:00
cvs2hg 2186d042ca fixup commit for tag 'unreal3_2_12june' 2001-06-09 19:56:22 +00:00
stskeeps 5dfe97a9c6 +- Fixed up scan_dummy.c 2001-06-09 19:56:21 +00:00
stskeeps 3aebacf774 +- Fixed some scan_socks problems - this needs a good hand with 2001-06-09 19:06:42 +00:00
codemastr 26a828bf41 Unknown ban * {}, except * {}, deny * {}, allow * {} are accessible to modules 2001-06-09 17:05:12 +00:00
stskeeps fecfd72417 +- Fixed problem with u_int32_t servicesstamps, with SVSMODE and SVS2MODE,
+  found by Andrew Church
\ No newline at end of file
2001-06-09 15:30:01 +00:00
codemastr d9941457ad Added hooks to allow you to add config blocks 2001-06-08 16:55:53 +00:00
codemastr 6ba33745e2 win32 thread change 2001-06-07 18:19:34 +00:00
codemastr e889beec33 Updated the win32 thread code (maybe it will work now?) 2001-06-07 17:43:32 +00:00
stskeeps d043dc3187 - Fixed codemastr's broken millitime patch (sys/timeb.h)
- Added scan_socks.c, added and moved some stuff to
  include/modules/scan.h (the dir too)
- Converted threads to IRC*Thread by codemastr.
2001-06-07 16:22:32 +00:00
codemastr 63a3ef308d Made match() a little bit faster 2001-06-06 20:05:16 +00:00
codemastr 870119644d Made militime() just as accurate on win32 as on linux 2001-06-05 21:10:21 +00:00
stskeeps 66235b4610 minor fix 2001-06-04 18:34:26 +00:00
codemastr a3b000358e ... 2001-06-04 18:31:14 +00:00
stskeeps ddcdba2e86 - Fixed bug with changing nicks 2001-06-04 11:45:46 +00:00
stskeeps ad0e3539da - Changed how hooks work, making them support voidfuncs
- Added src/modules/scan.c and src/modules/scan_dummy.c
2001-06-04 10:17:16 +00:00
codemastr 66638d66c4 ... 2001-06-03 23:05:33 +00:00
codemastr 5e482c1059 ... 2001-06-03 23:01:24 +00:00
codemastr 740eac2273 fixed a win32 bug 2001-06-03 22:46:31 +00:00
codemastr 595f52c11c made Unreal reload its tray icon if explorer restarts 2001-06-03 15:13:03 +00:00
codemastr 4ba5ad7885 fixed a /stats c = crash bug 2001-06-01 22:49:32 +00:00
codemastr 40f3c69ed5 Made Unreal run correctly on OpenBSD 2001-05-28 14:49:48 +00:00
codemastr b872ad1912 Made a popup menu for the tray icon to contain the same 'buttons' as the GUI does 2001-05-27 20:04:34 +00:00
stskeeps 0b46646765 - Fixed /whois problem, maybe introduced some others?
- Removed send_out_svsmode, not in use and broken too
- Made Config say Unreal3.2
2001-05-27 19:56:19 +00:00
stskeeps 7cd4856373 +- Made newconf state unknown directives (found by Madkiss)
+- Small s_socks.c bugfix possible causing indetectable socks
2001-05-27 13:11:58 +00:00
stskeeps 68eb489f36 +- Made validate_configuration check for !conf_listen 2001-05-27 10:02:31 +00:00
stskeeps bacf06d3eb +- Merged McSkaf's hostname patch, debug patch, s_misc patch 2001-05-26 19:27:14 +00:00
stskeeps 886549cf13 - Made slot arrangement be different. 2001-05-26 18:08:38 +00:00
codemastr 97a11dbea9 Made the Status Dialog update its values every 5 seconds 2001-05-26 15:55:08 +00:00
codemastr b8b748a940 Added McSkaf's rehash patch 2001-05-26 15:40:09 +00:00
codemastr 5b66562e97 updated win32 makefile 2001-05-26 15:05:44 +00:00
stskeeps 57bee58436 +- Made possible speedup of fdlist checking in s_bsd.c 2001-05-26 13:19:48 +00:00
stskeeps 52cd1f5d03 +- Added some numeric checking in m_server* 2001-05-26 08:23:38 +00:00
stskeeps 08f25ead4e - Possible fixed fdlist problem with default_fdlist 2001-05-26 08:03:58 +00:00
codemastr 4a81ab873d Commited McSkaf's tab patch for win32 2001-05-25 21:18:56 +00:00
stskeeps 37f47c0980 +- Fixed minor socksfd problem in read_message
+- Fixed identd problem
2001-05-25 17:08:26 +00:00
stskeeps dd8b77b9ec - Fixed problem with addto_fdlist(cptr->fd) caused by slotpatch 2001-05-25 16:30:35 +00:00
codemastr 35655afdea minor win32 bug fix 2001-05-24 21:04:21 +00:00
stskeeps 2cf513ae54 +- Fixed listener problem, reported by McSkaf 2001-05-24 19:52:44 +00:00
stskeeps f8f8d25f59 possible listener problem..? 2001-05-24 19:49:54 +00:00
stskeeps 7b9c24590a . 2001-05-24 17:53:01 +00:00
stskeeps 23609410e1 Fixed a problem with slots and /trace 2001-05-24 17:52:04 +00:00
stskeeps 737f07a9fe fixed problem with Debugmode unde win32 2001-05-24 16:06:29 +00:00
stskeeps ffe3bb5cba . 2001-05-24 15:57:04 +00:00
stskeeps b2dbb8d42e winlocal stuff 2001-05-24 15:56:24 +00:00
stskeeps a7f0efe61f +- More winlocal fixes, and a +f bugfix 2001-05-24 15:17:28 +00:00
codemastr d46957d5d6 color rtf patch 2001-05-20 16:25:36 +00:00
stskeeps f74c738cdf . 2001-05-20 15:57:43 +00:00
stskeeps 4cc7b2eb68 winlocalpatches 2001-05-20 08:02:09 +00:00
stskeeps 9b85197ec2 . 2001-05-19 20:41:06 +00:00
stskeeps ab3adfc4ce - Made /die not show admins IP (fixed by Stskeeps after his users nuked him..) 2001-05-19 19:57:52 +00:00
stskeeps 767acc2d61 . 2001-05-19 16:38:13 +00:00
stskeeps 4481b8565e . 2001-05-19 09:46:45 +00:00
stskeeps 581ecab7f8 . 2001-05-19 07:46:37 +00:00
stskeeps b3a6a5d8bc . 2001-05-19 06:28:23 +00:00
stskeeps c5c6be51ce +- Applied McSkaf's winlocal patch II, only changed Debug() and removed
+  DEBUGMODE from config.h. Still cores, but we might be closer to a
+  solution. Broken code, do not use devel right now
2001-05-17 18:44:04 +00:00
stskeeps 39844754a5 .
K
2001-05-17 16:58:06 +00:00
stskeeps 0ce4be7780 . 2001-05-16 19:29:53 +00:00
stskeeps e72d0ff6a5 no message 2001-05-16 19:02:54 +00:00
stskeeps 9d9b27fbcb - Fixed the loop, made htmcalc more clean 2001-05-16 14:43:21 +00:00
stskeeps 6f7214ba2a . 2001-05-15 13:46:59 +00:00
stskeeps 0c6e023e07 . 2001-05-15 12:07:03 +00:00
stskeeps 2da8a5fd52 converted htmcalc/lcf to events 2001-05-15 12:02:39 +00:00
stskeeps 746f5b8420 . 2001-05-14 17:25:51 +00:00
stskeeps d9eea90de4 . 2001-05-14 16:53:48 +00:00
stskeeps aa7a1485d0 events code 2001-05-14 16:52:17 +00:00
codemastr 7d55e31da0 added code to make the config parser attempt to keep going rather than die 2001-05-13 20:42:20 +00:00
stskeeps 49ad7cb797 . 2001-05-13 19:43:18 +00:00
codemastr a245aa8369 removed ce_vardatanum, wasted CPU and memory 2001-05-13 18:03:43 +00:00
codemastr 25041b0074 Made the topic for a +s channel hidden from non-members 2001-05-12 16:44:34 +00:00
stskeeps 82af929628 . 2001-05-12 14:45:46 +00:00
stskeeps 94a9919ff2 +- Fixed the 100% cpu problem, again, HTM is screwed now though? 2001-05-12 13:42:10 +00:00
stskeeps d33d0292e2 +- Fixed the problems with 100% cpu, hopefully 2001-05-11 21:20:17 +00:00
codemastr bbf83caae0 ... 2001-05-09 19:48:08 +00:00
codemastr 43dbfc5707 added McSkaf's richedit patch to support reverse 2001-05-09 19:44:38 +00:00
stskeeps 27dd306e33 . 2001-05-07 18:59:21 +00:00
stskeeps bcf384f074 . 2001-05-07 18:42:24 +00:00
stskeeps b75e14a07d . 2001-05-07 18:39:55 +00:00
stskeeps 689c63f382 . 2001-05-07 14:28:45 +00:00
stskeeps 2b343609ee +- Changed all TStime() to use timeofday - CPU SAVE
+- Removed userload.c & userload.h
2001-05-07 14:24:11 +00:00
codemastr 7b393920b5 win32 richedit changes 2001-05-06 23:50:30 +00:00
codemastr 0c5f482cae Removed some win32 stuff that accidentily got committed 2001-05-06 20:24:16 +00:00
codemastr 7565597137 win32 richedit support added 2001-05-06 20:21:19 +00:00
stskeeps c402f50c43 +- Added doc/unrealircd.conf.txt (by devdev), doc/services-install-guide
+  (zyrol, edited a bit by stskeeps)
2001-05-06 17:08:31 +00:00
stskeeps 18479eb145 +- Fixed-fixed listen format troubles, larne++
+- Possible fixed some +d bug(s)
2001-05-05 19:52:54 +00:00
stskeeps 8c6bce17a3 +- Fixed-fixed listen format troubles, larne++ 2001-05-05 19:34:45 +00:00
stskeeps 5f306b09f0 +- Fixed some compilation error with IPv6 2001-05-05 16:42:27 +00:00
stskeeps 452d931de2 +- Made listen format able to do:
+     listen [ip]:port, for IPv6 - listen [3fff:ff::1]:6667
2001-05-05 15:55:01 +00:00
stskeeps 7cc288c293 . 2001-05-05 15:33:31 +00:00
stskeeps 60b5126fea +- Made chghost/chgident able to do :'s 2001-05-05 15:29:03 +00:00
stskeeps 312c90fb02 +- Made a crazed out IPv6 cloaking 2001-05-05 14:56:38 +00:00
stskeeps 7dfcb698c4 +- Made you able to bind to specific IPv6 IPs (we don't have FFFF::*
+  functionality yet)
2001-05-05 14:28:15 +00:00
stskeeps 183ac0af7d +- Made IPv6 compile atleast, and work. Current problems:
+  * Cannot bind to a specific IP
+  * IPv6 cloaking doesn't work
2001-05-05 14:16:32 +00:00
stskeeps 1d3488dbdd +- Fixed doc error in s_conf.c 2001-05-05 12:05:15 +00:00
codemastr 4d027ee4fd Added an xchat based color striper (faster and more accurate) 2001-05-04 20:29:32 +00:00
stskeeps 145c25e249 +- Had to revert McSkaf's winlocal.patch, caused too many crashes. I believe
+there is a better way to do this ..
2001-05-02 16:35:49 +00:00
stskeeps 09a50a286d blah 2001-05-02 09:22:08 +00:00
stskeeps 4d5d474bbd +- Removed SJOIN/SJOIN2 support in SJOIN
+- Fixed a +f bug, found by NiQuiL
+- Applied McSkaf's winlocal.patch, seems to work ok, fixed some problems
+  though in unix/win32 (cptr->fd can be -3. Should fix some READ ERRORS as
+  well. McSkaf, do me a favour and remove all of the C++ comments in the
+  source (//) or modify them to /* */
2001-05-01 15:03:07 +00:00
stskeeps 9f8c142981 Removed SJOIN/SJOIN2 support 2001-04-30 17:17:56 +00:00
stskeeps d0f426eafb +- Fixed RTLD_NOW problem with openbsd 2001-04-29 20:31:58 +00:00
codemastr a1689d32e8 fixed a bug causing Found your hostname (cached) to be displayed twice 2001-04-28 19:20:28 +00:00
stskeeps 4c5fa91707 +- Possible fixed a buggie in +f 2001-04-28 18:51:21 +00:00
codemastr d8917f301f added keyboard shortcuts to the win32 config and about popup menus 2001-04-28 16:09:16 +00:00
codemastr bb01af2f8b win32 and numeric 005 changes 2001-04-28 16:03:27 +00:00
stskeeps 94516c12f9 +- Applied s_debug.c/config.h patch from McSkaf, makes DEBUGMODE under
+  win32 working again - fixed some errors in the unix part of it.
2001-04-28 07:22:32 +00:00
stskeeps 9590301027 +- Applied res.c.patch from McSkaf, fixes win32 GPF, but fixed mising HE(ocp) 2001-04-28 07:16:58 +00:00
stskeeps 97e7c471e2 +- Brought 005 up-to-date with spefication - added CHANMODES= support 2001-04-27 20:26:30 +00:00
codemastr fe33eabc47 Win32 fixes 2001-04-25 21:21:33 +00:00
codemastr 684e6dbc4d ixed a win32 bug found by RaYmAn causing the tray icon not to be displayed sometimes 2001-04-24 20:03:41 +00:00
codemastr 63dd767e2b win32 stuff 2001-04-24 19:50:28 +00:00
codemastr 83485c7464 removed newdns 2001-04-23 19:45:53 +00:00
stskeeps 8d9c41d457 +- Fixed possible crash with /quote dns l 2001-04-22 13:32:05 +00:00
stskeeps 48c02f74a9 +- Fixed minor problem with mod_load code 2001-04-22 08:38:39 +00:00
stskeeps bdcc9dd9d2 +- Added method mod_load in dummy example and made it work. mod_load() is executed
+  when server is ready
2001-04-21 19:49:54 +00:00
stskeeps 695ab4d2eb +- Fixed possible crash bug imposed by too many users per ip in AllowClient -found and fixed by McSkaf
+- Made IP Mismatches getting sent to UMODE_JUNK instead
2001-04-21 18:14:40 +00:00
codemastr 5423bf8a94 Win32 changes 2001-04-21 17:06:07 +00:00
codemastr a4220227ba Fixed a /stats Z bug reported by RaYmAn 2001-04-21 00:34:43 +00:00
codemastr 9625b4cd1c Win32 changes 2001-04-20 23:55:45 +00:00
codemastr bfdd6a67d6 newconf cleanup 2001-04-19 00:03:28 +00:00
codemastr d7fdd5c5a3 Made the resolver work in win32 2001-04-18 19:35:41 +00:00
stskeeps cae1a304ba -- Fixed a claok bug caused by stskeeps(tm) "not knowing how to use << and >> coding"
+- Fixed a cloak bug caused by stskeeps(tm) "not knowing how to use << and >> coding"
+- Fixed some cloak bugs, and applied +x crypto to hostnames as well
2001-04-18 17:36:59 +00:00
codemastr f5bf9b603e fixes 2001-04-18 17:32:02 +00:00
stskeeps 5142675522 +- Removed doc/ADD-TO-IRCRC, doc/INSTALL, doc/Manual, doc/Operators,
+  doc/irc.1, doc/ircd.8, doc/server-compile-guide
2001-04-18 13:17:26 +00:00
stskeeps 815dbb9183 +- Fixed do_dns_async problem with new res.c 2001-04-18 07:47:41 +00:00
codemastr 32daea058a Fixed a ban realname {} bug that _may_ have something to do with the negative user count bug 2001-04-16 21:00:14 +00:00
codemastr 4f1778a08b removed __P 2001-04-16 15:36:30 +00:00
codemastr 4298b01b5e fixed ircd_log to work in win32 2001-04-16 00:18:59 +00:00
codemastr 62ce071c41 added /rehash -all patch by NiQuiL 2001-04-16 00:01:38 +00:00
stskeeps cf288e063f res.c: ircsprintf fixes 2001-04-16 00:00:21 +00:00
stskeeps 3cfb547bdd *** empty log message *** 2001-04-15 23:55:49 +00:00
stskeeps 843f20448e *** empty log message *** 2001-04-15 23:35:23 +00:00
stskeeps f5d797a8f1 +- Added irc2.10.3's resolver. Fixes debian-woody-libresolv problems..
+  Still some fixes to be done
2001-04-15 20:32:05 +00:00
codemastr aa7815af65 ... 2001-04-15 15:55:42 +00:00
stskeeps 6a9aa19856 +- Fixed DEBUGMODE problem, found by someone .. 2001-04-14 16:05:18 +00:00
stskeeps 7d53af10f1 . 2001-04-14 10:18:07 +00:00
stskeeps 6491094450 test 2001-04-14 10:17:54 +00:00
stskeeps 431217b50d +- Added unitedirc.network -NiQuiL 2001-04-14 07:46:21 +00:00
stskeeps 980aab93bd +- When IRCOps are breaking into chans with invite only (+i) or
+  key-protection (+k) a eyes-notice is sent like it is on banwalk. -NiQuiL
+
2001-04-14 07:35:30 +00:00
codemastr dea4e0f9b8 recoded ircd_log a bit 2001-04-13 22:38:37 +00:00
codemastr 155a99b69e ... 2001-04-13 22:34:25 +00:00
codemastr 71f285d8b0 win32 changes and other stuff 2001-04-13 22:32:07 +00:00
stskeeps 8a03462ce2 +- #define HELP_WHO for the "did a /who 0 o" 2001-04-13 20:46:22 +00:00
stskeeps d0819ec012 +- Possible FD leak in ircd_log, caused by some codemastr coding(TM) 2001-04-13 19:46:32 +00:00
codemastr 0db56907f8 Added a cloaking fix based on a fix by Zogg 2001-04-13 15:09:03 +00:00
stskeeps 331b07909b . 2001-04-13 09:25:43 +00:00
stskeeps a82570f0a3 +- Fixed up some codemastr(TM) coding regarding M_* 2001-04-13 09:07:28 +00:00
stskeeps 754c11ce62 +- added temporary define #define OLD_CLOAK 2001-04-13 08:57:36 +00:00
codemastr f300280ec1 logging changes 2001-04-12 19:36:10 +00:00
codemastr dad396b0ca Cosmetic cleanup of /info 2001-04-12 16:34:08 +00:00
codemastr f64d767a77 Implimented IRCNet style server redirection 2001-04-12 16:18:43 +00:00
codemastr 715e8893e2 Added sajoin/sapart error message patch by NiQuiL 2001-04-12 15:34:22 +00:00
codemastr 8de146c6e2 newconf changes in an attempt to make our config as compatible as possible with other configs 2001-04-11 18:30:53 +00:00
stskeeps a385e32c8b +- Fixed a NETINFO parameter problem - solves the new NETINFO format 2001-04-11 08:42:50 +00:00
stskeeps 9b5142a14d +- Found a way to do +x IPv4 cloaking right.
+- Added set::cloak-keys { longvalue; longvalue; longvalue; }; for the cipher
2001-04-11 01:52:12 +00:00
codemastr 220d739c8d Possibly fixed the vhost crashing bug, with much help from IpAddress 2001-04-08 23:06:55 +00:00
codemastr 32dd11ca68 Made it so /stats C doesn't show the user@host of servers to non-opers 2001-04-08 22:25:50 +00:00
codemastr d26077a352 Readded timestamp to log, accidentily got removed 2001-04-08 19:42:52 +00:00
stskeeps f4a558c0b2 +- Make users that send a forbidden file get auto blocked from sending other
+  files. sptr->flags & FLAGS_DCCBLOCKED.
2001-04-07 20:57:17 +00:00
stskeeps 789231e481 +- Added M_NOLAG.
+- Added new CRC32-hex-based IPv4 and hostname cloaking form
2001-04-07 13:34:25 +00:00
codemastr 9691037d36 fixed user@ vhost problem 2001-04-03 19:53:25 +00:00
stskeeps 87fb55c207 . 2001-04-02 17:32:32 +00:00
codemastr 260fcc7525 added ability to add a username to spoof in vhost {}, also fixed a vhost bug 2001-04-01 23:16:02 +00:00
codemastr 589d1dafb4 Fixed a bug where the IRCd didn't validate hosts specified in a vhost {} 2001-04-01 19:27:23 +00:00
codemastr 38d57f15f0 made duoble loaded motd/rules only be cached once 2001-04-01 18:35:49 +00:00
codemastr d1baf13ae4 tld::channel added 2001-04-01 17:54:34 +00:00
codemastr f0ccf16b61 If no oper::flags are found, default to locop 2001-04-01 15:22:33 +00:00
stskeeps f922820f5d +- Fixed a problem with SDESC module token being wrong - Found by eternal 2001-04-01 15:13:46 +00:00
stskeeps 56effd6149 +- Fixed a problem with users opping servers.. Found by Morbid 2001-04-01 11:55:40 +00:00
stskeeps 78cfb2fb10 . 2001-04-01 11:42:44 +00:00
stskeeps 4d7f9dde8b . 2001-04-01 11:37:35 +00:00
stskeeps 6ff6286e4c . 2001-04-01 11:34:42 +00:00
stskeeps 9436198b96 . 2001-04-01 11:11:58 +00:00
stskeeps e99c73b217 +- Made /kick not core on users kicking servers. (WTF?) 2001-04-01 11:07:13 +00:00
stskeeps 3fcc2115cb +- Made static linking a little more possible (for -pg) 2001-04-01 09:40:48 +00:00
stskeeps 607157c0e0 +- Moved /sdesc, /setident to modules.
+- allow { } now supports encrypted passwords -Syzop
2001-03-31 20:26:14 +00:00
stskeeps 7bc6a45cf8 +- Fixed a double definition (double m_chghost and m_chghost.so) 2001-03-31 20:03:17 +00:00
codemastr 16ee430dd4 reverted a change 2001-03-29 20:37:29 +00:00
stskeeps 19386125a6 +- Added a donation credit 2001-03-29 14:54:09 +00:00
codemastr d3738ff6d6 added oper::swhois 2001-03-28 21:10:16 +00:00
codemastr c0a30f631d Made a security measure to stop people from reading the ircd.conf 2001-03-28 00:41:06 +00:00
codemastr d00e7536df Removed PROTO() 2001-03-27 21:30:59 +00:00
codemastr aa6fa83b5f fixed a log {} bug 2001-03-25 18:50:29 +00:00
codemastr 5193c47f72 ixed a globops bug that required it to have a : 2001-03-25 18:32:52 +00:00
stskeeps 0312737c61 +- Reverted Demigurus's select() speedup patch, did speedup, but it
+  also caused a good bit of CPU.
2001-03-25 17:17:55 +00:00
codemastr b7858491fe Removed the old /rehash flags 2001-03-25 16:49:53 +00:00
stskeeps 0d85f1b98d +- Made MyMalloc be MyMallocEx in codemastr's log {} code. Fixes junk pointer
+  problem - discovered by sts/Morbid
2001-03-24 11:05:12 +00:00
stskeeps 659140348d +- Added #define HOOKTYPE_LOCAL_NICKCHANGE 2001-03-24 07:55:50 +00:00
codemastr 43e19f52a6 log system fix 2001-03-21 21:27:34 +00:00
codemastr 464e787aac added a new logging system using log {} 2001-03-21 20:42:15 +00:00
stskeeps a3a445dc77 +- Added Hooks, only one working now is HOOKTYPE_LOCAL_QUIT 2001-03-21 18:14:43 +00:00
stskeeps 555089ce9e +- Removed networks/unrealircd.conf 2001-03-19 06:05:28 +00:00
codemastr 0ce7799961 command hash changes 2001-03-19 00:09:42 +00:00
stskeeps c5c1b8e3e1 +- Modified command hashing system to Sts's belief of how eggs should be
+  made. (quick, dirty and fcked up)
+
2001-03-18 21:28:04 +00:00
codemastr 2ff27c366f Command hash changes 2001-03-18 20:34:59 +00:00
codemastr 3251251be9 moved m_setname to a .so 2001-03-18 17:42:09 +00:00
stskeeps 26c45f50fd +- Changed license of m_dummy.c (dummy module, skeleton), so people can do
+  closed source modules.
2001-03-18 13:07:00 +00:00
stskeeps 089067fbda +- Moved m_chgident to an .so 2001-03-17 21:47:22 +00:00
stskeeps fe7b258bfb - all of the module files to the new format.
+  all of the networks files to the new format.
+- Fixed a bug with RAKILL and UNSQLINE not working
2001-03-17 18:56:50 +00:00
stskeeps edfca03e28 +- Modified an old Unreal3.1.1 to be network file converter, and converted
+  all of the module files to the new format.
2001-03-17 16:22:40 +00:00
stskeeps c181a20492 +- Put out m_chghost, m_sethost in modules, remade Makefile structure and
+  added src/modules
+
+
2001-03-17 14:12:24 +00:00
stskeeps e1b5d6fae0 +- Added module_sym("functionname"), for modules, like, sajoin might want to
+  do fp_m_join = module_sym("m_join");
2001-03-15 21:02:00 +00:00
stskeeps 67cdd867fd +- Made conf2 able to load empty files as well 2001-03-14 13:07:27 +00:00
codemastr 5e535f848d updated the badword configs to use newconf 2001-03-13 22:23:49 +00:00
stskeeps 1c23055cd7 +- Made chmode +z only settable by umode +z users or U:lines or services. 2001-03-13 15:05:35 +00:00
stskeeps 634312f47d +- Added unknown connection flood protection (settable in config.h) 2001-03-13 11:46:23 +00:00
codemastr 9fc54cdaed reverted a previous change 2001-03-12 20:37:21 +00:00
codemastr 5750cea757 Win32 Changes 2001-03-11 19:36:49 +00:00
stskeeps bd983ef189 +- Fixed bug with double module unloading, bug found by RaYmAn 2001-03-11 13:21:35 +00:00
stskeeps 110f099802 +- Started on commands.so making, works good atm -on req of codemastr,
+  both as m_module.so and commands.so :) - long live dynamiclinking
2001-03-11 13:08:53 +00:00
stskeeps c84da7d03c +- Reintroduced "fake lag". Flood algoritm works this way:
+   Make next check for parsing be
+   (1 + (length of command+parameters / 60)
2001-03-11 06:42:19 +00:00
stskeeps 6d2a2e1bf9 +- Added loadmodule "filename.so"; and made the modules
+  unable to get loaded twice with same name.
2001-03-10 21:04:25 +00:00
stskeeps f41c3bf679 +- Added Modules, using dlopen() and LoadLibrary for *nix/win32.
+- Added /module load <path.to.so>, /module status (list modules),
+  /module unload <modulename>
2001-03-10 11:58:04 +00:00
stskeeps 797b6c6f21 +- Added /cycle #channels, suggested by ^loki^ 2001-03-09 12:40:11 +00:00
stskeeps d7700539c6 +- Added #define KILL_LOGGING, by otherguy 2001-03-09 10:15:48 +00:00
stskeeps 9251234b2d +- Added "get_host" old 'H' O:flag 2001-03-07 19:42:50 +00:00
stskeeps 0e77f08921 +- Made ./Setup not do dynamic configuration any more
+- Changed reference in Setup from ircd.conf to unrealircd.conf (cosmetic)
+- Changed output of updconf from ircd.conf.new to unrealircd.conf.new
+- Changed the output of makeconf from ircd.conf to unrealircd.conf
+- Renamed hostmask to hostname like it should be in makeconf - IpAddress
2001-03-07 17:04:37 +00:00
stskeeps 49152c8bcd +- Fixed ssl_client_handshake bug reported by IpAddress 2001-03-07 16:19:49 +00:00
stskeeps 65ab75c9a8 +- Made makeconf use "ban nick" instead of "ban nickname" 2001-03-07 07:49:19 +00:00
angel11 42f43eeb00 Fixed a bug in makeconf, make whois not return chans for services. 2001-03-06 21:27:06 +00:00
stskeeps 8b3c0d8b56 +- Made MembershipL->flood get bzero on out delegation
+- Made IRCd not crash on /kick from servers
2001-03-06 02:45:24 +00:00
codemastr 10dd29fb7a Removed stskeeps's lazy add_CommandX (tm) code 2001-03-05 17:19:09 +00:00
codemastr e5b6533dcd Rewrote makeconf and makenet to use newconf (added some new features to makeconf as well) 2001-03-04 17:52:37 +00:00
stskeeps e852d93134 +- Made del_Command(). 2001-03-03 13:34:10 +00:00
stskeeps 15b1aa89f8 . 2001-03-02 20:11:09 +00:00
codemastr bf9dc43e5a Removed a lot of vars and stuff from the old config, also made some cleanups to reduce source size 2001-03-02 18:53:04 +00:00
codemastr ee1d50c4e2 Added option to use old style oper flags 2001-03-02 18:09:11 +00:00
codemastr 9063b91570 Updated most of /stats S for newconf 2001-03-02 15:06:53 +00:00
stskeeps edfd90f235 +- Made NAME_SERVER (set::dns::nameserver work). The IRCd no longer
+  uses /etc/resolv.conf as reference.
2001-03-02 14:58:37 +00:00
stskeeps 6164ba8175 +- Moved dynconf stuff from s_svs.c to s_conf.c, on popular request 2001-03-02 14:22:30 +00:00
stskeeps e3fbff915b . 2001-03-02 14:00:30 +00:00
stskeeps f75f80584e . 2001-03-02 12:20:43 +00:00
stskeeps 2d7436eea0 Made modes-on-connect work 2001-03-02 12:20:26 +00:00
stskeeps f106d3b39b Made /who work correctly 2001-03-02 11:48:54 +00:00
codemastr 1dc79accfc added a bunch of /stats flags 2001-03-02 00:55:57 +00:00
stskeeps 247a3235ef +- Overwrote s_conf.c with s_conf2.c, and removed s_conf2.c. Viva la Conf2! 2001-03-01 21:31:55 +00:00
stskeeps 59f0c6a7be +- Fixed a config_load win32 problem, found by Zogg, fixed by Stskeeps/codemastr 2001-03-01 21:29:44 +00:00
codemastr 03253db9b2 Fixed a deny version {} bug (oops) 2001-03-01 21:22:32 +00:00
codemastr 815db2ad4a added deny version, and made deny link rehash 2001-03-01 21:13:58 +00:00
stskeeps 3eff8614eb +- Removed dynconf.c, from the old dynconf 2001-03-01 20:39:41 +00:00
stskeeps 516731d14d +- Removed class.c, from the old conf 2001-03-01 20:31:03 +00:00
stskeeps 02f1d1a27a +- Made /stats C show flags correctly 2001-03-01 06:15:24 +00:00
stskeeps 259c4bcf66 +- Made DNS cache list show a notice to other ops 2001-03-01 06:13:45 +00:00
stskeeps d1139c251c +- Made autoconnect msgs only go to +os 2001-02-28 20:43:27 +00:00
stskeeps d10da5cf81 . 2001-02-28 18:29:08 +00:00
stskeeps 55458495fb +- Fixed the 9-month old win32 DNS bug, caused by Stskeeps's incidential
+  delete
2001-02-28 18:23:31 +00:00
stskeeps 54c46720f7 +- Somehow is_halfop and co got called when a server set a mode .., added
+  IsServer check (auto-return 1)
+
2001-02-28 17:24:38 +00:00
stskeeps 155374409d +- Added Member and Membership and made the IRCd support this. Using
+  "freelinks", todo: garbage collection
+- Added find_member_link and find_membership_link. Made Floodopt only
+  get allocated for local users. Removed aFloodOpt in Link,
+- Made a speedup in is_halfop (dumb code)
2001-02-28 16:24:37 +00:00
stskeeps 2ed9fead6d -- Fixed one of codemastr's wonderful coding bugs. *slap slap slap*
+- Fixed windows CRLF problem in conf2, reported by Zogg
2001-02-27 19:40:52 +00:00
stskeeps 09fc76ed53 +- Fixed one of codemastr's wonderful coding bugs. *slap slap slap* 2001-02-27 11:42:55 +00:00
stskeeps 98477e867e . 2001-02-27 11:22:37 +00:00
stskeeps 412390883c +- Removed msgtab part of parse, removed the bigass hashtable msgtab,
+  removed inittoken, made command initalization happen in init_CommandHash
+- Adapted /stats M to it. Removed /helpop ?commands temporary. Confirming
+  hashtable works.
2001-02-27 11:03:19 +00:00
stskeeps e010cbde23 +- Added CommandHash optimation .. this is not done 100% yet. uses msgtab as
+  reference
2001-02-27 08:56:06 +00:00
codemastr 878f3ddba8 sped up some channel stuff using bahamut style user searching 2001-02-25 17:30:43 +00:00
codemastr 82e2407bd3 made crule.c faster 2001-02-25 16:57:23 +00:00
stskeeps 7dbe724aff +- Removed return_servers() and made servers be called Servers, and be a
+  global variable. Done on request on Great Master codemastr.
2001-02-25 16:41:13 +00:00
stskeeps 8cc77bb669 +- Recoded check_pings, with bits used from bahamut-ircd/hybrid-ircd, credits
+  to lucas.
2001-02-25 10:36:41 +00:00
stskeeps 170a1dff0e +- Made admin {} get rehashed
+- Got /stats x to work again
2001-02-25 09:03:22 +00:00
codemastr 038830c0b2 added deny link {} 2001-02-25 00:57:12 +00:00
stskeeps 0ced6ab45b +- Made connfreq unable to less than 10 2001-02-24 20:15:29 +00:00
codemastr e9b9c0e775 various code cleanups 2001-02-24 18:27:50 +00:00
codemastr f656a02b76 various cleanups 2001-02-24 16:22:26 +00:00
stskeeps df04217164 . 2001-02-24 15:06:00 +00:00
stskeeps ace1eb1e1a todo stuff 2001-02-24 15:02:26 +00:00
stskeeps c5ed0fe9c1 +- Made autoconnect work again :>. Changes in behavouir: It connects more at
+  a time now. You need autoconnect flag in options.
2001-02-24 14:56:15 +00:00
stskeeps eed841e642 +- Made link { options { work OK again. Had a dead loop as well 2001-02-24 13:36:52 +00:00
stskeeps 9ac6d4cb65 +- Killed ircdupstr and called it ircstrdup 2001-02-24 13:09:50 +00:00
stskeeps 40f1dd6da6 +- Added deny channel { channel "channelmask"; reason "why"; }; and
+        allow channel { channel "channelmask"; };. Replaces chrestrict
+- Made those above get rehashed
2001-02-24 13:03:26 +00:00
codemastr 0ce4ac5bc0 dynamic motd changes 2001-02-23 22:01:59 +00:00
codemastr 3211a39f6b replaced a few strlen()s with sizeof()s should make the IRCd start a bit faster 2001-02-23 17:30:39 +00:00
stskeeps 97de7c6e41 +- Fixed a missing " in validate_conf 2001-02-23 15:42:08 +00:00
stskeeps 57f89e0678 . 2001-02-21 17:29:21 +00:00
stskeeps ff1b08ef51 +- Fixed a /kline and /unkline buffer overflow, reported by [-Th3Dud3-]
+- Fixed a crash in /stats k regarding temporary K:lines
2001-02-21 16:00:43 +00:00
stskeeps 64ee360a69 . 2001-02-19 18:44:20 +00:00
stskeeps 3bc852a76c +- Added a notice on connect for SSL users with key length 2001-02-19 18:26:29 +00:00
stskeeps b7b2155573 +- Some small SSL fixes .. 2001-02-19 18:13:53 +00:00
codemastr a28500faae If an invalid ban or except is found, it is removed 2001-02-19 17:21:42 +00:00
codemastr b53a38c15c newconf changes 2001-02-19 17:11:17 +00:00
codemastr eb6d81e199 ade it so the IRCd can survive with certain set {} errors (uses defaults) 2001-02-18 16:39:54 +00:00
stskeeps e56b347bb1 . 2001-02-18 16:04:57 +00:00
codemastr 2d455fee85 bunch of changes 2001-02-18 16:03:34 +00:00
stskeeps 691bbfc48a +- Made deny_dcc get rehashed 2001-02-18 11:59:27 +00:00
stskeeps d121a7a9ad +- Finished up deny dcc {}.
+   TODOs: dcc_del_wild_match doesn't work. dcc_wipe_services() either
2001-02-18 09:57:49 +00:00
stskeeps 556ae0ef20 *** empty log message *** 2001-02-16 20:36:52 +00:00
stskeeps 44be7a34a2 +- Finished up validate_conf() 2001-02-16 20:27:15 +00:00
stskeeps 05362ec33f .. 2001-02-14 22:38:47 +00:00
stskeeps 1f7cb4c186 +- Fixed a problem with +x
+- Made CPATH be unrealircd.conf and init_conf2 use configfile instead
+- Disabled calls to dynconf
+- Added validate_conf, added dynconf checking, me, admin, class, oper
+  testing
+- Added config_progress() Fixed temporary stuff
+  with conf_link
 - Made tld {} get rehashed
2001-02-14 20:51:21 +00:00
codemastr 8247b2cc5f Made tld {} get rehashed 2001-02-14 20:47:47 +00:00
stskeeps e0588102ac +- Fixed temporary stuf with conf_link 2001-02-14 11:34:11 +00:00
stskeeps a3d4c1af6e +- Added /stats P on listener info (oper-only)
+- listener temporary stuff works now
2001-02-14 09:17:31 +00:00
stskeeps 254326670a +- Added some MALLOCD (mini debug malloc by stskeeps..)
+- Removed some C++ comments
+- Made close_listeners work correctly again
+- Removed some old check_* mammut code
+- Fixed a bunch of possible bugs in newconf
+- Added sendto_realops logging of config errors
+- Made /rehash work .. sortof. Fixed some crash bugs
2001-02-13 23:14:27 +00:00
stskeeps 884d79e08a +- Fixed a problem with cptr->class counting for servers 2001-02-06 20:34:18 +00:00
codemastr bc1dc6f2ab Made a bunch of /stats flags work with newconf 2001-02-06 20:29:48 +00:00
stskeeps 80f5de56d8 . 2001-02-06 20:16:30 +00:00
stskeeps 22b891a845 +- Fixed negative timestamps problem (crash) 2001-02-06 19:30:36 +00:00
stskeeps cacd6bf213 +- Fixed check_pings problem (crash) 2001-02-05 05:07:43 +00:00
stskeeps 77653accda . 2001-02-04 22:06:16 +00:00
stskeeps 5237c6748b .. 2001-02-04 19:24:33 +00:00
stskeeps 1effeee7a8 +- Fixed a spread server bug 2001-02-04 17:16:39 +00:00
stskeeps 554fa520a0 +- Fixed a refcount bug 2001-02-04 14:46:39 +00:00
stskeeps 5098716479 . 2001-02-04 14:22:48 +00:00
stskeeps 822885b367 +- Fixed some protocol error in server_synch
+- Made listener code work good ..
+- Made reference counts work again
+- Started some rehash work
+- Made full class work on servers too
2001-02-04 14:20:35 +00:00
stskeeps b263907bd8 +- Classes keep reference counts now, and moving classes (oper) works good
+  too.
+- Added /trace class search results (class->clients)
2001-02-03 19:07:21 +00:00
stskeeps 9a05dd20cb +- ban server {} works the original way it was intended to now 2001-02-03 08:26:24 +00:00
stskeeps 9e216fe7fa +- Fixed a little problem with SERVER servername :info crashing the ircd
+  Long live the Floridan way of counting
2001-02-03 07:32:45 +00:00
stskeeps 8893ac57bc +- Made /sqline /unsqline work again.
+- Made SQLINE synching work with newconf
2001-02-02 23:20:47 +00:00
stskeeps 9e871d56aa +- Made /trace work again properly with class names 2001-02-02 20:27:17 +00:00
stskeeps 1280c7d67e +- Made /kline work again, with newconf 2001-02-02 20:04:41 +00:00
stskeeps 1c631472b6 random crap 2001-02-01 20:58:45 +00:00
stskeeps e4627153f6 +- Made /stats C work and /stats H. Intregrated into one.
+- Made /zline, /unzline work.
+- Added CONF_BAN_TYPE_TEMPORARY
+- Fixed a ban ip {} bug in check_pings
+- Removed some waste of oldconf
+- Moved advanced_check to s_svs.c
2001-02-01 19:32:48 +00:00
stskeeps ce3707734d +- Fixed a check_pings problem with usernames
+- ban ip {} works 100% now
2001-02-01 16:34:24 +00:00
stskeeps 7f7bbd3d21 + FIX: *@* detection
+- Fixed a check_pings problem with usernames
2001-02-01 16:21:00 +00:00
stskeeps 54ae54eb4f +- Made /rakill and /akill work again :). Added banflag.type2 2001-02-01 16:19:44 +00:00
stskeeps 30e0ce476c +- Made /svso work again, moved it to same place as svsnoop. 2001-02-01 14:58:24 +00:00
stskeeps 6a1c7c65e5 +- Made /svsnoop "work" again, moved it to s_svs.c (and made that file too) 2001-02-01 14:48:55 +00:00
stskeeps 76ccc05b2c +- /connect works now :), TODO: D:d lines, V:line needs fixing, badly
+  says "Unknown location" atm on uplink
+- Took out MyMalloc & co, direct to malloc/realloc/free now. Crashed in
+  DEBUGMODE
+- Added ConfigItem_link->ipnum
+- Fixed a compile bug with DEBUGMODE
+- Changed a load of old aConfItem crap .., FIX: ConfigItem_link->options
+- Fixed a /connect bug
2001-02-01 08:05:11 +00:00
stskeeps 4c075f6462 +- Fixed check_pings (check_kills) code, so G:lines & ban nick/ip/realname
+  works again
2001-01-31 14:04:55 +00:00
codemastr 5a1114985c vhosts now use newconf 2001-01-30 21:58:20 +00:00
codemastr 82134302a9 some updconf stuff read changes 2001-01-29 22:50:57 +00:00
stskeeps cf2207747a +- Made allow { maxperip }; work, the old ONE password thing, just better 2001-01-29 20:59:26 +00:00
stskeeps f343bc0ba1 . 2001-01-29 20:40:53 +00:00
stskeeps cbbbce0b01 +- Made allow {} passwords work (AllowClient) - TODO: I:line encryptions 2001-01-29 20:39:38 +00:00
codemastr 903f505103 updconf now makes use of from {} in oper {} to eliminate duplicate O:lines 2001-01-28 22:45:30 +00:00
codemastr b4c84801f5 Added the first (sorta) working version of the config converter 2001-01-28 19:20:01 +00:00
codemastr 384a09aceb Made ban nick {} work 2001-01-28 19:03:38 +00:00
stskeeps 52080301a2 +- Fixed a minor problem with ban {} and oper {} 2001-01-28 18:40:31 +00:00
stskeeps 34c792a5e2 +- Made /oper work with newconf (come get us now bastards!)
+- Made +c show class names in connect
2001-01-28 17:59:46 +00:00
codemastr 581274a4c8 Made /setname and /chgname use ban realname {} 2001-01-28 16:11:32 +00:00
stskeeps bbc3980277 +- Made get_sendq be a macro
+- Added find_ban, AllowClient() (old attach_Iline)
+- Temporary disabled /svsnoop, /akill, /sqline /unsqline, /kline, /unkline
+  /zline, /rakill, /unzline and /svso
+- chkconf is not being built anymore
+- Ripped out s_conf.c with the roots.
+- Ripped out add_listener
+- Disabled a lot of stuff that needs to adapt to conf2
+- Made allow {} work
+- Changed allow {} to do user@host instead of user item
+- Took out my_name_for_link
+- Temporary disabled D:d lines/SQLines/Qlines
+- Fixed some /connect stuff
+- Disabled rehash temporary
+- Made ban user/ban realname work (s_unreal.c needs to be modified)
+- Added Zogg to credits
+- NOTE: Unreal-devel is handicapped right now, code in progress, do not use
2001-01-28 12:10:06 +00:00
codemastr 191d22dd40 various fixes 2001-01-21 23:15:09 +00:00
codemastr 42a9e91f1b Made vhost {} use from {} for hosts 2001-01-21 19:04:36 +00:00
codemastr 8228a15f14 Added set {} (unrealircd.conf/network file replacement) 2001-01-21 18:18:17 +00:00
stskeeps 189ee2de56 +- Recoded m_server(YES!) -stskeeps
+- Fixed a #undef USE_SSL problem found by codemastr.. caused by
+  Sts(TM)coding
2001-01-21 06:31:30 +00:00
stskeeps 2db92a77ad +- Added Find_link, serv->conf, did a Find_tld fixup, removed serv->nline,
+  removing a lot of my_name_for_link crap, indented s_serv.c
+- Recoded m_server(YES!) -stskeeps
2001-01-20 21:26:54 +00:00
codemastr 1881d7a7c2 chmodes +GcSm affect /part now 2001-01-20 17:10:23 +00:00
codemastr b1306a3040 Updated match() to have some optimizations from bahamut 2001-01-19 21:10:41 +00:00
codemastr 002f47c434 rehash cleanups and other cleanups 2001-01-19 16:35:01 +00:00
stskeeps de14d4f6de +- Fixed bug with /whois showing +S user channels (ChanServ) 2001-01-17 20:59:27 +00:00
codemastr 4affd16dc5 tld {} changes 2001-01-14 18:03:39 +00:00
codemastr 4dd8eb2731 Implimented except socks {} and tld {} 2001-01-14 01:16:39 +00:00
codemastr dfa4d7c325 Removed the old chmode +x = +c and +I = +V support 2001-01-13 17:20:41 +00:00
codemastr a12cf0a9fc SVSMODE/SVS2MODE fixes 2001-01-12 23:16:45 +00:00
codemastr 33ce3ce8a9 +f changes 2001-01-12 22:52:34 +00:00
codemastr 7a0de228fc Fixed a shun bug 2001-01-09 23:26:10 +00:00
stskeeps 50beda9644 . 2001-01-09 19:07:25 +00:00
stskeeps cc4a5273db . 2001-01-09 10:25:34 +00:00
stskeeps 64931ec2cb . 2001-01-07 16:37:46 +00:00
codemastr 30e1580504 Fixed a G:line bug reported by ROXnet 2001-01-06 18:29:10 +00:00
stskeeps 45828bdf33 . 2001-01-06 10:51:30 +00:00
codemastr 9e88d95c35 made drpass be used in place of X:line 2001-01-06 00:55:06 +00:00
codemastr 6a02c2b900 made ulines load from the new config 2001-01-05 23:02:08 +00:00
stskeeps dbddc21399 +- Added listen {} runtime-configuration code work :))
+- Removed unrealircd.conf from stock
2001-01-05 22:37:13 +00:00
codemastr b75e6e6668 Made /admin use the new config 2001-01-05 19:50:22 +00:00
stskeeps 1ecdb3714c . 2001-01-04 22:02:04 +00:00
stskeeps 9c22ba475e +- Merged in sts-laptop branch 2001-01-04 21:54:09 +00:00
stskeeps b4493dae82 *** empty log message *** 2001-01-04 21:42:41 +00:00
codemastr 428a4c5d94 ... 2001-01-03 22:26:54 +00:00
codemastr 8335a9efca cron changes 2000-12-30 18:01:48 +00:00
codemastr 800401f0cc ... 2000-12-30 17:58:32 +00:00
codemastr bc8fe3cda1 ... 2000-12-30 17:57:54 +00:00
codemastr 989d31db7a ... 2000-12-30 17:57:04 +00:00
codemastr 449c223d5d Fixed a serious bug 2000-12-28 02:15:45 +00:00
codemastr 5a46eab842 ... 2000-12-28 01:47:35 +00:00
codemastr 1a59f08f8c Fixed a ircd.tune bug 2000-12-27 22:05:38 +00:00
codemastr 97cc8fe0b3 Fixed a STATS_ONLYOPER bug 2000-12-27 21:48:27 +00:00
stskeeps 02424859a2 . 2000-12-27 18:57:33 +00:00
codemastr 77b43b023f added the except parser 2000-12-27 18:26:21 +00:00
codemastr 697779c545 fixed a chg*/set* and sdesc bug 2000-12-27 15:45:41 +00:00
codemastr b899d5f1f6 ... 2000-12-26 15:49:37 +00:00
stskeeps 19f40d067c +- Added TODO in top of s_conf2.c 2000-12-26 12:59:25 +00:00
stskeeps 95599d4f69 +- Finished _conf_allow 2000-12-26 12:45:12 +00:00
stskeeps 3d42025e70 +- Finished _conf_listen 2000-12-26 12:04:13 +00:00
stskeeps cf209ac0f8 . 2000-12-25 23:43:29 +00:00
stskeeps bfe9ce19f8 +- A report_configuration code (showoff) 2000-12-25 23:07:15 +00:00
stskeeps 021dbadcb2 +- Finished _conf_oper 2000-12-25 22:25:55 +00:00
stskeeps 5e1a7560f4 . 2000-12-25 20:47:53 +00:00
codemastr 14060a44dd Added tld to the config code 2000-12-25 20:40:56 +00:00
stskeeps 8a526e56ef . 2000-12-25 19:59:21 +00:00
stskeeps 5e009543c0 .. 2000-12-25 19:53:32 +00:00
codemastr c521050ad8 made config2 use strerror to report errors rather than the numeric 2000-12-25 19:52:38 +00:00
angel11 61d9748dc0 Fixed s_user.c so umode N and T cannot coexist 2000-12-25 19:43:11 +00:00
stskeeps e9bde25600 +- Removed parser builtin directive include, and replaced it with our own 2000-12-25 18:46:53 +00:00
stskeeps 2a40af2bff . 2000-12-25 16:41:18 +00:00
stskeeps 263eebc9b3 . 2000-12-25 16:34:59 +00:00
stskeeps 3411fb0724 +- Some more config2 code 2000-12-25 10:43:42 +00:00
codemastr 481856ecde added drpass to the config code 2000-12-24 22:15:08 +00:00
stskeeps 8ae2344c43 . 2000-12-24 21:59:50 +00:00
codemastr 4d7e1dc8be ... 2000-12-24 21:53:43 +00:00
stskeeps dfffd4b238 +- Some more newconf code 2000-12-24 21:52:33 +00:00
stskeeps 8837f3540e +- Some more _conf_class code 2000-12-24 18:12:41 +00:00
codemastr d455d37f59 *** empty log message *** 2000-12-24 18:04:11 +00:00
codemastr 7464b80219 /stats changes 2000-12-24 18:00:41 +00:00
codemastr 24318b579f fixed a missing : on numeric 379 2000-12-24 16:52:27 +00:00
stskeeps a99d4497df . 2000-12-24 16:34:12 +00:00
stskeeps 6751ce7349 +- Added some a bit functional _conf_class code 2000-12-24 16:09:28 +00:00
stskeeps 7b44111745 +- Added the next part of the new config parser, and some even more 2000-12-24 15:37:57 +00:00
stskeeps f3c5f6f6c8 +- Added the next part of the new config parser 2000-12-24 13:31:33 +00:00
stskeeps e24f9f0844 +- Added first part of the new config parser, s_conf2.c 2000-12-23 23:21:10 +00:00
stskeeps 2edbe91580 . 2000-12-23 12:57:33 +00:00
stskeeps 9e68fd3ac0 *** empty log message *** 2000-12-23 12:55:46 +00:00
stskeeps dc7eca4b5d + Stskeeps> +j? but yes, there's a bug there 2000-12-21 10:16:52 +00:00
codemastr 749014625a *** empty log message *** 2000-12-20 22:07:49 +00:00
codemastr 313ec95dcd Fixed a bug where you would receive a double notice on /who 0 o 2000-12-20 17:47:02 +00:00
codemastr 4d8e57d51d topci fixes 2000-12-20 17:36:29 +00:00
codemastr 6bc1965492 ... 2000-12-20 17:17:04 +00:00
stskeeps d17cbcc9b5 +- Added in devdev's INSTALL replacement
- Made it so you don't get a +W notice if you /who or /whois yourself reported by Ron885
 - You can no longer specify an *@unrealircd.com/org, or unreal-*@lists.sourceforge.net email
   as your KLINE_ADDRESS (the "Why am I K:lined?" messages got too annoying)
+- Removed some irc.flirt.org references.
2000-12-20 15:18:56 +00:00
codemastr 5ad018cce7 ... 2000-12-19 22:33:33 +00:00
codemastr a69ec1a95b Made it so you don't get a +W notice if you /who or /whois yourself 2000-12-19 22:21:50 +00:00
stskeeps de447b9495 +- Fixed some more points of ->passwd bugs 2000-12-17 20:51:40 +00:00
stskeeps f855bb7dab + m_server_estab, reported and fixed by Kanzen_Greiver 2000-12-17 20:45:36 +00:00
codemastr 65aa3e7a6e Modified rehash flags to use strnicmp rather than match 2000-12-17 18:35:31 +00:00
stskeeps 96bda8f5dc . 2000-12-17 11:58:05 +00:00
codemastr 4429a4ba7e removed a redundant include of time.h 2000-12-15 22:25:32 +00:00
stskeeps 3d0bf74200 +- Fixed permission problem with SSL .pem files (was o+r) 2000-12-15 16:44:23 +00:00
stskeeps 44d7308718 . 2000-12-14 20:41:03 +00:00
stskeeps 9dbfd6251d *** empty log message *** 2000-12-14 17:01:15 +00:00
cvs2hg d46d93cfa5 fixup commit for tag 'unreal3_1_1_stable' 2000-12-14 16:07:33 +00:00
cvs2hg 8350bc861c fixup commit for tag 'unreal3_1_1_darkshades' 2000-12-14 16:07:32 +00:00
stskeeps 4dc498b9fb . 2000-12-14 16:07:31 +00:00
stskeeps 54ba7c7ed2 *** empty log message *** 2000-12-14 16:06:37 +00:00
stskeeps d173324c0d . 2000-12-13 22:15:19 +00:00
stskeeps 799daac44d +[ Unreal4.0 ]
+- Fixed a _serious_ bug in SERVER command, reported by Valen, Forester,
+  M0rpheus and JK.
2000-12-13 22:13:20 +00:00
stskeeps 1cd81ae077 *** empty log message *** 2000-12-13 16:00:04 +00:00
stskeeps 749a4340ca .. 2000-12-13 15:12:45 +00:00
stskeeps 20c0e8d733 *** empty log message *** 2000-12-13 13:12:49 +00:00
stskeeps 4bebd2cb31 *** empty log message *** 2000-12-12 21:44:02 +00:00
codemastr da4333aecf ... 2000-12-12 21:42:03 +00:00
stskeeps c8b1de7cdb . 2000-12-12 21:37:25 +00:00
stskeeps ba924cb7bc +- Made more openssl binary detection using 'which'
+- Added message when trying to join a +z channel
+- New segmentation fault code by Kanzen_Greiver
2000-12-09 15:12:23 +00:00
codemastr 0a58f33c27 fixed a reverse DNS exploit 2000-12-07 21:08:29 +00:00
stskeeps bbaa0b0416 *** empty log message *** 2000-12-05 10:36:00 +00:00
stskeeps d42ae2b5b8 +- Fixed restart bug, reported by RaYmAn 2000-12-03 19:03:38 +00:00
stskeeps b140153d57 +- Some few fixes from CodeM and Barubary:
+  - Fixed /whois to show users for opers when not in the channel.
+  - Fixed /whois to allow only global eyes opers to see user modes.
+  - Fixed /whois to not show idle times of global opers to anyone except
+    another global oper or services.
+  - Fixed /who to show users for opers when not in the channel.
2000-12-03 13:40:11 +00:00
stskeeps cd5548cab8 +- Fixed P:line bug, caused by codemastr(tm) coding, (masskills), reported by
+  sidv@sid-kitty-land.org
2000-12-03 13:13:27 +00:00
stskeeps ceb8171657 +- Fixed a bug in sendto_channel_prefix_tok reported by Strider@ChatCircuit 2000-12-03 11:53:41 +00:00
stskeeps 2d4846bfd6 +- Fixed a chinese nick thing, thanks to miCro and RexHsu
+- Fixed a typo in config.h
2000-12-02 15:36:17 +00:00
stskeeps 25291cc457 +- Fixed a chinese nick thing, thanks to miCro and RexHsu 2000-12-02 15:33:09 +00:00
stskeeps f8a112aa07 +- Fixed a SJOIN bug, i think, thanks to Web 2000-12-02 11:44:57 +00:00
stskeeps 38bcec9991 +[fixes]
+- Fixed a +d bug (it didnt send ` prefixes)
2000-12-02 08:45:12 +00:00
stskeeps 367dfb5d3b . 2000-12-01 22:05:03 +00:00
stskeeps cd69044366 . 2000-12-01 21:10:13 +00:00
stskeeps 5747fda912 . 2000-12-01 20:52:59 +00:00
stskeeps 94927f5a7a . 2000-12-01 19:57:01 +00:00
stskeeps f634ce269b +- SSL error change to sendto_umode(UMODE_JUNK)
+- Fixed a hash error
2000-12-01 19:55:53 +00:00
stskeeps 6fa75f2e9e . 2000-12-01 18:16:34 +00:00
stskeeps 9b14745e47 . 2000-12-01 16:56:03 +00:00
stskeeps 606967c718 +- SSL error change to sendto_umode(UMODE_JUNK) 2000-12-01 16:45:34 +00:00
angel11 3985a7ceed Accidently changed ircd.c =P, fixing 2000-12-01 15:53:52 +00:00
angel11 62cf839f2e Fixed axenet network file 2000-12-01 15:49:04 +00:00
stskeeps f0e2d2cb61 +- Config change in SSL.h detection part 2000-12-01 15:43:28 +00:00
stskeeps 6d64f0b505 + thanks to RexHsu and Aim
+- Fixed up CHINESE_NICK and JAPANESE_NICK, suggested by Aim, see
+  include/config.h
2000-12-01 13:59:05 +00:00
stskeeps d2d806697b +- #define CHINESE_NICK will make you able to use chinese nicks
+  thanks to RexHsu and Aim
2000-12-01 12:13:03 +00:00
stskeeps ae0dcf2bbf +- Fixed compile error found by Headbang 2000-12-01 11:57:35 +00:00
stskeeps cb0cbda5ed +- Changed CONNECTTIMEOUT to 30sec
+- Changed some _more_ credits
2000-12-01 11:49:36 +00:00
stskeeps 5d04afc6c2 +- Added infofield in /stats L for clients/listeners
+- Fixed a blocking socket thing
+- Fixed up /stats L bug
2000-12-01 11:31:23 +00:00
stskeeps 9955724ef9 +- Added infofield in /stats L for clients/listeners 2000-12-01 11:19:11 +00:00
stskeeps 052bcc180d +- Fixed a real bad /whois bug, reported by BiGi
+- Fixed a problem with /sajoin .. atleast possible
2000-12-01 09:49:20 +00:00
stskeeps b791a8eae9 . 2000-12-01 05:36:42 +00:00
stskeeps 143a7b6566 . 2000-12-01 04:45:33 +00:00
stskeeps fc2bf10e3a +- Fixed a real bad /whois bug, reported by BiGi 2000-11-30 18:24:44 +00:00
stskeeps 290495c0ad . 2000-11-30 18:06:31 +00:00
stskeeps 07a6922d5c . 2000-11-30 18:04:43 +00:00
stskeeps 59a23b3ce6 . 2000-11-30 18:03:06 +00:00
stskeeps df07c7f133 . 2000-11-30 18:01:41 +00:00
stskeeps 17932efad0 . 2000-11-30 17:59:09 +00:00
stskeeps 82a657a63e +- Fixed a /whois bug, reported by BiGi 2000-11-30 17:56:53 +00:00
stskeeps 12c9891916 . 2000-11-30 17:53:30 +00:00
stskeeps 9511d161c6 . 2000-11-30 17:08:06 +00:00
stskeeps 1e39df2cb8 . 2000-11-30 16:50:35 +00:00
stskeeps 6cdc422490 *** empty log message *** 2000-11-30 16:49:22 +00:00
stskeeps d6247b9a19 +- Added some credits 2000-11-30 16:45:17 +00:00
stskeeps a896d4f71d +- Added hatblade's files 2000-11-30 16:39:29 +00:00
stskeeps ef7c0d6672 . 2000-11-30 13:31:06 +00:00
stskeeps 7adf05ab64 +- Added SICI information, Donation information, fixed a ./Config problem
+  overwriting certs ..
2000-11-30 13:16:00 +00:00
stskeeps 4eda3e1752 +- Fixed a typo in ssl.c 2000-11-30 11:19:54 +00:00
stskeeps d7a342fed1 +- If a +r user is /who'ed, it shows a "r" in flags field. Suggested by
+  Mirar.
2000-11-30 07:16:41 +00:00
stskeeps 8894015354 +- Fixed overflow in SJOIN
+- Added SMO *, all users
2000-11-29 21:03:41 +00:00
stskeeps 9019f35565 +- Fixed some /whois channels code, which may break +I /whois 2000-11-28 07:19:05 +00:00
codemastr 92cdd762c4 added code to makenet to stop fake submissions 2000-11-26 20:33:43 +00:00
stskeeps 8dce2d175c +- Removed "on network" in /whois oper 2000-11-26 10:31:10 +00:00
codemastr 2b78d45287 fixed a /map bug where U:lines were showed when HIDE_ULINES was set 2000-11-25 20:45:38 +00:00
stskeeps fd6eed4477 . 2000-11-25 13:43:48 +00:00
codemastr 7461b22a16 updated docs 2000-11-24 18:07:30 +00:00
codemastr 0588f18cbb ... 2000-11-24 16:41:59 +00:00
stskeeps b318e6a66a +- Added some network files and even more network files
+- Fixed some copyright stuff in ssl.c
+- Fixed a /map problem
2000-11-24 15:05:18 +00:00
stskeeps 4e26bd1379 . 2000-11-24 06:13:51 +00:00
codemastr dba0d3b7c0 added more network files 2000-11-24 01:24:44 +00:00
codemastr 9159c377de added some network files 2000-11-23 21:08:02 +00:00
stskeeps 4712fe781c +- Added some more support for some even more SJB64 stuff 2000-11-23 19:37:16 +00:00
codemastr d0f4a514d4 added some SJB64 stuff 2000-11-23 19:25:12 +00:00
codemastr 6c59c5b733 removed CRYPTOIRCD 2000-11-23 19:08:02 +00:00
stskeeps 8c96800c80 +- Removed last point of confusion in ALN/NS 2000-11-23 18:52:57 +00:00
stskeeps 7df008ead4 +- Changed some stuff with SSL, you may want to seperate server.pem into
+  server.key.pem and server.cert.pem (or "rm Makefile" and "./Config")
+- Fixed a couple of SJOIN/Link problems detected by Curt|s
2000-11-22 20:38:00 +00:00
codemastr 7b068178a1 fixed a mass G:line bug in /rehash 2000-11-22 19:34:14 +00:00
stskeeps e4a1669632 . 2000-11-22 15:15:47 +00:00
stskeeps bba7e664b6 +- Added so /gline and /shun accepts time periods in 1d2h3s etc. a recode of
+  some potvin stuff
+- Added so blocking is only effective when SSL_connect()'ing
2000-11-22 12:25:28 +00:00
stskeeps 108639b960 +- Fixed cutoff server infos in synch 2000-11-22 07:14:03 +00:00
stskeeps 7a3d7c8b7f +- Added OPT target OPT_SJB64 and OPT_NOT_SJB64
+- Made SSL server<->server work, using __blocking__ sockets (this is only
+  in connect moment thou) -stskeeps
+- Removed 1.0 msg/s when not in HTM
2000-11-21 21:46:19 +00:00
stskeeps 32f0e3f871 *** empty log message *** 2000-11-21 19:39:54 +00:00
stskeeps 678ac0f7cf +- Added SJOIN (SJ3 only) instead of JOIN/MODE in /join and discovered a bug in
+  SJOIN code, that if the line doesnt have a " " appeneded, it wont take the
+  last users or first for that sake. Hopefully patched SJ3 code for it
+- Added OPT target OPT_SJB64 and OPT_NOT_SJB64
2000-11-21 18:42:45 +00:00
stskeeps f6a0415148 +- Fixed-fixed-fixed the U:line branching thing made by codemastr
+- Fixed a G: line-turn-into Z:line problem, reported by eYe-Man
2000-11-21 16:33:58 +00:00
stskeeps 0505a1ff50 +- Removed remapping fds, and did a severe select() speedup, suggested by
+  Demiurgus. Should speed CPU a lot
2000-11-19 22:22:43 +00:00
codemastr 5b515b86b4 updated some messages 2000-11-19 20:37:50 +00:00
stskeeps af8b08775d +- Fixed-fixed-fixed the \r\n bug and removed some useless cpu wasting code 2000-11-19 20:29:43 +00:00
stskeeps ae3936aca5 +- Fixed \r\n bug, hopefully
+- made SSL use same cert client/server
+- Fixed help.c bug reported by Curt|s
+- Different fixes, unreal.tspre.org -> unrealircd.com
2000-11-19 19:45:02 +00:00
stskeeps 3a5e5ee45a +- Fixed the masskill bug, hopefully. Was a delimiter/number array bug in
+  find_server_b64_or_real, causing negative base64 to be accepted (bad).
+  value 1-256 will never be able to be in two letters (a server name)
2000-11-19 18:26:20 +00:00
stskeeps e6b2159245 +- Fixed the "Bad file descriptor" bug in SSL. This bugfix may be a bit risky
+  as it is manipulating BIO fds. The reason openssl freaked at this, was
+  that when a fd is closed, we change fds from 4 to 3 etc, in other words,
+  we renumber fds. SSL didn't know this and if you would call SSL_set_fd it
+  would close the connection/crash. Added SSL_change_fd() to change the FD
+  directly through BIO_set_fd.
2000-11-19 18:05:03 +00:00
codemastr 4639a2b229 Replaced +I with +V in an error message 2000-11-17 00:18:16 +00:00
stskeeps 648677c637 +- Fixed +d (deaf) so it works again
+- Fixed a SJOIN3<->services problem
2000-11-16 09:02:54 +00:00
codemastr 0c9f2aa846 Removed some leftovers from the &channel code (which fixed a minor bug as well) 2000-11-15 23:33:14 +00:00
codemastr ef3397baf6 TODO updated 2000-11-12 22:15:16 +00:00
stskeeps 293125eb84 +- #define STATSWRITING will make ircd write ircd.stats every 4 seconds,
+  idea/sortof by WaveRide
+    Format of ircd.stats:
+       <global users>
+       <global invisible users>
+       <global servers>
+       <irc operators>
+       <unknown connections>
+       <local clients>
+       <local servers>
+       <local max clients>
+       <global max clients>
2000-11-12 17:57:05 +00:00
stskeeps 7e8ecc7dac +- Fixed NO_OPEROVERRIDE bug reported by otherguy 2000-11-12 15:04:33 +00:00
stskeeps 7debfeb86a . 2000-11-10 21:05:54 +00:00
stskeeps 02582580dd +- Added /botserv /bs command, patch by ATHnet.de 2000-11-10 21:01:11 +00:00
drbin 50d67017fc removing accidental commit 2000-11-10 20:37:22 +00:00
stskeeps 5b6dbb1e54 fixes 2000-11-10 14:34:34 +00:00
stskeeps 98c6c668ae . 2000-11-07 14:47:50 +00:00
stskeeps 9dfc0828f9 . 2000-11-07 14:41:38 +00:00
stskeeps 5a93d1a5e9 +- Fixed the masskill bug with replacing "Server Exists" code.. i removed it
+  accidentialy last time
2000-11-07 05:51:14 +00:00
codemastr f97882d2bb fixed some bugs 2000-11-05 20:29:54 +00:00
stskeeps 41e02c72a0 +- Fixed compile error with SSL 2000-11-05 19:36:11 +00:00
stskeeps e64c18860f . 2000-11-05 18:15:55 +00:00
codemastr 6510adeb23 memory clean ups 2000-11-04 19:02:24 +00:00
stskeeps f954969f7d +- Possible fixed a internal server list bug 2000-11-02 17:14:47 +00:00
stskeeps fea8930bb2 +- Autodetects /usr/sbin/openssl now, thanks trinity
+- Fixes a missing : in SJOIN
2000-11-01 06:13:54 +00:00
codemastr d51af6f8b5 tokenized PING and PONG 2000-10-30 21:47:54 +00:00
stskeeps 6d9e619b26 +- Possible fixed some b64 bugs 2000-10-30 15:46:44 +00:00
stskeeps 2fd3104391 . 2000-10-29 18:48:15 +00:00
stskeeps bea668a89f +- Probably fixed the hash bug, again. 2000-10-29 18:19:44 +00:00
codemastr c2de53cf85 Fixed the /list showing only 64 channels bug 2000-10-29 18:02:59 +00:00
stskeeps d0404fd0e8 +- Added TS2ts (supporting the SJB64 stuff), and fixed the !0 timestamp bug 2000-10-29 17:25:08 +00:00
stskeeps 4fb309fbde -- Fixed a wierd channel message bug
+- Fixed a wierd channel message bug ||
+- Fixed a bug where non-NS servers would crash when linking
2000-10-29 16:08:20 +00:00
stskeeps e50d397e93 . 2000-10-29 12:22:19 +00:00
stskeeps 8735a0f6bf . 2000-10-29 12:17:49 +00:00
stskeeps b6e61e1302 +- Fixed bug where duplicate numerics could occur
+- Fixed the hashing bug (thank you ROXnet ...)
2000-10-29 10:57:18 +00:00
stskeeps 2353bd2011 . 2000-10-29 10:40:31 +00:00
stskeeps 56dc3a3e1d . 2000-10-29 09:17:19 +00:00
stskeeps 856282da07 +- Fixed a linking bug (where did that come from) 2000-10-29 08:14:43 +00:00
stskeeps cdea0263ac +- Fixed the /list bug, reported by many people 2000-10-28 22:40:28 +00:00
stskeeps 4400b32055 +- Added some fixes on the SJB64 crashing bug, and added tokenization in
+  channel messsages (yahooooo!)
2000-10-28 20:57:24 +00:00
codemastr 714c97b006 Added chmode +N - no nick changes 2000-10-28 19:04:09 +00:00
codemastr 2c5abc8c2d removed sendto_helpops 2000-10-28 17:07:51 +00:00
stskeeps 00b464154b +- Fixed the SJB64 bugs that misplaced users 2000-10-28 15:42:27 +00:00
codemastr e534e67628 made use of ircsprintf in more places 2000-10-27 22:28:41 +00:00
codemastr 10bc9a408b made IsULine take 1 param 2000-10-27 20:50:58 +00:00
codemastr 8a95221fae various fixes 2000-10-26 22:12:47 +00:00
stskeeps 71bdc5c08d +- Added protoctl SJB64, which adds B64-9 timestamps to many timestamping
+  operations
+- Added ircsprintf %B (base64-9^10) with ! as prefix, and %b (no prefix)
2000-10-26 17:09:35 +00:00
stskeeps 857b3c3a84 +[Unreal3.1.1-Darkshades]
+- Fixed a warning in CENSOR_QUIT
+- Fixed the G:Line user wrongly matching (ip-alike addys didnt check user)
2000-10-26 16:01:32 +00:00
stskeeps 7eb9d0e71a +- Made find_server_b64_or_real be a little faster, possible fixing bug
+- Made /stats s checking check for sanity or insanity (ignore them for 0
+  numerics)
+- Fixed SJOIN (mp2parv) bug, that caused insane desynchs
+- Changed Cannot find server message to be to sendto_realops
+- Fixed a warning in CENSOR_QUIT
2000-10-26 13:50:44 +00:00
stskeeps f4fde73489 . 2000-10-25 18:32:45 +00:00
stskeeps 14bb1968ba Index: Changes
===================================================================
RCS file: /home/cmunk/ircsystems/cvsroot/unreal/Changes,v
retrieving revision 1.1.1.1.2.1.2.1.2.258
diff -u -r1.1.1.1.2.1.2.1.2.258 Changes
--- Changes	2000/10/22 17:51:31	1.1.1.1.2.1.2.1.2.258
+++ Changes	2000/10/25 18:26:37
@@ -638,3 +638,5 @@
 - Merged in changes from TEMPcvs branch
 - Fixed a /UNSQLINE para problem, found by Joe
 - #define SHOW_SECRET now allows all ircops to see +s channels in /whois.  If not defined, only net/tech admins can.
+- Added #define CENSOR_QUIT, for WaveRide
+- Fixed hashing bug that caused the server to crash on exit
2000-10-25 18:26:40 +00:00
angel11 ee31dd9fa0 Changed the way +s channels show up in /whois 2000-10-22 17:51:31 +00:00
stskeeps 30be1fa550 +- Fixed a /UNSQLINE para problem, found by Joe 2000-10-22 06:35:50 +00:00
stskeeps aa0ac19e18 +- Changed ./Config to detect SSL better, and generate certificates properly
+- Removed some annoying logging in ssl.c
+- Merged in changes from TEMPcvs branch
2000-10-21 06:56:22 +00:00
stskeeps 8c481239de +- Made SHOWCONNECTNOTICES work properly again, also with SSL 2000-10-07 18:51:36 +00:00
codemastr 8297e30cd4 .. 2000-10-07 18:28:19 +00:00
codemastr 0983f82c08 Added some P:line flags 2000-10-07 18:08:08 +00:00
stskeeps 554f1a0c15 +- Added SSL connections, open ports with P:ip:s:*:port to make them SSL
+  ports, made after hq.alert.sk's implementation
2000-10-07 06:34:33 +00:00
stskeeps e94bf80328 SSL support for UnrealIRCD! 2000-10-07 06:33:42 +00:00
stskeeps 5b3b13772b *** empty log message *** 2000-10-04 18:22:07 +00:00
stskeeps 32122c7018 .. 2000-09-17 15:24:01 +00:00
drbin a1b617b6d0 *** empty log message *** 2000-09-17 15:19:54 +00:00
drbin a46f14412d Fixed Bug in Win32 New DNS system ... bloody pointers and locking 2000-09-17 15:18:05 +00:00
drbin 0f2dd2ef18 NewDNS System 2000-09-17 11:43:36 +00:00
cvs2hg bfb98ee28f fixup commit for tag 'unreal3_1_sf' 2000-09-17 10:11:43 +00:00
stskeeps b0c04f4b43 . 2000-09-17 10:11:42 +00:00
stskeeps 362ec0b08d +- Fixed the passwd NICK problem 2000-09-16 19:39:33 +00:00
stskeeps b3fc0f5d6b +- FIXED "BUG" caused by NEWDNS *shrug* 2000-09-16 18:21:29 +00:00
drbin 40075204f0 NewDNS 2000-09-15 20:42:06 +00:00
drbin 9de62da6f3 NewDNS syetem 2000-09-15 20:32:19 +00:00
drbin 98047de919 New DNS UPDATE 2000-09-15 20:16:11 +00:00
stskeeps 29b4c9c983 +- Possible fixed the SJOIN kick bug (mode +Q), servers can now always kick 2000-09-10 18:08:39 +00:00
stskeeps 5392dd8acf +- Fixed /mode # + bug reported by PhatNet/Mind 2000-09-09 20:34:16 +00:00
codemastr 8f561e9337 added LIST_SHOW_MODES to list chmodes in /list 2000-09-09 19:21:47 +00:00
codemastr 6a356f7e2d fixed -Wall warnings 2000-09-08 21:58:11 +00:00
codemastr 978dd4071e Major changes to the way +I works 2000-09-07 21:10:40 +00:00
angel11 72cd2b5e99 Fixed two files that got screwed up in commit (my bad) 2000-09-04 20:18:25 +00:00
angel11 0fdef4f961 Away msgs no longer in whowas 2000-09-04 20:06:12 +00:00
codemastr 73e45d7537 fixed some +K bugs 2000-09-04 19:39:19 +00:00
stskeeps 493ba9981f +- Modified and fixed the NOTICE bug totally, with some waste of the nospoof
+  system
2000-09-03 18:16:25 +00:00
stskeeps cd4349598d +- Fixed a wierd NOTICE bug 2000-09-03 16:54:16 +00:00
stskeeps 537a91666e +- Fixed some REAL dumb find_server_quick bugs 2000-09-03 16:35:30 +00:00
drbin b6dee3fd9d *** empty log message *** 2000-09-02 21:48:28 +00:00
drbin 6cbcc627cf *** empty log message *** 2000-09-02 21:32:59 +00:00
drbin 2bb36dd76c *** empty log message *** 2000-09-02 20:58:40 +00:00
drbin e486efb289 *** empty log message *** 2000-09-02 20:48:41 +00:00
drbin 5c0151f976 Simple Usage Docs for wircd 2000-09-02 20:39:30 +00:00
drbin c5b7e0c1e7 *** empty log message *** 2000-09-02 20:24:33 +00:00
drbin 88c77ce89e *** empty log message *** 2000-09-02 20:16:31 +00:00
codemastr e85a37b814 removed /users and all utmp calls 2000-09-02 17:37:35 +00:00
codemastr a7ee96c3ce fixed a bug when running the ircd with -h 2000-09-02 16:32:28 +00:00
drbin 377d9554d3 Fixed previous thing again 2000-09-02 16:03:15 +00:00
drbin ea41e25761 fixed "if (sptr->passwd[0])" causing win32 fault 2000-09-02 15:50:07 +00:00
stskeeps f564867259 . 2000-09-02 11:34:35 +00:00
stskeeps 23438196eb Fixed a NOTICE bug 2000-09-02 07:52:18 +00:00
stskeeps 55a0b03f03 . 2000-09-02 07:48:52 +00:00
codemastr e68c66b260 ... 2000-09-01 21:09:21 +00:00
codemastr 7cbbef2e36 Made aClient->passwd dynamically allocated 2000-09-01 20:52:00 +00:00
codemastr ecdce7061b Made cached MOTDs dynamically allocated 2000-09-01 20:13:55 +00:00
codemastr 87ca77c48e made some updates to ./update 2000-09-01 15:49:31 +00:00
codemastr cca7cffb93 Fixed some morew -Wall warnings 2000-09-01 14:28:17 +00:00
codemastr bb4f0e3393 fixed some -Wall warnings, and removed all unused vars 2000-08-31 22:05:34 +00:00
stskeeps d83fb7d37f + - Added WHOIS command (working) to IRCbot-
+- Fixed a fun doublechar token problem (the AA unknown command)
2000-08-26 19:26:02 +00:00
stskeeps c07a9207ca +- Added IRCd bot (raw commands) and the IRC bot, webtv.c 2000-08-26 19:05:09 +00:00
stskeeps 7cde16eac1 +- Added IRCd bot (raw commands) and the IRC bot, webtv.c 2000-08-26 15:52:44 +00:00
stskeeps e03c9bdf42 +- Fixed another SJOIN problem, but not the exact one i was looking for 2000-08-26 14:24:22 +00:00
stskeeps 582e6b9f30 +- Removed SUMMON totally 2000-08-25 19:39:54 +00:00
stskeeps ad8a1bf785 +- More memory cleanups, changed aClient->refcnt to a signed char,
+  aClient->hopcount to unsigned char
+- Changed aChannel->mode.msgs & .per to unsigned short, and changed
+  .kmode to unsigned char
+- Changed aChannel->users to unsigned short (max 65536 users per channel)
+  and FloodOpt->nmsg to an unsigned short
2000-08-25 19:30:41 +00:00
codemastr 3e6f1fce93 more memory cleanups 2000-08-25 19:20:54 +00:00
codemastr 18dde16b11 memory cleanups 2000-08-25 18:40:09 +00:00
stskeeps d3cfcdc6b0 - Removed the ERR_NOTONCHANNEL message in numeric.c =P 2000-08-25 17:52:44 +00:00
stskeeps cccda143b1 Last part of fix 2000-08-25 17:32:24 +00:00
stskeeps 649b5d812e -
+- Fixed the G:line bugs, i hope - moved tkl_sweep into a loopstruct
2000-08-25 17:29:24 +00:00
stskeeps e3339d4003 eek 2000-08-25 16:20:41 +00:00
stskeeps 1786f8f03b same as above 2000-08-25 16:18:57 +00:00
stskeeps c28527ade3 . 2000-08-25 16:18:11 +00:00
stskeeps 90f0809b44 . 2000-08-25 15:41:37 +00:00
stskeeps dc5f3390bc . 2000-08-22 15:40:28 +00:00
stskeeps 25760a38f1 . 2000-08-22 15:40:27 +00:00
stskeeps 18c669cf47 .. 2000-08-22 15:30:56 +00:00
cvs2hg ae21e16beb fixup commit for tag 'unreal3_1_plus' 2000-08-20 11:58:24 +00:00
stskeeps 623f6a44a0 . 2000-08-20 11:58:23 +00:00
stskeeps 4981573f80 +- Fixed /server so it doesnt support SERVER name :info anymore.. 2000-08-20 08:21:46 +00:00
stskeeps cb5de25f7e . 2000-08-20 08:04:39 +00:00
stskeeps ae1a133435 +- Made /kick for opers only be possible for netadmin/techadmin 2000-08-20 08:03:13 +00:00
stskeeps fc1a6c313b +- Fixed ban merging/similar bug in SJOIN 2000-08-19 17:48:58 +00:00
stskeeps 601d97dd93 +- Fixed some problems/typos/notlookingsogood (TM) bugs, in the tkl code 2000-08-19 17:44:44 +00:00
codemastr b69361e947 fixed a typo in /vhost 2000-08-19 17:25:38 +00:00
stskeeps c064f9d5e9 +- Removed INV_TRACK 2000-08-19 15:09:38 +00:00
stskeeps fe866e500b . 2000-08-19 15:06:57 +00:00
stskeeps 0bb293925d +- Made vhost strip too long vhosts 2000-08-19 14:40:42 +00:00
stskeeps fe95cb9a1f + and dynconf, chrestrict 2000-08-19 14:28:23 +00:00
stskeeps cd277778a3 . 2000-08-19 13:59:45 +00:00
stskeeps 7bc10582c5 +- Added some portability stuff 2000-08-19 13:49:35 +00:00
stskeeps b93a3e9e93 Checkmate 2000-08-19 13:36:02 +00:00
stskeeps 06a6b4c07f Index: Changes
===================================================================
RCS file: /home/cmunk/ircsystems/cvsroot/unreal/Changes,v
retrieving revision 1.1.1.1.2.1.2.1.2.201
diff -u -r1.1.1.1.2.1.2.1.2.201 Changes
--- Changes	2000/08/18 19:04:02	1.1.1.1.2.1.2.1.2.201
+++ Changes	2000/08/19 10:08:57
@@ -560,3 +560,4 @@
 - Added IRIX support (does it work?)
 - Fixed crypter so it actually functions (Makefile now sets mode 700) and
   it encrypts X and N lines too.
+- Fixed empty mode sends in register_user, reported by Bagge
2000-08-19 10:08:58 +00:00
angel11 34b46855a2 Fixed crypter 2000-08-18 19:04:02 +00:00
codemastr 65393c21ca *** empty log message *** 2000-08-18 16:44:35 +00:00
codemastr 0c9fd1139c added IRIX support (does it work?) 2000-08-18 16:44:06 +00:00
codemastr d5da9ddb9e fixed a +h bug 2000-08-18 16:14:24 +00:00
stskeeps 70873bcf00 Index: Changes
===================================================================
RCS file: /home/cmunk/ircsystems/cvsroot/unreal/Changes,v
retrieving revision 1.1.1.1.2.1.2.1.2.197
diff -u -r1.1.1.1.2.1.2.1.2.197 Changes
--- Changes	2000/08/17 19:27:59	1.1.1.1.2.1.2.1.2.197
+++ Changes	2000/08/18 16:02:24
@@ -555,3 +555,4 @@
   badwords :P, does not work in channels
 - Removed the old GLINE system, TKL is now standard.
 - Added INV_TRACK define, we want people testing this.
+- Fixed the -1 usercount bug, found by codemastr, fixed by Stskeeps
2000-08-18 16:02:25 +00:00
stskeeps a3ec5a5fb8 +- Removed the old GLINE system, TKL is now standard.
+- Added INV_TRACK define, we want people testing this.
2000-08-17 19:28:00 +00:00
stskeeps c0f596fbb7 + badwords :P, does not work in channels
+- Removed the old GLINE system, TKL is now standard.
\ No newline at end of file
2000-08-16 16:51:55 +00:00
stskeeps 4ae6cd2bf4 Index: Changes
===================================================================
RCS file: /home/cmunk/ircsystems/cvsroot/unreal/Changes,v
retrieving revision 1.1.1.1.2.1.2.1.2.194
diff -u -r1.1.1.1.2.1.2.1.2.194 Changes
--- Changes	2000/08/13 19:03:33	1.1.1.1.2.1.2.1.2.194
+++ Changes	2000/08/15 19:42:31
@@ -550,3 +550,6 @@
 - Fixed a bug with mkpasswd on OpenBSD
 - Added desynch +e warning, and updated ./update enough ...
 - Updated update to work better, and that you can use lynx instead of wget
+- Added #undef SHUN_NOTICES, to add notices for users who are shunned
+- Fixed bug with U:Lines should be able to privmsg/notice and recieve
+  badwords :P, does not work in channels
\ No newline at end of file
2000-08-15 19:42:32 +00:00
codemastr 242d9ab45d ... 2000-08-14 18:47:12 +00:00
stskeeps a4d4b20b2c Index: Changes
===================================================================
RCS file: /home/cmunk/ircsystems/cvsroot/unreal/Changes,v
retrieving revision 1.1.1.1.2.1.2.1.2.193
diff -u -r1.1.1.1.2.1.2.1.2.193 Changes
--- Changes	2000/08/13 17:28:30	1.1.1.1.2.1.2.1.2.193
+++ Changes	2000/08/13 19:03:33
@@ -548,4 +548,5 @@
   problem
 - Hopefully fixed the +x problem
 - Fixed a bug with mkpasswd on OpenBSD
-- Added desynch +e warning, and updated ./update enough ...
\ No newline at end of file
+- Added desynch +e warning, and updated ./update enough ...
+- Updated update to work better, and that you can use lynx instead of wget
2000-08-13 19:03:33 +00:00
stskeeps d42135097a . 2000-08-13 18:34:04 +00:00
stskeeps 9c4d0c511a . 2000-08-13 17:28:30 +00:00
stskeeps 85790c8442 Index: Changes
===================================================================
RCS file: /home/cmunk/ircsystems/cvsroot/unreal/Changes,v
retrieving revision 1.1.1.1.2.1.2.1.2.191
diff -u -r1.1.1.1.2.1.2.1.2.191 Changes
--- Changes	2000/08/13 16:09:57	1.1.1.1.2.1.2.1.2.191
+++ Changes	2000/08/13 17:24:47
@@ -548,3 +548,4 @@
   problem
 - Hopefully fixed the +x problem
 - Fixed a bug with mkpasswd on OpenBSD
+- Added desynch +e warning, and updated ./update enough ..
\ No newline at end of file
2000-08-13 17:24:48 +00:00
codemastr c0c478112f Fixed a bug with mkpasswd on OpenBSD 2000-08-13 16:09:58 +00:00
cvs2hg 5406e9fa99 fixup commit for tag 'unreal3_1_fixpack1' 2000-08-13 15:29:15 +00:00
stskeeps 030b9c8291 cvs diff -u Changes 2000-08-13 15:29:14 +00:00
stskeeps 4493453545 . 2000-08-13 15:03:06 +00:00
stskeeps df0a433709 Index: Changes
===================================================================
RCS file: /home/cmunk/ircsystems/cvsroot/unreal/Changes,v
retrieving revision 1.1.1.1.2.1.2.1.2.187
diff -u -r1.1.1.1.2.1.2.1.2.187 Changes
--- Changes	2000/08/11 19:31:50	1.1.1.1.2.1.2.1.2.187
+++ Changes	2000/08/13 14:39:47
@@ -543,3 +543,4 @@
 - Added Dianora's /userhost
 - Recoded /links using NS
 - Recoded /map a bit using NS, and added usercounts to Server struct
+- Some crazy time_t -> TS stuff, will save us some time in 2038
2000-08-13 14:39:49 +00:00
stskeeps 6c3bbf0009 *** empty log message *** 2000-08-11 19:34:45 +00:00
stskeeps bf7a3d3133 +- Recoded /map a bit using NS, and added usercounts to Server struct 2000-08-11 19:31:51 +00:00
stskeeps fb602a74e4 Index: Changes
===================================================================
RCS file: /home/cmunk/ircsystems/cvsroot/unreal/Changes,v
retrieving revision 1.1.1.1.2.1.2.1.2.185
diff -u -r1.1.1.1.2.1.2.1.2.185 Changes
--- Changes	2000/08/11 18:01:14	1.1.1.1.2.1.2.1.2.185
+++ Changes	2000/08/11 18:34:57
@@ -541,3 +541,4 @@
 - Fixed a STRIPBADWORDS bug
 - Fixed a BotMOTD bug
 - Added Dianora's /userhost
+- Recoded /links using NS
2000-08-11 18:34:58 +00:00
stskeeps 040d480e99 Index: Changes
===================================================================
RCS file: /home/cmunk/ircsystems/cvsroot/unreal/Changes,v
retrieving revision 1.1.1.1.2.1.2.1.2.184
diff -u -r1.1.1.1.2.1.2.1.2.184 Changes
--- Changes	2000/08/08 22:29:15	1.1.1.1.2.1.2.1.2.184
+++ Changes	2000/08/11 18:01:13
@@ -540,3 +540,4 @@
 - Fixed a PART bug
 - Fixed a STRIPBADWORDS bug
 - Fixed a BotMOTD bug
+- Added Dianora's /userhost
2000-08-11 18:01:15 +00:00
codemastr c90d13174d fixed a botmotd bug 2000-08-08 22:29:16 +00:00
codemastr 97e41a7e42 various fixes 2000-08-08 17:22:36 +00:00
stskeeps 7b6582bdcc . 2000-08-08 04:48:46 +00:00
stskeeps 5fde2907f5 *** empty log message *** 2000-08-07 17:48:06 +00:00
cvs2hg 71ce47a71b fixup commit for tag 'unreal3_1_final' 2000-08-07 17:21:49 +00:00
cvs2hg 98b483ee88 fixup commit for tag 'unreal3_1' 2000-08-07 17:21:48 +00:00
stskeeps 4ee74b07e3 *** empty log message *** 2000-08-07 17:21:47 +00:00
stskeeps d33f4a8120 Index: Changes
===================================================================
RCS file: /home/cmunk/ircsystems/cvsroot/unreal/Changes,v
retrieving revision 1.1.1.1.2.1.2.1.2.179
diff -u -r1.1.1.1.2.1.2.1.2.179 Changes
--- Changes	2000/08/07 16:16:14	1.1.1.1.2.1.2.1.2.179
+++ Changes	2000/08/07 16:56:17
@@ -530,3 +530,4 @@
   Config, and all the things we want them to read/do to compile the IRCd
 - Updated PREFIX Client Protoctl
 - Added ^MrMike^'s command list, this one will be updated
+- Removed ID_CVS, hopefully fixing some bastard stuff
2000-08-07 16:56:31 +00:00
stskeeps b7920658e4 *** empty log message *** 2000-08-07 16:16:58 +00:00
stskeeps 135b4d9d87 Index: Changes
===================================================================
RCS file: /home/cmunk/ircsystems/cvsroot/unreal/Changes,v
retrieving revision 1.1.1.1.2.1.2.1.2.178
diff -u -r1.1.1.1.2.1.2.1.2.178 Changes
--- Changes	2000/08/07 16:08:24	1.1.1.1.2.1.2.1.2.178
+++ Changes	2000/08/07 16:16:14
@@ -529,3 +529,4 @@
 - Added script ./Setup which makes the user forced through Unreal.nfo, FAQ,
   Config, and all the things we want them to read/do to compile the IRCd
 - Updated PREFIX Client Protoctl
+- Added ^MrMike^'s command list, this one will be updated
2000-08-07 16:16:15 +00:00
codemastr 8af8d17d52 fixed PREFIX= 2000-08-07 16:08:24 +00:00
stskeeps d11a065d37 *** empty log message *** 2000-08-07 16:05:37 +00:00
stskeeps 771dee3a5f *** empty log message *** 2000-08-07 15:50:44 +00:00
stskeeps ea519e2a6d . 2000-08-07 15:12:10 +00:00
stskeeps 9ddffa08ea *** empty log message *** 2000-08-07 15:11:11 +00:00
stskeeps 1e7c36aac0 +- Added script ./Setup which makes the user forced through Unreal.nfo, FAQ,
+  Config, and all the things we want them to read/do to compile the IRCd
2000-08-07 15:09:06 +00:00
stskeeps 3de653cbf2 . 2000-08-07 15:03:10 +00:00
stskeeps 4a08c9ba70 *** empty log message *** 2000-08-07 14:52:24 +00:00
stskeeps b750382333 . 2000-08-07 12:49:22 +00:00
stskeeps 98eb86460b . 2000-08-06 15:22:44 +00:00
stskeeps 3026350806 +- Made find_server_quick a prototype, and made some work more quicker as
+  well
2000-08-06 13:29:46 +00:00
stskeeps da3100e642 +- Changed some find_server(name, NULL) to find_server_quick to speed up
+  lookup of servers
2000-08-06 13:21:52 +00:00
stskeeps 6c1cefed98 Index: Changes
===================================================================
RCS file: /home/cmunk/ircsystems/cvsroot/unreal/Changes,v
retrieving revision 1.1.1.1.2.1.2.1.2.171
diff -u -r1.1.1.1.2.1.2.1.2.171 Changes
--- Changes	2000/08/06 08:25:18	1.1.1.1.2.1.2.1.2.171
+++ Changes	2000/08/06 13:01:54
@@ -518,3 +518,5 @@
 - Updated ./ircd to also say to look at ircd.log
 - Fixed a SQLINE synch bug
 - Added command line option -F to prevent the ircd to fork out
+- Fixed the f*cken TKL bug
+- Fixed a netsplit bug
2000-08-06 13:01:56 +00:00
stskeeps 6f7b608fac Index: Changes
===================================================================
RCS file: /home/cmunk/ircsystems/cvsroot/unreal/Changes,v
retrieving revision 1.1.1.1.2.1.2.1.2.170
diff -u -r1.1.1.1.2.1.2.1.2.170 Changes
--- Changes	2000/08/06 08:06:36	1.1.1.1.2.1.2.1.2.170
+++ Changes	2000/08/06 08:24:08
@@ -517,3 +517,4 @@
   the ircd logs it to ircd.log and dies
 - Updated ./ircd to also say to look at ircd.log
 - Fixed a SQLINE synch bug
+- Added command line option -F to prevent the ircd to fork out
2000-08-06 08:25:18 +00:00
stskeeps 081d14d3e9 +- Fixed a SQLINE synch bug 2000-08-06 08:06:37 +00:00
codemastr 1b47753c0f made a check to see if the server name has a . in it if not, die 2000-08-04 20:16:12 +00:00
codemastr 1ebe25c025 made /knock without a reason work and some /knock clean ups 2000-08-04 19:32:00 +00:00
stskeeps 13790b01e3 *** empty log message *** 2000-08-04 12:14:24 +00:00
stskeeps 004f9222a1 *** empty log message *** 2000-08-03 11:07:46 +00:00
stskeeps c3e053033c +- Fixed a SJ3 bug with ban syncing to SJ2 servers 2000-08-03 10:56:02 +00:00
angel11 5561c155de Opers now see +s channels in /whois 2000-08-02 20:32:07 +00:00
codemastr 33c6e5c93b /chghost bug fix 2000-08-02 18:52:10 +00:00
stskeeps b7ee74ec97 +- Disabled anything with time in /list options temporary, causes bugs 2000-08-02 17:45:14 +00:00
codemastr 58f7ef9ca8 fixed a little typo in umode 2000-08-02 17:37:32 +00:00
codemastr 7f96ccb01e more +u fixes 2000-08-02 17:27:09 +00:00
codemastr 7666ceab87 fixed the ulimit core size failed bug 2000-08-02 17:11:39 +00:00
stskeeps e7c69eca78 +- Possible fixed the lopts bug (which i didnt))
+- Fixed a egcs problem in Config, the strtok bug
2000-08-02 15:59:03 +00:00
stskeeps d69bcc41fa *** empty log message *** 2000-08-02 15:46:15 +00:00
stskeeps 4d616cf680 +- Fixed the +lL (+Ll) bug, will first be fixed 100% when all is 3.1 2000-08-02 15:11:11 +00:00
stskeeps dc1eb8bddf Index: Changes
===================================================================
RCS file: /home/cmunk/ircsystems/cvsroot/unreal/Changes,v
retrieving revision 1.1.1.1.2.1.2.1.2.156
diff -u -r1.1.1.1.2.1.2.1.2.156 Changes
--- Changes	2000/08/01 17:27:52	1.1.1.1.2.1.2.1.2.156
+++ Changes	2000/08/02 14:55:29
@@ -496,3 +496,5 @@
 - Added sendto_chanops_butone because of codemastr's laziness
 - Fixed a few +u bugs
 - Fixed a +I bug (yes another one)
+- Changed channel.c so that when an opped non +q/+a Oper kicks a user who
+  is +q/+a it invokes an OperKick (patch by llthangel)
2000-08-02 14:55:33 +00:00
codemastr c9e4ba4c98 fixed a few +u bugs and a +I bug 2000-08-01 17:27:53 +00:00
stskeeps c1c1aa2909 Index: Changes
===================================================================
RCS file: /home/cmunk/ircsystems/cvsroot/unreal/Changes,v
retrieving revision 1.1.1.1.2.1.2.1.2.154
diff -u -r1.1.1.1.2.1.2.1.2.154 Changes
--- Changes	2000/08/01 16:30:15	1.1.1.1.2.1.2.1.2.154
+++ Changes	2000/08/01 16:34:06
@@ -493,3 +493,4 @@
 - Fixed SVS2MODE bug with illegal modes
 - Fixed /notice @%+ bug, where it didnt work at all
 - Fixed a small chmode +u bug
+- Added sendto_chanops_butone because of codemastr's laziness
2000-08-01 16:34:07 +00:00
codemastr 6f9606b331 fixed a small +u bug 2000-08-01 16:30:16 +00:00
stskeeps 345f51b684 -- Fixed SVS2MODE bug with illegal modes
\ No newline at end of file
+(rc2)
+- Fixed SVS2MODE bug with illegal modes
+- Fixed /notice @%+ bug, where it didnt work at all
2000-08-01 16:11:28 +00:00
stskeeps d885489c48 +- Fixed SVS2MODE bug with illegal modes
\ No newline at end of file
2000-08-01 15:54:53 +00:00
cvs2hg 4659dab89c fixup commit for tag 'unreal3_1_rc2' 2000-08-01 10:10:27 +00:00
stskeeps 760dc8dab8 .CVS: ---------------------------------------------------------------------- 2000-08-01 10:10:26 +00:00
stskeeps 5133d62d3c +- Changed channel.c so when you kick someone as halfop it doesn't show as an
+  OperKick (unless you kick an op) (reported by ^Fanta, patch by llthangel)
2000-08-01 06:11:39 +00:00
stskeeps eded88dd61 Index: Changes
===================================================================
RCS file: /home/cmunk/ircsystems/cvsroot/unreal/Changes,v
retrieving revision 1.1.1.1.2.1.2.1.2.149
diff -u -r1.1.1.1.2.1.2.1.2.149 Changes
--- Changes	2000/07/29 13:34:20	1.1.1.1.2.1.2.1.2.149
+++ Changes	2000/07/31 18:13:34
@@ -486,3 +486,4 @@
 - Fixed a problem in SVS2MODE not displaying mode changes, and well known
   why
 - Recoded SVSNOOP, but the IRCd doesn't get it at all??
+- added llthangel to credits
2000-07-31 18:13:35 +00:00
stskeeps bfb2ce7bce . 2000-07-29 18:10:48 +00:00
stskeeps 6854c9a063 *** empty log message *** 2000-07-29 13:42:37 +00:00
stskeeps 25077eadc1 +- Recoded SVSNOOP, but the IRCd doesn't get it at all?? 2000-07-29 13:34:21 +00:00
stskeeps 3f41561390 +- Introduced NS in SQLINE..
+- Fixed a problem in SVS2MODE not displaying mode changes, and well known
+  why
2000-07-29 13:02:31 +00:00
stskeeps e1499ca0ed +- Introduced NS in SQLINE.. 2000-07-29 12:37:28 +00:00
stskeeps b61f000488 +- Fixed a problem in synch using acptr->name as info line 2000-07-29 12:16:25 +00:00
stskeeps 3ae66ae4e0 +- NS introduction in sendto_serv_butone_token
+- Fixed Q:lined nick NickServ from <unregistered> on Nickname Server message
2000-07-29 11:36:43 +00:00
stskeeps 51a5fa808e *** empty log message *** 2000-07-29 08:27:21 +00:00
stskeeps 236f8ed033 +- NS introduction in sendto_serv_butone_token 2000-07-29 08:08:46 +00:00
codemastr a977359d9f fixed a _small_ memory over use 2000-07-28 20:02:52 +00:00
stskeeps 6426522201 +- Removed UPING UDP socket. Only resfd opens a udp fd now 2000-07-28 19:25:30 +00:00
stskeeps 47ddee28a4 +- Changed find_server_quick to work with masks too .. 2000-07-28 19:19:21 +00:00
stskeeps 249edda423 +- Added llthangel's whoisfix.patch, Makes sure +hv users show up as
+  %#channel instead of +#channel. Bug report by ^Fanta.
2000-07-28 19:10:26 +00:00
stskeeps bde554aaf9 Index: Changes
===================================================================
RCS file: /home/cmunk/ircsystems/cvsroot/unreal/Changes,v
retrieving revision 1.1.1.1.2.1.2.1.2.138
diff -u -r1.1.1.1.2.1.2.1.2.138 Changes
--- Changes	2000/07/26 10:46:10	1.1.1.1.2.1.2.1.2.138
+++ Changes	2000/07/28 18:57:30
@@ -472,5 +472,5 @@
 - Removed SVSMODE +l support, and fixed servicestamp and +d support
 - Changed to ircu/hybrid6/unreal mix of numeric 005
 - Fixed a SJ3 Fake Direction loopbug (kills on nick collisions)
-- NS part 1
-- SJ3 fixes
+- SJ3 fixes, loop fix
+- Added NS, new generation ALN.
2000-07-28 18:57:41 +00:00
stskeeps 9ec9cba9d9 Index: Changes
===================================================================
RCS file: /home/cmunk/ircsystems/cvsroot/unreal/Changes,v
retrieving revision 1.1.1.1.2.1.2.1.2.137
diff -u -r1.1.1.1.2.1.2.1.2.137 Changes
--- Changes	2000/07/25 15:37:52	1.1.1.1.2.1.2.1.2.137
+++ Changes	2000/07/26 10:46:07
@@ -472,4 +472,5 @@
 - Removed SVSMODE +l support, and fixed servicestamp and +d support
 - Changed to ircu/hybrid6/unreal mix of numeric 005
 - Fixed a SJ3 Fake Direction loopbug (kills on nick collisions)
-- NS part 1
\ No newline at end of file
+- NS part 1
+- SJ3 fixes
2000-07-26 10:46:10 +00:00
stskeeps f046832f10 Indentation. 2000-07-25 17:43:58 +00:00
stskeeps a055d59f9c indentiation 2000-07-25 15:41:55 +00:00
stskeeps a41b0b5bbb . 2000-07-25 15:37:54 +00:00
stskeeps bf7aad741d . 2000-07-25 14:12:42 +00:00
stskeeps cb74571261 Index: Changes
===================================================================
RCS file: /home/cmunk/ircsystems/cvsroot/unreal/Changes,v
retrieving revision 1.1.1.1.2.1.2.1.2.135
diff -u -r1.1.1.1.2.1.2.1.2.135 Changes
--- Changes	2000/07/24 21:41:30	1.1.1.1.2.1.2.1.2.135
+++ Changes	2000/07/25 09:35:40
@@ -471,3 +471,4 @@
 - Removed a SJ3 debug msg
 - Removed SVSMODE +l support, and fixed servicestamp and +d support
 - Changed to ircu/hybrid6/unreal mix of numeric 005
+- Fixed a SJ3 Fake Direction loopbug (kills on nick collisions)
2000-07-25 09:35:43 +00:00
stskeeps 993180689a Index: Changes
===================================================================
RCS file: /home/cmunk/ircsystems/cvsroot/unreal/Changes,v
retrieving revision 1.1.1.1.2.1.2.1.2.134
diff -u -r1.1.1.1.2.1.2.1.2.134 Changes
--- Changes	2000/07/24 19:33:42	1.1.1.1.2.1.2.1.2.134
+++ Changes	2000/07/24 21:41:27
@@ -470,3 +470,4 @@
 - Added base64 encoding instead, for ALN v2 (NS)
 - Removed a SJ3 debug msg
 - Removed SVSMODE +l support, and fixed servicestamp and +d support
+- Changed to ircu/hybrid6/unreal mix of numeric 005
2000-07-24 21:41:33 +00:00
codemastr aecec0e171 . 2000-07-24 20:07:01 +00:00
stskeeps 52a5b1b038 Index: Changes
===================================================================
RCS file: /home/cmunk/ircsystems/cvsroot/unreal/Changes,v
retrieving revision 1.1.1.1.2.1.2.1.2.133
diff -u -r1.1.1.1.2.1.2.1.2.133 Changes
--- Changes	2000/07/24 19:16:10	1.1.1.1.2.1.2.1.2.133
+++ Changes	2000/07/24 19:33:40
@@ -469,3 +469,4 @@
 - Removed ALN, and the ALN system.
 - Added base64 encoding instead, for ALN v2 (NS)
 - Removed a SJ3 debug msg
+- Removed SVSMODE +l support, and fixed servicestamp and +d support
2000-07-24 19:33:43 +00:00
stskeeps 9b181f575f Index: Changes
===================================================================
RCS file: /home/cmunk/ircsystems/cvsroot/unreal/Changes,v
retrieving revision 1.1.1.1.2.1.2.1.2.132
diff -u -r1.1.1.1.2.1.2.1.2.132 Changes
--- Changes	2000/07/24 18:58:13	1.1.1.1.2.1.2.1.2.132
+++ Changes	2000/07/24 19:16:08
@@ -468,3 +468,4 @@
 - Added /infoserv (you can stop bugging us now skold ;P)
 - Removed ALN, and the ALN system.
 - Added base64 encoding instead, for ALN v2 (NS)
+- Removed a SJ3 debug msg
2000-07-24 19:16:10 +00:00
stskeeps 7a9cade496 @@ -466,3 +466,5 @@
- SJ3 fixes. Let's hope this works (f*cken hell..)
 - Fixed a V:line bug
 - Added /infoserv (you can stop bugging us now skold ;P)
+- Removed ALN, and the ALN system.
+- Added base64 encoding instead, for ALN v2 (NS)
2000-07-24 18:58:18 +00:00
codemastr 009e5353e7 added /infoserv 2000-07-23 18:34:14 +00:00
stskeeps 2988283c76 . 2000-07-22 18:28:42 +00:00
stskeeps 7f3125a0e2 . 2000-07-22 17:31:22 +00:00
codemastr 07353dcf4b Fixed a V:line bug 2000-07-22 16:14:32 +00:00
stskeeps 110e114d90 +- SJ3 fixes. Let's hope this works (f*cken hell..) 2000-07-21 18:50:15 +00:00
stskeeps 8abce466d6 SJ3 fix 2000-07-17 21:06:16 +00:00
codemastr 6054bfabd2 fixed a +L bug and Config typo 2000-07-17 16:45:04 +00:00
stskeeps b1416fc0c0 . 2000-07-17 15:20:58 +00:00
stskeeps 160d1600a6 . 2000-07-17 10:11:26 +00:00
stskeeps 0ba15e3965 *** empty log message *** 2000-07-17 07:31:05 +00:00
stskeeps 5fe68141ad +- Fixed the pesky hostname bug 2000-07-17 07:04:03 +00:00
stskeeps df0815f9bd . 2000-07-16 20:32:39 +00:00
stskeeps 10ad7e34f5 . 2000-07-16 19:42:09 +00:00
stskeeps fcfb9aa3d2 . 2000-07-16 19:01:28 +00:00
codemastr b47a9f53cc added networks/shatstation.network 2000-07-16 19:00:25 +00:00
stskeeps 8617d1ba4c . 2000-07-16 18:55:11 +00:00
codemastr 9bccd6046d added networks/linuxsquare.network 2000-07-16 18:54:23 +00:00
stskeeps 1c8ea8df8c . 2000-07-16 18:49:03 +00:00
stskeeps 3f4174bb96 FUckeup stuff etc, but lets hope it works 2000-07-16 18:48:00 +00:00
codemastr d1839df783 fixed a +I bug 2000-07-16 16:58:17 +00:00
stskeeps 9390a647ed . 2000-07-16 13:39:18 +00:00
stskeeps 3856856120 . 2000-07-16 13:29:08 +00:00
stskeeps 587defb54e .
kd
2000-07-16 13:11:01 +00:00
stskeeps 047a43253c .
k
2000-07-16 13:07:18 +00:00
stskeeps f1c9feb8f7 . 2000-07-16 12:31:56 +00:00
stskeeps 81ce6d38a2 .
kxkx
2000-07-16 11:15:33 +00:00
stskeeps b57669903d .kd 2000-07-16 11:02:59 +00:00
stskeeps 0a7b6dfc3a .
k
: ----------------------------------------------------------------------
2000-07-16 10:31:38 +00:00
stskeeps 56663f23e1 . 2000-07-16 10:25:53 +00:00
stskeeps 0af5d85de7 . 2000-07-16 10:22:12 +00:00
stskeeps 5e9f767c86 Index: Changes
===================================================================
RCS file: /home/cmunk/ircsystems/cvsroot/unreal/Changes,v
retrieving revision 1.1.1.1.2.1.2.1.2.116
diff -u -r1.1.1.1.2.1.2.1.2.116 Changes
--- Changes	2000/07/16 10:07:14	1.1.1.1.2.1.2.1.2.116
+++ Changes	2000/07/16 10:17:26
@@ -449,8 +449,5 @@
 - Made it so you can remove a protoctl by putting a - in front
 - Fixed a bug in summon
 - Added protection against webproxies
-- SJ3 part 2/3 and a VL fix
-- Indentation and more SJ3 fixes
 - Fixed TKL?
-- 3/4 SJ3 fix
-- Last part SJ3
+- Added SJ3, removed the old
2000-07-16 10:17:32 +00:00
stskeeps 515945254c fixed synching 2000-07-16 10:13:01 +00:00
stskeeps 9d966aa4d0 +- Last part SJ3 2000-07-16 10:07:14 +00:00
stskeeps bf26a46b15 . 2000-07-16 08:59:02 +00:00
stskeeps 6124a68fde +- 3/4 SJ3 fix 2000-07-16 08:58:48 +00:00
codemastr 65118165d6 Fixed the TKL bug? 2000-07-15 23:56:57 +00:00
stskeeps 2e461cba19 +- Indentation and more SJ3 fixes 2000-07-14 20:22:59 +00:00
stskeeps b89bcd31d9 +- SJ3 part 2/3 and a VL fix 2000-07-14 14:47:40 +00:00
codemastr a78d71ee8b *** empty log message *** 2000-07-09 18:47:25 +00:00
stskeeps 9e7138ace5 +- Added protection against webproxies 2000-07-09 18:44:33 +00:00
codemastr 50a94daec7 fixed a bug in summon 2000-07-09 18:13:53 +00:00
codemastr 401c3918af added ability to remove a protoctl flag 2000-07-07 19:36:12 +00:00
stskeeps eb842353cc +- Tokenized nick->nick PRIVMSG and NOTICE
\ No newline at end of file
2000-07-07 12:14:51 +00:00
stskeeps 6c67a4a6b1 +- Fixed some host revealing nick collision stuff 2000-07-07 09:35:35 +00:00
codemastr 3a385f679b added networks/staticedge.network 2000-07-06 18:11:16 +00:00
codemastr 30b6a30fc5 added networks/makenet 2000-07-06 18:05:03 +00:00
stskeeps 6dd738d91c - Fixed a /rehash -garbage bug reported by Curt|s 2000-07-06 17:13:45 +00:00
stskeeps 61b2e99257 - Added a #define capability to config.h (DISABLE_USERMOD),
disables /sethost, /setident, /chgname, /chghost, /chgident
2000-07-06 08:10:20 +00:00
stskeeps 84d8b082c2 +- Added regex portablity and checks in Config 2000-07-05 22:20:41 +00:00
stskeeps fc26ef3e44 +- Fixed a msg.h location problem ..
+- Added secure connections and openssl tracing to Config
2000-07-05 16:55:14 +00:00
stskeeps 32eaeaaf36 +- Fixed a msg.h location problem ..
\ No newline at end of file
2000-07-05 16:25:39 +00:00
stskeeps 8de5089b84 Index: Changes
===================================================================
RCS file: /home/cmunk/ircsystems/cvsroot/unreal/Changes,v
retrieving revision 1.1.1.1.2.1.2.1.2.97
diff -u -r1.1.1.1.2.1.2.1.2.97 Changes
--- Changes	2000/07/05 15:11:43	1.1.1.1.2.1.2.1.2.97
+++ Changes	2000/07/05 16:25:14
@@ -436,3 +436,4 @@
 - Added VHP protoctl, (not in use in the synch). This makes virthost field
   in NICKv2 use the real virthost even if its +t. (Thanks to SL7)
 - Added support for the CR Java Chat auto join feature
+- Fixed a msg.h location problem ..
\ No newline at end of file
2000-07-05 16:25:19 +00:00
codemastr 3d7b0b6a0b added support for the CR Java Chat autojoin feature 2000-07-05 15:11:43 +00:00
stskeeps 04e9baae17 - Removed any trace of MD5, we use random() for nospoof now, this fixed a
license problem too
- Removed NOSPOOF_SEED01 and 02
- Added VHP protoctl, (not in use in the synch). This makes virthost field
  in NICKv2 use the real virthost even if its +t. (Thanks to SL7)
2000-07-05 13:05:34 +00:00
stskeeps 8a93ea7376 +- Fixed a sendto_serv_butone_token problem 2000-07-04 18:21:41 +00:00
stskeeps fa2a2c2234 - Added doc/crypto.doc describing the encrypted irc protocol 2000-07-04 11:25:37 +00:00
stskeeps 36154d7b10 - Added so stuff like Lost connection to, (report_error) only goes to realops
- Added some more descriptive error messages
2000-07-03 19:25:07 +00:00
stskeeps 5fcadbef9b .
k
2000-07-03 17:25:51 +00:00
codemastr ce9e5c4c84 Added OpenBSD 2.x support 2000-07-02 19:53:31 +00:00
codemastr d6fe0776a2 Fully added V:lines 2000-07-02 00:41:12 +00:00
stskeeps d5fd9a6ce9 +- Fixed some aligning in the VL PROTOCTL
+- Fixed some fucked up passwd stuff again ..
2000-07-01 12:59:00 +00:00
stskeeps 32fc008943 +- Fixed some aligning in the VL PROTOCTL 2000-07-01 10:50:56 +00:00
stskeeps 78545d38dc +- Fixed a crash problem on /quit or /squit 2000-06-30 20:51:03 +00:00
stskeeps 620c7e403d +- Fixed so that in +c it shows if a user is connected securely
+- Backported the passwd stuff, not needed.
2000-06-30 20:28:00 +00:00
codemastr 8ba0a10294 some V:line stuff 2000-06-30 16:33:03 +00:00
codemastr 8b0a1de92f added fclose() calls to vhost, dccdeny, and chrestrict confs 2000-06-29 18:18:37 +00:00
stskeeps b776a4d148 +- Fixed a ->passwd bug caused by codemastr.. 2000-06-29 12:23:26 +00:00
stskeeps a0dcb79a3a +- Added some more crypto stuff
+    - /crypto <algoritm> <keyfile laying in keys/> <parameters>
2000-06-28 20:54:49 +00:00
stskeeps 63e1fa2418 . 2000-06-28 19:45:39 +00:00
stskeeps f2d364aa8a +- Fixed crypto stuff 100% :)) 2000-06-28 19:37:17 +00:00
codemastr 9eeb7a2fc4 made K:line and n:line checking faster 2000-06-28 19:23:17 +00:00
codemastr 7144188368 made a major is_banned speed up 2000-06-28 17:11:55 +00:00
codemastr 2525edca20 removed list_channels 2000-06-28 16:56:21 +00:00
codemastr 279842d017 now can request topic without being a member, and removed topic , support 2000-06-28 16:15:58 +00:00
stskeeps 62323727a8 . 2000-06-27 20:22:33 +00:00
codemastr 645a04aec3 added option to encrypt restart/die passwords 2000-06-27 16:26:05 +00:00
codemastr b8f0063629 added encrypted I:line support 2000-06-27 15:45:41 +00:00
stskeeps 07104d2d7d . 2000-06-27 15:42:38 +00:00
stskeeps 68aba326e1 . 2000-06-27 13:22:57 +00:00
stskeeps 9b0f6b2a9c +- Some more crypto stuff, will work on the new engine tommorow 2000-06-26 21:41:00 +00:00
codemastr 384b7357cd fixed a typo in /stats z 2000-06-25 16:37:41 +00:00
stskeeps 4c039afe84 +- Added Blowfish encryption ability (SetSecure()), will extend to more
+  better encryption
Requires OpenSSL/blowfish
2000-06-25 14:35:24 +00:00
stskeeps 4e96e013ac +- Removed some odd Clone stuff(?) 2000-06-25 08:39:50 +00:00
stskeeps 62fe14251b +- Broken INETD support removed 2000-06-24 21:04:26 +00:00
stskeeps f7acfa8736 . 2000-06-24 20:57:30 +00:00
stskeeps 0a5bb85f2c - Removed IsService() 2000-06-24 20:45:48 +00:00
codemastr 0423078b67 *** empty log message *** 2000-06-24 18:54:11 +00:00
stskeeps 1e250927a2 - Fixed /setname desynch 2000-06-24 18:33:46 +00:00
codemastr 711ffb5c62 ... 2000-06-24 18:29:56 +00:00
stskeeps 2265903961 - Fixed last R_LINE stuff (check_time_interval) 2000-06-24 18:20:58 +00:00
codemastr 65cdea5cfe redid s_err.c to be faster (based on bahamut) 2000-06-24 18:14:26 +00:00
codemastr e3234d5671 *** empty log message *** 2000-06-24 15:19:36 +00:00
codemastr 4dd196bbc6 made /msg irc always work, cleanups, made it so all servers behind a U:lined server are U:lined 2000-06-23 21:32:25 +00:00
codemastr 0b85e10148 added networks/seveneagle.network 2000-06-23 18:37:52 +00:00
codemastr a35dd03e50 *** empty log message *** 2000-06-23 18:30:03 +00:00
stskeeps 4a1cded0fd - Made IRCII_KLUDGE disappear :P
- Fixed SENDQ_ALWAYS to be mainstream define (as always)
2000-06-23 18:24:12 +00:00
stskeeps 5c87943196 - Made IRCII_KLUDGE disappear :P 2000-06-23 18:19:49 +00:00
stskeeps f09b334e86 Missed one thing 2000-06-23 18:18:06 +00:00
stskeeps 985561c522 - Removed DISALLOW_MIXED_CASE and IGNORE_FIRST_CHAR, waste of space
- Made IDLE_FROM_MSG stock define
2000-06-23 18:17:10 +00:00
stskeeps 0b7c79b488 k- Removed aHush, not in use 2000-06-23 18:09:29 +00:00
stskeeps b3d8eb3104 - Fixed a wrongly outputted message (in hash collision detect) 2000-06-23 18:07:25 +00:00
stskeeps b6cb4e3661 - Made operkick be part of NO_OPEROVERRIDE
- Made admins unable to be shunned
- Made some socket errors which normally only showed up in DEBUGMODE, show
  up in ircd.log as well
2000-06-22 13:48:16 +00:00
stskeeps 031a342e60 Made operkick be part of OperOverride 2000-06-21 18:05:21 +00:00
stskeeps 023d869ffd - Small fix with ./Config showing incorrect path of stddef.h 2000-06-20 18:05:43 +00:00
stskeeps 4dcaaec5a3 - Fixed a bug in badwords not loading words correctly, and upped word limit
to 50
2000-06-20 08:15:13 +00:00
codemastr 614587cb7c fixed a chgident overflow 2000-06-19 20:49:27 +00:00
stskeeps 1d750653ab . 2000-06-19 16:21:32 +00:00
cvs2hg a278e31c9f fixup commit for tag 'unreal3_1_rc1' 2000-06-19 09:32:53 +00:00
stskeeps 39a02452d2 . 2000-06-19 09:32:52 +00:00
stskeeps 2016740b47 Stamp. 2000-06-18 10:22:40 +00:00
stskeeps 84c8525bc7 . 2000-06-18 10:21:45 +00:00
stskeeps 4feb893c3f - Made so auditorium mode shows users to @'s 2000-06-18 10:12:41 +00:00
stskeeps a30af17cb8 - Fixed ./Config showing freebsd 3.0 in freebsd 4
- Made so badwords.*.conf accepts # comments
- Added some default default badwords.message.conf and badwords.channel.conf
2000-06-18 10:10:34 +00:00
stskeeps 1d41fae3ca - Fixed /shun showing "1970" to permanently shunned users
- Fixed ./Config showing freebsd 3.0 in freebsd 4
2000-06-17 11:51:34 +00:00
stskeeps a31694c45a - Made /addline write to correct place when you use -f
- Made /zline not memory corrupt/crash, bad df bug
- Fixed a counting bug with unknown connections, very hopefully
- Fixed /htm giving wrong response when /htm to 1
2000-06-17 10:51:35 +00:00
drbin bb015165bc added ircsprintf.h to #include so that DEBUGMODE works !!! 2000-06-16 20:15:44 +00:00
drbin da53d2f0bf Added DEBUGMODE support in ircsprintf.h 2000-06-16 20:08:11 +00:00
drbin a80e94f246 Added DEBUG=1 support in win32 makefile 2000-06-16 19:40:18 +00:00
stskeeps a34dd526f2 - Added config.h setting to disable oper overrides, NO_OPEROVERRIDE 2000-06-16 17:08:10 +00:00
stskeeps 38a9332ce1 - Fixed a +L bug, (3.1 only) where any op could set +L
- Added channel mode +u, "Auditorium". Makes /names and /who #channel only
  show @'s
2000-06-16 17:07:21 +00:00
codemastr 956939e79b made perm TKLs allowed by using 0 as the time 2000-06-15 22:39:14 +00:00
drbin 227a0375e7 Updating to include aln.c 2000-06-15 20:43:36 +00:00
drbin 8afe521a85 *** empty log message *** 2000-06-15 20:06:50 +00:00
drbin a1e3d57d9e Fixed /Shun and /Gline Conflict .... (= != ==) 2000-06-15 20:01:09 +00:00
stskeeps c3dcf78497 Some bashing 2000-06-15 10:22:38 +00:00
stskeeps 3edeb401a7 Allow /shunned users to use /pong now 2000-06-14 17:25:42 +00:00
stskeeps f267677ce5 Poll() stuff 2000-06-11 13:05:36 +00:00
stskeeps c3773ecd9f - /shun accepts nick in add mode now (adds *@host) 2000-06-10 13:52:42 +00:00
stskeeps 51f84140fc - /close doesnt reveal realhost anymore 2000-06-10 13:39:43 +00:00
stskeeps b88cec9d5f bah 2000-06-10 10:45:01 +00:00
stskeeps e6b7e409ce . 2000-06-07 20:09:46 +00:00
stskeeps 422dbf746f - Made all ircops able to use +F (totally this time)
kd
2000-06-07 19:30:41 +00:00
stskeeps 7e3d2d8ea7 Made all IRCops able to use +F 2000-06-07 14:14:49 +00:00
stskeeps 12d99c8026 - Fixed the double +cF notice on local connections exiting, ugly hack
- Removed the last traces of unix sockets, flag 0x10 free now
2000-06-06 20:01:17 +00:00
stskeeps a75432c9ca In ./Config it runs a test program saying how many socket()s you can open 2000-06-06 12:48:10 +00:00
stskeeps bc87b99853 Small testing stuff 2000-06-06 12:39:08 +00:00
stskeeps c2d9acd82e sendto_serv_butone_token_opt 2000-06-04 14:51:38 +00:00
stskeeps afcea0d1ec Fixed the NickServ sets mode +creep SVS2MODE bug 2000-06-04 12:24:20 +00:00
stskeeps 0a2e7468d0 - Fixed a crash problem in register_user and most likely fixed the "strange
vhost" thing, (was a dumb bug, mising ircsprintf)
2000-06-04 09:14:48 +00:00
stskeeps d725dd805d . 2000-06-03 20:31:29 +00:00
stskeeps c8ac2db9f8 .. 2000-06-03 20:25:52 +00:00
stskeeps f1b988d04b Bah! 2000-06-03 20:23:12 +00:00
stskeeps e24344bde1 .. 2000-06-03 20:20:58 +00:00
stskeeps 565266a205 Access list stuff 2000-06-03 20:13:13 +00:00
stskeeps d76006aea2 .. 2000-06-03 20:11:50 +00:00
stskeeps 36b89e78bc . 2000-06-03 19:42:49 +00:00
stskeeps 4c499f8417 Test.. 2000-06-03 19:37:00 +00:00
stskeeps 989a5462d8 .. 2000-06-03 16:38:07 +00:00
stskeeps 4ffba555f3 Took out sequent/dynix support 2000-06-02 18:48:00 +00:00
stskeeps 34d0a3591d Test .. 2000-06-02 14:59:48 +00:00
stskeeps 01a0cbe628 !¤¤%!%1 2000-06-02 11:43:09 +00:00
stskeeps f2a31c5e21 possible res fix 2000-06-02 11:28:26 +00:00
stskeeps 7a78d5afff .. 2000-06-02 11:25:43 +00:00
stskeeps c2d59695ed Took out nick did a userhost on you and minimized hash table size so it went
0.6% memory down.adjust hash.h U_MAX if that is needed for performance
2000-06-02 11:25:00 +00:00
stskeeps 546af36469 - /stats s is now avail only for opers in mainstream 2000-06-02 10:48:49 +00:00
stskeeps b7b6e232ce .. 2000-06-01 20:51:05 +00:00
stskeeps b7d9439bdc - NETINFO protocol 0 is accepted as valid protocool (for services etc) 2000-06-01 14:20:57 +00:00
stskeeps a1cc97be8d Various fixes, and versioned up to RC1 2000-05-31 13:51:32 +00:00
stskeeps 0b3d4164fe - Made SVSO (ofcourse) IRCstats.operators--;
- Another IRCstats.unknown fix. Hope this works (hacked from undernet code)
2000-05-31 13:43:17 +00:00
stskeeps d7231c1801 Made /close reset IRCstats.unknown 2000-05-31 13:10:28 +00:00
codemastr 017bd482f1 *** empty log message *** 2000-05-30 21:46:13 +00:00
stskeeps c763583d33 First patch of ZIP_LINKS 2000-05-30 19:58:50 +00:00
stskeeps 48f9384a82 First part of 2000-05-30 19:58:27 +00:00
codemastr 2f8f56c191 *** empty log message *** 2000-05-29 19:21:03 +00:00
codemastr c53039ed41 *** empty log message *** 2000-05-29 15:48:45 +00:00
stskeeps adced2cf58 Made MODE_X and the family show mode changes, and made STRIPBADWORDS
standard
2000-05-29 15:09:01 +00:00
stskeeps 4dc224d3ff - A little anti-0 fix in channel.c 2000-05-29 14:47:54 +00:00
stskeeps c66be9025d Removed bsdinstall, isnt needed 2000-05-29 10:23:27 +00:00
stskeeps 588614da96 Removed a CVS_ID from whowas.c 2000-05-29 10:22:15 +00:00
stskeeps a59c66fd49 Added /shun 2000-05-29 10:17:13 +00:00
stskeeps 651ec98abc Fixed codemastr fucking up "ircd" 2000-05-29 07:25:26 +00:00
codemastr 59337acc04 fixed /stats C not showing N:lines 2000-05-28 21:53:09 +00:00
stskeeps 769f767b05 A compile fix.. 2000-05-28 17:35:42 +00:00
stskeeps 19a1e80ba8 Did a hack on ALN 2000-05-28 17:32:31 +00:00
stskeeps 58d92222ae Fixes in Unreal.nfo 2000-05-28 16:06:54 +00:00
stskeeps 5b22717119 Made the Own-protection just reduce the class maxli instead of bitching..
(class.c, s_user.c)
2000-05-28 16:03:08 +00:00
stskeeps 1f747eb73a Added rapta to beta tester credits 2000-05-28 15:49:29 +00:00
stskeeps 4f33019ee9 test of new cvs 2000-05-28 14:30:38 +00:00
cmunk 36e9700f16 Some win32 fixes done by Drbin 2000-05-28 09:01:26 +00:00
cvs2hg 843b580a40 fixup commit for branch 'devel' 2000-05-28 08:56:23 +00:00
cmunk 5d21b18d82 ... 2000-05-28 08:56:21 +00:00
cmunk 0d30ef8540 Import of Unreal3.1-beta3 2000-05-28 08:55:44 +00:00
cvs2hg e33b064e3d fixup commit for branch 'beta' 2000-05-28 08:48:51 +00:00
cmunk ef4e2489ce Addition of Unreal3.1-beta3 2000-05-28 08:45:09 +00:00
cvs2hg df5beefe8d fixup commit for branch 'beta' 2000-02-28 22:45:48 +00:00
447 changed files with 167464 additions and 51894 deletions
+20 -6
View File
@@ -1,6 +1,20 @@
|=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=|
| UnrealIRCd 3.0 |
| Configuration |
|=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=|
| http://unreal.tspre.org |
|=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=|
_ _ _ ___________ _____ _
| | | | | |_ _| ___ \/ __ \ | |
| | | |_ __ _ __ ___ __ _| | | | | |_/ /| / \/ __| |
| | | | '_ \| '__/ _ \/ _ | | | | | / | | / _ |
| |_| | | | | | | __/ (_| | |_| |_| |\ \ | \__/\ (_| |
\___/|_| |_|_| \___|\__,_|_|\___/\_| \_| \____/\__,_|
Configuration Program
for Unreal3.2.5
This program will help you to compile your IRC server, and ask you
questions regarding the compile-time settings of it during the process.
regarding the setup of it, during the process.
If you have problems regarding the setup & compile, read Unreal.nfo to get
more information on where to get help. Please, before running this setup,
read the documentation in the "doc" folder. Docs are also avail online @
http://www.unrealircd.com/unreal32docs.html
+35
View File
@@ -0,0 +1,35 @@
Configuration rant, by Stskeeps
--------------------------------
Right.. so you think you are done now, you can boot your IRCd and be happy,
and it just works. No, you still got a lot to do. You need to read all of
the documentation through. Would you even have made it this far without
makeconf?.
Well, today, people think they can be 3 months on IRC, and be ready to run
an IRC daemon. I hate to say this, but I don't think so.
If you cannot read an IRC help file, or understand what stuff like "desynch",
"masskill", "k-line", or what "mode # +l 5" means - or you got no experince
in the UNIX field at all, like, you MUST know how to invoke a editor in a
shell, or to unzip a file. If you don't know/can do these things, I suggest
you stop trying to set this up, and go read on some UNIX tutorials, and IRC
tutorials. It takes a LOT of work to run a IRC server good.
I mean. I sit on the #unreal-support support channel each day, and I see
countless questions about stuff that IS IN the documentation. Numerous
people don't even bother to look at the config files (CONFIG_FILE_STOP
problem).
You need to look at the documentation now. You need to see how to "include"
other configuration files. You need to know how to work out how to use
doc/example.settings. I can only tell you, if you ask for support, and it
is for errors that you could solve by reading the first lines of a document,
then you'll be firmly ignored. I'm sorry, we cannot help your laziness.
Anyhow, good luck with setting this up. Hope you understand what I am saying
here. You will learn a lot more reading, than just ignoring what we are
saying.
--Stskeeps
-8
View File
@@ -1,8 +0,0 @@
|=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=|
| UnrealIRCD Custom Create Network Configuration|
|=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=|
| |
| This will not be too hard, just follow the |
| instructions, and answer the questions... |
| |
|=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=|
+3
View File
@@ -0,0 +1,3 @@
This is the Unreal3.3* development tree.
We are currently in pre-alpha stage, which means this code should not be
used by anyone but the developers or other people liking a broken ircd ;)
+15
View File
@@ -0,0 +1,15 @@
|-------------------------------------------------------------------------|
| Congratulations on your new SSL self-signed certificate for your IRCd. |
| However, wouldn't it be better that you get your certifcate signed by |
| some kind of Certification Authority (CA), so your users can check that |
| they are really connected to the real server, so they feel secure? |
| |
| There is an initiative at CACert.org - They offer SSL Certificates |
| for use with your IRCd for free, so your users can be sure that they |
| can trust you and your server. |
| |
| To get a free signed certificate please visit http://www.CACert.org |
| _________________________|
| | Press enter to continue |
---------------------------------------------------------------------------
+17
View File
@@ -0,0 +1,17 @@
_ _ _ ___________ _____ _
| | | | | |_ _| ___ \/ __ \ | |
| | | |_ __ _ __ ___ __ _| | | | | |_/ /| / \/ __| |
| | | | '_ \| '__/ _ \/ _` | | | | | / | | / _` |
| |_| | | | | | | __/ (_| | |_| |_| |\ \ | \__/\ (_| |
\___/|_| |_|_| \___|\__,_|_|\___/\_| \_| \____/\__,_|
Update Script v2.0
What download program do you want to use?
-----------------------------------------
Type "wget" for wget
Type "lynx" for lynx
>
+77
View File
@@ -0,0 +1,77 @@
#
# UnrealIRCd Bug Reporting Script
# Copyright (c) 2001, The UnrealIRCd Team
# All rights reserved
#
# Redistribution and use in source and binary forms, with or without modification, are permitted
# provided that the following conditions are met:
#
# * Redistributions of source code must retain the above copyright notice, this list of conditions
# and the following disclaimer.
# * Redistributions in binary form must reproduce the above copyright notice, this list of conditions
# and the following disclaimer in the documentation and/or other materials provided with the
# distribution.
# * Neither the name of the The UnrealIRCd Team nor the names of its contributors may be used
# to endorse or promote products derived from this software without specific prior written permission.
# * The source code may not be redistributed for a fee or in closed source
# programs, without expressed oral consent by the UnrealIRCd Team, however
# for operating systems where binary distribution is required, if URL
# is passed with the package to get the full source
# * No warranty is given unless stated so by the The UnrealIRCd Team
#
# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS `AS IS'' AND ANY EXPRESS OR
# IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND
# FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE
# LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
# BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR
# BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
# LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
# SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
# First we define some nice settings and some nice functions
set print pretty on
# dumplist <linked list> <structure format>
define dumplist
echo Dumping linked list $arg0 in format $arg1\n
set $p = $arg0
while $p
print *($arg1 *) $p
set $p = $p->next
end
end
# dumparray <name> <size>
define dumparray
echo Dumping array $arg0 size $arg1\n
set $p = 0
while $p < $arg1
if $arg0[$p]
print *$arg0[$p]
end
set $p = $p + 1
end
end
echo Full backtrace:\n
echo ---------------\n
echo \n
bt full
echo \n
echo Backup parse() buffer:\n
echo ----------------------\n
echo \n
print backupbuf
echo \n
echo me output:\n
echo ----------------------\n
print me
echo \n
echo IRCstats:\n
echo ----------------------\n
print IRCstats
echo \n
echo Modules:\n
echo ----------------------\n
dumparray Modules 50
quit
+6
View File
@@ -0,0 +1,6 @@
ircdcron/ircd.cron
ircdcron/ircdchk
src/modules/Makefile
src/ssl.rnd
src/win32/devel/StackTrace.lib
src/win32/gnu_regex.lib
Vendored
+52
View File
@@ -0,0 +1,52 @@
--leave-preprocessor-space
--dont-break-procedure-type
--no-space-after-function-call-names
--brace-indent0
--indent-level8
-ip8
--dont-line-up-parentheses
--continuation-indentation4
--case-indentation2
--no-space-after-casts
--blank-lines-after-procedures
--no-blank-lines-after-declarations
--braces-on-struct-decl-line
--paren-indentation0
--case-brace-indentation0
--line-length110
--declaration-indentation5
-T size_t
-T aClass
-T TS
-T aClient
-T aServer
-T anUser
-T aChannel
-T Mode
-T aConfItem
-T aMessage
-T aMessageTree
-T aGline
-T aListingArgs
-T snomask_t
-T n_short
-T n_long
-T n_time
-T u_char
-T u_short
-T u_long
-T u_int
-T dbuf
-T dbufbuf
-T aHashEntry
-T Link
-T Dlink
-T VOIDSIG
-T aHostent
-T ResRQ
-T aCache
-T CacheTable
-T cainfo
-T reinfo
-T RETSIGTYPE
-T OPT_TYPE
-2
View File
@@ -1,2 +0,0 @@
List of helpers in the alpha/beta phase:
* Headbang, Alpha/beta tester
+1848 -299
View File
File diff suppressed because it is too large Load Diff
+4844
View File
File diff suppressed because it is too large Load Diff
+764 -1505
View File
File diff suppressed because it is too large Load Diff
+23 -11
View File
@@ -1,20 +1,32 @@
Send donations to:
UnrealIRCd is a free program, but we do put a lot of time, effort, and money
into creating and maintaining Unreal. To make it easier for user's to show their
appreciation, the Unreal team has decided to accept donations through PayPal. If
you like Unreal, and you'd like to see it continue to exist, please consider making
a donation. We're not asking for anything huge, whatever you can afford is fine.
PayPal Donation Link:
<https://www.paypal.com/xclick/business=donation%40unrealircd.org&
item_name=UnrealIRCd+Donation&no_shipping=1&cn=Comments&tax=0&currency_code=USD>
Or simply send a payment through PayPal to:
donation@unrealircd.org
If you don't want to use PayPal, or you want to donate something other than money
(old computer hardware, etc.), contact Stskeeps (stskeeps@unrealircd.com) and send
your donation to:
UnrealIRCd Project
C/O Carsten Munk
P.O.Box 52
7400 Herning
Denmark
(if you want to that is.. I mean .. I do my coding for fun.. -
send a teddybear or something to my nephews or something for
my nieces.. so they can keep quiet while I'm trying to do anything)
Disks, HD's, free internet time or alike are welcome ;p ;)
-- Techie (which HAD got 20 MB free HD space out of 400 MB on his own puter)
(just got a 8.4gb and rh6.0 *_*)
(and used 200 MB on his shell to code this :>) ..
- oh and btw i'm male:P (*looks at BlueFlame^*)
All those who donate at least $10 USD will have their name and/or company listed in /credits.
Additionally, all donators will be listed on the website (regardless of the amount). To make
this possible, please include along with your donation the name (or nickname) you want to
appear in the list as well as the company name (or IRC server) to list.
Thank you for your support,
The UnrealIRCd Team
[ $Id$ ]
-153
View File
@@ -1,153 +0,0 @@
$Id$
Installation Procedures for the UnrealIRCD:
=======================================================================
Created by Stskeeps <stskeeps@tspre.org>
=======================================================================
This document describes how to install ircd, the unix daemon that acts as
an IRC server.
For more information on UnrealIRCD contact us at
unreal-dev@lists.sourceforge.net
The UnrealIRCD is available from http://unreal.tspre.org
along with the latest copy of this document.
=======================================================================
This version of the UnrealIRCD is known to compile on the following
platforms, and with the following compilers. If you wish to add to this
list, send the relevant information to us.
OS and Version Compiler and Version Comments
------------------- ------------------------ -------------------------------
NetBSD 1.2B gcc 2.7.2
FreeBSD 2.1.0 gcc 2.6.3 Do NOT use crypt at all...
SunOS 4.1.4 gcc 2.7-96q1 (Cygnus)
Solaris 2.4 gcc 2.7-96q1 (Cygnus) (SunOS 5.4)
Solaris 2.5 SunWorks Pro C (SunOS 5.5.1)
cc: SC4.0 18 Oct 1995 C 4.0
Digital Unix 3.2 gcc 2.7-96q3 (Cygnus)
Linux 2.0.24 gcc 2.7.2.1
HPUX 9.01 gcc 2.6.3
HPUX 10.01 gcc 2.7-96q3 (Cygnus)
Linux PPC (iMac)
AmigaOS 3.0 GCC egcs-2.91.66 (compile with -D_AMIGA)
Windows NT/95 MSVC++ 4.0
Linux Mandrake Read FAQ
=======================================================================
Unpacking the Distribution
If you are reading this, you have most likely already done this, but to
recap:
The UnrealIRCD server comes tarred and gziped. To uncompress it and expand
it, use the following commands at the Unix prompt:
gzip -d Unreal3.0.tar.gz
tar -xvf Unreal3.0.tar
This will create a new directory called Unreal3.0 and unpack the source
into it.
=======================================================================
Editing the Configuration Files
In previous versions of the source code many files had to be edited to
make things right for any given server.
In this version you DO NOT NEED TO EDIT THE Makefile OR ANY FILES
IN include! That is, unless you set some strange options. If you
find the need to edit include/config.h, for example,
mail us and tell us why ; Config can be made smarter, and that will make
it so you won't have to edit anything for the next version.
=======================================================================
Compiling Your Server
Windows users: You must compile the Config program first. To do this
run the following command: $CC src\Config.c
where $CC is the name of your compiler. for MSVC users that is 'cl'
To build the server, simply run
% ./Config
to start the configuraton program. This program looks at your system
and generate the include/setup.h, include/settings.h, and Options files.
You will be asked some questions. Usually the default answers are the best
ones and most correct. To accept the default, just hit RETURN.
Next, type 'make'. This will compile your server. Depending on your system,
this may be a good time for a caffeine break. (MSVC users run 'nmake')
Hopefully, the server will compile without incident. If it does not, and
you are not able to determine the error, please email
unreal-dev@lists.sourceforge.net and hopefully someone will be able to help you with the problem. If you
do need to fix something, mail there with a patch.
BE CERTAIN TO INCLUDE OPERATING SYSTEM INFORMATION (uname -a) AND COMPILER
VERSION (gcc -v, for instance) IN ALL BUG REPORTS.
=======================================================================
Installing the Files
'make install' does not work in this release -- it doesn't do anything
except a compile if that is needed.
The only files you need are the binary from src/ircd and and an ircd.conf
(see below for copying doc/example.conf as your initial ircd.conf). You
probably will want to create a MOTD file too, as well as place the man
pages from the doc directory to appropriate place in your system.
=======================================================================
Configuring Your Server
The previous step places a file named 'example.conf' into your irc
directory you specified to Config.
To create an IRC configuration file, edit: ircd.conf
Now edit this file to reflect your server. The file is mainly
self-explanatory. Note that if you plan to use your server on ROXnet,
make sure that you have the following line:
U:services.roxnet.org:*:*
If you need help configuring your file, please connect to ROXnet,
(irc.flirt.org or irc.roxnet.org) - go to channel #UnrealIRCd, and ask.
=======================================================================
Starting Your Server
Simply enter the complete path to the executable into the Unix command
line, then hit return. Your server is now operational, assuming that you
have completed all the steps described above.
NOTE: If you get something like the following when running ircd:
ircd fd table too big
Hard Limit: 256 IRC max: 1024
Fix MAXCONNECTIONS
You need to change config.h and recompile. Find the line that says
"#define MAXCONNECTIONS 1024", and change it to the number given after
"Hard Limit" (most likely 256), then make the server again, following the
above instructions.
Enjoy!
- The UnrealIRCd Team - unreal-dev@lists.sourceforge.net
+23
View File
@@ -0,0 +1,23 @@
**** Remote Includes ****
Setting up UnrealIRCd to work with remote includes is not very difficult. The first step is to
download c-ares. C-ares can be downloaded from <http://daniel.haxx.se/projects/c-ares/>
download the latest version of c-ares and extract the .tar.gz somewhere.
Now, download the latest version of curl, available at <http://curl.haxx.se/download.html>
again, extract the tar.gz somewhere.
Next, go to the Unreal3.2 directory and run the curlinstall script. You run the script
as follows:
./curlinstall ares_path curl_path
Paths should be complete pathnames. If you extracted c-ares to /home/username/c-ares-1.0.0
and curl to /home/username/curl-7.11.0 then you would run:
./curlinstall /home/username/c-ares-1.0.0 /home/username/curl-7.11.0
Lastly, run ./Config. When asked whether to enable remote includes say "yes" and when asked
for the path curl was installed to include the path that is printed out after ./curlinstall
completes. Then simply run make to compile Unreal as usual and remote includes should work
fine.
+103 -45
View File
@@ -19,10 +19,12 @@
#* $Id$
#*/
CC=gcc
CC=@CC@
CXX=@CXX@
INCLUDEDIR=../include
NETWORKSDIR=
FROMDOS=/home/cmunk/bin/4dos
# [CHANGEME]
# Default flags:
# Change XCFLAGS if you don't like what Config puts there. Same with
@@ -31,9 +33,13 @@ FROMDOS=/home/cmunk/bin/4dos
# If you are configuring by hand, try "-O -g" for XCFLAGS, and leave
# IRCDLIBS blank. If that fails, try recomendations below.
#
XCFLAGS=
IRCDLIBS=
#XCFLAGS=-O -g -export-dynamic
IRCDLIBS=@IRCDLIBS@ @TRELIBS@ @CARESLIBS@
CRYPTOLIB=@CRYPTOLIB@
OPENSSLINCLUDES=
XCFLAGS=-I@TREINCDIR@ -I@CARESINCDIR@ @CARESLIBDIR@ @CFLAGS@
#
# use the following on MIPS:
#CFLAGS= -systype bsd43 -DSYSTYPE_BSD43 -I$(INCLUDEDIR)
@@ -87,53 +93,60 @@ IRCDMODE = 711
# [CHANGEME]
# IRCDDIR must be the same as DPATH in include/config.h
#
IRCDDIR=/usr/local/lib/ircd
IRCDDIR=@IRCDDIR@
# [CHANGEME]
# Some SunOS versions want this. Try it without first.
#RES=res_init.o res_comp.o res_mkquery.o
# BSDI systems want this.
#RES=res_skipname.o
# The rest are perfectly content with this.
RES=
# [CHANGEME]
# If you get a compile-time error dealing with u_int32_t, comment out
# this line.
# NEED_U_INT32_T= -DNEED_U_INT32_T
NEED_U_INT32_T=
URL=@URL@
# [CHANGEME]
# If you get a link-time error dealing with strtoul, comment out
# this line.
# STRTOUL= strtoul.o
STRTOUL=
STRTOUL=@STRTOUL@
# [CHANGEME]
# If you get crashes around a specific number of clients, and that client
# load comes close or a little over the system-defined value of FD_SETSIZE,
# override it here and see what happens.
FD_SETSIZE=
FD_SETSIZE=@FD_SETSIZE@
CFLAGS=-I$(INCLUDEDIR) $(XCFLAGS) $(NEED_U_INT32_T) $(FD_SETSIZE)
# Where is your openssl binary
OPENSSLPATH=@OPENSSLPATH@
CFLAGS=-I$(INCLUDEDIR) $(XCFLAGS) @LDFLAGS@ $(FD_SETSIZE)
SHELL=/bin/sh
SUBDIRS=src
BINDIR=$(IRCDDIR)
MANDIR=/usr/local/man
INSTALL=/usr/bin/install
RM=rm
CP=cp
TOUCH=touch
BINDIR=@BINDIR@
INSTALL=@INSTALL@
RM=@RM@
CP=@CP@
TOUCH=@TOUCH@
RES=
all: build
MAKEARGS = 'CFLAGS=${CFLAGS}' 'CC=${CC}' 'IRCDLIBS=${IRCDLIBS}' \
'LDFLAGS=${LDFLAGS}' 'IRCDMODE=${IRCDMODE}' \
'BINDIR=${BINDIR}' 'INSTALL=${INSTALL}' \
'RES=${RES}' 'BINDIR=${BINDIR}' 'INSTALL=${INSTALL}' \
'INCLUDEDIR=${INCLUDEDIR}' 'IRCDDIR=${IRCDDIR}' \
'MANDIR=${MANDIR}' 'RM=${RM}' 'CP=${CP}' 'TOUCH=${TOUCH}' \
'RES=${RES}' 'SHELL=${SHELL}' 'STRTOUL=${STRTOUL}'
'RM=${RM}' 'CP=${CP}' 'TOUCH=${TOUCH}' \
'SHELL=${SHELL}' 'STRTOUL=${STRTOUL}' \
'CRYPTOLIB=${CRYPTOLIB}' \
'CRYPTOINCLUDES=${CRYPTOINCLUDES}' \
'URL=${URL}' 'CXX=${CXX}'
INSTALL_CONFS = badwords.channel.conf badwords.message.conf \
badwords.quit.conf dccallow.conf help.conf \
spamfilters.conf.sample LICENSE Donation
INSTALL_DOCS = doc/Authors doc/example.conf doc/coding-guidelines \
doc/tao.of.irc doc/unreal32docs.html
custommodule:
cd src; ${MAKE} ${MAKEARGS} MODULEFILE=${MODULEFILE} 'EXLIBS=${EXLIBS}' custommodule
custommodulecpp:
cd src; ${MAKE} ${MAKEARGS} MODULEFILE=${MODULEFILE} 'EXLIBS=${EXLIBS}' custommodulecpp
server:
build:
@@ -147,15 +160,17 @@ build:
( cd $$i; ${MAKE} ${MAKEARGS} build; ) \
done
@echo ' __________________________________________________ '
@echo '| Compile is now complete. Now you have to go do |'
@echo '| The load-time configuration - try go read the |'
@echo '| file "dynconf" using your favourite viewer or |'
@echo '| editor. The file will contain instructions on how|'
@echo '| to do the dynamic configuration :) |'
@echo '| Compile is now complete. |'
@echo '| You should now read the documentation and learn |'
@echo '| how to configure your IRCd. |'
@echo '| |'
@echo '| If you really like UnrealIRCd, and would like to |'
@echo '| make a donation, please read the Donation file in|'
@echo '| this archive. :) |'
@echo '| |'
@echo '| Thanks for using Unreal IRCd! If you are in need |'
@echo '| for any kind of help regarding the IRCd email us |'
@echo '| at unreal-dev@lists.sourceforge.net |'
@echo '| for any kind of help regarding the IRCd please |'
@echo '| read the Unreal.nfo file. |'
@echo '|__________________________________________________|'
clean:
@@ -167,16 +182,13 @@ clean:
-@if [ -f include/setup.h ] ; then \
echo "To really restart installation, remove include/setup.h" ; \
fi
-@if [ -f include/settings.h ] ; then \
echo "and include/settings.h" ; \
fi
cleandir: clean
rm -rf include/networks.h include/setup.h include/settings.h Makefile Settings
rm -rf include/networks.h include/setup.h Makefile Settings
makex: fromdos
chmod +x Config newnet bsdinstall ircd ircdcron/ircdchk killircd
chmod +x makeconf rehash ircdreg
makex:
chmod +x Config newnet ircd ircdcron/ircdchk killircd
chmod +x rehash ircdreg
fromdos: cleandir
$(FROMDOS) -dv *
@@ -186,7 +198,7 @@ fromdos: cleandir
$(FROMDOS) -dv crypt/*
$(FROMDOS) -dv ircdcron/*
makedist: makex
echo "Making UnrealIRCd compatible IRCd Dist."
echo "Stamping.."
stamp: makedist
echo "/* Auto created release stamping */" > include/stamp.h
@@ -201,5 +213,51 @@ depend:
done
install: all
@echo "Now install by hand; make install is broken."
$(INSTALL) -m 0700 -d $(IRCDDIR)
$(INSTALL) -m 0700 -d $(BINDIR)
$(INSTALL) -b -m 0700 src/ircd $(BINDIR)
$(INSTALL) -m 0700 -d $(IRCDDIR)/doc
$(INSTALL) -m 0600 $(INSTALL_DOCS) $(IRCDDIR)/doc
$(INSTALL) -m 0700 -d $(IRCDDIR)/aliases
$(INSTALL) -m 0600 aliases/*.conf $(IRCDDIR)/aliases
$(TOUCH) $(IRCDDIR)/unrealircd.conf
chmod 0600 $(IRCDDIR)/unrealircd.conf
$(INSTALL) -b -m 0600 $(INSTALL_CONFS) $(IRCDDIR)
$(INSTALL) -b -m 0700 unreal $(IRCDDIR)
$(INSTALL) -m 0700 -d $(IRCDDIR)/modules
$(INSTALL) -b -m 0700 src/modules/*.so $(IRCDDIR)/modules
-@if [ ! -f "$(IRCDDIR)/curl-ca-bundle.crt" ] ; then \
$(INSTALL) -b -m 0700 curl-ca-bundle.crt $(IRCDDIR) ; \
fi
-@if [ -f server.key.pem ] ; then \
if [ ! -f "$(IRCDDIR)/server.key.pem" ] ; then \
$(INSTALL) -b -m 0600 server.*.pem $(IRCDDIR) ; \
fi ; \
fi
pem: src/ssl.cnf
@echo "Generating certificate request .. "
$(OPENSSLPATH) req -new \
-config src/ssl.cnf -out server.req.pem \
-keyout server.key.pem -nodes
@echo "Generating self-signed certificate .. "
$(OPENSSLPATH) req -x509 -days 365 -in server.req.pem \
-key server.key.pem -out server.cert.pem
@echo "Generating fingerprint .."
$(OPENSSLPATH) x509 -subject -dates -fingerprint -noout \
-in server.cert.pem
@echo "Setting o-rwx & g-rwx for files... "
chmod o-rwx server.req.pem server.key.pem server.cert.pem
chmod g-rwx server.req.pem server.key.pem server.cert.pem
@echo "Done!. If you want to encrypt the private key, run"
@echo "make encpem"
encpem: server.key.pem
@echo "Encrypting server key .."
$(OPENSSLPATH) rsa -in server.key.pem -out server.key.c.pem -des3
-@if [ -f server.key.c.pem ] ; then \
echo "Replacing unencrypted with encrypted .." ; \
cp server.key.c.pem server.key.pem ; \
rm -f server.key.c.pem ; \
fi
+24
View File
@@ -0,0 +1,24 @@
==[ COMPILING ]==
To build the ircd, run:
./Config
make
If you specified an alternative location during ./Config you also need
to run "make install".
==[ MAKING A CONFIG FILE ]==
If you are new, then you need to create your own configfile:
copy doc/example.conf to your main UnrealIRCd directory and call
it unrealircd.conf .
Then open it in an editor and carefully modify it, consult the docs
(doc/unreal32docs.html, or online: www.unrealircd.com/unreal32docs.html)
for more information about every block/setting.
Common problems are explained in the FAQ, which is located at:
http://www.vulnscan.org/UnrealIrcd/faq/ .
==[ BOOTING YOUR IRCD ]==
Just type: ./unreal start
Note that after booting the errors are usually logged to ircd.log,
so check that file if you have any problems.
Again, check the FAQ (and docs) if you have any boot problems.
-15
View File
@@ -1,15 +0,0 @@
Some notes to remember:
-----------------------
* Don't EVER try to link it to incompatible IRCds (this does not
include services). It is *INCOMPATIBLE*. Please HEED this warning!!!
* If you need any help you can email me at stskeeps@tspre.org
* Please read the Changes file about release notes
* Bugs? Read Unreal.nfo
* Unreal IRCd is not meant to be a simple IRCd, rather an advanced
IRCd, please read the documentation before asking questions
[ $Id$ ]
-21
View File
@@ -1,21 +0,0 @@
TODO: (Possible 3.1)
* Limit calls to these functions using parse()
0.00 3.91 0.00 6475 0.00 0.00 check_registered
0.00 3.91 0.00 6827 0.00 0.00 check_registered_user
* Optimize:
0.00 3.91 0.00 1292 0.00 0.01 is_banned
12.55 9.61 2.57 41320 0.06 0.10 check_lusers
4.64 11.54 0.95 41566 0.02 0.02 count_channels
3.08 13.96 0.63 850968 0.00 0.00 flush_connections
(fdlists?)
0.15 19.62 0.03 29 1.03 1.80 send_list
* Add svsvline for global vlines
* New /whowas system /who as well
* Short MOTDs
* B:Lines
* Channel mode +d
* Raising PING bug
* Make alternative I/O engine using poll()
* Remove some of the _little_ config.h defines and replace with
unrealircd.conf lines, ex ADMINCHAT, REMOTE_REHASH
* X-Windows GUI (how bad it can be but hey! :P)
-28
View File
@@ -1,28 +0,0 @@
TSpre.org
Many here maybe not heard of the Story
how IRC started (and how EFnet started)
EFnet's name means "Eris-Free Network".
Eris was a central hub at the fomer world-
wide IRC network, that anyone could just add
C:N pairs for and connect to.
I was inspired of the tought of a network
where anyone could link without application and all
that shit..
Combined with the IRCd i made (Unreal) and the tspre.org
domain i got donated by Nutcais (my IRC bro). Ive decided to
start the TSpre IRC network, where anyone with TSpre servers
(dreamforge, IRCu p9, and their alike)
(mostly preffered is Unreal thou).. Its an experimental
network where people can test out thier IRCds and
wIRds without having to fill out apps and so on.
There are no real rules. So just have fun :)
See http://www.tspre.org for more info on this=)
--Stskeeps (stskeeps@tspre.org)
+57 -40
View File
@@ -1,49 +1,66 @@
===============================================
= UnrealIRCd v3.0 =
= UnrealIRCd v3.3* =
===============================================
Was brought to you by:
* Stskeeps <stskeeps@tspre.org>
* codemastr <codemastr@tspre.org>
Precenses on the Internet:
* http://unreal.tspre.org or http://unreal.sourceforge.net
* ftp://unreal.sourceforge.net/pub/unreal
* ftp://ftp.shadow-realm.org/pub/ircd/UnrealIRCd
CVS Repository:
* Alpha versions (or beta)
==========================
cvs -z9 -d :pserver:anonymous@cvs.unreal.sourceforge.net:/cvsroot/unreal login
(just press enter when it asks for password)
cvs -z9 -d :pserver:anonymous@cvs.unreal.sourgeforge.net:/cvsroot/unreal co alpha
* To get support
The head coders
================
* IRC: /server irc.flirt.org 6667 - /join #unrealircd
* Mailing list: unreal-support@lists.sourceforge.net (for support)
* Got a bug to report?
======================
* If the server crashes and dumps core do this:
* Go into the Unreal directory and type this:
gdb src/ircd core.filename
where core.filename is the filename in the dumping core message
if it loads gdb, (not saying "command not found" etc), type "bt" in
the program (type "quit" to get out again)
The output coming out there please mail it to
unreal-dev@lists.sourceforge.net, along with OS type,
what "uname -a" says, any clues what it is, if you did anything etc
etc. Please keep the core dump files if we ask you to mail us them
if needed
* Stskeeps <stskeeps@tspre.org>
* Syzop <syzop@unrealircd.com>
* codemastr <codemastr@unrealircd.com>
* If you experince any wierdnesses (that doesnt crash the server)
please mail unreal-dev@lists.sourceforge.net with any clues on what
you did, what you experinced etc.
The coders
===========
* DarkElf <darkelf@unrealircd.com>
* Trocotronic <trocotronic@unrealircd.com>
* aquanight <aquanight@unrealircd.com>
* Got a suggestion?
Additional credits
===================
* Mail it to unreal-dev@lists.sourceforge.net :) or catch one from
the Unreal team online on IRC:)
Credit also goes to past UnrealIRCd coders, including: McSkaf, Zogg,
NiQuiL, assyrian, nighthawk, DrBin, llthangel and Griever.
Credit also goes to everyone else who contributed, and those who coded
or contributed to UnrealIRCd's ancestors.
WEBSITE
========
http://www.unrealircd.com/
CVS
====
To get anonymous access: (read only)
"cvs -d :pserver:anonymous@cvs.ircsystems.net:/home/cmunk/ircsystems/cvsroot login"
press enter when asked for password
Then, choose the appropiate branch you want:
latest 3.3 release (unstable/development):
"cvs -d :pserver:anonymous@cvs.ircsystems.net:/home/cmunk/ircsystems/cvsroot checkout -r devel -d Unreal-stable unreal"
To get support
================
Before asking others for help you MUST:
* read the docs (doc/unreal32docs.html or online: www.unrealircd.com/unreal32docs.html)
* check the FAQ (www.vulnscan.org/UnrealIRCd/faq/)
Means of support:
* Forum: http://forums.unrealircd.com/
* IRC: /server irc.ircsystems.net 6667 - /join #unreal-support
[Note: Follow the bots instructions in order to get voice.
Please be patient after asking questions, we may do other stuff
or we're away. Don't repeat questions, we heard you first time,
READ THE TOPIC before you ask anything. We do this on a free
base so we are volunteeringly helping you, but we are humans
like you, and we got to have peace at times as well.]
* Mailing list: unreal-users@lists.sourceforge.net
(http://lists.sourceforge.net/lists/listinfo/unreal-users also
has links to the archive).
UnrealIRCd Bugtracker (Where to report bugs or make suggestions)
=================================================================
http://bugs.unrealircd.org
Want to discuss, chat, etc?
=============================
* IRC: /server irc.unrealircd.org 6667 - /join #UnrealIRCd
+43
View File
@@ -0,0 +1,43 @@
/* Standard Aliases */
alias identify {
format "^#" {
target chanserv;
type services;
parameters "IDENTIFY %1-";
};
format "^[^#]" {
target nickserv;
type services;
parameters "IDENTIFY %1-";
};
type command;
};
alias services {
format "^#" {
target chanserv;
type services;
parameters "%1-";
};
format "^[^#]" {
target nickserv;
type services;
parameters "%1-";
};
type command;
};
alias register {
format "^#" {
target chanserv;
type services;
parameters "REGISTER %1-";
};
format "^[^#]" {
target nickserv;
type services;
parameters "REGISTER %1-";
};
type command;
};
+18
View File
@@ -0,0 +1,18 @@
/* Anope Aliases */
alias nickserv { type services; };
alias ns { target nickserv; type services; };
alias chanserv { type services; };
alias cs { target chanserv; type services; };
alias memoserv { type services; spamfilter yes; };
alias ms { target memoserv; type services; spamfilter yes; };
alias operserv { type services; };
alias os { target operserv; type services; };
alias helpserv { type services; };
alias botserv { type services; };
alias bs { target botserv; type services; };
alias hostserv { type services; };
alias hs { target hostserv; type services; };
include "aliases/aliases.conf";
+33
View File
@@ -0,0 +1,33 @@
/* Auspice Aliases */
/* Uncomment this, if you have enabled "MassServ, W and X" in auspice */
# alias massserv { type services; };
# alias ma { target massserv; type services; };
# alias W { type services; };
# alias X { type services; };
/* Uncomment this, if you have enabled "WebServ" in auspice */
# alias webserv { type services; };
# alias ws { target webserv; type services; };
alias agent { type services; };
alias adminserv { type services; };
alias as { target adminserv; type services; };
alias botserv { type services; };
alias bs { target botserv; type services; };
alias chanserv { type services; };
alias cs { target chanserv; type services; };
alias helpserv { type services; };
alias hs { target helpserv; type services; };
alias hostserv { type services; };
alias ho { target hostserv; type services; };
alias memoserv { type services; spamfilter yes; };
alias ms { target memoserv; type services; spamfilter yes; };
alias nickserv { type services; };
alias ns { target nickserv; type services; };
alias operserv { type services; };
alias os { target operserv; type services; };
alias rootserv { type services; };
alias rs { target rootserv; type services; };
include "aliases/aliases.conf";
+12
View File
@@ -0,0 +1,12 @@
/* Cygnus Aliases */
alias nickserv { type services; };
alias ns { target nickserv; type services; };
alias chanserv { type services; };
alias cs { target chanserv; type services; };
alias memoserv { type services; spamfilter yes; };
alias ms { target memoserv; type services; spamfilter yes; };
alias rootserv { type services; };
alias rs { target rootserv; type services; };
include "aliases/aliases.conf";
+16
View File
@@ -0,0 +1,16 @@
/* Epona Aliases */
alias nickserv { type services; };
alias ns { target nickserv; type services; };
alias chanserv { type services; };
alias cs { target chanserv; type services; };
alias memoserv { type services; spamfilter yes; };
alias ms { target memoserv; type services; spamfilter yes; };
alias operserv { type services; };
alias os { target operserv; type services; };
alias helpserv { type services; };
alias hs { target helpserv; type services; };
alias botserv { type services; };
alias bs { target botserv; type services; };
include "aliases/aliases.conf";
+14
View File
@@ -0,0 +1,14 @@
/* Generic Aliases */
alias nickserv { type services; };
alias ns { target nickserv; type services; };
alias chanserv { type services; };
alias cs { target chanserv; type services; };
alias memoserv { type services; spamfilter yes; };
alias ms { target memoserv; type services; spamfilter yes; };
alias operserv { type services; };
alias os { target operserv; type services; };
alias helpserv { type services; };
alias hs { target helpserv; type services; };
include "aliases/aliases.conf";
+4
View File
@@ -0,0 +1,4 @@
/* Generic StatServ Aliases */
alias statserv { type stats; };
alias ss { target statserv; type stats; };
+17
View File
@@ -0,0 +1,17 @@
/* IRCServices Aliases */
alias nickserv { type services; };
alias ns { target nickserv; type services; };
alias chanserv { type services; };
alias cs { target chanserv; type services; };
alias memoserv { type services; spamfilter yes; };
alias ms { target memoserv; type services; spamfilter yes; };
alias operserv { type services; };
alias os { target operserv; type services; };
alias helpserv { type services; };
alias hs { target helpserv; type services; };
alias irciihelp { type services; };
alias statserv { type services; };
alias ss { target statserv; type services; };
include "aliases/aliases.conf";
+6
View File
@@ -0,0 +1,6 @@
/* OperStats Aliases */
alias operserv { type stats; };
alias os { target operserv; type stats; };
alias statserv { type stats; };
alias ss { target statserv; type stats; };
+3
View File
@@ -0,0 +1,3 @@
all:
@autoconf
cp configure ..
+174
View File
@@ -0,0 +1,174 @@
dnl aclocal.m4 generated automatically by aclocal 1.4-p4
dnl Copyright (C) 1994, 1995-8, 1999 Free Software Foundation, Inc.
dnl This file is free software; the Free Software Foundation
dnl gives unlimited permission to copy and/or distribute it,
dnl with or without modifications, as long as this notice is preserved.
dnl This program is distributed in the hope that it will be useful,
dnl but WITHOUT ANY WARRANTY, to the extent permitted by law; without
dnl even the implied warranty of MERCHANTABILITY or FITNESS FOR A
dnl PARTICULAR PURPOSE.
dnl Macro: unet_CHECK_TYPE_SIZES
dnl
dnl Check the size of several types and define a valid int16_t and int32_t.
dnl
AC_DEFUN(unreal_CHECK_TYPE_SIZES,
[dnl Check type sizes
AC_CHECK_SIZEOF(short)
AC_CHECK_SIZEOF(int)
AC_CHECK_SIZEOF(long)
if test "$ac_cv_sizeof_int" = 2 ; then
AC_CHECK_TYPE(int16_t, int)
AC_CHECK_TYPE(u_int16_t, unsigned int)
elif test "$ac_cv_sizeof_short" = 2 ; then
AC_CHECK_TYPE(int16_t, short)
AC_CHECK_TYPE(u_int16_t, unsigned short)
else
AC_MSG_ERROR([Cannot find a type with size of 16 bits])
fi
if test "$ac_cv_sizeof_int" = 4 ; then
AC_CHECK_TYPE(int32_t, int)
AC_CHECK_TYPE(u_int32_t, unsigned int)
elif test "$ac_cv_sizeof_short" = 4 ; then
AC_CHECK_TYPE(int32_t, short)
AC_CHECK_TYPE(u_int32_t, unsigned short)
elif test "$ac_cv_sizeof_long" = 4 ; then
AC_CHECK_TYPE(int32_t, long)
AC_CHECK_TYPE(u_int32_t, unsigned long)
else
AC_MSG_ERROR([Cannot find a type with size of 32 bits])
fi
AC_CHECK_SIZEOF(rlim_t)
if test "$ac_cv_sizeof_rlim_t" = 8 ; then
AC_DEFINE(LONG_LONG_RLIM_T)
fi
])
AC_DEFUN(CHECK_LIBCURL,
[
AC_ARG_ENABLE(libcurl,
[AC_HELP_STRING([--enable-libcurl=DIR],[enable libcurl (remote include) support])],
[
CURLCFLAG=`$enableval/bin/curl-config --cflags`
CURLLIBS=`$enableval/bin/curl-config --libs`
dnl Ok this is ugly, basically we need to strip the version of c-ares that curl uses
dnl because we want to use our own version (which is hopefully fully binary
dnl compatible with the curl one as well).
dnl Therefore we need to strip the cares libs in a weird way...
dnl If anyone can come up with something better and still portable (no awk!?)
dnl then let us know.
if test "x`echo $CURLLIBS |grep ares`" != x ; then
dnl Attempt one: Linux sed
XCURLLIBS="`echo "$CURLLIBS"|sed -r 's/(@<:@^ @:>@+ @<:@^ @:>@+ )(@<:@^ @:>@+ @<:@^ @:>@+ )(.+)/\1\3/g' 2>/dev/null`"
if test x"$XCURLLIBS" = x; then
dnl Attempt two: FreeBSD (and others?) sed
XCURLLIBS="`echo "$CURLLIBS"|sed -E 's/(@<:@^ @:>@+ @<:@^ @:>@+ )(@<:@^ @:>@+ @<:@^ @:>@+ )(.+)/\1\3/g' 2>/dev/null`"
if test x"$XCURLLIBS" = x; then
AC_MSG_ERROR([sed appears to be broken. It is needed for a remote includes compile hack.])
fi
fi
CURLLIBS="$XCURLLIBS"
fi
IRCDLIBS="$IRCDLIBS $CURLLIBS"
CFLAGS="$CFLAGS $CURLCFLAG -DUSE_LIBCURL"
URL="url.o"
AC_SUBST(URL)
])
])
dnl the following 2 macros are based on CHECK_SSL by Mark Ethan Trostler <trostler@juniper.net>
AC_DEFUN([CHECK_SSL],
[
AC_ARG_ENABLE(ssl,
[AC_HELP_STRING([--enable-ssl=],[enable ssl will check /usr/local/ssl /usr/lib/ssl /usr/ssl /usr/pkg /usr/local /usr])],
[
AC_MSG_CHECKING(for openssl)
for dir in $enableval /usr/local/ssl /usr/lib/ssl /usr/ssl /usr/pkg /usr/local /usr; do
ssldir="$dir"
if test -f "$dir/include/openssl/ssl.h"; then
AC_MSG_RESULT(found in $ssldir/include/openssl)
found_ssl="yes";
if test ! "$ssldir" = "/usr" ; then
CFLAGS="$CFLAGS -I$ssldir/include";
fi
break;
fi
if test -f "$dir/include/ssl.h"; then
AC_MSG_RESULT(found in $ssldir/include)
found_ssl="yes";
if test ! "$ssldir" = "/usr" ; then
CFLAGS="$CFLAGS -I$ssldir/include";
fi
break
fi
done
if test x_$found_ssl != x_yes; then
AC_MSG_RESULT(not found)
echo ""
echo "Apparently you do not have both the openssl binary and openssl development libraries installed."
echo "You have two options:"
echo "a) Install the needed binaries and libraries"
echo " and run ./Config"
echo "OR"
echo "b) If you don't need SSL..."
echo " Run ./Config and say 'no' when asked about SSL"
echo ""
exit 1
else
CRYPTOLIB="-lssl -lcrypto";
if test ! "$ssldir" = "/usr" ; then
LDFLAGS="$LDFLAGS -L$ssldir/lib";
fi
AC_DEFINE(USE_SSL)
fi
],
)
])
AC_DEFUN([CHECK_ZLIB],
[
AC_ARG_ENABLE(ziplinks,
[AC_HELP_STRING([--enable-ziplinks],[enable ziplinks will check /usr/local /usr /usr/pkg])],
[
AC_MSG_CHECKING(for zlib)
for dir in $enableval /usr/local /usr /usr/pkg; do
zlibdir="$dir"
if test -f "$dir/include/zlib.h"; then
AC_MSG_RESULT(found in $zlibdir)
found_zlib="yes";
if test "$zlibdir" = "/usr" ; then
CFLAGS="$CFLAGS -DZIP_LINKS";
else
CFLAGS="$CFLAGS -I$zlibdir/include -DZIP_LINKS";
fi
break;
fi
done
if test x_$found_zlib != x_yes; then
AC_MSG_RESULT(not found)
echo ""
echo "Apparently you do not have the zlib development library installed."
echo "You have two options:"
echo "a) Install the zlib development library"
echo " and run ./Config"
echo "OR"
echo "b) If you don't need compressed links..."
echo " Run ./Config and say 'no' when asked about ziplinks support"
echo ""
exit 1
else
IRCDLIBS="$IRCDLIBS -lz";
if test "$zlibdir" != "/usr" ; then
LDFLAGS="$LDFLAGS -L$zlibdir/lib";
fi
HAVE_ZLIB=yes
fi
AC_SUBST(HAVE_ZLIB)
],
)
])
+507
View File
@@ -0,0 +1,507 @@
dnl Process this file with autoconf to produce a configure script.
AC_INIT(src/ircd.c)
if test $# = 0; then
echo "You might want to run ./Config or provide some parameters to this script."
echo "./configure --help for information about this script"
exit 0
fi
AC_CONFIG_HEADER(include/setup.h)
AC_PROG_CC
if test "$ac_cv_prog_gcc" = "yes"; then
CFLAGS="$CFLAGS -funsigned-char"
AC_CACHE_CHECK(if gcc has a working -pipe, ac_cv_pipe, [
save_cflags="$CFLAGS"
CFLAGS="$CFLAGS -pipe"
AC_TRY_COMPILE(,, ac_cv_pipe="yes", ac_cv_pipe="no")
CFLAGS="$save_cflags"
])
if test "$ac_cv_pipe" = "yes"; then
CFLAGS="-pipe $CFLAGS"
fi
fi
dnl (the gcc flag detection trick is taken from xemacs/Vin Shelton)
dnl UnrealIRCd might not be strict-aliasing safe at this time
case "`$CC -v --help 2>&1`" in
*-fstrict-aliasing* ) CFLAGS="$CFLAGS -fno-strict-aliasing" ;;
esac
dnl Pointer signedness warnings are really a pain and 99.9% of the time
dnl they are of absolutely no use whatsoever. IMO the person who decided
dnl to enable this without -Wall should be shot on sight.
case "`$CC -v --help 2>&1`" in
*-Wpointer-sign* ) CFLAGS="$CFLAGS -Wno-pointer-sign" ;;
esac
AC_PROG_CXX
AC_PATH_PROG(RM,rm)
AC_PATH_PROG(CP,cp)
AC_PATH_PROG(TOUCH,touch)
AC_PATH_PROG(OPENSSLPATH,openssl)
AC_PATH_PROG(INSTALL,install)
AC_CHECK_PROG(MAKER, gmake, gmake, make)
AC_PATH_PROG(GMAKE,gmake)
AC_PATH_PROG(GUNZIP, gunzip)
AC_PATH_PROG(PKGCONFIG, pkg-config)
dnl Checks for libraries.
AC_CHECK_LIB(descrypt, crypt, [AC_DEFINE(HAVE_CRYPT) IRCDLIBS="$IRCDLIBS-ldescrypt " MKPASSWDLIBS="-ldescrypt"],
AC_CHECK_LIB(crypt, crypt,[ AC_DEFINE(HAVE_CRYPT) IRCDLIBS="$IRCDLIBS-lcrypt " MKPASSWDLIBS="-lcrypt"]))
AC_CHECK_LIB(socket, socket,IRCDLIBS="$IRCDLIBS-lsocket " SOCKLIB="-lsocket")
AC_CHECK_LIB(nsl, inet_ntoa,IRCDLIBS="$IRCDLIBS-lnsl " INETLIB="-lnsl")
AC_SUBST(IRCDLIBS)
AC_SUBST(MKPASSWDLIBS)
dnl module checking based on Hyb7's module checking code
AC_DEFUN([AC_ENABLE_DYN],
[
AC_CHECK_FUNC(dlopen,, [AC_CHECK_LIB(dl, dlopen,IRCDLIBS="$IRCDLIBS -ldl",
[
AC_MSG_WARN(Dynamic linking is not enabled because dlopen was not found)
AC_DEFINE(STATIC_LINKING)
])])
hold_cflags=$CFLAGS
CFLAGS="$CFLAGS -export-dynamic"
AC_CACHE_CHECK(if we need the -export-dynamic flag, ac_cv_export_dynamic, [
AC_TRY_LINK(, [int i];, ac_cv_export_dynamic=yes, ac_cv_export_dynamic=no)])
if test "$ac_cv_export_dynamic" = "no"; then
CFLAGS=$hold_cflags
fi
AC_CACHE_CHECK(for compiler option to produce PIC,ac_cv_pic,[
if test "$ac_cv_prog_gcc" = "yes"; then
ac_cv_pic="-fPIC -DPIC -shared"
case `uname -s` in
Darwin*[)]
ac_cv_pic="-bundle -flat_namespace -undefined suppress"
;;
HP-UX*[)]
ac_cv_pic="-fPIC"
;;
esac
else
case `uname -s` in
SunOS*[)]
ac_cv_pic="-KPIC -DPIC -G"
;;
esac
fi
])
AC_CACHE_CHECK(if your system prepends an underscore on symbols,ac_cv_underscore,[
cat >uscore.c << __EOF__
int main() {
return 0;
}
__EOF__
$CC -o uscore $CFLAGS uscore.c 1>&5
if test -z "`strings -a uscore |grep '^_main$'`"; then
ac_cv_underscore=no
else
ac_cv_underscore=yes
fi
rm -f uscore uscore.c
])
if test "$ac_cv_underscore" = "yes"; then
AC_DEFINE(UNDERSCORE)
fi
MODULEFLAGS=$ac_cv_pic
AC_DEFINE(DYNAMIC_LINKING)
])
AC_DEFUN([AC_ENABLE_INET6],[
AC_CACHE_CHECK(if your system has IPv6 support, ac_cv_ip6, [
save_libs="$LIBS"
LIBS="$LIBS $SOCKLIB"
AC_TRY_RUN([
#include <sys/types.h>
#include <sys/socket.h>
int main() {
if (socket(AF_INET6, SOCK_STREAM, 0) < 0)
exit(1);
exit(0);
}
], ac_cv_ip6=yes, ac_cv_ip6=no)
])
if test "$ac_cv_ip6" = "no"; then
AC_MSG_WARN(Your system does not support IPv6 so it will not be enabled)
else
AC_DEFINE(INET6)
dnl in6addr_any detection code taken from ratbox
AC_MSG_CHECKING([for struct in6addr_any])
AC_COMPILE_IFELSE(
[AC_LANG_PROGRAM(
[[#define IN_AUTOCONF
#include <sys/types.h>
#include <sys/socket.h>
#include <netinet/in.h>]],
[[struct in6_addr a = in6addr_any;]]
)],
[AC_MSG_RESULT(yes)],
[
AC_MSG_RESULT(no)
AC_DEFINE(NO_IN6ADDR_ANY)
]
)
fi
LIBS="$save_libs"
])
AC_CHECK_HEADER(sys/param.h,AC_DEFINE(PARAMH))
AC_CHECK_HEADER(stdlib.h,AC_DEFINE(STDLIBH))
AC_CHECK_HEADER(stddef.h,AC_DEFINE(STDDEFH))
AC_CHECK_HEADER(sys/syslog.h,AC_DEFINE(SYSSYSLOGH))
AC_CHECK_HEADER(unistd.h,AC_DEFINE(UNISTDH))
AC_CHECK_HEADER(string.h,AC_DEFINE(STRINGH))
AC_CHECK_HEADER(strings.h,AC_DEFINE(STRINGSH))
AC_CHECK_HEADER(malloc.h,AC_DEFINE(MALLOCH,<malloc.h>))
AC_CHECK_HEADER(sys/rusage.h,AC_DEFINE(RUSAGEH))
AC_CHECK_HEADER(glob.h,AC_DEFINE(GLOBH))
dnl Checks for typedefs, structures, and compiler characteristics.
AC_C_CONST
AC_C_INLINE
AC_TYPE_SIZE_T
AC_HEADER_TIME
AC_STRUCT_TM
AC_TYPE_UID_T
unreal_CHECK_TYPE_SIZES
AC_CACHE_CHECK(what kind of nonblocking sockets you have, ac_cv_nonblocking,[
save_libs="$LIBS"
LIBS="$LIBS $SOCKLIB"
AC_TRY_RUN([
#include <sys/types.h>
#include <sys/socket.h>
#include <fcntl.h>
#include <sys/ioctl.h>
#include <sys/file.h>
#include <signal.h>
alarmed() {
exit(1);
}
int main() {
#ifdef O_NONBLOCK
char b[12], x[32];
int f, l = sizeof(x);
f = socket(AF_INET, SOCK_DGRAM, 0);
if (f >= 0 && !(fcntl(f, F_SETFL, O_NONBLOCK))) {
signal(SIGALRM, alarmed);
alarm(3);
recvfrom(f, b, 12, 0, (struct sockaddr *)x, &l);
alarm(0);
exit(0);
}
#endif
exit(1);
}
],ac_cv_nonblocking=O_NONBLOCK,[
AC_TRY_RUN([
#include <sys/types.h>
#include <sys/socket.h>
#include <fcntl.h>
#include <sys/ioctl.h>
#include <sys/file.h>
#include <signal.h>
alarmed() {
exit(0);
}
int main() {
#ifdef O_NDELAY
char b[12], x[32];
int f, l = sizeof(x);
f = socket(AF_INET, SOCK_DGRAM, 0);
if (f >= 0 && !(fcntl(f, F_SETFL, O_NDELAY))) {
signal(SIGALRM, alarmed);
alarm(3);
recvfrom(f, b, 12, 0, (struct sockaddr *)x, &l);
alarm(0);
exit(0);
}
#endif
exit(1);
}],ac_cv_nonblocking=O_NDELAY,[
AC_TRY_RUN([
#include <sys/types.h>
#include <sys/socket.h>
#include <fcntl.h>
#include <sys/ioctl.h>
#include <sys/file.h>
#include <signal.h>
alarmed() {
exit(1);
}
int main() {
#ifdef FIONBIO
char b[12], x[32];
int f, l = sizeof(x);
f = socket(AF_INET, SOCK_DGRAM, 0);
if (f >= 0 && !(fcntl(f, F_SETFL, FIONBIO))) {
signal(SIGALRM, alarmed);
alarm(3);
recvfrom(f, b, 12, 0, (struct sockaddr *)x, &l);
alarm(0);
exit(0);
}
#endif
exit(1);
], ac_cv_nonblocking=FIONBIO,ac_cv_nonblocking=none)])])])
if test "$ac_cv_nonblocking" = "O_NONBLOCK"; then
AC_DEFINE(NBLOCK_POSIX)
elif test "$ac_cv_nonblocking" = "O_NDELAY"; then
AC_DEFINE(NBLOCK_BSD)
elif test "$ac_cv_nonblocking" = "FIONBIO"; then
AC_DEFINE(NBLOCK_SYSV)
fi
LIBS="$save_libs"
dnl Checks for library functions.
AC_PROG_GCC_TRADITIONAL
AC_FUNC_SETPGRP
AC_FUNC_SETVBUF_REVERSED
AC_FUNC_ALLOCA
AC_CHECK_FUNCS(snprintf,AC_DEFINE(HAVE_SNPRINTF))
AC_CHECK_FUNCS(vsnprintf,AC_DEFINE(HAVE_VSNPRINTF))
AC_CHECK_FUNCS(strlcpy, AC_DEFINE(HAVE_STRLCPY))
AC_CHECK_FUNCS(strlcat, AC_DEFINE(HAVE_STRLCAT))
AC_CHECK_FUNCS(strlncat, AC_DEFINE(HAVE_STRLNCAT))
AC_CHECK_FUNCS(inet_pton, AC_DEFINE(HAVE_INET_PTON))
AC_CHECK_FUNCS(inet_ntop, AC_DEFINE(HAVE_INET_NTOP))
dnl Check if it supports C99 style variable length arrays
AC_CACHE_CHECK(if C99 variable length arrays are supported, ac_cv_varlen_arrays, [
AC_TRY_COMPILE(,[
int main() {
int i = 5;
int a[i];
a[0] = 1;
return 0;
}], ac_cv_varlen_arrays=yes, ac_cv_varlen_arrays=no)
])
if test "$ac_cv_varlen_arrays" = "yes" ; then
AC_DEFINE(HAVE_C99_VARLEN_ARRAY)
fi
AC_CACHE_CHECK(if we can set the core size to unlimited, ac_cv_force_core,[
AC_TRY_RUN([
#include <sys/time.h>
#include <sys/resource.h>
#include <unistd.h>
int main() {
struct rlimit corelim;
corelim.rlim_cur = corelim.rlim_max = RLIM_INFINITY;
if (setrlimit(RLIMIT_CORE, &corelim))
exit(1);
exit(0);
}
],ac_cv_force_core=yes,ac_cv_force_core=no)
])
if test "$ac_cv_force_core" = "yes"; then
AC_DEFINE(FORCE_CORE)
fi
AC_FUNC_VPRINTF
AC_CHECK_FUNCS(gettimeofday,AC_DEFINE(GETTIMEOFDAY),[AC_CHECK_FUNCS(lrand48,AC_DEFINE(LRADN48))])
AC_CHECK_FUNCS(getrusage,AC_DEFINE(GETRUSAGE_2),[AC_CHECK_FUNCS(times,AC_DEFINE(TIMES_2))])
AC_CHECK_FUNCS(setproctitle,AC_DEFINE(HAVE_SETPROCTITLE),[
AC_CHECK_LIB(util,setproctitle,AC_DEFINE(HAVE_SETPROCTITLE) IRCDLIBS="$IRCDLIBS-lutil",[
AC_EGREP_HEADER([#define.*PS_STRINGS.*],sys/exec.h,AC_DEFINE(HAVE_PSSTRINGS),[
AC_CHECK_FUNCS(pstat,AC_DEFINE(HAVE_PSTAT))
])
])
])
AC_CACHE_CHECK(what type of signals you have, ac_cv_sigtype, [
AC_TRY_RUN([
#include <signal.h>
int main() {
sigaction(SIGTERM, (struct sigaction *)0L, (struct sigaction *)0L);
}
], ac_cv_sigtype=POSIX, [
AC_TRY_RUN([
#include <signal.h>
int calls = 0;
void handler()
{
if (calls)
return;
calls++;
kill(getpid(), SIGTERM);
sleep(1);
}
int main() {
signal(SIGTERM, handler);
kill(getpid(), SIGTERM);
exit(0);
}
], ac_cv_sigtype=BSD,ac_cv_sigtype=SYSV)])])
if test "$ac_cv_sigtype" = "POSIX"; then
AC_DEFINE(POSIX_SIGNALS)
elif test "$ac_cv_sigtype" = "BSD"; then
AC_DEFINE(BSD_RELIABLE_SIGNALS)
else
AC_DEFINE(SYSV_UNRELIABLE_SIGNALS)
fi
AC_CHECK_FUNCS(strtoken,,AC_DEFINE(NEED_STRTOKEN))
AC_CHECK_FUNCS(strtok,,AC_DEFINE(NEED_STRTOK))
AC_CHECK_FUNCS(strerror,,AC_DEFINE(NEED_STRERROR))
AC_CHECK_FUNCS(index,,AC_DEFINE(NOINDEX))
AC_CHECK_FUNCS(strtoul,,STRTOUL="strtoul.o")
AC_CHECK_FUNCS(bcopy,,AC_DEFINE(NEED_BCOPY))
AC_CHECK_FUNCS(bcmp,,AC_DEFINE(NEED_BCMP))
AC_CHECK_FUNCS(bzero,,AC_DEFINE(NEED_BZERO))
AC_CHECK_FUNCS(strcasecmp,AC_DEFINE(GOT_STRCASECMP))
save_libs="$LIBS"
LIBS="$LIBS $SOCKLIB $INETLIB"
AC_CHECK_FUNCS(inet_addr,,AC_DEFINE(NEED_INET_ADDR))
AC_CHECK_FUNCS(inet_ntoa,,AC_DEFINE(NEED_INET_NTOA))
AC_CHECK_FUNCS(inet_netof,,AC_DEFINE(NEED_INET_NETOF))
LIBS="$save_libs"
AC_CHECK_FUNCS(syslog,AC_DEFINE(HAVE_SYSLOG))
AC_CHECK_FUNCS(vsyslog,AC_DEFINE(HAVE_VSYSLOG))
AC_SUBST(STRTOUL)
AC_SUBST(CRYPTOLIB)
AC_SUBST(MODULEFLAGS)
AC_ARG_WITH(listen, [AC_HELP_STRING([--with-listen=backlog],[Specify the listen backlog value])],
AC_DEFINE_UNQUOTED(LISTEN_SIZE,$withval),AC_DEFINE(LISTEN_SIZE,5))
AC_ARG_WITH(nick-history, [AC_HELP_STRING([--with-nick-history=length],[Specify the length of the nickname history])],
AC_DEFINE_UNQUOTED(NICKNAMEHISTORYLENGTH,$withval), AC_DEFINE(NICKNAMEHISTORYLENGTH,2000))
AC_ARG_WITH(sendq, [AC_HELP_STRING([--with-sendq=maxsendq],[Specify the max sendq for the server])],
AC_DEFINE_UNQUOTED(MAXSENDQLENGTH,$withval),AC_DEFINE(MAXSENDQLENGTH,3000000))
AC_ARG_WITH(bufferpool, [AC_HELP_STRING([--with-bufferpool=size],[Specify the size of the buffer pool])],
AC_DEFINE_UNQUOTED(BUFFERPOOL,[($withval * MAXSENDQLENGTH)]),AC_DEFINE(BUFFERPOOL,[(18 * MAXSENDQLENGTH)]))
AC_ARG_WITH(permissions, [AC_HELP_STRING([--with-permissions=permissions],[Specify the default permissions for
configuration files])], AC_DEFINE_UNQUOTED(DEFAULT_PERMISSIONS,$withval), AC_DEFINE(DEFAULT_PERMISSIONS, 0600))
AC_ARG_WITH(dpath, [AC_HELP_STRING([--with-dpath=path],[Specify the path where configuration files are stored])],
AC_DEFINE_UNQUOTED(DPATH, "$withval") IRCDDIR="$withval", AC_DEFINE_UNQUOTED(DPATH,"`pwd`") IRCDDIR="`pwd`")
AC_ARG_WITH(fd-setsize, [AC_HELP_STRING([--with-fd-setsize=size],[Specify the max file descriptors to use])],
ac_fd=$withval, ac_fd=1024)
AC_DEFINE_UNQUOTED(MAXCONNECTIONS, $ac_fd)
AC_ARG_WITH(spath, [AC_HELP_STRING([--with-spath],[Specify the location of the executable])],
AC_DEFINE_UNQUOTED(SPATH,"$withval/ircd") BINDIR="$withval",AC_DEFINE_UNQUOTED(SPATH,"`pwd`/src/ircd") BINDIR="`pwd`/src/ircd")
AC_ARG_ENABLE(nospoof, [AC_HELP_STRING([--enable-nospoof],[Enable spoofing protection])], AC_DEFINE(NOSPOOF))
AC_ARG_ENABLE(prefixaq, [AC_HELP_STRING([--enable-prefixaq],[Enable chanadmin and chanowner prefixes])], AC_DEFINE(PREFIX_AQ))
AC_ARG_ENABLE(hub, [AC_HELP_STRING([--enable-hub],[Compile as a hub server])], AC_DEFINE(HUB))
AC_ARG_WITH(showlistmodes, [AC_HELP_STRING([--with-showlistmodes], [Specify whether modes are shown in /list])],
AC_DEFINE(LIST_SHOW_MODES))
AC_ARG_WITH(topicisnuhost, [AC_HELP_STRING([--with-topicisnuhost], [Display nick!user@host as the topic setter])],
AC_DEFINE(TOPIC_NICK_IS_NUHOST))
AC_ARG_WITH(shunnotices, [AC_HELP_STRING([--with-shunnotices], [Notify a user when he/she is no longer shunned])],
AC_DEFINE(SHUN_NOTICES))
AC_ARG_WITH(no-operoverride, [AC_HELP_STRING([--with-no-operoverride], [Disable OperOverride])],
AC_DEFINE(NO_OPEROVERRIDE))
AC_ARG_WITH(disableusermod, [AC_HELP_STRING([--with-disableusermod], [Disable /set* and /chg*])],
AC_DEFINE(DISABLE_USERMOD))
AC_ARG_WITH(operoverride-verify, [AC_HELP_STRING([--with-operoverride-verify], [Require opers to invite themselves to +s/+p channels])],
AC_DEFINE(OPEROVERRIDE_VERIFY))
AC_ARG_WITH(disable-extendedban-stacking, [AC_HELP_STRING([--with-disable-extendedban-stacking], [Disable extended ban stacking])],
AC_DEFINE(DISABLE_STACKED_EXTBANS))
MODULES_WHICH=commandsandmodules
AC_MSG_CHECKING(for how much module building work we need to do)
AC_ARG_WITH(moduleswhich,
[ --with-moduleswhich=onlycommands|onlymodules|commandsandmodules What modules to build],
[ case "$withval" in
yes|no)
;;
* )
MODULES_WHICH="$withval"
;;
esac])
AC_SUBST(MODULES_WHICH)
AC_MSG_RESULT($MODULES_WHICH)
CHECK_SSL
CHECK_ZLIB
CHECK_LIBCURL
AC_ARG_ENABLE(dynamic-linking, [AC_HELP_STRING([--enable-dynamic-linking],[Make the IRCd dynamically link shared objects rather than statically])], [AC_ENABLE_DYN], [AC_DEFINE(STATIC_LINKING)])
AC_ARG_ENABLE(inet6, [AC_HELP_STRING([--enable-inet6],[Make the IRCd support IPv6])], [AC_ENABLE_INET6])
AC_SUBST(IRCDDIR)
AC_SUBST(BINDIR)
AC_MSG_CHECKING(if FD_SETSIZE is large enough to allow $ac_fd file descriptors)
AC_TRY_RUN([
#include <sys/types.h>
#include <sys/time.h>
int main() {
if (FD_SETSIZE >= $ac_fd)
exit(0);
exit(1);
}
], AC_MSG_RESULT(yes), [
FD_SETSIZE="-DFD_SETSIZE=$ac_fd"
AC_MSG_RESULT(no)
])
AC_SUBST(FD_SETSIZE)
case `uname -s` in
*SunOS*)
CFLAGS="$CFLAGS -D_SOLARIS"
IRCDLIBS="$IRCDLIBS -lresolv "
;;
*solaris*)
CFLAGS="$CFLAGS -D_SOLARIS"
IRCDLIBS="$IRCDLIBS -lresolv "
;;
esac
dnl REMEMBER TO CHANGE WITH A NEW PCRE RELEASE!
tre_version="7.2"
AC_MSG_RESULT(extracting PCRE regex library)
cur_dir=`pwd`
cd extras
dnl remove old tre directory to force a recompile...
rm -rf pcre-$tre_version
if test "x$ac_cv_path_GUNZIP" = "x" ; then
tar xfz pcre.tar.gz
else
cp pcre.tar.gz pcre.tar.gz.bak
gunzip -f pcre.tar.gz
cp pcre.tar.gz.bak pcre.tar.gz
tar xf pcre.tar
fi
AC_MSG_RESULT(configuring PCRE regex library)
cd pcre-$tre_version
./configure --disable-shared --disable-system-abi --disable-utf8 --prefix=$cur_dir/extras/regexp || exit 1
AC_MSG_RESULT(compiling PCRE regex library)
$ac_cv_prog_MAKER || exit 1
AC_MSG_RESULT(installing PCRE regex library)
$ac_cv_prog_MAKER install || exit 1
TREINCDIR="$cur_dir/extras/regexp/include"
AC_SUBST(TREINCDIR)
if test "x$ac_cv_path_PKGCONFIG" = "x" ; then
TRELIBS="-L../extras/regexp/lib -lpcreposix -lpcre"
else
TRELIBS="`$ac_cv_path_PKGCONFIG --libs libpcre.pc` -lpcreposix -lpcre"
fi
AC_SUBST(TRELIBS)
cd $cur_dir
dnl REMEMBER TO CHANGE WITH A NEW C-ARES RELEASE!
cares_version="1.4.0"
AC_MSG_RESULT(extracting c-ares resolver library)
cur_dir=`pwd`
cd extras
dnl remove old c-ares directory to force a recompile...
rm -rf c-ares-$cares_version
if test "x$ac_cv_path_GUNZIP" = "x" ; then
tar xfz c-ares.tar.gz
else
cp c-ares.tar.gz c-ares.tar.gz.bak
gunzip -f c-ares.tar.gz
cp c-ares.tar.gz.bak c-ares.tar.gz
tar xf c-ares.tar
fi
AC_MSG_RESULT(configuring c-ares library)
cd c-ares-$cares_version
./configure --prefix=$cur_dir/extras/c-ares || exit 1
AC_MSG_RESULT(compiling c-ares resolver library)
$ac_cv_prog_MAKER || exit 1
AC_MSG_RESULT(installing c-ares resolver library)
$ac_cv_prog_MAKER install || exit 1
CARESINCDIR="$cur_dir/extras/c-ares/include"
AC_SUBST(CARESINCDIR)
CARESLIBDIR="-L../extras/c-ares/lib"
AC_SUBST(CARESLIBDIR)
CARESLIBS="-lcares"
AC_SUBST(CARESLIBS)
cd $cur_dir
AC_OUTPUT(Makefile src/modules/Makefile src/modules/chanmodes/Makefile unreal ircdcron/ircdchk)
chmod 0700 unreal
chmod 0700 ircdcron/ircdchk
+52
View File
@@ -0,0 +1,52 @@
/*
Unreal Internet Relay Chat Daemon
Copyright (C) Carsten V. Munk 2000
NOTE: Those words are not meant to insult you (the user)
but is meant to be a list of words so that the +G channel/user mode
will work properly. You can easily modify this file at your will.
If you got words to add to this file, please mail badwords@tspre.org
This is some filling space, scroll down to see the words
*/
badword channel { word "pussy"; };
badword channel { word "fuck"; };
badword channel { word "whore"; };
badword channel { word "slut"; };
badword channel { word "shit"; };
badword channel { word "asshole"; };
badword channel { word "bitch"; };
badword channel { word "cunt"; };
badword channel { word "vagina"; };
badword channel { word "penis"; };
badword channel { word "jackass"; };
badword channel { word "*fucker*"; };
badword channel { word "faggot"; };
badword channel { word "fag"; };
badword channel { word "horny"; };
badword channel { word "gay"; };
badword channel { word "dickhead"; };
badword channel { word "sonuvabitch"; };
badword channel { word "*fuck*"; };
badword channel { word "tits"; };
+52
View File
@@ -0,0 +1,52 @@
/*
Unreal Internet Relay Chat Daemon
Copyright (C) Carsten V. Munk 2000
NOTE: Those words are not meant to insult you (the user)
but is meant to be a list of words so that the +G channel/user mode
will work properly. You can easily modify this file at your will.
If you got words to add to this file, please mail badword messages@tspre.org
This is some filling space, scroll down to see the words
*/
badword message { word "pussy"; };
badword message { word "fuck"; };
badword message { word "whore"; };
badword message { word "slut"; };
badword message { word "shit"; };
badword message { word "asshole"; };
badword message { word "bitch"; };
badword message { word "cunt"; };
badword message { word "vagina"; };
badword message { word "penis"; };
badword message { word "jackass"; };
badword message { word "*fucker*"; };
badword message { word "faggot"; };
badword message { word "fag"; };
badword message { word "horny"; };
badword message { word "gay"; };
badword message { word "dickhead"; };
badword message { word "sonuvabitch"; };
badword message { word "*fuck*"; };
badword message { word "tits"; };
+52
View File
@@ -0,0 +1,52 @@
/*
Unreal Internet Relay Chat Daemon
Copyright (C) Carsten V. Munk 2000
NOTE: Those words are not meant to insult you (the user)
but is meant to be a list of words so that quit message censoring
will work properly. You can easily modify this file at your will.
If you got words to add to this file, please mail badword badwords@tspre.org
This is some filling space, scroll down to see the words
*/
badword quit { word "pussy"; };
badword quit { word "fuck"; };
badword quit { word "whore"; };
badword quit { word "slut"; };
badword quit { word "shit"; };
badword quit { word "asshole"; };
badword quit { word "bitch"; };
badword quit { word "cunt"; };
badword quit { word "vagina"; };
badword quit { word "penis"; };
badword quit { word "jackass"; };
badword quit { word "*fucker*"; };
badword quit { word "faggot"; };
badword quit { word "fag"; };
badword quit { word "horny"; };
badword quit { word "gay"; };
badword quit { word "dickhead"; };
badword quit { word "sonuvabitch"; };
badword quit { word "*fuck*"; };
badword quit { word "tits"; };
-84
View File
@@ -1,84 +0,0 @@
#! /bin/sh
#
# $Id$
# Old: @(#)install.sh 4.5 (Berkeley) 10/12/83
#
cmd=/bin/mv
strip=""
chmod="/bin/chmod 755"
chown="chown -f root"
chgrp="/bin/chgrp -f bin"
while true ; do
case $1 in
-s ) strip="strip"
shift
;;
-c ) cmd="/bin/cp"
shift
;;
-m ) chmod="/bin/chmod $2"
shift
shift
;;
-o ) chown="/etc/chown -f $2"
shift
shift
;;
-g ) chgrp="/bin/chgrp -f $2"
shift
shift
;;
-d ) cmd="/bin/mkdir"
shift
;;
* ) break
;;
esac
done
if [ ! ${2-""} ]
then echo "install: no destination specified"
exit 1
fi
if [ ${3-""} ]
then echo "install: too many files specified -> $*"
exit 1
fi
if [ $1 = $2 -o $2 = . ]
then echo "install: can't move $1 onto itself"
exit 1
fi
case $cmd in
/bin/mkdir )
file=$2/$1
;;
* )
if [ '!' -f $1 ]
then echo "install: can't open $1"
exit 1
fi
if [ -d $2 ]
then file=$2/$1
else file=$2
fi
/bin/rm -f $file
;;
esac
case $cmd in
/bin/mkdir )
if [ ! -d "$file" ]
then $cmd $file
fi
;;
* )
$cmd $1 $file
if [ $strip ]
then $strip $file
fi
;;
esac
$chown $file
$chgrp $file
$chmod $file
+1360
View File
File diff suppressed because it is too large Load Diff
Vendored
+1375
View File
File diff suppressed because it is too large Load Diff
Vendored Executable
+14251
View File
File diff suppressed because it is too large Load Diff
-38
View File
@@ -1,38 +0,0 @@
#************************************************************************
#* IRC - Internet Relay Chat, ircd/crypt/Makefile
#* Copyright (C) 1991 Darren Reed
#*
#* This program is free software; you can redistribute it and/or modify
#* it under the terms of the GNU General Public License as published by
#* the Free Software Foundation; either version 1, or (at your option)
#* any later version.
#*
#* This program is distributed in the hope that it will be useful,
#* but WITHOUT ANY WARRANTY; without even the implied warranty of
#* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
#* GNU General Public License for more details.
#*
#* You should have received a copy of the GNU General Public License
#* along with this program; if not, write to the Free Software
#* Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
#*
#* $Id$
#*/
#
# Change this to the path of your local ircd.conf file
#
IRCDCONF = ../ircd.conf
all: mkpasswd
crypt: install
mkpasswd: mkpasswd.c
cc -lcrypt -O mkpasswd.c -o mkpasswd
install:
crypter ${IRCDCONF}
@echo 'done.'
clean:
/bin/rm -f mkpasswd
-63
View File
@@ -1,63 +0,0 @@
/************************************************************************
* IRC - Internet Relay Chat, ircd/crypt/README
* Copyright (C) 1991 Nelson Minar
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation; either version 1, or (at your option)
* any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
*
* $Id$
*/
The change implemented here is that the operator password in irc.conf
is no longer stored in plaintext form, but is encrypted the same way
that user passwords are encrypted on normal UNIX systems. Ie, instead
of having
O:*:goodboy:Nelson
in your ircd.conf file, you have
O:*:sCnvYRmbFJ7oI:Nelson
You still type "/oper Nelson goodboy" to become operator. However, if
someone gets ahold of your irc.conf file, they can no longer figure
out what the password is from reading it. There are still other
security holes, namely server-server passwords, but this closes one
obvious problem.
So how do you generate these icky looking strings for passwords?
There's a simple program called mkpasswd to do that for you. Just run
mkpasswd, and at the prompt type in your plaintext password. It will
spit out the encrypted password, which you should then just copy into
the irc.conf file. This should be done only when adding new passwords
to your irc.conf file. To change over your irc.conf file to use
encrypted passwords, define CRYPT_OPER_PASSWORD in config.h. You will
need to recompile your server if you already compiled it with this
feature disabled. Once compiled, edit the Makefile in this directory
and chang "IRCDCONF" to your irc.conf file. Then "make install" in this
directory to replace all the operator passwords in your irc.conf file
with the encrypted format.
Choose your passwords carefully. Do not choose something in a
dictionary, make sure its at least 5 characters. Anything past 8
characters is ignored.
One thing to note about crypt() passwords - for every plaintext, there
are 4096 different passwords. Some valid encryptions of "goodboy"
include t1Ub2RhRQHd4g sCnvYRmbFJ7oI and Xr4Z.Kg5tcdy6. The first
two characters (the "salt") determine which of the 4096 passwords
you will get. mkpasswd chooses the salt randomly, or alternately
will let you specify one on the command line.
see also - crypt(3)
-55
View File
@@ -1,55 +0,0 @@
#!/usr/local/bin/perl
#************************************************************************
#* IRC - Internet Relay Chat, ircd/crypt/crypter
#* Copyright (C) 1991 Sean Batt
#*
#* This program is free software; you can redistribute it and/or modify
#* it under the terms of the GNU General Public License as published by
#* the Free Software Foundation; either version 1, or (at your option)
#* any later version.
#*
#* This program is distributed in the hope that it will be useful,
#* but WITHOUT ANY WARRANTY; without even the implied warranty of
#* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
#* GNU General Public License for more details.
#*
#* You should have received a copy of the GNU General Public License
#* along with this program; if not, write to the Free Software
#* Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
#*
#* $Id$
#*
#*/
#From Sean Batt sean@coombs.anu.edu.au
#
#Temporary output file
#
$tmpfile = "/tmp/ircd.conf.tmp";
#
#Original ircd.conf file
#
$ircdconf = @ARGV[0];
print "crypting ",$ircdconf,"\n";
@saltset = ('a' .. 'z', 'A' .. 'Z', '0' .. '9', '.', '/');
umask(0077);
open ($ircdout, ">/tmp/ircd.conf.tmp") || die "open $!";
while ($text = <>) {
#if its not an "O" line we can ignore it
$text =~ /^o/i || print ($ircdout $text) && next;
chop($text);
@oline = split(':', $text);
$salt = $saltset[rand(time)%64].$saltset[(rand(time)>>6)%64];
$oline[2] = crypt(@oline[2], $salt);
print ($ircdout join(':',@oline)."\n");
}
close ($ircdout);
close ($ircdin);
print "/bin/cp ",$tmpfile," ",$ircdconf,"\n";
(fork()==0) ? exec("/bin/cp", $tmpfile, $ircdconf) : wait;
#unlink($tmpfile);
-43
View File
@@ -1,43 +0,0 @@
/* simple password generator by Nelson Minar (minar@reed.edu)
* copyright 1991, all rights reserved.
* You can use this code as long as my name stays with it.
*
* $Id$
*
*/
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
extern char *getpass();
int main(argc, argv)
int argc;
char *argv[];
{
static char saltChars[] = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789./";
char salt[3];
char * plaintext;
int i;
if (argc < 2) {
srandom(time(0)); /* may not be the BEST salt, but its close */
salt[0] = saltChars[random() % 64];
salt[1] = saltChars[random() % 64];
salt[2] = 0;
}
else {
salt[0] = argv[1][0];
salt[1] = argv[1][1];
salt[2] = '\0';
if ((strchr(saltChars, salt[0]) == NULL) || (strchr(saltChars, salt[1]) == NULL))
fprintf(stderr, "illegal salt %s\n", salt), exit(1);
}
plaintext = getpass("Enter Password: ");
printf("Encryption: %s\n", crypt(plaintext, salt));
return 0;
}
+4453
View File
File diff suppressed because it is too large Load Diff
Executable
+66
View File
@@ -0,0 +1,66 @@
#!/bin/sh
if test "x$1" = x -o "x$2" = x ; then
echo "Syntax:"
echo "curlinstall ares_path libcurl_path"
echo ""
exit 1
fi
if [ "`eval echo -n 'a'`" = "-n a" ] ; then
c="\c"
else
n="-n"
fi
save_PWD=`pwd`
echo "Installing ares"
cd $1
./configure --prefix=$HOME/ares && make && make install
SSLFLAG=""
while [ -z "$SSLFLAG" ] ; do
echo ""
echo "Should libcurl be built with SSL support?"
echo $n "-> " $c
read cc
case "$cc" in
[Yy]*)
SSLFLAG="--with-ssl"
;;
[Nn]*)
SSLFLAG="--without-ssl"
;;
*)
echo ""
echo "You must enter either Yes or No"
;;
esac
done
if [ -f $HOME/ares/lib/libcares.a ] ; then
if [ -f $HOME/ares/lib/libares.a ] ; then
rm -f $HOME/ares/lib/libares.a
fi
cp $HOME/ares/lib/libcares.a $HOME/ares/lib/libares.a
fi
echo "Installing libcurl"
cd $2
CPPFLAGS="-I$HOME/ares/include" ./configure --prefix=$HOME/curl --disable-shared \
--disable-thread --enable-ares=$HOME/ares --disable-ipv6 $SSLFLAG
cp -R $HOME/ares/lib ares
make && make install
if [ -f $HOME/curl/lib/libares.a ] ; then
rm -f $HOME/curl/lib/libares.a
fi
cp $HOME/ares/lib/libares.a $HOME/curl/lib
cd $save_PWD
echo ""
echo ""
echo "libcurl has been installed. When running ./Config specify:"
echo "$HOME/curl"
echo "for the directory you installed libcurl to."
+42
View File
@@ -0,0 +1,42 @@
/* Example of a possible semi-secure /DCCALLOW configuration written by Syzop.
* $Id$
*
* Actually nothing is *100% secure*... there could still be
* bugs in the software itself (think: a winamp bug that can
* be exploited via an mp3, or: a wmplayer bug that can be
* exploited via a specially crafted .wmv, etc..).
* If you are really that paranoid you could just remove
* all 'allow dcc'-blocks and prompt the user for EVERY file ;).
*
* Still, I think this file is a good tradeoff between userfriendlyness
* and security. Note that when you try to only DENY specific
* file type (exe, com, etc) you are *guaranteed* to miss ones
* (like: did you know .r17 gets treated as a rar archive?
* and that an exe can be disguished as .cmd which is executable
* on nt/w2k/xp?)
*/
/* first.. deny everything, then allow known-good stuff... */
deny dcc { filename "*"; reason "Possible executable content"; soft yes; };
/* common image formats */
allow dcc { filename "*.jpg"; soft yes; };
allow dcc { filename "*.jpeg"; soft yes; };
allow dcc { filename "*.gif"; soft yes; };
allow dcc { filename "*.png"; soft yes; };
allow dcc { filename "*.bmp"; soft yes; };
/* audio / video (but not scripted/playlists!) */
allow dcc { filename "*.mp1"; soft yes; };
allow dcc { filename "*.mp2"; soft yes; };
allow dcc { filename "*.mp3"; soft yes; };
allow dcc { filename "*.mpg"; soft yes; };
allow dcc { filename "*.mpeg"; soft yes; };
allow dcc { filename "*.m1v"; soft yes; };
allow dcc { filename "*.m2v"; soft yes; };
allow dcc { filename "*.vob"; soft yes; };
allow dcc { filename "*.wav"; soft yes; };
/* text / misc */
allow dcc { filename "*.txt"; soft yes; };
allow dcc { filename "*.log"; soft yes; };
allow dcc { filename "*.pdf"; soft yes; };
allow dcc { filename "*.c"; soft yes; };
allow dcc { filename "*.cpp"; soft yes; };
-72
View File
@@ -1,72 +0,0 @@
# $Id$
on ^367 * if ([$4] != []) {echo *** $1 \($3 - $stime($4)) $2} {echo *** $1-}
on ^333 * echo *** Topic for $1 set by $2 on $stime($3)
on ^317 * if (index(012345679 $3) != -1) {echo *** $1 has been idle for $2 seconds. Signon at $stime($3)} {echo *** $1 has been idle for $2 seconds.}
On ^329 "*" echo *** $1 : created $stime($2)
on ^
alias silence quote silence
alias sile quote silence
on ^raw_irc "% SILENCE %" echo *** $*
@ hideit = 0
on ^server_notice "% % NOTICE -- CLIENT*" if (hideit != 1) {echo *** $2-}
alias show @ hideit = 0;echo *** You can now see clients connecting/exiting
alias hide @ hideit = 1;echo *** You will no longer see clients connecting/exiting
# ctime and sendq written by bry
# modified by Mmmm
alias ctime {
^on 211 -
if ( [$0] )
{ ^assign SS $0- }
{ ^assign SS $S }
^on ^211 * {
eval ^assign hrs2 ${ ([$7]/60)/60}
eval ^assign min2 ${[$7]/60}
eval ^assign dys ${[$HRS2]/24}
eval ^assign hrs ${[$HRS2]-([$DYS]*24)}
eval ^assign min ${[$MIN2] - ( ([$HRS]+([$DYS]*24) )*60)}
eval ^assign sec ${[$7]-([$MIN2]*60)}
@ a = index(\[ $1) - 1
@ b = left($a $1)
if (index(. $b) == -1)
{eval echo *** $1 $[2]DYS days, $[2]HRS hrs, $[2]MIN min, $[2]SEC s}
{eval echo *** $1 $[2]DYS days, $[2]HRS hrs, $[2]MIN min, $[2]SEC s}
}
^stats l $SS
}
alias sendq {
eval ^on ^211 "$SRV *" {
@ a = index(\[ $1) - 1
@ b = left($a $1)
if (index(. $b) == -1)
{eval echo *** $[11]2 sendq $1}
{eval echo *** $[11]2 sendq $1}
}
if ( [$0] )
{ ^assign SRV $0- }
{ ^assign SRV $S }
stats l $SRV
wait -cmd eval ^on ^211 -"$SRV *"
}
# If you use Daveman's toolbox or any auto rejoin line, remove the old
# on raw_irc for KICK, and use the foll. one instead: (Run)
#
#ON ^RAW_IRC "% KICK % % *" {
# IF ([$3]==[$N])
# {
# //QUOTE JOIN $2
# ECHO $MID(11 5 $STIME($TIME())) * You have been kicked off channel $2 by $LEFT($INDEX(! $0) $0) \($MID(1 256 $4-)\)
# }
# {
# ECHO $MID(11 5 $STIME($TIME())) * $3 has been kicked off channel $2 by $LEFT($INDEX(! $0) $0) \($MID(1 256 $4-)\)
# }
# }
+8 -3
View File
@@ -118,8 +118,13 @@ Tom Hopkins <hoppie@buengf.bu.edu> / September, October 1990:
always works on code, so he has to have done alot more than three
lines worth. :)
Carsten Munk <stskeeps@mp3fans.co.uk> / May and futher 1999:
* Made many features based on Elite.. :/
UnrealIRCd Coders
Carsten Munk <stskeeps@unrealircd.com> / May 1999, date
Dominick Meglio <codemastr@unrealircd.com> / June 1999, date
David Flynn / March 2000, June 2000
McSkaf / June 2001, September 2001
Finny Merrill <griever@unrealircd.com> / November 2001, December 2002
Bram Matthys <syzop@unrealircd.com> / January 2002, date
Thanks go to those persons not mentioned here who have added their advice,
opinions, and code to IRC.
@@ -139,4 +144,4 @@ Eric P. Scott <eps@toaster.sfsu.edu>
Dan Goodwin <fornax@wpi.wpi.edu>
Noah Friedman <friedman@ai.mit.edu>
[ $Id$ ]
[ $Id$ ]
-128
View File
@@ -1,128 +0,0 @@
SmartRoute
Rule based connects
Draft 4 - Aug 19, 1994
by Tony Vencill
Rule based connects allow an admin to specify under what conditions
a connect should not be allowed. If no rules are specified for a
given C and/or N line it will be allowed under any condition.
A rule may consist of any legal combination of the following functions
and operators.
Functions
---------
connected(targetmask) - true if a server other than that processing
the rule is connected that matches the
target mask
directcon(targetmask) - true if a server other than that processing
the rule is directly connected that matches
the target mask
via(viamask, targetmask) - true if a server other than that processing
the rule matches the target mask and is
connected via a directly connected server
that matches the via mask
directop() - true if an oper is directly connected
Unary operators
---------------
! eg: !argument - true if the argument is false
Binary operartors
-----------------
&& eg: arg1&&arg2 - true if arg1 and arg2 are both true
|| eg: arg1||arg2 - true if arg1, arg2, or both are true
Parenthesis () are allowed for grouping arguments, but if no parenthesis
are included, && will take precedence over ||, ! will take precedence
over both && and ||, and the function will be evaluated from left to
right. White space in a rule is ignored. Invalid characters in a rule
will lead to the rule being ignored.
Examples
--------
A simple example of a connect rule might be:
connected(*eu.under*)
This might be used in a US undernet server for a Europe CN pair to
insure that a second Europe link is not allowed if one US-EU link
already exists. Note that on the undernet, US server names are
city.state.us.undernet.org and Europe server names are
city.country.eu.undernet.org.
A more interesting example might be:
connected(*eu.under*) &&
( !direct(*eu.under*) || via(manhat*, *eu.under*) )
Imagine the Boston undernet server uses this rule on its Europe CN
pairs. This says that if a Europe server is already connected, a
Boston-Europe connect will not be allowed. It also says that if a
Europe server does already exist and Boston is not directly connected
to one or more Europe servers or Manhattan is, the Boston-Europe
connect will not be allowed. This has the effect of allowing multiple
US-EU links but attempting to limit these links to one server (ie:
Boston will not initiate its first Europe link if another server is
already linking Europe). This rule will also prefer to let Manhattan
handle the US-EU link by disallowing Boston-Europe links if a Europe
server is already linked to Manhattan.
A example of the remaining function, directop(), is:
connected(*eu.under*) || directop()
If this line is used on Boston for the Paderborn CN pair, it will allow
connects to Paderborn only if another Europe server is not already
connected and there is not an oper on Boston. If this rule is
overrideable (ie: is applied only to autoconnects as described below),
then it will disallow Boston autoconnects to Paderborn while a Boston
oper is online, but allow oper-initiated connects to Paderborn under any
circumstance. This directop() function could be used to invoke less
prefered routes only when an oper is not present to handle routing, or
conversly to allow use of less preferable routes only when an oper is
present to monitor their performance.
ircd.conf entries
-----------------
A rule is listed in the ircd.conf file using a D or d line (which can
be thought of as a "disallow" line). D lines will apply to all oper
and server originated connects, while d lines will apply only to
autoconnects (ie: they are overrideable by opers). The formats are:
D:targetmask::rule
d:targetmask::rule
Remember that newlines are not allowed in conf lines. Two examples
(from above) are:
D:*eu.under*::connected(*eu.under*)
d:*eu.under*::connected(*eu.under*) || directop()
Connects originating from other servers will be checked against and
matching D lines, while matching d lines will be ignored as it will not
be clear whether or not the connection attempt is oper initiated.
Checking and viewing rules
--------------------------
The chkconf program that comes with the servers has been modified to
also check your connect rules. If running in debug mode, parsing errors
will show up at debug level 8. To view rules online, "/stats d" can be
used to see all rules and "/stats D" can be used to view those rules
which affect oper initiated connects and accepts.
Processing and storage
----------------------
The rules are parsed when the conf file is read and transformed into a
more efficiently computed form, then all applicable rules are
evaluated each time a connect command is given or an autoconnect is
due. If more than one applicable rule is given, only one need
evaluate to true for the connect to be allowed (ie: the rules are ored
together). Note that conditions that exist when the connect is
initiated might differ from conditions when the link is established.
[ $Id$ ]
-126
View File
@@ -1,126 +0,0 @@
[ $Id$ ]
---------------------------
Version Elite2.0 ==========
===========================
- Since +x was rewritten, the ban bug is 100% fixed. :)
- Rewrote +x hidden host function completely.
- Fixed FUNNY bug with hiddenhost and /who (Reported by Prod|gy)
- Added/Removed irc networks
- Fixed bug in /watch (Reported/Fixed by Despise)
- Added nick-change flood protection.
- Added an awesome manual... ./manual to run
- Removed /who notice for opers.
- Added protection of /akill *@* :)
- Removed java stuff completely. (Java clients are like normal IRC clients...right?)
- Added new +a mode. This mode can only be set by +q channel owners. When you are +a in a
channel, you cannot be deopped or kicked. (Syntax: /mode #chan +a <nick>)
- Added new +q channel mode. ChanServ must set the channel founder +q so they are also
known as channel owners via the ircd. Channel owners are protected and may set
other users +a which they will also be protected (but not chan owners).
(Syntax: /mode #chan +q <nick>)
- Re-coded /MAP
- Changed GLINE notices from sendto_ops to send to all opers with +e flag on.
- Added (addnet) script, you can run this to add your net settings to the next release.
- Changed <server> to <ircnetwork> in whois "Blah is an oper on <server>"
- Added new +L channel mode. If a #chat has a limit (+l) of 10 users, and +L set to channel
#chat2, when a user trys to join #chat, they won't get "#chat is full", they will be
auto-joined to #chat2 - (Linked channels in other words).
(Syntax: /mode #chan +L <linked chan>)
- Changes user@shadow-33.com to user@user-33.one.com (noone will know one.com is the realhost)
- Changed +x for IP's from (x.x.x.***) to (x.x.x.network-#)
- In oline flags * will introduce +e on oper up. (before: required +e in oline flag)
- Removed +t usermode (UMODE_ALL) - wasn't used.
- Made 'create your own network setting' feature more stable.
- Added new channel mode (+x) to disable colored text in channel.
- Added +C (Co Administrator)
- Added +T (Technical Administrator)
- Changed /map to numerics...
- Made startup message when booting more stable.
Version Elite1.3 (02/23/99)
============================
- Cleaned up version.c.SH
- Added new net settings (netdomain & helpchan)
- Added new net config creator in ./Config
- Made ./Config more easier...
- Created new usermode +j (Java user)
- New hostname (java.shadownet.org) for java users.
- Removed RUN_SERVICES code from entire ircd.
Version Elite1.2.4 (02/14/99)
============================
- Fixed the nick crash bug! (damn m_kill small error)
- New network(s) added.
- Changed one thing in m_gline (nothing big)
Version Elite1.2.3 (02/10/99)
============================
- Removed SOCKS checking. (possibly cause of crashing)
- Added new networks
Version Elite1.2.2 (02/02/99)
============================
- Fixed the crashing bug. (Changing nicks with linked servers)
- Modified AceStar net settings.
- Q-line notices are back (except for ULined clients).
- Fixed /kill bug with services.
Version Elite1.2.1 (01/29/99)
============================
- Fixed multiple notices from +N / -N
- Added some text to s_err.c
- Possibly fixed the odd crashing... ?
Version Elite1.2 (01/24/99)
============================
- Netadmin can be used via +N in the oline slot now.
- When +N is executed, net-wide oper msg's are sent about it.
- Completely removed the freeze function (it's a toy unlike a command)
- Changed abit of the GLINE adding notice.
- Added logging to a file for glines (gline.log)
- Implemented SOCKS checking (thx Rhom).
- Changed channel lists only when 2 ppl in chan to 1.
- Changed sendto_ops function in many places in s_user.c/s_serv.c to
sendto_locfailops.
- Changed GNOTICE in s_user.c/s_serv.c to GLOBOPS
- Fixed hiddenhost bug with /kill (+w could see real host of oper)
- Fixed hiddenhost bug with /oper (+s could see real host of oper)
[Special thanks goes out to Rhom for reporting/help patch bugs]
Version Elite1.1.1 (12/12/98)
=============================
- Fixed /whois bug (had problems with mIRC clients *sigh*)
- Fixed /topic bug (didn't allow topic changes at all.)
Version Elite1.1 (12/6/98)
============================
- Fixed ./Config script (Net select)
- Fixed /remgline bug.
- If ULined clients, channels are not shown which they are in.
- Fixed +e / +t / +b (non-opers could get +et before)
- Fixed OperMode notice.
- Fixed Gline sending extra Global on expire.
- Fixed /whowas wrong hostname bug (by Thiago)
- Fixed chkconf ZLINE error (by matt)
- Added PhazeNet configuration
- Added option for auto +x in ./Config
- Freeze was disabled in this version (It will be back in 1.2)
Version Elite1.0 (09/20/98)
============================
- Changed Shadow3.9 to Elite1.0 (Starting a new IRCD)
- Changed some numeric's around in src/s_err.c
- Auto +x on Oper up.
- Fixed small error in ./ircd script.
- Made ./Config more Linux-redhat friendly.
- Added RelicNet to the ircd.
- include/config.h is much more compatible with all IRC nets.
- Added /gline (works 100%) [/gline <user@host> <seconds> <reason>].
- Fixed up /map.
- Added UMODE's +e & +t
* e: EYES [Can see ppl who /whois, and other notices.]
* t: ALL [See's all net notices ie: See's all Client connectings...]
- Fixed the hiddenhost bug with IP's...
- Fixed major bug with hiddenhost which caused coredump.
- Made a new script (makeconf) -- generates the ircd.conf file.
-16
View File
@@ -1,16 +0,0 @@
The foll. patches are NEW in 19.mu1 (besides the old patches of stats-w,
ban, topic, client connect, signon time, trace times in previous .mu
versions):
* All the modifications contained in U3.2, namely - TSpre8, silence, bquiet
* The K line comments patch.
* The operfail notification patch
* The mixed case userid reject patch
For info on these check the file README.patches
- Mmmm
[ $Id$ ]
-34
View File
@@ -1,34 +0,0 @@
For starters, not a lot is new. What is ?
* STATS o and STATS h added;
* most STATS options are no longer oper-only;
* privacy fixes to all of WHO, WHOIS, TRACE and STATS;
* more options in the ircd.conf file;
* non-debilitating DNS/ident use (DNS routines written specifically
for ircd which indludes small local cache);
* less bugs;
* easier to compile;
* heaps and heaps of new numerics;
* more problems for old clients that do stupid things;
* more numeric replies which replace old NOTICE's;
* compulsory ident checks and optional result usage;
* sendQ can now be class dependant;
* server handles client flooding better;
* for more information on changes, bug fixes during development, see
ircd/ChangeLog and common/ChangeLog
[ $Id$ ]
-41
View File
@@ -1,41 +0,0 @@
The Internet Relay Chat Program - IRC
Author: Jeff Trim, April '89
Revised: Greg Lindahl, Oct '90 (gl8f@virginia.edu)
Re-Revised: Helen Rose, March '94 (hrose@kei.com)
Have you ever wanted to talk with other computer users in other parts of
the world? Well guess what? You can! The program is called IRC and it
is networked much over North America, Europe, and Asia, Oceania, and parts
of Africa. This program is a substitution for talk(1), ytalk(1) and many
other multiple talk programs you might have read about. When you are
talking in IRC, everything you type will instantly be transmitted around
the world to other users that might be watching their terminals at the
time - they can then type something and RESPOND to your messages - and
vise versa. I should warn you that the program can be very addictive once
you begin to make friends and contacts on IRC ;-) especially when you
learn how to cuss in 14 languages.
Topics of discussion on IRC are varied, just like the topics of Usenet
newsgroups are varied. Technical and political discussions are
popular, especially when world events are in progress. IRC is also a
way to expand your horizons, as people from many countries and
cultures are on, 24 hours a day. Most conversations are in English,
but there are always channels in German, Japanese, and Finnish, and
occasionally other languages.
How To Get IRC (technical)
IRC is a fully-distributed client-server system, much like
NNTP-Usenet, with several clients availble in C and elisp. You may ftp
documentation and clients from any of the following sites:
many kinds of clients (C, elisp, X11, VMS, REXX for VM, MSDOS, Macintosh):
cs.bu.edu:/irc/clients
ftp.acsu.buffalo.edu:/pub/irc
ftp.funet.fi:/pub/unix/irc
coombs.anu.edu.au:/pub/irc
If you have any questions about IRC installation, write to hrose@kei.com.
[ $Id$ ]
-86
View File
@@ -1,86 +0,0 @@
/************************************************************************
* IRC - Internet Relay Chat, doc/etiquette
* Copyright (C) 1990, Lea Viljanen and Ari Husa
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation; either version 1, or (at your option)
* any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
*
* $Id$
*/
HOW TO BEHAVE ON IRC
Authors: Lea Viljanen (LadyBug) viljanen@kreeta.helsinki.fi
Ari Husa (luru) so-luru@tolsun.oulu.fi
1) Language
The most widely understood and spoken language on IRC is English.
However! As IRC is used in many different countries, English is by
no means the only language. If you want to speak some other language
than English (for example with your friends), go to a separate channel
and set the topic (with /topic) to indicate that. For example
/topic Finnish only!
would mean that this channel would be reserved for Finnish discussion.
On the other hand, you should check the topic (with /list command)
before you move to a channel to see if there are any restrictions about
language.
On a channel not restricted by /topic, please speak a language
everybody can understand. If you want to do otherwise, change channels
and set the topic accordingly.
2) Hello/Goodbye
It's not necessary to greet everybody on a channel personally.
Usually one "Hello" or equivalent is enough. And don't expect everybody
to greet you back. On a channel with 20 people that would mean one
screenful of hellos. It's sensible not to greet, in order not to be rude
to the rest of the channel. If you must say hello, do it with a private /msg.
The same applies to goodbyes.
3) Discussion
When you come to a new channel it's advised you to listen
for a while to get an impression of what's discussed. Please feel free
to join in, but do not try to force your topic into the discussion
if that doesn't come naturally.
4) {}|[]\
IRC has quite a lot of people from Scandinavian countries,
the above characters are letters in their alphabet. This
has been explained on IRC about a thousand and one times, so
read the following, do not ask it on IRC:
{ is an A with 2 dots over it
} is an A with a small circle above it
| is either an O with 2 dots over it or an O with a dash (/) through it
[, ], and \ are the preceding three letters in upper case.
There are a lot of people from Japan as well, who use Kanji characters
which may look quite exotic as well. As I don't know Kanji I don't
even try to explain any of the characters.
5) ATTENTION!
Remember, people on IRC form their opinions about you only by
your actions, writings and comments on IRC. So think before you type.
Do not "dump" to a channel or user (send large amounts of unwanted
information). This is likely to get you /kicked off the channel or
/killed off from irc. Dumping causes network 'burbs', connections going
down because servers cannot handle the large amount of traffic any more.
File diff suppressed because it is too large Load Diff
-963
View File
@@ -1,963 +0,0 @@
/************************************************************************
* IRC - Internet Relay Chat, doc/INSTALL
* Copyright (C) 1990,1991,1992, Jeff Trim, Mike Bolotski,
* Jarkko Oikarinen and Darren Reed.
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation; either version 1, or (at your option)
* any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
*
* $Id$
*/
Installing IRC - The Internet Relay Chat Program
Overview of this document:
1) The config.h file
2) Editing the Makefile
3) Compiling IRC
4) The ircd.conf file
1) Edit the "config.h" file and make changes to the various #DEFINE's:
a) Copy the config.h.dist file to config.h before editing.
b) Define what type of UNIX your machine uses.
Pick the machine type which best describes your machine and change
the #undef to #define (if needed). Some flavours of Unix require no
#define and in such cases all others should be #undef'd.
c) DEBUGMODE
Define DEBUGMODE if you want to see the ircd debugging information
as the daemon is running. Normally this function will be undefined
as ircd produces a considerable amount of output. DEBUGMODE must be
defined for either of -t or -x command line options to work.
d) DPATH, SPATH, CPATH, MPATH, LPATH, PPATH
DPATH is provided so that the other pathnames (SPATH, CPATH, etc)
may be provided in just filename form. When the server starts, it
chdir's to DPATH before chroot or any other file operation, making
it the "current directory" for the server. This is where core files
will go if it core dumps.
Define SPATH to be the directory path to ircd. This is usually
/usr/local/bin/ircd, unless you don't have installation permission
there.
Define CPATH to be the directory path to the "irc.conf" file.
This path is usually /usr/local/lib/irc.conf. The format of this file
will be discussed later.
The LPATH #define should be set to "/dev/null" unless you plan to
debug the program. Note that the logfile grows very quickly.
Define MPATH to be the path to the 'motd' (message of the day) file
for the server. Keep in mind this is displayed whenever anyone
signs on to your server.
The PPATH is optional, but if defined, should point to a file which
either doesn't exist (but is creatable) or a previously used PPATH
file. It is used for storing the server's PID so a ps(1) isn't
necessary.
e) CHROOTDIR
To use the CHROOTDIR feature, make sure it is #define'd and that
the server is being run as root. The server will chroot to the
directory name provded by DPATH.
f) ENABLE_SUMMON, ENABLE_USERS
For security conscious server admins, they may wish to leave
ENABLE_USERS undefined, disabling the USERS command which can be used
to glean information the same as finger can. ENABLE_SUMMON toggles
whether the server will attempt to summon local users to irc by
writing a message similar to that from talk(1) to a user's tty.
g) SHOW_INVISIBLE_LUSERS, NO_DEFAULT_INVISIBLE
On large IRC networks, the number of invisible users is likely to
be large and reporting that number cause no pain. To aid and effect
this, SHOW_INVISIBLE_LUSERS is provided to cause the LUSERS command
to report the number of invisible users to all people and not just
operators. The NO_DEFAULT_INVISIBLE define is used to toggle whether
clients are automatically made invisible when they register.
h) OPER_KILL, OPER_REHASH, OPER_RESTART, LOCAL_KILL_ONLY
The three operator only commands, KILL, REHASH and RESTART, may all
be disabled to ensure that an operator who does not have the correct
privilidges does not have the power to cause untoward things to occur.
To further curb the actions of guest operators, LOCAL_KILL_ONLY can
be defined to only allow locally connected clients to be KILLed.
i) The rest of the user changable #define's should be pretty much self
explanatory in the config.h file. It is *NOT* recommended that any
of the file undef the line with "STOP STOP" in it be changed.
3) Configure and compile the code.
Edit the root Makefile for the server, uncomment/comment the correct
CFLAGS/IRCDLIBS lines as appropriate for your system.
Change DESTDIR to be the same as the path for DPATH in config.h.
Type "make". This will compile the server, the client, and the services.
At the end of this step, the server directory will contain 'ircd',
and the client directory will contain 'irc'. To get the server installed,
type "make install" which will build a default m4 file for preprocessing,
copy example.conf and put the server all in DESTDIR. The irc client and
a copy of the server will also be placed in BINDIR and the modes set
accordingly.
4) The ircd.conf file.
After installing the ircd and irc programs, edit the irc.conf file
as per the instructions in this section and install it in the
location you specified in the config.h file. There is a sample
conf file called example.conf in the /doc directory.
Appendix A describes the differences between IP addresses and host
names. If you are unfamiliar with this, you should probably scan
through it before proceeding.
The irc.conf file contains various records that specify configuration
options. The record types are as follows:
1. Server connections (C,N)
2. Machine information (M)
3. Client connections (I)
4. Default local server (U)
5. Operator priviliges (O)
6. Administrative info (A)
7. Excluded accounts (K)
8. Excluded machines (Q)
9. Connection Classes (Y)
10. Leaf connections (L)
11. Service connections (S)
12. Port connections (P)
13. Hub connections (H)
1. SERVER CONNECTIONS: How to connect to other servers
How other servers can connect to you
WARNING:
The hostnames used as examples are really only examples and
not meant to be used (simply because they don't work) in real life.
Now you must decide WHICH hosts you want to connect to and WHAT ORDER you
want to connect to them in. For my example let us assume I am on the
machine "rieska.oulu.fi" and I want to connect to irc daemons on 3 other
machines:
"garfield.mit.edu" - Tertiary Connection
"irc.nada.kth.se" - Secondary Connection
"nic.funet.fi" - Primary Connection
And I prefer to connect to them in that order, meaning I first want to
try connecting to "nic.funet.fi", then to "irc.nada.kth.edu", and
finally to "garfield.mit.edu". So if "nic.funet.fi" is down or
unreachable, the program will try to connect to "irc.nada.kth.se".
If irc.nada.kth.se is down it will try to connect to garfield and so forth.
PLEASE limit the number of hosts you will attempt to connect to down to 3.
This is because of two main reasons:
a) to save your server from causing extra load and delays
to users
b) to save internet from extra network traffic
(remember the old rwho program with traffic problems when
the number of machines increased).
The format for the CONNECT entry in the "irc.conf" is:
C:<TARGET Host Addr>:<Password>:<TARGET Host NAME>:<TARGET Host PORT>
Field: 1 2 3 4 5
for example:
C:nic.funet.fi:passwd:nic.funet.fi:6667
- or -
C:128.214.6.100:passwd:nic.funet.fi:6667
- or -
C:root@nic.funet.fi:passwd:nic.funet.fi:6667
Explanation:
Each field is separated with a ":" charcter:
Field 1: Field 1 tells the IRC program which option is being configured.
"C" corresponds to a server Connect option.
Field 2: Specifies the host name or IP address of the machine to connect
to. If "user@" prefixes the actual hostname or IP address
the server will require that the remote username returned by
the ident server be the same as the one given before the "@".
Field 3: The password of the other host. A password must always be
present for the line to be recognized.
Field 4: The full hostname of the target machine. This is the name that
the TARGET server will identify itself with when you connect
to it. If you were connecting to nic.funet.fi you would receive
"nic.funet.fi" and that is what you should place in
this field.
Field 5: The INTERNET Port that you want to connect to on the TARGET
machine. Most of the time this will be set to "6667".
If this field is left blank, then no connections will
be attempted to the TARGET host, and your host will accept
connections FROM the TARGET host instead.
Some examples:
C:nic.funet.fi::nic.funet.fi:6667
This reads: Connect to host "nic.funet.fi", with no password
and expect this server to identify itself to you as
"nic.funet.fi". Your machine will connect to this host to
PORT 6667.
C:18.72.0.252:Jeff:garfield.mit.edu:6667
This reads: Connect to a host at address "18.72.0.252", using a
password of "Jeff". The TARGET server should identify
itself as "garfield.mit.edu". You will connect to Internet
Port 6667 on this host.
C:irc.nada.kth.se::irc.nada.kth.se
This reads: do not attempt to connect to "irc.nada.kth.se",
but if "irc.nada.kth.se" requests a connection,
allow it to connect.
Now back to our original problem, we wanted OUR server CONNECT to 3
hosts, "nic.funet.fi", "irc.nada.kth.se" and "garfield.mit.edu" in
that order. So as we enter these entries into the file they must be
done in REVERSE order of how we could want to connect to them.
Here's how it would look if we connected "nic.funet.fi" first:
C:garfield.mit.edu::garfield.mit.edu:6667
C:irc.nada.kth.se::irc.nada.kth.se:6667
C:nic.funet.fi::nic.funet.fi:6667
Ircd will attempt to connect to nic.funet.fi first, then to irc.nada
and finally to garfield.
Reciprocal entries:
Each "C" entry requires a corresponding 'N' entry that specifies
connection priviliges to other hosts. The 'N' entry contains
the password, if any, that you require other hosts to have before
they can connect to you. These entries are of the same format as
the "C" entries.
Let us assume that "garfield.mit.edu" connects to your server
and you want to place password authorization authorization on garfield.
The "N" entry would be:
N:garfield.mit.edu:golden:garfield.mit.edu
This line says: expect a connection from host "garfield.mit.edu",
and expect a login password of "golden"
and expect the host to identify itself as "garfield.mit.edu".
N:18.72.0.252::garfield.mit.edu
This line says: expect a Connection from host "18.72.0.252", and
don't expect login password. The connecting host should identify itself
as "garfield.mit.edu".
Wildcards domains:
To reduce the great amount of servers in IRCnet wildcard
DOMAINS were introduced in 2.6. To explain the usage of
wildcard domains we take an example of such:
*.de - a domain name matching all machines
in Germany.
Wildcard domains are useful in that ALL SERVERS in Germany
(or any other domain area) can be shown as one to the
rest of the world. Imagine 100 servers in Germany, it
would be incredible waste of netwotk bandwidth to broadcast
all of them to all servers around the world.
So wildcard domains are a great help, but how to use them ?
They can be defined in the N-line for a given connection,
in place of port number you write a magic number called
wildcard count.
Wildcard count tells you HOW MANY PARTS of your server's name
should be replaced by a wildcard. For example, your server's
name is "tolsun.oulu.fi" and you want to represent it as
"*.oulu.fi" to "nic.funet.fi". In this case the wildcard count
is 1, because only one word (tolsun) is replaced by a wildcard.
If the wildcard count would be 2, then the wildcard domain would
be "*.fi". Note that with wildcard name "*.fi" you could NOT
connect to "nic.funet.fi", because that would result in a server
name COLLISION (*.fi matches nic.funet.fi).
I advice you to not to use wildcard servers before you know
for sure how they are used, they are mostly beneficial for
backbones of countries and other large areas with common domain.
2. MACHINE INFORMATION
IRC needs to know a few things about your UNIX site, and the "M" command
specifies this information for IRC. The fomat of this command is:
M:<YOUR Host NAME>:xxx:<Geographic Location>:<Internet Port>
Field: 1 2 3 4 5
Explanation:
Field 1: "M" specifies a Machine description line
Field 2: The name of YOUR host adding any Internet DOMAINNAME that
might also be present.
Field 3: -- NOT USED --: Set to Value NULL (No spaces at ALL!).
Field 4: Geographic Location is used to say WHERE YOUR SEVRER is,
and gives people in other parts of the world a good
idea of where you are! If your server is in the USA, it is
usually best to say: <CITY> <STATE>, USA. Like for Denver
I say: "Denver Colorado, USA". Finnish sites (like
tolsun.oulu.fi generally say something like "Oulu, Finland".
Field 5: The Internet port your server will use. Should be set to
the same value as in the config.h file.
Example:
M:tolsun.oulu.fi::Oulu, Finland:6667
This line reads: My Host's name is "tolsun.oulu.fi" and
my site is located in "Oulu, Finland". My ircd will use
Internet Port 6667.
M:orion.cair.du.edu::Denver Colorado, USA:6667
This line reads: My Hosts name is "orion.cair.du.edu"
and my site is located in "Denver Colorado, USA".
I have defined Internet Port number "6667" to be used
as my IRCD Socket Port.
3. CLIENT CONNECTIONS - How to let clients connect to your IRCD.
A client is a program that connects to the ircd daemon (ircd). Currently
there are clients written in C and in GNU Emacs Lisp. The "irc"
program is the C client. Each person that talks via IRC is running
their own client.
The irc.conf files contains entries that specify which clients are allowed
to connect to your irc daemon. Obviously you want to allow your cwn
machine's clients to connect. You may want to allow clients from
other sites to connect. These remote clients will use your server
as a connection point. All messages sent by these clients will pass
through your machine.
The format of this entry in the conf file is:
I:<TARGET Host Addr>:<Password>:<TARGET Hosts NAME>:<Internet Port>
Field:1 2 3 4 5
For example, if you were installing IRC on tolsun.oulu.fi and you wanted
to allow examples sake let us assume you were making this file for
tolsun and you wanted to let your own clients to connect to your
server, you would add this entry to the file:
I:128.214.5.6::tolsun.oulu.fi
or
I:tolsun.oulu.fi::tolsun.oulu.fi
If you wanted to let remote clients connect, you could add the
following lines:
I:*.du.edu::*.du.edu
Allow any clients from machines whose names end in "du.edu" to connect
with no password.
I:128.214.6.100::nic.funet.fi
Allow clients from a machine with that IP number and the name
nic.funet.fi to connect.
I:*.tut.fi:secret:*.tut.fi
Allow clients from machines matching *.tut.fi to connect
with the password 'secret'.
I:*::*
Allow anyone from anywhere to connect your server.
This is the easiest way, but it also allows people to for example
dump files to your server, or connect 1000 (or how many open
sockets per process your OS allows) clients to your machine
and take your network ports. Of course the same things can be
done by simply telnetting to your machine's SMTP port (for example).
NEW!!!
As of the 2.7.2d version of the server, the server is able to accept
connections on multiple ports. I-lines are required for each P-line
to allow connections to be accepted. For unix sockets, this means
either adding I:/path/port::/path/port or some variation (wildcards
are recognised here). For internet ports, there must be an I-line
which allows the host access as normal, but the port field of the
I-line must match that of the port of the socket accepting the
connectiion. A port number of 0 is a wildcard (matches all ports).
4. DEFAULT HOSTS (for local clients)
This defines the default connection for the irc client. If you are
running an ircd server on the same machine, you will want to define
this command to connect to your own host. If your site is not running
a server then this command should contain the TARGET host's connection
information and password (if any). The format for this command is:
U:<TARGET Host addr>:<Password>:<TARGET Host NAME>:<Internet Port>
Field: 1 2 3 4 5
For example:
U:tolsun.oulu.fi::tolsun.oulu.fi:6667
U:128.214.5.6::tolsun.oulu.fi:6667
U:tolsun.oulu.fi::tolsun.oulu.fi
If the port number is omitted, irc will default to using 6667.
5. OPERATOR Privileges: How to become the IRC administrator on your site
To become an IRC Administrator, IRC must know who is authorized to become
an operator and what their "Nickname" and "Password" is. To add this
information, EDIT your "irc.conf" file and add the following command
line to it:
O:<TARGET Host NAME>:<password>:<nickname>:<port>:<class>
Field: 1 2 3 4 5 6
Explanation:
Field 1: Speficies Operator record. If you use capital letter ('O')
in it, it specifies a global operator. Small letter ('o')
specifies a local operator. Local operator has basically the
same rights except global operator with some restrictions.
Field 2: Tells IRC which host you have the privileges FROM. This
means that you should be logged into this host when you
ask for the priviliges. If you specify "tolsun.oulu.fi"
then IRC will expect your CLIENT to be connected at
"tolsun.oulu.fi" - when you ask for OPERATOR privileges
from "tolsun.oulu.fi". You cannot be logged in at any
other host and be able to use your OPERATOR privileges
at tolsun, only when you are connected at TOLSUN will this
work - this is a safeguard against unauthorized sites.
Field 3: If your AUTHORIZATION Password - this is the password that
let's IRC know you are who you say you are! Never tell anyone
your password and always keep the "irc.conf" file protected
from all of the other users.
Field 4: The Nickname you usually go by - but you can make this what
you want. It is better to make this a NICKNAME that no one
else knows, but anything will do. I usually use my own
loginname.
Field 5: Unused.
Field 6: The class field should refer to an existing class (preferably
having a lower number than that for the relevant I-line) and
determines the maximum number of simultaneous uses of the
O-line allowable through the max. links field in the Y-line.
Example:
O:orion.cair.du.edu:pyunxc:Jeff
There is an OPERATOR at "orion.cair.du.edu" that can get
Operator priviliges if he specifies a password of "pyunxc"
and uses a NICKNAME of "Jeff".
6. ADMINISTRATIVE INFORMATION
The "A" command is used for administrative information about a site.
The e-mail address of the person running the server should be included
here in case problems arise.
A:<Your Name/Location>:<Your Electronic Mailing Addr>:<other>
Field: 1 2 3 4
Explanation:
Field 1: "A" specifies an Admin record.
Field 2: Use this field to say tell your FULL NAME and where in the
world your machine is. Be sure to add your City,
State/Province and Country.
Field 3: Use this field to specify your Electronic Mailing Address
preferably your Internet Mailing Address. If you have
a UUCP or ARAPnet address - please add that as well. Be
sure to add any extra DOMAIN information that is needed,
for example "mail jtrim@orion" probably won't work as a
mail address to me if you happen to be in Alaska. But
"mail jtrim@orion.cair.du.edu" would work because you
know that "orion" is part of the DOMAIN "cair.du.edu".
So be sure to add your DOMAINNAMES to your mailing addresses.
Field 4: Is really an OTHER field - you can add what you want here,
Examples (the line is just one line in the confuration file, here it
is cut into two lines to make it clearer to read):
A:Jeff Trim - Denver Colorado, USA:INET jtrim@orion.cair.du.edu UUCP {hao,
isis}!udenva!jtrim:Terve! Heippa! Have you said hello in Finnish today?;)
Would look like this when printed out with the /admin command:
Jeff Trim - Denver Colorado, USA
INET jtrim@orion.cair.du.edu UUCP {hao,isis}!udenva!jtrim
Terve! Hei! Heippa! Have you said hello in Finnish today? ;)
Note that the A record cannot be split across multiple lines; it will
typically be longer than 80 characters and will therefore wrap around
the screen.
7. REMOVING A USER FROM IRC Remove an errant user from IRC on your site.
Obviously it is hoped that you wouldn't have to use this command.
Unfortunately sometimes a user can become unmanageable and this is your
only recourse - the KILL USER command. THIS COMMAND ONLY AFFECTS YOUR
SERVER - If this user can connect to another SERVER somewhere else in
the IRC-Network then you would have to talk to the administrator on that
site to disable his access from that IRCD Server as well.
The format of this command is:
K:<Host Name>:<time interval(s)>:<User>
Field: 1 2 3 4
Explanation:
Field 1: "K" tells the IRCD that you are making a KILL USER command
entry.
Field 2: In this field you specify the Hostname that the user is
connecting from. If you wanted to REMOVE connects
to IRC from "orion.cair.du.edu" then you would want to enter
"orion.cair.du.edu". If you want to REMOVE ALL HOSTS
access you can use '*' (Wild Card notation) and no matter
what host the USERNAME (specified in Field 4) connects from
s/he will be denied access. Removing all hosts isn't
very smart thing to do though, why would you run an ircd
if you allow nobody to connect to it anyways ?
Field 3: Either leave this field empty (no spaces), then then lines
is active continuously for the specified user/host machine.
You may also specify intervals during the line should be
active, see examples above.
Field 4: The USERNAME of the user you want removed from IRC. For
example 'root'.
Some Examples:
K:orion.cair.du.edu::jtrim
If user 'jtrim' connects to IRC from host "orion.cair.du.edu"
then IMMEDIATELY REMOVE HIM from my IRCD.
K:*.cair.du.edu::root
If user 'root' connects to IRC from any host that has the
suffix "cair.du.edu" - then IMMEDIATELY REMOVE THEM from
my IRCD.
K:*::vijay
This line reads "I don't care WHAT HOST user 'vijay' is on,
I will NEVER allow username 'vijay' to login to my IRCD.
K:*.oulu.fi:0800-1200,1400-1900:*
This disallows all users from hosts with enddomain 'oulu.fi'
access to your server between 8 and 12am, 2 and 7pm.
Users get kicked off if they're already signed on when the
line becomes active (they'll get a warning 5 minutes ago).
8. Disallowing SERVERS in your irc net.
In some cases people run into difficulties in net administration.
For one reason or another you do not want a certain server to be
in your net (for example because of the security holes it opens
for every server if it's not secured carefully). In that case
you should use Q-lines in your server. When you specify a server
name in Q-line, everytime some server link tries to introduce you
a server (remember, all server names are broadcast around the net),
that name is checked if it matches the Q-lines in your server.
If it matches, then your server disconnects the link. Note that
just placing Q-lines to your server probably results in your server
being left alone, unless other servers have agreed to have the
same Q-line in their ircd configuration files as well.
Example:
Q::of the security holes:foo.bar.baz
This command excludes a server named "foo.bar.baz", the reason
is given to be security holes (you should give a reason, it is
polite). The first field is unused, so leave it empty.
9. Connection Classes.
To enable more efficient use of MAXIMUM_LINKS, connection classes
were implemented. To give a connection a class, add another field
(a sixth) to the C/N lines for a particular server.
Each line for a server should have the same number as the sixth
field. If it is absent, the server deaults it to 0, using the
defaults from the config.h file. To define a connection class,
you need to include a Y: line in the irc.conf file. This enables
you to define the ping frequency, connection frequency and maximum
number of links that class should have. Currently, the Y: line MUST
appear in the irc.conf file BEFORE it is used in any other way.
The format for the line is:
Y:<CLASS>:<PING FREQUENCY>:<CONNECT FREQUENCY>:<MAX LINKS>:<SENDQ>
Field: 1 2 3 4 5 6
Field 2: This is the class number which gains the following attributes
and should match that which is on the end of the C/N line.
Field 3: This field defines how long the server will let the connection
remain "silent" before sending a PING message to make sure it is still
alive. Unless you are sure of what you are doing, use the default value
which is in your config.h file.
Field 4: By changing this number, you change how often your server
checks to see if it can connect to this server. If you want to check
very occasionally, use a large value, but if it is an important
connection, you might want a smaller value so that you connect to it
as soon as possible.
Field 5: This field defines the maximum number of links this class
will allow from automatic connections. Using /CONNECT overrides this
feature.
Field 6: This field defines the 'sendq' value for this class. If this
field is not present, the default (from config.h) is assigned.
NOTE: leaving any of the fields out means their value is 0 (ZERO)!!
example:
Y:23:120:300:5
define class 23 to allow 5 auto-connections, which are checked every
300 seconds. The connection is allowed to remain silent for 120
seconds before a PING is sent. NOTE: fields 3 & 4 are in seconds.
You may also give I lines a class (again the sixth field to define
which class). This is only usefull (currently) for redefining the
ping frequency. It can also be useful as a diagnostic to see how
much each I line is used when combined with the TRACE output.
Another feature of connection class is the ability to do automatic
routing by using the class as a 'priority'. If you are connected
to a server which has a class lower than one of the servers that is
'behind' it, the server will disconnect the lower class one and
schedule a 'new' connection for the higher class server.
10. Leaf Connections.
To stop servers which should only act as leaves from hubs becoming
hubs accidently, the L line was introduced so that hubs can be aware
of which servers should and shouldnt be treated as leaves. A leaf
server is supposed to remain a node for the entirity of its life
whilst connected to the IRC server network. It is quite easy, however
for a leaf server to be incorrectly setup and create problems by
becoming a node of 2 or more servers, ending its life as a leaf. The
L line enables the administrator of an IRC 'Hub server' to 'stop' a
server which is meant to act as a leaf trying to make itself a hub.
If, for example, the leaf server connects to another server which doesnt
have an L-line for it, the one which does will drop the connection, once
again making the server a leaf.
L:<SERVER MASK>:*:<SERVER NAME>:<MAX DEPTH>
Field: 1 2 3 4 5
Field 2 is a mask of which servers the leaf-like attributes are used on
when the server receives SERVER messages. The wildcards * and ? may be
used within this field for matching purposes. If this field is empty,
it acts the same as if it were a single * (ie matches everything).
Field 4 is the the server connectted to you that for which you want to
enforce leaf-like attributes upon.
Field 5 is the maximum depth allowed on that leaf and if not specified,
a value of 1 is assumed. The depth is checked each time a SERVER message
is received by the server, the hops to the server being the field checked
against this max depth and if greater, the connection to the server that
made its leaf too deep has its connection dropped.
For the L-line to come into effect, both fields, 2 and 4, must match up
with the new server being introduced and the server which is responsible
for introducing this new server.
11. Service Connections (Not yet implemented)
Introduction.
The Service is a special kind of IRC client. It does not have the full
abilities of a normal user but can behave in a more active manner than
a normal client. Services as they stand now are not fully implemented.
The following line can be added to your ircd.conf file to enable a
service:
S:<TARGET Host Mask>:<password>:<service_name>
Field: 1 2 3 4
Explanation:
Field 2:
The host mask should be set to match the hosts(s) from which the
service will be connecting from. This may be either an IP# or full
name (prefered).
Field 3:
This is the password which must be passed in the SERVICE command.
Field 4:
The 'service name' is only used for the purpose of finding the
right S-line from the ircd.conf file for password matching. The
actual service name used is that set by NICK commands prior to
SERVICE being sent.
To connect a service to your server, you must first create an S-line
entry in your ircd.conf file and get your server to read this in (ie
rehash or reboot). Once your server has updated itself, you can then
attempt to register your connection as a service.
Registering as a service is similar to registering as a normal user
except that you must send NICK first and then SERVICE. The service
command should look something like this:
SERVICE secretpassword referencename :Service information
A successfull registering of a service at the server will result in
a RPL_YOURESERVICE (383) being sent back to you. Any other reply as
a result of sending service indicates an error has occured.
A service is not a very useful sort of client, it cannot join channels
or issue certain commands although most are available to it. Services,
however, are not affected by flood control. It is therefore wise to
oversee the use of S-lines with some care.
12. Port Connections
Introduction.
The port line adds flexibility to the server's ability to accept
connections. By use of this line in the ircd.conf file, it is easy
to setup both Unix Domain ports for the server to accept connections
on as well as extra internet ports.
P:<Internet IP# Mask>:<*>:<*>:<PORT>
Field: 1 2 3 4 5
or
P:<Directory>:<*>:<*>:<PORT>
Field: 1 2 3 4 5
Explanation
Internet Ports
Field 1
The internet IP mask defines where connections may come from and
be accepted. The IP mask uses either *'s or 0's as wildcards. The
following two lines are the same:
P:128.2.*:::6664
P:128.2.0.0:::6664
The incoming isnt matched against the mask, rather the ip# string
is decoded and compared segment by segment. Thus
P:128.2*.1.2:::6664
will not match 128.20.1.2.
Field 5
The port number field tells the server which port number it should
listen on for incoming connections.
Unix Socket Ports.
Field 1
The path set in field 1 should be the directory name in which to
create the unix socket for later listening to. The server will
attempt to create the directory before creating the unix socket.
Field 5
The port field when used in combination with a pathname in a P-line
is the filename created in the directory set in Field 1.
Example:
P:/tmp/.ircd:::6667
Creates a unix socket in the /tmp/.ircd directory called "6667".
The unix socket (file) must be a numerical.
13. Hub Connections
In direct contrast to L-lines, the server also implements H-lines to
determine which servers may act as a hub and what they may 'hub for'.
If a server is only going to supply its own name (ie act as a solitary
leaf) then no H-line is required for, else a H-line must be added as
follows:
H:<SERVER MASK>:*:<SERVER NAME>
Field: 1 2 3 4
Explanation:
Field 2
All servers that are allowed via this H-line must match the mask
given in this field.
Field 4
This field is used to match exactly against a server name, wildcards
being treated as literal characters.
Examples:
H:*.edu:*:*.bu.edu
Allows a server named "*.bu.edu" to introduce only servers that
match the "*.edu" name mask.
H:*:*:eff.org
Allow "eff.org" to introduce (and act as a hub for) any server.
Note: It is possible to have and use multiple H-lines (or L-lines) for
the one server. eg:
H:*.edu:*:*.bu.edu
H:*.au:*:*.bu.edu
is allowed as is
L:*.edu:*:*.au
L:*.com:*:*.au
Appendix A: Difference between IP addresses and hostnames
There are 2 different types of INTERNET addresses, NAME addresses and
NUMERIC addresses. NAME addresses look like ENGLISH words (and indeed
they are ENGLISH words that refer to a given host). A NAME address looks
like "tolsun.oulu.fi" - and that particular address refers to the machine
named TOLSUN in Finland. It is a UNIQUE address because no other machine
in the world has its NAME address the same as "tolsun.oulu.fi". Anytime
you say "telnet tolsun.oulu.fi" - you would always connect to TOLSUN in
Finland. NUMERIC addresses refer to those addresses that are made up of
NUMBERS for example "128.214.5.6" is the NUMERIC address for TOLSUN. This
address is also UNIQUE in that no other machine in the world will be use
those NUMERIC numbers. The NUMERIC address is usually more reliable than
the NAME address because not all sites can recognize and translate the
NAME address into it's numeric counterpart. NUMERIC always seems to work
best, but use a NAME address when you can because it is easier to tell
what host you are connected to.
Every Unix machine has a file called "/etc/hosts" on it. This file
contains NAME and NUMERIC addresses. When you supply IRC with a NAME
address it will at first try to find it in /etc/hosts, and then (if it's
really smart), use the local Domain Name Server (DNS) to find the NUMERIC
address for the host you want to connect to. Thus if you plan to use NAME
addresses keep in mind that on SOME sites the entry for the TARGET machine
must be found in /etc/hosts or the NAME address will fail. A typical
entry in /etc/hosts looks like this:
130.253.1.15 orion.cair.du.edu orion.du.edu orion # BSD 4.3
This particular example is the Host ORION at the University of Denver.
Notice that on the far left is the NUMERIC Address for orion. The
next few ENGLISH words are the NAME addresses that can be used for orion,
"orion.cair.du.edu", "orion.du.edu", "orion". ALL of these NAME addresses
will return the NUMERIC address "130.253.1.15" which IRC will use to
connect to the TARGET UNIX. (when I say TARGET UNIX I am refering to the
UNIX you want to connect to for IRC). Any futher questions about
/etc/hosts should be directed to "man hosts".
Appendix B: Enabling Summon Messages
+-----------------------------------------------------------------------+
| E N A B L I N G / S U M M O N M E S S A G E S |
+-----------------------------------------------------------------------+
*NOTE* You must have ROOT or special access to the GROUP tty ('/dev')
to do this. If you want to allow users around the world to summon
users at your site to irc, then you should make sure that summon works.
The "IRCD" program needs access to the GROUP of '/dev'. This
directory is where user TTY's are stored (as UNIX treats each Terminal
as a FILE!) IRCD needs GROUP ACCESS to /dev so that users can be
SUMMONED to the program by others users that are *in* the program.
This allows people from other Universities around the world to SUMMON
your users to IRC so that they can chat with them. Berkeley, SUN, HP-UX
and most of the newer versions of UNIX check to see if a USER is
accepting MESSAGES via the GROUP access rights on their TTY listing
in the /dev directory. For example an entry in '/dev' looks like this:
(Unix Path on BSD 4.3 UNIX is: /dev/ttyp0)
crw------- 1 jtrim 20, 0 Apr 29 10:35 ttyp0
You will note that 'jtrim' OWNS this terminal and can READ/WRITE to this
terminal as well (which makes sense because I am ENTERING DATA and
RECEIVEING DATA back from the UNIX). I logged into this particular
UNIX on "April 29th" at "10:35am" and my TTY is "ttyp0". But further
of *note* is that I do not have my MESSAGES ON! (mesg n) -- This is
how my terminal would look with MESSAGES ON (mesg y):
crw--w---- 1 jtrim 20, 0 Apr 29 10:35 ttyp0
With my MESSAGES ON (mesg y) I can receive TALK(1) requests, use the
UNIX WRITE(1) command and other commands that allow users to talk
to one another. In IRC this would also allow me to get IRC /SUMMON
messages. To set up the "IRCD" program to work with /SUMMON type
the following: (using ROOT or an account that has access to '/dev').
% chgrp tty ircd
% chmod 6111 ircd
The above commands read: "Give IRCD access to GROUP tty (which is /dev)
and then when ANYONE runs the IRCD allow SETUID and SETGID priviliges
so that they can use the /SUMMON command.
-382
View File
@@ -1,382 +0,0 @@
/************************************************************************
* IRC - Internet Relay Chat, doc/MANUAL
* Copyright (C) 1990, Karl Kleinpaste
*
* $Id$
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation; either version 1, or (at your option)
* any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
*/
Date: 04 Apr 1989
Author: Karl Kleinpaste
karl@cis.ohio-state.edu
Last modification: 15 May 1992
by Mauri Haikola
mjh@stekt.oulu.fi
INTERNET RELAY CHAT
a real-time conversational system
* 1: Irc - replacement for talk(1)
Irc is a functional replacement for and improvement to talk(1). Talk
is an old, primitive, atrocious, minimalist sort of keyboard/screen
conversation tool, using a grotesque, machine-dependent protocol.
Irc does everything talk does, but with a better protocol, allowing
more than 2 users to talk at once, with access across the aggregate
Internet, and providing a whole raft of other useful features.
* 2: Entering Internet Relay Chat
There are two ways to enter Internet Relay Chat. If you are using the
emacs lisp client, you need to load the client into your Emacs session
and then M-x irc. If you are using the C client (easier for beginners)
then type (usually) irc. If you wish to be known by a nickname which
is not one's login name, type `irc chosen-nickname' instead.
* 3: How much can be seen from here
The universe - seriously.
This is most formally called Internet Relay Chat. Server hosts are
connected via a tree structure. The various servers relay control and
message data among themselves to advertise the existence of other
servers, users, and the channels and other resources being occupied by
those users.
* 4: Structure
There is quite a lot of structure to the operation of irc, as
compared to crufty old talk(1). Since so little could be done with
talk(1), it needed little structure. But to keep track of people
spread literally around the world (the system was written by Jarkko
Oikarinen of Finland, usually seen on the system as `Wiz'), the
structure is useful so that one can speak to exactly those people with
whom one wishes to speak.
** 4.1: Nicknames
All users of irc are known to the system by a `nickname.' By
default, one's nickname is one's login name. Nickname clashes are not
allowed; this is enforced by the servers. If one's intended nickname
clashes with someone else as one enters chat, one will not be able to
complete entry to irc until one changes one's nickname to something
else.
** 4.2: Presence on a channel
Fundamental to the operation of irc is the concept of a channel. All
users are `on a channel' while inside irc. One enters the `null
channel' first. One cannot send any messages while not in any
chatting channel unless one has set up a private conversation in some
way. The number of channels is essentially unlimited - whatever will
fit in a string of some ungodly length, that must start with a # sign.
** 4.3: Main modes of channels
Public
This is the default mode for a channel. When one is on a public
channel, one can be seen by all other users (if one's own user mode
permits this). Anyone can notice users on a public channel and join
such a channel's conversation.
Private
This means that, although anyone can see that one is using chat, no
one can tell what channel one is using unless one is already on that
channel with oneself. Since the number of potential channels is in
the billions, this is quite some security - all one gives away is the
acknowledgement that one is using chat.
Secret
While one is on a secret channel, no one who is not on one's channel
with oneself can even see that one is there. One's name does not show
up in a list of active users. The only indication of one's presence
is that, when entering chat, all new users are told that there are "N
users on P servers." If one checks on all users and finds less than N
of them, one knows that others are hiding on secret channels. But a
secret channel user still cannot be found except by brute-force
checking through all channels, a hopeless proposition in the face of
the huge number of possible channel names. Security through obscurity
finally means something.
Changing the mode
The mode of a channel (private, secret, invite-only, moderated,
topic-limited, person-number-limited, no-messages-to-channel, ban
someone from channel) is set by the channel operator, who is the
first person to join a channel, or someone who has had channel
operatorship bestowed on them by another channel operator.
*** 4.4: Conversations not using channels
It is possible to conduct conversations with others without using the
formalized channel structure. Doing so requires that two people set
themselves up for private conversation using special commands; see
User Commands below.
* 5: Screen/keyboard structure
Chat is a full-screen utility. It takes over the screen, with the
bulk of activity happening in the top N-2 lines, a modeline (vaguely
emacs-like) on the next to last line, and one's input being entered on
the last line. A very good version of client is the IRC-II client,
avaliable on anonymous ftp from various sites around the world.
** 5.1: Keyboard input
When typing commands at irc, one has a minimalist line-editing
facility in an emacs style. That is, ^A moves the cursor to the
beginning of the line, ^E goes to the end, ^D deletes the character
under the cursor, ^K kills from the cursor to the end, and so on.
** 5.2: Screen activity
Almost everything happens in the upper bulk of the screen. This
includes both messages from other users, as well as the output of the
control commands.
Normal messages from other users appear with the originating nickname
in <angle brackets>. Private messages arrive with the originating
nickname in *asterisks*. Messages which one sends to everyone appear
with a preceding "> " whereas messages which one sends privately to
one other user appear with "-> *nickname*."
Other output (e.g., /who commands, invitations from other users to
join channels, and so forth) appears interspersed with other activity
on the screen.
* 6: Command structure
Ordinary text typed at irc is sent as one's messages to everyone else
on the same channel, modulo personal choices for private messages and
the like. Commands to irc itself all begin with a command character,
which is initially `/' but may be changed to any other character
desired.
Commands may in general be abbreviated to a unique prefix.
** 6.1: Leaving irc
The way to get out of irc is to enter the /signoff command. "/si" is
sufficient. Also equivalent are "/exit," "/bye," and "/quit." A
signoff command may include a comment which will be seen by everyone
on the current channel of the person who left.
** 6.2: Getting help
Type "/help." Follow the instructions.
** 6.3: User commands
The most important commands supported by irc are:
help signoff who whois
list topic join channel
links msg invite ignore
users stats nick away
info clear query cmdch
date mode
*** 6.3.1: help
Information on how to use the rest of the system is available via
/help. The modeline says so as well.
*** 6.3.2: signoff {comment}
/signoff exits chat. Optional comment may be included; see above.
*** 6.3.3: who
/who returns information on who is using chat. /who without arguments
prints info on all users that can be seen. Users of public channels
show up with their channel identified. Users of private channels
appear, but they are specified as being on a private, unspecified
channel. Users of secret channels and users whose user mode is +i
(invisible) do not appear at all.
Giving a channel name as an argument to /who returns only those users of the
specified channel. This still doesn't show users of secret channel or
invisible users one is actually on the same channel with them. Users
of private channels are shown, if an exact channel name is given.
*** 6.3.4: whois
This returns information about individual users. Say "/whois
nickname" to get information on the login name and host from which the
nicknamed user comes.
*** 6.3.5: topic
Channels can be given off-the-cuff "topics." Saying "/topic some
string of text" will associate that topic with the current channel.
*** 6.3.6: list
/list will give lists of active channels, the number of users of each,
and the topics therewith associated. Again, secret channels do not
appear and private channels only appear as Prv.
*** 6.3.7: join & channel
/join or /channel are the means to enter a channel. Give the channel
name as an argument. If this is a secret or hidden channel, /who
commands will show oneself and any other users of one's channel.
One's arrival on a channel is announced to the rest of the users
already on that channel. Silent, anonymous "lurking" is not
supported.
*** 6.3.8: links
/links lists the currently-active set of chat servers. Beware: this
list can be quite long, and will undoubtedly get longer as chat gains
wider use. As of 15 May, 1992, about 130 servers is typical.
*** 6.3.9: msg
A single message can be sent privately to a certain user with /msg.
Type /msg nickname and the text to be sent. It will be sent privately
to the indicated nickname.
*** 6.3.10: invite
If there is a user online to whom one wishes to speak, one may invite
that user to join oneself on a certain channel. One types "/invite
nickname" with an optional channel number. The receiving user gets a
one-line message indicating the sender and the invitation. The
receiving user is free to ignore the invitation, of course.
*** 6.3.11: ignore
If one wants to ignore messages sent by some other user or users, it
may be done with /ignore command. One can ignore someone by their
nickname, or by their user@host data. Wildcards may be used.
*** 6.3.12: users
/users will return a list of the users logged into one's system. With
an optional hostname identifying a chat server host, the users logged
into that system will be listed.
*** 6.3.13: stats
This command returns counts of various protocol operations of one's
chat server. It is neither particularly useful nor interesting to
users other than operators.
*** 6.3.14: nick
One can change nicknames by issuing "/nick new-nickname." All users
on one's channel will be advised of the change. NOTE: If one enters
chat with a nickname clash (e.g., one's login name is the same as
someone else's, and the other user got there first), the system will
not let one enter until one issues a /nick command with a unique
nickname.
*** 6.3.15: away
Sometimes, one wishes to remain connected to the chat system, but one
must be elsewhere for a while. One can issue an /away command with
arbitrary text as argument, which will mark oneself as being away. If
someone sends an away'd user a private message (via /msg or in a
private session set up via /query; see below), the sender will get a
message back from the server indicating the away-ness and the message
which was set.
*** 6.3.16: info
/info returns information regarding the author and copyright of the
chat system.
*** 6.3.17: clear
At times, one wishes that one's screen weren't so cluttered. /clear
makes it so.
*** 6.3.18: query
This command is used to set up private communications `outside' the
normal channel system.
When one enters "/query nickname," the indicated nickname is set up as
the sole recipient of anything which one types thereafter. Thus, if
user A executes "/query B" and user B executes "/query A," they have
set up a private communication between themselves. Significantly, it
remains possible for them to stay on their respective channels, which
need not be the same, and listen to whatever conversation is going on
around them as well, though they cannot respond to that ambient
conversation without leaving the private conversation they have set up.
One leaves this private mode by issuing /query without arguments.
*** 6.3.19: cmdch
The `/' character may not be best for some people to use as their
command character. It can be changed with "/cmdch <character>."
*** 6.3.20: mode
This command can be used for altering the various modes of a channel
(see the explanation of channel modes above). /mode command can only
be issued by channel operators.
** 6.4: Operator commands
The chat system administrators on each host have additional
responsibilities and power over the configuration and operation of the
servers. The commands to do so are delineated below.
*** 6.4.1: oper
Users who have the potential for operator privileges initially invoke
those privileges by "/oper nickname password," where nickname is the
nickname under which operation is intended, and password is the
password known to the chat system for that nickname.
*** 6.4.2: kill
Obnoxious users had best beware the operator who's fast on the /kill
command. "/kill nickname" blows any given nickname completely out of
the chat system.
Obnoxiousness is not to be tolerated. But operators should not use
/kill lightly.
*** 6.4.3: quote
Raw access to the underlying server protocol is possible through the
user of the /quote command. "/quote any text at all" is used to send
direct, unmodified commands to the servers. This has a wide variety
of uses, such as deliberately killing a local or remote chat daemon,
invoking operator privileges for otherwise-operator-priv-forbidden
users, and related tasks. It is, again, a very powerful operation,
and not to be used lightly.
* 7: Questions, problems, troubles?
If you have problems, please contact Christopher Davis (ckd@eff.org) or
Helen Rose (hrose@eff.org). Known as "ckd" and "Trillian" on irc,
respectively. You can also ask for help on some of the operator
channels on irc, for example #twilight_zone and #eu-opers. They will
be able to assist you in whatever problems you are having with IRC.
-241
View File
@@ -1,241 +0,0 @@
Internet Relay Chat Operator Etiquette Guide (May, 1992)
[ $Id$ ]
Welcome! You've either been selected to be an IRC Operator or you have set
up your server and thus have taken on the dual task of IRC Server
Administrator and IRC Operator. Your future days will be filled with hours
of fun chatting on IRC, and then wondering why everyone you talked to went
away, because the links had apparently broken.
Linking:
========
You will be assigned links from the IRC Routing Coordinators. Please
use these links and these links ONLY. The links have been designed to
maximize efficiency and make delays in chatting minimal. You will
usually be given two links, one to each regional backbone site.
Connect to the primary site first and then to the secondary site. You
should not need to connect to any other sites. You will be informed if
this policy changes.
Kills
=====
/kill is a special operator command. You should use it with
care, and only if absolutely needed. The format is as follows:
/kill NICKNAME comment. Comment can be a phrase of almost any length
(within reason) and should be used for specifying the reason of the kill.
Example: /kill Trillian She's a Ghost
IRC Ghosts are created after a net split has occured and the net has yet to
relink.
/wallops PHRASE This is used to talk to those users who have their
user mode set to +w. /wallops used to be a way for operators to talk
about important matters in linking etc., but it has little use
nowadays.
/TRACE command /TRACE is useful to know what servers are connected to
what. Sometimes /trace can be confusing, especially if you are using
it for the first time. Here is an example of a trace from
stekt1.oulu.fi to cdc835.cdc.polimi.it.
/TRACE cdc835.cdc.polimi.it
*** Link stekt1.oulu.fi<2.7.2> ==> cdc835.cdc.polimi.it
*** Link rieska.oulu.fi<2.7.1>e ==> cdc835.cdc.polimi.it
*** Link nic.funet.fi<2.7.1>e ==> cdc835.cdc.polimi.it
*** Link ircserver.et.tudelft.nl<2.7.1>e ==> cdc835.cdc.polimi.it
*** Link vesuv.unisg.ch<2.7.1>e ==> cdc835.cdc.polimi.it
*** Link apollo.di.unipi.it<2.7.1>e ==> cdc835.cdc.polimi.it
*** Oper Class[10] ==> Allanon[cdc835.cdc.polimi.it]
*** User Class[11] ==> Lupandy[plus2.usr.dsi.unimi.it]
*** Serv Class[3] ==> apollo.di.unipi.it[131.114.4.36] 132S 445C
*** User Class[11] ==> Punk[pluto.sm.dsi.unimi.it]
*** User Class[11] ==> TheEdge[pluto.sm.dsi.unimi.it]
*** User Class[10] ==> Mork[cdc835.cdc.polimi.it]
*** User Class[11] ==> Lollo[c700-2.sm.dsi.unimi.it]
*** User Class[11] ==> Attila[hp2.sm.dsi.unimi.it]
*** Class 0 Entries linked 1
*** Class 11 Entries linked 5
*** Class 10 Entries linked 2
*** Class 3 Entries linked 1
From this output you can see that the route goes first to
rieska.oulu.fi (running version 2.7.1e), then nic.funet.fi,
ircserver.et.tudelft.nl, vesuv.unisg.ch, and apollo.di.unipi.it, after
which cdc835 is the next server. Then we see the connections on
cdc835: One operator (Allanon) and 6 users are on line. The class of
each connection is given. There is only one server connected to cdc835
at the moment, and that server is apollo.di.unipi.it (cdc835 is said
to be a "leaf" server at the moment). The numbers 132S 445C in the end
of line tell us, that there are 132 servers and 445 clients connected
to the servers from apollo onwards. Finally we see a grand total of
connections in each connection class.
/SQUIT server {comment}
/squit isolates a specified server from the next closest server, when
you look at it along the trace path starting from your server.
This is usually used in conjunction with CONNECT (explained later) to
reroute traffic. This will be described in detail in the section
"routing", preceding CONNECT.
Usage (and examples):
/squit E
If the network looks like this initially (and you are on server A)
A <---> B <---> C <---> D
^
|
v
G <---> E <---> F <---> ... (rest of the net)
Then after issuing the previous /squit the network would look like this:
A <---> B <---> C <---> D
G <---> E <---> F <---> ...
/squit E {comment}
It usually helps to give a reason why you are sending a
SQUIT for a server. This can be accomplished by sending
the command "/squit server This link is making the US route
through Finland". The SQUIT will then be sent out, and the
server sending the squit will WALLOP sending the comment
so all operators can see it.
/CONNECT server {portnum server2}
/connect is used to establish a link between two servers. These
connections must be authorized by each server's ircd.conf file, but
any operator can issue a CONNECT between authorized servers. This
command is most often used in conjunction with SQUIT to reroute
traffic.
If only one argument is given, this command causes the server you
are on to attempt to connect to the server specified. For example,
"/connect B" (in the previous example) would cause your server (A) to
connect to B.
Suppose you wanted to reconnect server F to server E? You cannot
contact server F since it is no longer part of your network. However,
you can tell server E to connect to it. A remote CONNECT can be issued
to server E.
Examples (assume you are on server A):
/connect B
If the network initially looks like this:
A B <---> ... (rest of network)
Then afterwards (if the connection succeeds) the network will look
like this:
A <---> B <---> ...
In the example where you wanted to reconnect server E to F, the
following syntax would be appropriate (note: we are assuming that
F's irc socket port is 6667, which is the default)
/connect F 6667 E
If the network initially looks like this:
A <---> B <---> C <---> D
^
|
v
G <---> E F <---> ...
Then after your CONNECT request the network topology will look like this:
A <---> B <---> C <---> D
^
|
v
G <---> E <---> F <---> ...
Be careful when connecting servers that you know which command to
use! If you simply issued "/connect F" from your server, the
network would look like this:
... <---> F <---> A <---> B <---> C <---> D
^
|
v
G <---> E
which for various reasons (discussed below) might be very
undesirable.
Routing
=======
When and how should you do rerouting? This depends on where your
server is topologically located and whether you route traffic. If you
are a leaf node (i.e. only connect to one server at a time) then
chances are you won't need to do any routing at all. Your ircd.conf
file should be written to connect to the best possible servers first
before trying alternates. At the most, you may decide to squit an
alternate server and connect to your primary if/when it goes back up.
This only involves local squits, however.
If you are operating a backbone site, you may find yourself
rerouting things quite often. If the servers badger.ugcs.caltech.edu
(Pasadena, CA), irc.mit.edu (Boston, MA), minnie.cc.utexas.edu
(Austin, TX) and ucsu.colorado.edu (Boulder, CO) were routing traffic
in the following way:
... <---> minnie <---> badger <---> bucsd <---> ucsu <---> ...
It would make sense to either squit ucsu and reconnect it to minnie,
or disconnect minnie from badger and connect to ucsu, because
topologically (and geographically) ucsu and minnie are rather close.
There are occasions when US traffic for some reasons winds up being
routed through Australia. This is another case where traffic should
definitely be rerouted. However, there are sometimes occasions when
routing is going through "backdoor" methods. If you see something
totally outrageous (like the east coast and the west coast being
connected by eff.org) please ask for example on channel #twilight_zone
before you send any squits, because chances are, it's like that for a
reason.
Of course, any operator can remotely squit or connect servers, so
if you see a problem and you're sure you know how to fix it, it's a
good idea to do so. If the operator of a server which is is being
routed poorly is online, it's probably best to contact him/her first,
though.
Chances are that hub operators will be more familiar with the
general topology of the network and which servers connect to which
(which is why most of the manual routing is left to them), so if you
have any problems, talk to the other operators on operator channels
(#twilight_zone, #eu-opers etc.) That's what they are there for!
Also, be aware that servers will notify all the operators online of
remote SQUITs and CONNECTs via WALLOPS.
Please let us know if there should be any additions to this guide. Again,
this is not MANDATORY, this is just a GUIDE. Please conduct yourself as
an IRC Operator would...you are looked upon for assistance, both emotional
and mental.
Helen Rose Christopher Davis Noah Friedman
<hrose@cs.bu.edu> <ckd@cs.bu.edu> <friedman@ai.mit.edu>
January, 1991
Updated by
Mauri Haikola
<mjh@stekt.oulu.fi>
May, 1992
+97
View File
@@ -0,0 +1,97 @@
Some minor rules about patches & modifications to UnrealIRCd
1. When making a change, always add a small description in Changes, in the
BOTTOM. Be sure to mention the bugid# (or muliple id's) if you are fixing
a bug from a bugtracker, and be sure to credit the reporter. Use:
'Fixed blahblahblah, reported by Blah (#0001234).'
Or, for example, for features:
'Added support for blahbalbvdshd, suggested by Blah (#0001235).'
Or something similar ;)
2. If new files are made, it must contain proper copyright headers,
and a $Id$ somewhere.
3. /*
* These kind of comments
*/
NOT
// These kind of comments
4. if (something == 1)
{
moo; /* comment */
/* This does what what what */
cow(go(moo));
}
NOT
if (something == 1) {
}
5. Do not touch version.c.SH or version.h, unless you are a head coder
if you need a credit in, contact us
6. Patches are submitted to coders@lists.unrealircd.org,
using "cvs diff -u > patchname". A submision must contain description of
what it does, etc.
7. Protocol changes must be discussed before making patches for it.
8. We do NOT rip people off. If we use other people's code, it MUST be
properly credited.
9. We generally use tabsize 4 and 8. In any case, use tabs and NOT spaces.
Some code is old and horrible and has a mix of tabs and spaces used for
spacing, that's something we do not want to have ;)
10. Be careful about overflows. As you know a line from a user can never be longer
than 511 (510?) characters, sometimes you can use this knowledge to your
advantage. Whenever it's not safe or when you don't know what input size you
can expect, use strlcpy instead of strcpy. Do not ever use strncpy, this is
older, slower, and does not add proper zero termination.
For the same reason, use snprintf if really needed. Note though, that using
ircsprintf with a bigger buffer (eg: 1024 bytes) is MUCH faster, so preferably
use that instead of snprintf. The same can be true for strcpy vs strlcpy in
some circumstances as well.
11. Speed. When optimizing or writing code, keep in mind that readability and
stability comes first, and after that comes speed. So we'd rather prefer some
readable code (even if difficult) over some odd highly optimized routine which
nobody understands, is difficult to extend, and might have several bugs.
As mentioned earlier: use ircsprintf, not sprintf (this is because ircsprintf
is optimized for simple strings like the ones we use).
Prefer ircsprintf with a bigger buffer over the use of snprintf, since
ircsprintf is much faster.
12. Initialize your structs and use the proper memory calls.
In UnrealIRCd we use MyMalloc, MyMallocEx and MyFree (so not malloc/free).
MyMalloc usually maps to malloc, and MyMallocEx is a malloc plus filling
the memory area (eg: the struct) with zero's (a la calloc).
Use of MyMallocEx is suggested. In general you should not be using MyMalloc.
"But MyMalloc is faster!" you might say. This is true, but using MyMallocEx
has very little speed impact and enourmous benefits: people tend to forget
to set certain fields in the struct to NULL, or much more common: when
someone later on (eg: 1 year later) adds a field to a struct, there could
be several places he/she needs to update to make sure x->something is NULL
after allocating a new struct. Bad idea.
Little speed impact, huge stability benefits, easy decision ;).
13. Comment your code! This should speak for itself...
Put comments wherever you think they are needed, to aid any further coders
with reading your code.. and, in fact, it will aid yourself as well if you
would look back at your code 2 years later.
If there's some obscure pitfall, do mention it! Don't just "hope" a next
author will see it like you did.
14. Use enums whenever possible, rather than #define constants. Besides making
things more clean, it also aids debugging.
15. Whenever you add a new directive or setting, be sure to add documentation
for it in unreal32docs, and for new commands in help.conf as well.
16. Whenever you add a new set:: item, be sure to add it to /stats S
+109
View File
@@ -0,0 +1,109 @@
==[ IMPORTANT MESSAGE ABOUT DISABLING NOSPOOF ]==
Disabling NOSPOOF at windows (w9x, nt, w2k, xp) is NOT recommended since this
WILL allow users to use "spoofed hosts" (like the IP of someone you trust).
If you have problems with NOSPOOF, fix your client (bot?) instead (you should PONG
back to the initial PING at connect).
==[ GENERAL GUIDELINES ]==
First of all you need Microsoft Visual C++ (see below), compiling with
cygwin is not supported (nor is there any good reason to do so).
Compatible compilers:
cygwin NOT supported. Will not work. Should be no reason to use this anyway.
msvc 6.x Microsoft Visual Studio 6 does not work, this compiler is too old.
msvc 7.x Microsoft Visual Studio 7.x (.NET) will work just fine
msvc 8.x Microsoft Visual Studio 8.x (.NET 2005), including the free kit,
should work fine (since Unreal3.2.5).
If you don't have the paid version of Microsoft Visual Studio 7.x, then you can
use the FREE development kit and PSDK as explained below:
1. Download the MS Visual Studio Development kit at:
http://msdn.microsoft.com/visualc/vctoolkit2003/
2. Install the Platform Software Development Kit (PSDK) from:
http://www.microsoft.com/msdownload/platformsdk/sdkupdate/
3. NOTE: Whenever you need to compile something we say 'Start the Visual Studio
.NET Command Prompt' below, but you - a person using the free version - will
actually have to start the Platform SDK Prompt instead (check out the
Start Menu).
== Simple compile (no SSL/ZIP/Remote includes) ==
1. Start the Visual Studio .NET Command Prompt
2. Go to your UnrealIRCd dir (like: cd \dev\unreal3.2) and then compile with:
nmake -f makefile.win32
This will generate a wircd.exe and unreal.exe
3. Copy the src\win32\tre.dll to your UnrealIRCd main dir.
4. Done!
== Compiling modules ==
1. Put your module (the .c file) in src\modules (eg: c:\dev\unreal3.2\src\modules).
2. Start the Visual Studio .NET Command Prompt
3. Go to your UnrealIRCd dir (like: cd \dev\unreal3.2).
4. Compile the module with:
nmake -f makefile.win32 custommodule MODULEFILE=<name>
<name> is the name of the module WITHOUT the .c suffix, so if your
module has the filename 'm_crappymod.c', then you use:
nmake -f makefile.win32 custommodule MODULEFILE=m_crappymod
5. Done. A .dll file should have been created.
If you compiled with VC7 and used the official source (not a CVS version,
but for example 3.2.1 source) then the module should work on all these
versions (binary compatible) and you could for example put them on
your website so users can download them.
Such a module will work on both SSL and non-SSL, there should be no need
for separate versions... unless, of course, you use SSL-specific code in your
mod.
DO NOT download a CVS version & compile your mod and then start
distributing the .dll for use at another (non-CVS) version!!
Every time we change a struct (and in some other cases) it makes the
binary/module binary incompatible which practically means that your module
might seem to work fine at first (or not..) but will CRASH or cause memory
corruption and other subtle errors.
== COMPILING WITH ZIP LINKS / SSL / REMOTE INCLUDES SUPPORT ==
First of all, DO NOT use any precompiled libs from the official
zlib/openssl/curl sites. We require certain compile parameters.
Versions downloaded from such sites will often CRASH.
The easiest is to download the UnrealIRCd development package
which contains zlib, openssl and curl precompiled for you.
See: www.vulnscan.org/unrealwin32dev/
Just extract it somewhere (eg: to c:\dev).
Then, use compile flags to enable the features + specify where to look.
Here are examples if you used c:\dev:
ZIP: nmake -f makefile.win32 USE_ZIPLINKS=1 ZLIB_INC_DIR="c:\dev\zlib" ZLIB_LIB_DIR="c:\dev\zlib\dll32"
SSL: nmake -f makefile.win32 USE_SSL=1 OPENSSL_INC_DIR="c:\dev\openssl\include" OPENSSL_LIB_DIR="c:\dev\openssl\lib"
CURL: nmake -f makefile.win32 USE_REMOTEINC=1 LIBCURL_INC_DIR="c:\dev\curl\include" LIBCURL_LIB_DIR="c:\dev\curl\lib"
Obviously you can (and probably will) combine all these options, like
to build a zip+ssl+curl version (all in 1 line):
nmake -f makefile.win32 USE_ZIPLINKS=1 ZLIB_INC_DIR="c:\dev\zlib" ZLIB_LIB_DIR="c:\dev\zlib\dll32"
USE_SSL=1 OPENSSL_INC_DIR="c:\dev\openssl\include" OPENSSL_LIB_DIR="c:\dev\openssl\lib" USE_REMOTEINC=1
LIBCURL_INC_DIR="c:\dev\curl\include" LIBCURL_LIB_DIR="c:\dev\curl\lib"
== SYMBOL FILES ==
If you get something like this:
Creating library L_COMMANDS.lib and object L_COMMANDS.exp
M_OPER.obj : error LNK2019: unresolved external symbol _sendto_snomask_global re
ferenced in function _m_oper
(note: the exact name of the symbol will vary)
Then you will have to rebuild the wircd.def symbol file. You do this by
downloading http://www.vulnscan.org/tmp/dlltool.exe and putting the file somewhere
in your path (eg: c:\winnt\system32).
Then, to compile you do this:
nmake -f makefile.win32 [your other options here]
nmake -f makefile.win32 SYMBOLFILE
nmake -f makefile.win32 [your other options here]
So basically you just run 'nmake -f makefile.win32 SYMBOLFILE' and then restart
compiling again.
== COMPILING ZLIB/SSL/CURL YOURSELF ==
This is off-topic and not explained here.
Again, use the stuff from the win32 development pack unless you have a good
reason to do otherwise (in which case we might not support your self-compiled version
because we work with specific versions / compile options).
-1582
View File
File diff suppressed because it is too large Load Diff
+789 -478
View File
File diff suppressed because it is too large Load Diff
-193
View File
@@ -1,193 +0,0 @@
[ $Id$ ]
UnrealIRCd FAQ
Made by Stskeeps
This file will contain frequently asked questions about
Unreal IRCd. If you need more help email stskeeps@tspre.org
1) * I compile and everything seems fine during the compiling, but when it
comes time for the program to link, I get errors complaining about dns and
res things. What causes this?
A: You need to make sure -lresolv is included in the "extra libraries"
option of ./Config (or IRCDLIBS in top-level makefile)
2) * When I start up the IRCd it complains about something with chdir()?
A: You need to make sure the right directory is specified when you was
asked about "What directory are all the server configuration files in?"
./Config question
3) The server says like:
*** Link server1 -> server2 is now synced [secs: 30 recv: 130.4 sent: 120.0]
when I link two servers together, what does that mean?
A: That means the link is "synced" (all infodata transfered about the server).
The "secs" (30 in this example) means it took 30 seconds to do the sync
"recv: 130.4" means there was recieved 130 KiloBytes and 4 bytes.
"sent: 120.0" means there was sent 120 kilobytes from my side.
4) What is a negative TS split?
A: Every computer/server has got a time (so they can do TimeStamps) ..
When the clock on the computer is set wrong and the computer it links
upto is wrong it creates a Negative TS split (means time is lower it
actually is. How to fix this is contacting the root of the machine
and ask him to fix the time (when you made sure it's YOUR server that's
wrong)
5) What is an uProtocol ?
A: UnrealIRCd uses numbers to check if a link is compatible with itself
F.x Unreal v2.1.3 has got number 2103 while version 2.1 only has got
2100 - This means .. if the number is lower/higher than the uProtocol
the server uses, it's an incompatible link (of some reasons)
6) How does T:Lines work and what are they?
A: T:Lines is a new Unreal feature that makes it able to show different
MOTDs and RULES to people who matches a certain hostmask . Lemme show you some examples:
T:*.dk:motds/danish.motd:rules/danish.rules
T:*.fr:motds/french.motd:rules/french.rules
This will get people from Denmark to see the "Danish" MOTD and the "Dandish" RULLES
and people from France to see the French ones:)
NOTE: T:Lines are read up side down so if you have a T:*:ircd.motd:ircd.rules in the bottom
it should be at the top so the other motd lines can work as well
7) Where can i download updates to Unreal?
A: Mostly you can download the newest version at
http://unreal.tspre.org
Versions may be spewed out regulary due to new features and bugs..
8) Why does it say "unlimit core failed" or something when I boot the IRCd?
A: It's just a warning, mainly just ignore it.
9) I use Linux Mandrake and ./Config always hangs! What can I do??
A: Go edit the Config script and remove those lines:
-SNIP START-
cat > $TMP <<__EOF__
#$STRINGH STRINGH
#$STRINGSH STRINGSH
#ifdef STRINGH
#include <string.h>
#endif
#ifdef STRINGSH
#include <strings.h>
#endif
main()
{
char *t = "a", *s = strtok(t, ",");
if (!strcmp(t, s))
exit(0);
exit(1);
}
__EOF__
$COMP >/dev/null 2>&1
if [ $? -ne 0 ] ; then
echo $n " strtok$c"
NSTRTOK=define
else
$EXEC
if [ $? -ne 0 ] ; then
echo $n " strtok$c"
NSTRTOK=define
fi
fi
$RM -f $EXEC $TMP
--- SNIP END---
And replace it by
NSTRTOK=undef
This should get it to work=) (thanks to Joe Whipple for reporting this bug)
---END----
10) Hosts show up as (null).network.net !!
A: This is because you have forgotten to include the network file.
The correct form is (in unrealircd.conf)
Include ..........: <network file>
If this doesn't work .. seek me at irc.global-irc.net #unrealircd
11) The IRCd uses like 66.7% CPU !!!?
A: Try run it with nice :
/usr/bin/nice -n 19 src/ircd
if services go this way too just place ./<name> instead of src/ircd
Any more support seek me at the default place:P
12) My IRCd which runs on a FreeBSD says something about FDs and
Max: 0 What shall I do??
A: Well it's somekinda bug but you can workaround it by removing those
lines in src/s_bsd.c: (init_sys())
<- snippet 1 ->
#ifdef RLIMIT_FD_MAX
struct rlimit limit;
int pid;
if (!getrlimit(RLIMIT_FD_MAX, &limit))
{
# ifdef pyr
if (limit.rlim_cur < MAXCONNECTIONS)
#else
if (limit.rlim_max < MAXCONNECTIONS)
# endif
{
(void)fprintf(stderr,"ircd fd table too big\n");
(void)fprintf(stderr,"Hard Limit: %d IRC max: %d\n",
limit.rlim_max, MAXCONNECTIONS);
(void)fprintf(stderr,"Fix MAXCONNECTIONS\n");
exit(-1);
}
# ifndef pyr
limit.rlim_cur = limit.rlim_max; /* make soft limit the max */
if (setrlimit(RLIMIT_FD_MAX, &limit) == -1)
{
(void)fprintf(stderr,"error setting max fd's to %d\n",
limit.rlim_cur);
exit(-1);
}
# endif
}
#endif
<-snippet 2->
#ifdef sequent
# ifndef DYNIXPTX
int fd_limit;
fd_limit = setdtablesize(MAXCONNECTIONS + 1);
if (fd_limit < MAXCONNECTIONS)
{
(void)fprintf(stderr,"ircd fd table too big\n");
(void)fprintf(stderr,"Hard Limit: %d IRC max: %d\n",
fd_limit, MAXCONNECTIONS);
(void)fprintf(stderr,"Fix MAXCONNECTIONS\n");
exit(-1);
}
# endif
#endif
13) I run debian-sparc and i get errors when compiling in match.c
What should I do?
A: If it says like this
<-snippet->
match.c: In function 'myncmp':
match.c:247: argument 'str1' doesn't match prototype
/usr/include/string.h:255: prototype declaration
match.c:247: argument 'str2' doesn't match prototype
/usr/include/string.h:255: prototype declaration
match.c:247: argument 'n' doesn't match prototype
/usr/include/string.h:255: prototype declaration
<-end of snippet>
Then go into include/setup.h and add this line:
#define GOT_STRCASECMP
(C) Carsten Munk 1999
-82
View File
@@ -1,82 +0,0 @@
.\" $Id$
.TH IRC 1 "7 October 1990"
.SH NAME
irc \- User Interface to Internet Relay Chat Protocol
.SH SYNOPSIS
\fBirc\fP [\fB-p\fP \fIportnum\fP] [\fB-c\fP \fIchannel\fP] [ \fInickname\fP [ \fIserver\fP ]]
.SH DESCRIPTION
.LP
\fBIrc\fP is a user interface to the Internet Relay Chat, a CB-like
interactive discussion environment. It is structured into \fIchannels\fP,
which are public discussion forums, and also allows for private intercommunication.
Each participant has a \fInickname\fP, which is the one specified in the command
line or else his login name.
.LP
Once invoked, \fBirc\fP connects as a client to the specified server,
\fIserver\fP or to the default one (see below). The screen splits into a dialogue
window (the major part
of the screen) and a command line, from which messages can be sent and
commands given to control irc.
.SH COMMAND SYNTAX
The syntax of irc commands is of the form \fB/COMMAND\fP. The most notable
ones are listed below. For an uptodate list, use the \fBHELP\fP command
of \fBirc\fP. Case is ignored.
.IP "\fB/ADMIN\fR [\fIserver\fP]"
Prints administrative information about an IRC \fIserver\fP.
.IP "\fB/AWAY\fP [\fImessage\fP]"
Mark yourself as being away (with an automatic reply \fImessage\fP
if specified)
.IP "\fB/BYE\fR, \fB/EXIT\fR, \fB/QUIT\fR"
Terminate the session
.IP "\fB/CHANNEL\fR [\fIchannel\fP]"
Join another \fIchannel\fP
.IP "\fB/CLEAR\fR"
Clear the screen
.IP "\fB/HELP\fR [\fIcommand\fP]"
Display a brief description of the \fIcommand\fP (or list all commands, if none
specified).
.IP "\fB/SUMMON\fR \fIuser\fP"
Allows to summon a \fIuser\fP specified as a full Internet address, i.e.,
\fIlogin@host.domain\fP, to an IRC dialogue session (in much the same
way as the talk(1) command). It is usable ONLY if the irc daemon runs on
the target machine (host.domain).
.IP "\fB/TOPIC\fR \fItopic\fP"
Sets the \fItopic\fP for the current channel
.IP "\fB/WHO\fR [\fIchannel\fP|*]"
Lists all users of IRC if no argument, of the specified \fIchannel\fP or of the
current channel (*).
.SH ARGUMENTS
.IP "\fB-p\fP \fIportnum\fP"
TCP/IP "port number. Default is 6667 and this option should seldom if ever"
be used.
.IP "\fB-c\fP \fIchannel\fP"
\fIChannel\fP number to join upon beginning of the session. Default is no channel.
.IP "\fInickname\fP"
\fINickname\fP used in the session (can be changed with the \fB/NICK\fP command).
Default is user login name.
.IP "\fIserver\fP"
\fIServer\fP to connect to. Default is specified in the irc system configuration
file, and can be superseded with the environment variable IRCSERVER.
.SH EXAMPLE
.RS
.nf
tolmoon% \fBirc -p6667 Wizard tolsun\fP
.fi
.RE
.LP
connects you to irc server in host tolsun (port 6667) with nickname Wizard
.SH COPYRIGHT
Copyright (c) 1988 University of Oulu, Computing Center, Finland.
.nf
Copyright (c) 1988,1989,1990 Jarkko Oikarinen
.nf
All rights reserved.
For full COPYRIGHT see LICENSE file with IRC package.
.SH "SEE ALSO"
ircd(8)
.SH BUGS
What bugs ?
.SH AUTHOR
Jarkko Oikarinen <jto@tolsun.oulu.fi>
.nf
Manual page updated by Michel Fingerhut <Michel.Fingerhut@ircam.fr>
-140
View File
@@ -1,140 +0,0 @@
.\" $Id$
.TH IRCD 8 "29 March 1989"
.SH NAME
ircd \- The Internet Relay Chat Program Server
.SH SYNOPSIS
.hy 0
.IP \fBircd\fP
[-a] [-c] [-i] [-o] [-q] [-t] [-d directory]
[-f configfile] [-x debuglevel] [-h hostname] [-p portnum]
.SH DESCRIPTION
.LP
\fIircd\fP is the server (daemon) program for the Internet Relay Chat
Program. The \fIircd\fP is a server in that its function is to "serve"
the client program \fIirc(1)\fP with messages and commands. All commands
and user messages are passed directly to the \fIircd\fP for processing
and relaying to other ircd sites. The \fIirc(1)\fP program depends upon
there being an \fIircd\fP server running somewhere (either on your local
UNIX site or a remote ircd site) so that it will have somewhere to connect
to and thus allow the user to begin talking to other users.
.SH OPTIONS
.TP
.B \-d directory
This option tells the server to change to that directory and use
that as a reference point when opening \fIircd.conf\fP and other startup
files.
.TP
.B \-o
Starts up a local ircdaemon. Standard input can be used to send IRC
commands to the daemon. The user logging in from standard input will
be given operator privileges on this local ircd. If ircd is a setuid program,
it will call setuid(getuid()) before going to local mode. This option
can be used in inetd.conf to allow users to open their own irc clients
by simply connecting their clients to the correct ports. For example:
.TP
.B
irc stream tcp nowait irc /etc/ircd ircd \\-f/etc/ircd.conf \\-o
allows users connecting to irc port (specified in /etc/services) to start
up their own ircdaemon. The configuration file should be used to check from
which hosts these connections are allowed from. This option also turns
on the autodie option -a.
.TP
.B \-a
Instructs the server to automatically die off if it loses all it's clients.
.TP
.B \-t
Instructs the server to direct debugging output to standard output.
.TP
.B \-x#
Defines the debuglevel for ircd. The higher the debuglevel, the more stuff
gets directed to debugging file (or standard output if -t option was used
as well).
.TP
.B \-i
The server was started by inetd and it should start accepting connections
from standard input. The following inetd.conf-line could be used to start
up ircd automatically when needed:
.TP
.B
ircd stream tcp wait irc /etc/ircd ircd \-i
allows inetd to start up ircd on request.
.TP
.B \-f filename
Specifies the ircd.conf file to be used for this ircdaemon. The option
is used to override the default ircd.conf given at compile time.
.TP
.B \-c
This flag must be given if you are running ircd from \fI/dev/console\fP or
any other situation where fd 0 isnt a tty and you want the server to fork
off and run in the background. This needs to be given if you are starting
\fIircd\fP from an \fIrc\fP (such as \fI/etc/rc.local\fP) file.
.TP
.B \-q
Using the -q option stops the server from doing DNS lookups on all the
servers in your \fIircd.conf\fP file when it boots. This can take a lengthy
amount of time if you have a large number of servers and they are not all
close by.
.TP
.B \-h hostname
Allows the user to manually set the server name at startup. The default
name is hostname.domainname.
.B \-p portname
Specifies the port where the daemon should start waiting for connections.
This overrides the default which is given at compile time.
.TP
.SH
If you plan to connect your \fIircd\fP server to an existing Irc-Network,
you will need to alter your local IRC CONFIGURATION FILE (typically named
"ircd.conf") so that it will accept and make connections to other \fIircd\fP
servers. This file contains the hostnames, Network Addresses, and sometimes
passwords for connections to other ircds around the world. Because
description of the actual file format of the "ircs.conf" file is beyond the
scope of this document, please refer to the file INSTALL in the IRC source
files documentation directory.
.LP
BOOTING THE SERVER: The \fIircd\fP server can be started as part of the
UNIX boot procedure or just by placing the server into Unix Background.
Keep in mind that if it is *not* part of your UNIXES Boot-up procedure
then you will have to manually start the \fIircd\fP server each time your
UNIX is rebooted. This means if your UNIX is prone to crashing
or going for for repairs a lot it would make sense to start the \fIircd\fP
server as part of your UNIX bootup procedure. In some cases the \fIirc(1)\fP
will automatically attempt to boot the \fIircd\fP server if the user is
on the SAME UNIX that the \fIircd\fP is supposed to be running on. If the
\fIirc(1)\fP cannot connect to the \fIircd\fP server it will try to start
the server on it's own and will then try to reconnect to the newly booted
\fIircd\fP server.
.SH EXAMPLE
.RS
.nf
tolsun% \fBircd\fP
.fi
.RE
.LP
Places \fIircd\fP into UNIX Background and starts up the server for use.
Note: You do not have to add the "&" to this command, the program will
automatically detach itself from tty.
.SH COPYRIGHT
(c) 1988,1989 University of Oulu, Computing Center, Finland,
.LP
(c) 1988,1989 Department of Information Processing Science,
University of Oulu, Finland
.LP
(c) 1988,1989,1990,1991 Jarkko Oikarinen
.LP
For full COPYRIGHT see LICENSE file with IRC package.
.LP
.RE
.SH FILES
/etc/utmp
"irc.conf"
.SH "SEE ALSO"
irc(1)
.SH BUGS
None... ;-) if somebody finds one, please inform author
.SH AUTHOR
Jarkko Oikarinen, currently jto@tolsun.oulu.fi,
manual page written by Jeff Trim, jtrim@orion.cair.du.edu,
later modified by jto@tolsun.oulu.fi.
-47
View File
@@ -1,47 +0,0 @@
[ $Id$ ]
The following macros are included in "ircd.m4" for use with the m4 text
preprocessor. "ircd.m4" is parsed before the IRC server conf file so they
are all available for use with that.
NOTE: The "ircd.m4" file is *ONLY* created by a "make install".
VERSION - current version string as in patchlevel.h
DEBUGMODE - if DEBUGMODE is define in config.h, is also defined for m4.
HOSTNAME - taken from hostname(1)
USER - username of person doing the "make install"
PORT - default port number as in config.h
PFREQ - default ping frequency as in config.h
CFREQ - default connect frequency as in config.h
MAXSENDQ - default max sendq as in config.h
CL - use this to wrap a class number
HOST - use this to wrap a hostname
HOSTM - use this to wrap the hostmask number in N-lines
ID - when wrapping the host field in an I-line, causes ident string return
to be used instead of user supplised username.
PASS - use this to wrap passwords in C/N/I/O lines
PING - use this to wrap the ping value in Y-lines
APORT - use this to wrap the port number in I-lines
CPORT - use this to wrap the port number in C-lines
SERV - use this to wrap server names
You might use some of these as
C:foo.bar.edu:PASS(boo):foo.bar.edu:APORT(6667)
I:ID(128.250.*)::ID(*.mu.oz.au):CPORT(6667)
In addition to these (rather weak macros), some more complete ones are
defined which already perform the above.
ADMIN - provide fields to it as you would an A-line
ALLOW - provide fields to it as you would an N-line
BAN - provide fields to it as you would an K-line
CLASS - provide fields to it as you would an Y-line
CLIENT - provide fields to it as you would an I-line
CONNECT - provide fields to it as you would an C-line
ME - provide fields to it as you would an M-line
HUB - first parameter is server you want to hub, second is optional and is
a mask against which other servers introduced must match against.
LEAF - works like HUB, except that the mask is matched against server names
to check if the link should be dropped.
SERVER - uses 6 fields, the first 4 as are found in an N-line, the last two
should be as you would use in a C-line. It expands out to provide
both a C and N line.
-294
View File
@@ -1,294 +0,0 @@
[ $Id$ ]
From: Carlo Kid - Runaway <carlo@sg.tn.tudelft.nl>
Subject: GUIDE for compiling your server
To: wastelanders@rush.cc.edu (New Wastelanders MailingList)
Date: Thu, 26 May 94 13:44:10 METDST
Cc: carlo@sg.tn.tudelft.nl
Mailer: Elm [revision: 66.33]
Status: RO
GUIDE for compiling your server, by Runaway
===============================================
First of all you must get all the files you need, as an example
I will explain how to compile irc2.8.19.U3.2.
The files you'll need in general are:
- irc2.8.19.U3.2.tar.gz
Or, when you already have an older version -say irc2.8.19.U3.1- a patch:
- irc2.8.19.U3.1-2.patch
It is possible you need more then one patch, especially when you already
upgraded more often. But in that case you already have those old patches.
Of course, in that case, you also already have the old directory tree:
/home..../yourname/....ircd/irc2.8.19.U3.1/
Scripts, patches and directory trees
====================================
It is good practise to:
1) Call the directory tree after the version
2) Let this directory ONLY contain what comes with the .tar.gz file!
Thus: Do NOT put ircd.conf, or any patches etc in it!!!
In general, you must be able to delete this whole directory tree
when you still have the original .tar.gz file and patches applied to it.
3) Put it in a directory ending on /ircd, THIS directory will contain
your ircd.motd, ircd.pid, ircd.conf and patches...
So, you end up with:
...ircd/irc2.8.19.U3.1-2.patch
...ircd/irc2.8.19.U3.1.tar.gz
or just:
...ircd/irc2.8.19.U3.2.tar.gz
at once.
Before you can delete the old directory tree, you must be SURE to save
everything thats in it. This is thus the .tar.gz file, all patches but
ALSO the following files:
Makefile
include/config.h
include/setup.h
You should always keep a copy of those files OUTSIDE the irc2.8.19.U3.2/
directory tree. For instance:
...ircd/irc.personal/Makefile
...ircd/irc.personal/include/config.h
...ircd/irc.personal/include/setup.h
To make these backups easy, you should make a script, called backup.personal
containing:
cp Makefile ../irc.personal/Makefile
cp include/config.h ../irc.personal/include/config.h
cp include/setup.h ../irc.personal/include/setup.h
If you also change anything in the other Makefiles (ircd/Makefile and
common/Makefile) you can add those too. Be sure to make the directories
by hand first.
Make the script 'backup.personal' executable with:
chmod 700 backup.personal
You must be able to run it from any directory, so put it in your ..bin/
Ok... so now you have a backup of everything. If you wanted to start
ALL over you could delete the directory tree, unzip and untar the archive
again, apply all patches to it, change the Makefile and config.h again,
put setup.h back, recompile and reinstall.
In some cases it is easy to do this with an other script, I call it 'repatch',
it provides you with an easy-to-change overview of the patched you have used.
Here is how my 'repatch' looks now (it is located in .../ircd/repatch).
cd ~/irc/ircd
rm -rf irc2.8.19 irc2.8.19.U3.2
zcat irc2.8.19.tar.gz | tar xf -
mv irc2.8.19 irc2.8.19.U3.2
cd irc2.8.19.U3.2
#patch -p1 < ../Makefile.config.h.patch 2> ../patch.out
#cp ../setup.h include/setup.h
patch -p1 < ../irc2.8.19-TSpre8.2.patch 2>> ../patch.out
patch -p1 < ../irc2.8.19.TSpre8-note.patch 2>> ../patch.out
patch -p1 < ../irc2.8.19.TSpre8-wallops.patch 2>> ../patch.out
patch -p1 < ../irc2.8.19.TSpre8-bquiet.patch 2>> ../patch.out
patch -p1 < ../irc2.8.19.TSpre8-silence.2.patch 2>> ../patch.out
#patch -p1 < ../irc2.8.19.U3-ban.patch 2>> ../patch.out
make clean
vi include/patchlevel.h
grep -e '\.rej' -e '[Ff]ail' -e fuzz ../patch.out
As you can see I commented out the patches Makefile.config.h.patch and
irc2.8.19.U3-ban.patch, and don't copy setup.h here. This is because
I wanted to make a virgin .U3.2.tar.gz for distribution via ftp-sites.
If I change the name of the directory, I have to change it in three
places :/
This script forces me to edit the patchlevel.h :) :)
The last grep warns me if anything went wrong with the patches.
Moreover, as you can see, I have a 'Makefile.config.h.patch'.
You should make your own as soon as you completely installed
and tested your server. It is very handy for re-installing a new
version.
To make this patch, edit the Makefile's and and config.h and type:
backup.personal
cd ..
rm -rf irc2.8.19
zcat irc2.8.19.tar.gz | tar xf -
diff -rc irc2.8.19 irc.personal > Makefile.config.h.patch
Check it with an editor if it looks ok. In the above, 'irc2.8.19.tar.gz'
is the virgin 'Avalon' version, I change the Makefiles in the .U3
however also, so you might wanna use the virgin .U3.2.tar.gz.
Starting ALL over (or begining for the first time)
==================================================
This is about EDITTING the Makefile(s) and config.h, and creating the
setup.h for the first time.
2.8.19 is different from 2.8.16 and before. You will have to EDIT the
Makefile and config.h that comes with the distribution. You can NOT
use the old Makefile and config.h you had !
First write down the path you want to use where you are going to put
the ircd.conf etc...
Edit the Makefile. Comments are in it. You should simply define that
what is needed for your Operating System.
Then edit the config.h
Then run ./Config to create setup.h ... at first simply hit return all the
time. If you insist on using gcc instead of cc, you must edit that in your
Makefile BEFORE running setup.h. You can't change that running Config,
although it asks for it. If you have more then one cc, you can add the
right path to in the Makefile (if it uses the wrong one).
Since U3.2, I changed the Makefile and config.h a little. The changes are:
- I added note.o to the dependency
- I added *.orig files to the 'make clean' (otherwise the *.orig generated
by some 'patch' programs will be left).
If you want this too, and you have .U3.1, you can get the patch from
sg.tn.tudelft.nl (file: Makefile.conf.U3.patch).
As soon as you are done, run backup.personal. To stay up to date with your
backup.
Then make the Makefile.conf.patch as described above. (or wait with that
till you are sure it works... otherwise it might be done more then once
which is a waste of time).
Special remarks
---------------
Makefile:
First occurance of
CC=cc
Change this NOT if you want another compiler, add another CC= later, close
to your OS specific #defines...
# IRCDDIR must be the same as DPATH in include/config.h
#
IRCDDIR=/sb/users/carlo/irc/ircd
Make sure you use the same path in the config.h :)
SUBDIRS=common ircd
By removing the 'irc' from this line, you stop 'make' from making the client
as well.
config.h:
/*
* NOTE: On some systems, valloc() causes many problems.
*/
#undef VALLOC /* Define this if you have valloc(3) */
I never try it, even if I have it.
#define USE_VARARGS
For defines like this, you best check the online manual if you have them
(man vprintf in this case)... I didn't have man page for vscanf() but it
still worked... (I DO have them for vprintf and vsprinf).
#undef DEBUGMODE /* define DEBUGMODE to enable debugging mode.*/
Debug mode uses a lot more memory and is a lot slower. ONLY define
when your server gives problems like crashing/coredumping, or other
things like not wanting to startup etc. In other words: when you are really
*USING* this feature to do DEBUGing !
#define NPATH "/sb/users/carlo/irc/server/Undernet/.ircdnote"
The '#ifdef notdef' '#endif' around NPATH mean: notdef = NOT DEFINED.
You should *never* #define notdef... It is used to "comment out" *examples*.
By defining it, you enable all examples (like making your server SUI :/)
Simply *remove* the lines '#ifdef notdef' and '#endif' around the NPATH.
#define DPATH "/sb/users/carlo/irc/ircd"
Must be the same as in the Makefile!
#define SPATH "/sb/users/carlo/bin/ircd" /* path to server executeable */
This is used when you do a /RESTART. For fast restarting a NEW version (upgrade)you can let this point to a symbolic link, and then change this link to the
new executable. Do a 'restart' and voila...
For instance:
.../bin/ircd.U3.2*
.../bin/ircd -> ircd.U3.2
The last made with:
ln -s ircd.U3.2 ircd
Then when you upgrade:
rm ircd
ln -s ircd.U3.3 ircd
and a /RESTART
#undef CRYPT_LINK_PASSWORD
Make sure your ircd.conf isn't world readable like on pasadena :/
(and on ircserver.et.tudelft.nl once - we DID have to change all passwords
then)
Compiling the server
====================
*** FIRST edit your include/patchlevel.h ***
If you don't want to compile the client, you can change the Makefile
as mentioned above, or type:
make server
After a succesfull compilation (ignore warning ;), you can type
make install
or just
cp ircd/ircd ~/bin/ircd.U3.2
cd ~/bin
chmod 700 ircd.U3.2
rm ircd
ln -s ircd.U3.2 ircd
I changed my Makefile to do the latter thing when I type 'make install'
Then run the server by typing 'ircd'. Don't do this on the
...ircd/irc2.8.19.U3.2/ircd/ directory, because when in your PATH the
'.' comes before your '~/bin' you start up THAT exucutable, disallowing
you to recompile later (text file busy).
Compile errors
==============
If anything goes wrong with note, it most likely is because you
1) Didn't define NPATH correctly
2) Didn't add the note.o to the dependencies.. remove note.o and recompile.
[ For a non-undernet version: irc2.8.19.tar.gz is bugged, get the -note.patch
from ftp.undernet.org. ]
If you get problems while linking saying it has undefined _something
and something is something with 'res', you must add -lresolv to your
IRCDLIBS in the Makefile.
If you get problems with any function beging defines twice are giving
errors like not compatible with previous definition (likely atol() in
note.c), just remove that whole function from the .c file (put #ifdef notdef
around it). You have it already in your system libraries.
Last remarks
============
Add those U: lines!!!
And change your ircd.motd to reflect the new commands/features :)
( /MOTD uxb* -- Nice motd RedRum! :)
-------------------------------------------------------------------
Run
--
-------------------------------------------------------------------------------
| carlo@sg.tn.tudelft.nl | Run @ IRC |
| | Admin of Delft.NL.EU.undernet.org |
| * Don't expect anything of live, | and Ircserver.et.tudelft.nl |
| or you'll miss all the rest of it.| |
-------------------------------------------------------------------------------
+167
View File
@@ -0,0 +1,167 @@
Numeric 005 Documentation (c) 2002-2005 codemastr (Dominick Meglio) [codemastr@unrealircd.com]
Numeric 005 allows the server to inform the client of any protocol specific features in the
IRCd. The numeric is sent at connection time immediately after numeric 004. Additionally
the numeric is sent when a /version request is made by a local user, for remote users
numeric 105 is used but contains the same information.
Due to the limit imposed by RFC1459 on both the buffer size (512) and the amount of
parameters that can be sent in a single command (15) a total of 13 parameters may be
specified in each 005. Because of this, a client must be able to accept multiple 005s
consecutively. The format for the 005 message is as follows:
":" <servername> "005" SPACE <nickname> SPACE <token[=value]> SPACE ... ":are supported
by this server"
Currently UnrealIRCd supports several tokens that are included in numeric 005. A list of
all tokens, their respective value and a brief description are listed below.
Unreal attempts to follow the proposed ISupport standard as much as possible. Unreal only
ignores the standard in one regard, the TARGMAX token. This token is believed to be
impractical and technically impossible to correctly implement due to existing limitations
in the standard. Therefore, this token is not currently supported.
Unreal does additionally provide a few tokens which are not specified in the standard, these
include: HCN, AWAYLEN, WATCH, SILENCE, EXTBAN, ELIST, and CMDS. Unreal also maintains a few
legacy tokens such as MAXCHANNELS and WALLCHOPS to ensure compatibility until the ISupport
standard is more widely accepted by clients.
Token Value Default Value Description
------------------------------------------------------------------------------------------------
MAP none none Informs the client that the /map
command is present. [Obsolete]
KNOCK none none Informs the client that the /knock
command is present. [Obsolete]
SAFELIST none none The LIST command is sent in
multiple iterations so that the
client's queue does not get filled
causing the user to be killed.
HCN none none The server supports the HCN
(Hybrid Connect Notice) protocol.
MAXCHANNELS number 10 The maximum number of channels a
user may join. [Deprecated]
MAXBANS number 60 The maximum number of bans that
may be placed for a channel.
[Obsolete]
NICKLEN number 30 Maximum length of a user's
nickname.
TOPICLEN number 307 Maximum length of a channel's
topic.
KICKLEN number 307 Maximum length of a kick reason.
MAXTARGETS number 20 Maximum targets for the PRIVMSG
command.
AWAYLEN number 307 Maximum length of an away message.
WALLCHOPS none none Indicates that you may use
NOTICE/PRIVMSG to send to +ohv by
using PRIVMSG/NOTICE [@|%|+]#channel.
[Deprecated]
WATCH number 128 Indicates the presence of the
WATCH command and specifies the
maximum number of watch entries.
SILENCE number 15 Indicates the maximum number of
entries on the silence list.
MODES number 13 Indicates the number of channel
modes with parameters that may be
sent at one time.
CHANTYPES chars # Indicates the prefixes available
for channels.
PREFIX (modes)prefixes (qaohv)~&@%+ Indicates the modes on a channel
that corespond to the given
nickname prefixes.
CHANMODES A,B,C,D be,kfL,lj, Specifies how each channel mode is
psmntirRcOAQKVHGCuzNSMT set/unset. The A section specifies
modes that add a nick/mask to a
list. The B section specifies
modes that require a parameter
to be both set and unset. The C
section specifies modes that
only require a parameter to be
set, and the D section
specifies modes that require no
parameters.
NETWORK string no default value Specifies the name of the
network that the server is
connected to.
CASEMAPPING string ascii Specifies what definition the
server uses when determining if
characters are upper/lowercase
of eachother.
EXTBAN prefix,types ~,cqnr Specifies what extbans are
supported by the server. The prefix
defines which character indicates
an extban and the types defines
which extbans the server supports.
ELIST flags MNUCT Specifies the set of extended LIST
options supported. The M flag
indicates mask based searching,
the N flag indicates negative
mask based searching. The U flag
means support for user count
searching. The C flag allows channel
creation time searching, and the T
flag allows topic set time
searching.
CMDS commands MAP,KNOCK,DCCALLOW,USERIP Specifies a series of commands that
can be useful for the client to know
exist as they may provide a more
efficient means for the client to
accomplish a specific task. This
token replaces the MAP and KNOCK
tokens.
STATUSMSG flags ~&@%+ Specifies the mode flags that may
prefix a channel name in a PRIVMSG
or NOTICE to limit who receives the
message to only those with a certain
level of access. This token will
replace the WALLCHOPS token.
EXCEPTS none none Indicates that channel ban exceptions
(+e) are supported by the server.
INVEX none none Indicates that channel invite
exceptions (+I) are supported by
the server.
MAXLIST mode:num,... b:60,e:60,I:60 Specifies the maximum number of
entries that may be added to a
particular mode list (type A modes).
This token replaces MAXBANS.
CHANLIMIT pfx:num,... #:10 Specifies the maximum number of
channels with the specified prefix
that a user may join at one time.
This token will replace MAXCHANNELS.
CHANNELLEN number 32 Provides the maximum length of a
channel name that a user can create.
NAMESX none none Indicates that extended /NAMES info
is available on this server. If the
client sends "PROTOCTL NAMESX" then
the server will, from then on, send
all channel rights in a NAMES reply
instead of only the highest right
(eg: @+Person instead of @Person).
+11
View File
@@ -0,0 +1,11 @@
base64 Documentation (c) 2002 codemastr (Dominick Meglio) [codemastr@unrealircd.com]
(As of Unreal3.2-beta11)
The base64 system used by Unreal is defined as follows:
0 1 2 3 4 5 6 7 8 9 A B C D E F G H I J K L M N O P Q R S T
U V W X Y Z a b c d e f g h i j k l m n o p q r s t u v w x
y z { }
These numbers are translated to and from their decimal equivilents of 0-64 in order to
provide a shorter way of expressing a number.
+141
View File
@@ -0,0 +1,141 @@
PROTOCTL Documentation (c) 2002 codemastr (Dominick Meglio) [codemastr@unrealircd.com]
(As of Unreal3.2-beta11)
The PROTOCTL command allows servers to negotiate protocol specific features when a link
occurs. The PROTOCTL command is sent during a link before the SERVER and PASS commands. The
command contains tokens that list what protocols the server supports.
PROTOCTL SPACE <token> SPACE ...
UnrealIRCd supports several tokens that add additional protocol support to the server. A
list of all supported tokens and their function listed below.
Token Description
------------------------------------------------------------------------------------------------
NOQUIT Informs the server it need not send out a QUIT for each user on the server
when an SQUIT occurs. Instead an SQUIT is sent out for each server that has
been disconnected from the network and the server can then assume all users
that were on those servers have left as well.
TOKEN Informs the server that it may send "tokenized commands", that is a shortened
name for the commands. This allows the server to save bandwidth by sending
less information to other servers. See doc/technical/token.txt for a list of
all commands and their respective token.
NICKv2 Notifies the server that it supports the extended NICK command (version 2),
this command allows the server to specify more information in the NICK
command rather than having to send out a NICK, MODE, and CHGHOST
command. This token only affects a NICK command introducing a client, not one
in which a client is changing his/her nickname. The format for a NICKv2 NICK
command is:
:<sender> NICK <nickname> <hops> <TS> <username> <host> <server>
<servicestamp> <umodes> <vhost> :<info>
If the user has no modes set the umodes parameter is a +, if the user has no
vhost set the vhost parameter is an *.
SJOIN SJOIN is an obsolete token that is only supported for backwards
compatibility. It should not be used.
SJOIN2 SJOIN2 is an obsolete token that is only supported for backwards
compatibility. It should not be used.
UMODE2 Informs the server that support for the UMODE2 command exists. The UMODE2
command is a shortened form of the MODE command but only applys to
usermodes. In a normal MODE command, when applied to usermodes, the nickname
is specified two times. Both as the sender prefix and as the first parameter,
UMODE2 solves this problem in order to save bandwidth, the format for UMODE2
is as follows:
:<sender> UMODE2 <modes>
VL Notifies the server that Vline information is included in the info field of
the SERVER command. Vline information consists of the protocol number of the
server and compiletime options supported. This allows denial of a server
based on version and/or features supported. The VL information is passed only
during connection, it is not filtered to other servers on the network, only
the uplink. The syntax for a VL supporting SERVER command is:
SERVER <servername> <hops> :U<protocol>-<versionflags> <info>
If an * appears for either protocol and/or versionflags no Vline checking is
done, this is often used by services programs where support for all versions
is desired. See doc/technical/vl.txt for a list of version flags and protocol
numbers.
SJ3 Notifies the server that the SJOIN command with SJ3 syntax is
supported. SJOIN is used at link time to inform servers about the channels on
the server. It is a combination of the JOIN commands, and MODE commands
associated with distribution of channel information. The syntax for the SJOIN
command with SJ3 syntax is:
:<sender> SJOIN <ts> <chname> [<modes>] [<mode para> ...] :<[[*~@%+]member] ...
[&"ban/except] ...>
The ts parameter is the time at which the channel, chname, was created. The
modes parameter is only included if modes are set, if not modes and mode para
are excluded. If modes exists and modes requiring parameters (+klLf) are set,
one mode para parameter is included for each value. The last parameter
specifies a list of channel members and the channel ban and except list. The
members are listed with the prefixes they have. * = +q, ~ = +a, @ = +o, % =
+h, + = +v. If no prefix is specified for the member then the user is a
normal user. The & prefix is used to denote a +b, and the " prefix denotes a
+e. It is important that if a & or " is encountered that you do not continue
to check that entry for other prefixes as a ban/except may contain *~@
characters which will intefere with prefixes.
When synching, if ts lower than the local value, the information supplied by
the remote server replaces the local (ie remove local +ohv that are not
recorded on the remote server). The opposite is true when the ts is
higher. Bans/excepts do not apply to the previous rule. If the ts is the
same, information is merged therefore the modes from both servers are added
together. If +l is set and both servers have different values, the highest is
choosen, for +f the highest of each param, N:M is chosen, and if one server
has * set, then it is included. For +k and +L the "highest" in a string
comparison is used.
NS When specified informs the server that numeric server names are
supported. Numeric server names are a base64 number that is associated with
each server. This number is used as a shorthand name for the server. It is
used in the server parameter of the NICK command and can also be used in the
prefix for a message. In the event that the prefix is an NS, rather than
using :<sender>, the format is @<ns> the ns should be translated into the
server name so that the message can be processed. The format for a SERVER
message (at sync time) that supports NS is:
SERVER <servername> <hops> :U<protocol>-<versionflags>-<numeric> <info>
The VL protocol must also be supported. The numeric is passed to all servers
on the network through the SERVER command using the syntax:
:<sender> SERVER <servername> <hops> <numeric> :<info>
Note: anywhere a :<sender> is expected an @<ns> may be received if the source
is a server. See doc/technical/base64.txt for information on the base64
system used.
SJB64 This token allows timestamps to be specified in base64 notation to conserve
bandwidth. When SJB64 is supported, anywhere a timestamp can appear may be in
base64 notation. A base64 timestamp is preceeded by a ! to identify that it
is an sjb64 rather than a regular timestamp, if this is the case the
characters following the ! represent the timestamp in base64. See
doc/technical/base64.txt for information on the base64 system used.
ZIP If both servers have this set then the link will be (zlib) compressed after
the SERVER message. If one of the servers does not have ZIP in his PROTOCTL
message then the link stays uncompressed.
TKLEXT This allows 10 instead of 8 parameters in TKL's for spamfilter, see s_kline.c
function m_tkl for more info on this (added in 3.2RC2).
NICKIP This token indicates that a (standard) base64 encoded IP address is included
in the NICK command. The IP is in binary network byte order formated and
encoded using the standard base64 algorithm. '*' is used if no IP is available.
NICKCHARS This specifies a list of language characters that are allowed in nicks.
USMARC codes are used, with a suffix if needed. See src/charsys.c for the full
list (ctrl+f, static LangList) of possible languages (2nd column).
The items in the list sent as NICKCHARS=.. must always be sorted.
If a server sends NICKCHARS= and if the remote parameters do not match the
charsets in use locally, then the server link is rejected.
+465
View File
@@ -0,0 +1,465 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<!-- $Id$ -->
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"/>
<title>Unreal 3.2 Protocol Documentation</title>
</head>
<body>
<h1 style="text-align: center;">Unreal 3.2 Protocol Documentation</h1>
<h3 style="text-align: center;">Last update: 29 November 2006</h3>
<h1>Table of Contents</h1>
<p><a href="#S1">1 Introduction</a></p>
<p><a href="#S2">2 Server Negotiation</a></p>
<blockquote><p><a href="#S2_1">2.1 PASS - Connection Password</a></p></blockquote>
<blockquote><p><a href="#S2_2">2.2 PROTOCTL - Server Protocol Negotiation</a></p></blockquote>
<blockquote><p><a href="#S2_3">2.3 SERVER - Server Negotiation</a></p></blockquote>
<blockquote><p><a href="#S2_4">2.4 EOS - End Of Synch</a></p></blockquote>
<blockquote><p><a href="#S2_5">2.5 NETINFO - Network Information</a></p></blockquote>
<p><a href="#S3">3 User Operations</a></p>
<blockquote><p><a href="#S3_1">3.1 NICK - User Introduction and Nick Change</a></p></blockquote>
<blockquote><blockquote><p><a href="#S3_1_1">3.1.1 Nick Collisions</a></p></blockquote></blockquote>
<blockquote><p><a href="#S3_2">3.2 MODE, UMODE2 - User Mode Change</a></p></blockquote>
<blockquote><p><a href="#S3_3">3.3 QUIT - User Disconnect</a></p></blockquote>
<blockquote><p><a href="#S3_4">3.4 KILL - Force Disconnect</a></p></blockquote>
<blockquote><p><a href="#S3_5">3.5 SETHOST/CHGHOST - Change virtual host</a></p></blockquote>
<blockquote><p><a href="#S3_6">3.6 SETIDENT/CHGIDENT - Change a user's username</a></p></blockquote>
<blockquote><p><a href="#S3_7">3.7 SETNAME/CHGNAME - Change a user's realname</a></p></blockquote>
<blockquote><p><a href="#S3_8">3.8 WHOIS - User Information</a></p></blockquote>
<p><a href="#S1">4 Server Operations</a></p>
<blockquote><p><a href="#S4_1">4.1 SERVER - Server Introduction</a></p></blockquote>
<blockquote><p><a href="#S4_2">4.2 SQUIT - Server Removal</a></p></blockquote>
<blockquote><p><a href="#S4_3">4.3 SDESC - Server Description</a></p></blockquote>
<blockquote><p><a href="#S4_4">4.4 PING - Live Connection Query</a></p></blockquote>
<blockquote><p><a href="#S4_5">4.5 PONG - Live Connection Reply</a></p></blockquote>
<blockquote><p><a href="#S4_6">4.6 STATS - Server Stats</a></p></blockquote>
<p><a href="#S5">5 Channel Operations</a></p>
<blockquote><p><a href="#S5_1">5.1 SJOIN - Channel Burst</a></p></blockquote>
<blockquote><p><a href="#S5_2">5.2 JOIN - Channel Join</a></p></blockquote>
<blockquote><p><a href="#S5_3">5.3 PART - Channel Part</a></p></blockquote>
<blockquote><p><a href="#S5_4">5.4 KICK - Channel Kick</a></p></blockquote>
<blockquote><p><a href="#S5_5">5.5 MODE - Channel Mode</a></p></blockquote>
<blockquote><p><a href="#S5_6">5.6 INVITE - Invite a user to a channel</a></p></blockquote>
<blockquote><p><a href="#S5_7">5.7 SAJOIN - Channel Force Join</a></p></blockquote>
<blockquote><p><a href="#S5_8">5.8 SAPART - Channel Force Part</a></p></blockquote>
<blockquote><p><a href="#S5_9">5.9 SAMODE - Channel Force Mode</a></p></blockquote>
<blockquote><p><a href="#S5_10">5.10 TOPIC - Chanel Topic</a></p></blockquote>
<p><a href="#S6">6 Services Commands</a></p>
<blockquote><p><a href="#S6_1">6.1 SVSKILL - Force Disconnect by Service</a></p></blockquote>
<blockquote><p><a href="#S6_2">6.2 SVSMODE, SVS2MODE - Force User Mode Change</a></p></blockquote>
<blockquote><p><a href="#S6_3">6.3 SVSSNO, SVS2SNO - Forced SNomask Change</a></p></blockquote>
<blockquote><p><a href="#S6_4">6.4 SVSNICK - Forced Nick Change</a></p></blockquote>
<blockquote><p><a href="#S6_5">6.5 SVSJOIN - Forced Join</a></p></blockquote>
<blockquote><p><a href="#S6_6">6.6 SVSPART - Forced Part</a></p></blockquote>
<blockquote><p><a href="#S6_7">6.7 SVSO - Oper Permissions</a></p></blockquote>
<blockquote><p><a href="#S6_8">6.8 SVSNOOP - Oper Lockdown</a></p></blockquote>
<blockquote><p><a href="#S6_9">6.9 SVSNLINE - RealName Ban</a></p></blockquote>
<blockquote><p><a href="#S6_10">6.10 SVSFLINE - File Ban</a></p></blockquote>
<p><a href="#S7">7 Messaging</a></p>
<blockquote><p><a href="#S7_1">7.1 PRIVMSG, NOTICE - Simple Message Transmission</a></p></blockquote>
<blockquote><p><a href="#S7_2">7.2 SENDUMODE, SMO - Usermode-based Delivery</a></p></blockquote>
<blockquote><p><a href="#S7_3">7.3 SENDSNO - SNomask-based Delivery</a></p></blockquote>
<blockquote><p><a href="#S7_4">7.4 CHATOPS - IRCop Chat</a></p></blockquote>
<blockquote><p><a href="#S7_5">7.5 WALLOPS - Wallop Chat</a></p></blockquote>
<blockquote><p><a href="#S7_6">7.6 GLOBOPS - FailOp Chat</a></p></blockquote>
<blockquote><p><a href="#S7_7">7.7 ADCHAT - Admin Chat</a></p></blockquote>
<blockquote><p><a href="#S7_8">7.8 NACHAT - NetAdmin Chat</a></p></blockquote>
<p><a href="#S8">8 Ban Control</a></p>
<blockquote><p><a href="#S8_1">8.1 TKL - Master Ban Control</a></p></blockquote>
<blockquote><blockquote><p><a href="#S8_1_1">8.1.1 GLINE - Network-wide user@host ban</a></p></blockquote></blockquote>
<blockquote><blockquote><p><a href="#S8_1_2">8.1.2 GZLINE - Network-wide IP ban</a></p></blockquote></blockquote>
<blockquote><blockquote><p><a href="#S8_1_3">8.1.3 SQLINE, UNSQLINE - Network-wide Nickname ban</a></p></blockquote></blockquote>
<blockquote><blockquote><p><a href="#S8_1_4">8.1.4 SPAMFILTER - Message Spam Filtration System</a></p></blockquote></blockquote>
<p><a href="#S9">9 Base64 Tables</a></p>
<blockquote><p><a href="#S9_1">9.1 Table for SJB64 (NICK and SJOIN).</a></p></blockquote>
<blockquote><p><a href="#S9_2">9.2 Table for NICKIP.</a></p></blockquote>
<hr/>
<h1><a name="S1"></a>1 Introduction</h1>
<p>This document describes the UnrealIRCd server-to-server protocol as of protocol 2307 (Unreal 3.2.4).</p>
<h2>A word about clocks.</h2>
<p>Unreal is very time-dependant. Users and channels, for example, are timestamped, and if server clocks are not synchronized properly, things can go very wrong very fast. See <a href="http://vulnscan.org/UnrealIrcd/faq/#67">http://vulnscan.org/UnrealIrcd/faq/#67</a> for more information on this. Note that there is a slight difference between server time and what is actually reported by the UNIX date command or by the C time() function. Unreal can apply an offset to the real time to create the server time, allowing servers to be virtually synchronized when synchronizing the real clocks is not possible (such as on shell servers).
I should make it quite clear that GMT time is used for everything. To be specific, timestamps in unreal are 32-bit integer values (actually, however many bits the time_t type is, which is 32 on 32-bit systems such as x86). This integer value is the number of seconds that have elapsed since Midnight January 1, 1970 GMT (can be referred to as Epoch time in the UNIX world). This means that timezones are no problem, nor is daylight savings time (or whatever your country of choice calls it).</p>
<hr/>
<h1><a name="S2"></a>2 Server Negotiation</h1>
<p>The first step to establish a server-to-server communication is to negotiate the connection as a server. Negotiation is done using standard IRC commands - no PROTOCTL options are in force until the link is established. The first step is to open a TCP/IP connection to the target server. The target port must be one described by a listen {} block in the remote server's configuration, and that listen block must not have the clientsonly option. After the connection is open, you will be treated as any other connection and be greeted with the "Looking up your hostname..." and "Checking identd..." notices as you would for a client. As these are NOTICE messages and your session as a server isn't established, they should simply be ignored. Use the commands below to introduce a server connection.</p>
<h2><a name="S2_1"></a>2.1 PASS - Connection Password</h2>
<p><b>Syntax:</b> <tt>PASS :<i>link password</i></tt></p>
<p>The PASS command is used to transmit the password required for a server link. It must match the password specified in the remote server's link::password-receive (which can be crypted), otherwise the link will be rejected. This should be the first message sent.</p>
<h2><a name="S2_2"></a>2.2 PROTOCTL - Server Protocol Negotiation</h2>
<p><b>Syntax:</b> <tt>PROTOCTL <i>protocol options</i></tt></p>
<p>The PROTOCTL command sets several protocol options. The tokens supported are listed below.</p>
<ul>
<li>NOQUIT : When a netsplit occurs, only send a SQUIT message for each server lost. This server will assume that clients on these servers were also lost and will send the appropriate QUIT messages to local clients and to any non-NOQUIT servers.</li>
<li>TOKEN : Use tokenized commands. Tokens are case-sensitive, shortened versions of command names. Tokens will be usually one or two characters.</li>
<li>NICKv2 : Use extended NICK message for introducing users. See the NICK command for information about this.</li>
<li>VHP : When introducing a user, send his cloaked host as if it were a vhost. Usually used for services to avoid having duplicate code.</li>
<li>SJOIN : Supports SJOIN version 1 which is no longer in use. Use with SJ3.</li>
<li>SJOIN2 : Supports SJOIN version 2 which is no longer in use. Use with SJ3.</li>
<li>UMODE2 : Supports the UMODE2 command, which is a shortened version of MODE for usermode changes.</li>
<li>VL : Supports V:Line information. Extends the SERVER message to include version information used in deny version{} blocks. Note that this is assumed - unreal will always send its own version information.</li>
<li>SJ3 : Supports SJOIN version 3.</li>
<li>NS : Supports server numerics which provides a shorthand for server names. In any circumstance where a :server.name is permitted (the server is the message's real source), @servernumeric may be used instead. In addition, the server.name parameter in the NICK message may be simply the server's numeric. Requires VL support.</li>
<li>SJB64 : Timestamps in NICK and SJOIN are expressed in base64 rather than base10.</li>
<li>TKLEXT : Supports exntended TKL messages for spamfilter support.</li>
<li>NICKIP : Adds an IP parameter to the NICK message, which is the base64 encoding of the user's ip address (in network byte order). Requires NICKv2.</li>
<li>NICKCHARS : Indicates the set of enabled nickchar options (see the regular documention for info about this).</li>
<li>CHANMODES : (Not required to be sent) This is the same as the CHANMODES value in the 005 for client connections. Useful for autodetecting things like what modes are valid for ChanServ MLOCK, for example.</li>
<li>CLK : Supports an extra field in NICK for sending the cloaked host (not vhost).</li>
</ul>
<p>The syntax examples here follow the conventions for TOKEN and also NS in cases of server-only messages.</p>
<h2><a name="S2_3"></a>2.3 SERVER - Server Negotiation</h2>
<p><b>Note:</b> This message is also used for introducing additional servers, the format of this message in those cases is described later.</p>
<p><b>Syntax (normal):</b> <tt>SERVER <i>server.name</i> 1 :<i>server description</i></tt></p>
<p><b>Syntax (with VL):</b> <tt>SERVER <i>server.name</i> 1 :U<i>protocolversion</i>-<i>protocolflags</i> <i>server description</i></tt></p>
<p><b>Syntax (with VL and NS):</b> <tt>SERVER <i>server.name</i> 1 :U<i>protocolversion</i>-<i>protocolflags</i>-<i>servernumeric</i> <i>server description</i></tt></p>
<p>The literal 1 in the parameter list is the hopcount parameter. Since you are a direct link, your own hopcount will be 1.</p>
<p>The server.name is the same as that in the remote server's link:: block. When received from unreal servers, this will be the value of that server's me::name. The protocol version is the numeric protocol version (2306 for example), and the protocol flags are the server's compilation flags (described below). These two fields are checked against the deny version {} blocks in the remote server's configuration. A value of 0 for either field prevents deny version{} checking for that field. The server description can be anything. When received from unreal servers, it'll be the value of me::description.</p>
<p>The following version numbers have been used previously:</p>
<ul>
<li>2309 - Unreal 3.2.6</li>
<li>2308 - Unreal 3.2.5</li>
<li>2307 - Unreal 3.2.4</li>
<li>2306 - Unreal 3.2.3</li>
<li>2305 - Unreal 3.2.2</li>
<li>2304 - Unreal 3.2.1</li>
<li>2303 - Unreal 3.2beta* through 3.2 Release</li>
<li>2302 - Unreal 3.1.1 through 3.1.4</li>
<li>2301 - Unreal 3.1 Release</li>
<li>2300 - Unreal 3.0 Release</li>
</ul>
<p>The compile flags as specified in protocol flags are:</p>
<ul>
<li>c : Server is chrooted (#define CHROOTDIR).</li>
<li>C : Server has command line config (-f option) enabled (#define CMDLINE_CONFIG).</li>
<li>D : Server is in debugmode (#define DEBUGMODE).</li>
<li>F : Using filedescriptor lists.</li>
<li>h : Server is compiled with hub support (#define HUB or answer "Hub" to relevant ./Config prompt).</li>
<li>i : Server shows invisible users in /TRACE.</li>
<li>n : NOSPOOF (pingcookies) is enabled (#define NOSPOOF or answer "Yes" to relevant ./Config prompt).</li>
<li>V : Server is using valloc().</li>
<li>W : Windows IRCd.</li>
<li>Y : Syslog logging enabled.</li>
<li>6 : Server has IPv6 support (#define INET6 or answer "yes" to relevant ./Config prompt).</li>
<li>X : Server has badword stripping (user and channel modes +G) (#define STRIPBADWORDS).</li>
<li>P : Server is using poll().</li>
<li>e : Server has SSL Support (#define USE_SSL or answer "yes" (and have ssl libraries installed) to relevant ./Config prompt).</li>
<li>O : Server has OperOverride enabled (#undef NO_OPEROVERRIDE or answer "no" to relevant ./Config prompt).</li>
<li>o : Server has disabled Oper verify (#undef OPEROVERRIDE_VERIFY or answer "no" to relevant ./Config prompt).</li>
<li>Z : Server has ziplink support (#define ZIP_LINKS or answer "yes" to relevant ./Config prompt AND have the zlib dev libraries).</li>
<li>E : Server has extended channel mode support.</li>
<li>3 : 3rd party modules are loaded or some system libraries are wonky.</li>
<li>m : Private message handling is 'tainted' (one or modules registered a USERMSG hook).</li>
<li>M : Channel message handling is 'tainted' (one or modules registered a CHANMSG hook).</li>
<li>Additional Version flags can be added by 3rd-party modules.</li>
</ul>
<h2><a name="S2_4"></a>2.4 EOS - End Of Synch (TOKEN: ES)</h2>
<p><b>Syntax:</b> ES</p>
<p>Marks the end of the synching process. This is really optional, but it might be a good idea to send it anyway when you really are done synching. Once you send this, unreal will announce &quot;Client connecting&quot; or &quot;Client exiting&quot; notices (to those with snomask +F) for users (unless your server is U:Lined), and joins will be counted toward channel flood controls (chanmode +f).</p>
<p>Sending EOS only marks your server as synched, but does not do so for servers behind you. EOS would need to be sent on those servers' behalf as well.</p>
<h2><a name="S2_5"></a>2.5 NETINFO - Network Information (TOKEN: AO)</h2>
<p><b>Syntax:</b> AO <i>maxglobal</i> <i>currenttime</i> <i>protocolversion</i> <i>cloakhash</i> 0 0 0 :<i>networkname</i></p>
<p>This tells the other server your current network configuration. The max global is the highest number of concurrent users network-wide that this server has seen. The current time is a timestamp value. Protocolversion is the same as that in the SERVER command. Cloakhash is a hash representing the configured cloak keys. It may be a * if you are implementing services. The network name is that specified in set::network-name. The cloak-prefix is currently not sent here (and thus unreal won't generate warning for mismatching cloak prefixes, but they should be the same anyway).</p>
<p>It is NETINFO, not EOS, that triggers the &quot;Link bla bla bla is now synched&quot; notices, but NETINFO does not imply synching is actually complete (see EOS).</p>
<hr/>
<h1><a name="S3"></a>3 User Operations</h1>
<p>One important function of servers is it must notify all other servers about all of the users behind it. These commands represent the operations that can result in the change of a user's global state.</p>
<h2><a name="S3_1"></a>3.1 NICK - User Introduction and Nick Change (TOKEN: &amp;)</h2>
<p><b>Syntax (nick change):</b> <tt>:<i>oldnick</i> &amp; <i>newnick</i> :<i>timestamp</i></tt></p>
<p>This format of the NICK message indicates an existing user is changing his or her nickname. If a collision occurs, see the section on Nick Collisions below. The timestamp is the new nickname's timestamp.</p>
<p><b>Syntax (normal):</b> <tt>&amp; <i>nick</i> <i>hopcount</i> <i>timestamp</i> <i>username</i> <i>hostname</i> <i>server</i> <i>servicestamp</i> :<i>realname</i></tt></p>
<p><b>Syntax (NICKv2):</b> <tt>&amp; <i>nick</i> <i>hopcount</i> <i>timestamp</i> <i>username</i> <i>hostname</i> <i>server</i> <i>servicestamp</i> <i>+usermodes</i> <i>virtualhost</i> :<i>realname</i></tt></p>
<p><b>Syntax (NICKv2+CLK):</b> <tt>&amp; <i>nick</i> <i>hopcount</i> <i>timestamp</i> <i>username</i> <i>hostname</i> <i>server</i> <i>servicestamp</i> <i>+usermodes</i> <i>virtualhost</i> <i>cloakhost</i> :<i>realname</i></tt>
<p><b>Syntax (NICKv2+NICKIP):</b> <tt>&amp; <i>nick</i> <i>hopcount</i> <i>timestamp</i> <i>username</i> <i>hostname</i> <i>server</i> <i>servicestamp</i> <i>+usermodes</i> <i>virtualhost</i> <i>nickipaddr</i> :<i>realname</i></tt></p>
<p><b>Syntax (NICKv2+NICKIP+CLK):</b> <tt>&amp; <i>nick</i> <i>hopcount</i> <i>timestamp</i> <i>username</i> <i>hostname</i> <i>server</i> <i>servicestamp</i> <i>+usermodes</i> <i>virtualhost</i> <i>cloakhost</i> <i>nickipaddr</i> :<i>realname</i></tt>
<p><b>Note:</b> Because each server normally does its own cloak generation, Unreal does not expect to receive NICK messages with the CLK info, so do not send it. It will send this info to a server it has received a PROTOCTL CLK from however.</p>
<p>This format of the NICK message introduces a new user to the network. If PROTOCTL VHP is enabled, the user's cloaked host is put in the virtualhost field, otherwise it'll be * unless the user is +t. With the addition of CLK, VHP is no longer necessary for determining the cloak host.</p>
<h3><a name="S3_1_1"></a>3.1.1 Nick Collisions</h3>
<p>A nick collision occurs when a server receives a NICK message (or &amp; token) introducing a user that the server already sees on the network. When a collision occurs, one or both of the colliding clients must be disconnected. The timestamp is examined to determine which client loses. The client with the earlier timestamp remains. If both clients have equal timestamps, both are removed. Currently, Unreal handles NICK collisions both passively and agressively:</p>
<ul>
<li><b>Aggressive Handling:</b> The server actively sends a KILL message back across the link to terminate that end's client.</li>
<li><b>Passive Handling:</b> Upon receipt of a NICK message that should "win", the server simply silently exits it's own client.</li>
</ul>
<h2><a name="S3_2"></a>3.2 MODE, UMODE2 - User Mode Change (TOKEN: G or |)</h2>
<p><b>Syntax (MODE):</b> <tt>:<i>user</i> G <i>user</i> <i>modechange</i></tt></p>
<p><b>Syntax (UMODE2):</b> <tt>:<i>user</i> | <i>modechange</i></tt></p>
<p>This indicates a usermode change. The modechange can consist of zero or more strings of characters, each prefixed with either a + or -; the only delimiter between them being said + or -. If no + or - is at the beginning of the mode string, a + should be implied.</p>
<p>Some user modes are never sent between servers. Specifically, usermode +s and +O are not sent between servers. Modules can define additional usermodes that also might not be sent between servers. The UMODE2 saves bandwidth by not including the redundant target field for usermode changes, so use it when possible.</p>
<h2><a name="S3_3"></a>3.3 QUIT - User Disconnect (TOKEN: ,)</h2>
<p><b>Syntax:</b> <tt>:<i>user</i> , :<i>reason</i></tt></p>
<p>This command indicates that a user has disconnected. The reason field is filled in with the reason the user disconnected, which will be any of: quit message provided by the user in a /quit command, kill message for local operator kills, "Client exited" if the user does a brutal quit (clean (by TCP's definition) disconnect without sending a QUIT message), or a socket error message if present.</p>
<p>The QUIT message must NOT be prefixed when passing on to other servers. Only local user quit messages are affected by set::prefix-quit.</p>
<h2><a name="S3_4"></a>3.4 KILL - Force Disconnect (TOKEN: .)</h2>
<p><b>Syntax:</b> <tt>:<i>source</i> . <i>target</i> :<i>killpath</i>!<i>source</i> (<i>reason</i>)</tt></p>
<p>Used to indicate that an operator has used KILL on a user not on the same server. Anything beyond the last ! in the kill path is used as the reason. The source (reason) part is simply a standard used by Unreal. As each server passes on a KILL message, it usually prepends the bottommost part (up to the first .) of it's name followed by a ! character. When unreal receives a KILL from a directly connected irc operator, it will usually add that oper's vhost (or realhost if -x) as the first hop in the kill path, then follow with it's own name as mentioned before if it is passing to another server.</p>
<p>A server can also send KILLs on it's own. This is done in cases involving nickname collisions, fake senders, bad direction, and other cases of protocol errors. Usually, in these cases, the server puts it's own name as the source, and also prefixes with <i>bottompart</i>! like for any other ircop on that server. For example: @3 . someone :irc!irc.example.com (Nick collision)</p>
<h2><a name="S3_5"></a>3.5 SETHOST/CHGHOST - Change virtual host (TOKEN: AA or AL)</h2>
<p><b>Syntax (SETHOST):</b> <tt>:<i>source</i> AA <i>newvhost</i></tt></p>
<p><b>Syntax (CHGHOST):</b> <tt>:<i>source</i> AL <i>target</i> <i>newvhost</i></tt></p>
<p>Indicates the change of a user's virtual host. Currently, servers are expected to assume UMODE2 +xt on the target user in both commands. (In the case of SETHOST, the target is the sender.) Servers using PROTOCTL VHP will receive the cloaked host in a SETHOST message when a user activates his cloaked host. A server can also send CHGHOST (from one of it's opered clients) to change a user's hostname. This is generally used by HostServ implementations. To disable a cloaked host, use CHGHOST to set the user's virtual host equal to his real host, or use SVSMODE -xt, but the latter requires services.</p>
<h2><a name="S3_6"></a>3.6 SETIDENT/CHGIDENT - Change a user's username (TOKEN: AD or AZ)</h2>
<p><b>Syntax (SETIDENT):</b> <tt>:<i>source</i> AD <i>newusername</i></tt></p>
<p><b>Syntax (CHGIDENT):</b> <tt>:<i>source</i> AZ <i>target</i> <i>newusername</i></tt></p>
<p>Indicates the change of a user's username. No usermode change is associated with this. Unreal does not use a distinguished virtual username, so servers should only keep the original username (from the NICK message) if they intend to allow the user to reset the original username. Servers can use CHGIDENT to change a user's username.</p>
<h2><a name="S3_7"></a>3.7 SETNAME/CHGNAME - Change a user's realname (TOKEN: AE or BK)</h2>
<p><b>Syntax (SETNAME):</b> <tt>:<i>source</i> AE :<i>newrealname</i></tt></p>
<p><b>Syntax (CHGNAME):</b> <tt>:<i>source</i> BK <i>target</i> :<i>newrealname</i></tt></p>
<p>Indicates the change of a user's realname. No usermode change is associated with this. Unreal does not use a distinguished virtual realname, so servers should only keep the original realname (from the NICK message) if they intend to allow the user to reset the original realname. Servers can use CHGNAME to change a user's username. Note that servers must NOT check that the sender be an IRCop in SETNAME - normal users are permitted to use SETNAME.</p>
<h2><a name="#S3_8"></a>3.8 WHOIS - User Information (TOKEN: #)</h2>
<p><b>Syntax:</b> <tt>:<i>source</i> # [<i>from-server</i> ]<i>nick</i></tt></p>
<p>Requests the information on a user. This works exactly like the user /whois command - in fact, the source parameter must be a user, or the command will do nothing. <i>from-server</i> is the server to request the information from; if a server recives a WHOIS message without this parameter, it should return its own information on the user, otherwise it should pass the message to the given server. Note that <i>from-server</i> may name a user instead of a server (such as when a user uses /whois nick nick), in which case the the nick should be interpreted as naming the server that user is on. <i>nick</i> may be several users seperated by commas, but may not contain wildcards.</p>
<p>The reply to a WHOIS message uses the same numeric replies as the user command.</p>
<hr/>
<h1><a name="S4"></a>4 Server Operations</h1>
<p>This is different from server negotiation. Negotiation is when you are first connecting. Server introduction is used for introducing additional servers behind an existing server (aka hubbing). Hubbing is limited as specified by the hub, leaf, and leafdepth parameters in the link block and attempted violation of a hub restriction results in termination of the link. If no hub or leaf directive is given your server is a leaf by default, so any introduction of any server behind you would be an automatic drop. U:Lines don't matter here; services must be configured as a hub in the link block. The reason is U:Line is a permission rule, but hub privilege is a network structure rule.</p>
<h2><a name="S4_1"></a>4.1 SERVER - Server Introduction (TOKEN: ')</h2>
<p><b>Note: This command is also used for negotiation. Be warned that the token for this command is NOT VALID at that time! See section 2.3 for the syntax for negotiation.</b></p>
<p><b>Syntax (without PROTOCTL NS):</b> <tt>:<i>source</i> SERVER <i>new.server</i> <i>hopcount</i> :<i>description</i></tt></p>
<p><b>Syntax (with PROTOCTL NS):</b> <tt>@<i>sourcenumeric</i> SERVER <i>new.server</i> <i>hopcount</i> <i>numeric</i> :<i>description</i></tt></p>
<p>The command indicates that the server named new.server is being introduced by the source (the source is the server which new.server is directly linked to). The hopcount will be the number of links the receiving server would have to cross to reach new.server. In other words, new.server introduced itself with a hopcount of 1, and as the SERVER message is passed along, hopcount is incremented.</p>
<p>As an example, a services server faking a SERVER message for JUPE functionality would use a hopcount of 2.</p>
<h2><a name="S4_2"></a>4.2 SQUIT - Server Removal (TOKEN: -)</h2>
<p><b>Syntax:</b> <tt>:<i>source</i> SQUIT <i>server.name</i> <i>:reason</i></tt></p>
<p>From an IRCop or when server.name is not behind the source, this command requests the removal of the specified server.name. The command in this case is treated very much like KILL in the respect that the message is broadcasted to all servers, except server.name and any servers behind it. When the SQUIT reaches server.name's uplink, that server closes the link to server.name (which would then generate it's own SQUIT on behalf of it's uplink for the servers behind it).</p>
<p>A server can also use SQUIT in the same manner as QUIT to note the removal of a server behind it, or that it itself is quitting. In the former case, server.name is behind source, and the message is forward on to all other servers. In the latter case, source and server.name are equal, the receiving server closes the link and forwards the SQUIT message.</p>
<p>Unreal closes a direct link by simply sending an ERROR message and then closing the TCP connection. This typically causes the other end to generate an SQUIT bearing the message "Client exited" or similar, however, the ERROR will usually cause the server to send a message to all IRCops.</p>
<h2><a name="S4_3"></a>4.3 SDESC - Server Description (TOKEN: AG)</h2>
<p><b>Syntax:</b> <tt>:<i>source</i> AG :<i>newdesc</i></tt></p>
<p>The server to which source is connected to should have it's description updated to newdesc. This does NOT include the VL inforamtion.</p>
<h2><a name="S4_4">4.4 PING - Live Connection Query (TOKEN: 8)</a></h2>
<p><b>Syntax:</b> <tt>8 <i>source</i>[ :<i>destination</i>]</tt></p>
<p>Used to check if a connection is still live if it has been &quot;quiet&quot; for a certain amount of time. Typically, unreal will send PING requests at intervals determined by the class::pingfreq setting. PINGs originating from the direct uplink will use the token, but it seems PINGs originating from a distant server will not.</p>
<p>The response to a PING is sent with the <a href="#S4_5">PONG</a> command.</p>
<p>When receiving a two-parameter PING, the second parameter is the target. If the target isn't you, you can either reply on behalf of that target (using its name instead of yours), or if there is a real connection representing the target, forward the PING to the target.</p>
<h2><a name="S4_5">4.5 PONG - Live Connection Reply (TOKEN: 9)</a></h2>
<p><b>Syntax:</b> <tt>9 <i>source</i>[ :<i>destination</i>]</tt></p>
<p>Used to respond to a <a href="#S4_4">PING</a> query.</p>
<p><b>Responding to a ping:</b> Once a PING is received, you usually have an amount of time to respond equal to your class::pingfreq. The correct response will always have two parameters. If you received one parameter, then the received parameter becomes the second parameter of your response, and the first parameter is your server name. If you received two parameters, the response returns both parameters in reverse order.</p>
<p>For example, the response to <tt>8 uplink.server</tt> is <tt>9 my.name uplink.server</tt>, while the response to <tt>PING distant.server your.server</tt> is <tt>9 your.server distant.server</tt>. Unreal typically includes a : prior to the last parameter. This isn't required if that parameter contains no spaces, but it is especially important to not include the colon when reversing the parameters, or else Unreal mistake it for a single-parameter PONG.
<p>If a two-parameter PONG is received, the second parameter names the target. If the target is not you, and a real connection represents that target, you should forward the PONG message via that connection.</p>
<h2><a name="#S4_6"></a>4.6 STATS - Server Stats (TOKEN: 2)</h2>
<p><b>Syntax:</b> <tt>:<i>source</i> 2 [<i>type</i> [<i>server</i>] [<i>extended-params</i>]]</tt></p>
<p>Requests statistics or configuration information from a server. This command is used to transport cross-server STATS requests from users (eg: /stats o other.server), and should only be sent from a user (not a server). With no parameters, this will cause unreal to simply dump its help output. <i>type</i> is the type of stats to request, <i>server</i> names a server (or a user on that server) to request stats from, and <i>extended-params</i> is used to filter output from STATS G, etc. When received, it is up to the receiver to determine what stats to support and how to reply, but generally numeric replies are used. For the list of unreal's stats types, type /stats in a client for the helptext dump.</p>
<p><b>Note:</b> Stats set as oper-only (see set::oper-only-stats) will be refused from a server. In this case, it will be necessary to send the stats request from a psuedo-oper (such as a services agent, etc) for services/stats/etc.</p>
<hr/>
<h1><a name="S5"></a>5 Channel Operations</h1>
<p>These commands deal with the state of channels across the network. Unreal only supports Network Channels, where the first character is a # character.</p>
<h2><a name="S5_1"></a>5.1 SJOIN - Channel Burst (TOKEN: ~)</h2>
<p><b>Syntax:</b> <tt>@<i>servernumeric</i> ~ <i>timestamp</i> <i>channel</i> +<i>modes</i>[ <i>modeparams</i>] :<i>memberlist</i> <i>&amp;ban</i> <i>"exempt</i> <i>'invex</i></tt></p>
<p>Timestamp is the channel timestamp and can be !b64 as defined by PROTOCTL SJB64. Modes should only include those in the last three mode sets listed in CHANMODES. Modeparams is one parameter for each mode character that requires one. Memberlist is a series of users (all of which must at least be behind the server sending the SJOIN), each user is prefixed with one or more characters indicating their status. Owners (+q) are prefixed with *, admins (+a) ~, ops (+o) @, halfops (+h) %, voices (+v) +. Normal users are not prefixed with anything. Ban, ban exception, and invite exception masks are also included, with bans prefixed with &amp;, ban exceptions prefixed with ", and invite exceptions with '. Note that when a &amp;, " or ' is encountered as the first character, further processing of ~, *, @, %, or + characters must not continue because ban, exempt, and invite masks can contain any of those characters. (Plus it's just not right for a ban mask to be marked as a channel admin...)</p>
<p>If the channel didn't already exist it is created with the information given in the SJOIN. Otherwise the timestamp is used to determine how the SJOIN information is handled. As a given, all members are joined into the channel, regardless. The mode information (modes, modeparams, memberlist prefixes, bans, exempts, and invites) is subject to the timestamp rules:</p>
<ul>
<li>If the channel's current timestamp is equal to the timestamp in SJOIN, then the mode information is merged.</li>
<li>If the channel's current timestamp is less than the SJOIN timestamp, then the mode information is ignored.</li>
<li>If the channel's current timestamp is greater than the SJOIN timestamp, then the channel's existing mode information is cleared (for example, deop, etc all local clients), and the SJOIN mode information is added.</li>
</ul>
<p>When merging modes, conflicting modes (including +p vs +s, differing +l limits or +k keys, etc) are handled as follows:</p>
<ul>
<li><b>Private (+p) vs. Secret (+s):</b> Secret (+s) is preferred. Private (+p) is removed. (Note: there is a <a href="http://bugs.unrealircd.org/view.php?id=2391">bug</a> in Unreal versions prior to 3.2.3 in which a desynch will occur in which one side is +p and the other is +s. Update to Unreal 3.2.4 if you have problems with this.)</li>
<li><b>Strip Color (+S) vs. Block Color (+c):</b> Block (+c) is preferred. Strip (+S) is removed. (Note: Bug for +p vs. +s in prior unreal versions apply here as well.)</li>
<li><b>Channel Limit:</b> Numericly larger limit is preferred (for example, +l 30 versus +l 15 : +l 30 wins).</li>
<li><b>Channel Key:</b> &quot;Larger&quot; key (as defined by strcmp) is preferred (for example, +k moo versus +k meow : +k moo wins).</li>
<li><b>Channel Link:</b> &quot;Larger&quot; link name (as defined by stricmp - not case sensitive) is preferred (for example, +L #moo versus +L #meow : +L #moo wins, but +L #Meow versus +L #meow : values are equal).</li>
<li><b>Flood String:</b> Not really sure on this. I think larger value in each component wins.</li>
<li><b>Join-Throttle:</b> Highest of time period wins, if equal, highest of join amount wins (so +j 3:40 beats +j 5:20 but +j 5:20 beats +j 3:20).</li>
<li>Parameterized modes in third party modules will define their own conflict resolution formula.</li>
</ul>
<h2><a name="S5_2"></a>5.2 JOIN - Channel Join (TOKEN: C)</h2>
<p><b>Syntax:</b> <tt>:<i>source</i> C <i>#channel</i></tt></p>
<p>Indicates a user has joined a channel. Only one channel is sent this way, and the key is not sent even if the user gave one one joining. If the channel parameter is the special "0" case, the server must interpret the message as a PART for all channels the user is on.</p>
<h2><a name="S5_3"></a>5.3 PART - Channel Part (TOKEN: D)</h2>
<p><b>Syntax:</b> <tt>:<i>source</i> D <i>#channel</i>[ :<i>reason</i></tt>]</p>
<p>Indicates a user has left a channel. Only one channel is sent this way. The reason parameter may be left out if no reason was given.</p>
<h2><a name="S5_4"></a>5.4 KICK - Channel Kick (TOKEN: H)</h2>
<p><b>Syntax:</b> <tt>:<i>source</i> H <i>#channel</i> <i>user</i> :<i>reason</i></tt></p>
<p>Orders the forced removal of user from #channel with the given reason. When updating state for this command, it should be the same as if :user PART #channel had been received - the user is removed from #channel's memberlist.</p>
<h2><a name="S5_5"></a>5.5 MODE - Channel Mode (TOKEN: G)</h2>
<p><b>Note:</b> This is the same command as that used for usermode changes.</p>
<p><b>Syntax:</b> <tt>:<i>source</i> G <i>#channel</i> <i>modechange</i> <i>modeparams</i>[ <i>timestamp</i>]</tt></p>
<p>Changes the specified modes on the given channel. If the source is a server and the last parameter is numeric, it is interpreted as timestamp (although it can also be consumed as a parameter for modes. For example: :server.name MODE #channel +l 4 &lt;-- 4 will be a timestamp and the +l parameter). When a mode change is timestamped in this way, the mode is treated as it is with SJOIN: the MODE message is ignored if the timestamp is greater than the channel timestamp. (If the timestamp is equal, the mode is simply added replacing any conflicting modes already in place.)</p>
<p>A services implementation can easily clear all entries in a list mode such as bans with SVSMODE (see below).</p>
<h2><a name="S5_6"></a>5.6 INVITE - Invite a user to a channel (TOKEN: *)</h2>
<p><b>Syntax:</b> <tt>:<i>source</i> * <i>target</i> <i>#channel</i></tt></p>
<p>Sends to target an invitation to join #channel. If the source is a channel operator on #channel, or a U:Lined server, the invitation grants the user the temporary ability to join the channel regardless of any bans or some restricting channel modes (not +O or +A).</p>
<h2><a name="S5_7"></a>5.7 SAJOIN - Channel Force Join (TOKEN: AX)</h2>
<p><b>Syntax:</b> <tt>:<i>source</i> AX <i>targetuser</i> <i>#channel</i></tt></p>
<p>This requests the forced join of targetuser to #channel. This type of forced join overrides bans, and most modes. The server to which targetuser is connected to must actually acknowledge the join for it to occur. Service implementations may ignore this command, as they would only ever receive it if an SAJOIN was targeted at a service client, in which case it should be ignored...</p>
<h2><a name="S5_8"></a>5.8 SAPART - Channel Force Part (TOKEN: AY)</h2>
<p><b>Syntax:</b> <tt>:<i>source</i> AY <i>targetuser</i> <i>#channel</i>[ :<i>reason</i>]</tt></p>
<p>This requests the forced part of targetuser from #channel. This is slightly different from a KICK in that the user's removal is announced with PART. The server to which targetuser is connected to must actually acknowledge the part for it to occur. Service implementations may ignore this command, as they would only ever receive it if an SAPART was targeted at a service client, in which case it should be ignored...</p>
<p>The reason field is optional. If provided the acknowledging PART message should prefix the message with &quot;SAPart:&quot;.</p>
<h2><a name="S5_9"></a>5.9 SAMODE - Channel Force Mode (TOKEN: o)</h2>
<p><b>Syntax:</b> <tt>:<i>source</i> o <i>#channel</i> <i>modechange</i> <i>modeparams</i></tt></p>
<p>This has the same parameters as for MODE. The only difference is that servers probably will never receive this (but is best to document just in case), and that absolutely NO permission checking is done on anything.</p>
<h2><a name="S5_10"></a>5.10 TOPIC - Channel Topic (TOKEN: ) )</h2>
<p><b>Syntax:</b> <tt>:<i>source</i> ) <i>#channel</i> <i>nick</i> <i>timestamp</i> :<i>topic</i></tt></p>
<p>Changes the channel topic information. This format is used when synching, as well as when a topic is changed normally. Nick is the user who changed the topic (depending on compile options, it can be just nick or a full nick!user@host), timestamp is when the change occured, and topic is the new topic text. Normally, only a newer timestamp will actually change the topic, but a U:Lined server can use an older timestamp as well (such as for TOPICLOCK).
<hr/>
<h1><a name="S6"></a>6 Services Commands</h1>
<p>These are commands typically employed by a service implementation, in addition to some of the normal commands. All of the commands listed here require the sender to be correctly U:Lined. This means that the services server name must appear within a ulines {} block in the unrealircd.conf configuration for ALL servers in the network. All servers and clients behind a U:Lined server are themselves U:Lined.</p>
<h2><a name="S6_1"></a>6.1 SVSKILL - Force Disconnect by Service (TOKEN: h)</h2>
<p><b>Syntax:</b> <tt>:<i>source</i> h <i>target</i> :<i>reason</i></tt></p>
<p>This command is similar to KILL but differs in several ways. First of all: there is no mutilation of the reason value. The reason given is the exact reason used to generate QUIT messages sent to users. Second, it is silent; no server notice is generated in response to this command. Third, it can only be used by a U:Lined server or client (such as services).</p>
<p>Because this command can be dangerous in the hands of an abusive person, service implementations should avoid granting humans control over the reason parameter. In cases of commands where a person has control over such parameter, either use a regular KILL instead, or otherwise modify the reason so that operators can be held accountable if necessary.</p>
<h2><a name="S6_2"></a>6.2 SVSMODE, SVS2MODE - Force User Mode Change (TOKEN: n or v)</h2>
<p><b>Syntax (SVSMODE):</b> <tt>:<i>source</i> n <i>target</i> +<i>usermodes</i></tt></p>
<p><b>Syntax (SVS2MODE):</b> <tt>:<i>source</i> v <i>target</i> +<i>usermodes</i></tt></p>
<p>Judging by these commands alone, you'd think they are identical. Both commands force a usermode change to occur. This is typically used by services to set +r on a user who has successfully identified. They differ in that SVS2MODE also sends the mode change to the user, while SVSMODE does not (hidden mode change).</p>
<p>SVSMODE and SVS2MODE also give special treatment to usermode +d. Rather than setting the deaf mode like you might expect, SVS(2)MODE +d allows services to change a user's services stamp (which is given in the NICK message). This could allow services to set the service stamp to an easily identifiable value that could then be used to say "hey, this person identified already". The syntax of this is: +d <i>newservicestamp</i> and can be combined with setting other usermodes as well. The deaf mode <b>can</b> be set by using +d without the service stamp parameter; however, in this case you <b>cannot</b> set the service stamp in the same SVS(2)MODE message.</p>
<p><b>Note:</b> Do <b>NOT</b> use SVSMODE to remove IRCop status from a user. Use the SVSO command for that instead.</p>
<p>Alternatively, target can name a channel. In this case, the mode change parameter can consist of a - character, followed by any or all of: b, e, I, q, a, o, h, or v. These characters cause the corresponding lists to be cleared of all entries. For example: SVSMODE #channel -b removes ALL bans from #channel, and SVSMODE #channel -qaohv turns ALL users on #channel into normal users (removes all owner, admin, op, halfop, and voice status). In this case, the uplink will acknowledge with a MODE listing the bans, etc that were removed.</p>
<p>To completely clear a channel of all modes: MODE #channel -cfijklmnprstzACGMKLNOQRSTVu (plus any added by third-party module) followed by SVSMODE #channel -beIqaohv.</p>
<h2><a name="S6_3"></a>6.3 SVSSNO, SVS2SNO - Forced SNomask Change (TOKEN: BV or BW)</h2>
<p><b>Syntax (SVSSNO):</b> <tt>:<i>source</i> BV <i>target</i> +<i>snomasks</i></tt></p>
<p><b>Syntax (SVS2SNO):</b> <tt>:<i>source</i> BW <i>target</i> +<i>snomask</i></tt></p>
<p>Changes a user's snomasks. The difference between SVSSNO and SVS2SNO is the same as with SVSMODE versus SVS2MODE. If the user is not +s, you must add it via SVSMODE +s. For example:</p>
<pre>:OperServ v someuser +s
:OperServ BW someuser +ks</pre>
<h2><a name="S6_4"></a>6.4 SVSNICK - Forced Nick Change (TOKEN: e)</h2>
<p><b>Syntax:</b> <tt>:<i>source</i> e <i>target</i> <i>newnick</i> :<i>newtimestamp</i></tt></p>
<p>Forces the specified user to change his nick to newnick and also sets the nick timestamp to newtimestamp (so, for example, services could protect identified users from a nick collision by simply setting the nick timestamp to something way less than "now" - though currently this requires actually changing the nick too). SVSNICK requires the server to which the target is connected to acknowledge the nick change. If the user specified by newnick already exists, then target will be disconnected (even if it's something like a case-change).</p>
<h2><a name="S6_5"></a>6.5 SVSJOIN - Forced Join (TOKEN: BX)</h2>
<p><b>Syntax:</b> <tt>:<i>source</i> BX <i>target</i> <i>#channel</i></tt></p>
<p>This is identical to SAJOIN with a few exceptions: 1) It is U:Line-only. 2) No opernotice on use. 3) Bans and restricting modes are respected, a prior INVITE message must be sent to cause bans to be ignored.</p>
<h2><a name="S6_6"></a>6.6 SVSPART - Forced Part (TOKEN: BT)</h2>
<p><b>Syntax:</b> <tt>:<i>source</i> BT <i>target</i> <i>#channel</i> :<i>reason</i></tt></p>
<p>Also identical to SAPART with a few exceptions: no static prefix on the optional part reason, and no global notice, and requires a U:Line. Usage recommendation of SVSPART versus KICK is the same as for SVSKILL versus KILL.</p>
<h2><a name="S6_7"></a>6.7 SVSO - Oper Permissions (TOKEN: BB)</h2>
<p><b>Syntax:</b> <tt>:<i>source</i> BB <i>target</i> <i>flagchanges</i></tt></p>
<p>This allows a service to add or remove IRCop permission flags for a user. Flagchanges is formatted similar to that of MODE with the exception that operflags are used instead of usermodes. If the change string consists only of -, then all oper permissions, usermodes, and snomasks are removed (as if the user had himself typed MODE nick -Oo).</p>
<p>If you are granting IRCop permissions to a user who is not currently an IRCop, you should follow up with an SVSMODE +o or SVSMODE +O as appropriate. For example:</p>
<pre>:OperServ BB somenick +o
:OperServ BW somenick +cefknoqsSv
:OperServ AL somenick local.oper.somethinghere.net
:OperServ v somenick +Ohs </pre>
<h2><a name="S6_8"></a>6.8 SVSNOOP - Oper Lockdown (TOKEN: f)</h2>
<p><b>Syntax:</b> <tt>:<i>source</i> f <i>(op)</i><i>server.name</i></tt></p>
<p>The (op) parameter is either a + or - indicating if NOOP mode should be activated (+) or deactivated (-). When NOOP mode is activated, all IRCops on the server are deopered (including local operators) and the /oper command is disabled. IRCop privileges can still be granted through use of SVSO. On UnrealIRCd, it is not necessary to masskill all IRCops on the nooped server, as they are deopered automatically.</p>
<h2><a name="S6_9"></a>6.9 SVSNLINE - RealName Ban (TOKEN: BR)</h2>
<p><b>Syntax:</b> <tt>:<i>source</i> BR <i>op</i> <i>reason</i> :<i>realname mask</i></tt></p>
<p>Op is either + (add) or - (remove). In the case of +, reason is a space-escaped string (all space chars are encoded as _). If -, reason is ignored.</p>
<h2><a name="S6_10"></a>6.10 SVSFLINE - File Ban (TOKEN: BC)</h2>
<p><b>Syntax (add):</b> <tt>:<i>source</i> BC + <i>filemask</i> :<i>reason</i></tt></p>
<p><b>Syntax (remove):</b> <tt>:<i>source</i> BC - <i>filemask</i></tt></p>
<p><b>Syntax (clear):</b> <tt>:<i>source</i> BC *</tt></p>
<p>Adds or removes a DCCDENY item for the specified filemask on all servers. These DCCDENYs are hard dccdenies - the /dccallow command cannot override it. The last form removes all dccdenies added via SVSFLINE.</p>
<hr/>
<h1><a name="S7"></a>7 Messaging</h1>
<p>What good is Internet Relay <b>CHAT</b> if users cannot <b>CHAT</b>? This section addresses the commands through which arbitrary user messages are sent.</p>
<h2><a name="S7_1"></a>7.1 PRIVMSG, NOTICE - Simple Message Transmission (Token: ! or B)</h2>
<p><b>PRIVMSG Syntax:</b> <tt>:<i>source</i> ! <i>target</i> :<i>message</i></tt></p>
<p><b>NOTICE Syntax:</b> <tt>:<i>source</i> B <i>target</i> :<i>message</i></tt></p>
<p>Sends a messages to the given target. The target either names a single client, or identifies a list of clients in which the message is to be sent to. The available targets include:</p>
<ul>
<li><i>nickname</i>: Names a single user to whom the message is delivered.</li>
<li><i>nickname</i>@<i>servermask</i>: Also names a single user, but the message will only be delivered if the user is connected to a server matching the specified servermask. This is typically used for sending messages to services. The target must not be changed at any point along the path it must travel for delivery, even up to the final receipt of the message by the target. This allows the target to know it has been sent a message in this way.</li>
<li>#<i>channelname</i>: Sends a message to all users on the specified channel (except when channel is a moderated auditorium (+mu), in which case the wierd +mu sending behavior goes off).</li>
<li><i>modeprefix</i>#<i>channelname</i>: Sends a message to all users on the given channel having the given status or higher. For example: + means all voices, halfops, etc.</li>
<li>$<i>servermask</i>: Sends a message to ALL users on all servers matching the specified servermask (known as a server broadcast message). The RFC requirements of having a TLD with no wildcards is not applied to U:Lined clients.</li>
</ul>
<p>Unreal does not support the #hostmask format.</p>
<h2><a name="S7_2"></a>7.2 SENDUMODE, SMO - Usermode-based Delivery (TOKEN: AP or AU)</h2>
<p><b>Syntax:</b> <tt>@<i>servernumeric</i> AU <i>umode</i> :<i>message</i></tt></p>
<p>Sends the specified message to all users with the given mode. Only one usermode may be given. This is a server-only command if you can't tell from the sender prefix :) .</p>
<p>The message will be displayed as coming from the receiving client's own server. It may be appropriate to add a &quot;*** Notice (or other leader here) -- from blah:&quot; if you wish to clarify where the message is from.</p>
<h2><a name="S7_3"></a>7.3 SENDSNO - SNomask-based Delivery (TOKEN: Ss)</h2>
<p><b>Syntax:</b> <tt>@<i>servernumeric</i> Ss <i>snomask</i> :<i>message</i></tt></p>
<p>Sends the specified message to all users with the given snomask. Only one snomask may be given. This is a server-only command if you can't tell from the sender prefix :) .</p>
<p>The message will be displayed as coming from the receiving client's own server. It may be appropriate to add a &quot;*** Notice (or other leader here) -- from blah:&quot; if you wish to clarify where the message is from.</p>
<h2><a name="S7_4"></a>7.4 CHATOPS - IRCop Chat (TOKEN: p)</h2>
<p><b>Syntax:</b> <tt>:<i>source</i> p :<i>message</i></tt></p>
<p>Sends the message to all IRCops on all servers.</p>
<h2><a name="S7_5"></a>7.5 WALLOPS - Wallop Chat (TOKEN: =)</h2>
<p><b>Syntax:</b> <tt>:<i>source</i> = :<i>message</i></tt></p>
<p>Sends the message to all users with usermode +w, whether they are ircops or not.</p>
<h2><a name="S7_6"></a>7.6 GLOBOPS - FailOp Chat (TOKEN: ])</h2>
<p><b>Syntax:</b> <tt>:<i>source</i> ] :<i>message</i></tt></p>
<p>Send the message to all IRCops with usermode +g.</p>
<h2><a name="S7_7"></a>7.7 ADCHAT - Admin Chat (TOKEN: x)</h2>
<p><b>Syntax:</b> <tt>:<i>source</i> x :<i>message</i></tt></p>
<p>Send the message to all Server and Network Admins (usermode +A).</p>
<h2><a name="S7_8"></a>7.8 NACHAT - NetAdmin Chat (TOKEN: AC)</h2>
<p><b>Syntax:</b> <tt>:<i>source</i> AC :<i>message</i></tt></p>
<p>Send the message to all Network Admins (usermode +N).</p>
<hr/>
<h1><a name="S8"></a>8 Ban Control</h1>
<p>Sometimes, you have the misfortune of encountering a user who has no purpose but to serve as an annoyance to your server or network. These commands transmit network-wide ban information amongst each other.</p>
<h2><a name="S8_1"></a>8.1 TKL - Master Ban Control (TOKEN: BD)</h2>
<p>The TKL command seems to have one oddity about it: the real ban source is included in the TKL command rather than in the sender prefix. Most likely this is done for synching reasons (so that the *line ban can be credited to the proper person even if he/she is offline). For this reason, the command syntax is given without any sender prefix at all. It is still permissible to use one, however.</p>
<h3><a name="S8_1_1"></a>8.1.1 GLINE - Network-wide user@host ban</h3>
<p><b>Add Syntax (TKL):</b> <tt>BD + G <i>userpart</i> <i>hostpart</i> <i>source</i> <i>expiretimestamp</i> <i>settimestamp</i> :<i>reason</i></tt></p>
<p><b>Remove Syntax (TKL):</b> <tt>BD - G <i>userpart</i> <i>hostpart</i> <i>source</i></tt></p>
<p>Adds and Removes Network-wide user@host bans, known as G:Lines. The GLINE command itself must not be used. The userpart and hostpart are the user portion and hostname portion of the ban mask. The expiretimestamp is 0 if the G:Line should not expire, otherwise it will expire at the given time. It is an absolute time, not relative, thus it's imperitive to have reasonably synchrnoized clocks or bans may be removed too early or even immediately!</p>
<h3><a name="S8_1_2"></a>8.1.2 GZLINE - Network-wide IP ban</h3>
<p><b>Add Syntax (TKL):</b> <tt>BD + Z * <i>ipmask</i> <i>source</i> <i>expiretimestamp</i> <i>settimestamp</i> :<i>reason</i></tt></p>
<p><b>Remove Syntax (TKL):</b> <tt>BD - Z * <i>ipmask</i> <i>source</i></tt></p>
<p>Adds and Removes Network-wide IP bans, known as Global Z:Lines. The GZLINE command itself must not be used. Ipmask permits CIDR notation as well as wildcard masks.</p>
<h3><a name="S8_1_3"></a>8.1.3 SQLINE, UNSQLINE - Network-wide Nickname ban (TOKEN: c or d)</h3>
<p><b>Add Syntax (TKL):</b> <tt>BD + Q <i>hold</i> <i>nickmask</i> <i>source</i> <i>expiretimestamp</i> <i>settimestamp</i> :<i>reason</i></tt></p>
<p><b>Add Syntax (SQLINE):</b> <tt>:<i>source</i> c <i>nickmask</i> :<i>reason</i></tt></p>
<p><b>Remove Syntax (TKL):</b> <tt>BD - Q <i>hold</i> <i>nickmask</i> <i>source</i></tt></p>
<p><b>Remove Syntax (UNSQLINE):</b> <tt>:<i>source</i> d <i>nickmask</i></tt></p>
<p>In the TKL syntax, the hold parameter is either a * to mark the qline as a nick ban, or an H to mark it as a services hold. A services hold does not trigger qline rejection notice, and is typically used by NickServ to reserve registered nicks until they are released by the owner. The (UN)SQLINE syntax can only be used by a server, but any user can be used as the source for the TKL syntax. Unlike G and GZ lines, Q:Lines do not cause existing matching users to be disconnected or otherwise affected.</p>
<p>The TKL syntax is preferred, since it is more flexible, but (UN)SQLINE is permitted for compatibility.</p>
<h3><a name="S8_1_4"></a>8.1.4 SPAMFILTER - Message Spam Filtration System</h3>
<p>Proper use of spamfilter in TKL commands requires use of PROTOCTL TKLEXT, which increases the number of parameters allowed in TKL.</p>
<p><b>Add Syntax (TKL):</b> <tt>BD + F <i>target(s)</i> <i>action</i> <i>source</i> 0 <i>settimestamp</i> <i>tklduration</i> <i>tklreason</i> :<i>regex</i></tt></p>
<p><b>Remove Syntax (TKL):</b> <tt>BD - F <i>target(s)</i> <i>action</i> <i>source</i> 0 <i>settimestap</i> :<i>regex</i></tt></p>
<p>Adds and Removes network-wide spamfilters. The SPAMFILTER command itself must not be used. See <a href="http://vulnscan.org/UnrealIrcd/unreal32docs.html#feature_spamfilter">http://vulnscan.org/UnrealIrcd/unreal32docs.html#feature_spamfilter</a> for a list of valid targets. For actions, a single character is used to identify the action to be taken:</p>
<ul>
<li>K (kill) - The user is simply disconnected, with the reason given.</li>
<li>S (tempshun) - A temporary shun is placed on the user. This shun is applied only to that user, and disappears if the user reconnects.</li>
<li>s (shun) - A regular shun on the user's IP address is added. This causes all users with the same hostname to be shunned, but they will also stay shunned if they reconnect.</li>
<li>k (kline) - A K:Line is added on the user's IP address.</li>
<li>z (zline) - A Z:Line is added on the user's IP address.</li>
<li>g (gline) - A G:Line is added on the user's IP address.</li>
<li>Z (gzline) - A Global Z:Line is added on the user's IP address.</li>
<li>b (block) - Messages (or users!) matching the filter are simply blocked.</li>
<li>d (dccblock) - The user is prevented from sending files using DCC for the remainder of his session (in other words, until he quits).</li>
<li>v (viruschan) - User is removed from all channels, joined to the viruschan as defined in conf, and cannot message anything but that channel.</li>
<li>w (warn) - No action on the user is taken. Only the Spamfilter notice is sent to opers with snomask +S.</li>
</ul>
<h1><a name="S9">9 Base64 Tables</a></h1>
<p>Unreal uses base64 encoding to allow saving bandwidth by encoding numbers in a more compact format. Unreal uses two different variations of base64, one used for the SJB64 PROTOCTL option (in NICK and SJOIN), and one used for NICKIP.</p>
<h2><a name="S9_1">9.1 Table for SJB64 (NICK and SJOIN).</a></h2>
<p>In NICK and SJOIN, remember that the timestamp will be prefixed with ! to signal a base64 timestamp.</p>
<p>Just like in base10, the least significant &quot;digit&quot; is last.</p>
<pre> 0 0 17 H 34 Y 51 p
1 1 18 I 35 Z 52 q
2 2 19 J 36 a 53 r
3 3 20 K 37 b 54 s
4 4 21 L 38 c 55 t
5 5 22 M 39 d 56 u
6 6 23 N 40 e 57 v
7 7 24 O 41 f 58 w
8 8 25 P 42 g 59 x
9 9 26 Q 43 h 60 y
10 A 27 R 44 i 61 z
11 B 28 S 45 j 62 {
12 C 29 T 46 k 63 }
13 D 30 U 47 l
14 E 31 V 48 m
15 F 32 W 49 n
16 G 33 X 50 o</pre>
<h2><a name="S9_2">9.2 Table for NICKIP.</a></h2>
<p>In this table, the IP is encoded in network byte order. In terms of IPs, this means the first byte of the address really is first. Each &quot;digit&quot; in the base64 encoded IP corresponds to 6 bits of the IP address.</p>
<p>An IPv4 address is 32 bits, so 6 base64 &quot;digits&quot; are needed. Since base64 requires values to come in multiples of 4 &quot;digits&quot;, padding characters (=) need to be added if a value comes up short. In the case of IPv4 addresses, two are needed.</p>
<p>IPv6 addresses are 128-bit. They therefore need 22 base64 &quot;digits&quot; plus 2 pad characters.</p>
<pre> 0 A 17 R 34 i 51 z
1 B 18 S 35 j 52 0
2 C 19 T 36 k 53 1
3 D 20 U 37 l 54 2
4 E 21 V 38 m 55 3
5 F 22 W 39 n 56 4
6 G 23 X 40 o 57 5
7 H 24 Y 41 p 58 6
8 I 25 Z 42 q 59 7
9 J 26 a 43 r 60 8
10 K 27 b 44 s 61 9
11 L 28 c 45 t 62 +
12 M 29 d 46 u 63 /
13 N 30 e 47 v
14 O 31 f 48 w (pad) =
15 P 32 g 49 x
16 Q 33 h 50 y</pre>
</body>
</html>
+109
View File
@@ -0,0 +1,109 @@
Token List (c) 2002-2004 codemastr (Dominick Meglio) [codemastr@unrealircd.com]
Command Token
------------------------------------------------------------------------------------------------
PRIVMSG !
WHOIS #
NICK &
SERVER '
TOPIC )
INVITE *
VERSION +
QUIT ,
SQUIT -
KILL .
INFO /
LINKS 0
STATS 2
HELP 4
ERROR 5
AWAY 6
CONNECT 7
PING 8
PONG 9
PASS <
TIME >
ADMIN @
SETHOST AA
NACHAT AC
SETIDENT AD
SETNAME AE
LAG AF
SDESC AG
KNOCK AI
CREDITS AJ
LICENSE AK
CHGHOST AL
RPING AM
RPONG AN
NETINFO AO
SENDUMODE AP
ADDMOTD AQ
ADDOMOTD AR
SVSMOTD AS
SMO AU
OPERMOTD AV
TSCTL AW
SAJOIN AX
SAPART AY
CHGIDENT AZ
NOTICE B
SWHOIS BA
SVSO BB
SVSFLINE BC
TKL BD
VHOST BE
BOTMOTD BF
HTM BH
DCCDENY BI
UNDCCDENY BJ
CHGNAME BK
SHUN BL
CYCLE BP
MODULE BQ
SVSNLINE BR
SVSPART BT
SVSLUSERS BU
SVSSNO BV
SVS2SNO BW
SVSJOIN BX
SVSSILENCE Bs
SVSWATCH Bw
JOIN C
PART D
LUSERS E
EOS ES
MOTD F
MODE G
KICK H
REHASH O
RESTART P
CLOSE Q
SENDSNO Ss
DNS T
TEMPSHUN Tz
SILENCE U
AKILL V
UNKLINE X
RAKILL Y
GLOBOPS ]
LOCOPS ^
PROTOCTL _
WATCH `
TRACE b
SQLINE c
UNSQLINE d
SVSNICK e
SVSNOOP f
SVSKILL h
SVSMODE n
SAMODE o
CHATOPS p
UNZLINE r
RULES t
MAP u
SVS2MODE v
DALINFO w
ADMINCHAT x
UMODE2 |
SJOIN ~
+36
View File
@@ -0,0 +1,36 @@
VL Information (c) 2002 codemastr (Dominick Meglio) [codemastr@unrealircd.com]
Protocol Version
------------------------------------------------------------------------------------------------
2308 3.2.5
2307 3.2.4
2306 3.2.3
2305 3.2.2
2304 3.2.1
2303 3.2-beta*, 3.2-RC*, 3.2
2302 3.1.1-Darkshades, 3.1.2-Darkshades, 3.1.3-Komara, 3.1.4-Meadows
2301 3.1-Silverheart
2300 3.0-Morrigana
Flag Description
------------------------------------------------------------------------------------------------
c Server is chrooted
C command line config enabled
D Server is in debugmode
F Using file descriptor lists
h Compiled as a hub
i Shows invisible users in /trace
n NOSPOOF enabled
V Uses valloc()
W Windows version
Y Syslog logging enabled
K No ident checking (?)
6 IPv6 supported
X STRIPBADWORDS enabled (chmode/umode +G)
P Uses poll()
e SSL supported
O OperOverride enabled
o OperOverride without verify
Z Zip links supported
3 3rd party modules (were) loaded or unreal is any other way 'tainted' (eg: bad libs)
E Extended channel modes supported
+48
View File
@@ -0,0 +1,48 @@
NOTE: For 3.3* we are not maintaining translated documents until reaching alpha or
beta1 status.
==[ Translations ]============================================================
Starting with the release of Unreal 3.2 we have begun accepting translated
documentation files. For now, only translations of unreal32docs.html and
example.conf are accepted. Other stuff might be translated later, but
this will probably be postponed to 3.3 (numerics/ircd text/help.conf/etc).
There a few requirements however:
- When you submit your translation it should be a translation of the
very latest doc... So be sure to translate the cvs version of
unreal32docs.html (www.vulnscan.org/UnrealIrcd/unreal32docs.html).
- Of course the translation should be correct.. So also 'technically',
it's therefore recommended that have some real experience with Unreal ;)
- If you are accepted and start working on it, it would be nice if you
could put your docs-in-progress online somewhere so we can see how
progress is going a bit.
- You should use a proper HTML editor, this especially excludes Microsoft
Word and Frontpage since it enlarges the .html file by (at least) 30%.
Don't worry, there are enough free&simple html editors out there that
work perfectly fine, you won't need to be an HTML expert at all!
- Someone, usually the person who translated it, needs to be willing
to actively maintain the docs. This is very important! If docs are
out of date (out-of-synch) there will be confusion among users.
Translators will receive once a week (and right before every release)
all changes that were made in unreal32docs.html. Then the translator
should update his/her doc and send it in (or commit it via cvs).
Count on an average of 15 minutes a week (it varies).
Now, we should tell you that the first-time translation of unreal32docs.html
is a LOT of work.. probably 20 hours or so. After that, the weekly updates
take really just 5, 10, 15 minutes a week, which is pretty much "no time".
Now why would you translate at all? Well, by translating UnrealIRCd
documentation you will help out your fellow citizens and/or other people
of that language, you will make Unreal a bit more 'internationalized',
and it's a worthwile contribution to the UnrealIRCd project.
Upon successful completion you will also receive an @unrealircd.org
forwarder email address, and of course your name will be in the docs.
If you want to start translating a document, please send an email to
coders@lists.unrealircd.org and mention the language you are willing
to translate to.. You will then receive an email back saying you can
go ahead (or not). This is mainly to avoid multiple persons working
on the same translation.
==============================================================================
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
-407
View File
@@ -1,407 +0,0 @@
****** UnrealIRCd v2.1.7 Documentation ******
[ $Id$ ]
1) About UnrealIRCd
I started making UnrealIRCd about 1-2 months ago. (July 1999 now)
First it was called mpx2.0b13.soundforge - as I was
inspired of the 'forge' word. I quickly changed name
after I realized the IRCd had more potential.
Unreal is based off Elite2.0b13 and some of
the minor bugfixes Potvin came up with. First lemme
introduce myself. My nick is Techie/Stskeeps. I hang
out at Global-IRC.net, DALnet, DragonWings.org and so on
Unreal is a hybrid of Elite (as I said) mixed with some
Twilight IRCd, TerraIRCd, TS4 (channel mode +h & +e) features
(IMHO TwilightIRCd is one of the best dreamforge hybrids I've seen!
Unreal is not a rip-off of other IRCds - I added a lot of features myself!
I really cannot mention some major features as I think a IRCd is a
IRCd when it has got useful commands- and people actually say mine has!
Anyways I dunt demand donations or anything. I just do coding for fun
I treat coding like playing with toys. It makes me happy(or is it just
caffeine?;). An addy to send donations is at the Donation file in the IRCd dir
And.. I don't sweat while making features unlike some Potvin coder so dunt
send me towels;) I would be more happy if someone e-mailed me with ideas
to the IRCd.. The whole IRCd is GNU so if you want to rip off any of my ideas
You are generally welcome:) Just remember to do what's said in the Changes file!
-- So.. Enjoy this IRCd:) It may become a dream to IRCd owners as its infact
a sortof hybrid of EliteIRCd (Cite .man-pages/page1 in Elite:
EliteIRCD has become a dream to many ircd owners</end cite>
-- Carsten Munk / Techie .. =)
2) Commands (User Commands)
*** WATCH Command ***
Watch is a new notify-type system in UnrealIRCd which is both faster
and uses less network resources than any old-style notify
system. You may add entries to your Watch list with the command
/watch +nick1 [+nick2 +nick3 ..., and the server will send
you a message when any nickname in your watch list logs on or off.
Use /watch -nick to remove a nickname from the watch list, and
just /watch to view your watch list.
The watch list DOES NOT REMAIN BETWEEN SESSIONS - you (or your
script or client) must add the nicknames to your watch list every
time you connect to an IRC server. /Watch was made in DreamForge IRCd
which UnrealIRCd in ground is based off
*** HELPOP Command ***
HelpOp is a new system of getting IRC Server help. You type either
/HelpOp ? <help system topic> or /HelpOp ! <question>
The "?" in /HelpOp means query the help system and if you get no
response you can choose '!' to send it to the Help Operators online
------------oOo--------------
*** LIST Command ***
New extended /list command options are supported. To use these
features, you will likely need to prefix the LIST command with
/quote to avoid your client interpreting the command.
Usage: /quote LIST options
If you don't include any options, the default is to send you the
entire unfiltered list of channels. Below are the options you can
use, and what channels LIST will return when you use them.
>number List channels with more than <number> people.
<number List channels with less than <number> people.
C>number List channels created between now and <number> minutes ago.
C<number List channels created earlier than <number> minutes ago.
T>number List channels whose topics are older than <number> minutes
(Ie., they have not changed in the last <number> minutes.
T<number List channels whose topics are newer than <number> minutes.
*mask* List channels that match *mask*
!*mask* List channels that do not match *mask*
LIST defaults to sending a list of channels with 2 or more members,
so use the >0 option to get the full channel listing.
*** PRIVMSG Command ***
PRIVMSG and NOTICE, which are used internally by the client for
/msg and /notice, in UnrealIRCd support two additional formats:
/msg @#channel <text> will send the text to channel-ops on the
given channel only. /msg @+#channel <text> will send the text
to both ops and voiced users on the channel. While some clients
may support these as-is, on others (such as ircII), it's necessary
to use /quote privmsg @#channel <text> instead. It's perhaps a
good idea to add the/alias omsg /quote privmsg @$0 $1 into
your script (.ircrc) file in that case.
**** KNOCK Command ****
/Knock is a new UnrealIRCd command which enables you to
'knock' on a channel if it is +i and these criteria is met
- Channel is not +K (No knocks)
- Channel is not +I (No invites!)
- You're not banned!
- And you are not already there:)
Syntax:
/Knock #Channel :Reason
**** LICENSE Command ****
This command shows the GNU License
Which is hard-coded into the IRCd:)
Syntax: /License [optional server]
*** SetName Command ***
/SetName is a new feature in UnrealIRCd
Which allows users to change their 'Real name'
(GECOS) directly online at IRC without reconnecting
Syntax:
/SetName :New Real Name
*** MODE Command ***
This is basically the /mode command as it has always
been on IRC. Thou in Channel mode basis it has got an
Extra feature (/mode #Channel ^ ) which reports channel
modes represented in a bitstring (may be handy, maybe not)
UnrealIRCd has got some new channel / usermodes I think you
wish to take a look at
Channel Modes Help: /HelpOp CHMODES
User modes help: /HelpOp UMODES
*** STATSERV Command ***
This is a alias for the /msg StatServ command,
But is more secure. If the IRC network doesn't have StatServ
It will report it is down.
Syntax:
/StatServ <command>
*** /Credits Help ***
This command will list the credits I've created
to thank the people who has helped me with making
UnrealIRCd. Anyone who I've forgotten all my kind
thoughts go to -- Techie'99
Syntax:
/Credits [optional server]
*** /DALINFO Help ***
This command will list the credits that the
Dreamforge IRCd team/the IRCd developers
from the start when IRCd got developed
Syntax:
/DALInfo [optional server]
3) Operator Commands
This section is the IRCOp's only commands
area:) - These topics are available:
Note: This doesnt include Dreamforge commands
SETHOST SETIDENT SDESC
ADCHAT NACHAT TECHAT
GLINE REMGLINE STATS
MKPASSWD SNOTES SNOTE
ADDLINE LAG RPING
ADDMOTD ADDOMOTD OPERMOTD
CHGHOST TSCTL SAJOIN
*** ADDMOTD Command Help ***");
This will add the text you specify to the MOTD
(the general motd - T:lines doesnt count ..)
Server Admin & Co-Admin only
Syntax: /ADDMOTD :text
*** ADDOMOTD Command Help ***
This will add the text you specify to the Operator MOTD
Server Admin & Co-Admin only
Syntax: /ADDOMOTD :text
*** OPERMOTD Command Help ***
This is a IRCop only command - shows the IRCd Operator MOTD
Syntax: /OperMotd
*** SETHOST Command Help ***
This command is so you can change your
Virtual host (hiddenhost) to everything you want to
Except special characters;).
Syntax:
/SetHost <new hostname>)
Example:
/Sethost ircaddicts.org
*** SETIDENT Command Help ***
With this command you can change your
ident (username).
Syntax:
/SetIdent <new ident>
Example:
/SetIdent root
*** SDesc Command help ***
NOTE: This is a Server Admin/Co Admin only command
With this command you can change your Server Info Line
Without having to squit and reconnect.
Syntax: /SDesc :New description
Example: /SDesc :If you belong to me..
*** AdChat Command Help ***
This command sends to all Admins online (IsAdmin)
Only for Admins. This is a ChatOps style command
Syntax: /AdChat :<text>
Example: /AdChat :Hey guys!
*** NAChat Command Help ***
This command sends to all NetAdmins & TechAdmins online
Only for Net/Techadmins. This is a ChatOps style command
Syntax: /NAChat :<text>
Example: /NAChat :Hey guys!
*** Stats Command Help ***
UnrealIRCd has got a extension called /Stats G
Which will list the current G:Lines
Syntax: /Stats G
*** TEChat Command Help ***
This command sends to all TechAdmins online
Only for Net/Techadmins. This is a ChatOps style command
Syntax: /TEChat :<text>
Example: /TEChat :Hey guys!
*** CHGHOST Command help ***
This command makes you able to change other people's virtual hostname
- IRCop only.
Syntax: /CHGHOST <nick> <newhost>
*** TSCTL Command Help ***");
This is a highly advanced command");
Syntax:");
/TSCTL OFFSET +|- <time> - Adjust internal IRC clock");
/TSCTL TIME - Will give TS report");
*** SAJOIN Command help **");
Makes <nick> join channel <channel>");
Services Admin only..");
Syntax: /SAJOIN nick channel");
*** RemGline Command Help
This command can remove G:Lines
Syntax:
/RemGline <user@host mask>
Example:
/RemGline *@*.flirt.org
*** G:line command Help ***
This command provides timed G:Lines. If you match
a G:Line you cannot connect to ANY server at the
IRC network
Syntax:
/GLINE <user@host mask> <seconds to be banned> :<reason>
Example:
/GLINE *@*.dal.net 900 :Spammers
this will ban all users matching *@*.dal.net for 15 minutes
with reason 'Spammers'
*** MkPasswd Command help ***
This command will encrypt the string it has been given
So u can add it directly to the ircd.conf if you use
Encrypted passwords. /MKPassWd is disabled in UnrealIRCd/32
Syntax : /MkPasswd :string to be encrypted
*** SNOTE Command Help ***
This will store the parameter of the command to a file
Which then can be read by using /SNOTES LIST
Syntax: /SNOTE :<message>
*** SNOTES Command Help ***
This command is made to view notes
Written to the SNOTE file by using /SNOTE
Syntax: /SNOTES LIST
or /SNOTES <number>
*** ADDLINE Command Help ***
This command can be used to add lines to the ircd.conf file
Only for Server Admins
Syntax: /AddLine :<line>
*** LAG Command Help ***
This command is like a sonar/traceroute for IRC servers
You type in /lag server1.irc.net and it will
reply from every server it passes with time and so on
Useful for looking where lag is and optional TS future/past travels
Syntax: /LAG <servername>
**** RPING Command help ***
This will calculate the milliseconds (lag) between servers
Syntax: /RPING <servermask>
4) *** UnrealIRCd Usermodes ***
o = Global IRCop
O = Local IRCop
i = Invisible (Not shown in /who searches)
w = Can listen to wallop messages
g = Can read & send to globops, and locops
h = Available for help
s = Can listen to server notices
k = See's all the /KILL's which were executed
S = For services only. (Protects them)
a = Is a services admin
A = Is a server admin
N = Is a network admin
T = Is a tech admin
C = Is a co admin
c = See's all connects/disconnects on local server
f = Listen to flood alerts from server
r = Identifies the nick as being registered
x = Gives the user hidden hostname
e = Can listen to server messages sent to +e users
b = Can read & send to chatops
W = (IRCops only) Lets you see when people does a /whois on you
q = (Services Admins only) Gets you unable to be
kicked unless by U:Lines
B = (users) Marks you being a Bot
F = (net|tech admin only) Lets you see far client connect/disconnects
I = (net|tech admin only) Invisible Join/Part. Makes you
being hidden at channels
1 = (IRCops only) Marks you a Coder
5) *** UnrealIRCd Channel Modes ***
p = Private channel
s = Secret channel
i = Invite-only allowed
m = Moderated channel, noone can speak except users with mode +voh
n = No messages from outside channel
t = Only channel operators may set the topic
r = Channel is registered
R = Requires a registered nickname to join the channel
x = No ANSI color can be sent to the channel
q = Channel owner (The big cheese)
Q = No kicks able in channel unless by U:Lines
O = IRCop only channel (setable by Opers)
A = Server Admin | Network Admin | Tech Admin only channel (same as above)
K = /Knock is not allowed
I = /Invite is not allowed
S = Strip all incoming colours away
l <number of max users> = Channel may hold at most <number> of users
b <nick!user@host> = Bans the nick!user@host from the channel
k <key> = Needs the channel key to join the channel
o <nickname> = Gives operator status to the user
v <nickname> = Gives voice to the user (May talk if chan is +m)
a <nickname> = Gives protection to the user (No kick/drop)
e <exception ban> = Exception ban - If someone matches it
they can join even if some else ban matches!
h <nickname> = Gives halfop status to the user
L <chan2> = If channel is full (+l) the next user
will autojoin <chan2>
You can get additional explanation on modes:
Q h
With /HELPOP mode-<x> where <x> is Q f.x. like mode-Q
*** Channel mode +Q ***
This is the 'peace' mode. Noone can kick eachother
except by U:Lines. Bans can be placed thou.
*** Channel halfops (+h) ***
If you are marked as halfop (% in /names) you can do:
- Set topic
- Kick non-ops
- Set modes +vmntibe
6) *** UnrealIRCd O:Line flags ***
r = Access to /rehash server
R = Access to /restart server
D = Access to /die server
h = Oper can send /help ops - gets +h on oper up
g = Oper can send /globops
w = Oper can send /wallops
l = Oper can send /locops
c = Access to do local /squits and /connects
Y = Access to do remote /squits and /connects
k = Access to do local /kills
K = Access to do global /kills
b = Oper can /kline users from server
B = Oper can /unkline users from server
n = Oper can send local server notices(/notice $servername message)
N = Oper can send global notices(/notice $*.network.net message)
u = Oper can set /umode +c
f = Oper can set /umode +f
o = Local oper, flags included: rhgwlckbBnuf
O = Global oper, flags included: oRDCKN
A = Gets +A on oper up. Is server admin
a = Gets +a on oper up. Is services admin
N = Gets +N on oper up. Is network admin
T = Gets +T on oper up. Is tech admin
C = Gets +C on oper up. Is co admin
z = Can add /zlines
H = Gets +x on oper up.
W = Gets +W on oper up.
^ = Allows to use umode +I
7) Last word
This documentation is based off src/help.c in Unreal2.1.7
For version Unreal2.1.7 - $Date$
Made by Carsten Munk 1999 (Stskeeps)
-21
View File
@@ -1,21 +0,0 @@
[ $Id$ ]
Dynamic Configuration Guide
Okay first you have to go edit the file "unrealircd.conf" in
the directory "networks/". In that file you see a field with
name "Include" .. if you want to create your own network file
(IRC network specification) you have to write like
"networks/<irc network>.network" like "networks/myircnetwork.network"
If there is already a network file you can just put in the path
like : "networks/dragonwings.org"
If you want to create your own network file
copy the file "template.network" to the name you want to use for
your network file and edit it.
If you experince any problems email me at stskeeps@tspre.org
or try msg me at /server irc.global-irc.net : #UnrealIRCd
My nick is mostly Stskeeps or Techie (or Nightwalker if i had a bad night:P)
--Stskeeps
+311
View File
@@ -0,0 +1,311 @@
/*
** burst.c
**
** Nicolas Pioch, Dec 93
** <Nicolas.Pioch@enst.fr>
** Carsten V. Munk Nov 2000
*/
#include <sys/types.h>
#include <sys/time.h>
#include <sys/socket.h>
#include <sys/param.h>
#include <sys/signal.h>
#include <netinet/in.h>
#include <sys/un.h>
#include <netdb.h>
#include <errno.h>
#include <arpa/inet.h>
#include <sys/ioctl.h>
#include <ctype.h>
#include <string.h>
#include <fcntl.h>
#include <stdio.h>
#ifdef POSIX
#include <sys/select.h>
#endif
#define MYBUFSIZE 2048
char *jupedservername, *uplinkservername, *jupereason;
int options;
char *password;
typedef struct aClient {
int socket;
char buffer[MYBUFSIZE+1];
int read;
int write;
} aClient;
void fatalrestart(aClient *robotptr, const char *s);
void fatal(const char *s) {
perror(s);
exit(1);
}
typedef void (*signalhandler)(int);
static void signal_catcher(int sig, int code, struct sigcontext *scp) {
fprintf(stderr, "Caught signal %d with code %d\n", sig, code);
switch(sig) {
case SIGFPE: /* Floating point exception */
case SIGILL: /* Illegal instruction */
case SIGSEGV: /* Segmentation violation */
case SIGBUS: /* Bus error */
case SIGSYS: /* Bad argument to system call */
fatal("Fatal signal received, aborting...");
break;
case SIGQUIT:
case SIGINT:
case SIGTERM: /* On se barre */
fatal("AAAAAAAAArrrrrrrrgh!");
break;
}
signal(sig, (signalhandler)signal_catcher);
}
typedef union socket_address {
struct sockaddr_un unixx;
struct sockaddr_in inet;
} socket_address;
void name_to_number(int address_family, const char *hostname, int port,
socket_address *addr, int *len2) {
u_long iaddr;
int len;
struct hostent *host;
char *inaddr;
bzero ((char *) addr, sizeof (socket_address) );
if ( address_family == AF_UNIX ) {
strcpy(addr->unixx.sun_path,hostname);
*len2=sizeof( struct sockaddr_un );
} else {
if ((hostname) && (hostname[0])) {
if (hostname[0] >= '0' && hostname[0] <= '9') {
iaddr = inet_addr(hostname);
inaddr = (char *) &iaddr;
len=sizeof(iaddr);
} else {
host=gethostbyname (hostname);
if (!host)
fatal("Unknown host");
inaddr=host->h_addr_list[0];
len=host->h_length;
}
bcopy(inaddr, (char *)&addr->inet.sin_addr, len);
}
addr->inet.sin_port=htons((u_short) port);
*len2=sizeof(struct sockaddr_in);
}
addr->inet.sin_family = address_family;
}
int read_data(aClient *robotptr) {
int nbytes;
if ((nbytes=read(robotptr->socket, &(robotptr->buffer[robotptr->write]),
(sizeof(robotptr->buffer) - robotptr->write - 1))) < 0)
fatalrestart(robotptr, "read on socket");
if (nbytes == 0) {
close(robotptr->socket);
fatalrestart(robotptr, "Connection Closed");
}
robotptr->write+=nbytes;
robotptr->buffer[robotptr->write]=0;
return(nbytes);
}
void send_data(int socketfd, const char *data, int length) {
int length2;
length2=write(socketfd, data, length);
if (length2 != length)
fprintf(stderr, "*** write truncated to %d chars...\n", length2);
}
int create_client(const char *hostname, const int hostport) {
int descript;
socket_address hostaddr;
int adlen;
/* winlocal
if ((descript=socket(PF_INET, SOCK_STREAM, 0)) < 0)
*/
if ((descript=socket(PF_INET, SOCK_STREAM, 0)) == -1) // winlocal
fatal("socket");
name_to_number(AF_INET, hostname, hostport, &hostaddr, &adlen);
if (connect(descript, &hostaddr.inet, adlen) < 0)
fatal("connect");
return(descript);
}
void parse_line(aClient *robotptr) {
char *toparse;
toparse=(robotptr->buffer + robotptr->read);
printf("%s\n",toparse);
/* Special handling for PING messages */
if (!strncasecmp(toparse, "PING ", 5) || !strncasecmp(toparse, "8 ", 2)){
toparse=strtok(toparse, "\r\n");
toparse[1]='\0';
send_data(robotptr->socket, toparse, strlen(toparse));
return;
}
if (!strncasecmp(toparse, "AO", 2) || !strncasecmp(toparse, "NETINFO", 7))
{
if (!(options & 0x80))
exit(1);
}
}
void parse_data(aClient *robotptr) {
int next;
while((robotptr->read < robotptr->write)
&& ((robotptr->buffer[robotptr->read] == '\r')
|| (robotptr->buffer[robotptr->read] == '\n')))
robotptr->read++;
for(next=robotptr->read; next<=robotptr->write; next++) {
if ((robotptr->buffer[next] == '\r')
|| (robotptr->buffer[next] == '\n'))
break;
}
if (next<robotptr->write) {
robotptr->buffer[next]=0;
next++;
parse_line(robotptr);
robotptr->read=next;
parse_data(robotptr);
}
if (robotptr->read == robotptr->write) {
robotptr->read=robotptr->write=0;
} else {
bcopy((robotptr->buffer + robotptr->read),
(robotptr->buffer), (robotptr->write-robotptr->read));
robotptr->write-=robotptr->read;
robotptr->read=0;
}
}
void run_client(aClient *robotptr) {
fd_set mask, returnmask[3];
int selectval;
FD_ZERO(&mask);
FD_SET(robotptr->socket, &mask);
while (1) {
bcopy((char *)&mask,(char *)returnmask,sizeof(fd_set));
FD_ZERO(returnmask+1);
bcopy((char *)&mask,(char *)(returnmask+2),sizeof(fd_set));
selectval=select(FD_SETSIZE,
returnmask, returnmask+1, returnmask+2, NULL);
if (selectval) {
read_data(robotptr);
parse_data(robotptr);
}
}
}
void initialize(aClient *robotptr) {
char passphrase[MYBUFSIZE];
robotptr->socket=create_client(uplinkservername, atol(jupereason));
sprintf(passphrase,
"PROTOCTL %s %s %s %s %s %s %s %s %s\r\n",
(options & 0x1) ? "NOQUIT" : "",
(options & 0x2) ? "TOKEN" : "",
(options & 0x4) ? "NICKv2" : "",
(options & 0x8) ? "SJOIN" : "",
(options & 0x10) ? "SJOIN2" : "",
(options & 0x20) ? "UMODE2" : "",
(options & 0x40) ? "NS" : "",
(options & 0x100) ? "SJ3" : "",
(options & 0x200) ? "SJB64" : "");
write(robotptr->socket, passphrase, strlen(passphrase));
sprintf(passphrase, "PASS %s\r\nSERVER %s 1 :[Burst analysis].\r\n",
password,jupedservername);
write(robotptr->socket, passphrase, strlen(passphrase));
}
void fatalrestart(aClient *robotptr, const char *s) {
perror(s);
close(robotptr->socket);
sleep(10);
initialize(robotptr);
run_client(robotptr);
}
int main(int argc, char* argv[]) {
aClient robot;
char *p;
if (argc != 6) {
fprintf(stderr, "IRCd burst generator, by Carsten V. Munk 2000, based off jupe.c by Nicolas Pioch\n");
fprintf(stderr,
"Usage: %s <burstservername> <uplink> <port> <options> <password>\n", argv[0]);
fprintf(stderr, "Options can be a combination of these:\n");
fprintf(stderr, "1 = Enable NOQUIT 2 = Enable TOKEN\n");
fprintf(stderr, "3 = Enable NICKv2 4 = Enable SJOIN\n");
fprintf(stderr, "5 = Enable SJOIN2 6 = Enable UMODE2\n");
fprintf(stderr, "7 = Enable NS 8 = Ignore end of burst\n");
fprintf(stderr, "9 = Enable SJ3 a = Enable SJB64\n");
fatal("incorrect argument count");
exit(1);
}
jupedservername=argv[1];
uplinkservername=argv[2];
jupereason=argv[3];
password = argv[5];
p = argv[4];
for (; *p; p++)
{
if (*p == '1')
options |= 0x1;
if (*p == '2')
options |= 0x2;
if (*p == '3')
options |= 0x4;
if (*p == '4')
options |= 0x8;
if (*p == '5')
options |= 0x10;
if (*p == '6')
options |= 0x20;
if (*p == '7')
options |= 0x40;
if (*p == '8')
options |= 0x80;
if (*p == '9')
options |= 0x100;
if (*p == 'a')
options |= 0x200;
}
/* installe le signal_catcher */
signal(SIGTERM,(signalhandler)signal_catcher);
robot.read=robot.write=0;
initialize(&robot);
run_client(&robot);
exit(0);
}
Binary file not shown.
+128
View File
@@ -0,0 +1,128 @@
/*
* IRC - Internet Relay Chat, src/modules/channeldumper.c
* (C) 2002 Carsten V. Munk <stskeeps@tspre.org>
*
*
* See file AUTHORS in IRC package for additional names of
* the programmers.
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation; either version 1, or (at your option)
* any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
*/
#include "config.h"
#include "struct.h"
#include "common.h"
#include "sys.h"
#include "numeric.h"
#include "msg.h"
#include "channel.h"
#include <time.h>
#include <sys/stat.h>
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#ifdef _WIN32
#include <io.h>
#endif
#include <fcntl.h>
#include "h.h"
#include "proto.h"
#ifdef STRIPBADWORDS
#include "badwords.h"
#endif
#ifdef _WIN32
#include "version.h"
#endif
#ifndef DYNAMIC_LINKING
ModuleHeader channeldumper_Header
#else
#define channeldumper_Header Mod_Header
ModuleHeader Mod_Header
#endif
= {
"channeldumper",
"$Id$",
"Channel dump to text timed",
"3.2-b8-1",
NULL
};
static ModuleInfo ChannelDumperModInfo;
#ifdef DYNAMIC_LINKING
DLLFUNC int Mod_Init(ModuleInfo *modinfo)
#else
int channeldumper_Init(ModuleInfo *modinfo)
#endif
{
tainted++;
bcopy(modinfo,&ChannelDumperModInfo, modinfo->size);
return MOD_SUCCESS;
}
EVENT(e_channeldump);
static Event *ChannelDumpEvent = NULL;
#ifdef DYNAMIC_LINKING
DLLFUNC int Mod_Load(int module_load)
#else
int channeldumper_Load(int module_load)
#endif
{
LockEventSystem();
ChannelDumpEvent = EventAddEx(ChannelDumperModInfo.handle, "e_channeldump", 5, 0, e_channeldump, NULL);
UnlockEventSystem();
return MOD_SUCCESS;
}
#ifdef DYNAMIC_LINKING
DLLFUNC int Mod_Unload(int module_unload)
#else
int channeldumper_Unload(int module_unload)
#endif
{
tainted--;
LockEventSystem();
EventDel(ChannelDumpEvent);
UnlockEventSystem();
return MOD_SUCCESS;
}
EVENT(e_channeldump)
{
aChannel *chptr;
unsigned int hashnum;
Member *m;
FILE *f;
f = fopen("ircd.channeldump", "w");
if (!f)
return;
for (hashnum = 0; hashnum < CH_MAX; hashnum++)
{
for (chptr = (aChannel *)hash_get_chan_bucket(hashnum); chptr; chptr
= chptr->hnextch)
{
if (SecretChannel(chptr))
continue;
fprintf(f, "C %s %s\r\n",
chptr->chname, chptr->topic ? chptr->topic : "");
for (m = chptr->members; m; m = m->next)
fprintf(f, "M %s\r\n",
m->cptr->name);
}
}
fclose(f);
return;
}
+128
View File
@@ -0,0 +1,128 @@
/*
* Defizzer, 3rd party module for Unreal3.2-beta15 and up
* (C) Carsten V. Munk 2003 <stskeeps@tspre.org>
* You can do everything you desire with this module, under the condition that if you
* meet the author, you must buy him a drink of his choice.
* Copyright notice must ALWAYS stay in place.
*
* Removes unidented fizzer clients from the network pre-local-connect
*/
#include "config.h"
#include "struct.h"
#include "common.h"
#include "sys.h"
#include "numeric.h"
#include "msg.h"
#include "channel.h"
#include <time.h>
#include <sys/stat.h>
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#ifdef _WIN32
#include <io.h>
#endif
#include <fcntl.h>
#include "h.h"
#ifdef STRIPBADWORDS
#include "badwords.h"
#endif
#ifdef _WIN32
#include "version.h"
#endif
DLLFUNC int h_defizzer_connect(aClient *sptr);
static Hook *LocConnect = NULL;
ModuleInfo DefizzerModInfo;
ModuleHeader MOD_HEADER(defizzer)
= {
"defizzer", /* Name of module */
"$Id$", /* Version */
"de-Fizzer", /* Short description of module */
"3.2-b8-1",
NULL
};
DLLFUNC int MOD_INIT(defizzer)(ModuleInfo *modinfo)
{
bcopy(modinfo,&DefizzerModInfo,modinfo->size);
LocConnect = HookAddEx(DefizzerModInfo.handle, HOOKTYPE_PRE_LOCAL_CONNECT, h_defizzer_connect);
return MOD_SUCCESS;
}
DLLFUNC int MOD_LOAD(defizzer)(int module_load)
{
return MOD_SUCCESS;
}
DLLFUNC int MOD_UNLOAD(defizzer)(int module_unload)
{
HookDel(LocConnect);
return MOD_SUCCESS;
}
static void ban_fizzer(aClient *cptr)
{
int i;
aClient *acptr;
char hostip[128], mo[100], mo2[100];
char *tkllayer[9] = {
me.name, /*0 server.name */
"+", /*1 +|- */
"z", /*2 G */
"*", /*3 user */
NULL, /*4 host */
NULL,
NULL, /*6 expire_at */
NULL, /*7 set_at */
NULL /*8 reason */
};
strlcpy(hostip, Inet_ia2p(&cptr->ip), sizeof(hostip));
tkllayer[4] = hostip;
tkllayer[5] = me.name;
ircsprintf(mo, "%li", 86400 + TStime());
ircsprintf(mo2, "%li", TStime());
tkllayer[6] = mo;
tkllayer[7] = mo2;
tkllayer[8] = "Fizzer";
m_tkl(&me, &me, 9, tkllayer);
return;
}
DLLFUNC int h_defizzer_connect(aClient *sptr)
{
char user[USERLEN + 1];
char *infobackup;
char *s1, *s2;
/*
* Algorithm is basically like this, inspired by Zaphod:
* Exchange first word with second in realname, prepend with
* ~, then add in second word and first word upto limit of username.
* sounds fun?
*/
infobackup = strdup(sptr->info);
if (!(s1 = strtok(infobackup, " ")))
{
free(infobackup);
return 0;
}
if (!(s2 = strtok(NULL, " ")))
{
free(infobackup);
return 0;
}
snprintf(user, sizeof(user), "%s%s%s", (IDENT_CHECK ? "~" : ""), s2, s1);
free(infobackup);
if (!strcmp(user, sptr->user->username))
{
ircstp->is_ref++;
ban_fizzer(sptr);
return exit_client(sptr, sptr, &me, "Fizzer client");
}
return 0;
}
+43 -1
View File
@@ -1 +1,43 @@
...
These are 3rd party programs modules, or unsupported modules.
Custom modules are compiled by copying them to src/modules
and running from the root directory
$ make custommodule MODULEFILE=modulename
This will produce a .so you can load. Upon load, this will show a "3" in the
/version flags, as it contains third party modules (we do not support if it
crashes because of the tainted module)
======================
Name: burst.c
Description:
Little program to test out the different aspects of the unreal protocol and
produce net.burst dumps
=======================
Name: m_rawto.c
Is a 3rd party module
Description:
Implements the RAWTO command, will allow U:lines to send raw data to
anywhere it pleases.
:uline.server RAWTO towho :what to send
=========================
Name: channeldumper.c
Is a 3rd party module
Description:
Dumps a list of non secret channels to ircd.channels or something every 5 seconds,
C #channel topic
M member1
M member2
C #channel2 topic
M member3
You can't rely on topic being there
+157
View File
@@ -0,0 +1,157 @@
/*
* Unreal Internet Relay Chat Daemon, m_rawto.c
* (C) 2002 Carsten V. Munk
* RAWTO Module - 3rd party
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation; either version 1, or (at your option)
* any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
*
* Use of this module will make it a 3rd party module, and will
* add to your /version thing. We DO NOT SUPPORT THIS.
*/
#include "config.h"
#include "struct.h"
#include "common.h"
#include "sys.h"
#include "numeric.h"
#include "msg.h"
#include "channel.h"
#include <time.h>
#include <sys/stat.h>
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#ifdef _WIN32
#include <io.h>
#endif
#include <fcntl.h>
#include "h.h"
#include "proto.h"
#ifdef STRIPBADWORDS
#include "badwords.h"
#endif
#ifdef _WIN32
#include "version.h"
#endif
DLLFUNC int m_rawto(aClient *cptr, aClient *sptr, int parc, char *parv[]);
/* Place includes here */
#define MSG_RAWTO "RAWTO" /* */
#define TOK_RAWTO "3A" /* 112 */
#ifndef DYNAMIC_LINKING
ModuleHeader m_rawto_Header
#else
#define m_rawto_Header Mod_Header
ModuleHeader Mod_Header
#endif
= {
"rawto", /* Name of module */
"$Id$", /* Version */
"command /rawto", /* Short description of module */
"3.2-b5",
NULL
};
/* The purpose of these ifdefs, are that we can "static" link the ircd if we
* want to
*/
/* This is called on module init, before Server Ready */
#ifdef DYNAMIC_LINKING
DLLFUNC int Mod_Init(int module_load)
#else
int m_rawto_Init(int module_load)
#endif
{
/*
* We call our add_Command crap here
*/
add_Command(MSG_RAWTO, TOK_RAWTO, m_rawto, 2);
tainted++;
return MOD_SUCCESS;
}
/* Is first run when server is 100% ready */
#ifdef DYNAMIC_LINKING
DLLFUNC int Mod_Load(int module_load)
#else
int m_rawto_Load(int module_load)
#endif
{
return MOD_SUCCESS;
}
/* Called when module is unloaded */
#ifdef DYNAMIC_LINKING
DLLFUNC int Mod_Unload(int module_unload)
#else
int m_rawto_Unload(int module_unload)
#endif
{
if (del_Command(MSG_RAWTO, TOK_RAWTO, m_rawto) < 0)
{
sendto_realops("Failed to delete commands when unloading %s",
m_rawto_Header.name);
}
tainted--;
return MOD_SUCCESS;
}
/*
* m_rawto Send a raw string to anywhere
* if you are U:line
* parv[0] = sender prefix
* parv[1] = whoto
* parv[2] = string
*/
DLLFUNC int m_rawto(aClient *cptr, aClient *sptr, int parc, char *parv[])
{
aClient *acptr = NULL;
if (!IsULine(sptr))
{
sendto_one(sptr, err_str(ERR_NOPRIVILEGES), me.name, parv[0]);
return -1;
}
if (parc < 3)
{
sendto_one(sptr, err_str(ERR_NEEDMOREPARAMS),
me.name, parv[0], "RAWTO");
return -1;
}
if ((acptr = find_client(parv[1], NULL)))
{
if (MyConnect(acptr))
{
sendto_one(acptr, "%s", parv[2]);
return 0;
}
else
{
sendto_one(acptr, ":%s %s %s :%s",
parv[0], IsToken(acptr->from) ? TOK_RAWTO : MSG_RAWTO,
parv[1], parv[2]);
return 0;
}
}
return 0;
}
+5563
View File
File diff suppressed because it is too large Load Diff
Binary file not shown.
+98
View File
@@ -0,0 +1,98 @@
# Makefile for regex.
#
# Copyright (C) 1992, 1993 Free Software Foundation, Inc.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation; either version 2, or (at your option)
# any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program; if not, write to the Free Software
# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
version = 0.12
# You can define CPPFLAGS on the command line. Aside from system-specific
# flags, you can define:
# -DREGEX_MALLOC to use malloc/realloc/free instead of alloca.
# -DDEBUG to enable the compiled pattern disassembler and execution
# tracing; code runs substantially slower.
# -DEXTRACT_MACROS to use the macros EXTRACT_* (as opposed to
# the corresponding C procedures). If not -DDEBUG, the macros
# are used.
CPPFLAGS =
# Likewise, you can override CFLAGS to optimize, use -Wall, etc.
CFLAGS = -g
# Ditto for LDFLAGS and LOADLIBES.
LDFLAGS =
LOADLIBES =
srcdir = @srcdir@
VPATH = @srcdir@
CC = @CC@
DEFS = @DEFS@
SHELL = /bin/sh
subdirs = moo
default all:: regex.o
.PHONY: default all
regex.o: regex.c regex.h
$(CC) $(CFLAGS) $(CPPFLAGS) $(DEFS) -I. -I$(srcdir) -c $<
clean mostlyclean::
rm -f *.o
distclean:: clean
rm -f Makefile config.status
extraclean:: distclean
rm -f patch* *~* *\#* *.orig *.rej *.bak core a.out
configure: configure.in
autoconf
config.status: configure
sh configure --no-create
Makefile: Makefile.in config.status
sh config.status
makeargs = $(MFLAGS) CPPFLAGS='$(CPPFLAGS)' CFLAGS='$(CFLAGS)' CC='$(CC)' \
DEFS='$(DEFS)' LDFLAGS='$(LDFLAGS)' LOADLIBES='$(LOADLIBES)'
default all install \
mostlyclean clean distclean extraclean realclean \
TAGS check::
for d in $(subdirs); do (cd $$d; $(MAKE) $(makeargs) $@); done
.PHONY: install mostlyclean clean distclean extraclean realclean TAGS check
# Prevent GNU make 3 from overflowing arg limit on system V.
.NOEXPORT:
distfiles = AUTHORS ChangeLog COPYING INSTALL NEWS README \
*.in configure regex.c regex.h
distdir = regex-$(version)
distargs = version=$(version) distdir=../$(distdir)/$$d
dist: TAGS configure
@echo "Version numbers in: Makefile.in, ChangeLog, NEWS,"
@echo " regex.c, regex.h,"
@echo " and doc/xregex.texi (if modified)."
rm -rf $(distdir)
mkdir $(distdir)
ln $(distfiles) $(distdir)
for d in $(subdirs); do (cd $$d; $(MAKE) $(distargs) dist); done
tar czhf $(distdir).tar.Z $(distdir)
rm -rf $(distdir)
.PHONY: dist
+60
View File
@@ -0,0 +1,60 @@
This directory contains the GNU regex library. It is compliant with
POSIX.2, except for internationalization features.
See the file NEWS for a list of major changes in the current release.
See the file INSTALL for compilation instructions. (The only thing
installed is the documentation; regex.c is compiled into regex.o, but
not installed anywhere.)
The subdirectory `doc' contains a (programmers') manual for the library.
It's probably out-of-date. Improvements are welcome.
The subdirectory `test' contains the various tests we've written.
We know this code is not as fast as it might be. If you have specific
suggestions, profiling results, or other such useful information to
report, please do.
Emacs 18 is not going use this revised regex (but Emacs 19 will). If
you want to try it with Emacs 18, apply the patch at the end of this
file first.
Mail bug reports to bug-gnu-utils@prep.ai.mit.edu.
Please include an actual regular expression that fails (and the syntax
used to compile it); without that, there's no way to reproduce the bug,
so there's no way we can fix it. Even if you include a patch, also
include the regular expression in error; otherwise, we can't know for
sure what you're trying to fix.
Here is the patch to make this version of regex work with Emacs 18.
*** ORIG/search.c Tue Jan 8 13:04:55 1991
--- search.c Sun Jan 5 10:57:00 1992
***************
*** 25,26 ****
--- 25,28 ----
#include "commands.h"
+
+ #include <sys/types.h>
#include "regex.h"
***************
*** 477,479 ****
/* really needed. */
! && *(searchbuf.buffer) == (char) exactn /* first item is "exact match" */
&& searchbuf.buffer[1] + 2 == searchbuf.used) /*first is ONLY item */
--- 479,482 ----
/* really needed. */
! /* first item is "exact match" */
! && *(searchbuf.buffer) == (char) RE_EXACTN_VALUE
&& searchbuf.buffer[1] + 2 == searchbuf.used) /*first is ONLY item */
***************
*** 1273,1275 ****
searchbuf.allocated = 100;
! searchbuf.buffer = (char *) malloc (searchbuf.allocated);
searchbuf.fastmap = search_fastmap;
--- 1276,1278 ----
searchbuf.allocated = 100;
! searchbuf.buffer = (unsigned char *) malloc (searchbuf.allocated);
searchbuf.fastmap = search_fastmap;
Vendored Executable
+462
View File
@@ -0,0 +1,462 @@
#!/bin/sh
# Guess values for system-dependent variables and create Makefiles.
# Generated automatically using autoconf.
# Copyright (C) 1991, 1992, 1993 Free Software Foundation, Inc.
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation; either version 2, or (at your option)
# any later version.
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
# You should have received a copy of the GNU General Public License
# along with this program; if not, write to the Free Software
# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
# Usage: configure [--srcdir=DIR] [--host=HOST] [--gas] [--nfp] [--no-create]
# [--prefix=PREFIX] [--exec-prefix=PREFIX] [--with-PACKAGE] [TARGET]
# Ignores all args except --srcdir, --prefix, --exec-prefix, --no-create, and
# --with-PACKAGE unless this script has special code to handle it.
for arg
do
# Handle --exec-prefix with a space before the argument.
if test x$next_exec_prefix = xyes; then exec_prefix=$arg; next_exec_prefix=
# Handle --host with a space before the argument.
elif test x$next_host = xyes; then next_host=
# Handle --prefix with a space before the argument.
elif test x$next_prefix = xyes; then prefix=$arg; next_prefix=
# Handle --srcdir with a space before the argument.
elif test x$next_srcdir = xyes; then srcdir=$arg; next_srcdir=
else
case $arg in
# For backward compatibility, also recognize exact --exec_prefix.
-exec-prefix=* | --exec_prefix=* | --exec-prefix=* | --exec-prefi=* | --exec-pref=* | --exec-pre=* | --exec-pr=* | --exec-p=* | --exec-=* | --exec=* | --exe=* | --ex=* | --e=*)
exec_prefix=`echo $arg | sed 's/[-a-z_]*=//'` ;;
-exec-prefix | --exec_prefix | --exec-prefix | --exec-prefi | --exec-pref | --exec-pre | --exec-pr | --exec-p | --exec- | --exec | --exe | --ex | --e)
next_exec_prefix=yes ;;
-gas | --gas | --ga | --g) ;;
-host=* | --host=* | --hos=* | --ho=* | --h=*) ;;
-host | --host | --hos | --ho | --h)
next_host=yes ;;
-nfp | --nfp | --nf) ;;
-no-create | --no-create | --no-creat | --no-crea | --no-cre | --no-cr | --no-c | --no- | --no)
no_create=1 ;;
-prefix=* | --prefix=* | --prefi=* | --pref=* | --pre=* | --pr=* | --p=*)
prefix=`echo $arg | sed 's/[-a-z_]*=//'` ;;
-prefix | --prefix | --prefi | --pref | --pre | --pr | --p)
next_prefix=yes ;;
-srcdir=* | --srcdir=* | --srcdi=* | --srcd=* | --src=* | --sr=* | --s=*)
srcdir=`echo $arg | sed 's/[-a-z_]*=//'` ;;
-srcdir | --srcdir | --srcdi | --srcd | --src | --sr | --s)
next_srcdir=yes ;;
-with-* | --with-*)
package=`echo $arg|sed 's/-*with-//'`
# Delete all the valid chars; see if any are left.
if test -n "`echo $package|sed 's/[-a-zA-Z0-9_]*//g'`"; then
echo "configure: $package: invalid package name" >&2; exit 1
fi
eval "with_`echo $package|sed s/-/_/g`=1" ;;
*) ;;
esac
fi
done
trap 'rm -f conftest* core; exit 1' 1 3 15
rm -f conftest*
compile='${CC-cc} $CFLAGS $DEFS conftest.c -o conftest $LIBS >/dev/null 2>&1'
# A filename unique to this package, relative to the directory that
# configure is in, which we can look for to find out if srcdir is correct.
unique_file=regex.c
# Find the source files, if location was not specified.
if test -z "$srcdir"; then
srcdirdefaulted=yes
# Try the directory containing this script, then `..'.
prog=$0
confdir=`echo $prog|sed 's%/[^/][^/]*$%%'`
test "X$confdir" = "X$prog" && confdir=.
srcdir=$confdir
if test ! -r $srcdir/$unique_file; then
srcdir=..
fi
fi
if test ! -r $srcdir/$unique_file; then
if test x$srcdirdefaulted = xyes; then
echo "configure: Can not find sources in \`${confdir}' or \`..'." 1>&2
else
echo "configure: Can not find sources in \`${srcdir}'." 1>&2
fi
exit 1
fi
# Preserve a srcdir of `.' to avoid automounter screwups with pwd.
# But we can't avoid them for `..', to make subdirectories work.
case $srcdir in
.|/*|~*) ;;
*) srcdir=`cd $srcdir; pwd` ;; # Make relative path absolute.
esac
if test -z "$CC"; then
echo checking for gcc
saveifs="$IFS"; IFS="${IFS}:"
for dir in $PATH; do
test -z "$dir" && dir=.
if test -f $dir/gcc; then
CC="gcc"
break
fi
done
IFS="$saveifs"
fi
test -z "$CC" && CC="cc"
# Find out if we are using GNU C, under whatever name.
cat > conftest.c <<EOF
#ifdef __GNUC__
yes
#endif
EOF
${CC-cc} -E conftest.c > conftest.out 2>&1
if egrep yes conftest.out >/dev/null 2>&1; then
GCC=1 # For later tests.
fi
rm -f conftest*
# Make sure to not get the incompatible SysV /etc/install and
# /usr/sbin/install, which might be in PATH before a BSD-like install,
# or the SunOS /usr/etc/install directory, or the AIX /bin/install,
# or the AFS install, which mishandles nonexistent args. (Sigh.)
if test -z "$INSTALL"; then
echo checking for install
saveifs="$IFS"; IFS="${IFS}:"
for dir in $PATH; do
test -z "$dir" && dir=.
case $dir in
/etc|/usr/sbin|/usr/etc|/usr/afsws/bin) ;;
*)
if test -f $dir/install; then
if grep dspmsg $dir/install >/dev/null 2>&1; then
: # AIX
else
INSTALL="$dir/install -c"
INSTALL_PROGRAM='$(INSTALL)'
INSTALL_DATA='$(INSTALL) -m 644'
break
fi
fi
;;
esac
done
IFS="$saveifs"
fi
INSTALL=${INSTALL-cp}
INSTALL_PROGRAM=${INSTALL_PROGRAM-'$(INSTALL)'}
INSTALL_DATA=${INSTALL_DATA-'$(INSTALL)'}
echo checking for AIX
echo checking how to run the C preprocessor
if test -z "$CPP"; then
CPP='${CC-cc} -E'
cat > conftest.c <<EOF
#include <stdio.h>
EOF
err=`eval "$CPP $DEFS conftest.c 2>&1 >/dev/null"`
if test -z "$err"; then
:
else
CPP=/lib/cpp
fi
rm -f conftest*
fi
cat > conftest.c <<EOF
#ifdef _AIX
yes
#endif
EOF
eval "$CPP $DEFS conftest.c > conftest.out 2>&1"
if egrep "yes" conftest.out >/dev/null 2>&1; then
DEFS="$DEFS -D_ALL_SOURCE=1"
fi
rm -f conftest*
echo checking for DYNIX/ptx libseq
cat > conftest.c <<EOF
#if defined(_SEQUENT_)
yes
#endif
EOF
eval "$CPP $DEFS conftest.c > conftest.out 2>&1"
if egrep "yes" conftest.out >/dev/null 2>&1; then
SEQUENT=1
fi
rm -f conftest*
test -n "$SEQUENT" && test -f /usr/lib/libseq.a &&
LIBS="$LIBS -lseq"
echo checking for POSIXized ISC
if test -d /etc/conf/kconfig.d &&
grep _POSIX_VERSION /usr/include/sys/unistd.h >/dev/null 2>&1
then
ISC=1 # If later tests want to check for ISC.
DEFS="$DEFS -D_POSIX_SOURCE=1"
if test -n "$GCC"; then
CC="$CC -posix"
else
CC="$CC -Xp"
fi
fi
echo checking for minix/config.h
cat > conftest.c <<EOF
#include <minix/config.h>
EOF
err=`eval "$CPP $DEFS conftest.c 2>&1 >/dev/null"`
if test -z "$err"; then
MINIX=1
fi
rm -f conftest*
# The Minix shell can't assign to the same variable on the same line!
if test -n "$MINIX"; then
DEFS="$DEFS -D_POSIX_SOURCE=1"
DEFS="$DEFS -D_POSIX_1_SOURCE=2"
DEFS="$DEFS -D_MINIX=1"
fi
echo checking for ANSI C header files
cat > conftest.c <<EOF
#include <stdlib.h>
#include <stdarg.h>
#include <string.h>
#include <float.h>
EOF
err=`eval "$CPP $DEFS conftest.c 2>&1 >/dev/null"`
if test -z "$err"; then
# SunOS string.h does not declare mem*, contrary to ANSI.
echo '#include <string.h>' > conftest.c
eval "$CPP $DEFS conftest.c > conftest.out 2>&1"
if egrep "memchr" conftest.out >/dev/null 2>&1; then
# SGI's /bin/cc from Irix-4.0.5 gets non-ANSI ctype macros unless using -ansi.
cat > conftest.c <<EOF
#include <ctype.h>
#define ISLOWER(c) ('a' <= (c) && (c) <= 'z')
#define TOUPPER(c) (ISLOWER(c) ? 'A' + ((c) - 'a') : (c))
#define XOR(e,f) (((e) && !(f)) || (!(e) && (f)))
int main () { int i; for (i = 0; i < 256; i++)
if (XOR (islower (i), ISLOWER (i)) || toupper (i) != TOUPPER (i)) exit(2);
exit (0); }
EOF
eval $compile
if test -s conftest && (./conftest; exit) 2>/dev/null; then
DEFS="$DEFS -DSTDC_HEADERS=1"
fi
rm -f conftest*
fi
rm -f conftest*
fi
rm -f conftest*
for hdr in string.h
do
trhdr=HAVE_`echo $hdr | tr '[a-z]./' '[A-Z]__'`
echo checking for ${hdr}
cat > conftest.c <<EOF
#include <${hdr}>
EOF
err=`eval "$CPP $DEFS conftest.c 2>&1 >/dev/null"`
if test -z "$err"; then
DEFS="$DEFS -D${trhdr}=1"
fi
rm -f conftest*
done
# The Ultrix 4.2 mips builtin alloca declared by alloca.h only works
# for constant arguments. Useless!
echo checking for working alloca.h
cat > conftest.c <<EOF
#include <alloca.h>
main() { exit(0); }
t() { char *p = alloca(2 * sizeof(int)); }
EOF
if eval $compile; then
DEFS="$DEFS -DHAVE_ALLOCA_H=1"
fi
rm -f conftest*
decl="#ifdef __GNUC__
#define alloca __builtin_alloca
#else
#if HAVE_ALLOCA_H
#include <alloca.h>
#else
#ifdef _AIX
#pragma alloca
#else
char *alloca ();
#endif
#endif
#endif
"
echo checking for alloca
cat > conftest.c <<EOF
$decl
main() { exit(0); }
t() { char *p = (char *) alloca(1); }
EOF
if eval $compile; then
:
else
alloca_missing=1
fi
rm -f conftest*
if test -n "$alloca_missing"; then
# The SVR3 libPW and SVR4 libucb both contain incompatible functions
# that cause trouble. Some versions do not even contain alloca or
# contain a buggy version. If you still want to use their alloca,
# use ar to extract alloca.o from them instead of compiling alloca.c.
ALLOCA=alloca.o
fi
prog='/* Ultrix mips cc rejects this. */
typedef int charset[2]; const charset x;
/* SunOS 4.1.1 cc rejects this. */
char const *const *p;
char **p2;
/* HPUX 7.0 cc rejects these. */
++p;
p2 = (char const* const*) p;'
echo checking for working const
cat > conftest.c <<EOF
main() { exit(0); }
t() { $prog }
EOF
if eval $compile; then
:
else
DEFS="$DEFS -Dconst="
fi
rm -f conftest*
if test -z "$prefix"
then
echo checking for gcc to derive installation directory prefix
saveifs="$IFS"; IFS="$IFS:"
for dir in $PATH; do
test -z "$dir" && dir=.
if test $dir != . && test -f $dir/gcc; then
# Not all systems have dirname.
prefix=`echo $dir|sed 's%/[^/][^/]*$%%'`
break
fi
done
IFS="$saveifs"
fi
if test -n "$prefix"; then
test -z "$exec_prefix" && exec_prefix='${prefix}'
prsub="s%^prefix\\([ ]*\\)=\\([ ]*\\).*$%prefix\\1=\\2$prefix%"
fi
if test -n "$exec_prefix"; then
prsub="$prsub
s%^exec_prefix\\([ ]*\\)=\\([ ]*\\).*$%\
exec_prefix\\1=\\2$exec_prefix%"
fi
trap 'rm -f config.status; exit 1' 1 3 15
echo creating config.status
rm -f config.status
cat > config.status <<EOF
#!/bin/sh
# Generated automatically by configure.
# Run this file to recreate the current configuration.
# This directory was configured as follows,
# on host `(hostname || uname -n) 2>/dev/null`:
#
# $0 $*
for arg
do
case "\$arg" in
-recheck | --recheck | --rechec | --reche | --rech | --rec | --re | --r)
exec /bin/sh $0 $* ;;
*) echo "Usage: config.status --recheck" 2>&1; exit 1 ;;
esac
done
trap 'rm -f Makefile; exit 1' 1 3 15
CC='$CC'
INSTALL='$INSTALL'
INSTALL_PROGRAM='$INSTALL_PROGRAM'
INSTALL_DATA='$INSTALL_DATA'
CPP='$CPP'
ALLOCA='$ALLOCA'
LIBS='$LIBS'
srcdir='$srcdir'
DEFS='$DEFS'
prefix='$prefix'
exec_prefix='$exec_prefix'
prsub='$prsub'
EOF
cat >> config.status <<\EOF
top_srcdir=$srcdir
for file in .. Makefile; do if [ "x$file" != "x.." ]; then
srcdir=$top_srcdir
# Remove last slash and all that follows it. Not all systems have dirname.
dir=`echo $file|sed 's%/[^/][^/]*$%%'`
if test "$dir" != "$file"; then
test "$top_srcdir" != . && srcdir=$top_srcdir/$dir
test ! -d $dir && mkdir $dir
fi
echo creating $file
rm -f $file
echo "# Generated automatically from `echo $file|sed 's|.*/||'`.in by configure." > $file
sed -e "
$prsub
s%@CC@%$CC%g
s%@INSTALL@%$INSTALL%g
s%@INSTALL_PROGRAM@%$INSTALL_PROGRAM%g
s%@INSTALL_DATA@%$INSTALL_DATA%g
s%@CPP@%$CPP%g
s%@ALLOCA@%$ALLOCA%g
s%@LIBS@%$LIBS%g
s%@srcdir@%$srcdir%g
s%@DEFS@%$DEFS%
" $top_srcdir/${file}.in >> $file
fi; done
exit 0
EOF
chmod +x config.status
test -n "$no_create" || ./config.status
+23
View File
@@ -0,0 +1,23 @@
dnl Process this file with autoconf to produce a configure script.
AC_INIT(regex.c)
AC_PROG_CC
AC_PROG_INSTALL
dnl I'm not sure if AC_AIX and AC_DYNIX_SEQ are really necessary. The
dnl Autoconf documentation isn't specific about which BSD functions they
dnl provide.
AC_AIX
AC_DYNIX_SEQ
AC_ISC_POSIX
AC_MINIX
AC_STDC_HEADERS
AC_HAVE_HEADERS(string.h)
AC_ALLOCA
AC_CONST
AC_PREFIX(gcc)
AC_OUTPUT(Makefile doc/Makefile test/Makefile)
+4
View File
@@ -0,0 +1,4 @@
clean:
default:
all:
echo "."

Some files were not shown because too many files have changed in this diff Show More