pacemaker 3.0.1-16e74fc4da
Scalable High-Availability cluster resource manager
Loading...
Searching...
No Matches
portability.h
Go to the documentation of this file.
1/*
2 * Copyright 2001-2024 the Pacemaker project contributors
3 *
4 * The version control history for this file may have further details.
5 *
6 * This source code is licensed under the GNU Lesser General Public License
7 * version 2.1 or later (LGPLv2.1+) WITHOUT ANY WARRANTY.
8 */
9#ifndef PCMK__PORTABILITY__H
10# define PCMK__PORTABILITY__H
11
12/* This header provides replacements for required definitions and declarations
13 * that certain supported build environments don't provide
14 */
15
16/* This header *MUST* be included before any system headers, because the
17 * following definition can change the behavior of some of them.
18 */
19# undef _GNU_SOURCE /* in case it was defined on the command line */
20# define _GNU_SOURCE
21
22/* Please leave this as the first #include - Solaris needs it there */
23# ifdef HAVE_CONFIG_H
24# ifndef PCMK__CONFIG_H
25# define PCMK__CONFIG_H
26# include <config.h>
27# endif
28# endif
29
30// Replacement constants for Linux-specific errno values
31
32# include <errno.h>
33
34# ifndef ENOTUNIQ
35# define PCMK__ENOTUNIQ
36# define ENOTUNIQ 190
37# endif
38
39# ifndef ECOMM
40# define PCMK__ECOMM
41# define ECOMM 191
42# endif
43
44# ifndef ELIBACC
45# define PCMK__ELIBACC
46# define ELIBACC 192
47# endif
48
49# ifndef EREMOTEIO
50# define PCMK__EREMOTIO
51# define EREMOTEIO 193
52# endif
53
54# ifndef ENOKEY
55# define PCMK__ENOKEY
56# define ENOKEY 195
57# endif
58
59# ifndef ENODATA
60# define PCMK__ENODATA
61# define ENODATA 196
62# endif
63
64# ifndef ETIME
65# define PCMK__ETIME
66# define ETIME 197
67# endif
68
69# ifndef EKEYREJECTED
70# define PCMK__EKEYREJECTED
71# define EKEYREJECTED 200
72# endif
73
74#endif // PCMK__PORTABILITY__H