#define MAXCONN maxconn #define MAXCHAN 20 #define MAX_USER_THREADS 4 #define MAINCHANNEL "Main" #define DEFAULT_PORT 6666 #define GC_TIME 300 #define MAX_USER_NAME_LENGTH 17 #define EMOTE_CHAR '%' #define BAD_WORD_BUFFER_SIZE 1024 #define BANS_BUFFER_SIZE 4096 #define ALLOWS_BUFFER_SIZE 4096 #define WHO_BUFFER_SIZE 250 /* YOU MAY NOT EDIT THIS NEXT LINE OF CODE */ #define VERSION "Naken Chat 2.00 - July 2, 2003" struct User { unsigned char location[64]; unsigned char username[MAX_USER_NAME_LENGTH+1]; unsigned char outString[514]; unsigned char myString[514]; unsigned char *gags; int ID,r; int channel,uflags; int logontime,idletime,stamptime; char user_level,inuse; int spam,lastp; int socketid; int lr,lptr,ptr; int warnings; FILE *socketfd; char emote_char; }; extern int sockfd,bancount,allowcount,badwordcount,port; extern struct User **users; extern unsigned char channels[MAXCHAN+2][20]; extern int channelop[MAXCHAN+2]; extern int cflags[MAXCHAN+2]; extern int international,debug,censor; extern unsigned int uptime; extern unsigned char sysoppw[15]; extern unsigned char serverflags; extern unsigned char bans[BANS_BUFFER_SIZE]; extern unsigned char allows[ALLOWS_BUFFER_SIZE]; extern unsigned char badword[BAD_WORD_BUFFER_SIZE]; extern unsigned char welcome[2048]; extern unsigned char logfile[256]; extern unsigned char passwd[256]; extern char configdir[256]; extern int welcomelen; extern int logging; extern int maxconn; extern int minconn; extern int max_idle_time; extern FILE *logfp; /* Server Flags 0: channel disallow 1: host lookups 2: show ips 3: no dup ips 4: elite mode 5: force password 6: force names 7: no duplicate names */ /* User Flags 0: Beeps 1: Hilites 2: Squelched 3: Hush Yells 4: Echos 5: Time Stamping 6: System Messages 7: Hidden Sysop 8: Client Userlist */