mirror of https://github.com/pissnet/pissircd
commit
f110f47e65
@ -0,0 +1,6 @@
|
||||
|=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=|
|
||||
| UnrealIRCd 3.0 |
|
||||
| Configuration |
|
||||
|=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=|
|
||||
| http://unreal.tspre.org |
|
||||
|=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=|
|
@ -0,0 +1,8 @@
|
||||
|=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=|
|
||||
| UnrealIRCD Custom Create Network Configuration|
|
||||
|=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=|
|
||||
| |
|
||||
| This will not be too hard, just follow the |
|
||||
| instructions, and answer the questions... |
|
||||
| |
|
||||
|=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=|
|
@ -0,0 +1,2 @@
|
||||
List of helpers in the alpha/beta phase:
|
||||
* Headbang, Alpha/beta tester
|
@ -0,0 +1,315 @@
|
||||
/*
|
||||
* UnrealIRCd Changes File - (C) Carsten Munk 1999
|
||||
* $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.
|
||||
*
|
||||
*/
|
||||
*** BUGS ***
|
||||
* When a +q sets +L it sets it but displays an error msg
|
||||
(??:
|
||||
*** Stskeeps (cmunk@rox-56506.fyremoon.net) has joined channel #a
|
||||
*** #a 951758184
|
||||
*** Mode change "+q Stskeeps" on channel #a by Stskeeps
|
||||
*** Mode change "-oaATcfebW" for user Stskeeps by Stskeeps
|
||||
*** Channel mode +l <max> is requried for +L to be set
|
||||
*** Mode change "+l 1" on channel #a by Stskeeps
|
||||
*** Mode change "+L #moo" on channel #a by Stskeeps
|
||||
)
|
||||
|
||||
*** Unreal3.0-Morrigan(fix) ***
|
||||
* NOTE: If your system clock is wrong you will have problems with TOPICs
|
||||
being set on all servers. That is because TOPICs which are _new_ are
|
||||
taken instead of old
|
||||
- Fixed +f not banning when * is specified
|
||||
- Fixed +q (chan owners) not being able to set +L (partially fixed)
|
||||
- Fixed /tsctl segfaulting the server
|
||||
- Fixed the killing bug. The cause was that when m_mode was called in the
|
||||
NICKv2 parsing routine, it sent out a :nick MODE :+x which was an unknown
|
||||
nick, and the NICK was being sent just after, causing it to kill the user
|
||||
(was a _huge_ bastard to find)
|
||||
- If someone changes their nick to irc and WebTV is enabled, problems
|
||||
occur FIX: deny change to that in m_nick (bug fixed)
|
||||
- Added lost unrealircd.bmp.gz file
|
||||
|
||||
*** Unreal3.0-Morrigan ***
|
||||
- Added the new GUI main coded by DrBin, first coding by {X}
|
||||
- Added v64net.network
|
||||
- Added 972-scripterz.network
|
||||
- Made NO_FDLIST compilation work as well
|
||||
- Fixed DCCDENY bug (p->mask, p->mask) (*slaps sts*)
|
||||
- +F not flood off if netsplit happens
|
||||
- Made TODO, made "Unable to write tunefile" show an error if *nix
|
||||
- Added stormdancing.network
|
||||
- send.c sendto_realops problem solved
|
||||
- Fixed a segfaulting bug in /tsctl reported by x-wartech
|
||||
- Fixed segfaulting bug with -oh bounce stuff in channel.c reported by Dana
|
||||
- Fixed +q bug reported by several people, inc DrBin
|
||||
- Added networks/fireirc.network
|
||||
- Fixed +f * option not banning correctly
|
||||
- Fixed fdlist on win32 problem
|
||||
- Added /HTM for high traffic mode status (partially added)
|
||||
- Added networks/digitalirc.network
|
||||
- G:lines expire every 5th second now
|
||||
- /stats T now show incoming and outgoing rate
|
||||
- Some HTM stuff
|
||||
- Some release stuff
|
||||
- Fixed up some NICKv2 stuff, more faster stuff:)
|
||||
- Moved old Changes stuff to Changes.old
|
||||
- Made so /path ~path or ".."'s in T:lines arent possible
|
||||
- Made it so certain files ie ircd.conf,oper.motd, unrealircd.conf, ircd.log
|
||||
can't be used in a T:line
|
||||
- Added dynconf option to specify SOCKS kill message & ban message & bantime
|
||||
- Fixed SOCKS exception bug (!!)
|
||||
- Fixed some indention in dynconf.c and a memory leak problem (what were you
|
||||
smoking code?:P)
|
||||
- iNAH bugfixes( call them fixes and ill smash you;))
|
||||
- Recoded color striping to be ALOT more accurate and faster
|
||||
- Using hybrid IsMember()
|
||||
- Fixed +F bug (again)
|
||||
- Added FDlists, does those work on win32?
|
||||
- De-Potvinized addline, addmotd, and addomotd (should run faster)
|
||||
- Made addline, addmotd, addomotd display to the user what was written
|
||||
- Removed /snote and /snotes (no one used them)
|
||||
- GPL stuff
|
||||
- Some comestic tkl fixes..
|
||||
- Fixed +F bug
|
||||
- Made +F connect notices more bandwidth friendly,
|
||||
only bad things:
|
||||
- Not showing port in connect +F
|
||||
- On servers rejoin you get +F flooded (will be fixed in an later
|
||||
release)
|
||||
- Made ALLOW_CHATOPS a unrealircd.conf option rather than a #define
|
||||
- Fixed a bug where you had to be +AC to see adminchats
|
||||
- chatops, adchat, nachat, techat, wallops no longer require a leading :
|
||||
- More TKL stuff..
|
||||
- m_chatops uses sendto_umode now, and also removed sendto_chatops
|
||||
- Remote rehashes now support the - flags, ex -dcc, -vhost etc
|
||||
- Fixed more G:Line stuff
|
||||
- Fixed G:Line bug with not expiring correctly - thanks Dark-Prince for
|
||||
being guinea pig, and to JojoII for finding it
|
||||
- Fixed +ix remote bug reported by RevPsych
|
||||
- /list can now make opers see +s channels
|
||||
- Did some SJOIN2 work..
|
||||
- Fixed /whois bug with WHOIS_Channels
|
||||
- Fixed a minor, yet annoying bug in the dynconf version system, thanks to GoNiS
|
||||
- Fixed bug: EpicII stripping too much of /oper fail notice
|
||||
- Fixed bug: SJOIN TS Change notice should not show when (ts == oldts)
|
||||
- Fixed WEBTV_NONOTICE bug with CTCPs - thanks rjameson
|
||||
- Fixed +h can +o themselves bug, thanks to Mikey, HERZ and many other
|
||||
people
|
||||
- Added TSP client/server
|
||||
- Fixed m_netinfo stuff..
|
||||
- Fixed a bug with the new m_names and +h (chanmode)
|
||||
- Removed .CHANGES.NEW2 - not in use anyways
|
||||
- Now using new m_names from bahamut by Lucas Madar (DarkRot)
|
||||
- Removed zombie code
|
||||
- Fixed up the MODE_ADMINONLY code
|
||||
- Fixed some bugs in can_send
|
||||
- Added TS Change notice to SJOIN
|
||||
- Fixed a +f bug, and fixed SJOIN resynch bug (serious)
|
||||
- Fixed up the remote rehash code a bit
|
||||
- Updated conf.doc
|
||||
- Added some WebTV stuff, read config.h
|
||||
- Removed the NO_DEFAULT_INVISIBLE define from config.h
|
||||
- Added MODE_I to unrealircd.conf, auto setting of +i when a user connects
|
||||
- Fixed a minor unrealircd.conf bug
|
||||
- Fixed up all SJOIN fuzz, made RESYNCMODES be 12
|
||||
- Fixed this bug:
|
||||
* After sync on other server
|
||||
*** Stskeeps is using modes +oiwghsaHATcCreWIdt
|
||||
should be:
|
||||
Stskeeps is using modes +owghskaATcfrebW
|
||||
|
||||
- Made unrealircd.conf option to hide U:lines from non-opers in /links
|
||||
- Updated the unrealircd.conf and all the .network files to support the
|
||||
version system, and for unrealircd.conf to support HIDE_ULINES
|
||||
- Made a versioning system for unrealircd.conf and *.network (This will
|
||||
allow us to makesure _old_ versions are not being used when new features
|
||||
are added to the files)
|
||||
- TKL/zap bugfix!!
|
||||
- Channel mode +H errors in numeric 459 now, coded by Rev_Null- thanks
|
||||
- Moved RPL_WHOISSPECIAL to 320
|
||||
- Another TKL bug.
|
||||
- TKL bug fixed
|
||||
- Made TKL backwards compatible
|
||||
- TKLs are now syncing
|
||||
- Bug fixes..
|
||||
- Fixed TKL<->GLINE protocol problems
|
||||
- Renamed chmode +I to +V as it screwed up some clients thinking it was
|
||||
IRCnet..
|
||||
- Took out m_fjoin, not in use
|
||||
- Fixed up +e so it works with mIRC channel dialog now
|
||||
- Added channel mode +H, only setable by SkoAdmin, makes +I users unable to
|
||||
join channel - code&thanks to RevPsych & Rev_Null
|
||||
- Removed all MegaIRC references
|
||||
- Fixed VHOST desynch bug..
|
||||
- Removed aGline record
|
||||
- Fixed some idention in msg.h
|
||||
- Fixed warning in s_misc.c
|
||||
- Removes /ns, /cs, /ms, /os, /hs commands (not in use)
|
||||
- Fixed bug where /statserv needed a : for more than one param
|
||||
- Fixed so that /trace only cloaks hostname if it is an oper
|
||||
- Fixed token non case sensitive problem
|
||||
- Fixed warning in mp2parv..
|
||||
- Fixed DEBUGMODE compile bug..
|
||||
- Fixed BOTMOTD bug..
|
||||
- Fixed some bugs (1.16->1.17) and removed aClient->user->host and replaced
|
||||
it by realhost. Saves memory
|
||||
- Fixing up for beta release
|
||||
- Updated networks/networks.ndx
|
||||
- Reason in temp and static K:lines like |kc.gline will show user klined
|
||||
file kc.gline (only legal names are |kc.*)
|
||||
- Added e:lines to the docs
|
||||
- Added solargalaxy.network
|
||||
- Fixed a minor +S (chanmode) bug
|
||||
- Fixed a bug where if a channel was +n it would display a
|
||||
must be +v msg rather than no external msgs (thank Potvin for that one)
|
||||
- Made dccdeny's notice +e users when a file is rejected
|
||||
- Added NOTICE in m_sajoin/m_sapart (You were forced to join/part #)
|
||||
- Added e:lines, SOCKS check exception lines
|
||||
format: e:ip (not hostname):*:*
|
||||
- Added doc/faq entry about debian on sparcs..
|
||||
- added debian sparc support (read doc/faq)
|
||||
- SJOIN sortof working. Straight testing needed
|
||||
- made /botmotd use NOTICE AUTH (so all bots will see it)
|
||||
- fixed NICKv2 umode field when no mode bug..
|
||||
- added T (TechAdmin) to the SMO flags
|
||||
- fixed a little _mistake_ in the /dusers error message
|
||||
- fixed a bug where +c (chanmode) blocked all privmsgs :P
|
||||
- m_sjoin compiled, need to make it unreal3.0 compatible
|
||||
- added include/sjoin.h for SJOIN stuff
|
||||
- Deleted :server prefix from SWHOIS burst.
|
||||
- Added UMODE_SETHOST (+t), and set NICKv2 up to only send when a real
|
||||
virthost. Spares bandwidth:) +t is _not_ user setable
|
||||
- Removed UMODE_COFOUND, UMODE_WMASTER, not in use anymore.
|
||||
- Fixed up MODE_LINK, MODE_FLOODLIMIT syncronization,
|
||||
you can mode do /mode # -lf without parameters
|
||||
- Gave Unreal correct orgin (df4.6.5)
|
||||
- Gave /stats N,S a header
|
||||
- Added network solarxtreme.network
|
||||
- /stats N returns .network file information
|
||||
- /stats S returns unrealircd.conf information
|
||||
- Added a virtualhost field to NICKv2
|
||||
- Updated conf.doc
|
||||
- Removed all traces of CLIENT_COMPILE
|
||||
- Some Linux-ALPHA support.. i need accces to a alpha box :P
|
||||
Fixes done by Ramuh (irc.risanet.com) originally for UltimateIRCd,
|
||||
thanks to ShadowMastr for forwarding me..
|
||||
- Removed all traces of services.h..
|
||||
- NICKv2 working.. :)
|
||||
- Updated doc/faq slightly
|
||||
- Updated doc/example.conf with new lines an Oflags
|
||||
- Implemented NICKv2 (umode field in NICK)
|
||||
- Similar topics are sent along now .. was a bug ? (thanks Headbang,
|
||||
WonderWal, etc)
|
||||
- Fixed up compile warnings
|
||||
- Fixed channel.c warning in can_join
|
||||
- Removed SHOW_PASSWORD define, not in use anymore
|
||||
- Removed USE_CASETABLES define, not in use anymore
|
||||
- Removed TIMED_KLINE define, not in use anymore
|
||||
- Added OPER_NO_HIDING define
|
||||
- Removed RelicNet +z, unreal isnt at use at relicnet anyways and
|
||||
i still dont believe that potvin _thought_ he could make them use it?
|
||||
hah!
|
||||
- Added REMOVE_ADVERTISING define (off by default) , check include/config.h
|
||||
and src/s_user.c (m_message) for more info (by ice)
|
||||
- Fixed channel name similarity bug reported by IXpfah
|
||||
- Comment on Nickflood/joinflood thing (stskeeps): Services can do that?
|
||||
- Fixed up some version.c.SH stuff
|
||||
- Added SJOIN protoctl for preparing for SJOIN
|
||||
- Split up PROTOCTL_SUPPORTED in PROTOCTL_SERVER and PROTOCTL_CLIENT
|
||||
- Added networks/uzaynet.network
|
||||
- NOTICE auth, tells you that it found a bad SOCKS.
|
||||
- Made umode +d work correctly
|
||||
- Made it so users can't see the RPL_WHOISCHANNELS for a
|
||||
+I user
|
||||
- Fixed a bug in +I where a +I user couldn't see themself
|
||||
in /names
|
||||
- Fixed a minor bug in /chgident
|
||||
- Added bot.motd support on +B and /botmotd
|
||||
- /join 0 now shows "Left all channels" in reason why left
|
||||
- Added +H umode, hides oper status
|
||||
in /who /who 0 o /whois (so opers
|
||||
can spy on a channel and no one knows
|
||||
- win32: s_socks.c small problem fixed
|
||||
- Fixed a bug in the new zline code
|
||||
- Fixed a typo in the Win32 socks check (oops)
|
||||
- (development) added TODO.maybe
|
||||
- Added /vhost login password
|
||||
read the s_extra.c on vhost.conf format
|
||||
- vhost.conf, added /rehash -vhost
|
||||
- Removed s_user.c/m_message warning
|
||||
- SOCKS check functioning
|
||||
- Removed src/list2.c - not in use
|
||||
- Removed networks/agitated.network, no longer existing network
|
||||
- Added networks/bunker7.network
|
||||
- Deleted ircdbug
|
||||
- Renamed LICENCE to LICENSE
|
||||
- /version shows alpha while in development..
|
||||
- (development) added include/stamp.h for static development stamping
|
||||
- send.c optimations from ircu :)
|
||||
- Added codemastr as offical developer
|
||||
- Now using GPL v2
|
||||
- NOTICE AUTH problem solved, i hope
|
||||
- Took out UNIXPORT code
|
||||
- Removed traces of R_LINE* in config.h
|
||||
- SOCKS check in progress
|
||||
- Fixed the Blowbug
|
||||
- TSCTL svstime works now :P correctly that is
|
||||
- nick is using modes +rx
|
||||
instead of "nick is using modes [+rx]
|
||||
- Removed some lame brackets
|
||||
- /close sendto_ops() now
|
||||
- Fixed small SVSNICK bug (.)
|
||||
- Fixed +L resync bug..
|
||||
- df4.6.7 SVSNICK - fixes desynchs
|
||||
- Took out all the R_LINES code
|
||||
- Took out all SERVICES_MODE code
|
||||
- Took out all USE_SERVICES code
|
||||
- Added .crjava patch by Fish read include/config.h for more info..
|
||||
- Added IRCu .ack patch you can now use "ONE" in password line in I:Lines
|
||||
to ensure only one connecting from that kind of I:line per IP.
|
||||
- /Lusers <mask> is not working anymore.. took out possible flood thing..
|
||||
- /List - IRCops should be able to see +s now (thanks Headbang and others)
|
||||
- RPL_YOURHOST - Your host is server, running version x
|
||||
Removed [hostname].
|
||||
- RPL_MYINFO now selfupdates when adding new modes (channel and user)
|
||||
- Fixed umodestring
|
||||
- Umode +d avail to everyone now:P
|
||||
- Fixed channel mode +r defunctional bug
|
||||
(thanks to gdb and the coder-com people who learnt me to use gdb:P)
|
||||
- SVSFLINE <+/-/*> [mask] [reason]
|
||||
+ = add (mask + reason)
|
||||
- = delete (mask)
|
||||
* = wipe all services F:Lines
|
||||
(13/12/1999 working.)
|
||||
- Fixed server<->server token problem
|
||||
- Moved /info data to m_info_send
|
||||
- Made SIGSEGV do core too.. MAIL THEM TO ME ALONG WITH THE src/ircd FILE
|
||||
if it tells ya to!
|
||||
- Fixed "GLINE @moo.org 10 :moo\r" G:Line bug (they haunt me)
|
||||
- New F:Line system (dccdeny.conf)
|
||||
- Removed OLD F:lines
|
||||
- Fixed up /stats f/F
|
||||
- Made /rehash -dcc = rehashes dccdeny.conf
|
||||
/rehash -dyn = rehashes dynamic configuration (RISK OF TERMINATE:P)
|
||||
/rehash -rest = rehashes channel restrict config chrestrict.conf
|
||||
- New channel restrict system
|
||||
(chrestrict.conf)
|
||||
# = comment
|
||||
allow #moo = can join #moo
|
||||
msg message = shows message when cannot join cos of allow
|
||||
|
@ -0,0 +1,20 @@
|
||||
Send donations to:
|
||||
|
||||
UnrealIRCd Project
|
||||
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^*)
|
||||
|
||||
|
||||
[ $Id$ ]
|
@ -0,0 +1,153 @@
|
||||
$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
|
@ -0,0 +1,205 @@
|
||||
#/************************************************************************
|
||||
#* IRC - Internet Relay Chat, Makefile
|
||||
#* Copyright (C) 1990, Jarkko Oikarinen
|
||||
#*
|
||||
#* 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$
|
||||
#*/
|
||||
|
||||
CC=gcc
|
||||
INCLUDEDIR=../include
|
||||
NETWORKSDIR=
|
||||
FROMDOS=/home/cmunk/bin/4dos
|
||||
# [CHANGEME]
|
||||
# Default flags:
|
||||
# Change XCFLAGS if you don't like what Config puts there. Same with
|
||||
# IRCDLIBS.
|
||||
#
|
||||
# If you are configuring by hand, try "-O -g" for XCFLAGS, and leave
|
||||
# IRCDLIBS blank. If that fails, try recomendations below.
|
||||
#
|
||||
XCFLAGS=
|
||||
IRCDLIBS=
|
||||
|
||||
#
|
||||
# use the following on MIPS:
|
||||
#CFLAGS= -systype bsd43 -DSYSTYPE_BSD43 -I$(INCLUDEDIR)
|
||||
# For Irix 4.x (SGI), use the following:
|
||||
#CFLAGS= -g -cckr -I$(INCLUDEDIR)
|
||||
#
|
||||
# on NEXT use:
|
||||
#CFLAGS=-bsd -I$(INCLUDEDIR)
|
||||
#on NeXT other than 2.0:
|
||||
#IRCDLIBS=-lsys_s
|
||||
#
|
||||
# AIX 370 flags
|
||||
#CFLAGS=-D_BSD -Hxa -I$(INCLUDEDIR)
|
||||
#IRCDLIBS=-lbsd
|
||||
#
|
||||
# Dynix/ptx V2.0.x
|
||||
#CFLAGS= -I$(INCLUDEDIR) -O -Xo
|
||||
#IRCDLIBS= -lsocket -linet -lnsl -lseq
|
||||
#
|
||||
# Dynix/ptx V1.x.x
|
||||
#IRCDLIBS= -lsocket -linet -lnsl -lseq
|
||||
#
|
||||
#use the following on SUN OS without nameserver libraries inside libc
|
||||
#IRCDLIBS=-lresolv
|
||||
#
|
||||
# Solaris 2
|
||||
#IRCDLIBS=-lsocket -lnsl -lresolv -L/usr/ucblib -R/usr/ucblib -lgen
|
||||
#
|
||||
# ESIX
|
||||
#CFLAGS=-O -I$(INCLUDEDIR) -I/usr/ucbinclude
|
||||
#IRCDLIBS=-L/usr/ucblib -L/usr/lib -lsocket -lucb -lns -lnsl
|
||||
#
|
||||
# LDFLAGS - flags to send the loader (ld). SunOS users may want to add
|
||||
# -Bstatic here.
|
||||
#
|
||||
#LDFLAGS=-Bstatic
|
||||
#
|
||||
#Dell SVR4
|
||||
#CC=gcc
|
||||
#CFLAGS= -I$(INCLUDEDIR) -O2
|
||||
#IRCDLIBS=-lsocket -lnsl -lucb
|
||||
|
||||
# [CHANGEME]
|
||||
# IRCDMODE is the mode you want the binary to be.
|
||||
# The 4 at the front is important (allows for setuidness)
|
||||
#
|
||||
# WARNING: if you are making ircd SUID or SGID, check config.h to make sure
|
||||
# you are not defining CMDLINE_CONFIG
|
||||
IRCDMODE = 711
|
||||
|
||||
# [CHANGEME]
|
||||
# IRCDDIR must be the same as DPATH in include/config.h
|
||||
#
|
||||
IRCDDIR=/usr/local/lib/ircd
|
||||
|
||||
# [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=
|
||||
|
||||
# [CHANGEME]
|
||||
# If you get a link-time error dealing with strtoul, comment out
|
||||
# this line.
|
||||
# STRTOUL= strtoul.o
|
||||
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=
|
||||
|
||||
CFLAGS=-I$(INCLUDEDIR) $(XCFLAGS) $(NEED_U_INT32_T) $(FD_SETSIZE)
|
||||
|
||||
SHELL=/bin/sh
|
||||
SUBDIRS=src
|
||||
BINDIR=$(IRCDDIR)
|
||||
MANDIR=/usr/local/man
|
||||
INSTALL=/usr/bin/install
|
||||
RM=rm
|
||||
CP=cp
|
||||
TOUCH=touch
|
||||
|
||||
all: build
|
||||
|
||||
MAKEARGS = 'CFLAGS=${CFLAGS}' 'CC=${CC}' 'IRCDLIBS=${IRCDLIBS}' \
|
||||
'LDFLAGS=${LDFLAGS}' 'IRCDMODE=${IRCDMODE}' \
|
||||
'BINDIR=${BINDIR}' 'INSTALL=${INSTALL}' \
|
||||
'INCLUDEDIR=${INCLUDEDIR}' 'IRCDDIR=${IRCDDIR}' \
|
||||
'MANDIR=${MANDIR}' 'RM=${RM}' 'CP=${CP}' 'TOUCH=${TOUCH}' \
|
||||
'RES=${RES}' 'SHELL=${SHELL}' 'STRTOUL=${STRTOUL}'
|
||||
|
||||
server:
|
||||
build:
|
||||
-@if [ ! -f include/setup.h ] ; then \
|
||||
echo "Hmm...doesn't look like you've run Config..."; \
|
||||
echo "Doing so now."; \
|
||||
sh Config; \
|
||||
fi
|
||||
@for i in $(SUBDIRS); do \
|
||||
echo "Building $$i";\
|
||||
( 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 '| |'
|
||||
@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 '|__________________________________________________|'
|
||||
|
||||
clean:
|
||||
$(RM) -f *~ \#* core *.orig include/*.orig
|
||||
@for i in $(SUBDIRS); do \
|
||||
echo "Cleaning $$i";\
|
||||
( cd $$i; ${MAKE} ${MAKEARGS} clean; ) \
|
||||
done
|
||||
-@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
|
||||
|
||||
makex: fromdos
|
||||
chmod +x Config newnet bsdinstall ircd ircdcron/ircdchk killircd
|
||||
chmod +x makeconf rehash ircdreg
|
||||
|
||||
fromdos: cleandir
|
||||
$(FROMDOS) -dv *
|
||||
$(FROMDOS) -dv src/*
|
||||
$(FROMDOS) -dv include/*
|
||||
$(FROMDOS) -dv doc/*
|
||||
$(FROMDOS) -dv crypt/*
|
||||
$(FROMDOS) -dv ircdcron/*
|
||||
makedist: makex
|
||||
echo "Making UnrealIRCd compatible IRCd Dist."
|
||||
|
||||
stamp: makedist
|
||||
echo "/* Auto created release stamping */" > include/stamp.h
|
||||
echo "#define RELEASEID2 \"`date +%s`\"" >> include/stamp.h
|
||||
echo "#define RELEASESTUFF \"`hostname`\"" >> include/stamp.h
|
||||
echo "" >> include/stamp.h
|
||||
|
||||
depend:
|
||||
@for i in $(SUBDIRS); do \
|
||||
echo "Making dependencies in $$i";\
|
||||
( cd $$i; ${MAKE} ${MAKEARGS} depend; ) \
|
||||
done
|
||||
|
||||
install: all
|
||||
@echo "Now install by hand; make install is broken."
|
||||
|
@ -0,0 +1,15 @@
|
||||
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$ ]
|
@ -0,0 +1,21 @@
|
||||
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)
|
@ -0,0 +1,28 @@
|
||||
|
||||
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)
|
@ -0,0 +1,49 @@
|
||||
===============================================
|
||||
= UnrealIRCd v3.0 =
|
||||
===============================================
|
||||
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
|
||||
================
|
||||
* 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
|
||||
|
||||
* 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.
|
||||
|
||||
* Got a suggestion?
|
||||
===================
|
||||
* Mail it to unreal-dev@lists.sourceforge.net :) or catch one from
|
||||
the Unreal team online on IRC:)
|
||||
|
||||
|
@ -0,0 +1,84 @@
|
||||
#! /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
|
@ -0,0 +1,38 @@
|
||||
#************************************************************************
|
||||
#* 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
|
@ -0,0 +1,63 @@
|
||||
/************************************************************************
|
||||
* 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)
|
@ -0,0 +1,55 @@
|
||||
#!/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);
|
@ -0,0 +1,43 @@
|
||||
/* 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;
|
||||
}
|
||||
|
@ -0,0 +1,142 @@
|
||||
/************************************************************************
|
||||
* IRC - Internet Relay Chat, doc/AUTHORS
|
||||
* Copyright (C) 1990
|
||||
*
|
||||
* AUTHORS FILE:
|
||||
* This file attempts to remember all contributors to the IRC
|
||||
* developement. Names can be only added this file, no name
|
||||
* should never be removed. This file must be included into all
|
||||
* distributions of IRC and derived works.
|
||||
*
|
||||
* 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.
|
||||
*/
|
||||
|
||||
IRC was conceived of and written by Jarkko Oikarinen <jto@tolsun.oulu.fi>.
|
||||
IRC was originally written in University of Oulu, Computing Center.
|
||||
Jan 1991 - IRC 2.6 jto@tolsun.oulu.fi
|
||||
- Multiple Channels and protocol changes
|
||||
|
||||
Contributions were made by a cast of dozens, including the following:
|
||||
|
||||
Markku Jarvinen <mta@tut.fi>: Emacs-like editing facility for the client
|
||||
|
||||
Kimmo Suominen <kim@kannel.lut.fi>: HP-UX port
|
||||
|
||||
Jeff Trim <jtrim@orion.cair.du.edu>: enhancements and advice
|
||||
|
||||
Vijay Subramaniam <vijay@lll-winken.llnl.gov>: advice and ruthless publicity
|
||||
|
||||
Karl Kleinpaste <karl@cis.ohio-state.edu>: user's manual
|
||||
|
||||
Greg Lindahl <gl8f@virginia.edu>: AUTOMATON code, the Wumpus GM automaton,
|
||||
myriad bug fixes
|
||||
|
||||
Bill Wisner <wisner@hayes.fai.alaska.edu>: numerous bug fixes and code
|
||||
enhancements
|
||||
|
||||
Tom Davis <conslt16@zeus.unl.edu> and Tim Russell <russell@zeus.unl.edu>:
|
||||
VMS modifications
|
||||
|
||||
Markku Savela <msa@tel4.tel.vtt.fi>: advice, support, and being the
|
||||
incentive to do some of our *own* coding. :)
|
||||
|
||||
Tom Hopkins <hoppie@buengf.bu.edu>: bug fixes, quarantine lines,
|
||||
consolidation of various patches.
|
||||
|
||||
Christopher Davis <ckd@cs.bu.edu>: EFnet/Anet gateway coding,
|
||||
many automata ;), documentation fixing.
|
||||
|
||||
Helen Rose <hrose@cs.bu.edu>: documentation updating, and fixing.
|
||||
|
||||
Tom Hinds <rocker@bucsf.bu.edu>: emacs client updating.
|
||||
|
||||
Tim Miller <cerebus@bu-pub.bu.edu>: various server and client-breaking
|
||||
features.
|
||||
|
||||
Darren Reed <avalon@coombs.anu.edu.au>: various bug fixes and enhancements.
|
||||
Introduced nickname and channelname hash tables into the server.
|
||||
|
||||
The version 2.2 release was coordinated by Mike Bolotski
|
||||
<mikeb@salmon.ee.ubc.ca>.
|
||||
|
||||
The version 2.4 release was coordinated by Markku Savela and
|
||||
Chelsea Ashley Dyerman
|
||||
|
||||
The version 2.5.2 release was coordinated by Christopher Davis, Helen Rose,
|
||||
and Tom Hopkins.
|
||||
|
||||
The versions 2.6.2, 2.7 and 2.8 releases were coordinated by Darren Reed.
|
||||
|
||||
Contributions for the 2.8 release from the following people:
|
||||
Matthew Green <phone@coombs.anu.edu.au>
|
||||
Chuck Kane <ckane@ece.uiuc.edu>
|
||||
Matt Lyle <matt@oc.com>
|
||||
Vesa Ruokonen <ruokonen@lut.fi>
|
||||
|
||||
Markku Savela <Markku.Savela@vtt.fi> / April 1990
|
||||
Fixed various bugs in 2.2PL1 release server (2.2msa.4) and changed
|
||||
sockets to use non-blocking mode (2.2msa.9). [I have absolutely
|
||||
nothing to do with clients :-]
|
||||
|
||||
Chelsea Ashley Dyerman <chelsea@earth.cchem.berkeley.edu> / April 1990
|
||||
Rewrote the Makefiles, restructuring of source tree. Added libIrcd.a to
|
||||
the Makefile macros, numerous reformatting of server text messages, and
|
||||
added mkversion.sh to keep track of compilation statistics. Numerous
|
||||
bug fixes and enhancements, and co-coordinator of the 2.4 release.
|
||||
|
||||
Jarle Lyngaas (nmijl@alf.uib.no) added Note functions to ircd.
|
||||
|
||||
Armin Gruner <gruner@informatik.tu-muenchen.de> / May, June 1990:
|
||||
* Patched KILL-line feature for ircd.conf, works now.
|
||||
Enhancement: Time intervals can be specified in passwd-field.
|
||||
Result: KILL-Line is only active during these intervals
|
||||
* Patched PRIVMSG handling, now OPER can specify masks for sending
|
||||
private messages, advantage: msg to all at a specified server or host.
|
||||
* Little tests on irc 2.5 alpha, fixed some little typos in client code.
|
||||
Change: common/debug.c has been moved to ircd/s_debug.c, and a
|
||||
irc/c_debug.c has been created, for the benefit that wrong server msg
|
||||
are displayed if client does not recognize them. (strange, if a server
|
||||
sends an 'unknown command', isn't it?)
|
||||
|
||||
Tom Hopkins <hoppie@buengf.bu.edu> / September, October 1990:
|
||||
* Patched msa's K lines for servers (Q lines).
|
||||
* Consolidated several patches, including Stealth's logging patch.
|
||||
* Fixed several minor bugs.
|
||||
* Has done lots of other stuff that I can't seem to remember, but he
|
||||
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.. :/
|
||||
|
||||
Thanks go to those persons not mentioned here who have added their advice,
|
||||
opinions, and code to IRC.
|
||||
|
||||
Various modifications, bugreports, cleanups and testing by:
|
||||
|
||||
Hugo Calendar <hugo@ucscb.ucsc.edu>
|
||||
Bo Adler <adler@csvax.cs.caltech.edu>
|
||||
Michael Sandrof <ms5n+@andrew.cmu.edu>
|
||||
Jon Solomon <jsol@cs.bu.edu>
|
||||
Jan Peterson <jlp@hamblin.math.byu.edu>
|
||||
Nathan Glasser <nathan@brokaw.lcs.mit.edu>
|
||||
Helen Rose <hrose@eff.org>
|
||||
Mike Pelletier <stealth@caen.engin.umich.edu>
|
||||
Basalat Ali Raja <gwydion@tavi.rice.edu>
|
||||
Eric P. Scott <eps@toaster.sfsu.edu>
|
||||
Dan Goodwin <fornax@wpi.wpi.edu>
|
||||
Noah Friedman <friedman@ai.mit.edu>
|
||||
|
||||
[ $Id$ ]
|
@ -0,0 +1,128 @@
|
||||
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
|
||||