aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBjörn Jacke <bjacke@samba.org>2020-10-30 15:52:40 +0100
committerAndreas Schneider <asn@samba.org>2020-12-03 14:14:58 +0100
commit7401af4dbe1a8dc5849c3d7fc2a7890413ab394e (patch)
tree0cbe0c0c4b928cfc6dce5a68e51935249d14d9d7
parentf7ba680493ec6ae191a633799682eededdea1d83 (diff)
downloadpam_wrapper-7401af4dbe1a8dc5849c3d7fc2a7890413ab394e.tar.gz
pam_wrapper-7401af4dbe1a8dc5849c3d7fc2a7890413ab394e.tar.xz
pam_wrapper-7401af4dbe1a8dc5849c3d7fc2a7890413ab394e.zip
pam_wrapper.c: fall back to pragma init/fini for constructor/destructor if possiblemaster-init-pragma
Signed-off-by: Bjoern Jacke <bjacke@samba.org> Reviewed-by: Andreas Schneider <asn@samba.org>
-rw-r--r--src/pam_wrapper.c7
1 files changed, 7 insertions, 0 deletions
diff --git a/src/pam_wrapper.c b/src/pam_wrapper.c
index dd69c43..6801d7b 100644
--- a/src/pam_wrapper.c
+++ b/src/pam_wrapper.c
@@ -311,7 +311,14 @@ static struct pwrap pwrap;
*********************************************************/
bool pam_wrapper_enabled(void);
+#if ! defined(HAVE_CONSTRUCTOR_ATTRIBUTE) && defined(HAVE_PRAGMA_INIT)
+/* xlC and other oldschool compilers support (only) this */
+#pragma init (pwrap_constructor)
+#endif
void pwrap_constructor(void) CONSTRUCTOR_ATTRIBUTE;
+#if ! defined(HAVE_DESTRUCTOR_ATTRIBUTE) && defined(HAVE_PRAGMA_FINI)
+#pragma fini (pwrap_destructor)
+#endif
void pwrap_destructor(void) DESTRUCTOR_ATTRIBUTE;
/*********************************************************