1 /* 2 * $Id: openpam_attr.h 405 2007-12-19 11:38:27Z des $ 3 */ 4 5 #ifndef SECURITY_PAM_ATTRIBUTES_H_INCLUDED 6 #define SECURITY_PAM_ATTRIBUTES_H_INCLUDED 7 8 /* GCC attributes */ 9 #if defined(__GNUC__) && defined(__GNUC_MINOR__) && !defined(__STRICT_ANSI__) 10 # define OPENPAM_GNUC_PREREQ(maj, min) \ 11 ((__GNUC__ << 16) + __GNUC_MINOR__ >= ((maj) << 16) + (min)) 12 #else 13 # define OPENPAM_GNUC_PREREQ(maj, min) 0 14 #endif 15 16 #if OPENPAM_GNUC_PREREQ(2,5) 17 # define OPENPAM_FORMAT(params) __attribute__((__format__ params)) 18 #else 19 # define OPENPAM_FORMAT(params) 20 #endif 21 22 #if OPENPAM_GNUC_PREREQ(3,3) 23 # define OPENPAM_NONNULL(params) __attribute__((__nonnull__ params)) 24 #else 25 # define OPENPAM_NONNULL(params) 26 #endif 27 28 #endif /* !SECURITY_PAM_ATTRIBUTES_H_INCLUDED */ 29