summaryrefslogtreecommitdiff
path: root/config.h.in
diff options
context:
space:
mode:
Diffstat (limited to 'config.h.in')
-rw-r--r--config.h.in68
1 files changed, 63 insertions, 5 deletions
diff --git a/config.h.in b/config.h.in
index c9c024a15..ba4d00056 100644
--- a/config.h.in
+++ b/config.h.in
@@ -298,6 +298,9 @@
/* Define to 1 if you have the `fchmodat' function. */
#undef HAVE_FCHMODAT
+/* Define to 1 if you have the `fchownat' function. */
+#undef HAVE_FCHOWNAT
+
/* Define to 1 if your system has the F_CLOSEM fcntl. */
#undef HAVE_FCNTL_CLOSEM
@@ -599,11 +602,17 @@
/* Define to 1 if you have the `mkdirat' function. */
#undef HAVE_MKDIRAT
-/* Define to 1 if you have the `mkdtemp' function. */
-#undef HAVE_MKDTEMP
+/* Define to 1 if you have the `mkdtempat' function. */
+#undef HAVE_MKDTEMPAT
+
+/* Define to 1 if you have the `mkdtempat_np' function. */
+#undef HAVE_MKDTEMPAT_NP
+
+/* Define to 1 if you have the `mkostempsat' function. */
+#undef HAVE_MKOSTEMPSAT
-/* Define to 1 if you have the `mkstemps' function. */
-#undef HAVE_MKSTEMPS
+/* Define to 1 if you have the `mkostempsat_np' function. */
+#undef HAVE_MKOSTEMPSAT_NP
/* Define to 1 if you have the <mps/ldap_ssl.h> header file. */
#undef HAVE_MPS_LDAP_SSL_H
@@ -686,6 +695,9 @@
/* Define to 1 if you have the `priv_set' function. */
#undef HAVE_PRIV_SET
+/* Define to 1 if you have the `process_vm_readv' function. */
+#undef HAVE_PROCESS_VM_READV
+
/* Define to 1 if you have the <procfs.h> header file. */
#undef HAVE_PROCFS_H
@@ -1448,7 +1460,53 @@
code using `volatile' can become incorrect without. Disable with care. */
#undef volatile
-/* Symbol visibility controls */
+#ifndef __GNUC_PREREQ__
+# ifdef __GNUC__
+# define __GNUC_PREREQ__(ma, mi) \
+ ((__GNUC__ > (ma)) || (__GNUC__ == (ma) && __GNUC_MINOR__ >= (mi)))
+# else
+# define __GNUC_PREREQ__(ma, mi) 0
+# endif
+#endif
+
+/* Define away __attribute__ for non-gcc or old gcc. */
+#if !defined(__attribute__) && !__GNUC_PREREQ__(2, 5)
+# define __attribute__(x)
+#endif
+
+/* For functions that call exit() directly. */
+#if __GNUC_PREREQ__(2, 5)
+# define sudo_noreturn __attribute__((__noreturn__))
+#else
+# define sudo_noreturn
+#endif
+
+/* For malloc-like functions that return uninitialized or zeroed memory. */
+#if __GNUC_PREREQ__(2, 96)
+# define sudo_malloclike __attribute__((__malloc__))
+#else
+# define sudo_malloclike
+#endif
+
+/* Compile-time checking for function arguments that must not be NULL. */
+#if __GNUC_PREREQ__(3, 3)
+# define sudo_attr_nonnull(_a) __attribute__((__nonnull__ (_a)))
+#else
+# define sudo_attr_nonnull(_a)
+#endif
+
+/* For catching format string mismatches. */
+#if __GNUC_PREREQ__(2, 7)
+# define sudo_printflike(_f, _v) __attribute__((__format__ (__printf__, _f, _v))) sudo_attr_nonnull(_f)
+# define sudo_printf0like(_f, _v) __attribute__((__format__ (__printf__, _f, _v)))
+# define sudo_attr_fmt_arg(_f) __attribute__((__format_arg__ (_f)))
+#else
+# define sudo_printflike(_f, _v)
+# define sudo_printf0like(_f, _v)
+# define sudo_attr_fmt_arg(_f)
+#endif
+
+/* Symbol visibility controls. */
#ifdef HAVE_DSO_VISIBILITY
# if defined(__GNUC__)
# define sudo_dso_public __attribute__((__visibility__("default")))