]> xenbits.xensource.com Git - libvirt.git/commitdiff
nss: remove use for virString helper APIs
authorDaniel P. Berrangé <berrange@redhat.com>
Tue, 30 Jul 2019 14:33:20 +0000 (15:33 +0100)
committerDaniel P. Berrangé <berrange@redhat.com>
Wed, 7 Aug 2019 15:54:02 +0000 (16:54 +0100)
Use the plain libc APIs to avoid a dependancy on the main libvirt
code from the nss module.

Reviewed-by: Michal Privoznik <mprivozn@redhat.com>
Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
tools/nss/libvirt_nss.c

index f50dec48ba8d4604f61e589d125e338fb29f7320..d057827ebc4e7d7749694dd75b55440329f15fbf 100644 (file)
@@ -41,7 +41,6 @@
 #include "virfile.h"
 #include "virtime.h"
 #include "virerror.h"
-#include "virstring.h"
 #include "virsocketaddr.h"
 #include "configmake.h"
 #include "virmacmap.h"
@@ -193,13 +192,20 @@ findLeaseInJSON(leaseAddress **tmpAddress,
         }
 
         if (macs) {
+            const char **macstmp = macs;
             const char *macAddr;
+            bool match = false;
 
             macAddr = virJSONValueObjectGetString(lease, "mac-address");
             if (!macAddr)
                 continue;
 
-            if (!virStringListHasString(macs, macAddr))
+            while (*macstmp && !match) {
+                if (STREQ(*macstmp, macAddr))
+                    match = true;
+                macstmp++;
+            }
+            if (!match)
                 continue;
         } else {
             const char *lease_name;
@@ -295,8 +301,9 @@ findLease(const char *name,
     DEBUG("Dir: %s", leaseDir);
     while ((entry = readdir(dir)) != NULL) {
         char *path;
+        size_t dlen = strlen(entry->d_name);
 
-        if (virStringHasSuffix(entry->d_name, ".status")) {
+        if (dlen >= 7 && STREQ(entry->d_name + dlen - 7, ".status")) {
             if (!(path = virFileBuildPath(leaseDir, entry->d_name, NULL)))
                 goto cleanup;
 
@@ -307,7 +314,7 @@ findLease(const char *name,
                 goto cleanup;
             }
             VIR_FREE(path);
-        } else if (virStringHasSuffix(entry->d_name, ".macs")) {
+        } else if (dlen >= 5 && STREQ(entry->d_name + dlen - 5, ".macs")) {
             if (!(path = virFileBuildPath(leaseDir, entry->d_name, NULL)))
                 goto cleanup;