diff --git a/include/stdlib.h b/include/stdlib.h index 5c8e4e363ef0..cd157064a058 100644 --- a/include/stdlib.h +++ b/include/stdlib.h @@ -164,6 +164,18 @@ int setenv(const char *, const char *, int); int unsetenv(const char *); #endif +#if __POSIX_VISIBLE >= 200809 || __XSI_VISIBLE +int getsubopt(char **, char *const *, char **); +#ifndef _MKDTEMP_DECLARED +char *mkdtemp(char *); +#define _MKDTEMP_DECLARED +#endif +#ifndef _MKSTEMP_DECLARED +int mkstemp(char *); +#define _MKSTEMP_DECLARED +#endif +#endif /* __POSIX_VISIBLE >= 200809 || __XSI_VISIBLE */ + /* * The only changes to the XSI namespace in revision 6 were the deletion * of the ttyslot() and valloc() functions, which FreeBSD never declared @@ -178,18 +190,13 @@ double drand48(void); double erand48(unsigned short[3]); /* char *fcvt(double, int, int * __restrict, int * __restrict); */ /* char *gcvt(double, int, int * __restrict, int * __restrict); */ -int getsubopt(char **, char *const *, char **); int grantpt(int); char *initstate(unsigned long /* XSI requires u_int */, char *, long); long jrand48(unsigned short[3]); char *l64a(long); void lcong48(unsigned short[7]); long lrand48(void); -#ifndef _MKSTEMP_DECLARED -int mkstemp(char *); -#define _MKSTEMP_DECLARED -#endif -#ifndef _MKTEMP_DECLARED +#if !defined(_MKTEMP_DECLARED) && __XSI_VISIBLE <= 600 char *mktemp(char *); #define _MKTEMP_DECLARED #endif