# @(#)conf/os/posix	1.1 12/2/90 06:31:33
#
# poxix - base os file for any P1003.1/X3J11-conformant system
#
# This is intended for inclusion by operating systems that support
# posix and standard C.  Such systems may wish to enable addition
# smail features that are not specifically listed in POSIX.
#
# Some parameters that are not specifically defined in POSIX default
# to those used by SunOS-4.0 and System V Release 4.

# See the file "template" for an explanation of the settings in
# this file.

# OSNAMES - Names defining this operating system
OSNAMES=POSIX_OS

# LOCKING_PROTOCOL - macros for efficient file locking
LOCKING_PROTOCOL="\
#include <unistd.h>
#define LOCK_REQUIRES_WRITE
#define lock_fd(fd)		(lockf((fd), F_TLOCK, 0L) < 0? FAIL: SUCCEED)
#define lock_fd_wait(fd)	(lockf((fd), F_LOCK, 0L) < 0? FAIL: SUCCEED)
#define unlock_fd(fd)		((void) lockf((fd), F_ULOCK, 0L))
#define unlock_fd_wait(fd)	((void) lockf((fd), F_ULOCK, 0L))
#define USE_FCNTL_RD_LOCK
#define lock_fd_rd_wait(fd)	(fcntl_rd_lock(fd))
extern int fcntl_rd_lock();
"

# MAILBOX_DIR - directory containing user mailbox files
MAILBOX_DIR=/var/mail

# CONSOLE - name of the console device file
CONSOLE=/dev/console

# DECLARE_STRINGS - declare string routines, using macros as needed
DECLARE_STRINGS="\
#include <string.h>
#define bzero(b,n)	(memset((b),'\0',(n)))
#define bcopy(b1,b2,n)	(memcpy((b2),(b1),(n)))
#define bcmp(b1,b2,n)	(memcmp((b1),(b2),(n)))
#define index	strchr
#define rindex	strrchr
"

# SECURE_PATH - guess at secure path (specific OS's should probably override)
SECURE_PATH=/bin:/usr/bin

# DRIVER_CONFIGURATION - configuration file describing smail drivers
DRIVER_CONFIGURATION=unix-generic

# RANLIB - how do we organize an existing object archive library
RANLIB=:

# CHOWN - command to use for accessing the chown program
CHOWN=chown

# OS_HAVE - name the capabilities of this operating system
HAVE=RENAME:MKDIR:BSTRING:SYS5_STRLIB:GETOPT:UNAME:DUP2:READDIR:VFPRINTF
