/* * ---------------------------------------------------------------- * Night Light Internet Relay Chat Defines (irc_defines.h) * ---------------------------------------------------------------- * Copyright (C) 1997-2003 Jonas Kvinge * All rights reserved. * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation; either version 2 of the License, or * (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License along * with this program; if not, write to the Free Software Foundation, Inc., * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. * * Last modified by: * Jonas Kvinge (18.07.2001) * * */ #ifdef IRC_DEFINES_H #warning "irc_defines.h already included." #else #define IRC_DEFINES_H /* Network bitmasks */ #define IRC_NETWORK_ZERO 0 #define IRC_NETWORK_GENERIC 1 #define IRC_NETWORK_IRCNET 2 #define IRC_NETWORK_EFNET 4 #define IRC_NETWORK_UNDERNET 8 #define IRC_NETWORK_DALNET 16 #define IRC_NETWORK_FREENODE 32 #define IRC_NETWORK_ALL (IRC_NETWORK_GENERIC|IRC_NETWORK_IRCNET|IRC_NETWORK_EFNET|IRC_NETWORK_UNDERNET|IRC_NETWORK_DALNET|IRC_NETWORK_FREENODE) /* Unknown NICK/USER/HOST strings */ #define IRCUNKNOWNNICK "�" #define IRCUNKNOWNUSER "�" #define IRCUNKNOWNHOST "�" #define IRCUNKNOWNNUH IRCUNKNOWNNICK "!" IRCUNKNOWNUSER "@" IRCUNKNOWNHOST /* Characters */ #define IRCNUHCHARS "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789-._!@`[]{}|\\^?*~" #define IRCNICKCHARS "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789-_`[]{}|\\^?*" #define IRCUSERCHARS "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789-_.?*~" #define IRCHOSTCHARS "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789-.?*" #define IRCPASSCHARS "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789-.?*" #define IRCSERVERCHARS IRCHOSTCHARS #define IRCEVENTS "abcdiew" #define IRCCHANEVENTS "jpqknmtabcdxz" #define IRCUSERMODES "+-iws" #define IRCCHANMODES "+-ilpskmnt" /* SendQ */ #define IRCSENDMAXLINES 100 #define IRCSENDLINETIME 1 #define IRCSENDMAXBUFFER 1024 #define IRCSENDBUFFERTIME 120 /* Settings */ #define IRCMAXPARAMS 15 #define IRCMAXMODES 3 #define IRCMAXCHANS 10 #define IRCCHANMAXBANS 30 /* Lengths */ #define IRCSERVERLEN 63 #define IRCSERVERINFOLEN 200 #define IRCPASSLEN 20 #define IRCNICKLEN 9 #define IRCUSERLEN 12 #define IRCHOSTLEN 63 #define IRCNAMELEN 50 #define IRCUSERHOSTLEN (IRCNICKLEN + IRCUSERLEN + 1) #define IRCNUHLEN (IRCNICKLEN + IRCUSERLEN + IRCHOSTLEN + 2) #define IRCMSGLEN 510 #define IRCMSGCRLFLEN (IRCMSGLEN+2) #define IRCPRIVMSGLEN 490 #define IRCNOTICELEN 490 #define IRCCTCPLEN 490 #define IRCACTIONLEN 490 #define IRCQUITMSGLEN 200 #define IRCKILLMSGLEN 200 #define IRCWALLOPSMSGLEN 200 #define IRCAWAYMSGLEN 200 #define IRCMODECHARLEN 2 #define IRCMODEPARAMLEN 50 #define IRCMODECHARSLEN 10 #define IRCMODEPARAMSLEN 510 #define IRCMODELINELEN (IRCMODECHARSLEN + IRCMODEPARAMSLEN) #define IRCMODESLEN (IRCCHANMODELEN * IRCCHANMAXMODES) #define IRCCHANLEN 50 #define IRCCHANKEYLEN 23 #define IRCCHANKICKMSGLEN 200 #define IRCCHANPARTMSGLEN 200 #define IRCCHANTOPICLEN 160 /* Structures */ struct IRC_ISupport_Struct { char *Network; unsigned long int Networks; unsigned short int MaxModes; unsigned short int MaxChans; unsigned short int MaxBans; unsigned short int NickLen; unsigned short int AwayMsgLen; unsigned short int TopicLen; unsigned short int KickMsgLen; char *ChanTypes; char *Prefix; char *ChanModes; }; /* IRC Mask defines */ #define IRC_MINNICKMASK 1 #define IRC_MAXNICKMASK 6 #define IRC_MINUSERMASK 1 #define IRC_MAXUSERMASK 6 #define IRC_MINHOSTMASK 1 #define IRC_MAXHOSTMASK 6 #endif