0
0
mirror of https://gitlab.nic.cz/labs/bird.git synced 2024-11-09 20:58:44 +00:00

Lib: Fix print of 64-bit router id

Mismatched types to printf(). The old code coincidentally worked on amd64
due to its calling conventions.

Thanks to Maximilian Eschenbacher for the bugreport.
This commit is contained in:
Ondrej Zajicek (work) 2019-07-18 02:05:36 +02:00
parent f9deedf1f0
commit 9d23aa7a80

View File

@ -314,14 +314,14 @@ int bvsnprintf(char *buf, int size, const char *fmt, va_list args)
if(qualifier == 'l') { if(qualifier == 'l') {
X = va_arg(args, u64); X = va_arg(args, u64);
bsprintf(ipbuf, "%02x:%02x:%02x:%02x:%02x:%02x:%02x:%02x", bsprintf(ipbuf, "%02x:%02x:%02x:%02x:%02x:%02x:%02x:%02x",
((X >> 56) & 0xff), (uint) ((X >> 56) & 0xff),
((X >> 48) & 0xff), (uint) ((X >> 48) & 0xff),
((X >> 40) & 0xff), (uint) ((X >> 40) & 0xff),
((X >> 32) & 0xff), (uint) ((X >> 32) & 0xff),
((X >> 24) & 0xff), (uint) ((X >> 24) & 0xff),
((X >> 16) & 0xff), (uint) ((X >> 16) & 0xff),
((X >> 8) & 0xff), (uint) ((X >> 8) & 0xff),
(X & 0xff)); (uint) (X & 0xff));
} }
else else
{ {