x2serv-cvs Mailing List for X2 IRC Channel and Oper Services (Page 13)
Brought to you by:
sirvulcan
You can subscribe to this list here.
2001 |
Jan
(33) |
Feb
(14) |
Mar
(26) |
Apr
(19) |
May
(28) |
Jun
(5) |
Jul
(6) |
Aug
(5) |
Sep
(6) |
Oct
(1) |
Nov
(21) |
Dec
(3) |
---|---|---|---|---|---|---|---|---|---|---|---|---|
2002 |
Jan
(3) |
Feb
(14) |
Mar
|
Apr
(2) |
May
(1) |
Jun
(1) |
Jul
|
Aug
|
Sep
(2) |
Oct
|
Nov
|
Dec
|
2003 |
Jan
(1) |
Feb
(4) |
Mar
|
Apr
|
May
(4) |
Jun
(6) |
Jul
|
Aug
|
Sep
|
Oct
(7) |
Nov
|
Dec
|
2004 |
Jan
|
Feb
|
Mar
(7) |
Apr
|
May
|
Jun
(19) |
Jul
(5) |
Aug
(16) |
Sep
(4) |
Oct
(10) |
Nov
(7) |
Dec
(6) |
2005 |
Jan
(4) |
Feb
(5) |
Mar
(24) |
Apr
(6) |
May
(17) |
Jun
(11) |
Jul
(2) |
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
From: Alex S. <ru...@us...> - 2001-03-02 14:06:15
|
Update of /cvsroot/x2serv/x2/HELP In directory usw-pr-cvs1:/tmp/cvs-serv25356/HELP Modified Files: HELP Log Message: . Index: HELP =================================================================== RCS file: /cvsroot/x2serv/x2/HELP/HELP,v retrieving revision 1.4 retrieving revision 1.5 diff -C2 -r1.4 -r1.5 *** HELP 2001/03/02 12:22:25 1.4 --- HELP 2001/03/02 14:07:40 1.5 *************** *** 24,26 **** MSG format : /msg $n addop #mychannel *!*rubin@*rdrop.com ! Public (done in #mychannel) : .addop *!*rubin@*rdrop.com --- 24,26 ---- MSG format : /msg $n addop #mychannel *!*rubin@*rdrop.com ! Public (done in #mychannel) : $caddop *!*rubin@*rdrop.com |
From: Alex S. <ru...@us...> - 2001-03-02 14:05:02
|
Update of /cvsroot/x2serv/x2/source In directory usw-pr-cvs1:/tmp/cvs-serv25096 Modified Files: commands.c Added Files: help.c help.h Log Message: added the help.* files (woops) --- NEW FILE --- #include "config.h" HelpSub(char *Target, char *Source) { char* ptr; int i; for(ptr = Source; *ptr != '\0';ptr++) { if(*ptr == '$') { ptr++; switch(*ptr) { case 't': /* network name */ for(i=0;NETWORK[i] != '\0';i++) { *Target = NETWORK[i]; Target++; } break; case 'n': /* My nick */ for(i=0;IrcNick[i] != '\0';i++) { *Target = IrcNick[i]; Target++; } break; case 'c': /* Command char */ *Target = CommandMark; Target++; break; case 'w': /* Web URL */ for(i=0;HELPURL[i] != '\0';i++) { *Target = HELPURL[i]; Target++; } break; default: *Target = '$'; Target++; *Target = *ptr; Target++; break; } ptr++; } *Target = *ptr; Target++; } *Target=0; } int ShowCommHelp(UserListType uptr, FILE * HelpFile) { /* swap needs to be big enough to hold the input string * PLUS the extra size of swapped out pieces. */ char Buffer[LINEBUFFSIZE + 1]; char SwapBuff[LINEBUFFSIZE + MAXLEN]; int c; while((c = fgets(Buffer, LINEBUFFSIZE, HelpFile) != NULL)) { Buffer[strlen(Buffer) - 1] = '\0'; HelpSub(SwapBuff, Buffer); send_to_user(uptr, "%s", SwapBuff); } return(TRUE); } int ShowUserHelp(UserListType uptr, FILE * HelpFile) { char Buffer[LINEBUFFSIZE + 1]; char SwapBuff[LINEBUFFSIZE + MAXLEN]; int c; while((c = fgets(Buffer, LINEBUFFSIZE, HelpFile) != NULL)) { Buffer[strlen(Buffer) - 1] = '\0'; HelpSub(SwapBuff, Buffer); send_to_user(uptr, "%s", SwapBuff); } return(TRUE); } int ShowOperHelp(UserListType uptr, FILE * HelpFile) { char Buffer[LINEBUFFSIZE + 1]; char SwapBuff[LINEBUFFSIZE + MAXLEN]; int c; while((c = fgets(Buffer, LINEBUFFSIZE, HelpFile) != NULL)) { Buffer[strlen(Buffer) - 1] = '\0'; HelpSub(SwapBuff, Buffer); send_to_user(uptr, "%s", SwapBuff); } return(TRUE); } --- NEW FILE --- int ShowCommHelp(UserListType uptr, FILE * HelpFile); int ShowUserHelp(UserListType uptr, FILE * HelpFile); int ShowOperHelp(UserListType uptr, FILE * HelpFile); Index: commands.c =================================================================== RCS file: /cvsroot/x2serv/x2/source/commands.c,v retrieving revision 1.135 retrieving revision 1.136 diff -C2 -r1.135 -r1.136 *** commands.c 2001/03/02 12:23:22 1.135 --- commands.c 2001/03/02 14:06:26 1.136 *************** *** 44,47 **** --- 44,48 ---- #include "parse.h" #include "accounting.h" + #include "help.h" int FILTER = 0; |
From: Alex S. <ru...@us...> - 2001-03-02 13:00:08
|
Update of /cvsroot/x2serv/x2/source In directory usw-pr-cvs1:/tmp/cvs-serv15423 Modified Files: config.h gate.c Log Message: Took the word "AfterNET" out of the gatecheck code and replaced it with constant AFTERNET Index: config.h =================================================================== RCS file: /cvsroot/x2serv/x2/source/config.h,v retrieving revision 1.56 retrieving revision 1.57 diff -C2 -r1.56 -r1.57 *** config.h 2001/03/02 12:23:22 1.56 --- config.h 2001/03/02 13:00:55 1.57 *************** *** 47,51 **** /* This is used to refer to your network in various places. It should be one word, eg "AfterNET" */ #define NETWORK "Loxxin" ! #define HELPURL "http://x2.afternet.org" #define OPERHELPFILE "HELP/operhelp.txt" --- 47,51 ---- /* This is used to refer to your network in various places. It should be one word, eg "AfterNET" */ #define NETWORK "Loxxin" ! #define HELPURL "http://x2.afternet.org" #define OPERHELPFILE "HELP/operhelp.txt" Index: gate.c =================================================================== RCS file: /cvsroot/x2serv/x2/source/gate.c,v retrieving revision 1.17 retrieving revision 1.18 diff -C2 -r1.17 -r1.18 *** gate.c 2001/02/13 11:47:53 1.17 --- gate.c 2001/03/02 13:00:55 1.18 *************** *** 319,324 **** sprintf(uhost, "*@%s", GatePtr->iphost); ! sprintf(reason, "<%s> 1hr ban -- %s[%s] Your Site has an insecure wingate! ACCESS to AFTERNET IRC NETWORK is DENIED! see %s for more information!", ! IrcNick, GatePtr->nick, GatePtr->iphost,GATEURL); if(GATECHECK == 2) { --- 319,324 ---- sprintf(uhost, "*@%s", GatePtr->iphost); ! sprintf(reason, "<%s> 1hr ban -- %s[%s] Your Site has an insecure wingate! ACCESS to %s IRC NETWORK is DENIED! see %s for more information!", ! IrcNick, GatePtr->nick, GatePtr->iphost,NETWORK,GATEURL); if(GATECHECK == 2) { |
From: Alex S. <ru...@us...> - 2001-03-02 12:21:57
|
Update of /cvsroot/x2serv/x2/source In directory usw-pr-cvs1:/tmp/cvs-serv7316/source Modified Files: Makefile.in commands.c config.h Log Message: Modified help system: * Moved to its own file help.c * replaces "$n", "$t", "$c" etc with strings spesific to the network. Index: Makefile.in =================================================================== RCS file: /cvsroot/x2serv/x2/source/Makefile.in,v retrieving revision 1.15 retrieving revision 1.16 diff -C2 -r1.15 -r1.16 *** Makefile.in 2001/01/23 19:25:00 1.15 --- Makefile.in 2001/03/02 12:23:22 1.16 *************** *** 39,43 **** # What to build: OBJS=main.o init.o chan.o user.o parse.o misc.o sock.o server.o commands.o \ ! match.o gate.o send.o support.o route.o calc.o accounting.o set.o # Dummy for old/broken `make's: --- 39,43 ---- # What to build: OBJS=main.o init.o chan.o user.o parse.o misc.o sock.o server.o commands.o \ ! match.o gate.o send.o support.o route.o calc.o accounting.o set.o help.o # Dummy for old/broken `make's: *************** *** 68,72 **** sock.o: sock.c config.h misc.h server.o: server.c config.h sock.h misc.h server.h user.h match.h send.h ! commands.o: commands.c config.h send.h misc.h sock.h chan.h user.h init.h server.h accounting.h commands.h match.h route.h parse.h match.o: match.c config.h gate.o: gate.c config.h send.h gate.h user.h misc.h server.h --- 68,72 ---- sock.o: sock.c config.h misc.h server.o: server.c config.h sock.h misc.h server.h user.h match.h send.h ! commands.o: commands.c config.h send.h misc.h sock.h chan.h user.h init.h server.h accounting.h commands.h match.h route.h parse.h set.h help.h match.o: match.c config.h gate.o: gate.c config.h send.h gate.h user.h misc.h server.h *************** *** 76,79 **** --- 76,80 ---- accounting.o: accounting.c accounting.h config.h misc.h send.h set.o: set.c set.h commands.h config.h + help.o: config.h # Maintainance targets go here Index: commands.c =================================================================== RCS file: /cvsroot/x2serv/x2/source/commands.c,v retrieving revision 1.134 retrieving revision 1.135 diff -C2 -r1.134 -r1.135 *** commands.c 2001/03/01 10:57:07 1.134 --- commands.c 2001/03/02 12:23:22 1.135 *************** *** 4433,4477 **** } - int ShowCommHelp(UserListType uptr, FILE * HelpFile) - { - - char Buffer[LINEBUFFSIZE + 1]; - int c; - - while((c = fgets(Buffer, LINEBUFFSIZE, HelpFile) != NULL)) - { - Buffer[strlen(Buffer) - 1] = '\0'; - send_to_user(uptr, "%s", Buffer); - } - return(TRUE); - } - - int ShowUserHelp(UserListType uptr, FILE * HelpFile) - { - char Buffer[LINEBUFFSIZE + 1]; - int c; - - while((c = fgets(Buffer, LINEBUFFSIZE, HelpFile) != NULL)) - { - Buffer[strlen(Buffer) - 1] = '\0'; - send_to_user(uptr, "%s", Buffer); - } - return(TRUE); - } - - int ShowOperHelp(UserListType uptr, FILE * HelpFile) - { - - char Buffer[LINEBUFFSIZE + 1]; - int c; - - while((c = fgets(Buffer, LINEBUFFSIZE, HelpFile) != NULL)) - { - Buffer[strlen(Buffer) - 1] = '\0'; - send_to_user(uptr, "%s", Buffer); - } - return(TRUE); - } - int c_help(C_PARAM) { --- 4433,4436 ---- *************** *** 4487,4491 **** if (Comm && (strchr(Comm, '/') || strchr(Comm, '.'))) { ! send_to_user(uptr, "\002Sorry, invalid help parameter. Try using HELP.\002"); return(FALSE); } --- 4446,4450 ---- if (Comm && (strchr(Comm, '/') || strchr(Comm, '.'))) { ! send_to_user(uptr, "\002Sorry, invalid help parameter. Try using just HELP.\002"); return(FALSE); } Index: config.h =================================================================== RCS file: /cvsroot/x2serv/x2/source/config.h,v retrieving revision 1.55 retrieving revision 1.56 diff -C2 -r1.55 -r1.56 *** config.h 2001/03/02 09:52:21 1.55 --- config.h 2001/03/02 12:23:22 1.56 *************** *** 47,50 **** --- 47,51 ---- /* This is used to refer to your network in various places. It should be one word, eg "AfterNET" */ #define NETWORK "Loxxin" + #define HELPURL "http://x2.afternet.org" #define OPERHELPFILE "HELP/operhelp.txt" |
Update of /cvsroot/x2serv/x2/HELP In directory usw-pr-cvs1:/tmp/cvs-serv7087 Modified Files: 8BALL ACCESS ADDBAN ADDLAMER ADDMASK AUTHORS BACKUP CHANNEL DELBAN DISCONNECT DOWN GENERAL GLINE GLINES GLOBAL HELP INFO INVITE IRCOP JUMP LOGIN MASK NETSTAT NETSTATS QUIT RAW REGCHAN REROUTE RLOAD SEARCHCHAN SET SETGLINES SETTIME SETTINGS SPOOFSERV SUSPEND UB UBA UBM UNBAN UNGLINE UNREG UNSUSPEND UPLINKS UPTIME USER VERSION WHATSNEW XSET operhelp.txt userhelp.txt Removed Files: tolower Log Message: Updated help files for new help system, where $n $t $c $w are replaced with network spesific values (nick, network, command char, url) Index: 8BALL =================================================================== RCS file: /cvsroot/x2serv/x2/HELP/8BALL,v retrieving revision 1.2 retrieving revision 1.3 diff -C2 -r1.2 -r1.3 *** 8BALL 2000/12/19 08:11:55 1.2 --- 8BALL 2001/03/02 12:22:25 1.3 *************** *** 1,5 **** Usage: 8BALL <question> ----------------------- ! X2, in his infinite wisdom, will find an answer to your question! For entertainment purposes only. 8BALL support four question types: --- 1,5 ---- Usage: 8BALL <question> ----------------------- ! $n, in her infinite wisdom, will find an answer to your question! For entertainment purposes only. 8BALL support four question types: Index: ACCESS =================================================================== RCS file: /cvsroot/x2serv/x2/HELP/ACCESS,v retrieving revision 1.3 retrieving revision 1.4 diff -C2 -r1.3 -r1.4 *** ACCESS 2000/12/19 08:11:55 1.3 --- ACCESS 2001/03/02 12:22:25 1.4 *************** *** 1,10 **** Usage: ACCESS <nickname> ------------------------ ! `nickname' must be someone currently online on AfterNET. If no nick is specified, your own access will be reported. ACCESS finds out what access a user has on a channel. The output may look something like this: ! Rubin : MANAGER on #AfterNET, under the name Rubin. Rubin has auto ops turned ON * This tells you the TOGOP status for the given users host. --- 1,10 ---- Usage: ACCESS <nickname> ------------------------ ! `nickname' must be someone currently online on $t. If no nick is specified, your own access will be reported. ACCESS finds out what access a user has on a channel. The output may look something like this: ! Rubin : MANAGER on #Operations, under the name Rubin. Rubin has auto ops turned ON * This tells you the TOGOP status for the given users host. Index: ADDBAN =================================================================== RCS file: /cvsroot/x2serv/x2/HELP/ADDBAN,v retrieving revision 1.2 retrieving revision 1.3 diff -C2 -r1.2 -r1.3 *** ADDBAN 2000/12/19 08:11:55 1.2 --- ADDBAN 2001/03/02 12:22:25 1.3 *************** *** 3,7 **** The ADDBAN command has been replaced with ADDLAMER - ! The BAN userlevel in X2 is now LAMER, to lesson the confusion ! between channel bans and X2 bans. --- 3,7 ---- The ADDBAN command has been replaced with ADDLAMER - ! The BAN userlevel in $n is now LAMER, to lesson the confusion ! between channel bans and $n bans. Index: ADDLAMER =================================================================== RCS file: /cvsroot/x2serv/x2/HELP/ADDLAMER,v retrieving revision 1.3 retrieving revision 1.4 diff -C2 -r1.3 -r1.4 *** ADDLAMER 2000/12/19 08:11:55 1.3 --- ADDLAMER 2001/03/02 12:22:25 1.4 *************** *** 3,8 **** The ADDLAMER command is used to add an entry to the channels "LAMER" list (formerly ADDBAN). Lamers are people you want to keep out of your channel. If the person you want to ban is ! currently online, you can supply their nickname, and X2 will guess at a good hostmask to ! use. If they are not currently online, or the mask X2 guesses is not preferred, a hostmask can be given instead. If no reason is given, a generic default reason will be used instead. --- 3,8 ---- The ADDLAMER command is used to add an entry to the channels "LAMER" list (formerly ADDBAN). Lamers are people you want to keep out of your channel. If the person you want to ban is ! currently online, you can supply their nickname, and $n will guess at a good hostmask to ! use. If they are not currently online, or the mask $n guesses is not preferred, a hostmask can be given instead. If no reason is given, a generic default reason will be used instead. Index: ADDMASK =================================================================== RCS file: /cvsroot/x2serv/x2/HELP/ADDMASK,v retrieving revision 1.2 retrieving revision 1.3 diff -C2 -r1.2 -r1.3 *** ADDMASK 2000/12/19 08:11:55 1.2 --- ADDMASK 2001/03/02 12:22:25 1.3 *************** *** 2,6 **** -------------------------------------------- Adds a "secure" hostmask to your handle in a channel. If you match a ! secure mask, X2 won't require that you LOGIN before using commands. It is recommended only for static IP's or other situations where you can be sure no one else could match the mask, and thus gain access in --- 2,6 ---- -------------------------------------------- Adds a "secure" hostmask to your handle in a channel. If you match a ! secure mask, $n won't require that you LOGIN before using commands. It is recommended only for static IP's or other situations where you can be sure no one else could match the mask, and thus gain access in Index: AUTHORS =================================================================== RCS file: /cvsroot/x2serv/x2/HELP/AUTHORS,v retrieving revision 1.2 retrieving revision 1.3 diff -C2 -r1.2 -r1.3 *** AUTHORS 2000/12/19 08:11:55 1.2 --- AUTHORS 2001/03/02 12:22:25 1.3 *************** *** 1,5 **** Usage: AUTHORS -------------- ! The AUTHORS command returns information on the authors of X2 and the GNU license its released under. Also shown is where you can download a copy. --- 1,5 ---- Usage: AUTHORS -------------- ! The AUTHORS command returns information on the authors of $n(X2) and the GNU license its released under. Also shown is where you can download a copy. Index: BACKUP =================================================================== RCS file: /cvsroot/x2serv/x2/HELP/BACKUP,v retrieving revision 1.2 retrieving revision 1.3 diff -C2 -r1.2 -r1.3 *** BACKUP 2000/12/19 08:11:55 1.2 --- BACKUP 2001/03/02 12:22:25 1.3 *************** *** 1,5 **** Usage: BACKUP ------------- ! The BACKUP command causes X2 to initiate a system() call to tar and gzip its channel database. Its intended as a conveniant way for the bot maintainer to backup files. --- 1,5 ---- Usage: BACKUP ------------- ! The BACKUP command causes $n to initiate a system() call to tar and gzip its channel database. Its intended as a conveniant way for the bot maintainer to backup files. Index: CHANNEL =================================================================== RCS file: /cvsroot/x2serv/x2/HELP/CHANNEL,v retrieving revision 1.4 retrieving revision 1.5 diff -C2 -r1.4 -r1.5 *** CHANNEL 2000/12/19 08:11:55 1.4 --- CHANNEL 2001/03/02 12:22:25 1.5 *************** *** 1,6 **** OP - Op a user. DEOP - Deop a user. ! UP - Have X2 op you. ! DOWN - Have X2 deop you. BAN - Set a ban. --- 1,6 ---- OP - Op a user. DEOP - Deop a user. ! UP - Have $n op you. ! DOWN - Have $n deop you. BAN - Set a ban. *************** *** 14,18 **** TOPIC - Refresh the topic to the default. ! MODE - Reset the modes from X2's database. SET - Change the permanent --- 14,18 ---- TOPIC - Refresh the topic to the default. ! MODE - Reset the modes from $n's database. SET - Change the permanent Index: DELBAN =================================================================== RCS file: /cvsroot/x2serv/x2/HELP/DELBAN,v retrieving revision 1.2 retrieving revision 1.3 diff -C2 -r1.2 -r1.3 *** DELBAN 2000/12/19 08:11:55 1.2 --- DELBAN 2001/03/02 12:22:25 1.3 *************** *** 2,5 **** ---------------------------------- The DELBAN command has been replaced with DELLAMER ! The BAN userlevel in X2 is now LAMER, to lesson the confusion ! between channel bans and X2 bans. --- 2,5 ---- ---------------------------------- The DELBAN command has been replaced with DELLAMER ! The BAN userlevel in $n is now LAMER, to lesson the confusion ! between channel bans and $n bans. Index: DISCONNECT =================================================================== RCS file: /cvsroot/x2serv/x2/HELP/DISCONNECT,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -r1.1 -r1.2 *** DISCONNECT 2001/01/14 08:10:13 1.1 --- DISCONNECT 2001/03/02 12:22:25 1.2 *************** *** 1,5 **** DISCONNECT -------------- ! The DISCONNECT command causes X2 to disconnect from the network and idle on the configured port waiting for a connection. When a server connects to it, it will check the IP and password, and if OK, re-connect. This --- 1,5 ---- DISCONNECT -------------- ! The DISCONNECT command causes $n to disconnect from the network and idle on the configured port waiting for a connection. When a server connects to it, it will check the IP and password, and if OK, re-connect. This Index: DOWN =================================================================== RCS file: /cvsroot/x2serv/x2/HELP/DOWN,v retrieving revision 1.2 retrieving revision 1.3 diff -C2 -r1.2 -r1.3 *** DOWN 2000/12/19 08:11:55 1.2 --- DOWN 2001/03/02 12:22:25 1.3 *************** *** 1,5 **** Usage: DOWN [channel] --------------------- ! The DOWN command makes x2 remove your +o or +v modes in a channel. PEONS can be configured with SET to get +v automatically, in this case they can use UP and DOWN to set +v and -v respectively. All --- 1,5 ---- Usage: DOWN [channel] --------------------- ! The DOWN command makes $n remove your +o or +v modes in a channel. PEONS can be configured with SET to get +v automatically, in this case they can use UP and DOWN to set +v and -v respectively. All Index: GENERAL =================================================================== RCS file: /cvsroot/x2serv/x2/HELP/GENERAL,v retrieving revision 1.3 retrieving revision 1.4 diff -C2 -r1.3 -r1.4 *** GENERAL 2000/12/19 08:11:55 1.3 --- GENERAL 2001/03/02 12:22:25 1.4 *************** *** 1,10 **** =----------------------------------------------= ! X2 uses a standard interface for each command in its command database. Commands can be issued either in /MSG format or in a channel ! which X2 is in. These two ways are demonstrated below: ! /MSG X2 OP #chatzone Locke ! .OP #chatzone Locke If a command is given in a channel, and the --- 1,10 ---- =----------------------------------------------= ! $n uses a standard interface for each command in its command database. Commands can be issued either in /MSG format or in a channel ! which $n is in. These two ways are demonstrated below: ! /MSG $n OP #chatzone Locke ! $cOP #chatzone Locke If a command is given in a channel, and the *************** *** 12,16 **** the command was issued in will be used instead: ! .OP locke Some commands, such as NETSTATS don't require --- 12,16 ---- the command was issued in will be used instead: ! $cOP locke Some commands, such as NETSTATS don't require *************** *** 25,31 **** If a command takes additional parameters aside from channel, they will be expected as well. ! See /MSG X2 HELP <COMMAND> for the exact syntax of each command. =------------- For more info see --------------= ! http://www.afternet.org/x2 =----------------------------------------------= --- 25,31 ---- If a command takes additional parameters aside from channel, they will be expected as well. ! See /MSG $n HELP <COMMAND> for the exact syntax of each command. =------------- For more info see --------------= ! $w =----------------------------------------------= Index: GLINE =================================================================== RCS file: /cvsroot/x2serv/x2/HELP/GLINE,v retrieving revision 1.3 retrieving revision 1.4 diff -C2 -r1.3 -r1.4 *** GLINE 2000/12/19 08:11:55 1.3 --- GLINE 2001/03/02 12:22:25 1.4 *************** *** 3,7 **** The GLINE command is an IRCop command to add a "G-Line" to the network GLINE list. A G-Line is a global network ban on a hostmask. ! G-Lines have an expire time, which X2 takes as time and unit. Time is an integer value. Unit is one of: MIN, HOUR, DAY. --- 3,7 ---- The GLINE command is an IRCop command to add a "G-Line" to the network GLINE list. A G-Line is a global network ban on a hostmask. ! G-Lines have an expire time, which $n takes as time and unit. Time is an integer value. Unit is one of: MIN, HOUR, DAY. Index: GLINES =================================================================== RCS file: /cvsroot/x2serv/x2/HELP/GLINES,v retrieving revision 1.2 retrieving revision 1.3 diff -C2 -r1.2 -r1.3 *** GLINES 2000/12/19 08:11:55 1.2 --- GLINES 2001/03/02 12:22:25 1.3 *************** *** 1,7 **** Usage: GLINES ------------- ! The GLINES command is used to see a list of the G-Lines X2 has in its database. These SHOULD include all G-Lines set on the network (while ! X2 was present to see them). GLINES is available only to IRCops. --- 1,7 ---- Usage: GLINES ------------- ! The GLINES command is used to see a list of the G-Lines $n has in its database. These SHOULD include all G-Lines set on the network (while ! $n was present to see them). GLINES is available only to IRCops. Index: GLOBAL =================================================================== RCS file: /cvsroot/x2serv/x2/HELP/GLOBAL,v retrieving revision 1.2 retrieving revision 1.3 diff -C2 -r1.2 -r1.3 *** GLOBAL 2000/12/19 08:11:55 1.2 --- GLOBAL 2001/03/02 12:22:25 1.3 *************** *** 2,10 **** ----------------------- The GLOBAL command is used to send a Channel Service Announcement to ! each channel X2 has registered. It should be used for Channel Service information ONLY and NOT general network information, as it touches only registered channels. This command may not be used for unofficial notices (such as spam, jokes, or playing around). ! Intended uses include: notification of X2 outages, changes, and problems. --- 2,10 ---- ----------------------- The GLOBAL command is used to send a Channel Service Announcement to ! each channel $n has registered. It should be used for Channel Service information ONLY and NOT general network information, as it touches only registered channels. This command may not be used for unofficial notices (such as spam, jokes, or playing around). ! Intended uses include: notification of $n outages, changes, and problems. Index: HELP =================================================================== RCS file: /cvsroot/x2serv/x2/HELP/HELP,v retrieving revision 1.3 retrieving revision 1.4 diff -C2 -r1.3 -r1.4 *** HELP 2000/12/19 08:11:55 1.3 --- HELP 2001/03/02 12:22:25 1.4 *************** *** 1,5 **** Usage: HELP [channel] <topic> ----------------------------- ! X2's HELP command will show you the help information for the given topic. Most commands have help associated with them, as well as the following: --- 1,5 ---- Usage: HELP [channel] <topic> ----------------------------- ! $n's HELP command will show you the help information for the given topic. Most commands have help associated with them, as well as the following: *************** *** 20,26 **** Examples of commands: ! Private (in MSG format) : /msg X2 userlist #mychannel ! Public (done in #mychannel) : .userlist ! MSG format : /msg x2 addop #mychannel *!*rubin@*rdrop.com Public (done in #mychannel) : .addop *!*rubin@*rdrop.com --- 20,26 ---- Examples of commands: ! Private (in MSG format) : /msg $n userlist #mychannel ! Public (done in #mychannel) : $cuserlist ! MSG format : /msg $n addop #mychannel *!*rubin@*rdrop.com Public (done in #mychannel) : .addop *!*rubin@*rdrop.com Index: INFO =================================================================== RCS file: /cvsroot/x2serv/x2/HELP/INFO,v retrieving revision 1.3 retrieving revision 1.4 diff -C2 -r1.3 -r1.4 *** INFO 2000/12/19 08:11:55 1.3 --- INFO 2001/03/02 12:22:25 1.4 *************** *** 12,18 **** UPTIME - See my uptime and interesting statistics. ! AUTHORS - Find out who wrote X2, and where to get it. VERSION - Displays my version string. ! WHOAMI - See what X2 sees as "you". ACCESS - See what access a person has. --- 12,18 ---- UPTIME - See my uptime and interesting statistics. ! AUTHORS - Find out who wrote $n, and where to get it. VERSION - Displays my version string. ! WHOAMI - See what $n sees as "you". ACCESS - See what access a person has. Index: INVITE =================================================================== RCS file: /cvsroot/x2serv/x2/HELP/INVITE,v retrieving revision 1.2 retrieving revision 1.3 diff -C2 -r1.2 -r1.3 *** INVITE 2000/12/19 08:11:55 1.2 --- INVITE 2001/03/02 12:22:25 1.3 *************** *** 6,10 **** IMPORTANT NOTE: SPAMMING (sending unsolicited messages or invites to ! lots of users) is STRICTLY prohibited on AfterNET. If you abuse this command, expect to be banned. --- 6,10 ---- IMPORTANT NOTE: SPAMMING (sending unsolicited messages or invites to ! lots of users) is STRICTLY prohibited on $t. If you abuse this command, expect to be banned. Index: IRCOP =================================================================== RCS file: /cvsroot/x2serv/x2/HELP/IRCOP,v retrieving revision 1.7 retrieving revision 1.8 diff -C2 -r1.7 -r1.8 *** IRCOP 2001/01/13 11:41:54 1.7 --- IRCOP 2001/03/02 12:22:25 1.8 *************** *** 3,7 **** --- For CSERVICE PERSONNEL ONLY --- ! REGCHAN - Makes a new channel in X2's database. SCRIPTREG - Front end to REGCHAN, ADDOWNER, SET TOPIC. UNREG - Unregisters a channel. --- 3,7 ---- --- For CSERVICE PERSONNEL ONLY --- ! REGCHAN - Makes a new channel in $n's database. SCRIPTREG - Front end to REGCHAN, ADDOWNER, SET TOPIC. UNREG - Unregisters a channel. *************** *** 24,31 **** UPLINKS - Shows servers I can link to JUMP - Changes servers. ! DISCONNECT - Makes X2 disconnect from the net and wait for a connection. QUIT - Closes all databases and exits. ! SPOOFSERV - Connect a fake server to X2. SETTIME - Synch the network to my local timestamp. --- 24,31 ---- UPLINKS - Shows servers I can link to JUMP - Changes servers. ! DISCONNECT - Makes $n disconnect from the net and wait for a connection. QUIT - Closes all databases and exits. ! SPOOFSERV - Connect a fake server to $n. SETTIME - Synch the network to my local timestamp. Index: JUMP =================================================================== RCS file: /cvsroot/x2serv/x2/HELP/JUMP,v retrieving revision 1.2 retrieving revision 1.3 diff -C2 -r1.2 -r1.3 *** JUMP 2000/12/19 08:11:55 1.2 --- JUMP 2001/03/02 12:22:25 1.3 *************** *** 1,5 **** Usage: JUMP <server> <port> --------------------------- ! The JUMP command causes X2 to change to a new uplink. Only those servers listed in UPLINKS are available. It can be considered equivalent to issuing a /squit and /connect to an IRC server. --- 1,5 ---- Usage: JUMP <server> <port> --------------------------- ! The JUMP command causes $n to change to a new uplink. Only those servers listed in UPLINKS are available. It can be considered equivalent to issuing a /squit and /connect to an IRC server. Index: LOGIN =================================================================== RCS file: /cvsroot/x2serv/x2/HELP/LOGIN,v retrieving revision 1.3 retrieving revision 1.4 diff -C2 -r1.3 -r1.4 *** LOGIN 2000/12/19 08:11:55 1.3 --- LOGIN 2001/03/02 12:22:25 1.4 *************** *** 1,5 **** Usage: LOGIN [channel] <handle> <password> ------------------------------------------ ! Lets X2 know that you are <handle>. <password> is the pass that you have for you in the userlist. If you don't know your password, someone higher on the userlist will have to change it with RESETPASS. --- 1,5 ---- Usage: LOGIN [channel] <handle> <password> ------------------------------------------ ! Lets $n know that you are <handle>. <password> is the pass that you have for you in the userlist. If you don't know your password, someone higher on the userlist will have to change it with RESETPASS. Index: MASK =================================================================== RCS file: /cvsroot/x2serv/x2/HELP/MASK,v retrieving revision 1.3 retrieving revision 1.4 diff -C2 -r1.3 -r1.4 *** MASK 2000/12/19 08:11:55 1.3 --- MASK 2001/03/02 12:22:25 1.4 *************** *** 6,10 **** create and understand hostmasks. ! A hostmask is how scripts, bots, and services (like X2) determine someone's identity on IRC. Everyone who logs onto IRC has a nickname, a UserID (or `ident'), and a host. If you are on a Unix system, your --- 6,10 ---- create and understand hostmasks. ! A hostmask is how scripts, bots, and services (like $n) determine someone's identity on IRC. Everyone who logs onto IRC has a nickname, a UserID (or `ident'), and a host. If you are on a Unix system, your Index: NETSTAT =================================================================== RCS file: /cvsroot/x2serv/x2/HELP/NETSTAT,v retrieving revision 1.2 retrieving revision 1.3 diff -C2 -r1.2 -r1.3 *** NETSTAT 2000/12/19 08:11:55 1.2 --- NETSTAT 2001/03/02 12:22:25 1.3 *************** *** 1,5 **** Usage: NETSTAT -------------- ! The NETSTAT command displays information about the network and X2. Specifically it provides the number of users, servers, operators, channels, and users at the various userlevels. --- 1,5 ---- Usage: NETSTAT -------------- ! The NETSTAT command displays information about the network and $n. Specifically it provides the number of users, servers, operators, channels, and users at the various userlevels. Index: NETSTATS =================================================================== RCS file: /cvsroot/x2serv/x2/HELP/NETSTATS,v retrieving revision 1.2 retrieving revision 1.3 diff -C2 -r1.2 -r1.3 *** NETSTATS 2000/12/19 08:11:55 1.2 --- NETSTATS 2001/03/02 12:22:25 1.3 *************** *** 1,5 **** Usage: NETSTAT -------------- ! The NETSTAT command displays information about the network and X2. Specifically it provides the number of users, servers, operators, channels, and users at the various userlevels. --- 1,5 ---- Usage: NETSTAT -------------- ! The NETSTAT command displays information about the network and $n. Specifically it provides the number of users, servers, operators, channels, and users at the various userlevels. Index: QUIT =================================================================== RCS file: /cvsroot/x2serv/x2/HELP/QUIT,v retrieving revision 1.2 retrieving revision 1.3 diff -C2 -r1.2 -r1.3 *** QUIT 2000/12/19 08:11:55 1.2 --- QUIT 2001/03/02 12:22:25 1.3 *************** *** 1,5 **** Usage: QUIT [reason] -------------------- ! The QUIT command ends the X2 process. If no reason is given, a default reason will be used. --- 1,5 ---- Usage: QUIT [reason] -------------------- ! The QUIT command ends the $n process. If no reason is given, a default reason will be used. Index: RAW =================================================================== RCS file: /cvsroot/x2serv/x2/HELP/RAW,v retrieving revision 1.2 retrieving revision 1.3 diff -C2 -r1.2 -r1.3 *** RAW 2000/12/19 08:11:55 1.2 --- RAW 2001/03/02 12:22:25 1.3 *************** *** 4,11 **** enabled when `debugon' is defined. It's very important to know what you're doing when using this on a production network, as it can crash not ! only X2 but also other servers, cause desynchronization, and annoy people. ! RAW is available only to IRCops, and only exists when X2 is compiled with debugging enabled. --- 4,11 ---- enabled when `debugon' is defined. It's very important to know what you're doing when using this on a production network, as it can crash not ! only $n but also other servers, cause desynchronization, and annoy people. ! RAW is available only to IRCops, and only exists when $n is compiled with debugging enabled. Index: REGCHAN =================================================================== RCS file: /cvsroot/x2serv/x2/HELP/REGCHAN,v retrieving revision 1.4 retrieving revision 1.5 diff -C2 -r1.4 -r1.5 *** REGCHAN 2000/12/19 08:11:55 1.4 --- REGCHAN 2001/03/02 12:22:25 1.5 *************** *** 3,7 **** The REGCHAN command is used by the Channel Service Team to register a new channel. Care should be taken to ensure you're not registering a ! channel someone is already using without X2. REGCHAN is available only to IRCops, and should be used only as --- 3,7 ---- The REGCHAN command is used by the Channel Service Team to register a new channel. Care should be taken to ensure you're not registering a ! channel someone is already using without $n. REGCHAN is available only to IRCops, and should be used only as Index: REROUTE =================================================================== RCS file: /cvsroot/x2serv/x2/HELP/REROUTE,v retrieving revision 1.2 retrieving revision 1.3 diff -C2 -r1.2 -r1.3 *** REROUTE 2000/12/19 08:11:55 1.2 --- REROUTE 2001/03/02 12:22:25 1.3 *************** *** 1,5 **** Usage: REROUTE [command] ------------------------ ! Reroute allows X2 to make changes to the linkage of the servers on the network. It has 3 modes: Normal, Connect, and Test. The [command] parameter must be one of the following letters: --- 1,5 ---- Usage: REROUTE [command] ------------------------ ! Reroute allows $n to make changes to the linkage of the servers on the network. It has 3 modes: Normal, Connect, and Test. The [command] parameter must be one of the following letters: Index: RLOAD =================================================================== RCS file: /cvsroot/x2serv/x2/HELP/RLOAD,v retrieving revision 1.2 retrieving revision 1.3 diff -C2 -r1.2 -r1.3 *** RLOAD 2000/12/19 08:11:55 1.2 --- RLOAD 2001/03/02 12:22:25 1.3 *************** *** 1,5 **** Usage: RLOAD ------------ ! RLOAD loads routing.dat from X2's directory into memory as the "optimal" routing situation for your network. The syntax of the routing.dat file is: --- 1,5 ---- Usage: RLOAD ------------ ! RLOAD loads routing.dat from $n's directory into memory as the "optimal" routing situation for your network. The syntax of the routing.dat file is: Index: SEARCHCHAN =================================================================== RCS file: /cvsroot/x2serv/x2/HELP/SEARCHCHAN,v retrieving revision 1.2 retrieving revision 1.3 diff -C2 -r1.2 -r1.3 *** SEARCHCHAN 2001/02/03 07:51:22 1.2 --- SEARCHCHAN 2001/03/02 12:22:25 1.3 *************** *** 1,5 **** SEARCHCHAN [options] <search> ------------------------------------------ ! Searchchan lets you find channels in the x2 channel list based on channel name, topic, or some spesific channel settings. --- 1,5 ---- SEARCHCHAN [options] <search> ------------------------------------------ ! Searchchan lets you find channels in the $n channel list based on channel name, topic, or some spesific channel settings. *************** *** 7,11 **** --secret : Show only secret channels. --nodelete : Show only channels with the NODELETE flag. ! --noinchan : Show only channels X2 is not in (INCHAN == 0). --suspended : Show only suspended channels. --noowner : Show only ownerless channels. --- 7,11 ---- --secret : Show only secret channels. --nodelete : Show only channels with the NODELETE flag. ! --noinchan : Show only channels $n is not in (INCHAN == 0). --suspended : Show only suspended channels. --noowner : Show only ownerless channels. Index: SET =================================================================== RCS file: /cvsroot/x2serv/x2/HELP/SET,v retrieving revision 1.3 retrieving revision 1.4 diff -C2 -r1.3 -r1.4 *** SET 2001/01/13 11:41:54 1.3 --- SET 2001/03/02 12:22:25 1.4 *************** *** 14,23 **** DESCRIPTION : a description of your channel. ! TOPICFREQ : this controls how often X2 refreshes the topic to its default. STRICTOP : this controls who is allowed to give ops to who. ! AUTOOP : this controls who gets auto-oped by X2 when they join. ! PROTECT : this controls who is protected by X2 from harm. ENFMODES : this controls who can override the enforced modes. --- 14,23 ---- DESCRIPTION : a description of your channel. ! TOPICFREQ : this controls how often $n refreshes the topic to its default. STRICTOP : this controls who is allowed to give ops to who. ! AUTOOP : this controls who gets auto-oped by $n when they join. ! PROTECT : this controls who is protected by $n from harm. ENFMODES : this controls who can override the enforced modes. *************** *** 25,32 **** much they are trusted without it. BANTIMEOUT : this controls how long bans are left active. ! PEONVOICE : this determines if X2 gives +v to PEONS. ! USERINFO : this controls if X2 displays info lines when users join. ! INCHAN : this is used to temporarily remove X2 from a registered channel. =------------------- IRCop Only settings ---------------------= --- 25,32 ---- much they are trusted without it. BANTIMEOUT : this controls how long bans are left active. ! PEONVOICE : this determines if $n gives +v to PEONS. ! USERINFO : this controls if $n displays info lines when users join. ! INCHAN : this is used to temporarily remove $n from a registered channel. =------------------- IRCop Only settings ---------------------= Index: SETGLINES =================================================================== RCS file: /cvsroot/x2serv/x2/HELP/SETGLINES,v retrieving revision 1.2 retrieving revision 1.3 diff -C2 -r1.2 -r1.3 *** SETGLINES 2000/12/19 08:11:55 1.2 --- SETGLINES 2001/03/02 12:22:25 1.3 *************** *** 1,5 **** Usage: SETGLINES ---------------- ! The SETGLINES command causes X2 to reset all the G-Lines, as guided by its database (you can see a list of them with the GLINES command). --- 1,5 ---- Usage: SETGLINES ---------------- ! The SETGLINES command causes $n to reset all the G-Lines, as guided by its database (you can see a list of them with the GLINES command). Index: SETTIME =================================================================== RCS file: /cvsroot/x2serv/x2/HELP/SETTIME,v retrieving revision 1.2 retrieving revision 1.3 diff -C2 -r1.2 -r1.3 *** SETTIME 2000/12/19 08:11:55 1.2 --- SETTIME 2001/03/02 12:22:25 1.3 *************** *** 2,6 **** ------------------------------- The SETTIME command is used to reset the network to the same timestamp. ! The time at X2's local system is used. In some cases a very, very large gap can be created between real time and the network's time. In such cases, the ircd will not take the entire change at once, and --- 2,6 ---- ------------------------------- The SETTIME command is used to reset the network to the same timestamp. ! The time at $n's local system is used. In some cases a very, very large gap can be created between real time and the network's time. In such cases, the ircd will not take the entire change at once, and Index: SETTINGS =================================================================== RCS file: /cvsroot/x2serv/x2/HELP/SETTINGS,v retrieving revision 1.2 retrieving revision 1.3 diff -C2 -r1.2 -r1.3 *** SETTINGS 2000/12/19 08:11:55 1.2 --- SETTINGS 2001/03/02 12:22:25 1.3 *************** *** 1,20 **** Usage: SETTINGS --------------- ! The SETTINGS command shows all of X2's "XSET" network settings, and their status. Most settings are either ENABLED or DISABLED, but some have numerical or string values. Settings include: PINGOUTCONNECT: When enabled, if a server squits from the network due ! to a "ping timeout," X2 will attempt to reconnect it. AUTOROUTING: A currently disabled feature--this may be fixed in a future release. ! AUTOCONNECT: When disabled, X2 won't try to connect to the network, rather it will sit on the configured port and wait for a connection. ! GATECHECK: When enabled, X2 will connect to everyone connecting to the network, on port 1080 and probe for the existence of an insecure socks proxy. If detected, the host is G-Lined. MAXCLONES: This is the maximum number of "clones" allowed before action ! is taken. A clone to X2 is any connection besides one initial connection. Thus 3 clones is 4 connections. The 5th connection would trigger clone defenses. --- 1,20 ---- Usage: SETTINGS --------------- ! The SETTINGS command shows all of $n's "XSET" network settings, and their status. Most settings are either ENABLED or DISABLED, but some have numerical or string values. Settings include: PINGOUTCONNECT: When enabled, if a server squits from the network due ! to a "ping timeout," $n will attempt to reconnect it. AUTOROUTING: A currently disabled feature--this may be fixed in a future release. ! AUTOCONNECT: When disabled, $n won't try to connect to the network, rather it will sit on the configured port and wait for a connection. ! GATECHECK: When enabled, $n will connect to everyone connecting to the network, on port 1080 and probe for the existence of an insecure socks proxy. If detected, the host is G-Lined. MAXCLONES: This is the maximum number of "clones" allowed before action ! is taken. A clone to $n is any connection besides one initial connection. Thus 3 clones is 4 connections. The 5th connection would trigger clone defenses. *************** *** 22,26 **** Options range from G-Lines to nothing. Kill is recommended. NOTE: it is theoretically possible with DNS spoofing to ! "trick" X2 into G-Lining arbitrary hosts. DEBUG: This is a "debug level" setting. Debugging features should never be changed by anyone but the bot maintainer. Changes can --- 22,26 ---- Options range from G-Lines to nothing. Kill is recommended. NOTE: it is theoretically possible with DNS spoofing to ! "trick" $n into G-Lining arbitrary hosts. DEBUG: This is a "debug level" setting. Debugging features should never be changed by anyone but the bot maintainer. Changes can Index: SPOOFSERV =================================================================== RCS file: /cvsroot/x2serv/x2/HELP/SPOOFSERV,v retrieving revision 1.2 retrieving revision 1.3 diff -C2 -r1.2 -r1.3 *** SPOOFSERV 2000/12/19 08:11:55 1.2 --- SPOOFSERV 2001/03/02 12:22:25 1.3 *************** *** 1,5 **** Usage: SPOOFSERV <server> ------------------------- ! The SPOOFSERV command causes X2 to send an "I have a leaf connecting" message to the network, thus simulating the connection of a server to it. It is useful to "spoof" a server if you need for some reason to --- 1,5 ---- Usage: SPOOFSERV <server> ------------------------- ! The SPOOFSERV command causes $n to send an "I have a leaf connecting" message to the network, thus simulating the connection of a server to it. It is useful to "spoof" a server if you need for some reason to Index: SUSPEND =================================================================== RCS file: /cvsroot/x2serv/x2/HELP/SUSPEND,v retrieving revision 1.3 retrieving revision 1.4 diff -C2 -r1.3 -r1.4 *** SUSPEND 2001/01/13 11:41:54 1.3 --- SUSPEND 2001/03/02 12:22:25 1.4 *************** *** 1,5 **** Usage: SUSPEND [#channel] <reason> ------------------------------- ! The SUSPEND command is used by ircops to temporarily take X2 away from a channel, for example when it is being abused. It is a non-destructive alternative to UNREG, when you would prefer not to delete the userlist. The time of the suspension is saved, along with a reason, and the nick of who suspended it (much like a gline). Suspended channels do not currently automatically unsuspend themselves, but you can view a list of suspended channels with the SEARCHCHAN --suspended command. --- 1,5 ---- Usage: SUSPEND [#channel] <reason> ------------------------------- ! The SUSPEND command is used by ircops to temporarily take $n away from a channel, for example when it is being abused. It is a non-destructive alternative to UNREG, when you would prefer not to delete the userlist. The time of the suspension is saved, along with a reason, and the nick of who suspended it (much like a gline). Suspended channels do not currently automatically unsuspend themselves, but you can view a list of suspended channels with the SEARCHCHAN --suspended command. *************** *** 7,9 **** SEE ALSO: UNREG UNSUSPEND SEARCHCHAN DISCONNECT ! NOTE: The suspend command was formerly a 'disconnect x2 from irc' command. The functionality for that has been moved to "DISCONNECT" due to confusion. Also in previous versions of X2 the suspension of a channel was handled though SET, that is now handled with this command. --- 7,9 ---- SEE ALSO: UNREG UNSUSPEND SEARCHCHAN DISCONNECT ! NOTE: The suspend command was formerly a 'disconnect $n from irc' command. The functionality for that has been moved to "DISCONNECT" due to confusion. Also in previous versions of $n the suspension of a channel was handled though SET, that is now handled with this command. Index: UB =================================================================== RCS file: /cvsroot/x2serv/x2/HELP/UB,v retrieving revision 1.2 retrieving revision 1.3 diff -C2 -r1.2 -r1.3 *** UB 2000/12/19 08:11:55 1.2 --- UB 2001/03/02 12:22:25 1.3 *************** *** 2,6 **** -------------------------------------------- The UNBAN command is used to remove a channel ban (mode +b) from a ! channel. This should not be confused with a permanent channel ban in X2 (as in DELBAN). If a nickname is given, and nickname is currently online, any bans matching nickname's host will be removed. --- 2,6 ---- -------------------------------------------- The UNBAN command is used to remove a channel ban (mode +b) from a ! channel. This should not be confused with a permanent channel ban in $n (as in DELBAN). If a nickname is given, and nickname is currently online, any bans matching nickname's host will be removed. Index: UBA =================================================================== RCS file: /cvsroot/x2serv/x2/HELP/UBA,v retrieving revision 1.2 retrieving revision 1.3 diff -C2 -r1.2 -r1.3 *** UBA 2000/12/19 08:11:55 1.2 --- UBA 2001/03/02 12:22:25 1.3 *************** *** 3,7 **** The UBA command stands for "Un-Ban All". It removes all the channel bans (+b) from the channel. Channel bans (mode +b) should not be confused with ! X2's permanent ban list (see LLIST and ADDLAMER). UBA is available to levels OP and above. --- 3,7 ---- The UBA command stands for "Un-Ban All". It removes all the channel bans (+b) from the channel. Channel bans (mode +b) should not be confused with ! $n's permanent ban list (see LLIST and ADDLAMER). UBA is available to levels OP and above. Index: UBM =================================================================== RCS file: /cvsroot/x2serv/x2/HELP/UBM,v retrieving revision 1.2 retrieving revision 1.3 diff -C2 -r1.2 -r1.3 *** UBM 2000/12/19 08:11:55 1.2 --- UBM 2001/03/02 12:22:25 1.3 *************** *** 3,9 **** The UBM command stands for "UnBan Me", and as you might expect, it removes any ban modes (+b) matching your current nickname!user@host from the ! channel. Channel bans (+b) should not be confused with X2's permanent ban list. ! If you would prefer that X2 automatically remove bans, see the SET PROTECT command. --- 3,9 ---- The UBM command stands for "UnBan Me", and as you might expect, it removes any ban modes (+b) matching your current nickname!user@host from the ! channel. Channel bans (+b) should not be confused with $n's permanent ban list. ! If you would prefer that $n automatically remove bans, see the SET PROTECT command. Index: UNBAN =================================================================== RCS file: /cvsroot/x2serv/x2/HELP/UNBAN,v retrieving revision 1.2 retrieving revision 1.3 diff -C2 -r1.2 -r1.3 *** UNBAN 2000/12/19 08:11:55 1.2 --- UNBAN 2001/03/02 12:22:25 1.3 *************** *** 2,6 **** -------------------------------------------- The UNBAN command is used to remove a channel ban (mode +b) from a ! channel. This should not be confused with a permanent channel ban in X2 (as in DELBAN). If a nickname is given, and nickname is currently online, any bans matching nickname's host will be removed. --- 2,6 ---- -------------------------------------------- The UNBAN command is used to remove a channel ban (mode +b) from a ! channel. This should not be confused with a permanent channel ban in $n (as in DELBAN). If a nickname is given, and nickname is currently online, any bans matching nickname's host will be removed. Index: UNGLINE =================================================================== RCS file: /cvsroot/x2serv/x2/HELP/UNGLINE,v retrieving revision 1.2 retrieving revision 1.3 diff -C2 -r1.2 -r1.3 *** UNGLINE 2000/12/19 08:11:55 1.2 --- UNGLINE 2001/03/02 12:22:25 1.3 *************** *** 3,7 **** The UNGLINE command removes the given G-Line. If any servers are not currently connected to the network, they will not see the removal, and ! X2 will not tell them later. UNGLINE is available only to IRCops. --- 3,7 ---- The UNGLINE command removes the given G-Line. If any servers are not currently connected to the network, they will not see the removal, and ! $n will not tell them later. UNGLINE is available only to IRCops. Index: UNREG =================================================================== RCS file: /cvsroot/x2serv/x2/HELP/UNREG,v retrieving revision 1.2 retrieving revision 1.3 diff -C2 -r1.2 -r1.3 *** UNREG 2000/12/19 08:11:55 1.2 --- UNREG 2001/03/02 12:22:25 1.3 *************** *** 1,6 **** Usage: UNREG <channel> ---------------------- ! The UNREG command is used to remove a channel from X2's database. The ! data files are deleted and X2 parts the channel. UNREG is available only to IRCops, and should only be used under the --- 1,6 ---- Usage: UNREG <channel> ---------------------- ! The UNREG command is used to remove a channel from $n's database. The ! data files are deleted and $n parts the channel. UNREG is available only to IRCops, and should only be used under the *************** *** 8,13 **** NOTE: If you own a channel and want it removed, you can stay out of it for 30 days and it will be automatically deleted by the Channel Service ! Team. If you must have it removed immediately please contact the Channel ! Service Team via e-mail: <cse...@af...> SEE ALSO: REGCHAN CHANSTATS UNVISITED --- 8,12 ---- NOTE: If you own a channel and want it removed, you can stay out of it for 30 days and it will be automatically deleted by the Channel Service ! Team. SEE ALSO: REGCHAN CHANSTATS UNVISITED Index: UNSUSPEND =================================================================== RCS file: /cvsroot/x2serv/x2/HELP/UNSUSPEND,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -r1.1 -r1.2 *** UNSUSPEND 2001/01/14 08:10:13 1.1 --- UNSUSPEND 2001/03/02 12:22:25 1.2 *************** *** 1,5 **** Usage: UNSUSPEND [#channel] ------------------------------- ! The UNSUSPEND command removes a channel suspension previously set with the SUSPEND command. X2 will re-join the channel etc. UNSUSPEND is available to IRCOPS only. --- 1,5 ---- Usage: UNSUSPEND [#channel] ------------------------------- ! The UNSUSPEND command removes a channel suspension previously set with the SUSPEND command. $n will re-join the channel etc. UNSUSPEND is available to IRCOPS only. Index: UPLINKS =================================================================== RCS file: /cvsroot/x2serv/x2/HELP/UPLINKS,v retrieving revision 1.2 retrieving revision 1.3 diff -C2 -r1.2 -r1.3 *** UPLINKS 2000/12/19 08:11:55 1.2 --- UPLINKS 2001/03/02 12:22:25 1.3 *************** *** 1,5 **** Usage: UPLINKS -------------- ! The UPLINKS command is used to see what servers X2 is configured to link to. It spits out the list as defined in x2.conf. The JUMP command can then be used to change to one listed. --- 1,5 ---- Usage: UPLINKS -------------- ! The UPLINKS command is used to see what servers $n is configured to link to. It spits out the list as defined in x2.conf. The JUMP command can then be used to change to one listed. Index: UPTIME =================================================================== RCS file: /cvsroot/x2serv/x2/HELP/UPTIME,v retrieving revision 1.2 retrieving revision 1.3 diff -C2 -r1.2 -r1.3 *** UPTIME 2000/12/19 08:11:55 1.2 --- UPTIME 2001/03/02 12:22:25 1.3 *************** *** 1,5 **** Usage: UPTIME ------------- ! The UPTIME command causes X2 to display the number of minutes since it was started, and most recently connected. Also given are local and network timestamp values, and traffic tallies. --- 1,5 ---- Usage: UPTIME ------------- ! The UPTIME command causes $n to display the number of minutes since it was started, and most recently connected. Also given are local and network timestamp values, and traffic tallies. Index: USER =================================================================== RCS file: /cvsroot/x2serv/x2/HELP/USER,v retrieving revision 1.7 retrieving revision 1.8 diff -C2 -r1.7 -r1.8 *** USER 2001/01/19 01:39:56 1.7 --- USER 2001/03/02 12:22:25 1.8 *************** *** 1,3 **** ! LEVELS - Shows all access levels available in X2. USERLIST - Lists all entries in a channel userlist. LLIST - Lists all LAMERs for a channel. --- 1,3 ---- ! LEVELS - Shows all access levels available in $n. USERLIST - Lists all entries in a channel userlist. LLIST - Lists all LAMERs for a channel. *************** *** 18,22 **** SETHANDLE - Change someone's handle. ! LOGIN - Tell X2 who you are on a channel. MLOGIN - Login to multiple channels at once. PASS - Set/Change your password. --- 18,22 ---- SETHANDLE - Change someone's handle. ! LOGIN - Tell $n who you are on a channel. MLOGIN - Login to multiple channels at once. PASS - Set/Change your password. *************** *** 24,28 **** DELMASK - Remove an added mask. TOGOP - Sets your Auto-Op status in the userlist. ! SETINFO - Sets what X2 says when you join a channel. RESETPASS - Owner/manager use to change a forgotten --- 24,28 ---- DELMASK - Remove an added mask. TOGOP - Sets your Auto-Op status in the userlist. ! SETINFO - Sets what $n says when you join a channel. RESETPASS - Owner/manager use to change a forgotten Index: VERSION =================================================================== RCS file: /cvsroot/x2serv/x2/HELP/VERSION,v retrieving revision 1.2 retrieving revision 1.3 diff -C2 -r1.2 -r1.3 *** VERSION 2000/12/19 08:11:55 1.2 --- VERSION 2001/03/02 12:22:25 1.3 *************** *** 1,5 **** Usage: VERSION -------------- ! The VERSION command returns the X2's current version string. VERSION is available to anyone. --- 1,5 ---- Usage: VERSION -------------- ! The VERSION command returns $n's current version string. VERSION is available to anyone. Index: WHATSNEW =================================================================== RCS file: /cvsroot/x2serv/x2/HELP/WHATSNEW,v retrieving revision 1.3 retrieving revision 1.4 diff -C2 -r1.3 -r1.4 *** WHATSNEW 2000/12/19 08:11:55 1.3 --- WHATSNEW 2001/03/02 12:22:25 1.4 *************** *** 1,4 **** =----------------------------------------------= ! What's new in X2 5.1? * Userlist overhaul - Totally new userlists. --- 1,4 ---- =----------------------------------------------= ! What's new in $n 5.1? * Userlist overhaul - Totally new userlists. *************** *** 19,22 **** of information. =------------- For more info see --------------= ! http://www.afternet.org/x2 =----------------------------------------------= --- 19,22 ---- of information. =------------- For more info see --------------= ! $w =----------------------------------------------= Index: XSET =================================================================== RCS file: /cvsroot/x2serv/x2/HELP/XSET,v retrieving revision 1.2 retrieving revision 1.3 diff -C2 -r1.2 -r1.3 *** XSET 2000/12/19 08:11:55 1.2 --- XSET 2001/03/02 12:22:25 1.3 *************** *** 1,5 **** Usage: XSET <global variable> <setting> --------------------------------------- ! The XSET command allows for the setting of X2's global variables. Most settings accept either 0 or 1 (disabled/enabled), however some, like MAXCLONES, take an integer value, while others take a string. See help --- 1,5 ---- Usage: XSET <global variable> <setting> --------------------------------------- ! The XSET command allows for the setting of $n's global variables. Most settings accept either 0 or 1 (disabled/enabled), however some, like MAXCLONES, take an integer value, while others take a string. See help Index: operhelp.txt =================================================================== RCS file: /cvsroot/x2serv/x2/HELP/operhelp.txt,v retrieving revision 1.3 retrieving revision 1.4 diff -C2 -r1.3 -r1.4 *** operhelp.txt 2000/12/19 08:11:55 1.3 --- operhelp.txt 2001/03/02 12:22:25 1.4 *************** *** 1,10 **** ! Hello, IRC Operator! Please select the area you would like help with from the list below. ! The help system uses the format: /MSG X2 HELP <Subject> ! For example: /msg X2 HELP UBM shows help with the UnBan-Me command. =-----------------------------------------= IRCOP - Commands restricted to IRC Operators. ! GENERAL - How to use X2. USER - Commands to add and remove ops, managers, and bans from --- 1,10 ---- ! Hello, $t IRC Operator! Please select the area you would like help with from the list below. ! The help system uses the format: /MSG $n HELP <Subject> ! For example: /msg $n HELP UBM shows help with the UnBan-Me command. =-----------------------------------------= IRCOP - Commands restricted to IRC Operators. ! GENERAL - How to use $n. USER - Commands to add and remove ops, managers, and bans from Index: userhelp.txt =================================================================== RCS file: /cvsroot/x2serv/x2/HELP/userhelp.txt,v retrieving revision 1.3 retrieving revision 1.4 diff -C2 -r1.3 -r1.4 *** userhelp.txt 2000/12/19 08:11:55 1.3 --- userhelp.txt 2001/03/02 12:22:25 1.4 *************** *** 1,9 **** ! Hi there! X2, the AfterNET IRC Channel Service bot here! Please select the area you would like help with from the list below. ! The help system uses the format: /MSG X2 HELP <subject> ! For example: /msg X2 HELP UBM shows help with the UnBan-Me command. You can view help on any command, or the sub-menus below: =-----------------------------------------= ! GENERAL - How to use X2. USER - Commands to add and remove ops, managers, and bans from --- 1,9 ---- ! Hi there! $n, the $t IRC Channel Service bot here! Please select the area you would like help with from the list below. ! The help system uses the format: /MSG $n HELP <subject> ! For example: /msg $n HELP UBM shows help with the UnBan-Me command. You can view help on any command, or the sub-menus below: =-----------------------------------------= ! GENERAL - How to use $t. USER - Commands to add and remove ops, managers, and bans from *************** *** 15,18 **** operations. FUN - Fun Stuff! ! WHATSNEW- New features of X2 5.1 =-----------------------------------------= --- 15,18 ---- operations. FUN - Fun Stuff! ! WHATSNEW- New features of $n =-----------------------------------------= --- tolower DELETED --- |
From: Alex S. <ru...@us...> - 2001-03-02 09:50:57
|
Update of /cvsroot/x2serv/x2/source In directory usw-pr-cvs1:/tmp/cvs-serv12265 Modified Files: config.h set.c Log Message: isblank() is not portable. changed to isspace() Index: config.h =================================================================== RCS file: /cvsroot/x2serv/x2/source/config.h,v retrieving revision 1.54 retrieving revision 1.55 diff -C2 -r1.54 -r1.55 *** config.h 2001/02/13 13:22:48 1.54 --- config.h 2001/03/02 09:52:21 1.55 *************** *** 15,18 **** --- 15,19 ---- #include <string.h> #include <ctype.h> + #include <time.h> /* If your system doesnt have this, try commenting it out. */ Index: set.c =================================================================== RCS file: /cvsroot/x2serv/x2/source/set.c,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -r1.1 -r1.2 *** set.c 2001/01/23 14:16:27 1.1 --- set.c 2001/03/02 09:52:21 1.2 *************** *** 2,5 **** --- 2,6 ---- #include "commands.h" #include "set.h" + #include "ctype.h" set_list set_commands[NUMOFCHANSETTINGS+1] = *************** *** 331,335 **** for(n=strlen(param)-1;n>=0;n--) { ! if(isblank(param[n])) param[n] = '\0'; else --- 332,336 ---- for(n=strlen(param)-1;n>=0;n--) { ! if(isspace(param[n])) param[n] = '\0'; else |
From: Richard P. <lys...@us...> - 2001-03-01 10:55:45
|
Update of /cvsroot/x2serv/x2/source In directory usw-pr-cvs1:/tmp/cvs-serv9192 Modified Files: commands.c Log Message: Fixed a bug so that a lamer can't be added multiple times Index: commands.c =================================================================== RCS file: /cvsroot/x2serv/x2/source/commands.c,v retrieving revision 1.133 retrieving revision 1.134 diff -C2 -r1.133 -r1.134 *** commands.c 2001/02/28 08:35:38 1.133 --- commands.c 2001/03/01 10:57:07 1.134 *************** *** 3795,3799 **** } } ! if((lptr = GetLamer(cptr, nuh))) { send_to_user(uptr, "There is already a lamer with the given hostmask on the list."); --- 3795,3799 ---- } } ! if((lptr = GetLamer(cptr, Address))) { send_to_user(uptr, "There is already a lamer with the given hostmask on the list."); |
From: Richard P. <lys...@us...> - 2001-02-28 10:10:10
|
Update of /cvsroot/x2serv/x2/source In directory usw-pr-cvs1:/tmp/cvs-serv26037 Modified Files: parse.c server.c server.h Log Message: x2 checks if connecting clients are on the gline list and resends the gline if they are Index: parse.c =================================================================== RCS file: /cvsroot/x2serv/x2/source/parse.c,v retrieving revision 1.57 retrieving revision 1.58 diff -C2 -r1.57 -r1.58 *** parse.c 2001/02/15 02:36:43 1.57 --- parse.c 2001/02/28 10:11:29 1.58 *************** *** 372,376 **** { char* dq = unsigned32ToDotQuad(IP); ! if(!SuperGlineCheck(UserPtr, dq)) BeginGateScan(UserPtr, dq); } --- 372,376 ---- { char* dq = unsigned32ToDotQuad(IP); ! if(!GlineCheck(UserPtr, dq) && !SuperGlineCheck(UserPtr, dq)) BeginGateScan(UserPtr, dq); } *************** *** 535,544 **** int m_gline(M_PARAMS) { ! char* Arg[7]; Arg[2] = (char *) strtok(rest, " "); /* Target (*) */ Arg[3] = (char *) strtok(NULL, " "); /* +/-*@* */ Arg[4] = (char *) strtok(NULL, " "); /* Time */ ! Arg[5] = (char *) strtok(NULL, " "); /* : */ ! Arg[6] = (char *) strtok(NULL, "\0"); /* Reason */ if (Arg[3][0] == '+') { --- 535,543 ---- int m_gline(M_PARAMS) { ! char* Arg[6]; Arg[2] = (char *) strtok(rest, " "); /* Target (*) */ Arg[3] = (char *) strtok(NULL, " "); /* +/-*@* */ Arg[4] = (char *) strtok(NULL, " "); /* Time */ ! Arg[5] = (char *) strtok(NULL, "\0"); /* :<nick> Reason */ if (Arg[3][0] == '+') { *************** *** 546,550 **** if (!Arg[4]) return (0); /* Invalid no time.. */ ! ProcessAddGline(&Arg[3][1], atoi(Arg[4]), Arg[6]); if(time(NULL) > gwritets + 60) { --- 545,549 ---- if (!Arg[4]) return (0); /* Invalid no time.. */ ! ProcessAddGline(&Arg[3][1], atoi(Arg[4]), Arg[5] + 1); if(time(NULL) > gwritets + 60) { Index: server.c =================================================================== RCS file: /cvsroot/x2serv/x2/source/server.c,v retrieving revision 1.13 retrieving revision 1.14 diff -C2 -r1.13 -r1.14 *** server.c 2001/02/15 02:43:16 1.13 --- server.c 2001/02/28 10:11:29 1.14 *************** *** 70,73 **** --- 70,95 ---- } + int GlineCheck(UserListType UserPtr, char *IP) + { + char uhr[MAXLEN]; + GlineListType *gptr; + + if(UserPtr == NULL) + return(FALSE); + sprintf(uhr, "%s@%s", UserPtr->UserID, UserPtr->Address); + + gptr = Glines; + while(gptr) + { + if(!matches(gptr->address, uhr) && gptr->time > NetTime()) + { + send_gline(gptr->address, gptr->time - NetTime(), "%s", gptr->reason); + return(TRUE); + } + gptr = gptr->Next; + } + return(FALSE); + } + int SuperGlineCheck(UserListType UserPtr, char *IP) { *************** *** 82,87 **** gptr = SuperGlines; - if(!gptr) - return(FALSE); while(gptr) { --- 104,107 ---- Index: server.h =================================================================== RCS file: /cvsroot/x2serv/x2/source/server.h,v retrieving revision 1.7 retrieving revision 1.8 diff -C2 -r1.7 -r1.8 *** server.h 2001/01/02 10:11:33 1.7 --- server.h 2001/02/28 10:11:29 1.8 *************** *** 1,2 **** --- 1,3 ---- + int GlineCheck(UserListType UserPtr, char *IP); int SuperGlineCheck(UserListType UserPtr, char *IP); GlineListType *GetGline(char *Address); |
From: Richard P. <lys...@us...> - 2001-02-28 08:34:20
|
Update of /cvsroot/x2serv/x2/source In directory usw-pr-cvs1:/tmp/cvs-serv10334 Modified Files: chan.c commands.c Log Message: Fixed bug in expirechans and unvisited processing unreged chans older than 30 days Index: chan.c =================================================================== RCS file: /cvsroot/x2serv/x2/source/chan.c,v retrieving revision 1.71 retrieving revision 1.72 diff -C2 -r1.71 -r1.72 *** chan.c 2001/02/15 15:39:19 1.71 --- chan.c 2001/02/28 08:35:38 1.72 *************** *** 1874,1878 **** { NextChanPtr = TempChanPtr->Next; ! if( !(TempChanPtr->settings[NODELETE]) && (TempChanPtr->LastAccess > 0)) /* If its not marked nodelete */ { if ((time(NULL) - TempChanPtr->LastAccess) > 86400 * CHANEXPIREDAYS) /* older than CHANEXPIREDAYS days */ --- 1874,1878 ---- { NextChanPtr = TempChanPtr->Next; ! if((TempChanPtr->Regged) && !(TempChanPtr->settings[NODELETE]) && (TempChanPtr->LastAccess > 0)) /* If its not marked nodelete */ { if ((time(NULL) - TempChanPtr->LastAccess) > 86400 * CHANEXPIREDAYS) /* older than CHANEXPIREDAYS days */ Index: commands.c =================================================================== RCS file: /cvsroot/x2serv/x2/source/commands.c,v retrieving revision 1.132 retrieving revision 1.133 diff -C2 -r1.132 -r1.133 *** commands.c 2001/02/18 07:42:46 1.132 --- commands.c 2001/02/28 08:35:38 1.133 *************** *** 2198,2201 **** --- 2198,2206 ---- while (ChanPtr) { + if (!ChanPtr->Regged) + { + ChanPtr = ChanPtr->Next; + break; + } if (ChanPtr->LastAccess == 0) { |
From: Alex S. <ru...@us...> - 2001-02-18 07:41:57
|
Update of /cvsroot/x2serv/x2/source In directory usw-pr-cvs1:/tmp/cvs-serv2673 Modified Files: commands.c Log Message: fixed typeo in addxxx Index: commands.c =================================================================== RCS file: /cvsroot/x2serv/x2/source/commands.c,v retrieving revision 1.131 retrieving revision 1.132 diff -C2 -r1.131 -r1.132 *** commands.c 2001/02/05 10:55:35 1.131 --- commands.c 2001/02/18 07:42:46 1.132 *************** *** 2481,2485 **** if(!isjoined(cptr, target)) { ! send_to_user(uptr, "%s is not in %s. They must join first.", uptr->Nick, cptr->Name); return(FALSE); } --- 2481,2485 ---- if(!isjoined(cptr, target)) { ! send_to_user(uptr, "%s is not in %s. They must join first.", nick, cptr->Name); return(FALSE); } |
From: Richard P. <lys...@us...> - 2001-02-15 15:38:38
|
Update of /cvsroot/x2serv/x2/source In directory usw-pr-cvs1:/tmp/cvs-serv2804 Modified Files: chan.c Log Message: Copied a lot from unreg to make x2 unregging expired channels Index: chan.c =================================================================== RCS file: /cvsroot/x2serv/x2/source/chan.c,v retrieving revision 1.70 retrieving revision 1.71 diff -C2 -r1.70 -r1.71 *** chan.c 2001/02/13 11:47:53 1.70 --- chan.c 2001/02/15 15:39:19 1.71 *************** *** 1752,1755 **** --- 1752,1861 ---- } + void UnregExpired(ChannelListType cptr) + { + FILE *ChanFile; + FILE *NewChanFile; + char *UpCaseChan; + char str[LINEBUFFSIZE]; + char ChanName[LINEBUFFSIZE]; + int s, line = 0; + HandleListType tmphptr, nexthptr; + LamerListType lptr, nextlptr; + + ChanFile = fopen(CHANFILENAME, "r"); + if (ChanFile == NULL) + { + Debug(DBGSEVERE, "\002Error:\002 Op file doesn't not exist!"); + return; + } + NewChanFile = fopen("tmp/.tmpchanfile.dat", "w"); + if(!NewChanFile) + { + Debug(DBGSEVERE, "Error opening temp file in unreg()!!"); + return; + } + while ((s = fscanf(ChanFile, "%s\n", ChanName)) != EOF) + { + line++; + if (s != 1) + { + Debug(DBGERROR, "Error with param count in chan.dat! s=%d line=%d", s, line); + fclose(ChanFile); + fclose(NewChanFile); + return; + } + if (strcasecmp(ChanName, cptr->Name)) + fprintf(NewChanFile, "%s\n", ChanName); + } + if(ferror(NewChanFile)) + { + Debug(DBGSEVERE, "\002Error:\002 Failure writing .tmpchanfile.dat (out of disk space?)! Unregistration NOT saved.", cptr->Name); + fclose(NewChanFile); + sleep(4); + exit(2); + } + fclose(ChanFile); + fclose(NewChanFile); + sprintf(str, "./%s", CHANFILENAME); + unlink(str); + rename("tmp/.tmpchanfile.dat", str); + sprintf(str, "./CHANS/%s", UpCaseChan = UpCase(&cptr->Name[1])); + unlink(str); + free(UpCaseChan); + send_part(cptr, "Channel expired"); + /** If we were the only thing in the channel, delete it. **/ + if(cptr->NumOfNicks == 0) + DelChan(cptr->Name); + else + { /* Convert it back to an unreg'd channel.. */ + + /* ModeString */ + if(cptr->Key) + { + free(cptr->Key); + cptr->Key = NULL; + } + if(cptr->Limit) + { + free(cptr->Limit); + cptr->Limit = NULL; + } + /* Topic */ + free(cptr->Topic); + cptr->Topic = NULL; + /* Email */ + free(cptr->Email); + cptr->Email = NULL; + /* Desc */ + free(cptr->Description); + cptr->Description = NULL; + /* URL... */ + free(cptr->URL); + cptr->URL = NULL; + /* ReggedBy... */ + free(cptr->Reggedby); + cptr->Reggedby = NULL; + + /* Delete userlist, and lamerlist.. */ + for(tmphptr = cptr->Handles;tmphptr;tmphptr = nexthptr) + { + nexthptr = tmphptr->Next; + DelHandle(cptr, tmphptr); + } + cptr->Handles = NULL; + for(lptr = cptr->Lamers;lptr;lptr = nextlptr) + { + nextlptr = lptr->Next; + free(lptr); + } + cptr->Lamers = NULL; + + /* Regged...*/ + cptr->Regged = FALSE; + /* The channel is now Unregistered. */ + } + return; + } + void ExpireChannels(UserListType uptr) { *************** *** 1761,1770 **** char tmp[LINEBUFFSIZE]; - /* TODO : This needs to check if someones in the chan and just convert it to - * an unregistered chan in memory if there are.. otherwise go ahead and remove it from memory. - * when its done, remove this return.. - */ - return; - for (i = 0; i < CHANSEGSIZE; i++) { --- 1867,1870 ---- *************** *** 1795,1801 **** if(uptr) send_to_user(uptr, "Removing %s", TempChanPtr->Name); ! send_part(TempChanPtr, "Channel expired"); ! SaveDel(TempChanPtr); ! DelChan(TempChanPtr->Name); } } --- 1895,1899 ---- if(uptr) send_to_user(uptr, "Removing %s", TempChanPtr->Name); ! UnregExpired(TempChanPtr); } } |
From: Alex S. <ru...@us...> - 2001-02-15 02:42:36
|
Update of /cvsroot/x2serv/x2/source In directory usw-pr-cvs1:/tmp/cvs-serv6465 Modified Files: server.c Log Message: one little patch to my patch (: (ignores glines expiring in less then 60 seconds from now) Index: server.c =================================================================== RCS file: /cvsroot/x2serv/x2/source/server.c,v retrieving revision 1.12 retrieving revision 1.13 diff -C2 -r1.12 -r1.13 *** server.c 2001/02/15 02:36:43 1.12 --- server.c 2001/02/15 02:43:16 1.13 *************** *** 142,145 **** --- 142,147 ---- strcpy(Addr, ""); strncat(Addr, Address, MAXLEN-1); + if(gtime < 60) + return; /* no sence in even saving it for less then 1 minute. */ if((gptr = GetGline(Addr))) { |
From: Alex S. <ru...@us...> - 2001-02-15 02:36:03
|
Update of /cvsroot/x2serv/x2/source In directory usw-pr-cvs1:/tmp/cvs-serv5924 Modified Files: parse.c server.c Log Message: Fixed a bug where x2 was not getting the proper gline time for glines other servers or services set. Index: parse.c =================================================================== RCS file: /cvsroot/x2serv/x2/source/parse.c,v retrieving revision 1.56 retrieving revision 1.57 diff -C2 -r1.56 -r1.57 *** parse.c 2001/01/22 19:03:53 1.56 --- parse.c 2001/02/15 02:36:43 1.57 *************** *** 539,543 **** Arg[3] = (char *) strtok(NULL, " "); /* +/-*@* */ Arg[4] = (char *) strtok(NULL, " "); /* Time */ ! Arg[5] = (char *) strtok(NULL, " "); /* time? */ Arg[6] = (char *) strtok(NULL, "\0"); /* Reason */ if (Arg[3][0] == '+') --- 539,543 ---- Arg[3] = (char *) strtok(NULL, " "); /* +/-*@* */ Arg[4] = (char *) strtok(NULL, " "); /* Time */ ! Arg[5] = (char *) strtok(NULL, " "); /* : */ Arg[6] = (char *) strtok(NULL, "\0"); /* Reason */ if (Arg[3][0] == '+') *************** *** 546,550 **** if (!Arg[4]) return (0); /* Invalid no time.. */ ! ProcessAddGline(&Arg[3][1], atoi(Arg[5]), Arg[6]); if(time(NULL) > gwritets + 60) { --- 546,550 ---- if (!Arg[4]) return (0); /* Invalid no time.. */ ! ProcessAddGline(&Arg[3][1], atoi(Arg[4]), Arg[6]); if(time(NULL) > gwritets + 60) { Index: server.c =================================================================== RCS file: /cvsroot/x2serv/x2/source/server.c,v retrieving revision 1.11 retrieving revision 1.12 diff -C2 -r1.11 -r1.12 *** server.c 2001/01/22 07:24:33 1.11 --- server.c 2001/02/15 02:36:43 1.12 *************** *** 150,155 **** if((gptr = malloc(sizeof(GlineListType)))) { ! safecopy(gptr->address, Addr, MAXLEN); ! safecopy(gptr->reason, Reason, MAXLEN); gptr->time = (NetTime() + gtime); gptr->Next = Glines; --- 150,155 ---- if((gptr = malloc(sizeof(GlineListType)))) { ! safecopy(gptr->address, Addr, MAXLEN-1); ! safecopy(gptr->reason, Reason, MAXLEN-1); gptr->time = (NetTime() + gtime); gptr->Next = Glines; |
From: Alex S. <ru...@us...> - 2001-02-13 13:22:12
|
Update of /cvsroot/x2serv/x2/source In directory usw-pr-cvs1:/tmp/cvs-serv3543/source Modified Files: accounting.c config.h Log Message: fixed a very large loop runtime condition in .LAST, and formatted the display with header/footer. Index: accounting.c =================================================================== RCS file: /cvsroot/x2serv/x2/source/accounting.c,v retrieving revision 1.7 retrieving revision 1.8 diff -C2 -r1.7 -r1.8 *** accounting.c 2001/02/13 11:47:53 1.7 --- accounting.c 2001/02/13 13:22:47 1.8 *************** *** 4,8 **** /* we read this many bytes at a time. */ ! #define Block 2048 int parselog(char *LogLine, UserListType uptr, ChannelListType cptr, char *chan, char *nuh, char *command, char *rest, time_t start, time_t end) --- 4,8 ---- /* we read this many bytes at a time. */ ! #define Block 4096 int parselog(char *LogLine, UserListType uptr, ChannelListType cptr, char *chan, char *nuh, char *command, char *rest, time_t start, time_t end) *************** *** 18,22 **** char *gmode; // time_t mystart, myend; ! Debug(DBGINFO, "Examining: %s", LogLine); datestr = (char *) mysep(&LogLine, "]"); --- 18,22 ---- char *gmode; // time_t mystart, myend; ! // Debug(DBGINFO, "Examining: %s", LogLine); datestr = (char *) mysep(&LogLine, "]"); *************** *** 29,33 **** if(!mycommand) { ! Debug(DBGINFO, "Invalid line in log input."); return(0); } --- 29,33 ---- if(!mycommand) { ! //Debug(DBGINFO, "Invalid line in log input."); return(0); } *************** *** 45,48 **** --- 45,49 ---- if(!chan) chan = ""; + if(!nuh) nuh = ""; *************** *** 65,69 **** FILE *TheFile; int i, s, Last = FALSE, filelen, first; ! int line = 0; int FilePosition; --- 66,70 ---- FILE *TheFile; int i, s, Last = FALSE, filelen, first; ! int line = 0, searchline = 0; int FilePosition; *************** *** 79,82 **** --- 80,84 ---- filelen = ftell(TheFile); /* Find out the length. */ FilePosition = 0; /* (from the bottom) */ + send_to_user(uptr, "=--- Command log ---="); while(Last == FALSE) { *************** *** 117,128 **** --- 119,141 ---- // Debug(DBGINFO, "LOGLINE: %s", LogLine); // send_to_user(uptr, "LOGLINE: %s", LogLine); + searchline++; if(parselog(LogLine, uptr, cptr, chan, nuh, command, rest, start, end)) line++; if(line >= maxlines) + { + send_to_user(uptr, "=--- Stopping at %d lines ---=", maxlines); return(TRUE); + } + if( searchline >= MAXLOGSEARCHLENGTH ) + { + send_to_user(uptr, "=--- Data age limit reached ---="); + return(TRUE); + } + } } strcpy(PrevBuff, Buff); /* Save the remaining bit. */ } + send_to_user(uptr, "=--- End of log data ---="); return(TRUE); } Index: config.h =================================================================== RCS file: /cvsroot/x2serv/x2/source/config.h,v retrieving revision 1.53 retrieving revision 1.54 diff -C2 -r1.53 -r1.54 *** config.h 2001/02/13 11:59:42 1.53 --- config.h 2001/02/13 13:22:48 1.54 *************** *** 143,146 **** --- 143,154 ---- #define MAXLOGINLEN 10 + /* This is the max # of lines of accounting.log + * that will be read while trying to display + * the last n lines of a spesific channels info. + * the bigger it is, the more cpu can be wasted + * by a chan owner. + */ + #define MAXLOGSEARCHLENGTH 10000 + /* These are for userlist entries. */ #define MAXHANDLELEN 20 |
From: Alex S. <ru...@us...> - 2001-02-13 11:59:07
|
Update of /cvsroot/x2serv/x2/source In directory usw-pr-cvs1:/tmp/cvs-serv24091 Modified Files: config.h Log Message: didnt mean to change this in the last update.. Index: config.h =================================================================== RCS file: /cvsroot/x2serv/x2/source/config.h,v retrieving revision 1.52 retrieving revision 1.53 diff -C2 -r1.52 -r1.53 *** config.h 2001/02/13 11:47:53 1.52 --- config.h 2001/02/13 11:59:42 1.53 *************** *** 45,49 **** /* This is used to refer to your network in various places. It should be one word, eg "AfterNET" */ ! #define NETWORK "AfterNET" #define OPERHELPFILE "HELP/operhelp.txt" --- 45,49 ---- /* This is used to refer to your network in various places. It should be one word, eg "AfterNET" */ ! #define NETWORK "Loxxin" #define OPERHELPFILE "HELP/operhelp.txt" |
From: Alex S. <ru...@us...> - 2001-02-13 11:47:20
|
Update of /cvsroot/x2serv/x2/source In directory usw-pr-cvs1:/tmp/cvs-serv22299 Modified Files: accounting.c chan.c config.h gate.c misc.c Log Message: Modified x2 not to log details about the PASS command. Index: accounting.c =================================================================== RCS file: /cvsroot/x2serv/x2/source/accounting.c,v retrieving revision 1.6 retrieving revision 1.7 diff -C2 -r1.6 -r1.7 *** accounting.c 2001/02/11 03:28:45 1.6 --- accounting.c 2001/02/13 11:47:53 1.7 *************** *** 32,41 **** return(0); } ! if(!strcasecmp(mycommand, "LOGIN") || !strcasecmp(mycommand, "PASS") || !strcasecmp(mycommand, "RESETPASS") || !strcasecmp(mycommand, "SETPASS")) { myrest = "*******"; } ! if(cptr) { --- 32,41 ---- return(0); } ! /* if(!strcasecmp(mycommand, "LOGIN") || !strcasecmp(mycommand, "PASS") || !strcasecmp(mycommand, "RESETPASS") || !strcasecmp(mycommand, "SETPASS")) { myrest = "*******"; } ! */ if(cptr) { Index: chan.c =================================================================== RCS file: /cvsroot/x2serv/x2/source/chan.c,v retrieving revision 1.69 retrieving revision 1.70 diff -C2 -r1.69 -r1.70 *** chan.c 2001/01/24 00:54:17 1.69 --- chan.c 2001/02/13 11:47:53 1.70 *************** *** 1665,1669 **** time_t currtime; ! Debug(DBGNOTICE, "*** Checking for bans in %s older than %lu\n", cptr->Name, period); Dummy = *b_list; currtime = time(NULL); --- 1665,1669 ---- time_t currtime; ! /*Debug(DBGNOTICE, "*** Checking for bans in %s older than %lu\n", cptr->Name, period); */ Dummy = *b_list; currtime = time(NULL); Index: config.h =================================================================== RCS file: /cvsroot/x2serv/x2/source/config.h,v retrieving revision 1.51 retrieving revision 1.52 diff -C2 -r1.51 -r1.52 *** config.h 2001/01/24 00:54:17 1.51 --- config.h 2001/02/13 11:47:53 1.52 *************** *** 45,49 **** /* This is used to refer to your network in various places. It should be one word, eg "AfterNET" */ ! #define NETWORK "Loxxin" #define OPERHELPFILE "HELP/operhelp.txt" --- 45,49 ---- /* This is used to refer to your network in various places. It should be one word, eg "AfterNET" */ ! #define NETWORK "AfterNET" #define OPERHELPFILE "HELP/operhelp.txt" Index: gate.c =================================================================== RCS file: /cvsroot/x2serv/x2/source/gate.c,v retrieving revision 1.16 retrieving revision 1.17 diff -C2 -r1.16 -r1.17 *** gate.c 2000/12/19 08:11:56 1.16 --- gate.c 2001/02/13 11:47:53 1.17 *************** *** 82,86 **** if(connect(GatePtr->sock, (struct sockaddr *) &GateAddr, sizeof(GateAddr)) >= 0) { ! Debug(DBGINFO, "Called connect() for gate.."); GatePtr->state = WAIT_TO_SEND; } --- 82,86 ---- if(connect(GatePtr->sock, (struct sockaddr *) &GateAddr, sizeof(GateAddr)) >= 0) { ! /*Debug(DBGINFO, "Called connect() for gate.."); */ GatePtr->state = WAIT_TO_SEND; } *************** *** 91,99 **** /* connect is non blocking, use select to finish..*/ GatePtr->state = WAIT_TO_CONNECT; ! Debug(DBGINFO, "Non blocking connect to %s, waiting to finish..", GatePtr->iphost); } else { ! Debug(DBGNOTICE, "Connect failed to %s. :%s:", GatePtr->iphost, strerror(errno)); GatePtr->delete = TRUE; close(GatePtr->sock); --- 91,99 ---- /* connect is non blocking, use select to finish..*/ GatePtr->state = WAIT_TO_CONNECT; ! /* Debug(DBGINFO, "Non blocking connect to %s, waiting to finish..", GatePtr->iphost); */ } else { ! /* Debug(DBGNOTICE, "Connect failed to %s. :%s:", GatePtr->iphost, strerror(errno)); */ GatePtr->delete = TRUE; close(GatePtr->sock); *************** *** 108,112 **** if(GatePtr->delete) { ! Debug(DBGNOTICE, "Removing %s from gate list.", GatePtr->iphost); if(GatePtr == GatePtrs) GatePtrs = GatePtr->next; --- 108,112 ---- if(GatePtr->delete) { ! /* Debug(DBGNOTICE, "Removing %s from gate list.", GatePtr->iphost); */ if(GatePtr == GatePtrs) GatePtrs = GatePtr->next; *************** *** 148,158 **** if(opt_val == 0) { ! Debug(DBGINFO, "NONBLOCK connect to %s succeded.", GatePtr->iphost); GatePtr->state = WAIT_TO_SEND; } else { ! Debug(DBGINFO, "NONBLOCK connect to %s failed. opt_val is: %s", ! GatePtr->iphost, strerror(opt_val)); GatePtr->delete = TRUE; close(GatePtr->sock); --- 148,158 ---- if(opt_val == 0) { ! /* Debug(DBGINFO, "NONBLOCK connect to %s succeded.", GatePtr->iphost); */ GatePtr->state = WAIT_TO_SEND; } else { ! /*Debug(DBGINFO, "NONBLOCK connect to %s failed. opt_val is: %s", ! GatePtr->iphost, strerror(opt_val)); */ GatePtr->delete = TRUE; close(GatePtr->sock); *************** *** 162,166 **** else { ! Debug(DBGINFO, "getsockopt() failed.. :%s:", strerror(errno)); GatePtr->delete = TRUE; close(GatePtr->sock); --- 162,166 ---- else { ! /* Debug(DBGINFO, "getsockopt() failed.. :%s:", strerror(errno)); */ GatePtr->delete = TRUE; close(GatePtr->sock); *************** *** 174,178 **** if(GatePtr->delete) { ! Debug(DBGNOTICE, "Removing %s from gate list.", GatePtr->iphost); if(GatePtr == GatePtrs) GatePtrs = GatePtr->next; --- 174,178 ---- if(GatePtr->delete) { ! /* Debug(DBGNOTICE, "Removing %s from gate list.", GatePtr->iphost); */ if(GatePtr == GatePtrs) GatePtrs = GatePtr->next; *************** *** 234,238 **** if(FD_ISSET(GatePtr->sock, &fdset)) { ! Debug(DBGINFO, "Sending magic string to %s", GatePtr->iphost); send(GatePtr->sock, keystring, 17, 0); GatePtr->timestamp = time(NULL); --- 234,238 ---- if(FD_ISSET(GatePtr->sock, &fdset)) { ! /* Debug(DBGINFO, "Sending magic string to %s", GatePtr->iphost); */ send(GatePtr->sock, keystring, 17, 0); GatePtr->timestamp = time(NULL); *************** *** 256,260 **** if(GatePtr->delete) { ! Debug(DBGNOTICE, "Removing %s from gate list.", GatePtr->iphost); if(GatePtr == GatePtrs) GatePtrs = GatePtr->next; --- 256,260 ---- if(GatePtr->delete) { ! /*Debug(DBGNOTICE, "Removing %s from gate list.", GatePtr->iphost); */ if(GatePtr == GatePtrs) GatePtrs = GatePtr->next; *************** *** 350,354 **** else { ! Debug(DBGNOTICE, "Read error to socket for %s. 0 bytes read.", GatePtr->iphost); close(GatePtr->sock); NumOfGateSocks--; --- 350,354 ---- else { ! /* Debug(DBGNOTICE, "Read error to socket for %s. 0 bytes read.", GatePtr->iphost); */ close(GatePtr->sock); NumOfGateSocks--; *************** *** 376,380 **** if(GatePtr->delete) { ! Debug(DBGNOTICE, "Removing %s from gate list.", GatePtr->iphost); if(GatePtr == GatePtrs) GatePtrs = GatePtr->next; --- 376,380 ---- if(GatePtr->delete) { ! /*Debug(DBGNOTICE, "Removing %s from gate list.", GatePtr->iphost); */ if(GatePtr == GatePtrs) GatePtrs = GatePtr->next; *************** *** 398,402 **** if(GatePtr->state == WAIT_TOO_MANY) { ! Debug(DBGINFO, "Starting delayed gatecheck of %s", GatePtr->iphost); GateConnect(GatePtr); } --- 398,402 ---- if(GatePtr->state == WAIT_TOO_MANY) { ! /* Debug(DBGINFO, "Starting delayed gatecheck of %s", GatePtr->iphost); */ GateConnect(GatePtr); } Index: misc.c =================================================================== RCS file: /cvsroot/x2serv/x2/source/misc.c,v retrieving revision 1.39 retrieving revision 1.40 diff -C2 -r1.39 -r1.40 *** misc.c 2001/02/05 10:55:36 1.39 --- misc.c 2001/02/13 11:47:53 1.40 *************** *** 294,297 **** --- 294,298 ---- if( ! (strcasecmp(command, "LOGIN") && strcasecmp(command, "RESETPASS") && + strcasecmp(command, "PASS") && strcasecmp(command, "MLOGIN") ) ) { |
From: Alex S. <ru...@af...> - 2001-02-13 11:47:10
|
the accounting log reading functions dont need to block this out, because there should never be a password stored in the accounting log to begin with. there is where the patch is needed. -Rubin Tony Robbins wrote: > Update of /cvsroot/x2serv/x2/source > In directory usw-pr-cvs1:/tmp/cvs-serv12163 > > Modified Files: > accounting.c > Log Message: > > Do not log password changes! Or at least, block it out! > > > > Index: accounting.c > =================================================================== > RCS file: /cvsroot/x2serv/x2/source/accounting.c,v > retrieving revision 1.5 > retrieving revision 1.6 > diff -C2 -r1.5 -r1.6 > *** accounting.c 2001/02/05 10:55:35 1.5 > --- accounting.c 2001/02/11 03:28:45 1.6 > *************** > *** 32,41 **** > return(0); > } > ! /* No longer necessary since we do this in the log itself now > ! if(!strcasecmp(mycommand, "LOGIN") || !strcasecmp(mycommand, "PASS") || !strcasecmp(mycommand, "RESETPASS")) > { > myrest = "*******"; > } > ! */ > if(cptr) > { > --- 32,41 ---- > return(0); > } > ! > ! if(!strcasecmp(mycommand, "LOGIN") || !strcasecmp(mycommand, "PASS") || !strcasecmp(mycommand, "RESETPASS") || !strcasecmp(mycommand, "SETPASS")) > { > myrest = "*******"; > } > ! > if(cptr) > { > > > _______________________________________________ > X2serv-cvs mailing list > X2s...@li... > http://lists.sourceforge.net/lists/listinfo/x2serv-cvs |
From: Tony R. <ku...@us...> - 2001-02-11 03:28:17
|
Update of /cvsroot/x2serv/x2/source In directory usw-pr-cvs1:/tmp/cvs-serv12163 Modified Files: accounting.c Log Message: Do not log password changes! Or at least, block it out! Index: accounting.c =================================================================== RCS file: /cvsroot/x2serv/x2/source/accounting.c,v retrieving revision 1.5 retrieving revision 1.6 diff -C2 -r1.5 -r1.6 *** accounting.c 2001/02/05 10:55:35 1.5 --- accounting.c 2001/02/11 03:28:45 1.6 *************** *** 32,41 **** return(0); } ! /* No longer necessary since we do this in the log itself now ! if(!strcasecmp(mycommand, "LOGIN") || !strcasecmp(mycommand, "PASS") || !strcasecmp(mycommand, "RESETPASS")) { myrest = "*******"; } ! */ if(cptr) { --- 32,41 ---- return(0); } ! ! if(!strcasecmp(mycommand, "LOGIN") || !strcasecmp(mycommand, "PASS") || !strcasecmp(mycommand, "RESETPASS") || !strcasecmp(mycommand, "SETPASS")) { myrest = "*******"; } ! if(cptr) { |
From: Alex S. <ru...@us...> - 2001-02-05 10:55:24
|
Update of /cvsroot/x2serv/x2/source In directory usw-pr-cvs1:/tmp/cvs-serv3334/source Modified Files: accounting.c commands.c misc.c Log Message: improved teh LAST command to take # of lines as argument Index: accounting.c =================================================================== RCS file: /cvsroot/x2serv/x2/source/accounting.c,v retrieving revision 1.4 retrieving revision 1.5 diff -C2 -r1.4 -r1.5 *** accounting.c 2000/12/19 08:11:56 1.4 --- accounting.c 2001/02/05 10:55:35 1.5 *************** *** 18,21 **** --- 18,22 ---- char *gmode; // time_t mystart, myend; + Debug(DBGINFO, "Examining: %s", LogLine); datestr = (char *) mysep(&LogLine, "]"); *************** *** 31,39 **** return(0); } if(!strcasecmp(mycommand, "LOGIN") || !strcasecmp(mycommand, "PASS") || !strcasecmp(mycommand, "RESETPASS")) { - /* Dont show the password */ myrest = "*******"; } if(cptr) { --- 32,41 ---- return(0); } + /* No longer necessary since we do this in the log itself now if(!strcasecmp(mycommand, "LOGIN") || !strcasecmp(mycommand, "PASS") || !strcasecmp(mycommand, "RESETPASS")) { myrest = "*******"; } + */ if(cptr) { *************** *** 117,121 **** if(parselog(LogLine, uptr, cptr, chan, nuh, command, rest, start, end)) line++; ! if(line > maxlines) return(TRUE); } --- 119,123 ---- if(parselog(LogLine, uptr, cptr, chan, nuh, command, rest, start, end)) line++; ! if(line >= maxlines) return(TRUE); } Index: commands.c =================================================================== RCS file: /cvsroot/x2serv/x2/source/commands.c,v retrieving revision 1.130 retrieving revision 1.131 diff -C2 -r1.130 -r1.131 *** commands.c 2001/02/03 07:51:22 1.130 --- commands.c 2001/02/05 10:55:35 1.131 *************** *** 2365,2369 **** int c_last(C_PARAM) { ! ShowLog(uptr, cptr, "*", "*", "*", "*", 0, time(NULL), 10); return(TRUE); } --- 2365,2388 ---- int c_last(C_PARAM) { ! char *arg; ! int numoflines; ! ! arg = (char *) strtok(rest, " "); ! ! ! if(!arg) ! { ! send_to_user(uptr, "USAGE: last <n>"); ! send_to_user(uptr, "where <n> is the number of lines you wish to see."); ! return(FALSE); ! } ! numoflines = atoi(rest); ! ! if(numoflines < 1 || numoflines > 200) ! { ! send_to_user(uptr, "Invalid argument. must be 1-200"); ! return(FALSE); ! } ! ShowLog(uptr, cptr, "*", "*", "*", "*", 0, time(NULL), numoflines); return(TRUE); } Index: misc.c =================================================================== RCS file: /cvsroot/x2serv/x2/source/misc.c,v retrieving revision 1.38 retrieving revision 1.39 diff -C2 -r1.38 -r1.39 *** misc.c 2001/01/24 00:54:17 1.38 --- misc.c 2001/02/05 10:55:36 1.39 *************** *** 306,310 **** else { ! sprintf(buff, "[%s] global %s!%s@%s %s %s", time2str(time(NULL)), uptr->Nick, uptr->UserID, uptr->Address, command, rest); --- 306,310 ---- else { ! sprintf(buff, "[%s] global %s!%s@%s - %s %s", time2str(time(NULL)), uptr->Nick, uptr->UserID, uptr->Address, command, rest); |
From: Alex S. <ru...@us...> - 2001-02-03 07:51:16
|
Update of /cvsroot/x2serv/x2/source In directory usw-pr-cvs1:/tmp/cvs-serv2919/source Modified Files: commands.c Log Message: added a -noowner tag to searchchan command, to help in finding channels without owner. Also fixed netstat to show proper registered vs total channel info. Index: commands.c =================================================================== RCS file: /cvsroot/x2serv/x2/source/commands.c,v retrieving revision 1.129 retrieving revision 1.130 diff -C2 -r1.129 -r1.130 *** commands.c 2001/01/24 12:07:49 1.129 --- commands.c 2001/02/03 07:51:22 1.130 *************** *** 1416,1420 **** } ! char* getscflags(char* rest, int* secret, int* nodelete, int* noinchan, int* suspended, int* total) { char* mark = rest; --- 1416,1420 ---- } ! char* getscflags(char* rest, int* secret, int* nodelete, int* noinchan, int* suspended, int* noowner, int* total) { char* mark = rest; *************** *** 1442,1445 **** --- 1442,1447 ---- else if(!strcmp(param, "--noinchan")) (*noinchan)++; + else if(!strcmp(param, "--noowner")) + (*noowner)++; else if(!strcmp(param, "-t")) (*total)++; *************** *** 1463,1466 **** --- 1465,1481 ---- } + int countowners(ChannelListType cptr) + { + int i = 0; + HandleListType hptr; + + for(hptr = cptr->Handles;hptr;hptr = hptr->Next) + { + if(hptr->Level == 'W') + i++; + } + return(i); + } + /* TODO : This is not finished.. */ int c_searchchan(C_PARAM) *************** *** 1468,1472 **** int i, count = 0; ChannelListType TempChanPtr; ! int secret = 0, nodelete = 0, noinchan = 0, suspended = 0, total = 0; char* topicsearch; char* chansearch; --- 1483,1487 ---- int i, count = 0; ChannelListType TempChanPtr; ! int secret = 0, nodelete = 0, noinchan = 0, suspended = 0, total = 0, noowner = 0; char* topicsearch; char* chansearch; *************** *** 1481,1489 **** send_to_user(uptr, " --noinchan : Show only channels X2 is not in (INCHAN == 0)."); send_to_user(uptr, " --suspended : Show only suspended channels."); send_to_user(uptr, " -t : Provide a total at the end"); send_to_user(uptr, "Options can be combined."); return(FALSE); } ! rest = getscflags(rest, &secret, &nodelete, &noinchan, &suspended, &total); // send_to_user(uptr, "secret=%d, nodelete=%d, noinchan=%d, suspended=%d, total=%d :%s", // secret, nodelete, noinchan, suspended, total, rest); --- 1496,1505 ---- send_to_user(uptr, " --noinchan : Show only channels X2 is not in (INCHAN == 0)."); send_to_user(uptr, " --suspended : Show only suspended channels."); + send_to_user(uptr, " --noowner : Show only chans with no owner."); send_to_user(uptr, " -t : Provide a total at the end"); send_to_user(uptr, "Options can be combined."); return(FALSE); } ! rest = getscflags(rest, &secret, &nodelete, &noinchan, &suspended, &noowner, &total); // send_to_user(uptr, "secret=%d, nodelete=%d, noinchan=%d, suspended=%d, total=%d :%s", // secret, nodelete, noinchan, suspended, total, rest); *************** *** 1515,1518 **** --- 1531,1536 ---- if(suspended && (TempChanPtr->Suspended == NULL)) continue; + if(noowner && (countowners(TempChanPtr) > 0)) + continue; if(((TempChanPtr->PlusModes & CMODEs) || (TempChanPtr->PlusModes & CMODEp))) { *************** *** 2812,2815 **** --- 2830,2851 ---- } + int countregchans() + { + int i,c=0; + ChannelListType cptr; + + for(i=0;i<CHANSEGSIZE;i++) + { + cptr = Channels->Table[i]; + while(cptr) + { + if(cptr->Regged) + c++; + cptr = cptr->Next; + } + } + return(c); + } + int c_netstat(C_PARAM) { *************** *** 2823,2829 **** send_to_user(uptr, " Number of Servers: %d", ServerCount); send_to_user(uptr, " Number of IRC Ops: %d", OperCount); send_to_user(uptr, " Avg Number of Opers per Server currently online: %1.1f", ave); send_to_user(uptr, " "); ! send_to_user(uptr, " There are %d registered channels.", ChannelCount); send_to_user(uptr, " Total number of Peons : %d ", PeonCount); send_to_user(uptr, " Total number of Ops : %d ", OpCount); --- 2859,2866 ---- send_to_user(uptr, " Number of Servers: %d", ServerCount); send_to_user(uptr, " Number of IRC Ops: %d", OperCount); + send_to_user(uptr, " There are %d channels.", ChannelCount); send_to_user(uptr, " Avg Number of Opers per Server currently online: %1.1f", ave); send_to_user(uptr, " "); ! send_to_user(uptr, " Total number of registered channels: %d", countregchans()); send_to_user(uptr, " Total number of Peons : %d ", PeonCount); send_to_user(uptr, " Total number of Ops : %d ", OpCount); |
From: Alex S. <ru...@us...> - 2001-02-03 07:51:15
|
Update of /cvsroot/x2serv/x2/HELP In directory usw-pr-cvs1:/tmp/cvs-serv2919/HELP Modified Files: SEARCHCHAN Log Message: added a -noowner tag to searchchan command, to help in finding channels without owner. Also fixed netstat to show proper registered vs total channel info. Index: SEARCHCHAN =================================================================== RCS file: /cvsroot/x2serv/x2/HELP/SEARCHCHAN,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -r1.1 -r1.2 *** SEARCHCHAN 2001/01/08 09:22:37 1.1 --- SEARCHCHAN 2001/02/03 07:51:22 1.2 *************** *** 9,12 **** --- 9,13 ---- --noinchan : Show only channels X2 is not in (INCHAN == 0). --suspended : Show only suspended channels. + --noowner : Show only ownerless channels. -t : Provide a total at the end. |
From: Richard P. <lys...@us...> - 2001-01-24 12:07:32
|
Update of /cvsroot/x2serv/x2/source In directory usw-pr-cvs1:/tmp/cvs-serv21844/source Modified Files: commands.c Log Message: topic in scriptreg is now set manually, so you don't need to be +h when using scriptreg Index: commands.c =================================================================== RCS file: /cvsroot/x2serv/x2/source/commands.c,v retrieving revision 1.128 retrieving revision 1.129 diff -C2 -r1.128 -r1.129 *** commands.c 2001/01/24 00:54:17 1.128 --- commands.c 2001/01/24 12:07:49 1.129 *************** *** 3478,3490 **** sprintf(buff, "TOPIC %s", Topic); rest = buff; ! if(c_set(C_PARAM_CALL)) ! { ! strcat(Str, " Topic: \002SUCCESS\002"); ! send_topic(cptr, Topic); ! } else ! { ! strcat(Str, " Topic: \026FAILED\026"); ! } } WriteChanOpFile(cptr); --- 3478,3495 ---- sprintf(buff, "TOPIC %s", Topic); rest = buff; ! ! free(cptr->Topic); ! if(strlen(Topic) > MAXTOPICLEN) ! Topic[MAXTOPICLEN] = '\0'; ! if((cptr->Topic = (char *) malloc(strlen(Topic) + 1))) ! { ! strcpy(cptr->Topic, Topic); ! send_to_user(uptr, "\002Default topic set to\002: %s", cptr->Topic); ! } else ! { ! send_to_user(uptr, "\002Error allocating memory for new topic!"); ! return(FALSE); ! } } WriteChanOpFile(cptr); |
From: Alex S. <ru...@us...> - 2001-01-24 00:54:00
|
Update of /cvsroot/x2serv/x2/source In directory usw-pr-cvs1:/tmp/cvs-serv8094/source Modified Files: chan.c commands.c config.h main.c misc.c route.c setup.h Log Message: sourceforge was down, so this is a bunch of changes piled together, including: Fix for routing.dat was leaving off the last server listed. Added a NETWORK define in the config.h file (which im going to move so we dont get tons of cvs updates when various ppl change it). Index: chan.c =================================================================== RCS file: /cvsroot/x2serv/x2/source/chan.c,v retrieving revision 1.68 retrieving revision 1.69 diff -C2 -r1.68 -r1.69 *** chan.c 2001/01/23 14:20:24 1.68 --- chan.c 2001/01/24 00:54:17 1.69 *************** *** 1150,1153 **** --- 1150,1154 ---- free(bptr); } + cptr->banned = NULL; cptr->NumOfNicks = 0; if(cptr->Joined != NULL) Index: commands.c =================================================================== RCS file: /cvsroot/x2serv/x2/source/commands.c,v retrieving revision 1.127 retrieving revision 1.128 diff -C2 -r1.127 -r1.128 *** commands.c 2001/01/23 14:20:24 1.127 --- commands.c 2001/01/24 00:54:17 1.128 *************** *** 749,753 **** int c_addmaster(C_PARAM) { ! send_to_user(uptr, "The MASTER level has been changed to MANAGER, to avoid confusion. Please see the LEVELS command for a description of all the levels available. Please use MANAGER in all places you previously used MASTER. Thanks! -AfterNET CService Staff."); return(FALSE); } --- 749,753 ---- int c_addmaster(C_PARAM) { ! send_to_user(uptr, "The MASTER level has been changed to MANAGER, to avoid confusion. Please see the LEVELS command for a description of all the levels available. Please use MANAGER in all places you previously used MASTER. Thanks! -%s CService Staff.",NETWORK); return(FALSE); } *************** *** 1369,1373 **** { send_to_user(uptr, "\002Usage: PASS <old password> <new password>\002"); ! send_to_user(uptr, "\002Example: /msg %s #AfterNET PASS k48ad p83ad\002", IrcNick); return(FALSE); } --- 1369,1373 ---- { send_to_user(uptr, "\002Usage: PASS <old password> <new password>\002"); ! send_to_user(uptr, "\002Example: /msg %s #Operations PASS k48ad p83ad\002", IrcNick); return(FALSE); } *************** *** 1736,1740 **** send_to_user(uptr, "\002%s\002 is the channel services bot. Type: /msg %s HELP for info on how to use it.", IrcNick, IrcNick); if (IsOper(target)) ! send_to_user(uptr, "%s is an AfterNet \002IRC Operator\002.", target->Nick); if (IsGodOper(target)) send_to_user(uptr, "%s has \002security override (+h) \002enabled.", target->Nick); --- 1736,1740 ---- send_to_user(uptr, "\002%s\002 is the channel services bot. Type: /msg %s HELP for info on how to use it.", IrcNick, IrcNick); if (IsOper(target)) ! send_to_user(uptr, "%s is an \002IRC Operator\002.", target->Nick); if (IsGodOper(target)) send_to_user(uptr, "%s has \002security override (+h) \002enabled.", target->Nick); *************** *** 1760,1764 **** send_to_user(uptr, "%s is not on the %s userlist.", target->Nick, cptr->Name); if (IsOper(target)) ! send_to_user(uptr, "%s is an AfterNet \002IRC Operator\002.", target->Nick); if (IsGodOper(target)) send_to_user(uptr, "%s has \002security override (+h)\002 enabled.", target->Nick); --- 1760,1764 ---- send_to_user(uptr, "%s is not on the %s userlist.", target->Nick, cptr->Name); if (IsOper(target)) ! send_to_user(uptr, "%s is an \002IRC Operator\002.", target->Nick); if (IsGodOper(target)) send_to_user(uptr, "%s has \002security override (+h)\002 enabled.", target->Nick); *************** *** 2847,2852 **** send_to_user(uptr, "\002Uptime %d day(s) (%02d:%02d)\002", UpTime / 86400, (UpTime / 3600) % 24, (UpTime / 60) % 60); send_to_user(uptr, "\002Connected %d day(s) (%02d:%02d)\002", ConTime / 86400, (ConTime / 3600) % 24,(ConTime / 60) % 60); ! send_to_user(uptr, "\002My clock : %s", t2s(buf, time(NULL))); ! send_to_user(uptr, "\002AfterNet clock : %s", t2s(buf, NetTime())); send_to_user(uptr, "\002%d commands parsed from %d lines processed.\002", TotalCommands, TotalLines); send_to_user(uptr, "\002%d users signed on.\002", TotalUserCount); --- 2847,2852 ---- send_to_user(uptr, "\002Uptime %d day(s) (%02d:%02d)\002", UpTime / 86400, (UpTime / 3600) % 24, (UpTime / 60) % 60); send_to_user(uptr, "\002Connected %d day(s) (%02d:%02d)\002", ConTime / 86400, (ConTime / 3600) % 24,(ConTime / 60) % 60); ! send_to_user(uptr, "\002Local clock : %s", t2s(buf, time(NULL))); ! send_to_user(uptr, "\002Network clock : %s", t2s(buf, NetTime())); send_to_user(uptr, "\002%d commands parsed from %d lines processed.\002", TotalCommands, TotalLines); send_to_user(uptr, "\002%d users signed on.\002", TotalUserCount); *************** *** 2915,2919 **** if((ServPtr = GetServer(Name))) { ! if (!strstr(ServPtr->Name, "AfterNET.Services")) { if (ServPtr->NumOfUsers != 1) --- 2915,2919 ---- if((ServPtr = GetServer(Name))) { ! if (!strstr(ServPtr->Name, ".Services")) { if (ServPtr->NumOfUsers != 1) *************** *** 3040,3044 **** while (ServPtr) { ! if(!strstr(ServPtr->Name, "AfterNET.Services") || (strstr(rest, "DEBUG") )) /* filter out AfterNET.Services */ send_to_user(uptr, "\002 %s\002(%d) has %d user(s) <-> \002%s\002", ServPtr->Name, convert2n[(int)ServPtr->numnick], ServPtr->NumOfUsers, ServPtr->LinkName); ServPtr = ServPtr->NextA; --- 3040,3044 ---- while (ServPtr) { ! if(!strstr(ServPtr->Name, ".Services") || (strstr(rest, "DEBUG") )) /* filter out Services */ send_to_user(uptr, "\002 %s\002(%d) has %d user(s) <-> \002%s\002", ServPtr->Name, convert2n[(int)ServPtr->numnick], ServPtr->NumOfUsers, ServPtr->LinkName); ServPtr = ServPtr->NextA; *************** *** 3898,3902 **** while (ListPtr) { ! if ((!strstr("AfterNet.Services", ListPtr->Serv)) && ((UMODEo & ListPtr->Modes) != 0)) { if(!(ListPtr->Modes & UMODEk)) --- 3898,3902 ---- while (ListPtr) { ! if ((!strstr(".Services", ListPtr->Serv)) && ((UMODEo & ListPtr->Modes) != 0)) { if(!(ListPtr->Modes & UMODEk)) Index: config.h =================================================================== RCS file: /cvsroot/x2serv/x2/source/config.h,v retrieving revision 1.50 retrieving revision 1.51 diff -C2 -r1.50 -r1.51 *** config.h 2001/01/23 14:20:24 1.50 --- config.h 2001/01/24 00:54:17 1.51 *************** *** 44,47 **** --- 44,50 ---- #define VERSION "X2 v5.0.99 - AfterNET Channel Services" + /* This is used to refer to your network in various places. It should be one word, eg "AfterNET" */ + #define NETWORK "Loxxin" + #define OPERHELPFILE "HELP/operhelp.txt" #define USERHELPFILE "HELP/userhelp.txt" Index: main.c =================================================================== RCS file: /cvsroot/x2serv/x2/source/main.c,v retrieving revision 1.47 retrieving revision 1.48 diff -C2 -r1.47 -r1.48 *** main.c 2001/01/23 14:20:25 1.47 --- main.c 2001/01/24 00:54:17 1.48 *************** *** 795,799 **** KillServerList(); /* Are there any users if there are no servers?? */ ! /* KillUserList(); */ ClearAllChans(); OperCount = 0; --- 795,800 ---- KillServerList(); /* Are there any users if there are no servers?? */ ! /* YES! x2 itself. -Rubin */ ! KillUserList(); ClearAllChans(); OperCount = 0; Index: misc.c =================================================================== RCS file: /cvsroot/x2serv/x2/source/misc.c,v retrieving revision 1.37 retrieving revision 1.38 diff -C2 -r1.37 -r1.38 *** misc.c 2001/01/17 04:00:21 1.37 --- misc.c 2001/01/24 00:54:17 1.38 *************** *** 412,416 **** if((TheFile = fopen(MESSAGEFILENAME, "r"))) { ! send_to_user(uptr, "\002News from AfterNet CService:\002"); send_to_user(uptr, "=--------------------------------="); while (fgets(LineBuf, MAXLEN, TheFile)) --- 412,416 ---- if((TheFile = fopen(MESSAGEFILENAME, "r"))) { ! send_to_user(uptr, "\002News from %s CService:\002", NETWORK); send_to_user(uptr, "=--------------------------------="); while (fgets(LineBuf, MAXLEN, TheFile)) Index: route.c =================================================================== RCS file: /cvsroot/x2serv/x2/source/route.c,v retrieving revision 1.10 retrieving revision 1.11 diff -C2 -r1.10 -r1.11 *** route.c 2001/01/22 07:24:33 1.10 --- route.c 2001/01/24 00:54:17 1.11 *************** *** 194,201 **** int port = 0; - if(feof(routefile)) - { - break; - } line++; if(s < 1) --- 194,197 ---- *************** *** 217,224 **** second = strtok(NULL, " "); AddRouteServer(Route, server, port, uplink, second); } ! ChangeRouteUplinks(Route); /* Fix for our center view */ ! RankOutsideNess(Route); return(TRUE); } --- 213,221 ---- second = strtok(NULL, " "); + Debug(DBGWARNING, "Adding routing server %s", server); AddRouteServer(Route, server, port, uplink, second); } ! ChangeRouteUplinks(Route); /* Fix for our center view */ ! RankOutsideNess(Route); return(TRUE); } Index: setup.h =================================================================== RCS file: /cvsroot/x2serv/x2/source/setup.h,v retrieving revision 1.5 retrieving revision 1.6 diff -C2 -r1.5 -r1.6 *** setup.h 2000/12/22 14:48:17 1.5 --- setup.h 2001/01/24 00:54:17 1.6 *************** *** 57,59 **** /* Define if you have the crypt library (-lcrypt). */ ! /* #undef HAVE_LIBCRYPT */ --- 57,59 ---- /* Define if you have the crypt library (-lcrypt). */ ! #define HAVE_LIBCRYPT 1 |
From: Alex S. <ru...@us...> - 2001-01-23 19:24:43
|
Update of /cvsroot/x2serv/x2/source In directory usw-pr-cvs1:/tmp/cvs-serv32586 Modified Files: Makefile.in Log Message: The trailing slashes apparently arnt portable in make targets. Index: Makefile.in =================================================================== RCS file: /cvsroot/x2serv/x2/source/Makefile.in,v retrieving revision 1.14 retrieving revision 1.15 diff -C2 -r1.14 -r1.15 *** Makefile.in 2001/01/23 14:51:26 1.14 --- Makefile.in 2001/01/23 19:25:00 1.15 *************** *** 60,75 **** $(CC) $(CFLAGS) -o x2 $(OBJS) $(LDFLAGS) $(LIBS) ! main.o: main.c config.h init.h chan.h user.h parse.h misc.h sock.h server.h\ ! gate.h send.h route.h init.o: init.c config.h sock.h chan.o: chan.c config.h send.h misc.h user.h sock.h chan.h match.h server.h user.o: user.c config.h sock.h send.h misc.h chan.h server.h user.h ! parse.o: parse.c config.h sock.h send.h chan.h user.h server.h misc.h \ ! commands.h parse.h gate.h route.h misc.o: misc.c config.h misc.h send.h user.h sock.h chan.h match.h server.h sock.o: sock.c config.h misc.h server.o: server.c config.h sock.h misc.h server.h user.h match.h send.h ! commands.o: commands.c config.h send.h misc.h sock.h chan.h user.h init.h \ ! server.h accounting.h commands.h match.h route.h parse.h match.o: match.c config.h gate.o: gate.c config.h send.h gate.h user.h misc.h server.h --- 60,72 ---- $(CC) $(CFLAGS) -o x2 $(OBJS) $(LDFLAGS) $(LIBS) ! main.o: main.c config.h init.h chan.h user.h parse.h misc.h sock.h server.h gate.h send.h route.h init.o: init.c config.h sock.h chan.o: chan.c config.h send.h misc.h user.h sock.h chan.h match.h server.h user.o: user.c config.h sock.h send.h misc.h chan.h server.h user.h ! parse.o: parse.c config.h sock.h send.h chan.h user.h server.h misc.h commands.h parse.h gate.h route.h misc.o: misc.c config.h misc.h send.h user.h sock.h chan.h match.h server.h sock.o: sock.c config.h misc.h server.o: server.c config.h sock.h misc.h server.h user.h match.h send.h ! commands.o: commands.c config.h send.h misc.h sock.h chan.h user.h init.h server.h accounting.h commands.h match.h route.h parse.h match.o: match.c config.h gate.o: gate.c config.h send.h gate.h user.h misc.h server.h |
From: Richard P. <lys...@us...> - 2001-01-23 14:51:10
|
Update of /cvsroot/x2serv/x2/source In directory usw-pr-cvs1:/tmp/cvs-serv22648/source Modified Files: Makefile.in Log Message: updated Makefile to work with the new files. also updated other dependencies Index: Makefile.in =================================================================== RCS file: /cvsroot/x2serv/x2/source/Makefile.in,v retrieving revision 1.13 retrieving revision 1.14 diff -C2 -r1.13 -r1.14 *** Makefile.in 2000/12/19 08:11:56 1.13 --- Makefile.in 2001/01/23 14:51:26 1.14 *************** *** 39,43 **** # What to build: OBJS=main.o init.o chan.o user.o parse.o misc.o sock.o server.o commands.o \ ! match.o gate.o send.o support.o route.o calc.o accounting.o # Dummy for old/broken `make's: --- 39,43 ---- # What to build: OBJS=main.o init.o chan.o user.o parse.o misc.o sock.o server.o commands.o \ ! match.o gate.o send.o support.o route.o calc.o accounting.o set.o # Dummy for old/broken `make's: *************** *** 60,78 **** $(CC) $(CFLAGS) -o x2 $(OBJS) $(LDFLAGS) $(LIBS) ! main.o: main.c config.h init.h chan.h user.h parse.h misc.h sock.h server.h gate.h init.o: init.c config.h sock.h ! chan.o: chan.c config.h send.h misc.h user.h sock.h ! user.o: user.c config.h sock.h send.h misc.h chan.h ! parse.o: parse.c config.h sock.h send.h chan.h user.h server.h misc.h ! misc.o: misc.c config.h misc.h send.h ! sock.o: sock.c config.h ! server.o: server.c config.h sock.h misc.h send.h ! commands.o: commands.c config.h send.h misc.h sock.h chan.h user.h init.h server.h accounting.h ! match.o: match.c ! gate.o: gate.c config.h send.h gate.h ! send.o: server.o config.h send.c send.h support.o: support.c calc.o: calc.c ! accounting.o: accounting.c accounting.h # Maintainance targets go here --- 60,82 ---- $(CC) $(CFLAGS) -o x2 $(OBJS) $(LDFLAGS) $(LIBS) ! main.o: main.c config.h init.h chan.h user.h parse.h misc.h sock.h server.h\ ! gate.h send.h route.h init.o: init.c config.h sock.h ! chan.o: chan.c config.h send.h misc.h user.h sock.h chan.h match.h server.h ! user.o: user.c config.h sock.h send.h misc.h chan.h server.h user.h ! parse.o: parse.c config.h sock.h send.h chan.h user.h server.h misc.h \ ! commands.h parse.h gate.h route.h ! misc.o: misc.c config.h misc.h send.h user.h sock.h chan.h match.h server.h ! sock.o: sock.c config.h misc.h ! server.o: server.c config.h sock.h misc.h server.h user.h match.h send.h ! commands.o: commands.c config.h send.h misc.h sock.h chan.h user.h init.h \ ! server.h accounting.h commands.h match.h route.h parse.h ! match.o: match.c config.h ! gate.o: gate.c config.h send.h gate.h user.h misc.h server.h ! send.o: send.c send.h config.h misc.h user.h chan.h sock.h route.h support.o: support.c calc.o: calc.c ! accounting.o: accounting.c accounting.h config.h misc.h send.h ! set.o: set.c set.h commands.h config.h # Maintainance targets go here |