From nobody Sun Feb 8 13:16:50 2026 Delivered-To: importer@patchew.org Received-SPF: pass (zoho.com: domain of redhat.com designates 209.132.183.28 as permitted sender) client-ip=209.132.183.28; envelope-from=libvir-list-bounces@redhat.com; helo=mx1.redhat.com; Authentication-Results: mx.zohomail.com; spf=pass (zoho.com: domain of redhat.com designates 209.132.183.28 as permitted sender) smtp.mailfrom=libvir-list-bounces@redhat.com; dmarc=pass(p=none dis=none) header.from=redhat.com ARC-Seal: i=1; a=rsa-sha256; t=1565340562; cv=none; d=zoho.com; s=zohoarc; b=kASMi0mKAarC+XY4lN1MTsE3d+Rq/6PFoJFIvB+DXvnUlV/CaUBkZ43oWAUYkpFiMoJMQ88jc1tQ4odEVhYh3Qg2RCL5/f3ATFQz+zVPOgdXiZQoAe+rM9y8FI5/qkPN1s6vBCcMGkk5vi61AtTp9No7cR3ayvqchJwUrxHGoiE= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zoho.com; s=zohoarc; t=1565340562; h=Content-Type:Content-Transfer-Encoding:Date:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:To:ARC-Authentication-Results; bh=UizWwOdB8j2W+t6H2JriLz2c75rj/VBFpEri0pwzE/k=; b=Eh/tBhCE5su4+lEF85koAGPZIczslF62o+zccK4l0Y2inwzpMTxrbrijdjeyDaokvxzv6uhU+wwxitXQNMRPztSFsiJoJKGCe5ScIQ+tlKKkXtPRf7ifIs8CmYoTe2Svz4WgZoN0Kl8CtPKnqnRE5KKfYf5e/WU0wEUbYJu030E= ARC-Authentication-Results: i=1; mx.zoho.com; spf=pass (zoho.com: domain of redhat.com designates 209.132.183.28 as permitted sender) smtp.mailfrom=libvir-list-bounces@redhat.com; dmarc=pass header.from= (p=none dis=none) header.from= Return-Path: Received: from mx1.redhat.com (mx1.redhat.com [209.132.183.28]) by mx.zohomail.com with SMTPS id 1565340562229392.0489255450342; Fri, 9 Aug 2019 01:49:22 -0700 (PDT) Received: from smtp.corp.redhat.com (int-mx05.intmail.prod.int.phx2.redhat.com [10.5.11.15]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mx1.redhat.com (Postfix) with ESMTPS id E0532300C768; Fri, 9 Aug 2019 08:49:20 +0000 (UTC) Received: from colo-mx.corp.redhat.com (colo-mx02.intmail.prod.int.phx2.redhat.com [10.5.11.21]) by smtp.corp.redhat.com (Postfix) with ESMTPS id BDFE75D772; Fri, 9 Aug 2019 08:49:20 +0000 (UTC) Received: from lists01.pubmisc.prod.ext.phx2.redhat.com (lists01.pubmisc.prod.ext.phx2.redhat.com [10.5.19.33]) by colo-mx.corp.redhat.com (Postfix) with ESMTP id 3D38E24F32; Fri, 9 Aug 2019 08:49:20 +0000 (UTC) Received: from smtp.corp.redhat.com (int-mx04.intmail.prod.int.phx2.redhat.com [10.5.11.14]) by lists01.pubmisc.prod.ext.phx2.redhat.com (8.13.8/8.13.8) with ESMTP id x798nIVU014336 for ; Fri, 9 Aug 2019 04:49:18 -0400 Received: by smtp.corp.redhat.com (Postfix) id 8880C5D9DC; Fri, 9 Aug 2019 08:49:18 +0000 (UTC) Received: from moe.brq.redhat.com (unknown [10.43.2.30]) by smtp.corp.redhat.com (Postfix) with ESMTP id 141225D9D6 for ; Fri, 9 Aug 2019 08:49:17 +0000 (UTC) From: Michal Privoznik To: libvir-list@redhat.com Date: Fri, 9 Aug 2019 10:49:09 +0200 Message-Id: <3237384c22d9b3dd24aecf23bb15db06d0b2b2c9.1565340411.git.mprivozn@redhat.com> In-Reply-To: References: MIME-Version: 1.0 X-Scanned-By: MIMEDefang 2.79 on 10.5.11.14 X-loop: libvir-list@redhat.com Subject: [libvirt] [PATCH 1/3] nss: Don't stop parsing on unexpected key X-BeenThere: libvir-list@redhat.com X-Mailman-Version: 2.1.12 Precedence: junk List-Id: Development discussions about the libvirt library & tools List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Transfer-Encoding: quoted-printable Sender: libvir-list-bounces@redhat.com Errors-To: libvir-list-bounces@redhat.com X-Scanned-By: MIMEDefang 2.79 on 10.5.11.15 X-Greylist: Sender IP whitelisted, not delayed by milter-greylist-4.5.16 (mx1.redhat.com [10.5.110.45]); Fri, 09 Aug 2019 08:49:21 +0000 (UTC) Content-Type: text/plain; charset="utf-8" Due to latest rewrite of NSS module, we are doing yajl parsing ourselves. This means, we had to introduce couple of callback that yajl calls. According to its documentation, a callback can cancel parsing if it returns a zero value. Well, we do just that in the string callback (findLeasesParserString()). If the JSON file we are parsing contains a key that we are not interested in, zero is returned meaning stop all parsing. This is not correct, because the JSON file can contain some other keys which are not harmful for our address translation (e.g. 'client-id'). Signed-off-by: Michal Privoznik Reviewed-by: Daniel P. Berrang=C3=A9 --- tests/nssdata/virbr1.status | 1 + tools/nss/libvirt_nss_leases.c | 2 +- 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/tests/nssdata/virbr1.status b/tests/nssdata/virbr1.status index 4951d4513e..f73c478be0 100644 --- a/tests/nssdata/virbr1.status +++ b/tests/nssdata/virbr1.status @@ -20,6 +20,7 @@ { "ip-address": "192.168.122.3", "mac-address": "52:54:00:aa:bb:cc", + "client-id": "01:52:54:00:aa:bb:cc", "expiry-time": 2000000000 } ] diff --git a/tools/nss/libvirt_nss_leases.c b/tools/nss/libvirt_nss_leases.c index 86881641a9..577b5a2fd1 100644 --- a/tools/nss/libvirt_nss_leases.c +++ b/tools/nss/libvirt_nss_leases.c @@ -201,7 +201,7 @@ findLeasesParserString(void *ctx, if (!(parser->entry.hostname =3D strndup((char *)stringVal, st= ringLen))) return 0; } else { - return 0; + return 1; } } else { return 0; --=20 2.21.0 -- libvir-list mailing list libvir-list@redhat.com https://www.redhat.com/mailman/listinfo/libvir-list