openpam_attr.h revision 294192
1/*
2 * $Id: openpam_attr.h 656 2013-03-06 22:58:45Z des $
3 */
4
5#ifndef SECURITY_OPENPAM_ATTR_H_INCLUDED
6#define SECURITY_OPENPAM_ATTR_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#if OPENPAM_GNUC_PREREQ(2,7)
29# define OPENPAM_UNUSED(var) var __attribute__((__unused__))
30#else
31# define OPENPAM_UNUSED(var) var
32#endif
33
34#endif /* !SECURITY_OPENPAM_ATTR_H_INCLUDED */
35