X-Git-Url: https://arthur.barton.de/cgi-bin/gitweb.cgi?a=blobdiff_plain;ds=sidebyside;f=include%2Fatalk%2Fcompat.h;h=a2d318f43a4f81942210a3a922941224f01e043b;hb=68269a1c176226cdd4fa347f4e06caf59a5466f6;hp=e283220d68d73aeefed1ea93bfa5f43e20f89f1e;hpb=31843674b7bd32eabcce3a1ad6159b4f94921f79;p=netatalk.git diff --git a/include/atalk/compat.h b/include/atalk/compat.h index e283220d..a2d318f4 100644 --- a/include/atalk/compat.h +++ b/include/atalk/compat.h @@ -6,76 +6,52 @@ * are checks for EINTR everywhere. */ -#include +#ifdef HAVE_CONFIG_H +#include "config.h" + #include -#ifdef __svr4__ -/* - * SunOS 5 (solaris) has SA_RESTART, but no SA_INTERRUPT. - */ -#ifndef SA_INTERRUPT -#define SA_INTERRUPT 0 +#if defined(ultrix) || defined(_IBMR2) || defined(NEED_GETUSERSHELL) +extern char *getusershell (void); #endif -#include -#include -#include - -extern int flock __P((int, int)); -extern int inet_aton __P((const char *, struct in_addr *)); -#else /* __svr4__ */ +#if !defined(HAVE_SNPRINTF) || !defined(HAVE_VSNPRINTF) +# include +# include +# ifndef HAVE_SNPRINTF +int snprintf (char *str,size_t count,const char *fmt,...); +# endif -#ifdef sun -/* - * SunOS 4 has SA_INTERRUPT, but no SA_RESTART. - */ -#ifndef SA_RESTART -#define SA_RESTART 0 +# ifndef HAVE_VSNPRINTF +int vsnprintf(char *str, size_t count, const char *fmt, va_list args); +# endif #endif -#endif /* sun */ - -#endif /* __svr4__ */ - -#ifdef linux -/* - * Linux has SA_RESTART, but no SA_INTERRUPT. Note that the documentation - * seems to be wrong on several counts. First, SA_ONESHOT is not the default, - * and second, SA_RESTART does what you'd expect (the same as svr4) and has - * nothing to do with SA_ONESHOT. - */ -#ifndef SA_INTERRUPT -#define SA_INTERRUPT 0 -#endif /* SA_INTERRUPT */ -#endif /* linux */ -#ifdef ultrix -#include -#include -#include +/* OpenBSD */ +#if defined(__OpenBSD__) && !defined(ENOTSUP) +#define ENOTSUP EOPNOTSUPP +#endif -/* - * Here's the really confusing one... Under Ultrix, sigaction() works just - * like sigvec(), except that SV_INTERRUPT is always set. Hence, there is - * no SA_INTERRUPT flag. Unfortunately, there's also no SA_RESTART, so - * there's no way to suppress the interrupt. Sigh. - */ -#ifndef SA_INTERRUPT -#define SA_INTERRUPT 0 +#if !defined(HAVE_PSELECT) || defined(__OpenBSD__) +extern int pselect(int, fd_set * restrict, fd_set * restrict, + fd_set * restrict, const struct timespec * restrict, + const sigset_t * restrict); #endif -#ifndef SA_RESTART -#define SA_RESTART 0 + +#ifndef HAVE_FLOCK +extern int flock (int, int); #endif -extern char *strdup __P((const char *)); -extern int inet_aton __P((const char *, struct in_addr *)); -#endif /* ultrix */ +#ifndef HAVE_STRNLEN +extern size_t strnlen(const char *s, size_t n); +#endif -#ifdef BSD4_4 -#ifndef SA_INTERRUPT -#define SA_INTERRUPT 0 +#ifndef HAVE_STRLCPY +extern size_t strlcpy (char *, const char *, size_t); +#endif + +#ifndef HAVE_STRLCAT +extern size_t strlcat (char *, const char *, size_t); #endif -#endif /* BSD4_4 */ -#if defined(ultrix) || defined(_IBMR2) || defined(NEED_GETUSERSHELL) -extern char *getusershell __P((void)); #endif