[svn] commit: r298 - /branches/jelte-datadef/src/lib/cc/cpp/data.cc

BIND 10 source code commits bind10-changes at lists.isc.org
Thu Nov 19 11:52:45 UTC 2009


Author: jelte
Date: Thu Nov 19 11:52:44 2009
New Revision: 298

Log:
unsigned char arrays interpreted as strings are still null-terminated in c++

Modified:
    branches/jelte-datadef/src/lib/cc/cpp/data.cc

Modified: branches/jelte-datadef/src/lib/cc/cpp/data.cc
==============================================================================
--- branches/jelte-datadef/src/lib/cc/cpp/data.cc (original)
+++ branches/jelte-datadef/src/lib/cc/cpp/data.cc Thu Nov 19 11:52:44 2009
@@ -735,17 +735,19 @@
         type |= ITEM_LENGTH_8;
         ss << type << val;
     } else if (length <= 0x0000ffff) {
-        unsigned char val[2];
+        unsigned char val[3];
         val[0] = (length & 0x0000ff00) >> 8;
         val[1] = (length & 0x000000ff);
+        val[2] = 0;
         type |= ITEM_LENGTH_16;
         ss << type << val;
     } else {
-        unsigned char val[4];
+        unsigned char val[5];
         val[0] = (length & 0xff000000) >> 24;
         val[1] = (length & 0x00ff0000) >> 16;
         val[2] = (length & 0x0000ff00) >> 8;
         val[3] = (length & 0x000000ff);
+        val[4] = 0;
         type |= ITEM_LENGTH_32;
         ss << type << val;
     }




More information about the bind10-changes mailing list