forked from Mirror/frr
lib: add simple generic version helpers
Add some simple helpers for generic major+minor+sub version values. Signed-off-by: Mark Stapp <mjs@cisco.com>
This commit is contained in:
parent
8cfa3b57e9
commit
f090079390
|
@ -1450,3 +1450,12 @@ void _libfrr_version(void)
|
||||||
write(1, banner, sizeof(banner) - 1);
|
write(1, banner, sizeof(banner) - 1);
|
||||||
_exit(0);
|
_exit(0);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/* Render simple version tuple to string */
|
||||||
|
const char *frr_vers2str(uint32_t version, char *buf, int buflen)
|
||||||
|
{
|
||||||
|
snprintf(buf, buflen, "%d.%d.%d", MAJOR_FRRVERSION(version),
|
||||||
|
MINOR_FRRVERSION(version), SUB_FRRVERSION(version));
|
||||||
|
|
||||||
|
return buf;
|
||||||
|
}
|
||||||
|
|
11
lib/libfrr.h
11
lib/libfrr.h
|
@ -233,6 +233,17 @@ extern bool frr_is_after_fork;
|
||||||
|
|
||||||
extern bool debug_memstats_at_exit;
|
extern bool debug_memstats_at_exit;
|
||||||
|
|
||||||
|
/*
|
||||||
|
* Version numbering: MAJOR (8) | MINOR (16) | SUB (8)
|
||||||
|
*/
|
||||||
|
#define MAKE_FRRVERSION(maj, min, sub) \
|
||||||
|
((((maj) & 0xff) << 24) | (((min) & 0xffff) << 8) | ((sub) & 0xff))
|
||||||
|
#define MAJOR_FRRVERSION(v) (((v) >> 24) & 0xff)
|
||||||
|
#define MINOR_FRRVERSION(v) (((v) >> 8) & 0xffff)
|
||||||
|
#define SUB_FRRVERSION(v) ((v) & 0xff)
|
||||||
|
|
||||||
|
const char *frr_vers2str(uint32_t version, char *buf, int buflen);
|
||||||
|
|
||||||
#ifdef __cplusplus
|
#ifdef __cplusplus
|
||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
|
|
Loading…
Reference in a new issue