correctly match size and buffer. from enh at google
authortedu <tedu@openbsd.org>
Sat, 17 May 2014 18:16:14 +0000 (18:16 +0000)
committertedu <tedu@openbsd.org>
Sat, 17 May 2014 18:16:14 +0000 (18:16 +0000)
lib/libc/net/inet_ntop.c

index 359acd8..f991a07 100644 (file)
@@ -1,4 +1,4 @@
-/*     $OpenBSD: inet_ntop.c,v 1.9 2014/02/05 14:20:43 millert Exp $   */
+/*     $OpenBSD: inet_ntop.c,v 1.10 2014/05/17 18:16:14 tedu Exp $     */
 
 /* Copyright (c) 1996 by Internet Software Consortium.
  *
@@ -71,11 +71,11 @@ inet_ntop(int af, const void *src, char *dst, socklen_t size)
 static const char *
 inet_ntop4(const u_char *src, char *dst, size_t size)
 {
-       static const char fmt[] = "%u.%u.%u.%u";
        char tmp[sizeof "255.255.255.255"];
        int l;
 
-       l = snprintf(tmp, size, fmt, src[0], src[1], src[2], src[3]);
+       l = snprintf(tmp, sizeof(tmp), "%u.%u.%u.%u",
+           src[0], src[1], src[2], src[3]);
        if (l <= 0 || l >= size) {
                errno = ENOSPC;
                return (NULL);