]> source.dussan.org Git - tigervnc.git/commitdiff
CharArray: pre-fill empty array with zeroes
authorJan Grulich <jgrulich@redhat.com>
Tue, 25 May 2021 12:18:48 +0000 (14:18 +0200)
committerPierre Ossman <ossman@cendio.se>
Mon, 7 Jun 2021 13:44:40 +0000 (15:44 +0200)
CharArray should always be null-terminated. There is a potential
scenario where this all might lead to crash. In Password we call
memset(), passing length of the array we get with strlen(), but
this won't return correct value when the array is not properly
null-terminated.

common/rfb/util.h

index 3100f90fd126a2b03327dd223b572bad3f0b9f29..eac72dd017b507081deedaf953d305821fe27766 100644 (file)
@@ -52,6 +52,7 @@ namespace rfb {
     CharArray(char* str) : buf(str) {} // note: assumes ownership
     CharArray(size_t len) {
       buf = new char[len]();
+      memset(buf, 0, len);
     }
     ~CharArray() {
       delete [] buf;