diff --git a/package/linux-pam/0001-build-consistently-include-config.h-first.patch b/package/linux-pam/0001-build-consistently-include-config.h-first.patch new file mode 100644 index 0000000000..e9f36b8a60 --- /dev/null +++ b/package/linux-pam/0001-build-consistently-include-config.h-first.patch @@ -0,0 +1,180 @@ +From cdba2c8cdba9b3500595624fb375c0dda266631b Mon Sep 17 00:00:00 2001 +From: "Dmitry V. Levin" +Date: Fri, 30 Aug 2024 08:00:00 +0000 +Subject: [PATCH] build: consistently include config.h first + +Make sure that config.h is included before any system header. + +Upstream: https://github.com/linux-pam/linux-pam/commit/5d7eefb1883c557c7a027f68e966e2fae294a9b6 +Signed-off-by: Thomas Petazzoni +--- + libpam/pam_prelude.c | 8 ++++---- + modules/pam_namespace/argv_parse.c | 2 ++ + modules/pam_setquota/pam_setquota.c | 3 ++- + modules/pam_timestamp/sha1.c | 2 +- + modules/pam_unix/audit.c | 3 +-- + modules/pam_unix/bigcrypt_main.c | 2 ++ + modules/pam_unix/md5.c | 4 ++-- + modules/pam_unix/md5_crypt.c | 2 +- + modules/pam_unix/yppasswd.h | 2 ++ + 9 files changed, 17 insertions(+), 11 deletions(-) + +diff --git a/libpam/pam_prelude.c b/libpam/pam_prelude.c +index 6c73bf5d..c62e2f2c 100644 +--- a/libpam/pam_prelude.c ++++ b/libpam/pam_prelude.c +@@ -5,17 +5,17 @@ + * (C) Sebastien Tricaud 2005 + */ + +-#include +-#include +- + #ifdef PRELUDE + ++#include "pam_private.h" ++ ++#include ++#include + #include + #include + #include + + #include "pam_prelude.h" +-#include "pam_private.h" + + + #define ANALYZER_CLASS "pam" +diff --git a/modules/pam_namespace/argv_parse.c b/modules/pam_namespace/argv_parse.c +index ac7c9ae0..cbae7831 100644 +--- a/modules/pam_namespace/argv_parse.c ++++ b/modules/pam_namespace/argv_parse.c +@@ -28,6 +28,8 @@ + * Version 1.1, modified 2/27/1999 + */ + ++#include "config.h" ++ + #include + #include + #include +diff --git a/modules/pam_setquota/pam_setquota.c b/modules/pam_setquota/pam_setquota.c +index c15fc669..73445e29 100644 +--- a/modules/pam_setquota/pam_setquota.c ++++ b/modules/pam_setquota/pam_setquota.c +@@ -8,6 +8,8 @@ + Copyright © 2016 Keller Fuchs + */ + ++#include "pam_inline.h" ++ + #include + #include + #include +@@ -22,7 +24,6 @@ + #include + #include + #include +-#include "pam_inline.h" + + #ifndef PATH_LOGIN_DEFS + # define PATH_LOGIN_DEFS "/etc/login.defs" +diff --git a/modules/pam_timestamp/sha1.c b/modules/pam_timestamp/sha1.c +index dff454cf..f21b2870 100644 +--- a/modules/pam_timestamp/sha1.c ++++ b/modules/pam_timestamp/sha1.c +@@ -37,6 +37,7 @@ + */ + /* See http://www.itl.nist.gov/fipspubs/fip180-1.htm for descriptions. */ + ++#include "pam_inline.h" + #include + #include + #include +@@ -47,7 +48,6 @@ + #include + #include + #include "sha1.h" +-#include "pam_inline.h" + + static const unsigned char + padding[SHA1_BLOCK_SIZE] = { +diff --git a/modules/pam_unix/audit.c b/modules/pam_unix/audit.c +index 1547a652..9513aaa9 100644 +--- a/modules/pam_unix/audit.c ++++ b/modules/pam_unix/audit.c +@@ -1,5 +1,3 @@ +-#include "audit.h" +- + #include "config.h" + + #ifdef HAVE_LIBAUDIT +@@ -11,6 +9,7 @@ + + #include + ++#include "audit.h" + #include "passverify.h" + + int audit_log(int type, const char *uname, int retval) +diff --git a/modules/pam_unix/bigcrypt_main.c b/modules/pam_unix/bigcrypt_main.c +index fab212d9..22d325da 100644 +--- a/modules/pam_unix/bigcrypt_main.c ++++ b/modules/pam_unix/bigcrypt_main.c +@@ -1,3 +1,5 @@ ++#include "config.h" ++ + #include + #include + +diff --git a/modules/pam_unix/md5.c b/modules/pam_unix/md5.c +index 95b8de4c..78e9af27 100644 +--- a/modules/pam_unix/md5.c ++++ b/modules/pam_unix/md5.c +@@ -18,11 +18,11 @@ + * + */ + ++#include "pam_inline.h" ++ + #include + #include "md5.h" + +-#include "pam_inline.h" +- + #ifndef HIGHFIRST + #define byteReverse(buf, len) /* Nothing */ + #else +diff --git a/modules/pam_unix/md5_crypt.c b/modules/pam_unix/md5_crypt.c +index 9a6bd4f9..9451f376 100644 +--- a/modules/pam_unix/md5_crypt.c ++++ b/modules/pam_unix/md5_crypt.c +@@ -12,11 +12,11 @@ + * + */ + ++#include "pam_inline.h" + #include + #include + #include + #include "md5.h" +-#include "pam_inline.h" + + static const unsigned char itoa64[] = /* 0 ... 63 => ascii - 64 */ + "./0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz"; +diff --git a/modules/pam_unix/yppasswd.h b/modules/pam_unix/yppasswd.h +index dc686cd7..3a40c3ea 100644 +--- a/modules/pam_unix/yppasswd.h ++++ b/modules/pam_unix/yppasswd.h +@@ -6,6 +6,8 @@ + #ifndef _YPPASSWD_H_RPCGEN + #define _YPPASSWD_H_RPCGEN + ++#include "config.h" ++ + #include + + +-- +2.47.1 +