diff options
Diffstat (limited to 'networking/udhcp/common.c')
-rw-r--r-- | networking/udhcp/common.c | 19 |
1 files changed, 19 insertions, 0 deletions
diff --git a/networking/udhcp/common.c b/networking/udhcp/common.c index 2e6113627..a89dce3ae 100644 --- a/networking/udhcp/common.c +++ b/networking/udhcp/common.c | |||
@@ -539,3 +539,22 @@ int FAST_FUNC udhcp_str2optset(const char *const_str, void *arg) | |||
539 | 539 | ||
540 | return retval; | 540 | return retval; |
541 | } | 541 | } |
542 | |||
543 | /* note: ip is a pointer to an IPv6 in network order, possibly misaliged */ | ||
544 | int FAST_FUNC sprint_nip6(char *dest, /*const char *pre,*/ const uint8_t *ip) | ||
545 | { | ||
546 | char hexstrbuf[16 * 2]; | ||
547 | bin2hex(hexstrbuf, (void*)ip, 16); | ||
548 | return sprintf(dest, /* "%s" */ | ||
549 | "%.4s:%.4s:%.4s:%.4s:%.4s:%.4s:%.4s:%.4s", | ||
550 | /* pre, */ | ||
551 | hexstrbuf + 0 * 4, | ||
552 | hexstrbuf + 1 * 4, | ||
553 | hexstrbuf + 2 * 4, | ||
554 | hexstrbuf + 3 * 4, | ||
555 | hexstrbuf + 4 * 4, | ||
556 | hexstrbuf + 5 * 4, | ||
557 | hexstrbuf + 6 * 4, | ||
558 | hexstrbuf + 7 * 4 | ||
559 | ); | ||
560 | } | ||