]> git.ipfire.org Git - thirdparty/bind9.git/commitdiff
pullup:
authorAndreas Gustafsson <source@isc.org>
Fri, 2 Nov 2001 17:56:07 +0000 (17:56 +0000)
committerAndreas Gustafsson <source@isc.org>
Fri, 2 Nov 2001 17:56:07 +0000 (17:56 +0000)
1086.   [port]          libbind: sunos: old sprintf.

CHANGES
lib/bind/nameser/ns_name.c

diff --git a/CHANGES b/CHANGES
index b8ae158157804b148ec08395e823d9376b2d0b01..ede22fe45583c921b2cd3442fc9de471aab3f584 100644 (file)
--- a/CHANGES
+++ b/CHANGES
@@ -6,6 +6,8 @@
 
 1101.  [bug]           Array bounds read error in lwres_gai_strerror.
 
+1086.  [port]          libbind: sunos: old sprintf.
+
 1085.  [port]          libbind: solaris: sys_nerr and sys_errlist do not
                        exist when compiling in 64 bit mode.
 
index bb9e43ed11aa1132b216faae331ee0bf55a803c8..dc5f32d008cb06bf4e8a4d1c18d62ee3a56e8eb2 100644 (file)
@@ -16,7 +16,7 @@
  */
 
 #ifndef lint
-static const char rcsid[] = "$Id: ns_name.c,v 1.3 2001/05/07 06:07:44 marka Exp $";
+static const char rcsid[] = "$Id: ns_name.c,v 1.3.2.1 2001/11/02 17:56:07 gson Exp $";
 #endif
 
 #include "port_before.h"
@@ -35,6 +35,12 @@ static const char rcsid[] = "$Id: ns_name.c,v 1.3 2001/05/07 06:07:44 marka Exp
 
 #include "port_after.h"
 
+#ifdef SPRINTF_CHAR
+# define SPRINTF(x) strlen(sprintf/**/x)
+#else
+# define SPRINTF(x) ((size_t)sprintf x)
+#endif
+
 #define NS_TYPE_ELT                    0x40 /* EDNS0 extended label type */
 #define DNS_LABELTYPE_BITSTRING                0x41
 
@@ -790,17 +796,18 @@ decode_bitstring(const char **cpp, char *dn, const char *eom)
                return(-1);
 
        cp++;
-       dn += sprintf(dn, "\\[x");
+       dn += SPRINTF((dn, "\\[x"));
        for (b = blen; b > 7; b -= 8, cp++)
-               dn += sprintf(dn, "%02x", *cp & 0xff);
+               dn += SPRINTF((dn, "%02x", *cp & 0xff));
        if (b > 4) {
                tc = *cp++;
-               dn += sprintf(dn, "%02x", tc & (0xff << (8 - b)));
+               dn += SPRINTF((dn, "%02x", tc & (0xff << (8 - b))));
        } else if (b > 0) {
                tc = *cp++;
-               dn += sprintf(dn, "%1x", ((tc >> 4) & 0x0f) & (0x0f << (4 - b))); 
+               dn += SPRINTF((dn, "%1x",
+                              ((tc >> 4) & 0x0f) & (0x0f << (4 - b)))); 
        }
-       dn += sprintf(dn, "/%d]", blen);
+       dn += SPRINTF((dn, "/%d]", blen));
 
        *cpp = cp;
        return(dn - beg);