From ca28f28046b2cc4beb38cb4b63c75f0ac6379bcd Mon Sep 17 00:00:00 2001 From: Guillem Jover Date: Fri, 11 Dec 2009 23:21:14 +0100 Subject: Move setmode and getmode declarations to This is were they are located on the BSDs. --- Makefile | 1 + include/bsd/stdlib.h | 10 +++------- include/bsd/unistd.h | 42 ++++++++++++++++++++++++++++++++++++++++++ 3 files changed, 46 insertions(+), 7 deletions(-) create mode 100644 include/bsd/unistd.h diff --git a/Makefile b/Makefile index 606242a..91893e7 100644 --- a/Makefile +++ b/Makefile @@ -62,6 +62,7 @@ LIB_INCLUDES := \ bsd/bsd.h \ bsd/stdlib.h \ bsd/readpassphrase.h \ + bsd/unistd.h \ nlist.h \ vis.h \ libutil.h diff --git a/include/bsd/stdlib.h b/include/bsd/stdlib.h index 2357334..e2a678a 100644 --- a/include/bsd/stdlib.h +++ b/include/bsd/stdlib.h @@ -37,6 +37,9 @@ /* For compatibility with NetBSD, which defines humanize_number here. */ #include +/* FIXME: Temporary inclusion to avoid API breakage, will be removed soon. */ +#include + __BEGIN_DECLS u_int32_t arc4random(); void arc4random_stir(); @@ -51,13 +54,6 @@ void setprogname (char *); int heapsort (void *, size_t, size_t, int (*)(const void *, const void *)); -#ifndef S_ISTXT -#define S_ISTXT S_ISVTX -#endif - -mode_t getmode(const void *set, mode_t mode); -void *setmode(const char *mode_str); - long long strtonum(const char *nptr, long long minval, long long maxval, const char **errstr); __END_DECLS diff --git a/include/bsd/unistd.h b/include/bsd/unistd.h new file mode 100644 index 0000000..16855ec --- /dev/null +++ b/include/bsd/unistd.h @@ -0,0 +1,42 @@ +/* + * Copyright © 2008, 2009 Guillem Jover + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * 3. The name of the author may not be used to endorse or promote products + * derived from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, + * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY + * AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL + * THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; + * OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, + * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR + * OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF + * ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +#ifndef LIBBSD_UNISTD_H +#define LIBBSD_UNISTD_H + +#include +#include + +#ifndef S_ISTXT +#define S_ISTXT S_ISVTX +#endif + +__BEGIN_DECLS +mode_t getmode(const void *set, mode_t mode); +void *setmode(const char *mode_str); +__END_DECLS + +#endif -- cgit v1.2.3