1/* Copyright 1993,1994 by Paul Vixie 2 * All rights reserved 3 * 4 * Distribute freely, except: don't remove my name from the source or 5 * documentation (don't take credit for my work), mark your changes (don't 6 * get me blamed for your possible bugs), don't alter or remove this 7 * notice. May be sold if buildable source is provided to buyer. No 8 * warrantee of any kind, express or implied, is included with this 9 * software; use at your own risk, responsibility for damages (if any) to 10 * anyone resulting from the use of this software rests entirely with the 11 * user. 12 * 13 * Send bug reports, bug fixes, enhancements, requests, flames, etc., and 14 * I'll try to keep a version up to date. I can be reached as follows: 15 * Paul Vixie <paul@vix.com> uunet!decwrl!vixie!paul 16 */ 17 18/* 19 * $FreeBSD: stable/11/usr.sbin/cron/cron/compat.h 358255 2020-02-23 03:13:38Z kevans $ 20 */ 21 22#ifndef __P 23# ifdef __STDC__ 24# define __P(x) x 25# else 26# define __P(x) () 27# define const 28# endif 29#endif 30 31#if defined(UNIXPC) || defined(unixpc) 32# define UNIXPC 1 33# define ATT 1 34#endif 35 36#if defined(hpux) || defined(_hpux) || defined(__hpux) 37# define HPUX 1 38# define seteuid(e) setresuid(-1,e,-1) 39# define setreuid(r,e) setresuid(r,e,-1) 40#endif 41 42#if defined(_IBMR2) 43# define AIX 1 44#endif 45 46#if defined(__convex__) 47# define CONVEX 1 48#endif 49 50#if defined(sgi) || defined(_sgi) || defined(__sgi) 51# define IRIX 1 52/* IRIX 4 hdrs are broken: one cannot #include both <stdio.h> 53 * and <stdlib.h> because they disagree on system(), perror(). 54 * Therefore we must zap the "const" keyword BEFORE including 55 * either of them. 56 */ 57# define const 58#endif 59 60#if defined(_UNICOS) 61# define UNICOS 1 62#endif 63 64#ifndef POSIX 65# if (BSD >= 199103) || defined(__linux) || defined(ultrix) || defined(AIX) ||\ 66 defined(HPUX) || defined(CONVEX) || defined(IRIX) 67# define POSIX 68# endif 69#endif 70 71#ifndef BSD 72# if defined(ultrix) 73# define BSD 198902 74# endif 75#endif 76 77/*****************************************************************/ 78 79#if (!defined(BSD) || (BSD < 198902)) && !defined(__linux) && \ 80 !defined(IRIX) && !defined(NeXT) && !defined(HPUX) 81# define NEED_STRCASECMP 82#endif 83 84#if (!defined(BSD) || (BSD < 198911)) && !defined(__linux) &&\ 85 !defined(IRIX) && !defined(UNICOS) && !defined(HPUX) 86# define NEED_STRDUP 87#endif 88 89#if (!defined(BSD) || (BSD < 198911)) && !defined(POSIX) && !defined(NeXT) 90# define NEED_STRERROR 91#endif 92 93#if defined(HPUX) || defined(AIX) || defined(UNIXPC) 94# define NEED_FLOCK 95#endif 96 97#ifndef POSIX 98# define NEED_SETSID 99#endif 100 101#if (defined(POSIX) && !defined(BSD)) && !defined(__linux) 102# define NEED_GETDTABLESIZE 103#endif 104 105#ifdef POSIX 106#include <unistd.h> 107#ifdef _POSIX_SAVED_IDS 108# define HAVE_SAVED_UIDS 109#endif 110#endif 111 112#if !defined(ATT) && !defined(__linux) && !defined(IRIX) && !defined(UNICOS) 113# define USE_SIGCHLD 114#endif 115 116#if !defined(AIX) && !defined(UNICOS) 117# define SYS_TIME_H 1 118#else 119# define SYS_TIME_H 0 120#endif 121 122#if defined(BSD) && !defined(POSIX) 123# define USE_UTIMES 124#endif 125 126#if defined(AIX) || defined(HPUX) || defined(IRIX) 127# define NEED_SETENV 128#endif 129 130#if !defined(UNICOS) && !defined(UNIXPC) 131# define HAS_FCHOWN 132#endif 133 134#if !defined(UNICOS) && !defined(UNIXPC) 135# define HAS_FCHMOD 136#endif 137