diff options
-rw-r--r-- | configure.ac | 29 | ||||
-rw-r--r-- | headers.h | 87 | ||||
-rw-r--r-- | libsandbox/canonicalize.c | 14 | ||||
-rw-r--r-- | libsandbox/libsandbox.c | 15 | ||||
-rw-r--r-- | libsandbox/wrappers.c | 22 | ||||
-rw-r--r-- | libsbutil/get_sandbox_debug_log.c | 8 | ||||
-rw-r--r-- | libsbutil/get_sandbox_lib.c | 4 | ||||
-rw-r--r-- | libsbutil/get_sandbox_log.c | 8 | ||||
-rw-r--r-- | libsbutil/get_sandbox_rc.c | 4 | ||||
-rw-r--r-- | libsbutil/get_tmp_dir.c | 5 | ||||
-rw-r--r-- | libsbutil/include/rcscripts/rcutil.h | 7 | ||||
-rw-r--r-- | libsbutil/is_env_off.c | 5 | ||||
-rw-r--r-- | libsbutil/is_env_on.c | 5 | ||||
-rw-r--r-- | libsbutil/sb_close.c | 8 | ||||
-rw-r--r-- | libsbutil/sb_open.c | 8 | ||||
-rw-r--r-- | libsbutil/sb_read.c | 8 | ||||
-rw-r--r-- | libsbutil/sb_write.c | 8 | ||||
-rw-r--r-- | libsbutil/sbutil.h | 5 | ||||
-rw-r--r-- | libsbutil/src/config.c | 5 | ||||
-rw-r--r-- | libsbutil/src/debug.c | 9 | ||||
-rw-r--r-- | libsbutil/src/dynbuf.c | 7 | ||||
-rw-r--r-- | libsbutil/src/file.c | 11 | ||||
-rw-r--r-- | libsbutil/src/simple-regex.c | 6 | ||||
-rw-r--r-- | libsbutil/src/string.c | 4 | ||||
-rw-r--r-- | src/environ.c | 8 | ||||
-rw-r--r-- | src/sandbox.c | 12 |
26 files changed, 135 insertions, 177 deletions
diff --git a/configure.ac b/configure.ac index 9493fc6..92b0976 100644 --- a/configure.ac +++ b/configure.ac @@ -28,10 +28,30 @@ AC_FUNC_ALLOCA AC_HEADER_DIRENT AC_HEADER_STDC AC_HEADER_SYS_WAIT -AC_CHECK_HEADERS([ \ - fcntl.h limits.h memory.h stddef.h \ - stdlib.h string.h strings.h sys/file.h \ - sys/param.h sys/time.h unistd.h utime.h \ +AC_CHECK_HEADERS_ONCE([ \ + dirent.h \ + dlfcn.h \ + errno.h \ + fcntl.h \ + libgen.h \ + limits.h \ + memory.h \ + signal.h \ + stdarg.h \ + stddef.h \ + stdio.h \ + stdlib.h \ + string.h \ + strings.h \ + unistd.h \ + utime.h \ + sys/file.h \ + sys/mman.h \ + sys/param.h \ + sys/stat.h \ + sys/time.h \ + sys/types.h \ + sys/wait.h \ ]) dnl Checks for typedefs, structures, and compiler characteristics. @@ -149,6 +169,7 @@ AC_TRY_COMPILE([ ) AC_MSG_RESULT([$have_rtld_next]) if test x"$have_rtld_next" = xyes ; then + CPPFLAGS="$CPPFLAGS -D_GNU_SOURCE" AC_DEFINE([HAVE_RTLD_NEXT], [1], [Have RTLD_NEXT enabled libc]) fi diff --git a/headers.h b/headers.h new file mode 100644 index 0000000..237de25 --- /dev/null +++ b/headers.h @@ -0,0 +1,87 @@ +/* headers.h: include all system headers + * + * Copyright 1999-2008 Gentoo Foundation + * Licensed under the GPL-2 + */ + +#ifndef __SB_HEADERS_H__ +#define __SB_HEADERS_H__ + +#include "config.h" + +#ifdef HAVE_DIRENT_H +# include <dirent.h> +#endif +#ifdef HAVE_DLFCN_H +# include <dlfcn.h> +#endif +#ifdef HAVE_ERRNO_H +# include <errno.h> +#endif +#ifdef HAVE_FCNTL_H +# include <fcntl.h> +#endif +#ifdef HAVE_LIBGEN_H +# include <libgen.h> +#endif +#ifdef HAVE_LIMITS_H +# include <limits.h> +#endif +#ifdef HAVE_MEMORY_H +# include <memory.h> +#endif +#ifdef HAVE_SIGNAL_H +# include <signal.h> +#endif +#ifdef HAVE_STDARG_H +# include <stdarg.h> +#endif +#ifdef HAVE_STDDEF_H +# include <stddef.h> +#endif +#ifdef HAVE_STDIO_H +# include <stdio.h> +#endif +#ifdef HAVE_STDLIB_H +# include <stdlib.h> +#endif +#ifdef HAVE_STRING_H +# include <string.h> +#endif +#ifdef HAVE_STRINGS_H +# include <strings.h> +#endif +#ifdef HAVE_UNISTD_H +# include <unistd.h> +#endif +#ifdef HAVE_UTIME_H +# include <utime.h> +#endif + +#ifdef HAVE_SYS_FILE_H +# include <sys/file.h> +#endif +#ifdef HAVE_SYS_MMAN_H +# include <sys/mman.h> +#else +#error +#endif +#ifdef HAVE_SYS_PARAM_H +# include <sys/param.h> +#endif +#ifdef HAVE_SYS_STAT_H +# include <sys/stat.h> +#endif +#ifdef HAVE_SYS_TIME_H +# include <sys/time.h> +#endif +#ifdef HAVE_SYS_TYPES_H +# include <sys/types.h> +#endif +#ifdef HAVE_SYS_WAIT_H +# include <sys/wait.h> +#endif + +#include "localdecls.h" + +#endif diff --git a/libsandbox/canonicalize.c b/libsandbox/canonicalize.c index 0570d7d..73f2446 100644 --- a/libsandbox/canonicalize.c +++ b/libsandbox/canonicalize.c @@ -17,19 +17,7 @@ Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA. */ -#include <stdio.h> -#include <stdlib.h> -#include <string.h> -#include <unistd.h> -#include <limits.h> -#include <sys/param.h> -#include <sys/stat.h> -#include <errno.h> -#include <stddef.h> - -#include "config.h" -#include "localdecls.h" - +#include "headers.h" #include "sbutil.h" #include "libsandbox.h" diff --git a/libsandbox/libsandbox.c b/libsandbox/libsandbox.c index 49b4313..7efb98c 100644 --- a/libsandbox/libsandbox.c +++ b/libsandbox/libsandbox.c @@ -16,17 +16,7 @@ #define open xxx_open #define open64 xxx_open64 -#include <errno.h> -#include <libgen.h> -#include <limits.h> -#include <stdio.h> -#include <stdlib.h> -#include <string.h> -#include <sys/stat.h> -#include <sys/types.h> -#include <signal.h> -#include <unistd.h> -#include <fcntl.h> +#include "headers.h" #ifdef SB_MEM_DEBUG # include <mcheck.h> @@ -35,10 +25,7 @@ #undef open #undef open64 -#include "config.h" -#include "localdecls.h" #include "sbutil.h" - #include "libsandbox.h" #include "wrappers.h" diff --git a/libsandbox/wrappers.c b/libsandbox/wrappers.c index 051cdcb..8af83a2 100644 --- a/libsandbox/wrappers.c +++ b/libsandbox/wrappers.c @@ -10,27 +10,7 @@ * as some of the InstallWatch code was used. */ -#include "config.h" - -/* Better way would be to only define _GNU_SOURCE when __GLIBC__ is defined, - * but including features.h and then defining _GNU_SOURCE do not work */ -#if defined(HAVE_RTLD_NEXT) -# define _GNU_SOURCE -#endif -#include <errno.h> -#include <dlfcn.h> -#include <stdarg.h> -#include <stdio.h> -#include <stdlib.h> -#include <string.h> -#include <limits.h> -#include <sys/types.h> -#include <sys/stat.h> -#include <dirent.h> -#include <unistd.h> -#include <fcntl.h> - -#include "localdecls.h" +#include "headers.h" #include "sbutil.h" #include "libsandbox.h" #include "wrappers.h" diff --git a/libsbutil/get_sandbox_debug_log.c b/libsbutil/get_sandbox_debug_log.c index 2f7442a..6a1b4fa 100644 --- a/libsbutil/get_sandbox_debug_log.c +++ b/libsbutil/get_sandbox_debug_log.c @@ -10,13 +10,7 @@ * Copyright (C) 2002 Brad House <brad@mainstreetsoftworks.com> */ -#include <errno.h> -#include <stdio.h> -#include <stdlib.h> -#include <string.h> -#include <sys/types.h> -#include <unistd.h> - +#include "headers.h" #include "sbutil.h" void get_sandbox_debug_log(char *path) diff --git a/libsbutil/get_sandbox_lib.c b/libsbutil/get_sandbox_lib.c index 375282c..762ed1d 100644 --- a/libsbutil/get_sandbox_lib.c +++ b/libsbutil/get_sandbox_lib.c @@ -10,9 +10,7 @@ * Copyright (C) 2002 Brad House <brad@mainstreetsoftworks.com> */ -#include <errno.h> -#include <stdio.h> - +#include "headers.h" #include "sbutil.h" void get_sandbox_lib(char *path) diff --git a/libsbutil/get_sandbox_log.c b/libsbutil/get_sandbox_log.c index 77f1208..2811737 100644 --- a/libsbutil/get_sandbox_log.c +++ b/libsbutil/get_sandbox_log.c @@ -10,13 +10,7 @@ * Copyright (C) 2002 Brad House <brad@mainstreetsoftworks.com> */ -#include <errno.h> -#include <stdio.h> -#include <stdlib.h> -#include <string.h> -#include <sys/types.h> -#include <unistd.h> - +#include "headers.h" #include "sbutil.h" void get_sandbox_log(char *path) diff --git a/libsbutil/get_sandbox_rc.c b/libsbutil/get_sandbox_rc.c index cdbdb73..ba383e3 100644 --- a/libsbutil/get_sandbox_rc.c +++ b/libsbutil/get_sandbox_rc.c @@ -10,9 +10,7 @@ * Copyright (C) 2002 Brad House <brad@mainstreetsoftworks.com> */ -#include <errno.h> -#include <stdio.h> - +#include "headers.h" #include "sbutil.h" void get_sandbox_rc(char *path) diff --git a/libsbutil/get_tmp_dir.c b/libsbutil/get_tmp_dir.c index 75ee40f..0421492 100644 --- a/libsbutil/get_tmp_dir.c +++ b/libsbutil/get_tmp_dir.c @@ -10,10 +10,7 @@ * Copyright (C) 2002 Brad House <brad@mainstreetsoftworks.com> */ -#include <errno.h> -#include <limits.h> -#include <stdlib.h> - +#include "headers.h" #include "sbutil.h" int get_tmp_dir(char *path) diff --git a/libsbutil/include/rcscripts/rcutil.h b/libsbutil/include/rcscripts/rcutil.h index 516d41e..c33f60e 100644 --- a/libsbutil/include/rcscripts/rcutil.h +++ b/libsbutil/include/rcscripts/rcutil.h @@ -10,13 +10,6 @@ #ifndef __RCUTIL_H__ #define __RCUTIL_H__ -#include <stddef.h> -#include <sys/types.h> - -#ifdef HAVE_CONFIG_H -# include "config.h" -#endif - #include "rcscripts/rctypes.h" #include "rcscripts/util/debug.h" #include "rcscripts/util/string.h" diff --git a/libsbutil/is_env_off.c b/libsbutil/is_env_off.c index e8cd977..3eb56f4 100644 --- a/libsbutil/is_env_off.c +++ b/libsbutil/is_env_off.c @@ -7,10 +7,7 @@ * Licensed under the GPL-2 */ -#include <errno.h> -#include <stdlib.h> -#include <string.h> - +#include "headers.h" #include "sbutil.h" bool is_env_off (const char *env) diff --git a/libsbutil/is_env_on.c b/libsbutil/is_env_on.c index 9736779..4d68b3d 100644 --- a/libsbutil/is_env_on.c +++ b/libsbutil/is_env_on.c @@ -7,10 +7,7 @@ * Licensed under the GPL-2 */ -#include <errno.h> -#include <stdlib.h> -#include <string.h> - +#include "headers.h" #include "sbutil.h" bool is_env_on (const char *env) diff --git a/libsbutil/sb_close.c b/libsbutil/sb_close.c index 3d9c023..003f9ad 100644 --- a/libsbutil/sb_close.c +++ b/libsbutil/sb_close.c @@ -7,15 +7,9 @@ * Licensed under the GPL-2 */ -#include <errno.h> -#include <stdio.h> -#include <sys/stat.h> -#include <unistd.h> -#include <fcntl.h> - +#include "headers.h" #include "sbutil.h" - /* General purpose function to _reliably_ close a file * * Returns 0 if successful or negative number on error (and errno set) diff --git a/libsbutil/sb_open.c b/libsbutil/sb_open.c index 2d9c403..2e405c6 100644 --- a/libsbutil/sb_open.c +++ b/libsbutil/sb_open.c @@ -7,15 +7,9 @@ * Licensed under the GPL-2 */ -#include <errno.h> -#include <stdio.h> -#include <sys/stat.h> -#include <unistd.h> -#include <fcntl.h> - +#include "headers.h" #include "sbutil.h" - static int (*sbio_open)(const char *, int, mode_t) = (void *)open; diff --git a/libsbutil/sb_read.c b/libsbutil/sb_read.c index 43fe3c7..5374576 100644 --- a/libsbutil/sb_read.c +++ b/libsbutil/sb_read.c @@ -7,15 +7,9 @@ * Licensed under the GPL-2 */ -#include <errno.h> -#include <stdio.h> -#include <sys/stat.h> -#include <unistd.h> -#include <fcntl.h> - +#include "headers.h" #include "sbutil.h" - /* General purpose function to _reliably_ read from a file. * * Returns total read bytes or -1 on error. diff --git a/libsbutil/sb_write.c b/libsbutil/sb_write.c index 32f52f1..3979c8c 100644 --- a/libsbutil/sb_write.c +++ b/libsbutil/sb_write.c @@ -7,15 +7,9 @@ * Licensed under the GPL-2 */ -#include <errno.h> -#include <stdio.h> -#include <sys/stat.h> -#include <unistd.h> -#include <fcntl.h> - +#include "headers.h" #include "sbutil.h" - /* General purpose function to _reliably_ write to a file * * If returned value is less than count, there was a fatal diff --git a/libsbutil/sbutil.h b/libsbutil/sbutil.h index 068f77b..6195b35 100644 --- a/libsbutil/sbutil.h +++ b/libsbutil/sbutil.h @@ -13,10 +13,7 @@ #ifndef __SBUTIL_H__ #define __SBUTIL_H__ -#include <limits.h> - -#include "config.h" -#include "localdecls.h" +#include "headers.h" #include "include/rcscripts/rcutil.h" #define SANDBOX_CONF_FILE ETCDIR "/sandbox.conf" diff --git a/libsbutil/src/config.c b/libsbutil/src/config.c index 3f4e6e1..664ec2a 100644 --- a/libsbutil/src/config.c +++ b/libsbutil/src/config.c @@ -8,10 +8,7 @@ * Licensed under the GPL-2 */ -#include <errno.h> -#include <string.h> -#include <stdlib.h> - +#include "headers.h" #include "rcscripts/rcutil.h" /* This handles simple 'entry="bar"' type variables. If it is more complex diff --git a/libsbutil/src/debug.c b/libsbutil/src/debug.c index 1d84b74..26f926a 100644 --- a/libsbutil/src/debug.c +++ b/libsbutil/src/debug.c @@ -8,14 +8,7 @@ * Licensed under the GPL-2 */ -#include <errno.h> -#include <stdarg.h> -#include <stdio.h> -#include <stdlib.h> -#include <string.h> -#include <unistd.h> -#include <fcntl.h> - +#include "headers.h" #include "rcscripts/rcutil.h" volatile static bool debug_enabled = TRUE; diff --git a/libsbutil/src/dynbuf.c b/libsbutil/src/dynbuf.c index 16bbdcc..c9186a7 100644 --- a/libsbutil/src/dynbuf.c +++ b/libsbutil/src/dynbuf.c @@ -8,12 +8,7 @@ * Licensed under the GPL-2 */ -#include <stdarg.h> -#include <stdio.h> -#include <stdlib.h> -#include <string.h> -#include <unistd.h> - +#include "headers.h" #include "rcscripts/rcutil.h" #define DYNAMIC_BUFFER_SIZE (sizeof (char) * 2 * 1024) diff --git a/libsbutil/src/file.c b/libsbutil/src/file.c index c94cae1..5956406 100644 --- a/libsbutil/src/file.c +++ b/libsbutil/src/file.c @@ -8,16 +8,7 @@ * Licensed under the GPL-2 */ -#include <errno.h> -#include <string.h> -#include <stdlib.h> -#include <sys/mman.h> -#include <sys/types.h> -#include <sys/stat.h> -#include <dirent.h> -#include <unistd.h> -#include <fcntl.h> - +#include "headers.h" #include "rcscripts/rcutil.h" bool diff --git a/libsbutil/src/simple-regex.c b/libsbutil/src/simple-regex.c index 0e0020b..61eff6d 100644 --- a/libsbutil/src/simple-regex.c +++ b/libsbutil/src/simple-regex.c @@ -49,11 +49,7 @@ * */ -#include <errno.h> -#include <stdio.h> -#include <stdlib.h> -#include <string.h> - +#include "headers.h" #include "rcscripts/rcutil.h" /* Macro to check if a regex_data_t pointer is valid */ diff --git a/libsbutil/src/string.c b/libsbutil/src/string.c index 3e23417..4ebb61c 100644 --- a/libsbutil/src/string.c +++ b/libsbutil/src/string.c @@ -8,9 +8,7 @@ * Licensed under the GPL-2 */ -#include <string.h> -#include <stdlib.h> - +#include "headers.h" #include "rcscripts/rcutil.h" char * diff --git a/src/environ.c b/src/environ.c index 369ff02..67b3413 100644 --- a/src/environ.c +++ b/src/environ.c @@ -7,13 +7,7 @@ * Licensed under the GPL-2 */ -#include <errno.h> -#include <stdio.h> -#include <stdlib.h> -#include <string.h> -#include <sys/types.h> -#include <unistd.h> - +#include "headers.h" #include "sbutil.h" #include "sandbox.h" diff --git a/src/sandbox.c b/src/sandbox.c index 79fbe93..e40ebc3 100644 --- a/src/sandbox.c +++ b/src/sandbox.c @@ -11,17 +11,7 @@ * Copyright (C) 2002 Brad House <brad@mainstreetsoftworks.com> */ -#include <errno.h> -#include <signal.h> -#include <stdio.h> -#include <stdlib.h> -#include <limits.h> -#include <string.h> -#include <sys/wait.h> -#include <signal.h> -#include <unistd.h> -#include <fcntl.h> - +#include "headers.h" #include "sbutil.h" #include "sandbox.h" |