[PATCH 1/3] openvz: Use virStringSplitCount instead of strtok_r

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



When parsing the barrier:limit values, use virStringSplitCount in order
to split the pair and make the approriate checks to get the data.

Signed-off-by: John Ferlan <jferlan@xxxxxxxxxx>
---
 src/openvz/openvz_conf.c | 32 +++++++++++---------------------
 1 file changed, 11 insertions(+), 21 deletions(-)

diff --git a/src/openvz/openvz_conf.c b/src/openvz/openvz_conf.c
index e32dd6f..cf0d67c 100644
--- a/src/openvz/openvz_conf.c
+++ b/src/openvz/openvz_conf.c
@@ -133,35 +133,25 @@ openvzParseBarrierLimit(const char* value,
                         unsigned long long *barrier,
                         unsigned long long *limit)
 {
-    char *token;
-    char *saveptr = NULL;
-    char *str;
+    char **tmp = NULL;
+    size_t ntmp = 0;
     int ret = -1;
 
-    if (VIR_STRDUP(str, value) < 0)
+    if (!(tmp = virStringSplitCount(value, ":", 0, &ntmp)))
         goto error;
 
-    token = strtok_r(str, ":", &saveptr);
-    if (token == NULL) {
+    if (ntmp != 2)
         goto error;
-    } else {
-        if (barrier != NULL) {
-            if (virStrToLong_ull(token, NULL, 10, barrier))
-                goto error;
-        }
-    }
-    token = strtok_r(NULL, ":", &saveptr);
-    if (token == NULL) {
+
+    if (barrier && virStrToLong_ull(tmp[0], NULL, 10, barrier))
         goto error;
-    } else {
-        if (limit != NULL) {
-            if (virStrToLong_ull(token, NULL, 10, limit))
-                goto error;
-        }
-    }
+
+    if (limit && virStrToLong_ull(tmp[1], NULL, 10, limit))
+        goto error;
+
     ret = 0;
  error:
-    VIR_FREE(str);
+    virStringFreeListCount(tmp, ntmp);
     return ret;
 }
 
-- 
2.5.0

--
libvir-list mailing list
libvir-list@xxxxxxxxxx
https://www.redhat.com/mailman/listinfo/libvir-list



[Index of Archives]     [Virt Tools]     [Libvirt Users]     [Lib OS Info]     [Fedora Users]     [Fedora Desktop]     [Fedora SELinux]     [Big List of Linux Books]     [Yosemite News]     [KDE Users]     [Fedora Tools]