[libvirt] [PATCH] util: fix potential segfault

Wang King king.wang at huawei.com
Wed Apr 12 09:38:06 UTC 2017


virBufferCurrentContent might be get a NULL string, and then without checking it,
this can cause a segfault as strlen expects a string != NULL. Use virBufferCheckError
to check error before calling strlen.
---
 src/util/virsystemd.c | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/src/util/virsystemd.c b/src/util/virsystemd.c
index ceb1c1a..cfc4bdb 100644
--- a/src/util/virsystemd.c
+++ b/src/util/virsystemd.c
@@ -135,6 +135,8 @@ virSystemdAppendValidMachineName(virBufferPtr buf,
     bool skip_dot = false;
 
     for (; *name; name++) {
+        if (virBufferCheckError(buf) < 0)
+            break;
         if (strlen(virBufferCurrentContent(buf)) >= 64)
             break;
 
-- 
2.8.3





More information about the libvir-list mailing list