sithnet-dev-patches Mailing List for SithNet Development (Page 2)
Brought to you by:
darthsidious_
You can subscribe to this list here.
2003 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
(12) |
Jul
(5) |
Aug
(25) |
Sep
(3) |
Oct
(14) |
Nov
|
Dec
(5) |
---|---|---|---|---|---|---|---|---|---|---|---|---|
2004 |
Jan
(2) |
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
From: Tim I. <dar...@us...> - 2003-08-30 22:24:31
|
Committer : Tim Ireland <dar...@us...> CVSROOT : /cvsroot/sithnet-dev Module : gnuworld-sithnet Commit time: 2003-08-30 22:24:29 UTC Modified files: mod.cservice/ADMINKILLCommand.cc mod.cservice/KILLCommand.cc Log message: bug fixes, these currently do not work. ---------------------- diff included ---------------------- Index: gnuworld-sithnet/mod.cservice/ADMINKILLCommand.cc diff -u gnuworld-sithnet/mod.cservice/ADMINKILLCommand.cc:1.1 gnuworld-sithnet/mod.cservice/ADMINKILLCommand.cc:1.2 --- gnuworld-sithnet/mod.cservice/ADMINKILLCommand.cc:1.1 Thu Aug 21 16:14:13 2003 +++ gnuworld-sithnet/mod.cservice/ADMINKILLCommand.cc Sat Aug 30 15:24:19 2003 @@ -4,13 +4,13 @@ * 23/06/2003 - Tim Ireland <dar...@us...> * Initial Version. * Make purely to kill time, if it works cool :) - * If it doesnt it may never. + * If it doesnt it may never - if you want to do a bugfix and send it to me, feel free :). * Based from the mod.nickserv RECOVERCommand * * This is similar to my KILLCommand.cc, except you can #define wether or not * you want to use it in your cservice_config.h file ( if you choose to * enable, be aware that all *750+ admins can use it... ) - * $Id: ADMINKILLCommand.cc,v 1.1 2003/08/21 23:14:13 darthsidious_ Exp $ + * $Id: ADMINKILLCommand.cc,v 1.2 2003/08/30 22:24:19 darthsidious_ Exp $ */ #include <string> @@ -18,59 +18,56 @@ #include <iostream> #include <iomanip> +#include "Network.h" +#include "iClient.h" //is this needed? put in because compiler came back with iClient not defined, now 'not declared in this scope' +#include "NetworkTarget.h" // needed? y/n? #include "StringTokenizer.h" #include "ELog.h" #include "cservice.h" #include "responses.h" #include "networkData.h" #include "cservice_config.h" -#include "Network.h" -const char KILLCommand_cc_rcsId[] = "$Id: ADMINKILLCommand.cc,v 1.1 2003/08/21 23:14:13 darthsidious_ Exp $" ; +// are any other #nclude's needed? - i really need to relearn all this :S + +const char ADMINKILLCommand_cc_rcsId[] = "$Id: ADMINKILLCommand.cc,v 1.2 2003/08/30 22:24:19 darthsidious_ Exp $" ; namespace gnuworld { using namespace gnuworld; -bool KILLCommand::Exec( iClient* theClient, const string& Message ) +bool ADMINKILLCommand::Exec( iClient* theClient, const string& Message ) { -bot->incStat("COMMANDS.ADMINKILL"); + bot->incStat("COMMANDS.ADMINKILL"); -#ifdef USE_ADMINKILL + #ifdef USE_ADMINKILL -StringTokenizer st( Message ) ; -if( st.size() < 3 ) + StringTokenizer st( Message ) ; + if( st.size() < 3 ) { - Usage(theClient); - return true; + Usage(theClient); + return true; } -/* - * Fetch the sqlUser record attached to this client. If there isn't one, - * they aren't logged in - tell them they should be. - */ + /* + * Fetch the sqlUser record attached to this client. If there isn't one, + * they aren't logged in - tell them they should be. + */ -sqlUser* theUser = bot->isAuthed(theClient, false); -if (!theUser) - { - return false; - } + sqlUser* theUser = bot->isAuthed(theClient, true); + if (!theUser) return false; -int admLevel = bot->getAdminAccessLevel(theUser); -// int oLevel = bot->GetOfficialAccessLevel(theUser); -if (admLevel < level::adminkill) // && (oLevel < level::official::scoder) - -/* keep this command 'quiet' i.e. dont let unauthorised user's - * know anyhting about it - * - bot->Notice(theClient, - bot->getResponse(theUser, - language::insuf_access, - string("Sorry, you have insufficient access to -perform that command."))); - */ - return false; + sqlChannel* admChan = bot->getChannelRecord("*"); + + int admLevel = bot->getAccessLevel(theUser, admChan); + if (admLevel < level::adminkill) + { + bot->Notice(theClient, + bot->getResponse(theUser, + language::insuf_access, + string("Sorry, you have insufficient access to perform that command."))); + return false; } /* @@ -79,7 +76,7 @@ */ iClient* Target = Network->findNick( st[ 2 ] ) ; -if( NULL == Target ) +if( iClient == NULL ) { bot->Notice( theClient, "Unable to find nick: %s", st[ 2 ].c_str() ) ; Index: gnuworld-sithnet/mod.cservice/KILLCommand.cc diff -u gnuworld-sithnet/mod.cservice/KILLCommand.cc:1.1 gnuworld-sithnet/mod.cservice/KILLCommand.cc:1.2 --- gnuworld-sithnet/mod.cservice/KILLCommand.cc:1.1 Thu Aug 21 16:14:13 2003 +++ gnuworld-sithnet/mod.cservice/KILLCommand.cc Sat Aug 30 15:24:19 2003 @@ -7,7 +7,7 @@ * If it doesnt it may never. * Based from the mod.nickserv RECOVERCommand * - * $Id: KILLCommand.cc,v 1.1 2003/08/21 23:14:13 darthsidious_ Exp $ + * $Id: KILLCommand.cc,v 1.2 2003/08/30 22:24:19 darthsidious_ Exp $ */ #include <string> @@ -17,9 +17,9 @@ #include "responses.h" #include "networkData.h" #include "cservice_config.h" -#include "Network.h" +#include "levels.h" -const char KILLCommand_cc_rcsId[] = "$Id: KILLCommand.cc,v 1.1 2003/08/21 23:14:13 darthsidious_ Exp $" ; +const char KILLCommand_cc_rcsId[] = "$Id: KILLCommand.cc,v 1.2 2003/08/30 22:24:19 darthsidious_ Exp $" ; namespace gnuworld { @@ -29,54 +29,46 @@ bool KILLCommand::Exec( iClient* theClient, const string& Message ) { -bot->incStat("COMMANDS.KILL"); + bot->incStat("COMMANDS.KILL"); -StringTokenizer st( Message ) ; -if( st.size() < 3 ) + StringTokenizer st( Message ) ; + if( st.size() < 3 ) { - Usage(theClient); - return true; + Usage(theClient); + return true; } -/* - * Fetch the sqlUser record attached to this client. If there isn't one, - * they aren't logged in - tell them they should be. - */ + /* + * Fetch the sqlUser record attached to this client. If there isn't one, + * they aren't logged in - tell them they should be. + */ -sqlUser* theUser = bot->isAuthed(theClient, false); -if (!theUser) - { - return false; - } + sqlUser* theUser = bot->isAuthed(theClient, true); + if (!theUser) return false; -int aLevel = bot->getAdminAccessLevel(theUser); -/* int oLevel = bot->GetOfficialAccessLevel(theUser); */ -if (aLevel < level::kill) - -/* keep this command 'quiet' i.e. dont let unauthorised user's - * know anyhting about it - * - bot->Notice(theClient, - bot->getResponse(theUser, - language::insuf_access, - string("Sorry, you have insufficient access to -perform that command."))); - */ - return false; + sqlChannel* admChan = bot->getChannelRecord("*"); + + int admLevel = bot->getAccessLevel(theUser, admChan); + if (admLevel < level::adminkill) + { + bot->Notice(theClient, + bot->getResponse(theUser, + language::insuf_access, + string("Sorry, you have insufficient access to perform that command."))); + return false; } -iClient* Target = Network->findNick( st[ 2 ] ) ; -if( NULL == Target ) +iClient* theClient = Network->findNick( st[ 2 ] ) ; +if( iClient == NULL ) { bot->Notice( theClient, "Unable to find nick: %s", st[ 2 ].c_str() ) ; return true ; } - if( Target->getMode(iClient::MODE_SERVICES)) + if( theClient->getMode(iClient::MODE_SERVICES)) { - bot->Notice(theClient,"Cannot Kill %s as it appears to be a -Network Service.",st[ 2 ].c_str()); + bot->Notice(theClient,"Cannot Kill %s as it appears to be a Network Service.",st[ 3 ].c_str()); return false; } } @@ -88,7 +80,7 @@ bot->Kill(targetClient, " %s ",reason.c_str()); -bot->Notice(theClient, "Succesfully Killed " + theClient->getNickName()); +bot->Notice(theClient, "Succesfully Killed " + iClient->getNickName()); bot->logAdminMessage("KILL %s",theClient->getNickName.c_str()); ----------------------- End of diff ----------------------- |
From: Tim I. <dar...@us...> - 2003-08-23 01:46:57
|
Committer : Tim Ireland <dar...@us...> CVSROOT : /cvsroot/sithnet-dev Module : gnuworld-sithnet Commit time: 2003-08-23 01:46:56 UTC Removed files: mod.antispamserv/README Log message: Removed module ---------------------- diff included ---------------------- Index: gnuworld-sithnet/mod.antispamserv/README diff -u gnuworld-sithnet/mod.antispamserv/README:1.1 gnuworld-sithnet/mod.antispamserv/README:removed --- gnuworld-sithnet/mod.antispamserv/README:1.1 Fri Aug 22 17:16:34 2003 +++ gnuworld-sithnet/mod.antispamserv/README Fri Aug 22 18:46:56 2003 @@ -1,2 +0,0 @@ -Started work on an 'Anti-Spam Serv' module. this will be similar to the -'S' bot in use on QuakeNet and ExclusionZoneIRC ----------------------- End of diff ----------------------- |
From: Tim I. <dar...@us...> - 2003-08-23 01:21:36
|
Committer : Tim Ireland <dar...@us...> CVSROOT : /cvsroot/sithnet-dev Module : gnuworld-sithnet Commit time: 2003-08-23 01:21:35 UTC Modified files: Makefile.in Log message: added new moddir's to makefile ---------------------- diff included ---------------------- Index: gnuworld-sithnet/Makefile.in diff -u gnuworld-sithnet/Makefile.in:1.1.1.1 gnuworld-sithnet/Makefile.in:1.2 --- gnuworld-sithnet/Makefile.in:1.1.1.1 Mon Aug 18 13:28:16 2003 +++ gnuworld-sithnet/Makefile.in Fri Aug 22 18:21:25 2003 @@ -50,6 +50,8 @@ CFLAGS = @CFLAGS@ COND_DBDIR_FALSE = @COND_DBDIR_FALSE@ COND_DBDIR_TRUE = @COND_DBDIR_TRUE@ +COND_MODANTISPAMSERV_FALSE = @COND_MODANTISPAMSERV_FALSE@ +COND_MODANTISPAMSERV_TRUE = @COND_MODANTISPAMSERV_TRUE@ COND_MODCCONTROL_FALSE = @COND_MODCCONTROL_FALSE@ COND_MODCCONTROL_TRUE = @COND_MODCCONTROL_TRUE@ COND_MODCLIENTEXAMPLE_FALSE = @COND_MODCLIENTEXAMPLE_FALSE@ @@ -62,12 +64,16 @@ COND_MODDRONESCAN_TRUE = @COND_MODDRONESCAN_TRUE@ COND_MODGNUTEST_FALSE = @COND_MODGNUTEST_FALSE@ COND_MODGNUTEST_TRUE = @COND_MODGNUTEST_TRUE@ +COND_MODLIGHTWEIGHT_FALSE = @COND_MODLIGHTWEIGHT_FALSE@ +COND_MODLIGHTWEIGHT_TRUE = @COND_MODLIGHTWEIGHT_TRUE@ COND_MODNICKSERV_FALSE = @COND_MODNICKSERV_FALSE@ COND_MODNICKSERV_TRUE = @COND_MODNICKSERV_TRUE@ COND_MODSCANNER_FALSE = @COND_MODSCANNER_FALSE@ COND_MODSCANNER_TRUE = @COND_MODSCANNER_TRUE@ COND_MODSTATS_FALSE = @COND_MODSTATS_FALSE@ COND_MODSTATS_TRUE = @COND_MODSTATS_TRUE@ +COND_MODUWORLD_FALSE = @COND_MODUWORLD_FALSE@ +COND_MODUWORLD_TRUE = @COND_MODUWORLD_TRUE@ COND_TESTDIR_FALSE = @COND_TESTDIR_FALSE@ COND_TESTDIR_TRUE = @COND_TESTDIR_TRUE@ CPP = @CPP@ @@ -165,6 +171,8 @@ target_alias = @target_alias@ threadLib = @threadLib@ +@COND_MODANTISPAMSERV_TRUE@MODANTISPAMSERV = mod.antispamserv + @COND_MODCCONTROL_TRUE@MODCCONTROL = mod.ccontrol @COND_MODCLIENTEXAMPLE_TRUE@MODCLIENTEXAMPLE = mod.clientExample @@ -177,41 +185,51 @@ @COND_MODGNUTEST_TRUE@MODGNUTEST = mod.gnutest +@COND_MODLIGHTWEIGHT_TRUE@MODLIGHTWEIGHT = mod.lightweight + @COND_MODNICKSERV_TRUE@MODNICKSERV = mod.nickserv @COND_MODSCANNER_TRUE@MODSCANNER = mod.scanner @COND_MODSTATS_TRUE@MODSTATS = mod.stats +@COND_MODUWORLD_TRUE@MODUWORLD = mod.uworld + @COND_TESTDIR_TRUE@TESTDIR = test @COND_DBDIR_TRUE@DBDIR = db SUBDIRS = libgnuworld libltdl src @NEW_MODS@ \ + $(MODANTISPAMSERV) \ $(MODCCONTROL) \ $(MODCLIENTEXAMPLE) \ $(MODCLONER) \ $(MODCSERVICE) \ $(MODDRONESCAN) \ $(MODGNUTEST) \ + $(MODLIGHTWEIGHT) \ $(MODNICKSERV) \ $(MODSCANNER) \ $(MODSTATS) \ + $(MODUWORLD) \ $(TESTDIR) \ $(DBDIR) \ libircu -EXTRA_DIST = bin/ccontrol.example.conf.in \ +EXTRA_DIST = bin/antispamserv.example.conf.in \ + bin/ccontrol.example.conf.in \ bin/clientExample.example.conf.in \ bin/cloner.example.conf.in \ bin/cservice.example.conf.in \ bin/dronescan.example.conf.in \ bin/gnutest.example.conf.in \ bin/GNUWorld.example.conf.in \ + bin/lightweight.example.conf.in \ bin/nickserv.example.conf.in \ bin/scanner.example.conf.in \ bin/stats.example.conf.in \ + bin/uworld.example.conf.in \ bin/server_command_map \ contrib/00INDEX.TXT \ contrib/chktrans.py \ @@ -313,7 +331,8 @@ bin/cservice.example.conf bin/gnutest.example.conf \ bin/GNUWorld.example.conf bin/nickserv.example.conf \ bin/scanner.example.conf bin/stats.example.conf \ - bin/dronescan.example.conf + bin/dronescan.example.conf bin/antispamserv.example.conf.in \ + bin/lightweight.example.conf.in bi/uworld.example.conf.in DIST_SOURCES = RECURSIVE_TARGETS = info-recursive dvi-recursive pdf-recursive \ ----------------------- End of diff ----------------------- |
From: Tim I. <dar...@us...> - 2003-08-23 01:10:49
|
Committer : Tim Ireland <dar...@us...> CVSROOT : /cvsroot/sithnet-dev Module : gnuworld-sithnet Commit time: 2003-08-23 01:10:48 UTC Modified files: Makefile.am Log message: added new moddir's to makefile ---------------------- diff included ---------------------- Index: gnuworld-sithnet/Makefile.am diff -u gnuworld-sithnet/Makefile.am:1.1.1.1 gnuworld-sithnet/Makefile.am:1.2 --- gnuworld-sithnet/Makefile.am:1.1.1.1 Mon Aug 18 13:28:16 2003 +++ gnuworld-sithnet/Makefile.am Fri Aug 22 18:10:38 2003 @@ -1,8 +1,12 @@ -## $Id: Makefile.am,v 1.1.1.1 2003/08/18 20:28:16 darthsidious_ Exp $ +## $Id: Makefile.am,v 1.2 2003/08/23 01:10:38 darthsidious_ Exp $ ## test @SET_MAKE@ +if COND_MODANTISPAMSERV + MODANTISPAMSERV = mod.antispamserv +endif + if COND_MODCCONTROL MODCCONTROL = mod.ccontrol endif @@ -27,6 +31,9 @@ MODGNUTEST = mod.gnutest endif +if COND_MODLIGHTWEIGHT + MODLIGHTWEIGHT = mod.lightweight + if COND_MODNICKSERV MODNICKSERV = mod.nickserv endif @@ -39,6 +46,9 @@ MODSTATS = mod.stats endif +if COND_MODUWORLD + MODUWORLD = mod.uworld + if COND_TESTDIR TESTDIR = test endif @@ -54,9 +64,11 @@ $(MODCSERVICE) \ $(MODDRONESCAN) \ $(MODGNUTEST) \ + $(MODLIGHTWEIGHT) \ $(MODNICKSERV) \ $(MODSCANNER) \ $(MODSTATS) \ + $(MODUWORLD) \ $(TESTDIR) \ $(DBDIR) \ libircu @@ -68,9 +80,11 @@ bin/dronescan.example.conf.in \ bin/gnutest.example.conf.in \ bin/GNUWorld.example.conf.in \ + bin/lightweight.example.conf.in \ bin/nickserv.example.conf.in \ bin/scanner.example.conf.in \ bin/stats.example.conf.in \ + bin/uworld.example.conf.in \ bin/server_command_map \ contrib/00INDEX.TXT \ contrib/chktrans.py \ ----------------------- End of diff ----------------------- |
From: Tim I. <dar...@us...> - 2003-08-23 00:17:39
|
Committer : Tim Ireland <dar...@us...> CVSROOT : /cvsroot/sithnet-dev Module : gnuworld-sithnet Commit time: 2003-08-23 00:17:33 UTC Log message: Directory /cvsroot/sithnet-dev/gnuworld-sithnet/mod.uworld added to the repository |
From: Tim I. <dar...@us...> - 2003-08-23 00:16:44
|
Committer : Tim Ireland <dar...@us...> CVSROOT : /cvsroot/sithnet-dev Module : gnuworld-sithnet Commit time: 2003-08-23 00:16:44 UTC Added files: mod.antispamserv/README Log message: started work on an antispam module similar to quakenet/ezirc's S bot ---------------------- diff included ---------------------- Index: gnuworld-sithnet/mod.antispamserv/README diff -u /dev/null gnuworld-sithnet/mod.antispamserv/README:1.1 --- /dev/null Fri Aug 22 17:16:44 2003 +++ gnuworld-sithnet/mod.antispamserv/README Fri Aug 22 17:16:34 2003 @@ -0,0 +1,2 @@ +Started work on an 'Anti-Spam Serv' module. this will be similar to the +'S' bot in use on QuakeNet and ExclusionZoneIRC ----------------------- End of diff ----------------------- |
From: Tim I. <dar...@us...> - 2003-08-23 00:15:13
|
Committer : Tim Ireland <dar...@us...> CVSROOT : /cvsroot/sithnet-dev Module : gnuworld-sithnet Commit time: 2003-08-23 00:15:11 UTC Log message: Directory /cvsroot/sithnet-dev/gnuworld-sithnet/mod.antispamserv added to the repository |
From: Tim I. <dar...@us...> - 2003-08-22 10:25:49
|
Committer : Tim Ireland <dar...@us...> CVSROOT : /cvsroot/sithnet-dev Module : gnuworld-sithnet Commit time: 2003-08-21 17:38:07 UTC Modified files: mod.cservice/Makefile.am mod.cservice/cservice.cc mod.cservice/cserviceCommands.h mod.cservice/levels.h Added files: mod.cservice/ADDUSERIDCommand.cc Log message: Implemented OUTsider's ADDUSERIDCommand dont forget to run autoconf etc on these.. ---------------------- diff included ---------------------- Index: gnuworld-sithnet/mod.cservice/ADDUSERIDCommand.cc diff -u /dev/null gnuworld-sithnet/mod.cservice/ADDUSERIDCommand.cc:1.1 --- /dev/null Thu Aug 21 10:38:07 2003 +++ gnuworld-sithnet/mod.cservice/ADDUSERIDCommand.cc Thu Aug 21 10:37:57 2003 @@ -0,0 +1,175 @@ +/* ADDUSERIDCommand.cc + * Adds a user to the database, usefull should pages not be available or obsolete + */ + +#include <string> +#include <iomanip.h> + +#include "md5hash.h" +#include "StringTokenizer.h" +#include "ELog.h" +#include "cservice.h" +#include "responses.h" +#include "networkData.h" +#include "levels.h" +#include "libpq++.h" +#include "responses.h" +#include "Network.h" + + +const char ADDUSERIDCommand_cc_rcsId[] = "$Id: ADDUSERIDCommand.cc,v 1.1 2003/08/21 17:37:57 darthsidious_ Exp $" ; + +namespace gnuworld +{ + +using namespace gnuworld; + +bool ADDUSERIDCommand::Exec( iClient* theClient, const string& Message ) +{ + + const char validChars[] = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789.$*_"; + + StringTokenizer st( Message ) ; + if( st.size() < 4 ) + { + Usage(theClient); + return true; + } + + + /* + * Fetch the sqlUser record attached to this client. If there isn't one, + * they aren't logged in - tell them they should be. + */ + + sqlUser* theUser = bot->isAuthed(theClient, true); + if (!theUser) return false; + + + /* + * Check Command access + */ + int level = bot->getAdminAccessLevel(theUser); + if (level < level::adduserid) + { + bot->Notice(theClient, + bot->getResponse(theUser, + language::insuf_access, + string("You have insufficient access to perform that command."))); + return false; + } + + /* + * User exists?! Bail out, we don't want clones! + */ + sqlUser* Target = bot->getUserRecord(st[1]); + if(Target) + { + bot->Notice(theClient, "Sorry, %s is already present in the database" ,st[1].c_str()); + return false; + } + + /* Try and stop people using an invalid syntax.. */ + if (string_lower(st[1]) == string_lower(st[2]) ) + { + bot->Notice(theClient, "The passphrase cannot be the same as the username"); + return false; + } + + /* Work out some salt. */ + string salt; + + // TODO: Why calling srand() here? + srand(clock() * 1000000); + + // TODO: What is the significance of '8' here? + // Schema states a fixed 8 bytes of random salt are used in generating the + // password. + for ( unsigned short int i = 0 ; i < 8; i++) + { + int randNo = 1+(int) (64.0*rand()/(RAND_MAX+1.0)); + salt += validChars[randNo]; + } + + /* Work out a MD5 hash of our salt + password */ + + md5 hash; // MD5 hash algorithm object. + md5Digest digest; // MD5Digest algorithm object. + + // Prepend the salt to the password + string newPass = salt + st[2]; + + // Take the md5 hash of this newPass string + hash.update( (const unsigned char *)newPass.c_str(), newPass.size() ); + hash.report( digest ); + + /* Convert to Hex */ + + int data[ MD5_DIGEST_LENGTH ] = { 0 } ; + for( size_t i = 0 ; i < MD5_DIGEST_LENGTH ; ++i ) + { + data[ i ] = digest[ i ] ; + } + + strstream output; + output << hex; + output.fill('0'); + for( size_t ii = 0; ii < MD5_DIGEST_LENGTH; ii++ ) + { + output << setw(2) << data[ii]; + } + output << ends; + + // Prepend the md5 hash to the salt + string finalPassword = salt + output.str(); + + /* + * Check if the email is a correct one + */ + StringTokenizer st2( st[ 3 ], '@' ) ; + + if( (st2.size() != 2) || (st2[ 1 ].size() > 128 ) ) + { + bot->Notice(theClient, "Sorry, this email address is not valid."); + return false ; + } + + /* + * Finally done, let's rock and roll.... + */ + + strstream theQuery ; + theQuery << "INSERT INTO users (user_name, password, email, language_id, last_updated_by, last_updated ) " + << "VALUES (" + << "'" << st[1] << "'," + << "'" << finalPassword.c_str() << "'," + << "'" << st[3] << "',1," + << "'(" << theUser->getUserName() << ") " + << theClient->getNickUserHost() << "'," + << bot->currentTime() + << ");" + << ends; + +#ifdef LOG_SQL + elog << "ADDUSERID::sqlQuery> " + << theQuery.str() + << endl; +#endif + + ExecStatusType status = bot->SQLDb->Exec(theQuery.str()) ; + delete[] theQuery.str() ; + + if( PGRES_COMMAND_OK != status ) + { + bot->dbErrorMessage(theClient); + return false ; + } + + bot->Notice(theClient, "%s has been added to the database with email address %s and password %s" ,st[1].c_str(), st[3].c_str(), st[2].c_str()); + + delete[] output.str() ; + return true; + } + + +} // namespace gnuworld Index: gnuworld-sithnet/mod.cservice/Makefile.am diff -u gnuworld-sithnet/mod.cservice/Makefile.am:1.1.1.1 gnuworld-sithnet/mod.cservice/Makefile.am:1.2 --- gnuworld-sithnet/mod.cservice/Makefile.am:1.1.1.1 Mon Aug 18 13:30:45 2003 +++ gnuworld-sithnet/mod.cservice/Makefile.am Thu Aug 21 10:37:57 2003 @@ -1,5 +1,5 @@ ## Process this file with automake to produce Makefile.in -# "$Id: Makefile.am,v 1.1.1.1 2003/08/18 20:30:45 darthsidious_ Exp $" +# "$Id: Makefile.am,v 1.2 2003/08/21 17:37:57 darthsidious_ Exp $" lib_LTLIBRARIES = libcservice.la libcservice_la_LDFLAGS = -module -export-dynamic -L@PGSQL_LIB@ \ @@ -66,7 +66,8 @@ UNFORCECommand.cc \ UNSUSPENDCommand.cc \ VERIFYCommand.cc \ - VOICECommand.cc + VOICECommand.cc \ + ADDUSERIDCommand.cc EXTRA_DIST = constants.h \ cserviceCommands.h \ Index: gnuworld-sithnet/mod.cservice/cservice.cc diff -u gnuworld-sithnet/mod.cservice/cservice.cc:1.2 gnuworld-sithnet/mod.cservice/cservice.cc:1.3 --- gnuworld-sithnet/mod.cservice/cservice.cc:1.2 Wed Aug 20 08:33:03 2003 +++ gnuworld-sithnet/mod.cservice/cservice.cc Thu Aug 21 10:37:57 2003 @@ -18,7 +18,7 @@ * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, * USA. * - * $Id: cservice.cc,v 1.2 2003/08/20 15:33:03 darthsidious_ Exp $ + * $Id: cservice.cc,v 1.3 2003/08/21 17:37:57 darthsidious_ Exp $ */ #include <new> @@ -223,6 +223,7 @@ RegisterCommand(new UNFORCECommand(this, "UNFORCE", "<#channel>", 8)); RegisterCommand(new SERVNOTICECommand(this, "SERVNOTICE", "<#channel> <text>", 5)); RegisterCommand(new SAYCommand(this, "SAY", "<#channel> <text>", 5)); +RegisterCommand(new ADDUSERIDCommand(this, "ADDUSERID", "<userid> <password> <email>", 5)); RegisterCommand(new QUOTECommand(this, "QUOTE", "<text>", 5)); RegisterCommand(new REHASHCommand(this, "REHASH", "[translations | help]]", 5)); RegisterCommand(new STATSCommand(this, "STATS", "", 8)); Index: gnuworld-sithnet/mod.cservice/cserviceCommands.h diff -u gnuworld-sithnet/mod.cservice/cserviceCommands.h:1.1.1.1 gnuworld-sithnet/mod.cservice/cserviceCommands.h:1.2 --- gnuworld-sithnet/mod.cservice/cserviceCommands.h:1.1.1.1 Mon Aug 18 13:30:44 2003 +++ gnuworld-sithnet/mod.cservice/cserviceCommands.h Thu Aug 21 10:37:57 2003 @@ -16,11 +16,11 @@ * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, * USA. * - * $Id: cserviceCommands.h,v 1.1.1.1 2003/08/18 20:30:44 darthsidious_ Exp $ + * $Id: cserviceCommands.h,v 1.2 2003/08/21 17:37:57 darthsidious_ Exp $ */ #ifndef __CSERVICECOMMANDS_H -#define __CSERVICECOMMANDS_H "$Id: cserviceCommands.h,v 1.1.1.1 2003/08/18 20:30:44 darthsidious_ Exp $" +#define __CSERVICECOMMANDS_H "$Id: cserviceCommands.h,v 1.2 2003/08/21 17:37:57 darthsidious_ Exp $" #include <string> @@ -148,6 +148,7 @@ DECLARE_COMMAND( SERVNOTICE ) DECLARE_COMMAND( SAY ) DECLARE_COMMAND( QUOTE ) +DECLARE_COMMAND( ADDUSERID ) DECLARE_COMMAND( REHASH ) DECLARE_COMMAND( STATS ) DECLARE_COMMAND( ADDCOMMENT ) Index: gnuworld-sithnet/mod.cservice/levels.h diff -u gnuworld-sithnet/mod.cservice/levels.h:1.2 gnuworld-sithnet/mod.cservice/levels.h:1.3 --- gnuworld-sithnet/mod.cservice/levels.h:1.2 Wed Aug 20 08:33:03 2003 +++ gnuworld-sithnet/mod.cservice/levels.h Thu Aug 21 10:37:57 2003 @@ -21,11 +21,11 @@ * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, * USA. * - * $Id: levels.h,v 1.2 2003/08/20 15:33:03 darthsidious_ Exp $ + * $Id: levels.h,v 1.3 2003/08/21 17:37:57 darthsidious_ Exp $ */ #ifndef __LEVELS_H -#define __LEVELS_H "$Id: levels.h,v 1.2 2003/08/20 15:33:03 darthsidious_ Exp $" +#define __LEVELS_H "$Id: levels.h,v 1.3 2003/08/21 17:37:57 darthsidious_ Exp $" namespace gnuworld { @@ -85,6 +85,7 @@ const int servnotice = 800; const int say = 800; + const int adduserid = 900; // Debug Commands const int shutdown = 900; ----------------------- End of diff ----------------------- |
From: Tim I. <dar...@us...> - 2003-08-22 02:48:47
|
Committer : Tim Ireland <dar...@us...> CVSROOT : /cvsroot/sithnet-dev Module : gnuworld-sithnet Commit time: 2003-08-21 17:43:14 UTC Modified files: ChangeLog.sithnet Log message: Implemented OUTsider's ADDUSERIDCommand dont forget to run autoconf etc on these... ---------------------- diff included ---------------------- Index: gnuworld-sithnet/ChangeLog.sithnet diff -u gnuworld-sithnet/ChangeLog.sithnet:1.2 gnuworld-sithnet/ChangeLog.sithnet:1.3 --- gnuworld-sithnet/ChangeLog.sithnet:1.2 Wed Aug 20 08:40:35 2003 +++ gnuworld-sithnet/ChangeLog.sithnet Thu Aug 21 10:43:04 2003 @@ -1,3 +1,11 @@ +2003-08-21 Tim Ireland <dar...@us...> + * mod.cservice/ADDUSERIDCommand.cc mod.cservice/cservice.cc + mod.cservice/cserviceCommands.h mod.cservice/levels.h + mod.cservice/Makefile.am: + Implemented OUTsider's ADDUSERIDCommand patch, if u use this u + will need to manually update ur makefiles via + aclocal/autoconf/automake. + 2003-08-20 Tim Ireland <dar...@us...> * mod.cservice/cservice.cc mod.cservice/cservice.h mod.cservice/cservice_Config.h mod.cservice/responses.h ----------------------- End of diff ----------------------- |
From: Tim I. <dar...@us...> - 2003-08-21 23:15:54
|
Committer : Tim Ireland <dar...@us...> CVSROOT : /cvsroot/sithnet-dev Module : gnuworld-sithnet Commit time: 2003-08-21 23:15:48 UTC Modified files: ChangeLog.sithnet Added files: README.SithNet Log message: new commands added. see README.SithNet and ChangeLog.sithnet for info. ---------------------- diff included ---------------------- Index: gnuworld-sithnet/ChangeLog.sithnet diff -u gnuworld-sithnet/ChangeLog.sithnet:1.3 gnuworld-sithnet/ChangeLog.sithnet:1.4 --- gnuworld-sithnet/ChangeLog.sithnet:1.3 Thu Aug 21 10:43:04 2003 +++ gnuworld-sithnet/ChangeLog.sithnet Thu Aug 21 16:15:38 2003 @@ -1,3 +1,11 @@ +2003-08-22 Tim Ireland <dar...@us...> + * mod.cservice/ADMINKILLCommand.cc mod.cservice/levels.h + mod.cservice/KILLCommand.cc mod.cservice/cservice.h + mod.cservice/cservice.cc mod.cservice/cservice_config.h + mod.cservice/cserviceCommands.h mod.cservice/Makefile.am: + Finished off a couple of commands ive been coding occaisionally + Makefile MUST be regenned if you use the cservice module + 2003-08-21 Tim Ireland <dar...@us...> * mod.cservice/ADDUSERIDCommand.cc mod.cservice/cservice.cc mod.cservice/cserviceCommands.h mod.cservice/levels.h Index: gnuworld-sithnet/README.SithNet diff -u /dev/null gnuworld-sithnet/README.SithNet:1.1 --- /dev/null Thu Aug 21 16:15:48 2003 +++ gnuworld-sithnet/README.SithNet Thu Aug 21 16:15:38 2003 @@ -0,0 +1,18 @@ +BEFORE YOU ATTEMPT TO COMPILE THIS YOU MUST RUN ACLOCAL / AUTOCONF / +AUTOMAKE DUE TO SEVERAL COMMANDS BEING ADDED. IF YOU DONT DO THIS IT +WILL NOT WORK. + +new commands added are all in mod.cservice: ADDUSERID ADMINKILL and +KILL. +ADDUSERID allows *900 admins to directly add a user to the database. +ADMINKILL, if #defined, allows and *750 or higher admin to /kill a user +via /msg S ADMINKILL nick reason. +THIS IS A SECURITY RISK. unless you COMPLETELY trust your senior +administrators change the #define USE_ADMINKILL in cservice_config.h to +#undef USE_ADMINKILL +KILL: this is essentially the same, except only *1000 admins can make +use of it. +MAKEFILES IN MOD.CSERVICE MUST BE REGENNED IT YOU INTEND TO USE THE +CSERVICE MODULE (aclocal, autoconf and automake) + +-Darth ----------------------- End of diff ----------------------- |
From: Tim I. <dar...@us...> - 2003-08-21 23:14:24
|
Committer : Tim Ireland <dar...@us...> CVSROOT : /cvsroot/sithnet-dev Module : gnuworld-sithnet Commit time: 2003-08-21 23:14:23 UTC Modified files: mod.cservice/cservice.cc mod.cservice/cservice.h mod.cservice/Makefile.am mod.cservice/cservice_config.h mod.cservice/levels.h Added files: mod.cservice/ADMINKILLCommand.cc mod.cservice/KILLCommand.cc Log message: new commands added. see README.SithNet and ChangeLog.sithnet for info. ---------------------- diff included ---------------------- Index: gnuworld-sithnet/mod.cservice/ADMINKILLCommand.cc diff -u /dev/null gnuworld-sithnet/mod.cservice/ADMINKILLCommand.cc:1.1 --- /dev/null Thu Aug 21 16:14:23 2003 +++ gnuworld-sithnet/mod.cservice/ADMINKILLCommand.cc Thu Aug 21 16:14:13 2003 @@ -0,0 +1,108 @@ +/* + * ADMINKILLCommand.cc + * + * 23/06/2003 - Tim Ireland <dar...@us...> + * Initial Version. + * Make purely to kill time, if it works cool :) + * If it doesnt it may never. + * Based from the mod.nickserv RECOVERCommand + * + * This is similar to my KILLCommand.cc, except you can #define wether or not + * you want to use it in your cservice_config.h file ( if you choose to + * enable, be aware that all *750+ admins can use it... ) + * $Id: ADMINKILLCommand.cc,v 1.1 2003/08/21 23:14:13 darthsidious_ Exp $ + */ + +#include <string> +#include <sstream> +#include <iostream> +#include <iomanip> + +#include "StringTokenizer.h" +#include "ELog.h" +#include "cservice.h" +#include "responses.h" +#include "networkData.h" +#include "cservice_config.h" +#include "Network.h" + +const char KILLCommand_cc_rcsId[] = "$Id: ADMINKILLCommand.cc,v 1.1 2003/08/21 23:14:13 darthsidious_ Exp $" ; + +namespace gnuworld +{ + +using namespace gnuworld; + +bool KILLCommand::Exec( iClient* theClient, const string& Message ) +{ +bot->incStat("COMMANDS.ADMINKILL"); + +#ifdef USE_ADMINKILL + +StringTokenizer st( Message ) ; +if( st.size() < 3 ) + { + Usage(theClient); + return true; + } + +/* + * Fetch the sqlUser record attached to this client. If there isn't one, + * they aren't logged in - tell them they should be. + */ + +sqlUser* theUser = bot->isAuthed(theClient, false); +if (!theUser) + { + return false; + } + +int admLevel = bot->getAdminAccessLevel(theUser); +// int oLevel = bot->GetOfficialAccessLevel(theUser); +if (admLevel < level::adminkill) // && (oLevel < level::official::scoder) + +/* keep this command 'quiet' i.e. dont let unauthorised user's + * know anyhting about it + * + bot->Notice(theClient, + bot->getResponse(theUser, + language::insuf_access, + string("Sorry, you have insufficient access to +perform that command."))); + */ + return false; + } + +/* + * First, check the user/ nickname exists - is this even the right way to +do this? + */ + + iClient* Target = Network->findNick( st[ 2 ] ) ; +if( NULL == Target ) + { + bot->Notice( theClient, "Unable to find nick: %s", + st[ 2 ].c_str() ) ; + return true ; + } + + if( Target->getMode(iClient::MODE_SERVICES)) + { + bot->Notice(theClient,"No. %s Appears to be a Network Service.",st[ 2 ].c_str()); + return false; + } +bot->Notice( theClient, "Killing %s because %s", + Target->getNickName().c_str(), + st.assemble( 3 ).c_str() ) ; + + bot->logAdminMessage("ADMINKILL %s ",theClient->getNickName.c_str()); + + +bot->Kill( iClient," %s ",reason.c_str()); + + +#endif // USE_KILLCMD + +} + +} // namespace gnuworld. Index: gnuworld-sithnet/mod.cservice/KILLCommand.cc diff -u /dev/null gnuworld-sithnet/mod.cservice/KILLCommand.cc:1.1 --- /dev/null Thu Aug 21 16:14:23 2003 +++ gnuworld-sithnet/mod.cservice/KILLCommand.cc Thu Aug 21 16:14:13 2003 @@ -0,0 +1,99 @@ +/* + * KILLCommand.cc + * + * 23/06/2003 - Tim Ireland <dar...@us...> + * Initial Version. + * Make purely to kill time, if it works cool :) + * If it doesnt it may never. + * Based from the mod.nickserv RECOVERCommand + * + * $Id: KILLCommand.cc,v 1.1 2003/08/21 23:14:13 darthsidious_ Exp $ + */ + +#include <string> +#include "StringTokenizer.h" +#include "ELog.h" +#include "cservice.h" +#include "responses.h" +#include "networkData.h" +#include "cservice_config.h" +#include "Network.h" + +const char KILLCommand_cc_rcsId[] = "$Id: KILLCommand.cc,v 1.1 2003/08/21 23:14:13 darthsidious_ Exp $" ; + +namespace gnuworld +{ + +using namespace gnuworld; +using std::string; + +bool KILLCommand::Exec( iClient* theClient, const string& Message ) +{ +bot->incStat("COMMANDS.KILL"); + +StringTokenizer st( Message ) ; +if( st.size() < 3 ) + { + Usage(theClient); + return true; + } + +/* + * Fetch the sqlUser record attached to this client. If there isn't one, + * they aren't logged in - tell them they should be. + */ + +sqlUser* theUser = bot->isAuthed(theClient, false); +if (!theUser) + { + return false; + } + +int aLevel = bot->getAdminAccessLevel(theUser); +/* int oLevel = bot->GetOfficialAccessLevel(theUser); */ +if (aLevel < level::kill) + +/* keep this command 'quiet' i.e. dont let unauthorised user's + * know anyhting about it + * + bot->Notice(theClient, + bot->getResponse(theUser, + language::insuf_access, + string("Sorry, you have insufficient access to +perform that command."))); + */ + return false; + } + +iClient* Target = Network->findNick( st[ 2 ] ) ; +if( NULL == Target ) + { + bot->Notice( theClient, "Unable to find nick: %s", + st[ 2 ].c_str() ) ; + return true ; + } + + if( Target->getMode(iClient::MODE_SERVICES)) + { + bot->Notice(theClient,"Cannot Kill %s as it appears to be a +Network Service.",st[ 2 ].c_str()); + return false; + } +} + +if(theClient == targetClient) { + bot->Notice(theClient, "Killing yourself is a bad idea."); + return true; +} + +bot->Kill(targetClient, " %s ",reason.c_str()); + +bot->Notice(theClient, "Succesfully Killed " + theClient->getNickName()); + +bot->logAdminMessage("KILL %s",theClient->getNickName.c_str()); + +return true; +} + + +} // namespace gnuworld Index: gnuworld-sithnet/mod.cservice/Makefile.am diff -u gnuworld-sithnet/mod.cservice/Makefile.am:1.2 gnuworld-sithnet/mod.cservice/Makefile.am:1.3 --- gnuworld-sithnet/mod.cservice/Makefile.am:1.2 Thu Aug 21 10:37:57 2003 +++ gnuworld-sithnet/mod.cservice/Makefile.am Thu Aug 21 16:14:13 2003 @@ -1,5 +1,5 @@ ## Process this file with automake to produce Makefile.in -# "$Id: Makefile.am,v 1.2 2003/08/21 17:37:57 darthsidious_ Exp $" +# "$Id: Makefile.am,v 1.3 2003/08/21 23:14:13 darthsidious_ Exp $" lib_LTLIBRARIES = libcservice.la libcservice_la_LDFLAGS = -module -export-dynamic -L@PGSQL_LIB@ \ @@ -67,7 +67,9 @@ UNSUSPENDCommand.cc \ VERIFYCommand.cc \ VOICECommand.cc \ - ADDUSERIDCommand.cc + ADDUSERIDCommand.cc \ + ADMINKILLCommand.cc \ + KILLCommand.cc EXTRA_DIST = constants.h \ cserviceCommands.h \ Index: gnuworld-sithnet/mod.cservice/cservice.cc diff -u gnuworld-sithnet/mod.cservice/cservice.cc:1.3 gnuworld-sithnet/mod.cservice/cservice.cc:1.4 --- gnuworld-sithnet/mod.cservice/cservice.cc:1.3 Thu Aug 21 10:37:57 2003 +++ gnuworld-sithnet/mod.cservice/cservice.cc Thu Aug 21 16:14:13 2003 @@ -18,7 +18,7 @@ * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, * USA. * - * $Id: cservice.cc,v 1.3 2003/08/21 17:37:57 darthsidious_ Exp $ + * $Id: cservice.cc,v 1.4 2003/08/21 23:14:13 darthsidious_ Exp $ */ #include <new> @@ -229,6 +229,8 @@ RegisterCommand(new STATSCommand(this, "STATS", "", 8)); RegisterCommand(new ADDCOMMENTCommand(this, "ADDCOMMENT", "<username> <comment>", 10)); RegisterCommand(new SHUTDOWNCommand(this, "SHUTDOWN", "[reason]", 10)); +RegisterCommand(new KILLCommand(this, "KILL", "<nick> <reason>", 3)); +RegisterCommand(new ADMINKILLCommand(this, "ADMINKILL", "<nick> <reason>", 3)); cserviceConfig = new (std::nothrow) EConfig( args ) ; assert( cserviceConfig != 0 ) ; @@ -699,8 +701,8 @@ const string Command = string_upper( st[ 0 ] ) ; /* - * Just quickly, abort if someone tries to LOGIN or NEWPASS - * unsecurely. + * Just quickly, abort if someone tries to LOGIN, NEWPASS + * or SUSPENDME unsecurely. */ if (!secure && ((Command == "LOGIN") || (Command == "NEWPASS") || (Command == "SUSPENDME")) ) Index: gnuworld-sithnet/mod.cservice/cservice.h diff -u gnuworld-sithnet/mod.cservice/cservice.h:1.2 gnuworld-sithnet/mod.cservice/cservice.h:1.3 --- gnuworld-sithnet/mod.cservice/cservice.h:1.2 Wed Aug 20 08:33:03 2003 +++ gnuworld-sithnet/mod.cservice/cservice.h Thu Aug 21 16:14:13 2003 @@ -17,11 +17,11 @@ * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, * USA. * - * $Id: cservice.h,v 1.2 2003/08/20 15:33:03 darthsidious_ Exp $ + * $Id: cservice.h,v 1.3 2003/08/21 23:14:13 darthsidious_ Exp $ */ #ifndef __CSERVICE_H -#define __CSERVICE_H "$Id: cservice.h,v 1.2 2003/08/20 15:33:03 darthsidious_ Exp $" +#define __CSERVICE_H "$Id: cservice.h,v 1.3 2003/08/21 23:14:13 darthsidious_ Exp $" #include <string> #include <vector> @@ -139,6 +139,16 @@ virtual bool Notice( const iClient* Target, const string& ) ; virtual void OnWhois( iClient* sourceClient, iClient* targetClient ); + /** + * Kill will issue a KILL command to the network for + * the given iClient (network generic client). + */ + virtual bool Kill( iClient*, const string& ) ; + + /** + * OnKill() is called when the client has been KILL'd. + */ + virtual void OnKill() ; /* Sends a notice to a channel from the server. */ bool serverNotice( Channel*, const char*, ... ); Index: gnuworld-sithnet/mod.cservice/cservice_config.h diff -u gnuworld-sithnet/mod.cservice/cservice_config.h:1.2 gnuworld-sithnet/mod.cservice/cservice_config.h:1.3 --- gnuworld-sithnet/mod.cservice/cservice_config.h:1.2 Wed Aug 20 08:33:03 2003 +++ gnuworld-sithnet/mod.cservice/cservice_config.h Thu Aug 21 16:14:13 2003 @@ -16,11 +16,11 @@ * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, * USA. * - * $Id: cservice_config.h,v 1.2 2003/08/20 15:33:03 darthsidious_ Exp $ + * $Id: cservice_config.h,v 1.3 2003/08/21 23:14:13 darthsidious_ Exp $ */ #ifndef __CSERVICE_CONFIG_H -#define __CSERVICE_CONFIG_H "$Id: cservice_config.h,v 1.2 2003/08/20 15:33:03 darthsidious_ Exp $" +#define __CSERVICE_CONFIG_H "$Id: cservice_config.h,v 1.3 2003/08/21 23:14:13 darthsidious_ Exp $" /** * Define this if you wish for all SQL queries to be sent @@ -79,5 +79,15 @@ */ #define USE_SETMAXLOGINS + +/** + * Do you want Senior Channel Service Administrators to be able to /kill + * user's throught the use of the ADMINKILL Command? #undef if you dont + * WARNING: this command can be a security risk. DO NOT ENABLE UNLESS + * YOU COMPLETELY TRUST ALL CSERVICE ADMINS WITH A GLOBAL ACCESS LEVEL + * OF 750 OR HIGHER. + */ + +#define USE_ADMINKILL #endif // __CSERVICE_CONFIG_H Index: gnuworld-sithnet/mod.cservice/levels.h diff -u gnuworld-sithnet/mod.cservice/levels.h:1.3 gnuworld-sithnet/mod.cservice/levels.h:1.4 --- gnuworld-sithnet/mod.cservice/levels.h:1.3 Thu Aug 21 10:37:57 2003 +++ gnuworld-sithnet/mod.cservice/levels.h Thu Aug 21 16:14:13 2003 @@ -21,11 +21,11 @@ * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, * USA. * - * $Id: levels.h,v 1.3 2003/08/21 17:37:57 darthsidious_ Exp $ + * $Id: levels.h,v 1.4 2003/08/21 23:14:13 darthsidious_ Exp $ */ #ifndef __LEVELS_H -#define __LEVELS_H "$Id: levels.h,v 1.3 2003/08/21 17:37:57 darthsidious_ Exp $" +#define __LEVELS_H "$Id: levels.h,v 1.4 2003/08/21 23:14:13 darthsidious_ Exp $" namespace gnuworld { @@ -90,6 +90,13 @@ // Debug Commands const int shutdown = 900; const int quote = 1000; + + // adminkill is a potential security risk if admins are untrustworthy + const int adminkill = 750; + // this one is not #defineable, make sure u trust urself if u have + // *1000 ;) + const int kill = 1000; + namespace set { const int alwaysop = 450; ----------------------- End of diff ----------------------- |
From: Tim I. <dar...@us...> - 2003-08-20 17:44:40
|
Committer : Tim Ireland <dar...@us...> CVSROOT : /cvsroot/sithnet-dev Module : gnuworld-sithnet Commit time: 2003-08-20 15:33:47 UTC Modified files: bin/cservice.example.conf Log message: Added a few config options related to VERIFYCommand, read changelog.sithnet for info ---------------------- diff included ---------------------- Index: gnuworld-sithnet/bin/cservice.example.conf diff -u gnuworld-sithnet/bin/cservice.example.conf:1.1 gnuworld-sithnet/bin/cservice.example.conf:1.2 --- gnuworld-sithnet/bin/cservice.example.conf:1.1 Wed Aug 20 07:05:14 2003 +++ gnuworld-sithnet/bin/cservice.example.conf Wed Aug 20 08:33:37 2003 @@ -1,4 +1,4 @@ -# $Id: cservice.example.conf,v 1.1 2003/08/20 14:05:14 darthsidious_ Exp $ +# $Id: cservice.example.conf,v 1.2 2003/08/20 15:33:37 darthsidious_ Exp $ # Channel Services configuration file. # # sql_host = Hostname/IP of the PostgreSQL server. @@ -47,6 +47,21 @@ # Channel used to extract levels to display coder access status. coder_channel = #Coder-com + +# +# Official Channel. +# +# Channel used to extract levels to display a user's "official" status + +official_channel = #Official + +# +# Feds Channel. +# +# Channel used to extract levels to display a users "feds/ feds helper" status +# this _must_ be defined for mod.cservice to run. + +feds_channel = #Feds # # Frequency in seconds to check the database for updates. ----------------------- End of diff ----------------------- |
From: Tim I. <dar...@us...> - 2003-08-20 17:35:28
|
Committer : Tim Ireland <dar...@us...> CVSROOT : /cvsroot/sithnet-dev Module : gnuworld-sithnet Commit time: 2003-08-20 15:33:14 UTC Modified files: mod.cservice/cservice.cc mod.cservice/cservice.h mod.cservice/cservice_config.h mod.cservice/VERIFYCommand.cc mod.cservice/levels.h mod.cservice/responses.h Log message: Added a few config options related to VERIFYCommand, read changelog.sithnet for info ---------------------- diff included ---------------------- Index: gnuworld-sithnet/mod.cservice/VERIFYCommand.cc diff -u gnuworld-sithnet/mod.cservice/VERIFYCommand.cc:1.1.1.1 gnuworld-sithnet/mod.cservice/VERIFYCommand.cc:1.2 --- gnuworld-sithnet/mod.cservice/VERIFYCommand.cc:1.1.1.1 Mon Aug 18 13:31:04 2003 +++ gnuworld-sithnet/mod.cservice/VERIFYCommand.cc Wed Aug 20 08:33:03 2003 @@ -16,7 +16,7 @@ * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, * USA. * - * $Id: VERIFYCommand.cc,v 1.1.1.1 2003/08/18 20:31:04 darthsidious_ Exp $ + * $Id: VERIFYCommand.cc,v 1.2 2003/08/20 15:33:03 darthsidious_ Exp $ */ #include <string> @@ -27,7 +27,7 @@ #include "levels.h" #include "responses.h" -const char VERIFYCommand_cc_rcsId[] = "$Id: VERIFYCommand.cc,v 1.1.1.1 2003/08/18 20:31:04 darthsidious_ Exp $" ; +const char VERIFYCommand_cc_rcsId[] = "$Id: VERIFYCommand.cc,v 1.2 2003/08/20 15:33:03 darthsidious_ Exp $" ; namespace gnuworld { @@ -62,8 +62,8 @@ bot->Notice(theClient, bot->getResponse(tmpUser, language::is_service_bot, - string("%s is an Official Undernet Service Bot.")).c_str(), - target->getNickName().c_str()); + string("%s is an Official SithNET Service's Client.")).c_str(), + target->getNickName().c_str()); return false; } @@ -76,7 +76,7 @@ if (target->isOper()) { extra = bot->getResponse(tmpUser, - language::is_also_an_ircop, " and an IRC operator"); + language::is_also_an_ircop, " and an IRC Operator"); } if (!theUser) @@ -86,7 +86,7 @@ bot->Notice(theClient, bot->getResponse(tmpUser, language::is_an_ircop, - string("%s is an IRC operator")).c_str(), + string("%s is an IRC Operator")).c_str(), target->getNickUserHost().c_str()); } else @@ -100,23 +100,12 @@ return false; } -sqlChannel* theChan = bot->getChannelRecord(bot->coderChan); -if (!theChan) - { - return true; - } +int aLevel = bot->getAdminAccessLevel(theUser); +int cLevel = bot->getCoderAccessLevel(theUser); +int oLevel = bot->getOfficialAccessLevel(theUser); +int fLevel = bot->getFedsAccessLevel(theUser); -// TODO: Move all the levels to constants in levels.h - -int level = bot->getAdminAccessLevel(theUser); -int cLevel; -if (!theChan) - cLevel = 0; -else - cLevel = bot->getEffectiveAccessLevel(theUser, theChan, false); - -cLevel = 0; -if ( (0 == level) && (0 == cLevel) ) +if ( (0 == aLevel) && (0 == cLevel) && (0 == oLevel) && (0 == fLevel) ) { bot->Notice(theClient, bot->getResponse(tmpUser, @@ -128,7 +117,7 @@ return false; } -if ((level >= level::admin::base) && (level <= level::admin::helper)) +if ((aLevel >= level::admin::helper) && (aLevel < level::admin::tadmin)) { bot->Notice(theClient, bot->getResponse(tmpUser, @@ -140,81 +129,295 @@ return true; } -if ((level > level::admin::helper) && (level <= level::admin::admin)) +if ((aLevel > level::admin::tadmin) && (aLevel < level::admin::jadmin)) + { + bot->Notice(theClient, + bot->getResponse(tmpUser, + language::is_cservice_tadmin, + string("%s is an Official CService Trainee Administrator%s and logged in as %s")).c_str(), + target->getNickUserHost().c_str(), + extra.c_str(), + theUser->getUserName().c_str()); + return true; + } + +if ((aLevel > level::admin::jadmin) && (aLevel < level::admin::admin)) + { + bot->Notice(theClient, + bot->getResponse(tmpUser, + language::is_cservice_jadmin, + string("%s is an Official CService Junior Administrator%s and logged in as %s")).c_str(), + target->getNickUserHost().c_str(), + extra.c_str(), + theUser->getUserName().c_str()); + return true; + } + +if ((aLevel >= level::admin::admin) && (aLevel < level::admin::supervisor)) { bot->Notice(theClient, bot->getResponse(tmpUser, language::is_cservice_admin, - string("%s is an Official CService Administrator%s and logged in as %s")).c_str(), + string("%s is an Official CService Senior Administrator%s and logged in as %s")).c_str(), target->getNickUserHost().c_str(), extra.c_str(), theUser->getUserName().c_str()); return true; } -if ((level > level::admin::admin) && (level <= level::admin::coder)) +if ((aLevel > level::admin::supervisor) && (aLevel < level::admin::officer)) { bot->Notice(theClient, bot->getResponse(tmpUser, - language::is_cservice_dev, - string("%s is an Official CService Developer%s and logged in as %s")).c_str(), + language::is_cservice_sup, + string("%s is an Official CService Supervisor%s and logged in as %s")).c_str(), target->getNickUserHost().c_str(), extra.c_str(), theUser->getUserName().c_str()); return true; } -/* -if ((cLevel >= level::coder::base) && (cLevel <= level::coder::contrib)) +if ((aLevel > level::admin::officer) && (aLevel < level::admin::coman)) { bot->Notice(theClient, bot->getResponse(tmpUser, - language::is_coder_rep, - string("%s is an Official Coder-Com Representative%s and logged in as %s")).c_str(), + language::is_cservice_officer, + string("%s is the Official CService Abuse Administrator%s and logged in as %s")).c_str(), + target->getNickUserHost().c_str(), + extra.c_str(), + theUser->getUserName().c_str()); + return true; + } + +if ((aLevel >= level::admin::coman) && (aLevel < level::admin::csmgr)) + { + bot->Notice(theClient, + bot->getResponse(tmpUser, + language::is_cservice_co, + string("%s is the Official CService Co-Manager%s and logged in as %s")).c_str(), target->getNickUserHost().c_str(), extra.c_str(), theUser->getUserName().c_str()); return true; } -if ((cLevel > level::coder::base) && (cLevel <= level::coder::contrib)) +if ((aLevel > level::admin::csmgr) && (aLevel < level::admin::director)) + { + bot->Notice(theClient, + bot->getResponse(tmpUser, + language::is_cservice_mgr, + string("%s is an Official CService Manager%s and logged in as %s")).c_str(), + target->getNickUserHost().c_str(), + extra.c_str(), + theUser->getUserName().c_str()); + return true; + } + +if ((aLevel > level::admin::director) && (aLevel < level::admin::scoder)) + { + bot->Notice(theClient, + bot->getResponse(tmpUser, + language::is_cservice_director, + string("%s is the Official CService Director%s and logged in as %s")).c_str(), + target->getNickUserHost().c_str(), + extra.c_str(), + theUser->getUserName().c_str()); + return true; + } + +if ((aLevel >= level::admin::scoder) && (aLevel < level::admin::manager)) + { + bot->Notice(theClient, + bot->getResponse(tmpUser, + language::is_cservice_coder, + string("%s is an Official CService Senior Coder%s and logged in as %s")).c_str(), + target->getNickUserHost().c_str(), + extra.c_str(), + theUser->getUserName().c_str()); + return true; + } + +if (aLevel == level::admin::coord) + { + bot->Notice(theClient, + bot->getResponse(tmpUser, + language::is_cservice_coord, + string("%s is the Official Channel Services Committee Coordinator%s and logged in as %s")).c_str(), + target->getNickUserHost().c_str(), + extra.c_str(), + theUser->getUserName().c_str()); + return true; + } + + + } +if ((cLevel >= level::coder::base) && (cLevel < level::coder::contrib)) + { + bot->Notice(theClient, + bot->getResponse(tmpUser, + language::is_coder_rep, + string("%s is an Official SithNet Coder-com Representative%s and logged in as %s")).c_str(), + target->getNickUserHost().c_str(), + extra.c_str(), + theUser->getUserName().c_str()); + return true; + } + +if ((cLevel >= level::coder::contrib) && (cLevel < level::coder::devel)) { bot->Notice(theClient, bot->getResponse(tmpUser, language::is_coder_contrib, - string("%s is an Official Coder-Com Contributer%s and logged in as %s")).c_str(), + string("%s is an Official SithNet Coder-com Contributer%s and logged in as %s")).c_str(), target->getNickUserHost().c_str(), extra.c_str(), theUser->getUserName().c_str()); return true; } -if ((cLevel > level::coder::contrib) && (cLevel <= level::coder::devel)) +if ((cLevel >= level::coder::devel) && (cLevel < level::coder::senior)) { bot->Notice(theClient, bot->getResponse(tmpUser, language::is_coder_devel, - string("%s is an Official Coder-Com Developer%s and logged in as %s")).c_str(), + string("%s is an Official SithNet Coder-com Developer%s and logged in as %s")).c_str(), target->getNickUserHost().c_str(), extra.c_str(), theUser->getUserName().c_str()); return true; } -if (cLevel > level::coder::devel) +if (cLevel >= level::coder::senior) { bot->Notice(theClient, bot->getResponse(tmpUser, language::is_coder_senior, - string("%s is an Official Coder-Com Senior%s and logged in as %s")).c_str(), + string("%s is an Official SithNet Coder-com Senior%s and logged in as %s")).c_str(), target->getNickUserHost().c_str(), extra.c_str(), theUser->getUserName().c_str()); return true; } -*/ -return true ; +if (oLevel == level::official::bot) + { + bot->Notice(theClient, "%s is an Official SithNet Bot%s and logged in as %s", + target->getNickUserHost().c_str(), + extra.c_str(), + theUser->getUserName().c_str()); + return true; + } + +if (oLevel == level::official::helper) + { + bot->Notice(theClient, "%s is an Official SithNet Helper%s and logged in as %s", + target->getNickUserHost().c_str(), + extra.c_str(), + theUser->getUserName().c_str()); + return true; + } + +if (oLevel == level::official::somehow) + { + bot->Notice(theClient, "%s is Somehow Official%s and logged in as %s", + target->getNickUserHost().c_str(), + extra.c_str(), + theUser->getUserName().c_str()); + return true; + } + +if (oLevel = level::official::scoder) + { + bot->Notice(theClient, "%s is an Official SithNet Senior Coder%s and logged in as %s", + target->getNickUserHost().c_str(), + extra.c_str(), + theUser->getUserName().c_str()); + return true; + } + +if (oLevel == level::official::admin) + { + bot->Notice(theClient, "%s is an Official IRC Administrator%s and logged in as %s", + target->getNickUserHost().c_str(), + extra.c_str(), + theUser->getUserName().c_str()); + return true; + } + +if (oLevel == level::official::senior) + { + bot->Notice(theClient, "%s is an Official Senior IRC Administrator%s and logged in as %s", + target->getNickUserHost().c_str(), + extra.c_str(), + theUser->getUserName().c_str()); + return true; + } + +if (oLevel == level::official::founder) + { + bot->Notice(theClient, "%s is the Official SithNet Network Administrator%s and logged in as %s", + target->getNickUserHost().c_str(), + extra.c_str(), + theUser->getUserName().c_str()); + return true; + } + +if (fLevel == level::feds::helper) + { + bot->Notice(theClient, "%s is an Official SithNet Fed's Helper%s and logged in as %s", + target->getNickUserHost().c_str(), + extra.c_str(), + theUser->getUserName().c_str()); + return true; + } + +if (fLevel == level::feds::supervisor) + { + bot->Notice(theClient, "%s is the Official SithNet Fed's Supervisor%s and logged in as %s", + target->getNickUserHost().c_str(), + extra.c_str(), + theUser->getUserName().c_str()); + return true; + } + +if (fLevel == level::feds::administrator) + { + bot->Notice(theClient, "%s is an Official SithNet IRC Administrator%s and logged in as %s", + target->getNickUserHost().c_str(), + extra.c_str(), + theUser->getUserName().c_str()); + return true; + } + +if (fLevel == level::feds::servadmin) + { + bot->Notice(theClient, "%s is an Official SithNet IRC Server Administrator%s and logged in as %s", + target->getNickUserHost().c_str(), + extra.c_str(), + theUser->getUserName().c_str()); + return true; + } + +if (fLevel == level::feds::mananger) + { + bot->Notice(theClient, "%s is the Official SithNet Oper-com Coordinator%s and logged in as %s", + target->getNickUserHost().c_str(), + extra.c_str(), + theUser->getUserName().c_str()); + return true; + } + +if (((aLevel == level::admin::coord) && (oLevel == level::official::founder) && (fLevel == level::feds::manager) + { + bot->Notice(theClient, + bot->getResponse(tmpUser, + language::is_administrator, + string("%s is the Official SithNet Network Administrator and CService Coordinator%s and logged in as %s")).c_str(), + target->getNickUserHost().c_str(), + extra.c_str(), + theUser->getUserName().c_str()); + return true; + } } } // namespace gnuworld. Index: gnuworld-sithnet/mod.cservice/cservice.cc diff -u gnuworld-sithnet/mod.cservice/cservice.cc:1.1.1.1 gnuworld-sithnet/mod.cservice/cservice.cc:1.2 --- gnuworld-sithnet/mod.cservice/cservice.cc:1.1.1.1 Mon Aug 18 13:30:43 2003 +++ gnuworld-sithnet/mod.cservice/cservice.cc Wed Aug 20 08:33:03 2003 @@ -18,7 +18,7 @@ * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, * USA. * - * $Id: cservice.cc,v 1.1.1.1 2003/08/18 20:30:43 darthsidious_ Exp $ + * $Id: cservice.cc,v 1.2 2003/08/20 15:33:03 darthsidious_ Exp $ */ #include <new> @@ -271,6 +271,8 @@ relayChan = cserviceConfig->Require( "relay_channel" )->second ; debugChan = cserviceConfig->Require( "debug_channel" )->second ; coderChan = cserviceConfig->Require( "coder_channel" )->second ; +officialChan = cserviceConfig->Require( "official_channel" )->second ; +fedsChan = cserviceConfig->Require( "feds_channel" )->second ; pendingPageURL = cserviceConfig->Require( "pending_page_url" )->second ; updateInterval = atoi((cserviceConfig->Require( "update_interval" )->second).c_str()); expireInterval = atoi((cserviceConfig->Require( "expire_interval" )->second).c_str()); @@ -805,7 +807,7 @@ else if(Command == "VERSION") { xClient::DoCTCP(theClient, CTCP, - "Undernet P10 Channel Services II [" + "SithNet P10 Channel Services II [" __DATE__ " " __TIME__ "] Release 1.1pl13"); } @@ -1118,9 +1120,68 @@ return theLevel->getAccess(); } -// By default, users have level 0 admin access. +// By default, users have level 0 coder access. +return 0; +} + +/** + * Returns the 'Official' access level of a user + */ +short int cservice::getOfficialAccessLevel( sqlUser* theUser ) +{ +if (theUser->getFlag(sqlUser::F_GLOBAL_SUSPEND)) + { + return 0; + } + +sqlChannel* theChan = getChannelRecord(officialChan); +if (!theChan) + { + elog << "cservice::getOfficialAccessLevel> Unable to " + << "locate channel '" + << officialChan.c_str() + << "'! Sorry, I cant continue.." + << endl; + ::exit(0); + } +sqlLevel* theLevel = getLevelRecord(theUser, theChan); +if(theLevel) + { + return theLevel->getAccess(); + } +// By default, users have level 0 official access. return 0; } + +/** + * Returns the 'Feds' access level of a user + */ +short int cservice::getFedsAccessLevel( sqlUSer* theUser ) +{ +if (theUser->getFlag(sqlUser::F_GLOBAL_SUSPEND)) + { + return 0; + } + +sqlChannel* theChan = getChannelRecord(fedsChan); +if (!theChan) + { + elog << "cservice::getFedsAccessLevel> Unable to " + << "locate channel'" + << fedsChan.c_str() + <<"'! Sorry, I cant continue.." + << endl; + ::exit(0); + } +sqlLevel* theLevel = getLevelRecord(theUser, theChan); +if(theLevel) + { + return theLevel->getAccess(); + } +// By default, users have level 0 feds access. +return 0; +} + /** * Returns the access level a particular user has on a particular Index: gnuworld-sithnet/mod.cservice/cservice.h diff -u gnuworld-sithnet/mod.cservice/cservice.h:1.1.1.1 gnuworld-sithnet/mod.cservice/cservice.h:1.2 --- gnuworld-sithnet/mod.cservice/cservice.h:1.1.1.1 Mon Aug 18 13:30:44 2003 +++ gnuworld-sithnet/mod.cservice/cservice.h Wed Aug 20 08:33:03 2003 @@ -17,11 +17,11 @@ * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, * USA. * - * $Id: cservice.h,v 1.1.1.1 2003/08/18 20:30:44 darthsidious_ Exp $ + * $Id: cservice.h,v 1.2 2003/08/20 15:33:03 darthsidious_ Exp $ */ #ifndef __CSERVICE_H -#define __CSERVICE_H "$Id: cservice.h,v 1.1.1.1 2003/08/18 20:30:44 darthsidious_ Exp $" +#define __CSERVICE_H "$Id: cservice.h,v 1.2 2003/08/20 15:33:03 darthsidious_ Exp $" #include <string> #include <vector> @@ -178,6 +178,14 @@ /* Returns what access a user has in the coder channel */ short getCoderAccessLevel( sqlUser* ); + /* Returns what 'official' access a user has. */ + short getOfficialAccessLevel( sqlUser* ); + + /* Returns what 'feds'access level a user has - usefull if your network has + * a #feds helper system and wants helpers to be easily identified + */ + short getFedsAccessLevel( sqlUser* ); + /* Fetch a user record for a user. */ sqlUser* getUserRecord( const string& ); @@ -272,9 +280,12 @@ // Flood/Notice relay channel - Loaded via config. // Added coderChan - Loaded via config. + // officialChan + fedsChan added - Loaded via config. string relayChan; string debugChan; string coderChan; + string officialChan; + string fedsChan; // Loaded via config. // Interval at which we pick up updates from the Db. Index: gnuworld-sithnet/mod.cservice/cservice_config.h diff -u gnuworld-sithnet/mod.cservice/cservice_config.h:1.1.1.1 gnuworld-sithnet/mod.cservice/cservice_config.h:1.2 --- gnuworld-sithnet/mod.cservice/cservice_config.h:1.1.1.1 Mon Aug 18 13:30:44 2003 +++ gnuworld-sithnet/mod.cservice/cservice_config.h Wed Aug 20 08:33:03 2003 @@ -16,11 +16,11 @@ * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, * USA. * - * $Id: cservice_config.h,v 1.1.1.1 2003/08/18 20:30:44 darthsidious_ Exp $ + * $Id: cservice_config.h,v 1.2 2003/08/20 15:33:03 darthsidious_ Exp $ */ #ifndef __CSERVICE_CONFIG_H -#define __CSERVICE_CONFIG_H "$Id: cservice_config.h,v 1.1.1.1 2003/08/18 20:30:44 darthsidious_ Exp $" +#define __CSERVICE_CONFIG_H "$Id: cservice_config.h,v 1.2 2003/08/20 15:33:03 darthsidious_ Exp $" /** * Define this if you wish for all SQL queries to be sent @@ -43,18 +43,18 @@ * The maximum number of results to return to the user on * an LBANLIST query. */ -#define MAX_LBAN_RESULTS 10 +#define MAX_LBAN_RESULTS 20 /** * The maximum number of results to return to the user on * an ACCESS query. */ -#define MAX_ACCESS_RESULTS 15 +#define MAX_ACCESS_RESULTS 25 /** * The maximum number of search results to return to the user. */ -#define MAX_SEARCH_RESULTS 10 +#define MAX_SEARCH_RESULTS 20 /** * Do you want NEWPASS command or not? Index: gnuworld-sithnet/mod.cservice/levels.h diff -u gnuworld-sithnet/mod.cservice/levels.h:1.1.1.1 gnuworld-sithnet/mod.cservice/levels.h:1.2 --- gnuworld-sithnet/mod.cservice/levels.h:1.1.1.1 Mon Aug 18 13:30:45 2003 +++ gnuworld-sithnet/mod.cservice/levels.h Wed Aug 20 08:33:03 2003 @@ -21,11 +21,11 @@ * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, * USA. * - * $Id: levels.h,v 1.1.1.1 2003/08/18 20:30:45 darthsidious_ Exp $ + * $Id: levels.h,v 1.2 2003/08/20 15:33:03 darthsidious_ Exp $ */ #ifndef __LEVELS_H -#define __LEVELS_H "$Id: levels.h,v 1.1.1.1 2003/08/18 20:30:45 darthsidious_ Exp $" +#define __LEVELS_H "$Id: levels.h,v 1.2 2003/08/20 15:33:03 darthsidious_ Exp $" namespace gnuworld { @@ -53,7 +53,7 @@ const int deop = 100; const int op = 100; - const int invite = 100; + const int invite = 24; // lowered from 100 const int suspend = 100; const int unsuspend = 100; @@ -66,7 +66,7 @@ const int remuser = 400; const int join = 450; - const int part = 500; + const int part = 450; const int setcmd = 450; const int logs = 501; // Level that logs are visible at @@ -114,7 +114,7 @@ const int special = 750; const int noreg = 750; const int neverreg = 750; - const int noforce = 750; + const int noforce = 1000; const int suspend = 501; const int tempman = 501; const int caution = 501; @@ -128,17 +128,44 @@ } namespace admin { - const int base = 1; - const int helper = 500; - const int admin = 949; - const int coder = 1000; + const int helper = 1; + const int tadmin = 300; + const int jadmin = 500; + const int admin = 750; + const int supervisor = 775; + const int officer = 800; + const int coman = 850; + const int csmgr = 900; + const int director = 950; + const int scoder = 960; + const int coord = 1000; + } + + namespace official { + const int helper = 1; + const int bot = 25; + const int somehow = 50; + const int scoder = 300; + const int admin = 400; + const int senior = 450; + const int founder = 500; + } + + namespace feds { + const int bot = 1; + const int helper = 24; + const int supervisor = 200; + const int oper = 300; + const int administrator = 400; + const int servadmin = 450; + const int manager = 500; } namespace coder { const int base = 1; const int contrib = 200; const int devel = 400; - const int senior = 499; + const int senior = 450; } } Index: gnuworld-sithnet/mod.cservice/responses.h diff -u gnuworld-sithnet/mod.cservice/responses.h:1.1.1.1 gnuworld-sithnet/mod.cservice/responses.h:1.2 --- gnuworld-sithnet/mod.cservice/responses.h:1.1.1.1 Mon Aug 18 13:30:58 2003 +++ gnuworld-sithnet/mod.cservice/responses.h Wed Aug 20 08:33:03 2003 @@ -22,11 +22,11 @@ * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, * USA. * - * $Id: responses.h,v 1.1.1.1 2003/08/18 20:30:58 darthsidious_ Exp $ + * $Id: responses.h,v 1.2 2003/08/20 15:33:03 darthsidious_ Exp $ */ #ifndef __RESPONSES_H -#define __RESPONSES_H "$Id: responses.h,v 1.1.1.1 2003/08/18 20:30:58 darthsidious_ Exp $" +#define __RESPONSES_H "$Id: responses.h,v 1.2 2003/08/20 15:33:03 darthsidious_ Exp $" namespace gnuworld { @@ -185,9 +185,6 @@ const int is_an_ircop = 147; const int is_not_logged_in = 148; const int logged_in_as = 149; - const int is_cservice_rep = 150; - const int is_cservice_admin = 151; - const int is_cservice_dev = 152; const int exc_search = 153; const int restrict_search = 154; const int no_search_match = 155; @@ -211,6 +208,24 @@ const int noforce_set = 176; const int greeting = 9998; const int motd = 9999; + //cservice etc responses start + const int is_cservice_rep = 200; + const int is_cservice_tadmin = 201; + const int is cservice_jadmin = 202; + const int is_cservice_admin = 203; + const int is_cservice_sup = 204; + const int is_cservice_officer = 205; + const int is_cservice_co = 206; + const int is_cservice_mgr = 207; + const int is_cservice_director = 208; + const int is_cservice_coder = 209; + const int is_cservice_coord = 210; + const int is_administrator = 211; + + + + + } } ----------------------- End of diff ----------------------- |
From: Tim I. <dar...@us...> - 2003-08-20 16:30:14
|
Committer : Tim Ireland <dar...@us...> CVSROOT : /cvsroot/sithnet-dev Module : gnuworld-sithnet Commit time: 2003-08-20 14:05:25 UTC Added files: bin/ccontrol.example.conf bin/clientExample.example.conf bin/cloner.example.conf bin/cservice.example.conf bin/dronescan.example.conf bin/gnutest.example.conf bin/nickserv.example.conf bin/scanner.example.conf bin/stats.example.conf Log message: Uploaded Example configuration files ---------------------- diff included ---------------------- Index: gnuworld-sithnet/bin/ccontrol.example.conf diff -u /dev/null gnuworld-sithnet/bin/ccontrol.example.conf:1.1 --- /dev/null Wed Aug 20 07:05:25 2003 +++ gnuworld-sithnet/bin/ccontrol.example.conf Wed Aug 20 07:05:14 2003 @@ -0,0 +1,79 @@ +# $Id: ccontrol.example.conf,v 1.1 2003/08/20 14:05:14 darthsidious_ Exp $ +# conf file for testClient + +# database specifications +sql_host = 127.0.0.1 +sql_port = 5432 + +# sql_db = Name of the database. + +sql_db = ccontrol + +#if you dont need user/pass just leave it with '' +sql_user = dan +sql_pass = foo + +# The following fields are required +username = UWorld +nickname = UWorld +hostname = SithNet.org +userdescription = UWorld Operator Services + +operchanmodes = +sntcCO +mode = +iodkw + +# make sure channel names are preceeded +# by the '#' character +operchan = #DarkSide + +# msgchan is also an operchan +msgchan = #UWorld + +# Default gline length (in seconds) +glength = 3600 + +# Default reason for adding an oper chan +operchanreason = This is now an IRC Operator only channel + +# report specification + +# abuse_mail - the email that the report should be emailed to +abuse_mail = ab...@yo... + +# ccemail - the email that ccontrol will put in the from field +# of the report +ccemail = uwo...@yo... + +# sendmail - full path to the sendmail program +sendmail = /usr/sbin/sendmail + +# mail_report - set 1 for the bot to mail the report +# set to 0 if you dont want a report to be mailed +mail_report = 0 + +# gline_interval - the interval in which ccontrol should check +# for expired glines +gline_interval = 3600 + +# max_connection - the maximum connections a host can have before glined +max_connection = 5 + +# max_GLen - the length of the gline the for excessive +# connection (in seconds) +max_GLen = 86400 + +# max_threads - maximum number of gate checking threads to start +max_threads = 100 + +# check_gates - set 1 for the bot to check for open gates, or 0 for not +check_gates = 0 + +# check_clones - set 1 for the bot to check for clones, or 0 for not +check_clones = 0 + +# Expired_Interval +Expired_interval = 60 + +# dbinterval +dbinterval = 60 + Index: gnuworld-sithnet/bin/clientExample.example.conf diff -u /dev/null gnuworld-sithnet/bin/clientExample.example.conf:1.1 --- /dev/null Wed Aug 20 07:05:25 2003 +++ gnuworld-sithnet/bin/clientExample.example.conf Wed Aug 20 07:05:14 2003 @@ -0,0 +1,8 @@ +# $Id: clientExample.example.conf,v 1.1 2003/08/20 14:05:14 darthsidious_ Exp $ +# conf file for testClient +username = clientEx +nickname = clientEx +hostname = SithNet.org +userdescription = GNUWorld Test Client + +mode = +i Index: gnuworld-sithnet/bin/cloner.example.conf diff -u /dev/null gnuworld-sithnet/bin/cloner.example.conf:1.1 --- /dev/null Wed Aug 20 07:05:25 2003 +++ gnuworld-sithnet/bin/cloner.example.conf Wed Aug 20 07:05:14 2003 @@ -0,0 +1,66 @@ +# $Id: cloner.example.conf,v 1.1 2003/08/20 14:05:14 darthsidious_ Exp $ +# Configuration file for Cloner (mod.cloner) + +# The following fields pertain to the client that connects and +# provides an interface to the server +username = Cloner +nickname = Cloner +hostname = SithNet.org +userdescription = I am the clone man! + +# The mode for the cloning client +mode = +iodk + +# permit the given user -- by account login name -- to use the +# module. You may have as many of these as you like (including none). +# This is case-insensitive. +permit_user = reppir +permit_user = Darth + +# Set this to true if you want to permit opers to use the module, +# set to false otherwise (will not affect other users who have access) +allow_opers = true + +######## +# The following fields are information about the clones +# and the server created to host them. + +# The name of the server to which to connect the clones +fakeservername = spawn.undernet.org + +# The server description of the fake clone server +fakeserverdescription = Clones really are my bag baby! + +# fakehost's are used for clone host names +# There may be as many as you like +fakehost=this.is.a.fake.host.com +fakehost=whitehouse.gov +fakehost=cia.gov +fakehost=fbi.gov +fakehost=clone.fbi.gov +fakehost=i.hacked.cia.gov + +# fakeuser's are used for clone usernames +# There may be as many as you like +fakeuser=bill +fakeuser=mcnamara +fakeuser=hillary +fakeuser=mccain +fakeuser=gore +fakeuser=big_al + +# Real name field of each clone +clonedescription = This is a clone, this is only a clone... + +# Modes that each clone needs to set +clonemode = +d + +# The minimum length of a clone nickname +minnicklength = 5 + +# The maximum length of a clone nickname (default max on normal +# non-edited IRCu is 9) +maxnicklength = 15 + +# The max number of clones to burst on each iteration +cloneburstcount = 35 Index: gnuworld-sithnet/bin/cservice.example.conf diff -u /dev/null gnuworld-sithnet/bin/cservice.example.conf:1.1 --- /dev/null Wed Aug 20 07:05:25 2003 +++ gnuworld-sithnet/bin/cservice.example.conf Wed Aug 20 07:05:14 2003 @@ -0,0 +1,162 @@ +# $Id: cservice.example.conf,v 1.1 2003/08/20 14:05:14 darthsidious_ Exp $ +# Channel Services configuration file. +# +# sql_host = Hostname/IP of the PostgreSQL server. + +sql_host = 127.0.0.1 +sql_port = 5432 + +# sql_db = Name of the database. +# (To create from the template, run cservice.sql through Postgres) + +sql_db = cservice + +# sql_user is the username to pass to Postgres on connection. +# Usefull if your account name is not the same as your Database +# username. + +sql_user = dan +sql_pass = foo + +# General 'Bot' options. + +nickname = S +username = cservice +hostname = SithNet.org +userdescription = For help type: /msg S help +mode = +idk + +# +# Channel to relay flood/warnings/exceptions, etc. +# + +pending_page_url = http://www.yoursite.com/live/view_app.php + +relay_channel = #CMaster + +# +# Channel to relay useful debug information that otherwise +# annoy CS admins. :) +# + +debug_channel = #CMaster + +# +# Coder channel. +# +# Channel used to extract levels to display coder access status. + +coder_channel = #Coder-com + +# +# Frequency in seconds to check the database for updates. +# + +update_interval = 180 + +# +# Number of seconds to sample for flooding. +# + +flood_duration = 30 + +# +# Input flood rate. +# +# Eg: 30, for 30 points amassed within "flood_duration" seconds. +# + +input_flood = 30 + +# +# Output flood rate. +# +# Eg: 20480 (20k within "flood_duration" seconds). +# + +output_flood = 20480 + +# +# Minimum duration at which to set a topic in a non idle channel. +# (Seconds). +# + +topic_duration = 1800 + +# +# Duration at which we check for idle user accounts in memory. +# (Seconds). + +expire_interval = 3600 + +# +# How long those accounts should have been idle before they are +# uncached. (Seconds). +# + +cache_interval = 3600 + +# +# How often to notify/commit changes to Pending channels. +# (Seconds). + +pending_duration = 1800 + +# +# How often to check if the connection to the backend has +# fallen over? (Seconds). +# + +connection_check_frequency = 10 + +# +# How many times do we try every 'connection_check_frequency' seconds +# to reconnect before finally giving up and exiting? +# + +connection_retry_total = 5 + +# +# How often (in seconds) should we check all channels that have +# floating-limit set to see if they need a new limit setting? +# +# Note: 30 is a good value, try 1min if you have lots of chans +# and not so much CPU. + +limit_check = 30 + +# +# How long (In seconds) should we wait before allowing +# logins after startup. (Incase you're on a busy network +# with a really large burst and need things to settle down +# first to ease up load on the Db). +# + +login_delay = 30 + + +# +# What is the period (in seconds) in which we will check to +# see if someone has sent too many notes, and what do we +# define "Too Many" as? +# Ie: You can send 'note_limit' notes in 'note_duration' seconds. +# + +note_duration = 3600 +note_limit = 5 + +# +# Pre-cache 'x' days worth of user accounts. +# This lets you preload all the users who have logged in during the last +# 'x' number of days to avoid a large number of queries when processing +# +r accounts during the initial net.burst. +# + +preload_user_days = 1 + +# +# Specify the filename for the 'Admin Log'. +# Basically a log of all commands admins type. +# + +admin_logfile = admin.log Index: gnuworld-sithnet/bin/dronescan.example.conf diff -u /dev/null gnuworld-sithnet/bin/dronescan.example.conf:1.1 --- /dev/null Wed Aug 20 07:05:25 2003 +++ gnuworld-sithnet/bin/dronescan.example.conf Wed Aug 20 07:05:14 2003 @@ -0,0 +1,96 @@ +# $Id: dronescan.example.conf,v 1.1 2003/08/20 14:05:14 darthsidious_ Exp $ +# What nickname should the bot use? +nickname = DS + +# What username should the bot use? +username = dronescan + +# What hostname should the bot use? +hostname = SithNet.org + +# What should the bots real name be? +userdescription = SithNet Drone Scanner + +# What user modes should the bot use? +mode = +idk + +# Console channel name and initial modes +consoleChannel = #ds.console +consoleChannelModes = +ntsimcCO + +# SQL Setup +sqlHost = 127.0.0.1 +sqlPort = 5432 +sqlDB = dronescan +sqlUser = dronescan +sqlPass = "" + +# Margins +# Be careful with these. I wouldn't touch chanMargin too much but I suspect +# nickMargin will need tweaking from network to network. These defaults were +# taken from a fairly old burst from a small (2k5 user) network so beware! + +# The fraction of users who must be `abnormal' in a channel for the channel +# to be reported. +channelMargin = 0.8 + +# The margin around the average entropy within which a nickname is considered +# `normal'. Outside this margin is `abnormal'. Note this is the margin *either +# side* of the center, ie 0.25 would give a 50% spread - from 25% to 75%. +nickMargin = 0.1 + +# The channel cutoff is the minimum amount of members a channel must have before +# it can be considered a drone channel. +channelCutoff = 10 + +# The minimum level of information shown in the console channels. Available +# levels are as follows: +# 0 - DEBUG Random debug things that you very probably are not interested in +# 1 - INFO Informational things - this is usually worth seeing +# 2 - WARN Warnings about drone channels and serious events. +# 3 - ERROR DroneScan core errors. +consoleLevel = 1 + +# The minimum amount of votes needed for a channel to be considered abnormal +voteCutoff = 30 + +# The interval (in seconds) during which a channel won't be reported again +# This is to stop repeated spamming of the same channel +dcInterval = 600 + +################ +# JOIN COUNTER # +################ + +# The interval over which join counter checks for joins. This is in seconds. +jcInterval = 10 + +# The trigger level for which join counter warns. Note that the total join +# count must be OVER this level to trigger. +jcCutoff = 10 + + +################# +# CHANNEL RANGE # +################# + +# The total range of entropy in a channel before it is considered abnormal +channelRange = 0.2 + + +############ +# MAXCHANS # +############ + +# The minimum channel membership before a client in a channel is considered +# normal: +maxChans = 2 + + +############## +# COMMONREAL # +############## + +# The amount of users who must have the same realname before being considered +# abnormal. +realCutoff = 4 Index: gnuworld-sithnet/bin/gnutest.example.conf diff -u /dev/null gnuworld-sithnet/bin/gnutest.example.conf:1.1 --- /dev/null Wed Aug 20 07:05:25 2003 +++ gnuworld-sithnet/bin/gnutest.example.conf Wed Aug 20 07:05:14 2003 @@ -0,0 +1,10 @@ +# $Id: gnutest.example.conf,v 1.1 2003/08/20 14:05:14 darthsidious_ Exp $ +# conf file for testClient +username = gnutest +nickname = gnutest +hostname = SithNet.org +userdescription = GNUTest Test Client + +mode = +iokd + +operchan = #Valhalla Index: gnuworld-sithnet/bin/nickserv.example.conf diff -u /dev/null gnuworld-sithnet/bin/nickserv.example.conf:1.1 --- /dev/null Wed Aug 20 07:05:25 2003 +++ gnuworld-sithnet/bin/nickserv.example.conf Wed Aug 20 07:05:14 2003 @@ -0,0 +1,43 @@ +# $Id: nickserv.example.conf,v 1.1 2003/08/20 14:05:14 darthsidious_ Exp $ +nickname = NS + +username = nickserv +hostname = SithNet.org +userdescription = GNUWorld Nickname Services +mode = +idk + +# Console output for nickserv +consoleChannel = #NS +consoleChannelModes = +ntsimcCO + +# DB connection configuration +dbHost = 127.0.0.1 +dbPort = 5432 +dbDb = nickserv +dbUser = nickserv +dbPass = "" + +# The frequency with which to check the queue +checkFreq = 60 + +# The initial startup wait. +# Note this does NOT include checkFreq so make sure to set +# a value somewhat higher than 0 +startDelay = 60 + +# How frequently to commit to the database +# _freq is max time to wait, _count is max entries to wait +commitFreq = 5 +commitCount = 1 + +# What level of debug stuff should be sent to the console channel? +# This is a bitfield, values as follows: +# 1 - PROTOCOL +# 2 - SQL +# 4 - DEBUG +# 8 - INFO +# 16 - WARNING +# 32 - ERROR +# Simply add the numbers together from the levels you want. +consoleLevel = 63 + Index: gnuworld-sithnet/bin/scanner.example.conf diff -u /dev/null gnuworld-sithnet/bin/scanner.example.conf:1.1 --- /dev/null Wed Aug 20 07:05:25 2003 +++ gnuworld-sithnet/bin/scanner.example.conf Wed Aug 20 07:05:14 2003 @@ -0,0 +1,11 @@ +# $Id: scanner.example.conf,v 1.1 2003/08/20 14:05:14 darthsidious_ Exp $ +# Config file for the scanner client +nickname = ForceScan +username = force +hostname = SithNet.org +userdescription = Don't be afraid, I won't hurt you... + +mode = +iok + +# The maximum number of outgoing connections to establish +max_connects = 1500 Index: gnuworld-sithnet/bin/stats.example.conf diff -u /dev/null gnuworld-sithnet/bin/stats.example.conf:1.1 --- /dev/null Wed Aug 20 07:05:25 2003 +++ gnuworld-sithnet/bin/stats.example.conf Wed Aug 20 07:05:14 2003 @@ -0,0 +1,27 @@ +# $Id: stats.example.conf,v 1.1 2003/08/20 14:05:14 darthsidious_ Exp $ +# conf file for stats bot +username = Statserv +nickname = Stats1 +hostname = SithNet.org +userdescription = SithNetNet Statistical Services + +mode = +iok + +# permit the given user -- by account login name -- to use the +# module. You may have as many of these as you like (including none). +# This is case-insensitive. +permit_user = Darth + +# Set this to true if you want to permit opers to use the module, +# set to false otherwise (will not affect other users who have access) +allow_opers = true + +# Set this value to "true" to enable stats logging during burst (it chews +# the hard drive/CPU) +logDuringBurst = false + +# Path to where you want output files to be placed +data_path = . + +part_message = Im too sexy for this channel + ----------------------- End of diff ----------------------- |
From: Tim I. <dar...@us...> - 2003-08-20 16:25:49
|
Committer : Tim Ireland <dar...@us...> CVSROOT : /cvsroot/sithnet-dev Module : gnuworld-sithnet Commit time: 2003-08-20 15:40:45 UTC Modified files: ChangeLog.sithnet Log message: Added a few config options related to VERIFYCommand, read changelog.sithnet for info ---------------------- diff included ---------------------- Index: gnuworld-sithnet/ChangeLog.sithnet diff -u gnuworld-sithnet/ChangeLog.sithnet:1.1.1.1 gnuworld-sithnet/ChangeLog.sithnet:1.2 --- gnuworld-sithnet/ChangeLog.sithnet:1.1.1.1 Mon Aug 18 13:27:30 2003 +++ gnuworld-sithnet/ChangeLog.sithnet Wed Aug 20 08:40:35 2003 @@ -1,3 +1,17 @@ +2003-08-20 Tim Ireland <dar...@us...> + * mod.cservice/cservice.cc mod.cservice/cservice.h + mod.cservice/cservice_Config.h mod.cservice/responses.h + mod.cservice/levels.h mod.cservice/VERIFYCommand.cc + bin/cservice.example.conf ChangeLog.sithnet: + Modified VERIFYCommand so show more access levels, the basic 3 + for cservice kinda sucked. Added officialChan - loaded via + config, used in VERIFYCommand to show a users 'official' status. + Added fedsChan - again, loaded via config, usefull if your + network has a 'feds helper' scheme. + Lowered invite to 24, 100 is way too high. + changed SET NOFORCE to be a *1000 command, otherwise any senior + cs admin could mess around with 'off-limit' channels. + 2003-08-18 Tim Ireland <dar...@us...> * src/Channel.cc, src/server.cc, libircu/msg_M.cc, include/server.h, include/client.h, include/Channel.h: ----------------------- End of diff ----------------------- |
From: Tim I. <dar...@us...> - 2003-08-18 21:28:52
|
Committer : Tim Ireland <dar...@us...> CVSROOT : /cvsroot/sithnet-dev Module : gnuworld-sithnet Commit time: 2003-08-18 21:28:51 UTC Added files: mod.lightweight/README Log message: Initial Import ---------------------- diff included ---------------------- Index: gnuworld-sithnet/mod.lightweight/README diff -u /dev/null gnuworld-sithnet/mod.lightweight/README:1.1 --- /dev/null Mon Aug 18 14:28:52 2003 +++ gnuworld-sithnet/mod.lightweight/README Mon Aug 18 14:28:41 2003 @@ -0,0 +1,5 @@ +Nothing here yet, eventually this is intended to be a smaller, more +compact version of the current mod.cservice implementation, most likely +highly based on the current cservice module. +The first version put here will be almost the same as the current +inplementation, but with less commands and features. ----------------------- End of diff ----------------------- |
From: Tim I. <dar...@us...> - 2003-08-18 21:24:59
|
Committer : Tim Ireland <dar...@us...> CVSROOT : /cvsroot/sithnet-dev Module : gnuworld-sithnet Commit time: 2003-08-18 21:24:59 UTC Log message: Directory /cvsroot/sithnet-dev/gnuworld-sithnet/mod.lightweight added to the repository |
From: Tim I. <dar...@us...> - 2003-08-18 20:31:37
|
Committer : Tim Ireland <dar...@us...> CVSROOT : /cvsroot/sithnet-dev Module : gnuworld-sithnet Commit time: 2003-08-18 20:31:36 UTC Log message: Initial Import with SithNet modifications Status: Vendor Tag: timireland Release Tags: start N gnuworld-sithnet/.cvsignore N gnuworld-sithnet/aclocal.m4 N gnuworld-sithnet/AUTHORS N gnuworld-sithnet/ChangeLog N gnuworld-sithnet/ChangeLog.sithnet N gnuworld-sithnet/config-h.in N gnuworld-sithnet/config.guess N gnuworld-sithnet/config.sub N gnuworld-sithnet/configure N gnuworld-sithnet/configure.ac N gnuworld-sithnet/COPYING N gnuworld-sithnet/Credits N gnuworld-sithnet/depcomp N gnuworld-sithnet/INSTALL N gnuworld-sithnet/install-sh N gnuworld-sithnet/LICENSE N gnuworld-sithnet/ltconfig N gnuworld-sithnet/ltmain.sh N gnuworld-sithnet/Makefile.am N gnuworld-sithnet/Makefile.in N gnuworld-sithnet/missing N gnuworld-sithnet/mkinstalldirs N gnuworld-sithnet/NEWS N gnuworld-sithnet/README N gnuworld-sithnet/TODO N gnuworld-sithnet/bin/.cvsignore N gnuworld-sithnet/bin/ccontrol.example.conf.in N gnuworld-sithnet/bin/clientExample.example.conf.in N gnuworld-sithnet/bin/cloner.example.conf.in N gnuworld-sithnet/bin/cservice.example.conf.in N gnuworld-sithnet/bin/dronescan.example.conf.in N gnuworld-sithnet/bin/gnutest.example.conf.in N gnuworld-sithnet/bin/GNUWorld.example.conf.in N gnuworld-sithnet/bin/nickserv.example.conf.in N gnuworld-sithnet/bin/scanner.example.conf.in N gnuworld-sithnet/bin/server_command_map N gnuworld-sithnet/bin/stats.example.conf.in N gnuworld-sithnet/contrib/00INDEX.TXT N gnuworld-sithnet/contrib/chktrans.py N gnuworld-sithnet/contrib/encrypt.sh N gnuworld-sithnet/db/.cvsignore N gnuworld-sithnet/db/gnuworldDB.cc N gnuworld-sithnet/db/gnuworldDB.h N gnuworld-sithnet/db/Makefile.am N gnuworld-sithnet/db/Makefile.in N gnuworld-sithnet/db/pgsqlDB.cc N gnuworld-sithnet/db/pgsqlDB.h N gnuworld-sithnet/doc/autokill.sql N gnuworld-sithnet/doc/ccontrol.addme.sql N gnuworld-sithnet/doc/ccontrol.commands.sql N gnuworld-sithnet/doc/ccontrol.help.sql N gnuworld-sithnet/doc/ccontrol.sql N gnuworld-sithnet/doc/ccontrol.update.sql N gnuworld-sithnet/doc/checkvarargs.py N gnuworld-sithnet/doc/chktrans.py N gnuworld-sithnet/doc/cparse.py N gnuworld-sithnet/doc/cservice.addme.sql N gnuworld-sithnet/doc/cservice.config.sql N gnuworld-sithnet/doc/cservice.help.sql N gnuworld-sithnet/doc/cservice.sql N gnuworld-sithnet/doc/cservice.web.sql N gnuworld-sithnet/doc/genhelp.py N gnuworld-sithnet/doc/grant.sql N gnuworld-sithnet/doc/greeting.sql N gnuworld-sithnet/doc/languages.sql N gnuworld-sithnet/doc/language_christmas.sql N gnuworld-sithnet/doc/language_dutch.sql N gnuworld-sithnet/doc/language_easter.sql N gnuworld-sithnet/doc/language_german.sql N gnuworld-sithnet/doc/language_greek.sql N gnuworld-sithnet/doc/language_halloween.sql N gnuworld-sithnet/doc/language_swedish.sql N gnuworld-sithnet/doc/language_table.sql N gnuworld-sithnet/doc/local_db.sql N gnuworld-sithnet/doc/motd.sql N gnuworld-sithnet/doc/movetables N gnuworld-sithnet/doc/notes.sql N gnuworld-sithnet/doc/README N gnuworld-sithnet/doc/README.appjudge N gnuworld-sithnet/doc/README.ccontrol N gnuworld-sithnet/doc/README.cservice N gnuworld-sithnet/doc/README.pgsql N gnuworld-sithnet/doc/README.sharedmemory N gnuworld-sithnet/doc/update.channels.sql N gnuworld-sithnet/doc/update.delete.sql N gnuworld-sithnet/doc/update.gfxcode.sql N gnuworld-sithnet/doc/update.statistics.sql N gnuworld-sithnet/doc/update_complaints.sql N gnuworld-sithnet/doc/update_fraud_lists.sql N gnuworld-sithnet/doc/update_themes.sql N gnuworld-sithnet/doc/update_tzmove_l.sql N gnuworld-sithnet/doc/update_tzmove_r.sql N gnuworld-sithnet/doc/cmaster/maint/cleanup_traffic.sql N gnuworld-sithnet/doc/cmaster/maint/enc_pass.sh N gnuworld-sithnet/doc/cmaster/maint/fixDOS.sh N gnuworld-sithnet/doc/cmaster/maint/Manager1K.sh N gnuworld-sithnet/doc/cmaster/maint/WipeUser.sh N gnuworld-sithnet/doc/cmaster/regproc/appjudge N gnuworld-sithnet/doc/cmaster/regproc/appjudge-config N gnuworld-sithnet/doc/cmaster/regproc/cron-judge.in N gnuworld-sithnet/doc/cmaster/regproc/cycle-judge N gnuworld-sithnet/doc/cmaster/website/faq.html N gnuworld-sithnet/doc/cmaster/website/index.html N gnuworld-sithnet/doc/cmaster/website/install.html N gnuworld-sithnet/doc/cmaster/website/manual.html N gnuworld-sithnet/doc/cmaster/website/web.html N gnuworld-sithnet/doc/idoc/index.php N gnuworld-sithnet/doc/idoc/README N gnuworld-sithnet/doc/nickserv/INSTALL N gnuworld-sithnet/doc/nickserv/nickserv.sql N gnuworld-sithnet/doc/nickserv/USAGE N gnuworld-sithnet/include/.cvsignore N gnuworld-sithnet/include/Channel.h N gnuworld-sithnet/include/ChannelUser.h N gnuworld-sithnet/include/client.h N gnuworld-sithnet/include/config.h N gnuworld-sithnet/include/defs.h.in N gnuworld-sithnet/include/events.h N gnuworld-sithnet/include/Gline.h N gnuworld-sithnet/include/iClient.h N gnuworld-sithnet/include/ip.h N gnuworld-sithnet/include/iServer.h N gnuworld-sithnet/include/LoadClientTimerHandler.h N gnuworld-sithnet/include/moduleLoader.h N gnuworld-sithnet/include/Network.h N gnuworld-sithnet/include/NetworkTarget.h N gnuworld-sithnet/include/Numeric.h N gnuworld-sithnet/include/server.h N gnuworld-sithnet/include/ServerCommandHandler.h N gnuworld-sithnet/include/ServerTimerHandlers.h N gnuworld-sithnet/include/TimerHandler.h N gnuworld-sithnet/include/UnloadClientTimerHandler.h N gnuworld-sithnet/lib/.cvsignore N gnuworld-sithnet/lib/so_locations N gnuworld-sithnet/libgnuworld/.cvsignore N gnuworld-sithnet/libgnuworld/Buffer.cc N gnuworld-sithnet/libgnuworld/Buffer.h N gnuworld-sithnet/libgnuworld/Connection.cc N gnuworld-sithnet/libgnuworld/Connection.h N gnuworld-sithnet/libgnuworld/ConnectionHandler.cc N gnuworld-sithnet/libgnuworld/ConnectionHandler.h N gnuworld-sithnet/libgnuworld/ConnectionManager.cc N gnuworld-sithnet/libgnuworld/ConnectionManager.h N gnuworld-sithnet/libgnuworld/EConfig.cc N gnuworld-sithnet/libgnuworld/EConfig.h N gnuworld-sithnet/libgnuworld/ELog.cc N gnuworld-sithnet/libgnuworld/ELog.h N gnuworld-sithnet/libgnuworld/gThread.cc N gnuworld-sithnet/libgnuworld/gThread.h N gnuworld-sithnet/libgnuworld/ircd_chattr.h N gnuworld-sithnet/libgnuworld/Makefile.am N gnuworld-sithnet/libgnuworld/Makefile.in N gnuworld-sithnet/libgnuworld/match.cc N gnuworld-sithnet/libgnuworld/match.h N gnuworld-sithnet/libgnuworld/match_table.h N gnuworld-sithnet/libgnuworld/md5hash.cc N gnuworld-sithnet/libgnuworld/md5hash.h N gnuworld-sithnet/libgnuworld/misc.cc N gnuworld-sithnet/libgnuworld/misc.h N gnuworld-sithnet/libgnuworld/MTrie.cc N gnuworld-sithnet/libgnuworld/MTrie.h N gnuworld-sithnet/libgnuworld/Signal.cc N gnuworld-sithnet/libgnuworld/Signal.h N gnuworld-sithnet/libgnuworld/StringTokenizer.cc N gnuworld-sithnet/libgnuworld/StringTokenizer.h N gnuworld-sithnet/libgnuworld/xparameters.h N gnuworld-sithnet/libircu/.cvsignore N gnuworld-sithnet/libircu/Makefile.am N gnuworld-sithnet/libircu/Makefile.in N gnuworld-sithnet/libircu/msg_AC.cc N gnuworld-sithnet/libircu/msg_AD.cc N gnuworld-sithnet/libircu/msg_B.cc N gnuworld-sithnet/libircu/msg_C.cc N gnuworld-sithnet/libircu/msg_CM.cc N gnuworld-sithnet/libircu/msg_D.cc N gnuworld-sithnet/libircu/msg_DS.cc N gnuworld-sithnet/libircu/msg_EA.cc N gnuworld-sithnet/libircu/msg_EB.cc N gnuworld-sithnet/libircu/msg_G.cc N gnuworld-sithnet/libircu/msg_GL.cc N gnuworld-sithnet/libircu/msg_I.cc N gnuworld-sithnet/libircu/msg_J.cc N gnuworld-sithnet/libircu/msg_JU.cc N gnuworld-sithnet/libircu/msg_K.cc N gnuworld-sithnet/libircu/msg_L.cc N gnuworld-sithnet/libircu/msg_M.cc N gnuworld-sithnet/libircu/msg_M351.cc N gnuworld-sithnet/libircu/msg_N.cc N gnuworld-sithnet/libircu/msg_NOOP.cc N gnuworld-sithnet/libircu/msg_O.cc N gnuworld-sithnet/libircu/msg_P.cc N gnuworld-sithnet/libircu/msg_PA.cc N gnuworld-sithnet/libircu/msg_Q.cc N gnuworld-sithnet/libircu/msg_R.cc N gnuworld-sithnet/libircu/msg_S.cc N gnuworld-sithnet/libircu/msg_Server.cc N gnuworld-sithnet/libircu/msg_SQ.cc N gnuworld-sithnet/libircu/msg_T.cc N gnuworld-sithnet/libircu/msg_V.cc N gnuworld-sithnet/libircu/msg_W.cc N gnuworld-sithnet/libircu/msg_WA.cc N gnuworld-sithnet/libircu/msg_Y.cc N gnuworld-sithnet/libltdl/.cvsignore N gnuworld-sithnet/libltdl/acconfig.h N gnuworld-sithnet/libltdl/acinclude.m4 N gnuworld-sithnet/libltdl/aclocal.m4 N gnuworld-sithnet/libltdl/config-h.in N gnuworld-sithnet/libltdl/config.guess N gnuworld-sithnet/libltdl/config.h.in N gnuworld-sithnet/libltdl/config.sub N gnuworld-sithnet/libltdl/configure N gnuworld-sithnet/libltdl/configure.in N gnuworld-sithnet/libltdl/COPYING.LIB N gnuworld-sithnet/libltdl/install-sh N gnuworld-sithnet/libltdl/ltdl.c N gnuworld-sithnet/libltdl/ltdl.h N gnuworld-sithnet/libltdl/ltmain.sh N gnuworld-sithnet/libltdl/Makefile.am N gnuworld-sithnet/libltdl/Makefile.in N gnuworld-sithnet/libltdl/missing N gnuworld-sithnet/libltdl/mkinstalldirs N gnuworld-sithnet/libltdl/README N gnuworld-sithnet/mod.ccontrol/.cvsignore N gnuworld-sithnet/mod.ccontrol/ADDCOMMANDCommand.cc N gnuworld-sithnet/mod.ccontrol/ADDOPERCHANCommand.cc N gnuworld-sithnet/mod.ccontrol/ADDSERVERCommand.cc N gnuworld-sithnet/mod.ccontrol/ADDUSERCommand.cc N gnuworld-sithnet/mod.ccontrol/ccBadChannel.cc N gnuworld-sithnet/mod.ccontrol/ccBadChannel.h N gnuworld-sithnet/mod.ccontrol/ccException.cc N gnuworld-sithnet/mod.ccontrol/ccException.h N gnuworld-sithnet/mod.ccontrol/ccFloodData.cc N gnuworld-sithnet/mod.ccontrol/ccFloodData.h N gnuworld-sithnet/mod.ccontrol/ccGline.cc N gnuworld-sithnet/mod.ccontrol/ccGline.h N gnuworld-sithnet/mod.ccontrol/ccLog.cc N gnuworld-sithnet/mod.ccontrol/ccLog.h N gnuworld-sithnet/mod.ccontrol/ccontrol.cc N gnuworld-sithnet/mod.ccontrol/ccontrol.h N gnuworld-sithnet/mod.ccontrol/CControlCommands.cc N gnuworld-sithnet/mod.ccontrol/CControlCommands.h N gnuworld-sithnet/mod.ccontrol/ccServer.cc N gnuworld-sithnet/mod.ccontrol/ccServer.h N gnuworld-sithnet/mod.ccontrol/ccUser.cc N gnuworld-sithnet/mod.ccontrol/ccUser.h N gnuworld-sithnet/mod.ccontrol/ccUserData.h N gnuworld-sithnet/mod.ccontrol/CHANINFOCommand.cc N gnuworld-sithnet/mod.ccontrol/CHECKNETCommand.cc N gnuworld-sithnet/mod.ccontrol/CLEARCHANCommand.cc N gnuworld-sithnet/mod.ccontrol/COMMANDSCommand.cc N gnuworld-sithnet/mod.ccontrol/CommandsDec.h N gnuworld-sithnet/mod.ccontrol/commLevels.h N gnuworld-sithnet/mod.ccontrol/CONFIGCommand.cc N gnuworld-sithnet/mod.ccontrol/Constants.h N gnuworld-sithnet/mod.ccontrol/Credits N gnuworld-sithnet/mod.ccontrol/DEAUTHCommand.cc N gnuworld-sithnet/mod.ccontrol/DEOPCommand.cc N gnuworld-sithnet/mod.ccontrol/EXCEPTIONCommand.cc N gnuworld-sithnet/mod.ccontrol/FORCEGLINECommand.cc N gnuworld-sithnet/mod.ccontrol/GCHANCommand.cc N gnuworld-sithnet/mod.ccontrol/GLINECommand.cc N gnuworld-sithnet/mod.ccontrol/HELPCommand.cc N gnuworld-sithnet/mod.ccontrol/INVITECommand.cc N gnuworld-sithnet/mod.ccontrol/JUPECommand.cc N gnuworld-sithnet/mod.ccontrol/KICKCommand.cc N gnuworld-sithnet/mod.ccontrol/LASTCOMCommand.cc N gnuworld-sithnet/mod.ccontrol/LEARNNETCommand.cc N gnuworld-sithnet/mod.ccontrol/LISTCommand.cc N gnuworld-sithnet/mod.ccontrol/LISTHOSTSCommand.cc N gnuworld-sithnet/mod.ccontrol/LISTIGNORESCommand.cc N gnuworld-sithnet/mod.ccontrol/LISTOPERCHANSCommand.cc N gnuworld-sithnet/mod.ccontrol/LOGINCommand.cc N gnuworld-sithnet/mod.ccontrol/Makefile.am N gnuworld-sithnet/mod.ccontrol/Makefile.in N gnuworld-sithnet/mod.ccontrol/MAXUSERSCommand.cc N gnuworld-sithnet/mod.ccontrol/MODECommand.cc N gnuworld-sithnet/mod.ccontrol/MODERATECommand.cc N gnuworld-sithnet/mod.ccontrol/MODUSERCommand.cc N gnuworld-sithnet/mod.ccontrol/NEWPASSCommand.cc N gnuworld-sithnet/mod.ccontrol/NOMODECommand.cc N gnuworld-sithnet/mod.ccontrol/OPCommand.cc N gnuworld-sithnet/mod.ccontrol/README N gnuworld-sithnet/mod.ccontrol/REMCOMMANDCommand.cc N gnuworld-sithnet/mod.ccontrol/REMGCHANCommand.cc N gnuworld-sithnet/mod.ccontrol/REMGLINECommand.cc N gnuworld-sithnet/mod.ccontrol/REMOPERCHANCommand.cc N gnuworld-sithnet/mod.ccontrol/REMOVEIGNORECommand.cc N gnuworld-sithnet/mod.ccontrol/REMSERVERCommand.cc N gnuworld-sithnet/mod.ccontrol/REMSGLINECommand.cc N gnuworld-sithnet/mod.ccontrol/REMUSERCommand.cc N gnuworld-sithnet/mod.ccontrol/REOPCommand.cc N gnuworld-sithnet/mod.ccontrol/SAYCommand.cc N gnuworld-sithnet/mod.ccontrol/SCANCommand.cc N gnuworld-sithnet/mod.ccontrol/SCANGLINECommand.cc N gnuworld-sithnet/mod.ccontrol/SGLINECommand.cc N gnuworld-sithnet/mod.ccontrol/SHUTDOWNCommand.cc N gnuworld-sithnet/mod.ccontrol/STATUSCommand.cc N gnuworld-sithnet/mod.ccontrol/SUSPENDCommand.cc N gnuworld-sithnet/mod.ccontrol/TODO N gnuworld-sithnet/mod.ccontrol/TRANSLATECommand.cc N gnuworld-sithnet/mod.ccontrol/UNMODERATECommand.cc N gnuworld-sithnet/mod.ccontrol/UNSUSPENDCommand.cc N gnuworld-sithnet/mod.ccontrol/USERINFOCommand.cc N gnuworld-sithnet/mod.ccontrol/WHOISCommand.cc N gnuworld-sithnet/mod.clientExample/.cvsignore N gnuworld-sithnet/mod.clientExample/clientExample.cc N gnuworld-sithnet/mod.clientExample/clientExample.h N gnuworld-sithnet/mod.clientExample/Makefile.am N gnuworld-sithnet/mod.clientExample/Makefile.in N gnuworld-sithnet/mod.cloner/.cvsignore N gnuworld-sithnet/mod.cloner/cloner.cc N gnuworld-sithnet/mod.cloner/cloner.h N gnuworld-sithnet/mod.cloner/Makefile.am N gnuworld-sithnet/mod.cloner/Makefile.in N gnuworld-sithnet/mod.cloner/TODO N gnuworld-sithnet/mod.cservice/.cvsignore N gnuworld-sithnet/mod.cservice/ACCESSCommand.cc N gnuworld-sithnet/mod.cservice/ADDCOMMENTCommand.cc N gnuworld-sithnet/mod.cservice/ADDUSERCommand.cc N gnuworld-sithnet/mod.cservice/AI.cc N gnuworld-sithnet/mod.cservice/BANCommand.cc N gnuworld-sithnet/mod.cservice/BANLISTCommand.cc N gnuworld-sithnet/mod.cservice/CHANINFOCommand.cc N gnuworld-sithnet/mod.cservice/CLEARMODECommand.cc N gnuworld-sithnet/mod.cservice/configure N gnuworld-sithnet/mod.cservice/constants.h N gnuworld-sithnet/mod.cservice/Credits N gnuworld-sithnet/mod.cservice/cservice.cc N gnuworld-sithnet/mod.cservice/cservice.h N gnuworld-sithnet/mod.cservice/cserviceCommands.h N gnuworld-sithnet/mod.cservice/cservice_config.h N gnuworld-sithnet/mod.cservice/DEOPCommand.cc N gnuworld-sithnet/mod.cservice/DEVOICECommand.cc N gnuworld-sithnet/mod.cservice/FORCECommand.cc N gnuworld-sithnet/mod.cservice/HELPCommand.cc N gnuworld-sithnet/mod.cservice/INVITECommand.cc N gnuworld-sithnet/mod.cservice/ISREGCommand.cc N gnuworld-sithnet/mod.cservice/JOINCommand.cc N gnuworld-sithnet/mod.cservice/KICKCommand.cc N gnuworld-sithnet/mod.cservice/LBANLISTCommand.cc N gnuworld-sithnet/mod.cservice/levels.h N gnuworld-sithnet/mod.cservice/LOGINCommand.cc N gnuworld-sithnet/mod.cservice/Makefile.am N gnuworld-sithnet/mod.cservice/Makefile.in N gnuworld-sithnet/mod.cservice/MODINFOCommand.cc N gnuworld-sithnet/mod.cservice/MOTDCommand.cc N gnuworld-sithnet/mod.cservice/networkData.cc N gnuworld-sithnet/mod.cservice/networkData.h N gnuworld-sithnet/mod.cservice/NEWPASSCommand.cc N gnuworld-sithnet/mod.cservice/NOTECommand.cc N gnuworld-sithnet/mod.cservice/OPCommand.cc N gnuworld-sithnet/mod.cservice/OPERJOINCommand.cc N gnuworld-sithnet/mod.cservice/OPERPARTCommand.cc N gnuworld-sithnet/mod.cservice/PARTCommand.cc N gnuworld-sithnet/mod.cservice/PURGECommand.cc N gnuworld-sithnet/mod.cservice/QUOTECommand.cc N gnuworld-sithnet/mod.cservice/RANDOMCommand.cc N gnuworld-sithnet/mod.cservice/README N gnuworld-sithnet/mod.cservice/REGISTERCommand.cc N gnuworld-sithnet/mod.cservice/REHASHCommand.cc N gnuworld-sithnet/mod.cservice/RELEASE.NOTES N gnuworld-sithnet/mod.cservice/REMIGNORECommand.cc N gnuworld-sithnet/mod.cservice/REMOVEALLCommand.cc N gnuworld-sithnet/mod.cservice/REMUSERCommand.cc N gnuworld-sithnet/mod.cservice/responses.h N gnuworld-sithnet/mod.cservice/SAYCommand.cc N gnuworld-sithnet/mod.cservice/SCANHOSTCommand.cc N gnuworld-sithnet/mod.cservice/SCANUNAMECommand.cc N gnuworld-sithnet/mod.cservice/SEARCHCommand.cc N gnuworld-sithnet/mod.cservice/SERVNOTICECommand.cc N gnuworld-sithnet/mod.cservice/SETCommand.cc N gnuworld-sithnet/mod.cservice/SHOWCOMMANDSCommand.cc N gnuworld-sithnet/mod.cservice/SHOWIGNORECommand.cc N gnuworld-sithnet/mod.cservice/SHUTDOWNCommand.cc N gnuworld-sithnet/mod.cservice/sqlBan.cc N gnuworld-sithnet/mod.cservice/sqlBan.h N gnuworld-sithnet/mod.cservice/sqlChannel.cc N gnuworld-sithnet/mod.cservice/sqlChannel.h N gnuworld-sithnet/mod.cservice/sqlLevel.cc N gnuworld-sithnet/mod.cservice/sqlLevel.h N gnuworld-sithnet/mod.cservice/sqlPendingChannel.cc N gnuworld-sithnet/mod.cservice/sqlPendingChannel.h N gnuworld-sithnet/mod.cservice/sqlPendingTraffic.cc N gnuworld-sithnet/mod.cservice/sqlPendingTraffic.h N gnuworld-sithnet/mod.cservice/sqlUser.cc N gnuworld-sithnet/mod.cservice/sqlUser.h N gnuworld-sithnet/mod.cservice/STATSCommand.cc N gnuworld-sithnet/mod.cservice/STATUSCommand.cc N gnuworld-sithnet/mod.cservice/SUPPORTCommand.cc N gnuworld-sithnet/mod.cservice/SUSPENDCommand.cc N gnuworld-sithnet/mod.cservice/SUSPENDMECommand.cc N gnuworld-sithnet/mod.cservice/TOPICCommand.cc N gnuworld-sithnet/mod.cservice/UNBANCommand.cc N gnuworld-sithnet/mod.cservice/UNFORCECommand.cc N gnuworld-sithnet/mod.cservice/UNSUSPENDCommand.cc N gnuworld-sithnet/mod.cservice/VERIFYCommand.cc N gnuworld-sithnet/mod.cservice/VOICECommand.cc N gnuworld-sithnet/mod.dronescan/.cvsignore N gnuworld-sithnet/mod.dronescan/ABNORMALSTest.cc N gnuworld-sithnet/mod.dronescan/ACCESSCommand.cc N gnuworld-sithnet/mod.dronescan/ADDUSERCommand.cc N gnuworld-sithnet/mod.dronescan/ChangeLog N gnuworld-sithnet/mod.dronescan/CHECKCommand.cc N gnuworld-sithnet/mod.dronescan/clientData.h N gnuworld-sithnet/mod.dronescan/COMMONREALTest.cc N gnuworld-sithnet/mod.dronescan/Convert.h N gnuworld-sithnet/mod.dronescan/dronescan.cc N gnuworld-sithnet/mod.dronescan/dronescan.h N gnuworld-sithnet/mod.dronescan/dronescanCommands.h N gnuworld-sithnet/mod.dronescan/dronescanTests.h N gnuworld-sithnet/mod.dronescan/HASALLOPTest.cc N gnuworld-sithnet/mod.dronescan/HASOPTest.cc N gnuworld-sithnet/mod.dronescan/levels.h N gnuworld-sithnet/mod.dronescan/LISTCommand.cc N gnuworld-sithnet/mod.dronescan/Makefile.am N gnuworld-sithnet/mod.dronescan/Makefile.in N gnuworld-sithnet/mod.dronescan/MAXCHANSTest.cc N gnuworld-sithnet/mod.dronescan/MODUSERCommand.cc N gnuworld-sithnet/mod.dronescan/QUOTECommand.cc N gnuworld-sithnet/mod.dronescan/RANGETest.cc N gnuworld-sithnet/mod.dronescan/REMUSERCommand.cc N gnuworld-sithnet/mod.dronescan/sqlUser.cc N gnuworld-sithnet/mod.dronescan/sqlUser.h N gnuworld-sithnet/mod.dronescan/STATUSCommand.cc N gnuworld-sithnet/mod.dronescan/Timer.h N gnuworld-sithnet/mod.dronescan/Updates N gnuworld-sithnet/mod.gnutest/.cvsignore N gnuworld-sithnet/mod.gnutest/gnutest.cc N gnuworld-sithnet/mod.gnutest/gnutest.h N gnuworld-sithnet/mod.gnutest/Makefile.am N gnuworld-sithnet/mod.gnutest/Makefile.in N gnuworld-sithnet/mod.nickserv/.cvsignore N gnuworld-sithnet/mod.nickserv/ChangeLog N gnuworld-sithnet/mod.nickserv/INFOCommand.cc N gnuworld-sithnet/mod.nickserv/INVITECommand.cc N gnuworld-sithnet/mod.nickserv/levels.h N gnuworld-sithnet/mod.nickserv/Logger.cc N gnuworld-sithnet/mod.nickserv/Logger.h N gnuworld-sithnet/mod.nickserv/logTarget.h N gnuworld-sithnet/mod.nickserv/Makefile.am N gnuworld-sithnet/mod.nickserv/Makefile.in N gnuworld-sithnet/mod.nickserv/MODUSERCommand.cc N gnuworld-sithnet/mod.nickserv/netData.cc N gnuworld-sithnet/mod.nickserv/netData.h N gnuworld-sithnet/mod.nickserv/nickserv.cc N gnuworld-sithnet/mod.nickserv/nickserv.h N gnuworld-sithnet/mod.nickserv/nickservCommands.h N gnuworld-sithnet/mod.nickserv/README N gnuworld-sithnet/mod.nickserv/RECOVERCommand.cc N gnuworld-sithnet/mod.nickserv/REGISTERCommand.cc N gnuworld-sithnet/mod.nickserv/responses.h N gnuworld-sithnet/mod.nickserv/SETCommand.cc N gnuworld-sithnet/mod.nickserv/SHUTDOWNCommand.cc N gnuworld-sithnet/mod.nickserv/sqlManager.cc N gnuworld-sithnet/mod.nickserv/sqlManager.h N gnuworld-sithnet/mod.nickserv/sqlUser.cc N gnuworld-sithnet/mod.nickserv/sqlUser.h N gnuworld-sithnet/mod.nickserv/Stats.cc N gnuworld-sithnet/mod.nickserv/Stats.h N gnuworld-sithnet/mod.nickserv/STATSCommand.cc N gnuworld-sithnet/mod.nickserv/Updates N gnuworld-sithnet/mod.nickserv/WHOAMICommand.cc N gnuworld-sithnet/mod.scanner/.cvsignore N gnuworld-sithnet/mod.scanner/dbThread.cc N gnuworld-sithnet/mod.scanner/dbThread.h N gnuworld-sithnet/mod.scanner/Makefile.am N gnuworld-sithnet/mod.scanner/Makefile.in N gnuworld-sithnet/mod.scanner/scanner.cc N gnuworld-sithnet/mod.scanner/scanner.h N gnuworld-sithnet/mod.scanner/ScannerModule.cc N gnuworld-sithnet/mod.scanner/ScannerModule.h N gnuworld-sithnet/mod.scanner/wingateModule.cc N gnuworld-sithnet/mod.stats/.cvsignore N gnuworld-sithnet/mod.stats/Makefile.am N gnuworld-sithnet/mod.stats/Makefile.in N gnuworld-sithnet/mod.stats/stats.cc N gnuworld-sithnet/mod.stats/stats.h N gnuworld-sithnet/patches/ADDITIONALChanmodes.patch N gnuworld-sithnet/patches/ADDUSERIDCommand.tar.bz2 N gnuworld-sithnet/patches/clearmode.core.patch N gnuworld-sithnet/patches/NOFORCE.patch N gnuworld-sithnet/patches/usexclient.patch N gnuworld-sithnet/src/.cvsignore N gnuworld-sithnet/src/Channel.cc N gnuworld-sithnet/src/ChannelUser.cc N gnuworld-sithnet/src/client.cc N gnuworld-sithnet/src/iClient.cc N gnuworld-sithnet/src/ip.cc N gnuworld-sithnet/src/iServer.cc N gnuworld-sithnet/src/LoadClientTimerHandler.cc N gnuworld-sithnet/src/main.cc N gnuworld-sithnet/src/Makefile.am N gnuworld-sithnet/src/Makefile.in N gnuworld-sithnet/src/Network.cc N gnuworld-sithnet/src/server.cc N gnuworld-sithnet/src/ServerTimerHandlers.cc N gnuworld-sithnet/src/sig.inc N gnuworld-sithnet/src/UnloadClientTimerHandler.cc N gnuworld-sithnet/test/burst.cc N gnuworld-sithnet/test/econfig.cc N gnuworld-sithnet/test/econfig.conf N gnuworld-sithnet/test/gThread.cc N gnuworld-sithnet/test/kill_mult N gnuworld-sithnet/test/kill_test N gnuworld-sithnet/test/Makefile.am N gnuworld-sithnet/test/Makefile.in N gnuworld-sithnet/test/match.cc N gnuworld-sithnet/test/mtrie.cc N gnuworld-sithnet/test/mtrie.match N gnuworld-sithnet/test/mtrie.match2 N gnuworld-sithnet/test/mtrie_load.cc N gnuworld-sithnet/test/mtrie_perf.cc N gnuworld-sithnet/test/mtrie_perf_summary.cc N gnuworld-sithnet/test/README.burst N gnuworld-sithnet/test/README.econfig N gnuworld-sithnet/test/README.gthread N gnuworld-sithnet/test/README.match N gnuworld-sithnet/test/README.mtrie N gnuworld-sithnet/test/README.signal N gnuworld-sithnet/test/README.stringtokenizer N gnuworld-sithnet/test/README.testBot N gnuworld-sithnet/test/README.test_kick_transaction N gnuworld-sithnet/test/signal.cc N gnuworld-sithnet/test/stringtokenizer.cc N gnuworld-sithnet/test/testbot.cc N gnuworld-sithnet/test/testBot.conf N gnuworld-sithnet/test/testbot.h N gnuworld-sithnet/test/test_kick_transaction.cc No conflicts created by this import |
From: Tim I. <dar...@us...> - 2003-08-18 13:57:21
|
Committer : Tim Ireland <dar...@us...> CVSROOT : /cvsroot/sithnet-dev Module : CVSROOT Commit time: 2003-08-18 13:03:38 UTC Modified files: maillist Log message: misc update ---------------------- diff included ---------------------- Index: CVSROOT/maillist diff -u CVSROOT/maillist:1.4 CVSROOT/maillist:1.5 --- CVSROOT/maillist:1.4 Fri Aug 15 06:32:28 2003 +++ CVSROOT/maillist Mon Aug 18 06:03:28 2003 @@ -18,4 +18,3 @@ # in addition to the first matching regex or "DEFAULT". DEFAULT sit...@li... -DEFAULT evu...@ly... ----------------------- End of diff ----------------------- |
From: Tim I. <dar...@us...> - 2003-08-17 21:57:44
|
Committer : Tim Ireland <dar...@us...> CVSROOT : /cvsroot/sithnet-dev Module : ircu2.10 Commit time: 2003-08-17 21:57:40 UTC Log message: Secondary Import Status: Vendor Tag: timireland Release Tags: start U ircu2.10/.cvsignore U ircu2.10/.indent.pro U ircu2.10/acconfig.h U ircu2.10/acinclude.m4 U ircu2.10/aclocal.m4 U ircu2.10/config.guess U ircu2.10/config.h.in U ircu2.10/config.sub U ircu2.10/configure U ircu2.10/configure.in U ircu2.10/INSTALL U ircu2.10/install-sh U ircu2.10/LICENSE U ircu2.10/Makefile.in U ircu2.10/README U ircu2.10/stamp-h.in U ircu2.10/doc/.cvsignore U ircu2.10/doc/Authors U ircu2.10/doc/boxenircu.features U ircu2.10/doc/example.conf U ircu2.10/doc/fda.txt U ircu2.10/doc/freebsd.txt U ircu2.10/doc/iauth.txt U ircu2.10/doc/ircd.8 U ircu2.10/doc/ircd.conf.sample U ircu2.10/doc/ircd.motd U ircu2.10/doc/ircd.opermotd U ircu2.10/doc/ircd.quotes U ircu2.10/doc/ircd.rules U ircu2.10/doc/iso-time.html U ircu2.10/doc/Makefile.in U ircu2.10/doc/p10.html U ircu2.10/doc/readme.asll U ircu2.10/doc/readme.chroot U ircu2.10/doc/readme.crules U ircu2.10/doc/readme.features U ircu2.10/doc/readme.gline U ircu2.10/doc/readme.indent U ircu2.10/doc/readme.jupe U ircu2.10/doc/readme.log U ircu2.10/doc/readme.os U ircu2.10/doc/readme.privs U ircu2.10/doc/readme.who U ircu2.10/doc/rfc1413.txt U ircu2.10/doc/rfc1459.unet U ircu2.10/doc/snomask.html U ircu2.10/doc/strings.txt U ircu2.10/doc/api/api.txt U ircu2.10/doc/api/events.txt U ircu2.10/doc/api/features.txt U ircu2.10/doc/api/gline.txt U ircu2.10/doc/api/ircd_snprintf.txt U ircu2.10/doc/api/joinbuf.txt U ircu2.10/doc/api/jupe.txt U ircu2.10/doc/api/log.txt U ircu2.10/doc/api/modebuf.txt U ircu2.10/doc/api/motd.txt U ircu2.10/doc/api/msgq.txt U ircu2.10/doc/api/privileges.txt U ircu2.10/doc/api/send.txt U ircu2.10/include/channel.h U ircu2.10/include/check.h U ircu2.10/include/class.h U ircu2.10/include/client.h U ircu2.10/include/crule.h U ircu2.10/include/dbuf.h U ircu2.10/include/fda.h U ircu2.10/include/fileio.h U ircu2.10/include/gline.h U ircu2.10/include/handlers.h U ircu2.10/include/hash.h U ircu2.10/include/iauth.h U ircu2.10/include/IPcheck.h U ircu2.10/include/ircd.h U ircu2.10/include/ircd_alloc.h U ircu2.10/include/ircd_chattr.h U ircu2.10/include/ircd_defs.h U ircu2.10/include/ircd_events.h U ircu2.10/include/ircd_features.h U ircu2.10/include/ircd_handler.h U ircu2.10/include/ircd_log.h U ircu2.10/include/ircd_osdep.h U ircu2.10/include/ircd_relay.h U ircu2.10/include/ircd_reply.h U ircu2.10/include/ircd_signal.h U ircu2.10/include/ircd_snprintf.h U ircu2.10/include/ircd_string.h U ircu2.10/include/ircd_xopen.h U ircu2.10/include/jupe.h U ircu2.10/include/list.h U ircu2.10/include/listener.h U ircu2.10/include/match.h U ircu2.10/include/motd.h U ircu2.10/include/msg.h U ircu2.10/include/msgq.h U ircu2.10/include/numeric.h U ircu2.10/include/numnicks.h U ircu2.10/include/opercmds.h U ircu2.10/include/packet.h U ircu2.10/include/parse.h U ircu2.10/include/patchlevel.h U ircu2.10/include/querycmds.h U ircu2.10/include/random.h U ircu2.10/include/res.h U ircu2.10/include/send.h U ircu2.10/include/ssl.h U ircu2.10/include/struct.h U ircu2.10/include/support.h U ircu2.10/include/supported.h U ircu2.10/include/sys.h U ircu2.10/include/s_auth.h U ircu2.10/include/s_bsd.h U ircu2.10/include/s_conf.h U ircu2.10/include/s_debug.h U ircu2.10/include/s_misc.h U ircu2.10/include/s_numeric.h U ircu2.10/include/s_serv.h U ircu2.10/include/s_stats.h U ircu2.10/include/s_user.h U ircu2.10/include/uping.h U ircu2.10/include/userload.h U ircu2.10/include/version.h U ircu2.10/include/whocmds.h U ircu2.10/include/whowas.h U ircu2.10/ircd/.cvsignore U ircu2.10/ircd/channel.c U ircu2.10/ircd/chkconf.c U ircu2.10/ircd/class.c U ircu2.10/ircd/client.c U ircu2.10/ircd/crule.c U ircu2.10/ircd/dbuf.c U ircu2.10/ircd/engine_devpoll.c U ircu2.10/ircd/engine_kqueue.c U ircu2.10/ircd/engine_poll.c U ircu2.10/ircd/engine_select.c U ircu2.10/ircd/fda.c U ircu2.10/ircd/fda_t.c U ircu2.10/ircd/fileio.c U ircu2.10/ircd/gline.c U ircu2.10/ircd/hash.c U ircu2.10/ircd/hosthiding.c U ircu2.10/ircd/iauth.c U ircu2.10/ircd/IPcheck.c U ircu2.10/ircd/ircd.c U ircu2.10/ircd/ircd_alloc.c U ircu2.10/ircd/ircd_events.c U ircu2.10/ircd/ircd_features.c U ircu2.10/ircd/ircd_log.c U ircu2.10/ircd/ircd_relay.c U ircu2.10/ircd/ircd_reply.c U ircu2.10/ircd/ircd_signal.c U ircu2.10/ircd/ircd_snprintf.c U ircu2.10/ircd/ircd_string.c U ircu2.10/ircd/ircd_xopen.c U ircu2.10/ircd/jupe.c U ircu2.10/ircd/list.c U ircu2.10/ircd/listener.c U ircu2.10/ircd/Makefile.in U ircu2.10/ircd/match.c U ircu2.10/ircd/motd.c U ircu2.10/ircd/msgq.c U ircu2.10/ircd/m_account.c U ircu2.10/ircd/m_admin.c U ircu2.10/ircd/m_asll.c U ircu2.10/ircd/m_away.c U ircu2.10/ircd/m_burst.c U ircu2.10/ircd/m_check.c U ircu2.10/ircd/m_clearmode.c U ircu2.10/ircd/m_close.c U ircu2.10/ircd/m_connect.c U ircu2.10/ircd/m_cprivmsg.c U ircu2.10/ircd/m_create.c U ircu2.10/ircd/m_defaults.c U ircu2.10/ircd/m_destruct.c U ircu2.10/ircd/m_desynch.c U ircu2.10/ircd/m_die.c U ircu2.10/ircd/m_endburst.c U ircu2.10/ircd/m_error.c U ircu2.10/ircd/m_get.c U ircu2.10/ircd/m_gline.c U ircu2.10/ircd/m_help.c U ircu2.10/ircd/m_info.c U ircu2.10/ircd/m_invite.c U ircu2.10/ircd/m_ircops.c U ircu2.10/ircd/m_ison.c U ircu2.10/ircd/m_join.c U ircu2.10/ircd/m_jupe.c U ircu2.10/ircd/m_kick.c U ircu2.10/ircd/m_kill.c U ircu2.10/ircd/m_links.c U ircu2.10/ircd/m_list.c U ircu2.10/ircd/m_lusers.c U ircu2.10/ircd/m_map.c U ircu2.10/ircd/m_mkpasswd.c U ircu2.10/ircd/m_mode.c U ircu2.10/ircd/m_motd.c U ircu2.10/ircd/m_names.c U ircu2.10/ircd/m_nick.c U ircu2.10/ircd/m_notice.c U ircu2.10/ircd/m_oper.c U ircu2.10/ircd/m_opermotd.c U ircu2.10/ircd/m_opmode.c U ircu2.10/ircd/m_part.c U ircu2.10/ircd/m_pass.c U ircu2.10/ircd/m_ping.c U ircu2.10/ircd/m_pong.c U ircu2.10/ircd/m_privmsg.c U ircu2.10/ircd/m_privs.c U ircu2.10/ircd/m_privset.c U ircu2.10/ircd/m_proto.c U ircu2.10/ircd/m_pseudo.c U ircu2.10/ircd/m_quit.c U ircu2.10/ircd/m_rahash.c U ircu2.10/ircd/m_rehash.c U ircu2.10/ircd/m_reset.c U ircu2.10/ircd/m_restart.c U ircu2.10/ircd/m_rping.c U ircu2.10/ircd/m_rpong.c U ircu2.10/ircd/m_rules.c U ircu2.10/ircd/m_sahost.c U ircu2.10/ircd/m_saident.c U ircu2.10/ircd/m_sajoin.c U ircu2.10/ircd/m_saname.c U ircu2.10/ircd/m_sanick.c U ircu2.10/ircd/m_sapart.c U ircu2.10/ircd/m_server.c U ircu2.10/ircd/m_set.c U ircu2.10/ircd/m_settime.c U ircu2.10/ircd/m_silence.c U ircu2.10/ircd/m_squit.c U ircu2.10/ircd/m_stats.c U ircu2.10/ircd/m_svsnoop.c U ircu2.10/ircd/m_time.c U ircu2.10/ircd/m_tmpl.c U ircu2.10/ircd/m_topic.c U ircu2.10/ircd/m_trace.c U ircu2.10/ircd/m_uping.c U ircu2.10/ircd/m_user.c U ircu2.10/ircd/m_userhost.c U ircu2.10/ircd/m_userip.c U ircu2.10/ircd/m_vctrl.c U ircu2.10/ircd/m_version.c U ircu2.10/ircd/m_vhost.c U ircu2.10/ircd/m_wallchops.c U ircu2.10/ircd/m_wallops.c U ircu2.10/ircd/m_wallusers.c U ircu2.10/ircd/m_wallvoices.c U ircu2.10/ircd/m_who.c U ircu2.10/ircd/m_whois.c U ircu2.10/ircd/m_whowas.c U ircu2.10/ircd/numnicks.c U ircu2.10/ircd/opercmds.c U ircu2.10/ircd/os_bsd.c U ircu2.10/ircd/os_generic.c U ircu2.10/ircd/os_linux.c U ircu2.10/ircd/os_openbsd.c U ircu2.10/ircd/os_solaris.c U ircu2.10/ircd/packet.c U ircu2.10/ircd/parse.c U ircu2.10/ircd/querycmds.c U ircu2.10/ircd/random.c U ircu2.10/ircd/res.c U ircu2.10/ircd/send.c U ircu2.10/ircd/ssl.c U ircu2.10/ircd/support.c U ircu2.10/ircd/s_auth.c U ircu2.10/ircd/s_bsd.c U ircu2.10/ircd/s_conf.c U ircu2.10/ircd/s_debug.c U ircu2.10/ircd/s_err.c U ircu2.10/ircd/s_misc.c U ircu2.10/ircd/s_numeric.c U ircu2.10/ircd/s_serv.c U ircu2.10/ircd/s_stats.c U ircu2.10/ircd/s_user.c U ircu2.10/ircd/table_gen.c U ircu2.10/ircd/uping.c U ircu2.10/ircd/userload.c U ircu2.10/ircd/version.c.SH U ircu2.10/ircd/whocmds.c U ircu2.10/ircd/whowas.c U ircu2.10/ircd/test/ircd_chattr.0.dat U ircu2.10/ircd/test/ircd_chattr_t.c U ircu2.10/ircd/test/ircd_string_t.c U ircu2.10/ircd/test/Makefile U ircu2.10/tools/autodoc.py U ircu2.10/tools/crypter U ircu2.10/tools/hashtoy U ircu2.10/tools/Makefile.crypt U ircu2.10/tools/mkchroot U ircu2.10/tools/mkpasswd.c U ircu2.10/tools/README U ircu2.10/tools/ringlog.c U ircu2.10/tools/ringlog.pl U ircu2.10/tools/sums U ircu2.10/tools/transition U ircu2.10/tools/untabify U ircu2.10/tools/wrapper.c U ircu2.10/tools/Bounce/bounce.conf U ircu2.10/tools/Bounce/Bounce.cpp U ircu2.10/tools/Bounce/Bounce.h U ircu2.10/tools/Bounce/build U ircu2.10/tools/linesync/linesync.conf U ircu2.10/tools/linesync/linesync.sh U ircu2.10/tools/makepem/makepem U ircu2.10/tools/zbounce/aclocal.m4 U ircu2.10/tools/zbounce/Bounce.cpp U ircu2.10/tools/zbounce/Bounce.h U ircu2.10/tools/zbounce/ChangeLog U ircu2.10/tools/zbounce/config.guess U ircu2.10/tools/zbounce/config.h U ircu2.10/tools/zbounce/config.sub U ircu2.10/tools/zbounce/configure U ircu2.10/tools/zbounce/configure.in U ircu2.10/tools/zbounce/Connection.cpp U ircu2.10/tools/zbounce/Connection.h U ircu2.10/tools/zbounce/defs.h.in U ircu2.10/tools/zbounce/install-sh U ircu2.10/tools/zbounce/LICENSE U ircu2.10/tools/zbounce/Listener.cpp U ircu2.10/tools/zbounce/Listener.h U ircu2.10/tools/zbounce/main.cpp U ircu2.10/tools/zbounce/main.h U ircu2.10/tools/zbounce/Makefile.am U ircu2.10/tools/zbounce/Makefile.in U ircu2.10/tools/zbounce/missing U ircu2.10/tools/zbounce/mkinstalldirs U ircu2.10/tools/zbounce/README U ircu2.10/tools/zbounce/Socket.cpp U ircu2.10/tools/zbounce/Socket.h U ircu2.10/tools/zbounce/stamp-h.in U ircu2.10/tools/zbounce/StringTokenizer.cpp U ircu2.10/tools/zbounce/StringTokenizer.h U ircu2.10/tools/zbounce/zbounce.conf No conflicts created by this import |
From: Tim I. <dar...@us...> - 2003-08-17 17:37:38
|
Committer : Tim Ireland <dar...@us...> CVSROOT : /cvsroot/sithnet-dev Module : ircu2.10 Commit time: 2003-08-17 17:37:34 UTC Log message: Import of IRCu Status: Vendor Tag: timireland Release Tags: start U ircu2.10/.cvsignore U ircu2.10/.indent.pro U ircu2.10/acconfig.h U ircu2.10/acinclude.m4 U ircu2.10/aclocal.m4 U ircu2.10/config.guess U ircu2.10/config.h.in U ircu2.10/config.sub U ircu2.10/configure U ircu2.10/configure.in U ircu2.10/INSTALL U ircu2.10/install-sh U ircu2.10/LICENSE U ircu2.10/Makefile.in U ircu2.10/README U ircu2.10/stamp-h.in U ircu2.10/doc/.cvsignore U ircu2.10/doc/Authors N ircu2.10/doc/boxenircu.features U ircu2.10/doc/example.conf U ircu2.10/doc/fda.txt U ircu2.10/doc/freebsd.txt U ircu2.10/doc/iauth.txt U ircu2.10/doc/ircd.8 N ircu2.10/doc/ircd.conf.sample N ircu2.10/doc/ircd.motd N ircu2.10/doc/ircd.opermotd N ircu2.10/doc/ircd.quotes N ircu2.10/doc/ircd.rules U ircu2.10/doc/iso-time.html U ircu2.10/doc/Makefile.in U ircu2.10/doc/p10.html U ircu2.10/doc/readme.asll U ircu2.10/doc/readme.chroot U ircu2.10/doc/readme.crules U ircu2.10/doc/readme.features U ircu2.10/doc/readme.gline U ircu2.10/doc/readme.indent U ircu2.10/doc/readme.jupe U ircu2.10/doc/readme.log N ircu2.10/doc/readme.os N ircu2.10/doc/readme.privs U ircu2.10/doc/readme.who U ircu2.10/doc/rfc1413.txt U ircu2.10/doc/rfc1459.unet U ircu2.10/doc/snomask.html U ircu2.10/doc/strings.txt U ircu2.10/doc/api/api.txt U ircu2.10/doc/api/events.txt U ircu2.10/doc/api/features.txt U ircu2.10/doc/api/gline.txt U ircu2.10/doc/api/ircd_snprintf.txt U ircu2.10/doc/api/joinbuf.txt U ircu2.10/doc/api/jupe.txt U ircu2.10/doc/api/log.txt U ircu2.10/doc/api/modebuf.txt U ircu2.10/doc/api/motd.txt U ircu2.10/doc/api/msgq.txt U ircu2.10/doc/api/privileges.txt U ircu2.10/doc/api/send.txt U ircu2.10/include/channel.h N ircu2.10/include/check.h U ircu2.10/include/class.h U ircu2.10/include/client.h U ircu2.10/include/crule.h U ircu2.10/include/dbuf.h N ircu2.10/include/fda.h U ircu2.10/include/fileio.h U ircu2.10/include/gline.h U ircu2.10/include/handlers.h U ircu2.10/include/hash.h U ircu2.10/include/iauth.h U ircu2.10/include/IPcheck.h U ircu2.10/include/ircd.h U ircu2.10/include/ircd_alloc.h U ircu2.10/include/ircd_chattr.h U ircu2.10/include/ircd_defs.h U ircu2.10/include/ircd_events.h U ircu2.10/include/ircd_features.h U ircu2.10/include/ircd_handler.h U ircu2.10/include/ircd_log.h U ircu2.10/include/ircd_osdep.h U ircu2.10/include/ircd_relay.h U ircu2.10/include/ircd_reply.h U ircu2.10/include/ircd_signal.h U ircu2.10/include/ircd_snprintf.h U ircu2.10/include/ircd_string.h U ircu2.10/include/ircd_xopen.h U ircu2.10/include/jupe.h U ircu2.10/include/list.h U ircu2.10/include/listener.h U ircu2.10/include/match.h U ircu2.10/include/motd.h U ircu2.10/include/msg.h U ircu2.10/include/msgq.h U ircu2.10/include/numeric.h U ircu2.10/include/numnicks.h U ircu2.10/include/opercmds.h U ircu2.10/include/packet.h U ircu2.10/include/parse.h U ircu2.10/include/patchlevel.h U ircu2.10/include/querycmds.h U ircu2.10/include/random.h U ircu2.10/include/res.h U ircu2.10/include/send.h N ircu2.10/include/ssl.h U ircu2.10/include/struct.h U ircu2.10/include/support.h U ircu2.10/include/supported.h U ircu2.10/include/sys.h U ircu2.10/include/s_auth.h U ircu2.10/include/s_bsd.h U ircu2.10/include/s_conf.h U ircu2.10/include/s_debug.h U ircu2.10/include/s_misc.h U ircu2.10/include/s_numeric.h U ircu2.10/include/s_serv.h U ircu2.10/include/s_stats.h U ircu2.10/include/s_user.h U ircu2.10/include/uping.h U ircu2.10/include/userload.h U ircu2.10/include/version.h U ircu2.10/include/whocmds.h U ircu2.10/include/whowas.h U ircu2.10/ircd/.cvsignore U ircu2.10/ircd/channel.c U ircu2.10/ircd/chkconf.c U ircu2.10/ircd/class.c U ircu2.10/ircd/client.c U ircu2.10/ircd/crule.c U ircu2.10/ircd/dbuf.c U ircu2.10/ircd/engine_devpoll.c U ircu2.10/ircd/engine_kqueue.c U ircu2.10/ircd/engine_poll.c U ircu2.10/ircd/engine_select.c N ircu2.10/ircd/fda.c N ircu2.10/ircd/fda_t.c U ircu2.10/ircd/fileio.c U ircu2.10/ircd/gline.c U ircu2.10/ircd/hash.c N ircu2.10/ircd/hosthiding.c U ircu2.10/ircd/iauth.c U ircu2.10/ircd/IPcheck.c U ircu2.10/ircd/ircd.c U ircu2.10/ircd/ircd_alloc.c U ircu2.10/ircd/ircd_events.c U ircu2.10/ircd/ircd_features.c U ircu2.10/ircd/ircd_log.c U ircu2.10/ircd/ircd_relay.c U ircu2.10/ircd/ircd_reply.c U ircu2.10/ircd/ircd_signal.c U ircu2.10/ircd/ircd_snprintf.c U ircu2.10/ircd/ircd_string.c U ircu2.10/ircd/ircd_xopen.c U ircu2.10/ircd/jupe.c U ircu2.10/ircd/list.c U ircu2.10/ircd/listener.c U ircu2.10/ircd/Makefile.in U ircu2.10/ircd/match.c U ircu2.10/ircd/motd.c U ircu2.10/ircd/msgq.c U ircu2.10/ircd/m_account.c U ircu2.10/ircd/m_admin.c U ircu2.10/ircd/m_asll.c U ircu2.10/ircd/m_away.c U ircu2.10/ircd/m_burst.c N ircu2.10/ircd/m_check.c U ircu2.10/ircd/m_clearmode.c U ircu2.10/ircd/m_close.c U ircu2.10/ircd/m_connect.c U ircu2.10/ircd/m_cprivmsg.c U ircu2.10/ircd/m_create.c U ircu2.10/ircd/m_defaults.c U ircu2.10/ircd/m_destruct.c U ircu2.10/ircd/m_desynch.c U ircu2.10/ircd/m_die.c U ircu2.10/ircd/m_endburst.c U ircu2.10/ircd/m_error.c U ircu2.10/ircd/m_get.c U ircu2.10/ircd/m_gline.c U ircu2.10/ircd/m_help.c U ircu2.10/ircd/m_info.c U ircu2.10/ircd/m_invite.c N ircu2.10/ircd/m_ircops.c U ircu2.10/ircd/m_ison.c U ircu2.10/ircd/m_join.c U ircu2.10/ircd/m_jupe.c U ircu2.10/ircd/m_kick.c U ircu2.10/ircd/m_kill.c U ircu2.10/ircd/m_links.c U ircu2.10/ircd/m_list.c U ircu2.10/ircd/m_lusers.c U ircu2.10/ircd/m_map.c N ircu2.10/ircd/m_mkpasswd.c U ircu2.10/ircd/m_mode.c U ircu2.10/ircd/m_motd.c U ircu2.10/ircd/m_names.c U ircu2.10/ircd/m_nick.c U ircu2.10/ircd/m_notice.c U ircu2.10/ircd/m_oper.c N ircu2.10/ircd/m_opermotd.c U ircu2.10/ircd/m_opmode.c U ircu2.10/ircd/m_part.c U ircu2.10/ircd/m_pass.c U ircu2.10/ircd/m_ping.c U ircu2.10/ircd/m_pong.c U ircu2.10/ircd/m_privmsg.c U ircu2.10/ircd/m_privs.c N ircu2.10/ircd/m_privset.c U ircu2.10/ircd/m_proto.c N ircu2.10/ircd/m_pseudo.c U ircu2.10/ircd/m_quit.c N ircu2.10/ircd/m_rahash.c U ircu2.10/ircd/m_rehash.c U ircu2.10/ircd/m_reset.c U ircu2.10/ircd/m_restart.c U ircu2.10/ircd/m_rping.c U ircu2.10/ircd/m_rpong.c N ircu2.10/ircd/m_rules.c N ircu2.10/ircd/m_sahost.c N ircu2.10/ircd/m_saident.c N ircu2.10/ircd/m_sajoin.c N ircu2.10/ircd/m_saname.c N ircu2.10/ircd/m_sanick.c N ircu2.10/ircd/m_sapart.c U ircu2.10/ircd/m_server.c U ircu2.10/ircd/m_set.c U ircu2.10/ircd/m_settime.c U ircu2.10/ircd/m_silence.c U ircu2.10/ircd/m_squit.c U ircu2.10/ircd/m_stats.c N ircu2.10/ircd/m_svsnoop.c U ircu2.10/ircd/m_time.c U ircu2.10/ircd/m_tmpl.c U ircu2.10/ircd/m_topic.c U ircu2.10/ircd/m_trace.c U ircu2.10/ircd/m_uping.c U ircu2.10/ircd/m_user.c U ircu2.10/ircd/m_userhost.c U ircu2.10/ircd/m_userip.c N ircu2.10/ircd/m_vctrl.c U ircu2.10/ircd/m_version.c N ircu2.10/ircd/m_vhost.c U ircu2.10/ircd/m_wallchops.c U ircu2.10/ircd/m_wallops.c U ircu2.10/ircd/m_wallusers.c U ircu2.10/ircd/m_wallvoices.c U ircu2.10/ircd/m_who.c U ircu2.10/ircd/m_whois.c U ircu2.10/ircd/m_whowas.c U ircu2.10/ircd/numnicks.c U ircu2.10/ircd/opercmds.c U ircu2.10/ircd/os_bsd.c U ircu2.10/ircd/os_generic.c U ircu2.10/ircd/os_linux.c U ircu2.10/ircd/os_openbsd.c U ircu2.10/ircd/os_solaris.c U ircu2.10/ircd/packet.c U ircu2.10/ircd/parse.c U ircu2.10/ircd/querycmds.c U ircu2.10/ircd/random.c N ircu2.10/ircd/res.c U ircu2.10/ircd/send.c N ircu2.10/ircd/ssl.c U ircu2.10/ircd/support.c U ircu2.10/ircd/s_auth.c U ircu2.10/ircd/s_bsd.c U ircu2.10/ircd/s_conf.c U ircu2.10/ircd/s_debug.c U ircu2.10/ircd/s_err.c U ircu2.10/ircd/s_misc.c U ircu2.10/ircd/s_numeric.c U ircu2.10/ircd/s_serv.c U ircu2.10/ircd/s_stats.c U ircu2.10/ircd/s_user.c U ircu2.10/ircd/table_gen.c U ircu2.10/ircd/uping.c U ircu2.10/ircd/userload.c U ircu2.10/ircd/version.c.SH U ircu2.10/ircd/whocmds.c U ircu2.10/ircd/whowas.c U ircu2.10/ircd/test/ircd_chattr.0.dat U ircu2.10/ircd/test/ircd_chattr_t.c U ircu2.10/ircd/test/ircd_string_t.c U ircu2.10/ircd/test/Makefile U ircu2.10/tools/autodoc.py U ircu2.10/tools/crypter U ircu2.10/tools/hashtoy U ircu2.10/tools/Makefile.crypt U ircu2.10/tools/mkchroot U ircu2.10/tools/mkpasswd.c U ircu2.10/tools/README U ircu2.10/tools/ringlog.c U ircu2.10/tools/ringlog.pl U ircu2.10/tools/sums U ircu2.10/tools/transition U ircu2.10/tools/untabify U ircu2.10/tools/wrapper.c U ircu2.10/tools/Bounce/bounce.conf U ircu2.10/tools/Bounce/Bounce.cpp U ircu2.10/tools/Bounce/Bounce.h U ircu2.10/tools/Bounce/build U ircu2.10/tools/linesync/linesync.conf U ircu2.10/tools/linesync/linesync.sh N ircu2.10/tools/makepem/makepem N ircu2.10/tools/zbounce/aclocal.m4 N ircu2.10/tools/zbounce/Bounce.cpp N ircu2.10/tools/zbounce/Bounce.h N ircu2.10/tools/zbounce/ChangeLog N ircu2.10/tools/zbounce/config.guess N ircu2.10/tools/zbounce/config.h N ircu2.10/tools/zbounce/config.sub N ircu2.10/tools/zbounce/configure N ircu2.10/tools/zbounce/configure.in N ircu2.10/tools/zbounce/Connection.cpp N ircu2.10/tools/zbounce/Connection.h N ircu2.10/tools/zbounce/defs.h.in N ircu2.10/tools/zbounce/install-sh N ircu2.10/tools/zbounce/LICENSE N ircu2.10/tools/zbounce/Listener.cpp N ircu2.10/tools/zbounce/Listener.h N ircu2.10/tools/zbounce/main.cpp N ircu2.10/tools/zbounce/main.h N ircu2.10/tools/zbounce/Makefile.am N ircu2.10/tools/zbounce/Makefile.in N ircu2.10/tools/zbounce/missing N ircu2.10/tools/zbounce/mkinstalldirs N ircu2.10/tools/zbounce/README N ircu2.10/tools/zbounce/Socket.cpp N ircu2.10/tools/zbounce/Socket.h N ircu2.10/tools/zbounce/stamp-h.in N ircu2.10/tools/zbounce/StringTokenizer.cpp N ircu2.10/tools/zbounce/StringTokenizer.h N ircu2.10/tools/zbounce/zbounce.conf No conflicts created by this import |
From: Tim I. <dar...@us...> - 2003-08-16 23:33:46
|
Committer : Tim Ireland <dar...@us...> CVSROOT : /cvsroot/sithnet-dev Module : ircu2.10 Commit time: 2003-08-16 23:33:41 UTC Log message: Initial import Status: Vendor Tag: timireland Release Tags: start N ircu2.10/.cvsignore N ircu2.10/.indent.pro N ircu2.10/acconfig.h N ircu2.10/acinclude.m4 N ircu2.10/aclocal.m4 N ircu2.10/ChangeLog N ircu2.10/ChangeLog.11 N ircu2.10/config.guess N ircu2.10/config.h.in N ircu2.10/config.sub N ircu2.10/configure N ircu2.10/configure.in N ircu2.10/INSTALL N ircu2.10/install-sh N ircu2.10/INSTALL_FR N ircu2.10/ircd-patch N ircu2.10/LICENSE N ircu2.10/Makefile.in N ircu2.10/README N ircu2.10/README.FreeBSD N ircu2.10/README.Solaris N ircu2.10/RELEASE.NOTES N ircu2.10/stamp-h.in N ircu2.10/adns/.cvsignore N ircu2.10/adns/aclocal.m4 N ircu2.10/adns/configure N ircu2.10/adns/configure.in N ircu2.10/adns/COPYING N ircu2.10/adns/Makefile N ircu2.10/adns/Makefile.in N ircu2.10/adns/README N ircu2.10/adns/README.html N ircu2.10/adns/README.ircu N ircu2.10/adns/settings.make.in N ircu2.10/adns/src/.cvsignore N ircu2.10/adns/src/adns.h N ircu2.10/adns/src/adns.make N ircu2.10/adns/src/check.c N ircu2.10/adns/src/config.h N ircu2.10/adns/src/config.h.in N ircu2.10/adns/src/dlist.h N ircu2.10/adns/src/event.c N ircu2.10/adns/src/general.c N ircu2.10/adns/src/internal.h N ircu2.10/adns/src/Makefile.in N ircu2.10/adns/src/parse.c N ircu2.10/adns/src/poll.c N ircu2.10/adns/src/query.c N ircu2.10/adns/src/reply.c N ircu2.10/adns/src/setup.c N ircu2.10/adns/src/transmit.c N ircu2.10/adns/src/tvarith.h N ircu2.10/adns/src/types.c N ircu2.10/doc/.cvsignore N ircu2.10/doc/Authors N ircu2.10/doc/Configure.help N ircu2.10/doc/debug_memleak_gc.patch N ircu2.10/doc/exaconf.2 N ircu2.10/doc/example.conf N ircu2.10/doc/fda.txt N ircu2.10/doc/features.txt N ircu2.10/doc/freebsd.txt N ircu2.10/doc/iauth.txt N ircu2.10/doc/irc.1 N ircu2.10/doc/ircd.8 N ircu2.10/doc/iso-time.html N ircu2.10/doc/linux-poll.patch N ircu2.10/doc/Makefile.in N ircu2.10/doc/p10.html N ircu2.10/doc/readme.asll N ircu2.10/doc/readme.chroot N ircu2.10/doc/readme.crules N ircu2.10/doc/readme.cvs N ircu2.10/doc/readme.features N ircu2.10/doc/readme.gline N ircu2.10/doc/readme.indent N ircu2.10/doc/readme.jupe N ircu2.10/doc/readme.log N ircu2.10/doc/readme.who N ircu2.10/doc/readme.www N ircu2.10/doc/rfc1413.txt N ircu2.10/doc/rfc1459.unet N ircu2.10/doc/snomask.html N ircu2.10/doc/strings.txt N ircu2.10/doc/api/api.txt N ircu2.10/doc/api/events.txt N ircu2.10/doc/api/features.txt N ircu2.10/doc/api/gline.txt N ircu2.10/doc/api/ircd_snprintf.txt N ircu2.10/doc/api/joinbuf.txt N ircu2.10/doc/api/jupe.txt N ircu2.10/doc/api/log.txt N ircu2.10/doc/api/modebuf.txt N ircu2.10/doc/api/motd.txt N ircu2.10/doc/api/msgq.txt N ircu2.10/doc/api/privileges.txt N ircu2.10/doc/api/send.txt N ircu2.10/doc/history/2.4.notes N ircu2.10/doc/history/2.7-New N ircu2.10/doc/history/ChangeLog.07 N ircu2.10/doc/history/ChangeLog.10 N ircu2.10/doc/history/history.pre24 N ircu2.10/doc/history/Manual N ircu2.10/doc/history/overview.u2.9 N ircu2.10/doc/history/README-2.6 N ircu2.10/doc/history/README.patches N ircu2.10/include/.cvsignore N ircu2.10/include/channel.h N ircu2.10/include/class.h N ircu2.10/include/client.h N ircu2.10/include/crule.h N ircu2.10/include/dbuf.h N ircu2.10/include/destruct_event.h N ircu2.10/include/fileio.h N ircu2.10/include/gline.h N ircu2.10/include/handlers.h N ircu2.10/include/hash.h N ircu2.10/include/iauth.h N ircu2.10/include/IPcheck.h N ircu2.10/include/ircd.h N ircu2.10/include/ircd_alloc.h N ircu2.10/include/ircd_chattr.h N ircu2.10/include/ircd_defs.h N ircu2.10/include/ircd_events.h N ircu2.10/include/ircd_features.h N ircu2.10/include/ircd_handler.h N ircu2.10/include/ircd_log.h N ircu2.10/include/ircd_osdep.h N ircu2.10/include/ircd_relay.h N ircu2.10/include/ircd_reply.h N ircu2.10/include/ircd_signal.h N ircu2.10/include/ircd_snprintf.h N ircu2.10/include/ircd_string.h N ircu2.10/include/ircd_xopen.h N ircu2.10/include/jupe.h N ircu2.10/include/list.h N ircu2.10/include/listener.h N ircu2.10/include/map.h N ircu2.10/include/match.h N ircu2.10/include/memdebug.h N ircu2.10/include/motd.h N ircu2.10/include/msg.h N ircu2.10/include/msgq.h N ircu2.10/include/numeric.h N ircu2.10/include/numnicks.h N ircu2.10/include/opercmds.h N ircu2.10/include/packet.h N ircu2.10/include/parse.h N ircu2.10/include/patchlevel.h N ircu2.10/include/querycmds.h N ircu2.10/include/random.h N ircu2.10/include/res.h N ircu2.10/include/send.h N ircu2.10/include/struct.h N ircu2.10/include/support.h N ircu2.10/include/supported.h N ircu2.10/include/sys.h N ircu2.10/include/s_auth.h N ircu2.10/include/s_bsd.h N ircu2.10/include/s_conf.h N ircu2.10/include/s_debug.h N ircu2.10/include/s_misc.h N ircu2.10/include/s_numeric.h N ircu2.10/include/s_serv.h N ircu2.10/include/s_stats.h N ircu2.10/include/s_user.h N ircu2.10/include/uping.h N ircu2.10/include/userload.h N ircu2.10/include/version.h N ircu2.10/include/whocmds.h N ircu2.10/include/whowas.h N ircu2.10/ircd/.cvsignore N ircu2.10/ircd/channel.c N ircu2.10/ircd/chkconf.c N ircu2.10/ircd/class.c N ircu2.10/ircd/client.c N ircu2.10/ircd/crule.c N ircu2.10/ircd/dbuf.c N ircu2.10/ircd/destruct_event.c N ircu2.10/ircd/engine_devpoll.c N ircu2.10/ircd/engine_kqueue.c N ircu2.10/ircd/engine_poll.c N ircu2.10/ircd/engine_select.c N ircu2.10/ircd/fileio.c N ircu2.10/ircd/gline.c N ircu2.10/ircd/hash.c N ircu2.10/ircd/iauth.c N ircu2.10/ircd/IPcheck.c N ircu2.10/ircd/ircd.c N ircu2.10/ircd/ircd_alloc.c N ircu2.10/ircd/ircd_events.c N ircu2.10/ircd/ircd_features.c N ircu2.10/ircd/ircd_lexer.l N ircu2.10/ircd/ircd_log.c N ircu2.10/ircd/ircd_parser.y N ircu2.10/ircd/ircd_relay.c N ircu2.10/ircd/ircd_reply.c N ircu2.10/ircd/ircd_signal.c N ircu2.10/ircd/ircd_snprintf.c N ircu2.10/ircd/ircd_string.c N ircu2.10/ircd/ircd_xopen.c N ircu2.10/ircd/jupe.c N ircu2.10/ircd/list.c N ircu2.10/ircd/listener.c N ircu2.10/ircd/Makefile.in N ircu2.10/ircd/map.c N ircu2.10/ircd/match.c N ircu2.10/ircd/memdebug.c N ircu2.10/ircd/motd.c N ircu2.10/ircd/msgq.c N ircu2.10/ircd/m_account.c N ircu2.10/ircd/m_admin.c N ircu2.10/ircd/m_asll.c N ircu2.10/ircd/m_away.c N ircu2.10/ircd/m_burst.c N ircu2.10/ircd/m_clearmode.c N ircu2.10/ircd/m_close.c N ircu2.10/ircd/m_connect.c N ircu2.10/ircd/m_cprivmsg.c N ircu2.10/ircd/m_create.c N ircu2.10/ircd/m_defaults.c N ircu2.10/ircd/m_destruct.c N ircu2.10/ircd/m_desynch.c N ircu2.10/ircd/m_die.c N ircu2.10/ircd/m_endburst.c N ircu2.10/ircd/m_error.c N ircu2.10/ircd/m_get.c N ircu2.10/ircd/m_gline.c N ircu2.10/ircd/m_help.c N ircu2.10/ircd/m_info.c N ircu2.10/ircd/m_invite.c N ircu2.10/ircd/m_ison.c N ircu2.10/ircd/m_join.c N ircu2.10/ircd/m_jupe.c N ircu2.10/ircd/m_kick.c N ircu2.10/ircd/m_kill.c N ircu2.10/ircd/m_links.c N ircu2.10/ircd/m_list.c N ircu2.10/ircd/m_lusers.c N ircu2.10/ircd/m_map.c N ircu2.10/ircd/m_mode.c N ircu2.10/ircd/m_motd.c N ircu2.10/ircd/m_names.c N ircu2.10/ircd/m_nick.c N ircu2.10/ircd/m_notice.c N ircu2.10/ircd/m_oper.c N ircu2.10/ircd/m_opmode.c N ircu2.10/ircd/m_part.c N ircu2.10/ircd/m_pass.c N ircu2.10/ircd/m_ping.c N ircu2.10/ircd/m_pong.c N ircu2.10/ircd/m_privmsg.c N ircu2.10/ircd/m_privs.c N ircu2.10/ircd/m_proto.c N ircu2.10/ircd/m_quit.c N ircu2.10/ircd/m_rehash.c N ircu2.10/ircd/m_reset.c N ircu2.10/ircd/m_restart.c N ircu2.10/ircd/m_rping.c N ircu2.10/ircd/m_rpong.c N ircu2.10/ircd/m_server.c N ircu2.10/ircd/m_set.c N ircu2.10/ircd/m_settime.c N ircu2.10/ircd/m_silence.c N ircu2.10/ircd/m_squit.c N ircu2.10/ircd/m_stats.c N ircu2.10/ircd/m_time.c N ircu2.10/ircd/m_tmpl.c N ircu2.10/ircd/m_topic.c N ircu2.10/ircd/m_trace.c N ircu2.10/ircd/m_uping.c N ircu2.10/ircd/m_user.c N ircu2.10/ircd/m_userhost.c N ircu2.10/ircd/m_userip.c N ircu2.10/ircd/m_version.c N ircu2.10/ircd/m_wallchops.c N ircu2.10/ircd/m_wallops.c N ircu2.10/ircd/m_wallusers.c N ircu2.10/ircd/m_wallvoices.c N ircu2.10/ircd/m_who.c N ircu2.10/ircd/m_whois.c N ircu2.10/ircd/m_whowas.c N ircu2.10/ircd/numnicks.c N ircu2.10/ircd/opercmds.c N ircu2.10/ircd/os_bsd.c N ircu2.10/ircd/os_generic.c N ircu2.10/ircd/os_linux.c N ircu2.10/ircd/os_openbsd.c N ircu2.10/ircd/os_solaris.c N ircu2.10/ircd/packet.c N ircu2.10/ircd/parse.c N ircu2.10/ircd/querycmds.c N ircu2.10/ircd/random.c N ircu2.10/ircd/res_adns.c N ircu2.10/ircd/res_libresolv.c N ircu2.10/ircd/send.c N ircu2.10/ircd/support.c N ircu2.10/ircd/s_auth.c N ircu2.10/ircd/s_bsd.c N ircu2.10/ircd/s_conf.c N ircu2.10/ircd/s_debug.c N ircu2.10/ircd/s_err.c N ircu2.10/ircd/s_misc.c N ircu2.10/ircd/s_numeric.c N ircu2.10/ircd/s_serv.c N ircu2.10/ircd/s_stats.c N ircu2.10/ircd/s_user.c N ircu2.10/ircd/table_gen.c N ircu2.10/ircd/uping.c N ircu2.10/ircd/userload.c N ircu2.10/ircd/version.c.SH N ircu2.10/ircd/whocmds.c N ircu2.10/ircd/whowas.c N ircu2.10/ircd/test/ircd_chattr.0.dat N ircu2.10/ircd/test/ircd_chattr_t.c N ircu2.10/ircd/test/ircd_string_t.c N ircu2.10/ircd/test/Makefile N ircu2.10/libs/adns/.cvsignore N ircu2.10/libs/adns/aclocal.m4 N ircu2.10/libs/adns/configure N ircu2.10/libs/adns/configure.in N ircu2.10/libs/adns/COPYING N ircu2.10/libs/adns/Makefile N ircu2.10/libs/adns/Makefile.in N ircu2.10/libs/adns/README N ircu2.10/libs/adns/README.html N ircu2.10/libs/adns/README.ircu N ircu2.10/libs/adns/settings.make.in N ircu2.10/libs/adns/src/.cvsignore N ircu2.10/libs/adns/src/adns.h N ircu2.10/libs/adns/src/adns.make N ircu2.10/libs/adns/src/check.c N ircu2.10/libs/adns/src/config.h N ircu2.10/libs/adns/src/config.h.in N ircu2.10/libs/adns/src/dlist.h N ircu2.10/libs/adns/src/event.c N ircu2.10/libs/adns/src/general.c N ircu2.10/libs/adns/src/internal.h N ircu2.10/libs/adns/src/Makefile.in N ircu2.10/libs/adns/src/parse.c N ircu2.10/libs/adns/src/poll.c N ircu2.10/libs/adns/src/query.c N ircu2.10/libs/adns/src/reply.c N ircu2.10/libs/adns/src/setup.c N ircu2.10/libs/adns/src/transmit.c N ircu2.10/libs/adns/src/tvarith.h N ircu2.10/libs/adns/src/types.c N ircu2.10/libs/dbprim/acinclude.m4 N ircu2.10/libs/dbprim/aclocal.m4 N ircu2.10/libs/dbprim/ChangeLog N ircu2.10/libs/dbprim/comp_et-sh.in N ircu2.10/libs/dbprim/config.guess N ircu2.10/libs/dbprim/config.sub N ircu2.10/libs/dbprim/configure N ircu2.10/libs/dbprim/configure.in N ircu2.10/libs/dbprim/COPYING N ircu2.10/libs/dbprim/dbprim.h.bot N ircu2.10/libs/dbprim/dbprim.h.top N ircu2.10/libs/dbprim/dbprim_err.et N ircu2.10/libs/dbprim/dbprim_int.h N ircu2.10/libs/dbprim/he_init.c N ircu2.10/libs/dbprim/ht_add.c N ircu2.10/libs/dbprim/ht_find.c N ircu2.10/libs/dbprim/ht_flush.c N ircu2.10/libs/dbprim/ht_free.c N ircu2.10/libs/dbprim/ht_init.c N ircu2.10/libs/dbprim/ht_iter.c N ircu2.10/libs/dbprim/ht_move.c N ircu2.10/libs/dbprim/ht_remove.c N ircu2.10/libs/dbprim/ht_resize.c N ircu2.10/libs/dbprim/INSTALL N ircu2.10/libs/dbprim/install-sh N ircu2.10/libs/dbprim/le_init.c N ircu2.10/libs/dbprim/ll_add.c N ircu2.10/libs/dbprim/ll_find.c N ircu2.10/libs/dbprim/ll_flush.c N ircu2.10/libs/dbprim/ll_init.c N ircu2.10/libs/dbprim/ll_iter.c N ircu2.10/libs/dbprim/ll_move.c N ircu2.10/libs/dbprim/ll_remove.c N ircu2.10/libs/dbprim/ltmain.sh N ircu2.10/libs/dbprim/Makefile.am N ircu2.10/libs/dbprim/Makefile.in N ircu2.10/libs/dbprim/missing N ircu2.10/libs/dbprim/mkinstalldirs N ircu2.10/libs/dbprim/sh_find.c N ircu2.10/libs/dbprim/sh_flush.c N ircu2.10/libs/dbprim/sh_init.c N ircu2.10/libs/dbprim/sh_iter.c N ircu2.10/libs/dbprim/sh_move.c N ircu2.10/libs/dbprim/smat_freelist.c N ircu2.10/libs/dbprim/st_add.c N ircu2.10/libs/dbprim/st_find.c N ircu2.10/libs/dbprim/st_flush.c N ircu2.10/libs/dbprim/st_free.c N ircu2.10/libs/dbprim/st_init.c N ircu2.10/libs/dbprim/st_iter.c N ircu2.10/libs/dbprim/st_remove.c N ircu2.10/libs/dbprim/st_resize.c N ircu2.10/libs/dbprim/_hash_prime.c N ircu2.10/libs/dbprim/_smat_comp.c N ircu2.10/libs/dbprim/_smat_hash.c N ircu2.10/libs/dbprim/_smat_resize.c N ircu2.10/libs/dbprim/doc/Doxyfile N ircu2.10/libs/dbprim/doc/html/doxygen.css N ircu2.10/libs/dbprim/doc/html/doxygen.gif N ircu2.10/libs/dbprim/doc/html/group__dbprim__hash.html N ircu2.10/libs/dbprim/doc/html/group__dbprim__key.html N ircu2.10/libs/dbprim/doc/html/group__dbprim__link.html N ircu2.10/libs/dbprim/doc/html/group__dbprim__smat.html N ircu2.10/libs/dbprim/doc/html/index.html N ircu2.10/libs/dbprim/doc/html/modules.html N ircu2.10/libs/dbprim/doc/latex/doxygen.sty N ircu2.10/libs/dbprim/doc/latex/group__dbprim__hash.tex N ircu2.10/libs/dbprim/doc/latex/group__dbprim__key.tex N ircu2.10/libs/dbprim/doc/latex/group__dbprim__link.tex N ircu2.10/libs/dbprim/doc/latex/group__dbprim__smat.tex N ircu2.10/libs/dbprim/doc/latex/index.tex N ircu2.10/libs/dbprim/doc/latex/Makefile N ircu2.10/libs/dbprim/doc/latex/modules.tex N ircu2.10/libs/dbprim/doc/latex/refman.tex N ircu2.10/libs/dbprim/doc/man/man3/dbprim_hash.3 N ircu2.10/libs/dbprim/doc/man/man3/dbprim_key.3 N ircu2.10/libs/dbprim/doc/man/man3/dbprim_link.3 N ircu2.10/libs/dbprim/doc/man/man3/dbprim_smat.3 N ircu2.10/libs/dbprim/tests/Makefile.am N ircu2.10/libs/dbprim/tests/Makefile.in N ircu2.10/libs/dbprim/tests/test-harness.c N ircu2.10/libs/dbprim/tests/test-harness.dat N ircu2.10/libs/dbprim/tests/t_he_init.c N ircu2.10/libs/dbprim/tests/t_ht_addfind.c N ircu2.10/libs/dbprim/tests/t_ht_flush.c N ircu2.10/libs/dbprim/tests/t_ht_free.c N ircu2.10/libs/dbprim/tests/t_ht_init.c N ircu2.10/libs/dbprim/tests/t_ht_iter.c N ircu2.10/libs/dbprim/tests/t_ht_move.c N ircu2.10/libs/dbprim/tests/t_ht_remove.c N ircu2.10/libs/dbprim/tests/t_ht_resize.c N ircu2.10/libs/dbprim/tests/t_le_init.c N ircu2.10/libs/dbprim/tests/t_ll_add.c N ircu2.10/libs/dbprim/tests/t_ll_find.c N ircu2.10/libs/dbprim/tests/t_ll_flush.c N ircu2.10/libs/dbprim/tests/t_ll_init.c N ircu2.10/libs/dbprim/tests/t_ll_iter.c N ircu2.10/libs/dbprim/tests/t_ll_move.c N ircu2.10/libs/dbprim/tests/t_ll_remove.c N ircu2.10/libs/dbprim/tests/t_st_init.c N ircu2.10/patches/diffs/astralnet.diff N ircu2.10/patches/diffs/lazy.diff N ircu2.10/patches/diffs/login-on-connect.diff N ircu2.10/patches/diffs/nocfv.diff N ircu2.10/patches/diffs/sline.diff N ircu2.10/patches/diffs/topicburst.diff N ircu2.10/patches/diffs/sithnet/acconlychmode.diff N ircu2.10/patches/diffs/sithnet/acconlyumode.diff N ircu2.10/patches/diffs/sithnet/asuka-cC.patch N ircu2.10/patches/diffs/sithnet/asuka-delayedjoin.patch N ircu2.10/patches/diffs/sithnet/asuka-kX.patch N ircu2.10/patches/diffs/sithnet/asuka-opernetride.patch N ircu2.10/patches/diffs/sithnet/asuka-opersendq.patch N ircu2.10/patches/diffs/sithnet/badchanline.diff N ircu2.10/patches/diffs/sithnet/chmodeslist.diff N ircu2.10/patches/diffs/sithnet/hosthiding.diff N ircu2.10/patches/diffs/sithnet/ircops.diff N ircu2.10/patches/diffs/sithnet/locgloblusers.diff N ircu2.10/patches/diffs/sithnet/lusersconncount.diff N ircu2.10/patches/diffs/sithnet/mkpasswd.diff N ircu2.10/patches/diffs/sithnet/opermotd.diff N ircu2.10/patches/diffs/sithnet/rpl_redir.diff N ircu2.10/patches/diffs/sithnet/sahost.diff N ircu2.10/patches/diffs/sithnet/saident.diff N ircu2.10/patches/diffs/sithnet/sajoin.diff N ircu2.10/patches/diffs/sithnet/saname.diff N ircu2.10/patches/diffs/sithnet/sanick.diff N ircu2.10/patches/diffs/sithnet/sapart.diff N ircu2.10/patches/diffs/sithnet/unauthip.diff N ircu2.10/patches/diffs/sithnet/warn_change.diff N ircu2.10/patches/diffs/sithnet/whoissecchan.diff N ircu2.10/patches/docs/acconlychmode.readme N ircu2.10/patches/docs/acconlyumode.readme N ircu2.10/patches/docs/badchanline.readme N ircu2.10/patches/docs/chmodeslist.readme N ircu2.10/patches/docs/hosthiding.readme N ircu2.10/patches/docs/ircops.readme N ircu2.10/patches/docs/locgloblusers.readme N ircu2.10/patches/docs/lusersconncount.readme N ircu2.10/patches/docs/mkpasswd.readme N ircu2.10/patches/docs/opermotd.readme N ircu2.10/patches/docs/rpl_redir.readme N ircu2.10/patches/docs/sahost.readme N ircu2.10/patches/docs/saident.readme N ircu2.10/patches/docs/sajoin.readme N ircu2.10/patches/docs/saname.readme N ircu2.10/patches/docs/sanick.readme N ircu2.10/patches/docs/sapart.readme N ircu2.10/patches/docs/unauthip.readme N ircu2.10/patches/docs/warn_change.readme N ircu2.10/patches/docs/whoissecchan.readme N ircu2.10/tools/autodoc.py N ircu2.10/tools/convert-conf.py N ircu2.10/tools/crypter N ircu2.10/tools/hashtoy N ircu2.10/tools/Makefile.crypt N ircu2.10/tools/mkchroot N ircu2.10/tools/mkpasswd.c N ircu2.10/tools/README N ircu2.10/tools/ringlog.c N ircu2.10/tools/ringlog.pl N ircu2.10/tools/sums N ircu2.10/tools/transition N ircu2.10/tools/untabify N ircu2.10/tools/wrapper.c N ircu2.10/tools/Bounce/bounce.conf N ircu2.10/tools/Bounce/Bounce.cpp N ircu2.10/tools/Bounce/Bounce.h N ircu2.10/tools/Bounce/build N ircu2.10/tools/linesync/linesync.conf N ircu2.10/tools/linesync/linesync.sh No conflicts created by this import |
From: Tim I. <dar...@us...> - 2003-08-16 22:22:18
|
Committer : Tim Ireland <dar...@us...> CVSROOT : /cvsroot/sithnet-dev Module : gnuworld Commit time: 2003-08-16 22:22:15 UTC Log message: Initial inport Status: Vendor Tag: timireland Release Tags: start U gnuworld/.cvsignore U gnuworld/aclocal.m4 U gnuworld/AUTHORS U gnuworld/ChangeLog U gnuworld/config-h.in U gnuworld/config.guess U gnuworld/config.sub U gnuworld/configure U gnuworld/configure.ac U gnuworld/COPYING U gnuworld/Credits U gnuworld/depcomp U gnuworld/INSTALL U gnuworld/install-sh U gnuworld/LICENSE U gnuworld/ltconfig U gnuworld/ltmain.sh U gnuworld/Makefile.am U gnuworld/Makefile.in U gnuworld/missing U gnuworld/mkinstalldirs U gnuworld/NEWS U gnuworld/README U gnuworld/TODO U gnuworld/bin/.cvsignore U gnuworld/bin/ccontrol.example.conf.in U gnuworld/bin/clientExample.example.conf.in U gnuworld/bin/cloner.example.conf.in U gnuworld/bin/cservice.example.conf.in U gnuworld/bin/dronescan.example.conf.in U gnuworld/bin/gnutest.example.conf.in U gnuworld/bin/GNUWorld.example.conf.in U gnuworld/bin/nickserv.example.conf.in U gnuworld/bin/scanner.example.conf.in U gnuworld/bin/server_command_map U gnuworld/bin/stats.example.conf.in U gnuworld/contrib/00INDEX.TXT U gnuworld/contrib/chktrans.py U gnuworld/contrib/encrypt.sh U gnuworld/db/.cvsignore U gnuworld/db/gnuworldDB.cc U gnuworld/db/gnuworldDB.h U gnuworld/db/Makefile.am U gnuworld/db/Makefile.in U gnuworld/db/pgsqlDB.cc U gnuworld/db/pgsqlDB.h U gnuworld/doc/autokill.sql U gnuworld/doc/ccontrol.addme.sql U gnuworld/doc/ccontrol.commands.sql U gnuworld/doc/ccontrol.help.sql U gnuworld/doc/ccontrol.sql U gnuworld/doc/ccontrol.update.sql U gnuworld/doc/checkvarargs.py U gnuworld/doc/chktrans.py U gnuworld/doc/cparse.py U gnuworld/doc/cservice.addme.sql U gnuworld/doc/cservice.config.sql U gnuworld/doc/cservice.help.sql U gnuworld/doc/cservice.sql U gnuworld/doc/cservice.web.sql U gnuworld/doc/genhelp.py U gnuworld/doc/grant.sql U gnuworld/doc/greeting.sql U gnuworld/doc/languages.sql U gnuworld/doc/language_christmas.sql U gnuworld/doc/language_dutch.sql U gnuworld/doc/language_easter.sql U gnuworld/doc/language_german.sql U gnuworld/doc/language_greek.sql U gnuworld/doc/language_halloween.sql U gnuworld/doc/language_swedish.sql U gnuworld/doc/language_table.sql U gnuworld/doc/local_db.sql U gnuworld/doc/motd.sql U gnuworld/doc/movetables U gnuworld/doc/notes.sql U gnuworld/doc/README U gnuworld/doc/README.appjudge U gnuworld/doc/README.ccontrol U gnuworld/doc/README.cservice U gnuworld/doc/README.pgsql U gnuworld/doc/README.sharedmemory U gnuworld/doc/update.channels.sql U gnuworld/doc/update.delete.sql U gnuworld/doc/update.gfxcode.sql U gnuworld/doc/update.statistics.sql N gnuworld/doc/update_complaints.sql U gnuworld/doc/update_fraud_lists.sql U gnuworld/doc/update_themes.sql U gnuworld/doc/update_tzmove_l.sql U gnuworld/doc/update_tzmove_r.sql N gnuworld/doc/cmaster/maint/cleanup_traffic.sql N gnuworld/doc/cmaster/maint/enc_pass.sh N gnuworld/doc/cmaster/maint/fixDOS.sh N gnuworld/doc/cmaster/maint/Manager1K.sh N gnuworld/doc/cmaster/maint/WipeUser.sh N gnuworld/doc/cmaster/regproc/appjudge N gnuworld/doc/cmaster/regproc/appjudge-config N gnuworld/doc/cmaster/regproc/cron-judge.in N gnuworld/doc/cmaster/regproc/cycle-judge U gnuworld/doc/cmaster/website/faq.html U gnuworld/doc/cmaster/website/index.html U gnuworld/doc/cmaster/website/install.html U gnuworld/doc/cmaster/website/manual.html U gnuworld/doc/cmaster/website/web.html U gnuworld/doc/idoc/index.php U gnuworld/doc/idoc/README U gnuworld/doc/nickserv/INSTALL U gnuworld/doc/nickserv/nickserv.sql U gnuworld/doc/nickserv/USAGE U gnuworld/include/.cvsignore U gnuworld/include/Channel.h U gnuworld/include/ChannelUser.h U gnuworld/include/client.h U gnuworld/include/config.h U gnuworld/include/defs.h.in U gnuworld/include/events.h U gnuworld/include/Gline.h U gnuworld/include/iClient.h U gnuworld/include/ip.h U gnuworld/include/iServer.h U gnuworld/include/LoadClientTimerHandler.h U gnuworld/include/moduleLoader.h U gnuworld/include/Network.h N gnuworld/include/NetworkTarget.h U gnuworld/include/Numeric.h U gnuworld/include/server.h U gnuworld/include/ServerCommandHandler.h U gnuworld/include/ServerTimerHandlers.h U gnuworld/include/TimerHandler.h U gnuworld/include/UnloadClientTimerHandler.h U gnuworld/lib/.cvsignore U gnuworld/lib/so_locations U gnuworld/libgnuworld/.cvsignore U gnuworld/libgnuworld/Buffer.cc U gnuworld/libgnuworld/Buffer.h U gnuworld/libgnuworld/Connection.cc U gnuworld/libgnuworld/Connection.h U gnuworld/libgnuworld/ConnectionHandler.cc U gnuworld/libgnuworld/ConnectionHandler.h U gnuworld/libgnuworld/ConnectionManager.cc U gnuworld/libgnuworld/ConnectionManager.h U gnuworld/libgnuworld/EConfig.cc U gnuworld/libgnuworld/EConfig.h U gnuworld/libgnuworld/ELog.cc U gnuworld/libgnuworld/ELog.h U gnuworld/libgnuworld/gThread.cc U gnuworld/libgnuworld/gThread.h U gnuworld/libgnuworld/ircd_chattr.h U gnuworld/libgnuworld/Makefile.am U gnuworld/libgnuworld/Makefile.in U gnuworld/libgnuworld/match.cc U gnuworld/libgnuworld/match.h U gnuworld/libgnuworld/match_table.h U gnuworld/libgnuworld/md5hash.cc U gnuworld/libgnuworld/md5hash.h U gnuworld/libgnuworld/misc.cc U gnuworld/libgnuworld/misc.h N gnuworld/libgnuworld/MTrie.cc N gnuworld/libgnuworld/MTrie.h U gnuworld/libgnuworld/Signal.cc U gnuworld/libgnuworld/Signal.h U gnuworld/libgnuworld/StringTokenizer.cc U gnuworld/libgnuworld/StringTokenizer.h U gnuworld/libgnuworld/xparameters.h U gnuworld/libircu/.cvsignore U gnuworld/libircu/Makefile.am U gnuworld/libircu/Makefile.in U gnuworld/libircu/msg_AC.cc U gnuworld/libircu/msg_AD.cc U gnuworld/libircu/msg_B.cc U gnuworld/libircu/msg_C.cc U gnuworld/libircu/msg_CM.cc U gnuworld/libircu/msg_D.cc U gnuworld/libircu/msg_DS.cc U gnuworld/libircu/msg_EA.cc U gnuworld/libircu/msg_EB.cc U gnuworld/libircu/msg_G.cc U gnuworld/libircu/msg_GL.cc U gnuworld/libircu/msg_I.cc U gnuworld/libircu/msg_J.cc U gnuworld/libircu/msg_JU.cc U gnuworld/libircu/msg_K.cc U gnuworld/libircu/msg_L.cc U gnuworld/libircu/msg_M.cc U gnuworld/libircu/msg_M351.cc U gnuworld/libircu/msg_N.cc U gnuworld/libircu/msg_NOOP.cc U gnuworld/libircu/msg_O.cc U gnuworld/libircu/msg_P.cc U gnuworld/libircu/msg_PA.cc U gnuworld/libircu/msg_Q.cc U gnuworld/libircu/msg_R.cc U gnuworld/libircu/msg_S.cc U gnuworld/libircu/msg_Server.cc U gnuworld/libircu/msg_SQ.cc U gnuworld/libircu/msg_T.cc U gnuworld/libircu/msg_V.cc U gnuworld/libircu/msg_W.cc U gnuworld/libircu/msg_WA.cc U gnuworld/libircu/msg_Y.cc U gnuworld/libltdl/.cvsignore U gnuworld/libltdl/acconfig.h U gnuworld/libltdl/acinclude.m4 U gnuworld/libltdl/aclocal.m4 U gnuworld/libltdl/config-h.in U gnuworld/libltdl/config.guess U gnuworld/libltdl/config.h.in U gnuworld/libltdl/config.sub U gnuworld/libltdl/configure U gnuworld/libltdl/configure.in U gnuworld/libltdl/COPYING.LIB U gnuworld/libltdl/install-sh U gnuworld/libltdl/ltdl.c U gnuworld/libltdl/ltdl.h U gnuworld/libltdl/ltmain.sh U gnuworld/libltdl/Makefile.am U gnuworld/libltdl/Makefile.in U gnuworld/libltdl/missing U gnuworld/libltdl/mkinstalldirs U gnuworld/libltdl/README U gnuworld/mod.ccontrol/.cvsignore U gnuworld/mod.ccontrol/ADDCOMMANDCommand.cc U gnuworld/mod.ccontrol/ADDOPERCHANCommand.cc U gnuworld/mod.ccontrol/ADDSERVERCommand.cc U gnuworld/mod.ccontrol/ADDUSERCommand.cc U gnuworld/mod.ccontrol/ccBadChannel.cc U gnuworld/mod.ccontrol/ccBadChannel.h U gnuworld/mod.ccontrol/ccException.cc U gnuworld/mod.ccontrol/ccException.h U gnuworld/mod.ccontrol/ccFloodData.cc U gnuworld/mod.ccontrol/ccFloodData.h U gnuworld/mod.ccontrol/ccGline.cc U gnuworld/mod.ccontrol/ccGline.h U gnuworld/mod.ccontrol/ccLog.cc U gnuworld/mod.ccontrol/ccLog.h U gnuworld/mod.ccontrol/ccontrol.cc U gnuworld/mod.ccontrol/ccontrol.h U gnuworld/mod.ccontrol/CControlCommands.cc U gnuworld/mod.ccontrol/CControlCommands.h U gnuworld/mod.ccontrol/ccServer.cc U gnuworld/mod.ccontrol/ccServer.h U gnuworld/mod.ccontrol/ccUser.cc U gnuworld/mod.ccontrol/ccUser.h U gnuworld/mod.ccontrol/ccUserData.h U gnuworld/mod.ccontrol/CHANINFOCommand.cc U gnuworld/mod.ccontrol/CHECKNETCommand.cc U gnuworld/mod.ccontrol/CLEARCHANCommand.cc U gnuworld/mod.ccontrol/COMMANDSCommand.cc U gnuworld/mod.ccontrol/CommandsDec.h U gnuworld/mod.ccontrol/commLevels.h U gnuworld/mod.ccontrol/CONFIGCommand.cc U gnuworld/mod.ccontrol/Constants.h U gnuworld/mod.ccontrol/Credits U gnuworld/mod.ccontrol/DEAUTHCommand.cc U gnuworld/mod.ccontrol/DEOPCommand.cc U gnuworld/mod.ccontrol/EXCEPTIONCommand.cc U gnuworld/mod.ccontrol/FORCEGLINECommand.cc U gnuworld/mod.ccontrol/GCHANCommand.cc U gnuworld/mod.ccontrol/GLINECommand.cc U gnuworld/mod.ccontrol/HELPCommand.cc U gnuworld/mod.ccontrol/INVITECommand.cc U gnuworld/mod.ccontrol/JUPECommand.cc U gnuworld/mod.ccontrol/KICKCommand.cc U gnuworld/mod.ccontrol/LASTCOMCommand.cc U gnuworld/mod.ccontrol/LEARNNETCommand.cc U gnuworld/mod.ccontrol/LISTCommand.cc U gnuworld/mod.ccontrol/LISTHOSTSCommand.cc U gnuworld/mod.ccontrol/LISTIGNORESCommand.cc U gnuworld/mod.ccontrol/LISTOPERCHANSCommand.cc U gnuworld/mod.ccontrol/LOGINCommand.cc U gnuworld/mod.ccontrol/Makefile.am U gnuworld/mod.ccontrol/Makefile.in U gnuworld/mod.ccontrol/MAXUSERSCommand.cc U gnuworld/mod.ccontrol/MODECommand.cc U gnuworld/mod.ccontrol/MODERATECommand.cc U gnuworld/mod.ccontrol/MODUSERCommand.cc U gnuworld/mod.ccontrol/NEWPASSCommand.cc U gnuworld/mod.ccontrol/NOMODECommand.cc U gnuworld/mod.ccontrol/OPCommand.cc U gnuworld/mod.ccontrol/README U gnuworld/mod.ccontrol/REMCOMMANDCommand.cc U gnuworld/mod.ccontrol/REMGCHANCommand.cc U gnuworld/mod.ccontrol/REMGLINECommand.cc U gnuworld/mod.ccontrol/REMOPERCHANCommand.cc U gnuworld/mod.ccontrol/REMOVEIGNORECommand.cc U gnuworld/mod.ccontrol/REMSERVERCommand.cc U gnuworld/mod.ccontrol/REMSGLINECommand.cc U gnuworld/mod.ccontrol/REMUSERCommand.cc U gnuworld/mod.ccontrol/REOPCommand.cc U gnuworld/mod.ccontrol/SAYCommand.cc U gnuworld/mod.ccontrol/SCANCommand.cc U gnuworld/mod.ccontrol/SCANGLINECommand.cc U gnuworld/mod.ccontrol/SGLINECommand.cc U gnuworld/mod.ccontrol/SHUTDOWNCommand.cc U gnuworld/mod.ccontrol/STATUSCommand.cc U gnuworld/mod.ccontrol/SUSPENDCommand.cc U gnuworld/mod.ccontrol/TODO U gnuworld/mod.ccontrol/TRANSLATECommand.cc U gnuworld/mod.ccontrol/UNMODERATECommand.cc U gnuworld/mod.ccontrol/UNSUSPENDCommand.cc U gnuworld/mod.ccontrol/USERINFOCommand.cc U gnuworld/mod.ccontrol/WHOISCommand.cc U gnuworld/mod.clientExample/.cvsignore U gnuworld/mod.clientExample/clientExample.cc U gnuworld/mod.clientExample/clientExample.h U gnuworld/mod.clientExample/Makefile.am U gnuworld/mod.clientExample/Makefile.in U gnuworld/mod.cloner/.cvsignore U gnuworld/mod.cloner/cloner.cc U gnuworld/mod.cloner/cloner.h U gnuworld/mod.cloner/Makefile.am U gnuworld/mod.cloner/Makefile.in U gnuworld/mod.cloner/TODO U gnuworld/mod.cservice/.cvsignore U gnuworld/mod.cservice/ACCESSCommand.cc U gnuworld/mod.cservice/ADDCOMMENTCommand.cc U gnuworld/mod.cservice/ADDUSERCommand.cc U gnuworld/mod.cservice/AI.cc U gnuworld/mod.cservice/BANCommand.cc U gnuworld/mod.cservice/BANLISTCommand.cc U gnuworld/mod.cservice/CHANINFOCommand.cc U gnuworld/mod.cservice/CLEARMODECommand.cc U gnuworld/mod.cservice/configure U gnuworld/mod.cservice/constants.h U gnuworld/mod.cservice/Credits U gnuworld/mod.cservice/cservice.cc U gnuworld/mod.cservice/cservice.h U gnuworld/mod.cservice/cserviceCommands.h U gnuworld/mod.cservice/cservice_config.h U gnuworld/mod.cservice/DEOPCommand.cc U gnuworld/mod.cservice/DEVOICECommand.cc U gnuworld/mod.cservice/FORCECommand.cc U gnuworld/mod.cservice/HELPCommand.cc U gnuworld/mod.cservice/INVITECommand.cc U gnuworld/mod.cservice/ISREGCommand.cc U gnuworld/mod.cservice/JOINCommand.cc U gnuworld/mod.cservice/KICKCommand.cc U gnuworld/mod.cservice/LBANLISTCommand.cc U gnuworld/mod.cservice/levels.h U gnuworld/mod.cservice/LOGINCommand.cc U gnuworld/mod.cservice/Makefile.am U gnuworld/mod.cservice/Makefile.in U gnuworld/mod.cservice/MODINFOCommand.cc U gnuworld/mod.cservice/MOTDCommand.cc U gnuworld/mod.cservice/networkData.cc U gnuworld/mod.cservice/networkData.h U gnuworld/mod.cservice/NEWPASSCommand.cc U gnuworld/mod.cservice/NOTECommand.cc U gnuworld/mod.cservice/OPCommand.cc U gnuworld/mod.cservice/OPERJOINCommand.cc U gnuworld/mod.cservice/OPERPARTCommand.cc U gnuworld/mod.cservice/PARTCommand.cc U gnuworld/mod.cservice/PURGECommand.cc U gnuworld/mod.cservice/QUOTECommand.cc U gnuworld/mod.cservice/RANDOMCommand.cc U gnuworld/mod.cservice/README U gnuworld/mod.cservice/REGISTERCommand.cc U gnuworld/mod.cservice/REHASHCommand.cc U gnuworld/mod.cservice/RELEASE.NOTES U gnuworld/mod.cservice/REMIGNORECommand.cc U gnuworld/mod.cservice/REMOVEALLCommand.cc U gnuworld/mod.cservice/REMUSERCommand.cc U gnuworld/mod.cservice/responses.h U gnuworld/mod.cservice/SAYCommand.cc U gnuworld/mod.cservice/SCANHOSTCommand.cc U gnuworld/mod.cservice/SCANUNAMECommand.cc U gnuworld/mod.cservice/SEARCHCommand.cc U gnuworld/mod.cservice/SERVNOTICECommand.cc U gnuworld/mod.cservice/SETCommand.cc U gnuworld/mod.cservice/SHOWCOMMANDSCommand.cc U gnuworld/mod.cservice/SHOWIGNORECommand.cc U gnuworld/mod.cservice/SHUTDOWNCommand.cc U gnuworld/mod.cservice/sqlBan.cc U gnuworld/mod.cservice/sqlBan.h U gnuworld/mod.cservice/sqlChannel.cc U gnuworld/mod.cservice/sqlChannel.h U gnuworld/mod.cservice/sqlLevel.cc U gnuworld/mod.cservice/sqlLevel.h U gnuworld/mod.cservice/sqlPendingChannel.cc U gnuworld/mod.cservice/sqlPendingChannel.h U gnuworld/mod.cservice/sqlPendingTraffic.cc U gnuworld/mod.cservice/sqlPendingTraffic.h U gnuworld/mod.cservice/sqlUser.cc U gnuworld/mod.cservice/sqlUser.h U gnuworld/mod.cservice/STATSCommand.cc U gnuworld/mod.cservice/STATUSCommand.cc U gnuworld/mod.cservice/SUPPORTCommand.cc U gnuworld/mod.cservice/SUSPENDCommand.cc U gnuworld/mod.cservice/SUSPENDMECommand.cc U gnuworld/mod.cservice/TOPICCommand.cc U gnuworld/mod.cservice/UNBANCommand.cc U gnuworld/mod.cservice/UNFORCECommand.cc U gnuworld/mod.cservice/UNSUSPENDCommand.cc U gnuworld/mod.cservice/VERIFYCommand.cc U gnuworld/mod.cservice/VOICECommand.cc U gnuworld/mod.dronescan/.cvsignore U gnuworld/mod.dronescan/ABNORMALSTest.cc U gnuworld/mod.dronescan/ACCESSCommand.cc N gnuworld/mod.dronescan/ADDUSERCommand.cc U gnuworld/mod.dronescan/ChangeLog U gnuworld/mod.dronescan/CHECKCommand.cc U gnuworld/mod.dronescan/clientData.h U gnuworld/mod.dronescan/COMMONREALTest.cc N gnuworld/mod.dronescan/Convert.h U gnuworld/mod.dronescan/dronescan.cc U gnuworld/mod.dronescan/dronescan.h U gnuworld/mod.dronescan/dronescanCommands.h U gnuworld/mod.dronescan/dronescanTests.h U gnuworld/mod.dronescan/HASALLOPTest.cc U gnuworld/mod.dronescan/HASOPTest.cc U gnuworld/mod.dronescan/levels.h U gnuworld/mod.dronescan/LISTCommand.cc U gnuworld/mod.dronescan/Makefile.am U gnuworld/mod.dronescan/Makefile.in U gnuworld/mod.dronescan/MAXCHANSTest.cc N gnuworld/mod.dronescan/MODUSERCommand.cc N gnuworld/mod.dronescan/QUOTECommand.cc U gnuworld/mod.dronescan/RANGETest.cc N gnuworld/mod.dronescan/REMUSERCommand.cc N gnuworld/mod.dronescan/sqlUser.cc N gnuworld/mod.dronescan/sqlUser.h N gnuworld/mod.dronescan/STATUSCommand.cc U gnuworld/mod.dronescan/Timer.h N gnuworld/mod.dronescan/Updates U gnuworld/mod.gnutest/.cvsignore U gnuworld/mod.gnutest/gnutest.cc U gnuworld/mod.gnutest/gnutest.h U gnuworld/mod.gnutest/Makefile.am U gnuworld/mod.gnutest/Makefile.in U gnuworld/mod.nickserv/.cvsignore U gnuworld/mod.nickserv/ChangeLog U gnuworld/mod.nickserv/INFOCommand.cc U gnuworld/mod.nickserv/INVITECommand.cc U gnuworld/mod.nickserv/levels.h U gnuworld/mod.nickserv/Logger.cc U gnuworld/mod.nickserv/Logger.h U gnuworld/mod.nickserv/logTarget.h U gnuworld/mod.nickserv/Makefile.am U gnuworld/mod.nickserv/Makefile.in U gnuworld/mod.nickserv/MODUSERCommand.cc U gnuworld/mod.nickserv/netData.cc U gnuworld/mod.nickserv/netData.h U gnuworld/mod.nickserv/nickserv.cc U gnuworld/mod.nickserv/nickserv.h U gnuworld/mod.nickserv/nickservCommands.h U gnuworld/mod.nickserv/README U gnuworld/mod.nickserv/RECOVERCommand.cc U gnuworld/mod.nickserv/REGISTERCommand.cc U gnuworld/mod.nickserv/responses.h U gnuworld/mod.nickserv/SETCommand.cc U gnuworld/mod.nickserv/SHUTDOWNCommand.cc U gnuworld/mod.nickserv/sqlManager.cc U gnuworld/mod.nickserv/sqlManager.h U gnuworld/mod.nickserv/sqlUser.cc U gnuworld/mod.nickserv/sqlUser.h U gnuworld/mod.nickserv/Stats.cc U gnuworld/mod.nickserv/Stats.h U gnuworld/mod.nickserv/STATSCommand.cc U gnuworld/mod.nickserv/Updates U gnuworld/mod.nickserv/WHOAMICommand.cc U gnuworld/mod.scanner/.cvsignore U gnuworld/mod.scanner/dbThread.cc U gnuworld/mod.scanner/dbThread.h U gnuworld/mod.scanner/Makefile.am U gnuworld/mod.scanner/Makefile.in U gnuworld/mod.scanner/scanner.cc U gnuworld/mod.scanner/scanner.h U gnuworld/mod.scanner/ScannerModule.cc U gnuworld/mod.scanner/ScannerModule.h U gnuworld/mod.scanner/wingateModule.cc U gnuworld/mod.stats/.cvsignore U gnuworld/mod.stats/Makefile.am U gnuworld/mod.stats/Makefile.in U gnuworld/mod.stats/stats.cc U gnuworld/mod.stats/stats.h U gnuworld/src/.cvsignore U gnuworld/src/Channel.cc U gnuworld/src/ChannelUser.cc U gnuworld/src/client.cc U gnuworld/src/iClient.cc U gnuworld/src/ip.cc U gnuworld/src/iServer.cc U gnuworld/src/LoadClientTimerHandler.cc U gnuworld/src/main.cc U gnuworld/src/Makefile.am U gnuworld/src/Makefile.in U gnuworld/src/Network.cc U gnuworld/src/server.cc U gnuworld/src/ServerTimerHandlers.cc U gnuworld/src/sig.inc U gnuworld/src/UnloadClientTimerHandler.cc N gnuworld/test/burst.cc U gnuworld/test/econfig.cc U gnuworld/test/econfig.conf U gnuworld/test/gThread.cc U gnuworld/test/kill_mult U gnuworld/test/kill_test U gnuworld/test/Makefile.am U gnuworld/test/Makefile.in U gnuworld/test/match.cc N gnuworld/test/mtrie.cc N gnuworld/test/mtrie.match N gnuworld/test/mtrie.match2 N gnuworld/test/mtrie_load.cc N gnuworld/test/mtrie_perf.cc N gnuworld/test/mtrie_perf_summary.cc N gnuworld/test/README.burst N gnuworld/test/README.econfig N gnuworld/test/README.gthread N gnuworld/test/README.match N gnuworld/test/README.mtrie N gnuworld/test/README.signal N gnuworld/test/README.stringtokenizer N gnuworld/test/README.testBot N gnuworld/test/README.test_kick_transaction U gnuworld/test/signal.cc U gnuworld/test/stringtokenizer.cc U gnuworld/test/testbot.cc U gnuworld/test/testBot.conf U gnuworld/test/testbot.h U gnuworld/test/test_kick_transaction.cc No conflicts created by this import |
From: Tim I. <dar...@us...> - 2003-08-15 13:58:14
|
Committer : Tim Ireland <dar...@us...> CVSROOT : /cvsroot/sithnet-dev Module : CVSROOT Commit time: 2003-08-15 13:32:38 UTC Modified files: maillist Log message: test ---------------------- diff included ---------------------- Index: CVSROOT/maillist diff -u CVSROOT/maillist:1.3 CVSROOT/maillist:1.4 --- CVSROOT/maillist:1.3 Wed Jul 30 15:55:21 2003 +++ CVSROOT/maillist Fri Aug 15 06:32:28 2003 @@ -18,3 +18,4 @@ # in addition to the first matching regex or "DEFAULT". DEFAULT sit...@li... +DEFAULT evu...@ly... ----------------------- End of diff ----------------------- |
From: Tim I. <dar...@us...> - 2003-07-30 22:55:32
|
Committer : Tim Ireland <dar...@us...> CVSROOT : /cvsroot/sithnet-dev Module : CVSROOT Commit time: 2003-07-30 22:55:31 UTC Modified files: loginfo Added files: all.template maillist new_commit_prep new_log_accum usermap Log message: :( ---------------------- diff included ---------------------- Index: CVSROOT/all.template diff -u /dev/null CVSROOT/all.template:1.3 --- /dev/null Wed Jul 30 15:55:31 2003 +++ CVSROOT/all.template Wed Jul 30 15:55:21 2003 @@ -0,0 +1,3 @@ +Author: +Log message: + Index: CVSROOT/loginfo diff -u CVSROOT/loginfo:1.4 CVSROOT/loginfo:1.5 --- CVSROOT/loginfo:1.4 Tue Jul 29 11:46:23 2003 +++ CVSROOT/loginfo Wed Jul 30 15:55:21 2003 @@ -25,4 +25,4 @@ # or #DEFAULT (echo ""; id; echo %{sVv}; date; cat) >> $CVSROOT/CVSROOT/commitlog -DEFAULT $CVSROOT/CVSROOT/new_log_accum %{sVv} +DEFAULT $CVSROOT/CVSROOT/new_log_accum %{sVv} Index: CVSROOT/maillist diff -u /dev/null CVSROOT/maillist:1.3 --- /dev/null Wed Jul 30 15:55:31 2003 +++ CVSROOT/maillist Wed Jul 30 15:55:21 2003 @@ -0,0 +1,20 @@ +# The "maillist" file is used to control commit log mails. +# The (space-separated) addresses on the right will be added +# to the list of addresses mail will be sent to. Using -m +# on the new_logaccum command line will override the contents +# of this file. +# +# The first entry on a line is a regular expression which is tested +# against the module that the change is being committed to, relative +# to the $CVSROOT. For the each match that is found, the remainder +# of the line is the list of email addresses. Note this regular +# expression is compared only against the *first* component of the +# path! +# +# If the repository name does not match any of the regular expressions in this +# file, the "DEFAULT" line is used, if it is specified. +# +# If the name "ALL" appears as a regular expression it is always used +# in addition to the first matching regex or "DEFAULT". + +DEFAULT sit...@li... Index: CVSROOT/new_commit_prep diff -u /dev/null CVSROOT/new_commit_prep:1.4 --- /dev/null Wed Jul 30 15:55:31 2003 +++ CVSROOT/new_commit_prep Wed Jul 30 15:55:21 2003 @@ -0,0 +1,127 @@ +#!/usr/bin/perl -w +# +# Copyright (C) 2000,2002 by Kevin L. Mitchell <kl...@mi...> +# +# +# 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., 59 Temple Place - Suite 330, Boston, MA +# 02111-1307, USA. +# +# Script to store the last visited directory for newlogaccum.pl. +# +# $Id: new_commit_prep,v 1.4 2003/07/30 22:55:21 darthsidious_ Exp $ + +use strict; + +use vars qw($debug); + +# Don't touch this; use the -d command line option +$debug = 0; + +# Debugging output +sub debug (@) { + print STDERR "$0: ", @_ + if ($debug); +} + +# This routine removes everything in a directory +sub clear_dir { + my ($dir) = @_; + my ($file); + + opendir(DIR, $dir) || die "Cannot clear directory $dir: $!"; + while ($file = readdir(DIR)) { + next + if ($file eq "." || $file eq ".."); + + $file = "$dir/$file"; + + if (-d $file) { + # It's a directory, recurse into it, then delete it. + clear_dir($file); + rmdir($file); + } else { + # It's a file, delete it. + unlink($file); + } + } + closedir(DIR); +} + +# This routine prepares a temporary directory, hopefully in a secure +# fashion; it uses the process group to make secondary programs be able +# to find it. +sub tmpdir (;$) { + my ($clear) = @_; + my ($pgrp, $own, $mode, $tmpdir); + + $pgrp = getpgrp(); + + die "Don't run $0 setuid!" + unless ($< == $>); + + # Decide on the directory name, using various environment variables + $tmpdir = ($ENV{TMPDIR} || $ENV{TMP} || $ENV{TEMP} || "/tmp") . + "/.#cvs.$pgrp"; + + # Doesn't exist, but we can't create it... + die "Can't create temporary directory $tmpdir: $!" + unless (-e $tmpdir || mkdir($tmpdir, 0700)); + + die "Temporary directory $tmpdir is not a directory" + unless (-d $tmpdir); + + # Check ownership and permissions + (undef, undef, $mode, undef, $own, undef) = stat($tmpdir); + + die "Temporary directory $tmpdir not owned by $< (owned by $own)" + unless ($own == $<); + + die "Temporary directory $tmpdir group-writable" + if ($mode & 0020); + die "Temporary directory $tmpdir other-writable" + if ($mode & 0002); + + # If we're supposed to clear the directory, do so... + clear_dir($tmpdir) + if ($clear); + + return $tmpdir; +} + +# This routine writes a single line to a file +sub write_line ($$) { + my ($fname, $line) = @_; + + debug "Writing line \"$line\" to \"$fname\"...\n"; + + open(FILE, ">$fname") || die "Cannot open file $fname for writing"; + print FILE "$line\n"; + close(FILE); +} + +# Create and empty the temporary directory +my ($tmpdir) = (tmpdir(1)); + +# Set debugging if necessary +if ($ARGV[0] eq "-d") { + shift(@ARGV); + $debug++; +} + +# Log command line +debug "options \"", join("\" \"", @ARGV), "\"\n"; + +# Store the directory name +write_line("$tmpdir/lastdir", shift(@ARGV)); Index: CVSROOT/new_log_accum diff -u /dev/null CVSROOT/new_log_accum:1.5 --- /dev/null Wed Jul 30 15:55:31 2003 +++ CVSROOT/new_log_accum Wed Jul 30 15:55:21 2003 @@ -0,0 +1,930 @@ +#!/usr/bin/perl -w +# +# Copyright (C) 2000,2002 by Kevin L. Mitchell <kl...@mi...> +# +# +# 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., 59 Temple Place - Suite 330, Boston, MA +# 02111-1307, USA. +# +# Script to accumulate log messages for an entire tree and send them along +# with the diffs; deals correctly with all manner of branching (I hope) +# +# $Id: new_log_accum,v 1.5 2003/07/30 22:55:21 darthsidious_ Exp $ + +use strict; + +use vars qw($MAILER $CVS $debug $maillist $usermap); + +# Set this to the full path of a mailer that takes -s <subject> and a list +# of email addresses as arguments... +$MAILER = "/bin/mail"; + +# Set this to the path of the CVS binary responsible for this tree... +$CVS = "/usr/bin/cvs"; + +# Don't touch this; use the -d command line option +$debug = 0; + +# Don't touch this, just create (or delete) the file +$maillist = "$ENV{CVSROOT}/CVSROOT/maillist"; + +# Expand usernames to email addresses based on a map file? +$usermap = "$ENV{CVSROOT}/CVSROOT/usermap"; + +use POSIX qw(setsid); + +# Debugging output +sub debug (@) { + my (@args) = @_; + + if ($args[0] eq "-np") { + shift(@args); + } else { + unshift(@args, "$0: "); + } + + print STDERR @args + if ($debug); +} + +# We have to dissociate from our parent, so that the CVS commit can +# complete, before we try to extract the diffs +sub daemonize { + debug "Daemonizing..."; + defined(my $pid = fork()) || die "Can't fork: $!"; + exit(0) + if $pid; + unless ($debug) { + open(STDIN, "</dev/null"); + open(STDOUT, ">/dev/null"); + open(STDERR, ">&STDOUT"); + for (my $i = 2; $i < 255; $i++) { + POSIX::close($i); + } + } + chdir("/"); + setsid() || die "Can't start a new session: $!"; + debug "-np", "Done!\n"; +} + +# Constants used in the FSM below for parsing the log message +sub STATE_NONE { 0 } +sub STATE_MODIFIED { 1 } +sub STATE_ADDED { 2 } +sub STATE_REMOVED { 3 } +sub STATE_LOG1 { 4 } +sub STATE_LOG2 { 5 } + +# borrowed from cvs2cl.pl -- Let's have our usermap in here also :P~ +sub maybe_read_usermap () +{ + my %expansions; + + if ($usermap) + { + open (MAPFILE, "<$usermap") + or die ("Unable to open $usermap ($!)"); + + while (<MAPFILE>) + { + next if /^\s*#/; # Skip comment lines. + next if not /:/; # Skip lines without colons. + + # It is now safe to split on ':'. + my ($username, $expansion) = split ':'; + chomp $expansion; + $expansion =~ s/^'(.*)'$/$1/; + $expansion =~ s/^"(.*)"$/$1/; + + # If it looks like the expansion has a real name already, then + # we toss the username we got from CVS log. Otherwise, keep + # it to use in combination with the email address. + if ($expansion =~ /^\s*<{0,1}\S+@.*/) { + # Also, add angle brackets if none present + if (! ($expansion =~ /<\S+@\S+>/)) { + $expansions{$username} = "$username <$expansion>"; + } + else { + $expansions{$username} = "$username $expansion"; + } + } + else { + $expansions{$username} = $expansion; + } + } + + close (MAPFILE); + } + + return %expansions; +} + +# This routine removes everything in a directory +sub clear_dir { + my ($dir) = @_; + my ($file); + + opendir(DIR, $dir) || die "Cannot clear directory $dir: $!"; + while ($file = readdir(DIR)) { + next + if ($file eq "." || $file eq ".."); + + $file = "$dir/$file"; + + if (-d $file) { + # It's a directory, recurse into it, then delete it. + clear_dir($file); + rmdir($file); + } else { + # It's a file, delete it. + unlink($file); + } + } + closedir(DIR); +} + +# This routine prepares a temporary directory, hopefully in a secure +# fashion; it uses the process group to make secondary programs be able +# to find it. +sub tmpdir (;$) { + my ($clear) = @_; + my ($pgrp, $own, $mode, $tmpdir); + + $pgrp = getpgrp(); + + die "Don't run $0 setuid!" + unless ($< == $>); + + # Decide on the directory name, using various environment variables + $tmpdir = ($ENV{TMPDIR} || $ENV{TMP} || $ENV{TEMP} || "/tmp") . + "/.#cvs.$pgrp"; + + # Doesn't exist, but we can't create it... + die "Can't create temporary directory $tmpdir: $!" + unless (-e $tmpdir || mkdir($tmpdir, 0700)); + + die "Temporary directory $tmpdir is not a directory" + unless (-d $tmpdir); + + # Check ownership and permissions + (undef, undef, $mode, undef, $own, undef) = stat($tmpdir); + + die "Temporary directory $tmpdir not owned by $< (owned by $own)" + unless ($own == $<); + + die "Temporary directory $tmpdir group-writable" + if ($mode & 0020); + die "Temporary directory $tmpdir other-writable" + if ($mode & 0002); + + # If we're supposed to clear the directory, do so... + clear_dir($tmpdir) + if ($clear); + + return $tmpdir; +} + +# Routine to remove the temporary directory when done +sub cleanup_dir ($) { + # If we're debugging, we may want to look at the contents... + return + if ($debug); + + clear_dir($_[0]); + rmdir($_[0]); +} + +# Retrieve a single line from a specified file +sub get_line ($) { + my ($fname) = @_; + + open(FILE, "<$fname") || die "Cannot open file $fname for reading"; + my $line = <FILE>; + close(FILE); + + # Chomp off the \n + chomp $line; + + return $line; +} + +# Routine that only allows one value to be pushed on the array; +# implemented by making the first element of the array a hash-reference. +# When we add a new value, we also increment the count of an element in +# the hash with the key being the array value... +sub push_once (\@@) { + my ($array, @values) = @_; + + # If the array is empty, create our hash ref + push @{$array}, {} + if (@{$array} == 0); + + foreach my $value (@values) { + push @{$array}, $value + if (!exists($array->[0]{$value})); + + $array->[0]{$value}++; + } + + return @{$array} - 1; +} + +# Load a list of regular expressions and email addresses +sub load_maillist ($) { + my ($file) = @_; + my ($mmap) = ({ + DEFAULT => [], + ALL => [], + re => {}, + }); + + # Don't load the list if it doesn't exist + return undef + unless (-e $file); + + # Open the map file + open(MAILFILE, "<$file"); + while (<MAILFILE>) { + chomp; + + s/\#.*$//; + next + if (/^\s*$/); + + my ($re, @addrs) = split; + + # DEFAULT and ALL are treated specially + if ($re eq "DEFAULT" || $re eq "ALL") { + push_once(@{$mmap->{$re}}, @addrs); + } else { + $mmap->{re}{$re} = [] + unless (exists($mmap->{re}{$re})); + + # Remember the associated email addresses + push_once(@{$mmap->{re}{$re}}, @addrs); + } + } + close(MAILFILE); + + return $mmap; +} + +# Given the module's name (and a mailmap structure), return the necessary +# email addresses +sub make_maillist ($$@) { + my ($mmap, $module, @inaddrs) = @_; + my ($matches, @addrs) = 0; + + # Return defaults passed in + return @inaddrs + unless (defined($mmap)); + + # Everything in ALL gets a message + push_once(@addrs, @{$mmap->{ALL}}[1..$#{$mmap->{ALL}}]); + # Now check each pattern one by one + foreach my $pat (keys(%{$mmap->{re}})) { + if ($module =~ /$pat/) { + $matches++; + push_once(@addrs, @{$mmap->{re}{$pat}}[1..$#{$mmap->{re}{$pat}}]); + } + } + # If no patterns matched, push on the defaults + push_once(@addrs, @{$mmap->{DEFAULT}}[1..$#{$mmap->{DEFAULT}}]) + unless ($matches > 0); + + # Return the defaults if we came up with nothing + return @inaddrs + unless (@addrs > 0); + + # Return just the addresses + return @addrs[1..$#addrs]; +} + +# Filter //, /./, and remove leading ./ or / from filenames +sub fname_filter ($) { + my ($fname) = @_; + + $fname =~ s,//,/,g; + $fname =~ s,/\./,/,g; + $fname =~ s,^\.?/,,g; + + return $fname; +} + +# Store file data in a temporary file +sub names_to_file ($$@) { + my ($fname, $dir, @names) = @_; + + if (@names > 0) { + open(FILE, ">>$fname") || die "Cannot open file $fname for appending"; + + # Store the directory data + print FILE "D $dir\n"; + + foreach my $name (@names) { + # Mark record as a file... + print FILE "F "; + + # Store the tag, if there is one... + print FILE "$name->{tag}" + if (defined($name->{tag})); + + # Then store old revision, new revision, and file name + print FILE ":$name->{old}:$name->{new}:$name->{file}\n"; + } + + close(FILE); + } +} + +# Retrieve file data from temporary file; updates branch tags with what it +# reads +sub file_to_names (\@$) { + my ($btags, $fname) = @_; + my ($dir) = (undef); + my (@names) = (); + + debug "Reading file names from $fname...\n"; + + # We may not have, say, added a file in this subdirectory... + return () + if (!-e $fname); + + open(FILE, "<$fname"); + while(<FILE>) { + chomp; + + # Get record type... + my ($type, $data) = split(' ', $_, 2); + + # ok, it's a directory, remember that... + if ($type eq "D") { + $dir = $data; + + debug "Read directory $dir\n"; + + next; + } + + debug "Read file $data\n"; + + # Get all the information about the file + my ($tag, $old, $new, $file) = split(':', $data); + + # and store it all + push(@names, { tag => $tag, old => $old, new => $new, file => $file, + dir => $dir, name => fname_filter("$dir/$file") }); + + # Remember the tags... + push_once(@{$btags}, $tag) + if (defined($tag) && $tag ne ""); + } + close(FILE); + + return @names; +} + +# Create a text-formatted list of names +sub name_to_list (\@@) { + my ($btags, @names) = @_; + my (@nlist, @nline) = (); + + debug "Tags:", join(':', @{$btags}), "\n"; + + # We group them by tag + foreach my $tag ("", @{$btags}[1..$#{$btags}]) { + debug "Processing tag $tag...\n"; + + @nlist = (); + + # Get a list of files by the tag... + foreach my $name (@names) { + debug "Processing $name->{file}...\n"; + + next + if ($name->{tag} ne $tag); + + debug "Pushing $name->{name} on \@nlist...\n"; + push(@nlist, $name->{name}); + } + + # If the tag is not the empty string, list the tag... + push(@nline, " Tag: $tag", " ") + if ($tag ne ""); + + # Now list each file name + foreach my $name (@nlist) { + # indent if we run past the end of line limit + push(@nline, " ") + if (@nline == 0 || ($nline[$#nline] ne " " && + length($nline[$#nline]) + length($name) + 1 > 70)); + + # add the file name to the list + debug "Adding $name to \@nline...\n"; + $nline[$#nline] .= " $name"; + } + } + + return @nline; +} + +# write the log message to a temporary file +sub write_log ($@) { + my ($fname, @text) = @_; + + open(FILE, ">$fname") || die "Cannot open file $fname for writing"; + print FILE join("\n", @text), "\n"; + close(FILE); +} + +# load module list +sub load_modules ($) { + my ($tmpdir) = @_; + my (@modlist); + + debug "Reading modules from $tmpdir/modules...\n"; + + # We may not have, say, recorded any modules yet + return () + if (!-e "$tmpdir/modules"); + + open(MODLIST, "<$tmpdir/modules"); + push_once(@modlist, map { chomp; $_ } <MODLIST>); + close(MODLIST); + + return @modlist; +} + +# save module list +sub save_modules (\@$) { + my ($modlist, $tmpdir) = @_; + + debug "Writing modules out to $tmpdir/modules...\n"; + + open(MODLIST, ">$tmpdir/modules"); + print MODLIST join("\n", @{$modlist}[1..$#{$modlist}]), "\n"; + close(MODLIST); +} + +# Build the header of the commit message: CVSROOT, module name, any +# branch tags, and the commit time +sub build_header ($@) { + my ($module, @branch_tags) = @_; + my (@text); + my ($sec,$min,$hour,$mday,$mon,$year,$wday,$yday,$isdst) = gmtime(time()); + my ($user) = (getpwuid($<)); + my %usermap; + + %usermap = &maybe_read_usermap (); + + if (defined ($usermap{$user}) and $usermap{$user}) { + $user = $usermap{$user}; + } + + push(@text, "Committer : $user"); + push(@text, "CVSROOT : $ENV{CVSROOT}"); + push(@text, "Module : $module"); + push(@text, "Branch tags: " . join(' ', @branch_tags[1..$#branch_tags])) + if (@branch_tags > 0); + push(@text, sprintf("Commit time: %04d-%02d-%02d %02d:%02d:%02d UTC", + $year + 1900, $mon + 1, $mday, $hour, $min, $sec)); + + return @text, ""; +} + +# Send the mail message +sub send_mail (\@$@) { + my ($mailto, $subject, @text) = @_; + + debug("Sending mail, subject \"$subject\", to ", join(' ', @{$mailto}), + "\n"); + debug("-np", "> ", join("\n> ", @text), "\n"); + + # Execute our mailer... + my $pid = open(MAIL, "|-"); + + exec($MAILER, '-s', $subject, @{$mailto}) + unless ($pid); + + print MAIL join("\n", @text), "\n"; + close(MAIL); +} + +# Generates the diffs to include +sub diff_files ($@) { + my ($module, @files) = @_; + my (@text); + + foreach my $file (@files) { + debug "Diffing file $file->{name} (module $module)\n"; + + # Run cvs rdiff, extracting a diff between the old and new versions + my $pid = open(DIFF, "-|"); + + exec($CVS, '-Q', 'rdiff', '-u', '-r', $file->{old}, '-r', $file->{new}, + "$module/$file->{name}") + unless ($pid); + + # Chomp and store all the text... + push(@text, map { chomp; $_ } <DIFF>); + + close(DIFF); + } + + return @text; +} + +# Read in and process log message +sub read_log (\%\@\@\@\@\@) { + my ($fversions, $modified, $added, $removed, $log, $branch_tags) = @_; + my ($state, $tag) = (STATE_NONE, undef); + + while (<STDIN>) { + chomp; + + debug "State $state, line:$_\n"; + + # Ignore empty space at the beginning of the log message + next + if ($state == STATE_LOG1 && /^\s*$/); + + # We're done ignoring empty space + if ($state == STATE_LOG1) { + $state = STATE_LOG2; + } + + if ($state == STATE_LOG2) { + # Don't modify the lines at all if we're processing the log message + push(@{$log}, $_); + next; + } else { + # Strip out leading and trailing space + s/^\s*(.*?)\s*$/$1/; + } + + if (/^Modified Files/) { + # Collect list of modified files + debug "State switching to STATE_MODIFIED\n"; + + $state = STATE_MODIFIED; + $tag = undef; + + next; + + } elsif (/^Added Files/) { + # Collect list of added files + debug "State switching to STATE_ADDED\n"; + + $state = STATE_ADDED; + $tag = undef; + + next; + + } elsif (/^Removed Files/) { + # Collect list of removed files + debug "State switching to STATE_REMOVED\n"; + + $state = STATE_REMOVED; + $tag = undef; + + next; + + } elsif (/^Log Message/) { + # Collect log message + debug "State switching to STATE_LOG1\n"; + + $state = STATE_LOG1; + $tag = undef; + + next; + + } elsif (/^Revision\/Branch/) { + # Parse old-style Revision/Branch field + debug "Found a branch tag\n"; + + /^[^:]+:\s*(.*)/; + + push_once(@{$branch_tags}, $1); + + warn "Tag == $tag" + if (defined($tag)); + + next; + } + + # Ignore the stuff at the top of the commit report + next + if ($state == STATE_NONE); + + if (/^Tag:\s*(.*)$/) { + # Remember the tag + debug "Setting tag to $1\n"; + $tag = $1; + next; + } + + my (@tfiles) = (); + + # Find the file in our command line list of files + foreach my $file (split) { + die "Nothing known about file $file!" + unless (exists($fversions->{$file})); + + push @tfiles, { + file => $file, + tag => $tag, + old => $fversions->{$file}{old}, + new => $fversions->{$file}{new}, + }; + } + + # Store the file list in the correct array + push(@{$modified}, @tfiles) + if ($state == STATE_MODIFIED); + + push(@{$added}, @tfiles) + if ($state == STATE_ADDED); + + push(@{$removed}, @tfiles) + if ($state == STATE_REMOVED); + } + + # Remove trailing blank lines from the log message + while (@{$log} > 0 && $log->[$#{$log}] =~ /^\s*$/) { + pop(@{$log}); + } +} + +# Build and send message for a new directory +sub send_newdir ($$\@\@@) { + my ($module, $dir, $log, $branch_tags, @mailto) = @_; + my (@text) = (); + + # If there was a sticky tag for the directory, make it a branch tag + if ($log->[$#{$log}] =~ /^--> Using per-directory sticky tag \`(.*)\'$/) { + push_once(@{$branch_tags}, $1); + pop(@{$log}); + } + + # Build the message... + push(@text, build_header($module, @{$branch_tags})); + push(@text, "Log message:", "", @{$log}); + + # and send it (synchronously) + send_mail(@mailto, "[CVS] Module $module: New directory $dir", @text); +} + +# Build and send message for an import +sub send_import ($$\@\@@) { + my ($module, $dir, $log, $branch_tags, @mailto) = @_; + my (@text) = (); + + # Build the message... + push(@text, build_header($module, @{$branch_tags})); + push(@text, "Log message:", "", @{$log}); + + # and send it (synchronously) + send_mail(@mailto, "[CVS] Module $module: Imported $dir", @text); +} + +# Find log file matching our log +sub find_logfile ($$\@) { + my ($module, $tmpdir, $log) = @_; + my ($i); + + debug "Searching for log file index..."; + + for ($i = 0; ; $i++) { + my (@text); + + # found one that doesn't exist... + last + if (!-e "$tmpdir/mod.$module/logfile.$i"); + + # read in the log file + open(FILE, "<$tmpdir/mod.$module/logfile.$i"); + push(@text, map { chomp; $_ } <FILE>); + close(FILE); + + # If the log file was empty, use it + last + if (@text == 0); + + # If the log messages are identical, use that + last + if (join(' ', @{$log}) eq join(' ', @text)); + } + + debug "-np", "$tmpdir/mod.$module/logfile.$i\n"; + + return $i; +} + +sub send_commit ($$@) { + my ($module, $tmpdir, @mailto) = @_; + my ($i, @text, @modified, @added, @removed, @files, @branch_tags); + + for ($i = 0; ; $i++) { + # No more log files + last + if (!-e "$tmpdir/mod.$module/logfile.$i"); + + # read modified list and list all modified files if non-empty + @modified = file_to_names(@branch_tags, + "$tmpdir/mod.$module/modified.$i"); + push(@text, "Modified files:", name_to_list(@branch_tags, @modified), + "") + if (@modified > 0); + + # read added list and list all added files if non-empty + @added = file_to_names(@branch_tags, "$tmpdir/mod.$module/added.$i"); + push(@text, "Added files:", name_to_list(@branch_tags, @added), "") + if (@added > 0); + + # read removed list and list all removed files if non-empty + @removed = file_to_names(@branch_tags, + "$tmpdir/mod.$module/removed.$i"); + push(@text, "Removed files:", name_to_list(@branch_tags, @removed), "") + if (@removed > 0); + + # read and insert the log message + open(FILE, "<$tmpdir/mod.$module/logfile.$i"); + push(@text, "Log message:", ""); + push(@text, map { chomp; $_ } <FILE>); + push(@text, ""); + close(FILE); + + # remember all the files we looked at + push(@files, @modified, @added, @removed); + } + + # Now that name_to_list has rebuilt our list of branch tags, we can build + # the header and prepend it to the message + unshift(@text, build_header($module, @branch_tags)); + + # sort the files out for our diff + @files = sort { $a->{name} cmp $b->{name} } @files; + + # add the diff... + push(@text, "---------------------- diff included ----------------------"); + push(@text, diff_files($module, @files)); + push(@text, "----------------------- End of diff -----------------------"); + + # Now send the mail unless @text contains ChangeLog + send_mail(@mailto, "[CVS] Module $module: Change committed", @text); +} + +# Find the tmp directory +my ($tmpdir) = (tmpdir()); + +my (@mailto) = (); +my (@files) = (); +my (@path) = (); +my ($module, $repdir, $dir, $mailmap) = (undef, undef, undef, undef); + +# Process command line arguments +while (@ARGV > 0) { + my ($arg) = (shift(@ARGV)); + + if ($arg eq '-d') { + # Turn on debugging + $debug++; + } elsif ($arg eq '-m') { + # An address to mail the notification to + die "Argument for -m missing" + unless (@ARGV > 0); + + push(@mailto, shift(@ARGV)); + } else { + # the list of filenames passed by CVS--you *must* use %{sVv}! + die "Too many arguments!" + unless (@files == 0); + + @files = split(" ", $arg); + } +} + +$mailmap = load_maillist($maillist) + unless (@mailto > 0); + +die "Nobody to mail to" + unless (@mailto > 0 || defined($mailmap)); + +die "No files to process" + unless (@files > 1); + +# The repository directory +$repdir = shift(@files); + +# break it appart... +@path = split("/", $repdir); + +# Now we know the module name, if it wasn't explicitly set +$module = $path[0]; + +# Figure out what our directory is +if (@path == 1) { + $dir = "."; +} else { + $dir = join("/", @path[1..$#path]); +} + +# append a / to it... +$dir .= "/"; + +debug "module = $module\n"; +debug "dir = $dir\n"; +debug "path = ", join(":", @path), "\n"; +debug "files = ", join(":", @files), "\n"; +debug "tmpdir = $tmpdir\n"; + +my (%fversions); + +# Unless its a new directory or imported sources, create file records +unless (defined($files[1]) && defined($files[2]) && + (($files[1] eq "New" && $files[2] eq "directory") || + ($files[1] eq "Imported" && $files[2] eq "sources"))) { + + foreach my $fname (@files) { + # You *must* use %{sVv} in the call in loginfo! + die "Invalid filenames" + unless ($fname =~ /^(.*),([0-9.]+|NONE),([0-9.]+|NONE)$/); + + $fversions{$1} = { + old => ($2 eq "NONE" ? "0" : $2), + new => ($3 eq "NONE" ? "0" : $3), + }; + } +} + +my (@modules) = load_modules($tmpdir); +push_once(@modules, $module); +save_modules(@modules, $tmpdir); + +die "Can't create per-module directory $tmpdir/mod.$module: $!" + unless (-e "$tmpdir/mod.$module" || mkdir("$tmpdir/mod.$module", 0700)); + +die "Per-module directory $tmpdir/mod.$module is not a directory" + unless (-d "$tmpdir/mod.$module"); + +my (@modified, @added, @removed, @log, @branch_tags); + +read_log(%fversions, @modified, @added, @removed, @log, @branch_tags); + +# If a new directory was added, we're done... +if (defined($files[1]) && defined($files[2]) && + $files[1] eq "New" && $files[2] eq "directory") { + debug "Sending log message for new directory $dir\n"; + send_newdir($module, $dir, @log, @branch_tags, + make_maillist($mailmap, $module, @mailto)); +} elsif (defined($files[1]) && defined($files[2]) && + $files[1] eq "Imported" && $files[2] eq "sources") { + debug "Sending log message for new import $dir\n"; + send_import($module, $dir, @log, @branch_tags, + make_maillist($mailmap, $module, @mailto)); +} else { + my $i = find_logfile($module, $tmpdir, @log); + + # Store modified, added, and removed file lists, along with the log message + names_to_file("$tmpdir/mod.$module/modified.$i", $dir, @modified); + names_to_file("$tmpdir/mod.$module/added.$i", $dir, @added); + names_to_file("$tmpdir/mod.$module/removed.$i", $dir, @removed); + write_log("$tmpdir/mod.$module/logfile.$i", @log); + + # Now check to see if we're at the end of our rope + my ($lastdir) = (get_line("$tmpdir/lastdir")); + + debug "Checking $ENV{CVSROOT}/$repdir against lastdir $lastdir\n"; + + # Nope, exit instead of sending a message + exit(0) + if ($lastdir ne "$ENV{CVSROOT}/$repdir"); + + debug "At last, we've reached the end\n"; + + # We have to daemonize and sleep so that there isn't any lock hanging + # around when we get to the cvs rdiff below... + daemonize(); + sleep(10); + + # Send a mail for each module involved + foreach my $mod (@modules[1..$#modules]) { + debug "Sending log message for module $mod\n"; + send_commit($mod, $tmpdir, make_maillist($mailmap, $mod, @mailto)); + } +} + +# and clean up after ourselves +cleanup_dir($tmpdir); Index: CVSROOT/usermap diff -u /dev/null CVSROOT/usermap:1.4 --- /dev/null Wed Jul 30 15:55:32 2003 +++ CVSROOT/usermap Wed Jul 30 15:55:21 2003 @@ -0,0 +1 @@ +darthsidious_:'Tim Ireland <dar...@us...>' ----------------------- End of diff ----------------------- |