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