Travis Cross d2edcad66e Merge Phil Zimmermann's libzrtp as a FreeSWITCH library
Thanks to Phil Zimmermann for the code and for the license exception
we needed to include it.

There remains some build system integration work to be done before
this code will build properly in the FreeSWITCH tree.
2012-03-31 23:42:27 +00:00

54 lines
1.9 KiB
C

/*
* Copyright (c) 1995 Colin Plumb. All rights reserved.
* For licensing and other legal details, see the file legal.c.
*
* This file includes <unistd.h>, if it's available, and
* declares a bunch of functions with "traditional" values if not.
* The GNU Libc Manual (node "Version Supported") says this is impossible;
* I wonder what they think of this.
*/
#include <limits.h>
/*
* See if this is a POSIX <limits.h>. A POSIX system *may* define
* a macro for ARG_MAX, but it may instead defined _SC_ARG_MAX
* in <unistd.h> and require you yo use sysconf() to get the value.
* However, a POSIX system is supposed to defined _POSIX_ARG_MAX
* in <limits.h> with the value of 4096, the POSIX-mandated lower
* bound on ARG_MAX or sysconf(_SC_ARG_MAX).
* A POSIX system is supposed to define most of these, so checking for
* them *all* is overkill, but it's easy enough...
*/
#ifndef HAVE_UNISTD_H
#ifdef __POSIX__ /* Defined by GCC on POSIX systems */
#define HAVE_UNISTD_H 1
#elif defined(_POSIX_ARG_MAX) || defined(_POSIX_CHILD_MAX)
#define HAVE_UNISTD_H 1
#elif defined(_POSIX_LINK_MAX) || defined(_POSIX_MAX_CANON)
#define HAVE_UNISTD_H 1
#elif defined(_POSIX_MAX_INPUT) || defined(_POSIX_NAME_MAX)
#define HAVE_UNISTD_H 1
#elif defined(_POSIX_NGROUPS_MAX) || defined(_POSIX_OPEN_MAX)
#define HAVE_UNISTD_H 1
#elif defined(_POSIX_PATH_MAX) || defined(_POSIX_PIPE_BUF)
#define HAVE_UNISTD_H 1
#elif defined(_POSIX_RE_DUP_MAX) || defined(_POSIX_SSIZE_MAX)
#define HAVE_UNISTD_H 1
#elif defined(_POSIX_STREAM_MAX) || defined (_POSIX_TZNAME_MAX)
#define HAVE_UNISTD_H 1
#endif
#endif
#if HAVE_UNISTD_H
#include <unistd.h>
#elif defined(MSDOS)
#include <io.h> /* Where MSDOS keeps such things */
#else
/* Not POSIX - declare the portions of <unistd.h> we need manually. */
int ioctl(int fd, int request, void *arg);
int isatty(int fd);
int read(int fd, void *buf, int nbytes);
unsigned sleep(unsigned seconds);
#endif