From 44b8f7b3ef9efec1c3ee03a1220c86d10bbf0b10 Mon Sep 17 00:00:00 2001 From: Alejandro Colomar Date: Tue, 28 Nov 2023 02:27:08 +0100 Subject: [PATCH] lib/attr.h, lib/, src/: Move attributes to new header file Signed-off-by: Alejandro Colomar --- lib/Makefile.am | 1 + lib/agetpass.h | 1 + lib/alloc.h | 1 + lib/attr.h | 25 +++++++++++++++++++++++++ lib/audit_help.c | 2 ++ lib/cleanup_group.c | 1 + lib/cleanup_user.c | 1 + lib/copydir.c | 1 + lib/defines.h | 17 ----------------- lib/getdate.y | 1 + lib/logind.c | 1 + lib/loginprompt.c | 1 + lib/obscure.c | 1 + lib/pam_pass_non_interactive.c | 1 + lib/prototypes.h | 1 + lib/pwdcheck.c | 2 ++ lib/semanage.c | 4 ++++ lib/sprintf.h | 1 + lib/stpeprintf.h | 1 + src/expiry.c | 2 ++ src/gpasswd.c | 1 + src/grpconv.c | 1 + src/grpunconv.c | 2 ++ src/login.c | 1 + src/su.c | 1 + src/sulogin.c | 1 + 26 files changed, 56 insertions(+), 17 deletions(-) create mode 100644 lib/attr.h diff --git a/lib/Makefile.am b/lib/Makefile.am index bfe13c33b..36e04014d 100644 --- a/lib/Makefile.am +++ b/lib/Makefile.am @@ -28,6 +28,7 @@ libshadow_la_SOURCES = \ agetpass.h \ alloc.c \ alloc.h \ + attr.h \ audit_help.c \ basename.c \ bit.c \ diff --git a/lib/agetpass.h b/lib/agetpass.h index d3613c157..1ee6a1070 100644 --- a/lib/agetpass.h +++ b/lib/agetpass.h @@ -10,6 +10,7 @@ #include +#include "attr.h" #include "defines.h" diff --git a/lib/alloc.h b/lib/alloc.h index dddb7a087..0e0488494 100644 --- a/lib/alloc.h +++ b/lib/alloc.h @@ -17,6 +17,7 @@ #include #include +#include "attr.h" #include "defines.h" diff --git a/lib/attr.h b/lib/attr.h new file mode 100644 index 000000000..56a2e0c9d --- /dev/null +++ b/lib/attr.h @@ -0,0 +1,25 @@ +#ifndef SHADOW_INCLUDE_LIB_ATTR_H_ +#define SHADOW_INCLUDE_LIB_ATTR_H_ + + +#include "config.h" + + +#if defined(__GNUC__) +# define unused __attribute__((unused)) +# define NORETURN __attribute__((__noreturn__)) +# define format_attr(type, fmt, va) __attribute__((format(type, fmt, va))) +#else +# define unused +# define NORETURN +# define format_attr(type, fmt, va) +#endif + +#if (__GNUC__ >= 11) && !defined(__clang__) +# define ATTR_MALLOC(deallocator) [[gnu::malloc(deallocator)]] +#else +# define ATTR_MALLOC(deallocator) +#endif + + +#endif // include guard diff --git a/lib/audit_help.c b/lib/audit_help.c index 8c772a9db..060814399 100644 --- a/lib/audit_help.c +++ b/lib/audit_help.c @@ -21,6 +21,8 @@ #include #include #include + +#include "attr.h" #include "prototypes.h" #include "shadowlog.h" int audit_fd; diff --git a/lib/cleanup_group.c b/lib/cleanup_group.c index d2a08fc77..5da38de47 100644 --- a/lib/cleanup_group.c +++ b/lib/cleanup_group.c @@ -9,6 +9,7 @@ #include #include +#include "attr.h" #include "defines.h" #include "groupio.h" #include "sgroupio.h" diff --git a/lib/cleanup_user.c b/lib/cleanup_user.c index da9260e59..ec8681ee5 100644 --- a/lib/cleanup_user.c +++ b/lib/cleanup_user.c @@ -9,6 +9,7 @@ #include #include +#include "attr.h" #include "defines.h" #include "pwio.h" #include "shadowio.h" diff --git a/lib/copydir.c b/lib/copydir.c index 6a80d7e7e..6d292dafa 100644 --- a/lib/copydir.c +++ b/lib/copydir.c @@ -19,6 +19,7 @@ #include #include "alloc.h" +#include "attr.h" #include "prototypes.h" #include "defines.h" #ifdef WITH_SELINUX diff --git a/lib/defines.h b/lib/defines.h index d0eb9dbdc..969b1aa93 100644 --- a/lib/defines.h +++ b/lib/defines.h @@ -203,26 +203,9 @@ #include #endif -/* To be used for verified unused parameters */ -#if defined(__GNUC__) -# define unused __attribute__((unused)) -# define NORETURN __attribute__((__noreturn__)) -# define format_attr(type, index, check) __attribute__((format (type, index, check))) -#else -# define unused -# define NORETURN -# define format_attr(type, index, check) -#endif - /* Maximum length of passwd entry */ #define PASSWD_ENTRY_MAX_LENGTH 32768 -#if (__GNUC__ >= 11) && !defined(__clang__) -# define ATTR_MALLOC(deallocator) [[gnu::malloc(deallocator)]] -#else -# define ATTR_MALLOC(deallocator) -#endif - #ifdef HAVE_SECURE_GETENV # define shadow_getenv(name) secure_getenv(name) # else diff --git a/lib/getdate.y b/lib/getdate.y index 2e13e2dc9..59d8ffbbc 100644 --- a/lib/getdate.y +++ b/lib/getdate.y @@ -28,6 +28,7 @@ #include #include +#include "attr.h" #include "getdate.h" #include diff --git a/lib/logind.c b/lib/logind.c index d4d217ceb..e3bee9fab 100644 --- a/lib/logind.c +++ b/lib/logind.c @@ -8,6 +8,7 @@ #ident "$Id$" +#include "attr.h" #include "defines.h" #include "prototypes.h" diff --git a/lib/loginprompt.c b/lib/loginprompt.c index e2bef7ab0..d7c3d6b9e 100644 --- a/lib/loginprompt.c +++ b/lib/loginprompt.c @@ -16,6 +16,7 @@ #include #include "alloc.h" +#include "attr.h" #include "memzero.h" #include "prototypes.h" #include "defines.h" diff --git a/lib/obscure.c b/lib/obscure.c index 2aece68b7..cfc273587 100644 --- a/lib/obscure.c +++ b/lib/obscure.c @@ -16,6 +16,7 @@ #include #include "alloc.h" +#include "attr.h" #include "memzero.h" #include "prototypes.h" #include "defines.h" diff --git a/lib/pam_pass_non_interactive.c b/lib/pam_pass_non_interactive.c index aec02ad8b..6e21e76fb 100644 --- a/lib/pam_pass_non_interactive.c +++ b/lib/pam_pass_non_interactive.c @@ -18,6 +18,7 @@ #include #include "alloc.h" +#include "attr.h" #include "prototypes.h" #include "shadowlog.h" diff --git a/lib/prototypes.h b/lib/prototypes.h index 89a68e7c0..51118fd30 100644 --- a/lib/prototypes.h +++ b/lib/prototypes.h @@ -31,6 +31,7 @@ #include #endif /* ENABLE_LASTLOG */ +#include "attr.h" #include "defines.h" #include "commonio.h" diff --git a/lib/pwdcheck.c b/lib/pwdcheck.c index a1f85cefe..e343fdafe 100644 --- a/lib/pwdcheck.c +++ b/lib/pwdcheck.c @@ -13,6 +13,8 @@ #include #include + +#include "attr.h" #include "prototypes.h" #include "defines.h" #include "pwauth.h" diff --git a/lib/semanage.c b/lib/semanage.c index d412186c9..742cf1124 100644 --- a/lib/semanage.c +++ b/lib/semanage.c @@ -16,8 +16,12 @@ #endif #include #include + #include + #include + +#include "attr.h" #include "prototypes.h" #include "shadowlog_internal.h" diff --git a/lib/sprintf.h b/lib/sprintf.h index a1219f35d..c9d7e6c78 100644 --- a/lib/sprintf.h +++ b/lib/sprintf.h @@ -14,6 +14,7 @@ #include #include +#include "attr.h" #include "defines.h" diff --git a/lib/stpeprintf.h b/lib/stpeprintf.h index 4929019a6..14ee7b6ee 100644 --- a/lib/stpeprintf.h +++ b/lib/stpeprintf.h @@ -17,6 +17,7 @@ #include #include +#include "attr.h" #include "defines.h" diff --git a/src/expiry.c b/src/expiry.c index b980b6565..acccc2c8b 100644 --- a/src/expiry.c +++ b/src/expiry.c @@ -16,6 +16,8 @@ #include #include #include + +#include "attr.h" #include "defines.h" #include "prototypes.h" /*@-exitarg@*/ diff --git a/src/gpasswd.c b/src/gpasswd.c index c08a50c81..e2aa0b13e 100644 --- a/src/gpasswd.c +++ b/src/gpasswd.c @@ -22,6 +22,7 @@ #include "agetpass.h" #include "alloc.h" +#include "attr.h" #include "defines.h" #include "groupio.h" #include "memzero.h" diff --git a/src/grpconv.c b/src/grpconv.c index 34ed7ad38..f60cae0fb 100644 --- a/src/grpconv.c +++ b/src/grpconv.c @@ -26,6 +26,7 @@ #include #include +#include "attr.h" #include "nscd.h" #include "sssd.h" #include "prototypes.h" diff --git a/src/grpunconv.c b/src/grpunconv.c index fc6cecf93..418245e1a 100644 --- a/src/grpunconv.c +++ b/src/grpunconv.c @@ -24,6 +24,8 @@ #include #include #include + +#include "attr.h" #include "nscd.h" #include "sssd.h" #include "prototypes.h" diff --git a/src/login.c b/src/login.c index a4a59447d..11abe0639 100644 --- a/src/login.c +++ b/src/login.c @@ -26,6 +26,7 @@ #include #include "alloc.h" +#include "attr.h" #include "defines.h" #include "faillog.h" #include "failure.h" diff --git a/src/su.c b/src/su.c index a5731335e..af5f29aee 100644 --- a/src/su.c +++ b/src/su.c @@ -47,6 +47,7 @@ #endif /* !USE_PAM */ #include "alloc.h" +#include "attr.h" #include "prototypes.h" #include "defines.h" #include "pwauth.h" diff --git a/src/sulogin.c b/src/sulogin.c index 4e1d601dd..eb99973f8 100644 --- a/src/sulogin.c +++ b/src/sulogin.c @@ -18,6 +18,7 @@ #include #include "agetpass.h" +#include "attr.h" #include "defines.h" #include "getdef.h" #include "memzero.h" -- 2.47.2