]> git.ipfire.org Git - thirdparty/Python/cpython.git/commitdiff
gh-106881: Check for linux/limits.h before including it (#107397)
authorjustdan6 <134341009+justdan6@users.noreply.github.com>
Fri, 28 Jul 2023 22:08:43 +0000 (16:08 -0600)
committerGitHub <noreply@github.com>
Fri, 28 Jul 2023 22:08:43 +0000 (15:08 -0700)
* Check for linux/limits.h before including it

Co-authored-by: Erlend E. Aasland <erlend.aasland@protonmail.com>
Misc/NEWS.d/next/Build/2023-07-28-18-17-33.gh-issue-106881.U3Ezdq.rst [new file with mode: 0644]
Modules/posixmodule.c
configure
configure.ac
pyconfig.h.in

diff --git a/Misc/NEWS.d/next/Build/2023-07-28-18-17-33.gh-issue-106881.U3Ezdq.rst b/Misc/NEWS.d/next/Build/2023-07-28-18-17-33.gh-issue-106881.U3Ezdq.rst
new file mode 100644 (file)
index 0000000..40b2609
--- /dev/null
@@ -0,0 +1 @@
+Check for `linux/limits.h` before including it in `Modules/posixmodule.c`.
index bab2ac2ccf59f08f9f536afb8b5a0860bef95df2..a42e41c081e5b787f20c84dcf2ed56394712d869 100644 (file)
@@ -285,7 +285,7 @@ corresponding Unix manual entries for more information on calls.");
 #  undef HAVE_SCHED_SETAFFINITY
 #endif
 
-#if defined(HAVE_SYS_XATTR_H) && defined(__linux__) && !defined(__FreeBSD_kernel__) && !defined(__GNU__)
+#if defined(HAVE_SYS_XATTR_H) && defined(HAVE_LINUX_LIMITS_H) && !defined(__FreeBSD_kernel__) && !defined(__GNU__)
 #  define USE_XATTRS
 #  include <linux/limits.h>  // Needed for XATTR_SIZE_MAX on musl libc.
 #endif
index 18d404c8dc060506b647af34bc84249956b83bc8..80b4a001c6d6d799ea7fdcf17147bdc9b0e15e40 100755 (executable)
--- a/configure
+++ b/configure
@@ -10549,6 +10549,12 @@ if test "x$ac_cv_header_linux_fs_h" = xyes
 then :
   printf "%s\n" "#define HAVE_LINUX_FS_H 1" >>confdefs.h
 
+fi
+ac_fn_c_check_header_compile "$LINENO" "linux/limits.h" "ac_cv_header_linux_limits_h" "$ac_includes_default"
+if test "x$ac_cv_header_linux_limits_h" = xyes
+then :
+  printf "%s\n" "#define HAVE_LINUX_LIMITS_H 1" >>confdefs.h
+
 fi
 ac_fn_c_check_header_compile "$LINENO" "linux/memfd.h" "ac_cv_header_linux_memfd_h" "$ac_includes_default"
 if test "x$ac_cv_header_linux_memfd_h" = xyes
index cdb88a3071976c0c47a1b3a739c04bec125922c1..8a84eaf6b370a102c03a9449ce19087dc20ad79e 100644 (file)
@@ -2848,7 +2848,7 @@ AC_DEFINE([STDC_HEADERS], [1],
 # checks for header files
 AC_CHECK_HEADERS([ \
   alloca.h asm/types.h bluetooth.h conio.h direct.h dlfcn.h endian.h errno.h fcntl.h grp.h \
-  ieeefp.h io.h langinfo.h libintl.h libutil.h linux/auxvec.h sys/auxv.h linux/fs.h linux/memfd.h \
+  ieeefp.h io.h langinfo.h libintl.h libutil.h linux/auxvec.h sys/auxv.h linux/fs.h linux/limits.h linux/memfd.h \
   linux/random.h linux/soundcard.h \
   linux/tipc.h linux/wait.h netdb.h net/ethernet.h netinet/in.h netpacket/packet.h poll.h process.h pthread.h pty.h \
   sched.h setjmp.h shadow.h signal.h spawn.h stropts.h sys/audioio.h sys/bsdtty.h sys/devpoll.h \
index 0828dc8d4b58cd696b36846b9cadfa4bd17af6f4..dab8ebf64371f344806212c054c90abaa7f2dba2 100644 (file)
 /* Define to 1 if you have the <linux/fs.h> header file. */
 #undef HAVE_LINUX_FS_H
 
+/* Define to 1 if you have the <linux/limits.h> header file. */
+#undef HAVE_LINUX_LIMITS_H
+
 /* Define to 1 if you have the <linux/memfd.h> header file. */
 #undef HAVE_LINUX_MEMFD_H