mirror of
https://git.proxmox.com/git/mirror_frr
synced 2025-06-14 14:46:57 +00:00
lib: force local MIN/MAX macros
Linux/glibc sys/param.h has definitions of MIN/MAX that result in multiple evaluations of its parameters. Force local definitions. Signed-off-by: David Lamparter <equinox@opensourcerouting.org>
This commit is contained in:
parent
518acd6fd8
commit
6b143a68d3
@ -47,7 +47,7 @@ in_cksum(void *parg, int nbytes)
|
||||
}
|
||||
|
||||
/* Fletcher Checksum -- Refer to RFC1008. */
|
||||
#define MODX 4102 /* 5802 should be fine */
|
||||
#define MODX 4102U /* 5802 should be fine */
|
||||
|
||||
/* To be consistent, offset is 0-based index, rather than the 1-based
|
||||
index required in the specification ISO 8473, Annex C.1 */
|
||||
|
@ -352,18 +352,21 @@ struct in_pktinfo
|
||||
#endif /* ndef BYTE_ORDER */
|
||||
|
||||
/* MAX / MIN are not commonly defined, but useful */
|
||||
#ifndef MAX
|
||||
/* note: glibc sys/param.h has #define MIN(a,b) (((a)<(b))?(a):(b)) */
|
||||
#ifdef MAX
|
||||
#undef MAX
|
||||
#endif
|
||||
#define MAX(a, b) \
|
||||
({ typeof (a) _a = (a); \
|
||||
typeof (b) _b = (b); \
|
||||
_a > _b ? _a : _b; })
|
||||
#ifdef MIN
|
||||
#undef MIN
|
||||
#endif
|
||||
#ifndef MIN
|
||||
#define MIN(a, b) \
|
||||
({ typeof (a) _a = (a); \
|
||||
typeof (b) _b = (b); \
|
||||
_a < _b ? _a : _b; })
|
||||
#endif
|
||||
|
||||
#define ZEBRA_NUM_OF(x) (sizeof (x) / sizeof (x[0]))
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user