summaryrefslogtreecommitdiff
path: root/lib/printf.c
diff options
context:
space:
mode:
authorOndrej Zajicek (work) <santiago@crfreenet.org>2019-07-18 01:57:26 +0200
committerOndrej Zajicek (work) <santiago@crfreenet.org>2019-07-18 01:57:26 +0200
commit39edf4abcafda429f33f98c31ae11bf6a27ab18e (patch)
tree5e7af62a4a84ab684bcdaccdea12ccd121d5711d /lib/printf.c
parentcf7ff99513728e4e405508e5ccd7522289d4ec82 (diff)
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.
Diffstat (limited to 'lib/printf.c')
-rw-r--r--lib/printf.c16
1 files changed, 8 insertions, 8 deletions
diff --git a/lib/printf.c b/lib/printf.c
index c2065d9a..8f2cccb3 100644
--- a/lib/printf.c
+++ b/lib/printf.c
@@ -356,14 +356,14 @@ int bvsnprintf(char *buf, int size, const char *fmt, va_list args)
if (qualifier == 'l') {
X = va_arg(args, u64);
bsprintf(ipbuf, "%02x:%02x:%02x:%02x:%02x:%02x:%02x:%02x",
- ((X >> 56) & 0xff),
- ((X >> 48) & 0xff),
- ((X >> 40) & 0xff),
- ((X >> 32) & 0xff),
- ((X >> 24) & 0xff),
- ((X >> 16) & 0xff),
- ((X >> 8) & 0xff),
- (X & 0xff));
+ (uint) ((X >> 56) & 0xff),
+ (uint) ((X >> 48) & 0xff),
+ (uint) ((X >> 40) & 0xff),
+ (uint) ((X >> 32) & 0xff),
+ (uint) ((X >> 24) & 0xff),
+ (uint) ((X >> 16) & 0xff),
+ (uint) ((X >> 8) & 0xff),
+ (uint) (X & 0xff));
}
else
{