home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Usenet 1994 October
/
usenetsourcesnewsgroupsinfomagicoctober1994disk2.iso
/
unix
/
volume16
/
deliver
/
part01
/
config.h
next >
Wrap
C/C++ Source or Header
|
1988-11-14
|
4KB
|
142 lines
/* $Header: config.h,v 1.3 88/09/14 19:41:35 network Exp $
*
* Deliver configuration.
*
* $Log: config.h,v $
* Revision 1.3 88/09/14 19:41:35 network
* Portability to System V and BSD.
* General fixup.
*
* Revision 1.2 88/08/25 15:21:15 network
* Change default system delivery file to "/usr/local/lib/deliver.sys".
* Add ENV_SYSDEL and ENV_USERDEL for system and user delivery filenames.
*
* Revision 1.1 88/06/06 09:37:27 chip
* Initial revision
*
*/
/*----------------------------------------------------------------------
* Various kinds of mailbox locking.
* You may define one or both of ML_DOTLOCK and ML_DOTMLK.
* You may define no more than one of ML_FCNTL, ML_LOCKF and ML_LOCKING.
*
* File creation locking:
* ML_DOTLOCK create <mailbox>.lock (most systems except BSD4.3)
* ML_DOTMLK create /tmp/<basename>.mlk (Xenix)
*
* Kernel record locking:
* ML_FCNTL lock with fcntl(F_SETLKW) (SVID systems only)
* ML_LOCKF lock with lockf(F_LOCK) (SVID systems only)
* ML_LOCKING lock with locking(LK_LOCK) (Xenix systems only)
*/
#ifdef M_XENIX
#define ML_DOTMLK
#define ML_LOCKING
#else
#define ML_DOTLOCK
#endif
/*----------------------------------------------------------------------
* Maximum filename length.
* Note that this is for _filenames_, not _pathnames_.
* For AT&T file systems, the usual value is 14.
* For Berzerkley file systems, use something big like 255.
*/
#ifdef BSD
#define MAX_NAMESIZE 255
#else
#define MAX_NAMESIZE 14
#endif
/*----------------------------------------------------------------------
* How to get the host name.
*
* HOSTFILE file containing name (Xenix)
* UNAME uname() (System V)
* GETHOSTNAME gethostname() (BSD)
*/
#ifdef M_XENIX
#define HOSTFILE "/etc/systemid"
#else
#ifdef USG
#define UNAME
#else
#ifdef BSD
#define GETHOSTNAME
#endif
#endif
#endif
/*----------------------------------------------------------------------
* Are vprintf() and friends available?
* Is putenv() available?
*/
#ifndef BSD
#define HAS_VPRINTF
#define HAS_PUTENV
#endif
/*----------------------------------------------------------------------
* Name of shell used to execute delivery files.
*/
#define SHELL "/bin/sh"
/*----------------------------------------------------------------------
* Standard mailbox location.
*
* Define either MAILBOX_NAME or MAILBOX_DIR.
* If MAILBOX_NAME is defined, then the default mailbox is a file with
* that name in the user's home directory.
* If MAILBOX_DIR is defined, then the default mailbox is a file in that
* directory with the same name as the user.
*
* Define MAILBOX_GROUP if all mailboxes must be owned by a specific group.
* (System V requires this feature.) If MAILBOX_GROUP is not defined,
* mailboxes will have their groups set to the recipients' default group.
*
* Define MAILBOX_MODE to the file access modes for new mailboxes.
* (System V requires group write permissions, i.e. 0020.)
*/
#ifdef USG
/* #define MAILBOX_NAME "mbox" */
#define MAILBOX_DIR "/usr/mail"
#define MAILBOX_MODE 0660
#define MAILBOX_GROUP "mail"
#else
/* #define MAILBOX_NAME "mbox" */
#define MAILBOX_DIR "/usr/spool/mail"
#define MAILBOX_MODE 0600
#endif
/*----------------------------------------------------------------------
* Names of delivery files.
*
* SYS_DELIVER system-wide delivery file
* USER_DELIVER user delivery file (in user's home directory)
*/
#define SYS_DELIVER "/usr/local/lib/deliver.sys"
#define USER_DELIVER ".deliver"
/*----------------------------------------------------------------------
* Environment variables passed to child processes.
* Variables marked with [#] are created only if they are specified
* as command line options.
*/
#define ENV_DFLAGS "DELFLAGS" /* Flags: [-[Avdt]] */
#define ENV_SYSDEL "SYSDELFILE" /* System delivery file [#] */
#define ENV_USERDEL "USERDELFILE" /* User delivery file [#] */
#define ENV_HOSTNAME "HOSTNAME" /* Name of this host */
#define ENV_SENDER "SENDER" /* Message sender [#] */
#define ENV_HEADER "HEADER" /* Message header file */
#define ENV_BODY "BODY" /* Message body file */