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