From: Ian Jackson Date: Mon, 21 Apr 2014 23:15:50 +0000 (+0100) Subject: util.h: Provide MIN and MAX macros X-Git-Tag: debian/0.3.1_beta1~7 X-Git-Url: http://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?p=secnet.git;a=commitdiff_plain;h=ceb05e5ddbc5f140b1320c29a8b5841e61bc8250;hp=a0b107b8722e92aa3f29945239ce6793bf5ea877 util.h: Provide MIN and MAX macros Signed-off-by: Ian Jackson --- diff --git a/util.h b/util.h index 816c056..1f43c5e 100644 --- a/util.h +++ b/util.h @@ -51,4 +51,12 @@ extern void send_nak(const struct comm_addr *dest, uint32_t our_index, extern int consttime_memeq(const void *s1, const void *s2, size_t n); +#define MINMAX(ae,be,op) ({ \ + typeof((ae)) a=(ae); \ + typeof((be)) b=(be); \ + a op b ? a : b; \ + }) +#define MAX(a,b) MINMAX((a),(b),>) +#define MIN(a,b) MINMAX((a),(b),<) + #endif /* util_h */