1 /* 2 * Copyright (c) 1996 Regents of The University of Michigan. 3 * All Rights Reserved. See COPYRIGHT. 4 * 5 * NOTE: SunOS 4 and ultrix are pretty much the only reason why there 6 * are checks for EINTR everywhere. 7 */ 8 9 #ifdef HAVE_CONFIG_H 10 #include "config.h" 11 12 #include <signal.h> 13 14 #if defined(ultrix) || defined(_IBMR2) || defined(NEED_GETUSERSHELL) 15 extern char *getusershell (void); 16 #endif 17 18 /* OpenBSD */ 19 #if defined(__OpenBSD__) && !defined(ENOTSUP) 20 #define ENOTSUP EOPNOTSUPP 21 #endif 22 23 #if !defined(HAVE_PSELECT) || defined(__OpenBSD__) 24 extern int pselect(int, fd_set * restrict, fd_set * restrict, 25 fd_set * restrict, const struct timespec * restrict, 26 const sigset_t * restrict); 27 #endif 28 29 #ifndef HAVE_FLOCK 30 extern int flock (int, int); 31 #endif 32 33 #ifndef HAVE_STRNLEN 34 extern size_t strnlen(const char *s, size_t n); 35 #endif 36 37 #ifndef HAVE_STRLCPY 38 extern size_t strlcpy (char *, const char *, size_t); 39 #endif 40 41 #ifndef HAVE_STRLCAT 42 extern size_t strlcat (char *, const char *, size_t); 43 #endif 44 45 #ifndef HAVE_VASPRINTF 46 #include <stdio.h> 47 #include <stdarg.h> 48 extern int vasprintf(char **ret, const char *fmt, va_list ap); 49 #endif 50 51 #endif 52