This repository has been archived by the owner. It is now read-only.
Lightweight channel service (defunct)
Switch branches/tags
Nothing to show
Clone or download
froo
Latest commit a4ad3e4 Mar 20, 2007
Permalink
Failed to load latest commit information.
clientcommands - check return status on fopen of /proc fs Mar 13, 2007
help Initial Import May 5, 2005
servercommands Initial Import May 5, 2005
CODING-STYLE Initial Import May 5, 2005
COMPILATION Initial Import May 5, 2005
COPYING Initial Import May 5, 2005
ChangeLog - Updates 'founder' if no original founder is set Dec 29, 2005
LICENSE Initial Import May 5, 2005
Makefile Initial Import May 5, 2005
README Initial Import May 5, 2005
a_string.c Initial Import May 5, 2005
accountsdb.c Initial Import May 5, 2005
accountsdb.h Initial Import May 5, 2005
allocate.c Initial Import May 5, 2005
base64.c Initial Import May 5, 2005
base64.h Initial Import May 5, 2005
channels.c Initial Import May 5, 2005
channels.h Initial Import May 5, 2005
channelsdb.c Initial Import May 5, 2005
channelsdb.h Initial Import May 5, 2005
chattr.tab.c Initial Import May 5, 2005
connecttoserver.c Initial Import May 5, 2005
datastructures.txt Initial Import May 5, 2005
db.c Initial Import May 5, 2005
dblist.c as requested by ben, add account used in logmsg. Jan 6, 2006
dblist.h Initial Import May 5, 2005
error.c Initial Import May 5, 2005
faq.html Initial Import May 5, 2005
general.c Initial Import May 5, 2005
getlinefromchunk.c Initial Import May 5, 2005
globalexterns.h Initial Import May 5, 2005
hash.c Initial Import May 5, 2005
lightweight.c Initial Import May 5, 2005
lightweight.conf.example Initial Import May 5, 2005
lightweight.h changes from production code. Mar 20, 2007
log.c Initial Import May 5, 2005
manual-english.html Initial Import May 5, 2005
manual-german.html Initial Import May 5, 2005
parseline.c Update to parse and remove timestamps and userids Mar 4, 2007
readchunk.c Initial Import May 5, 2005
readconfig.c Initial Import May 5, 2005
restoredbfromdisk.c Initial Import May 5, 2005
savedbtodisk.c Initial Import May 5, 2005
sendinittoserver.c Make L auth to the network when it connects Nov 15, 2006
serversettings.h Initial Import May 5, 2005
strcmp.c Initial Import May 5, 2005
strcmp.h Initial Import May 5, 2005
usersdb.c Initial Import May 5, 2005
usersdb.h Initial Import May 5, 2005

README

lightweight


License:

GPL, see the LICENSE file.


Installation:

See the COMPILATION file.


Purpose:

lightweight is a chanserv for ircu's p10 protocol used by QuakeNet (and Undernet - thanks 
for making your ircd GPL'ed guys, it rocks). lightweight is written to take the main load 
off of QuakeNet's older chanserv Q. The main goal for lightweight is to take over the large 
amount of smaller clanchannels that only use a limited set of Q's functionality. As a small 
bonus lightweight will probably also make life easier for the large amount of non-gaming 
channels that QuakeNet has, as lightweight will be added automatically to channels 
requesting it (a big problem on QuakeNet today is that Q is restricted to gamingrelated 
channels only, and hence the adding of Q to a channel require a check for if the channel is 
gaminrelated).


Basis:

QuakeNet has grown rapidly the last couple of years (see www.netsplit.de). We're 
approximately 75k users online simultaneously every night and have a steady 50k channels. Q 
sits in about half of these channels.


Features:

The set of features is supposed to be very limited as lightweight will have to be held 
resourcelight (hence lightweight) to hold the majority of QuakeNet channels. Planned 
features for lightweight is:
- Basic auth and command system for users.
- Channelregistration through a webinterface.
- Opping/voicing of authed users in corresponding registered channels.
- Clearing channel modes deopping all users (through another service).
- Welcome messages (optional).
- Topic preservations (optional).


Implementation:

As lightweight has to be resource light, some tricks has been done to ensure this.
The most important difference from the other services on QuakeNet and from normal chanservs 
is that lightweight does not keep track of the current channels on the network nor the 
user<->channel relationship. This is to save both memory and processor.
To save burstsize lightweight has been designed to not join any channels. This might confuse 
users at first who are used at having Q join a channel to show that its there, but as this 
design has been implemented at other networks with succes users should be able to get used 
to it.
The general description of datastructures can be found in datastructures.txt.


Programmers and Copyrightholders:

Rasmus J. Have aka. Bigfoot
David Mansell aka. splidge
Raimo Nikkilä aka. strutsi
Fredrik Söderblom aka. froo


Thanks to:

The QuakeNet Users, The QuakeNet Helpers and The QuakeNet Operteam.