home *** CD-ROM | disk | FTP | other *** search
- /* CONFIG.H: @(#)config.h 1.5 93/06/07 Copyright (c)1993 thalerd */
- /* The following 3 defines are all that you should need to configure the bbs
- * conferencing system for your machine:
- * BBSDIR is the main subdirectory under which the whole system exists. On
- * M-net it is /usr/bbs. The 'conflist' and main 'rc' files should exist there.
- * HELPDIR is the subdirectory under which all the help files exist. On M-net
- * it is /usr/bbs/help.
- * MAILDIR should be set to the directory which contains the user mailbox files.
- */
- #define BBSDIR "/usr/bbs"
- #define HELPDIR "/usr/bbs/help"
- #define MAILDIR "/usr/spool/mail"
- #define NEWSDIR "/usr/spool/news"
-
- /* Define FREEZE_LINKED if you wish to allow fair-witnesses to freeze,
- * thaw, retire, and unretire items that are linked to another conference.
- */
- #undef FREEZE_LINKED
-
- /* Define BYTESWAP to be 1 if you want a consistent sum file format. This
- * is useful on networks of machines of differing architectures. The only
- * reason to change this is that on some machines, if you using YAPP with
- * other programs that access the same files, the other programs may not
- * do byteswapping (PicoSpan does). In this case, define BYTESWAP to be 0.
- */
- #define BYTESWAP 1
-
- /* Define NEWS if you wish to allow Usenet news conferences
- */
- #define NEWS
-
- /* Do NOT return to SCCS without -k, or the %S% in LINMSG etc will go away! */
-
- #ifdef __STDC__
- #define PROTO(x) x
- #else
- #define PROTO(x) ()
- #endif
- #define CHAR char
- #define U_CHAR unsigned char
- #define SHORT short
- #define U_SHORT unsigned short
-
- /* Defines for various OS's... */
- #ifdef ultrix
- #define NOSTRDUP
- #define NOSTRNICMP
- #define NOEDATE
- #define timelocal mktime
- #endif
-
- #ifdef M_SYS3
- #define NOFLOCK
- #define NOSTRNICMP
- #endif
-
- #ifdef linux
- #define NOFLOCK
- #define NOSTRNICMP
- #define timelocal mktime
- #endif
-
- #ifdef hpux
- #define NOEDATE
- #define FLOCKF /* had lockf but not flock */
- #define NOSTRNICMP
- #define timelocal mktime
- #endif
-
- #ifdef NeXT
- #define NOSTRNICMP
- #define NOPUTENV
- #define timelocal mktime
- #define L_cuserid 9
- #define S_IRUSR 0400
- #define S_IWUSR 0200
- #define S_IXUSR 0100
- #include <sys/file.h> /* For X_OK */
- #undef CHAR
- #define CHAR int
- #undef U_CHAR
- #define U_CHAR int
- #undef SHORT
- #define SHORT int
- #undef U_SHORT
- #define U_SHORT int
- #endif
-
- #ifdef bsdi
- #define NOSTRNICMP
- #define timelocal mktime
- #undef CHAR
- #define CHAR int
- #undef U_CHAR
- #define U_CHAR int
- #undef SHORT
- #define SHORT int
- #undef U_SHORT
- #define U_SHORT int
- #endif
-
- #define MAX_LINE_LENGTH 512 /* Buffer size for a line of text */
- #define MAX_FILE_NAME_LENGTH 80 /* Length of a file name */
- #define MAX_STRING_LENGTH 64 /* String length of our language */
- #define MAX_IDENT_LENGTH 32 /* Identifier length in our lang */
- #define DEFAULT_ON 1 /* Value of flag when on */
- #define DEFAULT_OFF 0 /* Value of flag when off */
- #define NIL (char *) 0 /* Empty string */
- #define CMD_DEPTH 20
- #define MAX_ARGS 128
-
- #define MAX_LIST_LENGTH 300 /* # of conferences, help files */
- #define MAX_MACROS 200 /* # of aliases */
- #define MAX_RESPONSES 2000 /* # of responses/item */
- #define MAX_ITEMS 6000 /* # of items/conf */
-
- /* Default variable values */
- #define PAGER "/usr/bin/more"
- #define EDITOR "/bin/ed"
- #define SHELL "/bin/sh"
- #define PROMPT "\nYAPP: "
- #define NOCONFP "\n\
- Type HELP CONFERENCES for a list of conferences.\n\
- Type JOIN <NAME> to access a conference.\n\
- YAPP: "
- #define RFPPROMPT "\n[%{curitem}/%l] Respond, forget, or pass? "
- #define OBVPROMPT "\n[%{curitem}/%l] Can't respond, pass? "
- #define JOQPROMPT "\nJoin, quit, or help? "
- #define EDBPROMPT "Ok to enter this response? "
- #define TEXT ">" /* No separators allowed for this prompt only */
- #define ESCAPE ":"
-
- /* : , / - ( ) + are used in dates */
- /* ! > | ` ~ are used for unix commands */
- /* < > % { } are used for separators */
- /* | & are reserved for future expansion for separators */
- /* . is used to specify responses */
- /* # is used for comments */
- /* _ is used for specifying commands */
- /* = ^ $ is used for range specs */
- /* " ' are used for strings */
- /* @ * ? [ ] ; are unused */
- #define CMDDEL ";"
- #define BUFDEL "@"
-
- #define GECOS "," /* (char *)0 */
- #define NSEP "\n%(N%r new of %)%zn response%S total."
- #define ISHORT "%(BItem Resps Subject\n\n%)%4i %5n %h"
- #define ISEP "\nItem %i entered %d by %a (%l)\n %h"
- #define RSEP "\n#%i.%r %a (%l) "
- #define FSEP "%(R#%i.%r %a (%l)\n%)%7N: %L"
- #define TXTSEP "%(L%(F%7N:%)%X%L%)"
- #define ZSEP "%(T^L%)%c"
- #define PRINTMSG "%QPrinted from conference %d (%s)"
- #define MAILMSG "You have %(2xmore %)mail."
- #define LINMSG "\
- %(1x%(2x\n%)%0g%)\
- %(2x%(3N%3g%)\
- %(1x\n%)%(n%(r%r newresponse item%S%)\
- %(b%(r and %)%b brandnew item%S%)\n%)\
- %(i%i item%S numbered %f-%l\n%)\
- %(sYou are a fairwitness in this conference.\n%)\
- %(lYou are an observer of this conference.\n%)\
- %(jYour name is \"%u\" in this conference.\n\
- %(~O%(4F\n%4g%E\n>>>> New users: type HELP for help.\n%)%)%)%)%c"
- #define LOUTMSG "%(1x%1g%)%c"
- #define INDXMSG "%(1x%2g%)%c"
- #define BULLMSG "%(1x%3g%)%c"
- #define WELLMSG "%(1x%4g%)%c"
- #define PARTMSG "\
- %(2x%10v %o %u%)\
- %(4x\n%k participant%S total.%)\
- %(1x\n login last time on name\n%)"
- #define CHECKMSG "%(1x\nNew resp items Conference name\n%)%(2x%(k--%E %)%(B>%E %)%4r %4b %s%(B (where you currently are!)%)%)"
- #define CONFMSG "%Q\
- Conference name : %s\n\
- Directory : %d\n\
- Participation file: %w/%p\n\
- Security type : %t\n\
- %(i%i item%S numbered %f-%l%ENo items yet.%)"
- #define JOINMSG "Join: which conference?\n\
- %QYou are currently in the %s conference."
- #define LISTMSG "\
- %(1x\nitems sec time conference\n%)\
- %(2x%(B>%E %)%4i %2t%(sF%E%(lR%E %)%) %m %s%)"
- #define REPLYSEP "\
- %(1xIn #%i.%r of the %C conference, you write:%)\
- %(2x> %L%)\
- %(4x%)"
- #ifdef NEWS
- #define NEWSSEP "\
- %(1xIn article <%m>, %a writes:%)\
- %(2x> %L%)\
- %(4x%)"
- #endif
-
- /* Option flags */
- #define NUM_OPTIONS 20
- #define O_DEBUG 0x0001 /* Turn all debugging options on */
- #define O_BUFFER 0x0002 /* Don't use a pager */
- #define O_DEFAULT 0x0004 /* Go to noconf mode at start */
- #define O_OBSERVE 0x0008 /* Force observer status */
- #define O_STRIP 0x0010 /* Turn strip flag on */
- #define O_SOURCE 0x0020 /* Don't source .cfrc and CONF/rc */
- #define O_FORGET 0x0040 /* */
- #define O_STAY 0x0080 /* Stay on curr item after resp */
- #define O_DOT 0x0100 /* '.' won't end text entry */
- #define O_EDALWAYS 0x0200 /* Go directly to editor for text */
- #define O_METOO 0x0400 /* */
- #define O_NUMBERED 0x0800 /* Number text in responses */
- #define O_DATE 0x1000 /* Display dates on items */
- #define O_UID 0x2000 /* Display uids on items */
- #define O_MAILTEXT 0x4000 /* Display uids on items */
- #define O_AUTOSAVE 0x8000 /* Display uids on items */
- #define O_VERBOSE 0x00010000 /* Display commands in rc files */
- #define O_SCRIBBLER 0x00020000 /* Display login of scribbler */
- #define O_SIGNITURE 0x00040000 /* Display signiture of authors */
- #define O_READONLY 0x00080000 /* Force noresponse status */
-
- /* Status flags */
- #define S_INT 0x0001 /* Interrupt hit? */
- #define S_PIPE 0x0008 /* In a pipe? */
- #define S_QUIT 0x0010 /* Abort join */
- #define S_MAIL 0x0020 /* User has mail? */
- #define S_MOTIF 0x0040 /* Is this running under Motif? */
- #define S_MOREMAIL 0x0400 /* User has MORE mail? */
- #define S_EXECUTE 0x0800 /* Executing a `command` */
- #define S_REDIRECT 0x1000 /* Output is being redirected? */
- #define S_STOP 0x2000 /* Stop processing more ; cmds */
-
- /* Conference status flags */
- #define CS_OBSERVER 0x0002 /* you're an observer in this cf */
- #define CS_FW 0x0004 /* you're a fairwitness of this cf */
- #define CS_NORESPONSE 0x0080 /* Response not possible */
- #define CS_OTHERCONF 0x0100 /* you were in another cf */
- #define CS_JUSTJOINED 0x0200 /* you just joined this cf */
-
- /* Input Modes */
- #define M_MASK 63
- #define M_OK 0 /* Ok: */
- #define M_RFP 1 /* Respond or pass? */
- #define M_TEXT 2 /* > */
- #define M_JOQ 3 /* Join or quit */
- #define M_EDB 4 /* Ok to enter this response? */
- #define M_SUPERSANE 64 /* processing /usr/bbs/rc */
- #define M_SANE 128 /* processing CONF/rc */
-
- /* Conference type flags */
- #define CT_OLDPUBLIC 0x00 /* 0000 */
- #define CT_PASSWORD 0x05 /* 0101 */
- #define CT_PRESELECT 0x04 /* 0100 */
- #define CT_PARANOID 0x06 /* 0110 */
- #define CT_PUBLIC 0x08 /* 1000 */
- #define CT_READONLY 0x10 /* 10000 */
- #define CT_BASIC 0x0F /* 01111 */
- #ifdef NEWS
- #define CT_NEWS 0x20 /*100000 */
- #endif
-
- /* Config file fields */
- #define CF_MAGIC 0
- #define CF_PARTFILE 1
- #define CF_TIMELIMIT 2
- #define CF_FWLIST 3
- #define CF_SECURITY 4
- #ifdef NEWS
- #define CF_NEWSGROUP 5
- #endif
-
- /* Item flags */
- #define IF_FORGOTTEN 0x0001
- #define IF_RETIRED 0x0002
- #define IF_ACTIVE 0x0030
- #define IF_FROZEN 0x0040
- #define IF_PARTY 0x0080
- #define IF_LINKED 0x0100
- #define IF_EXPIRED 0x0200
- #define IF_SAVEMASK 0xFFFE /* Save only these flags */
-