From d4f824398c6bda372afdcd6adc2a55184ddeb56b Mon Sep 17 00:00:00 2001 From: Sylvain Rochet Date: Sat, 2 Jul 2016 16:55:57 +0200 Subject: [PATCH] PPP, from PPPD upstream: fix sign-extension when displaying bytes in octal print_string() displays characters as \\%.03o but without first casting it from "char" to "unsigned char" so it gets sign-extended to an int. This causes output like \37777777630 instead of \230. (Based from pppd commit 5e8c3cb256a7e86e3572a82a75d51c6850efdbdc) --- src/netif/ppp/utils.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/netif/ppp/utils.c b/src/netif/ppp/utils.c index 2825d9f6..5b14ac59 100644 --- a/src/netif/ppp/utils.c +++ b/src/netif/ppp/utils.c @@ -591,7 +591,7 @@ void ppp_print_string(const u_char *p, int len, void (*printer) (void *, const c printer(arg, "\\t"); break; default: - printer(arg, "\\%.3o", c); + printer(arg, "\\%.3o", (u8_t)c); /* no break */ } }