From nobody Wed Jun 24 21:42:04 2026 Delivered-To: importer@patchew.org Received-SPF: pass (zohomail.com: domain of lists.libvirt.org designates 38.145.34.151 as permitted sender) client-ip=38.145.34.151; envelope-from=devel-bounces@lists.libvirt.org; helo=lists.libvirt.org; Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of lists.libvirt.org designates 38.145.34.151 as permitted sender) smtp.mailfrom=devel-bounces@lists.libvirt.org; dmarc=pass(p=none dis=none) header.from=gmail.com ARC-Seal: i=1; a=rsa-sha256; t=1781420015; cv=none; d=zohomail.com; s=zohoarc; b=BStf7al2XosekfRepmLEDPOBQ2IEGW9qvYklIYvR/2yzp7HoGv3A9Ozx+GdDwlqByToHFs9Vd5TH/AibWMC57zItXtYjNOFhqTm9YO8jrYWpY+aXpotKb0mWRTxyyiWlKs1oqaMSJvcAkbC1DjgSgRrF5Fw7AoBOaqOahdP+Yu0= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1781420015; h=Content-Transfer-Encoding:Cc:Cc:Date:Date:From:From:List-Subscribe:List-Post:List-Owner:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:Subject:Subject:To:To:Message-Id:Reply-To; bh=J6EZssgRSNrpZ0cDjtcEZhekys9afShOZltJnV93JNM=; b=GMoF6coW7AmODovG/Jj/r0vJZYJMOSMUY/Fu4uKYxEfZ5YXQTme3MruDm7613k0FDUA+z7+Reld2u2Mz8YkJT8dioFuUATpNfwCPb9hXOubNVskUDfsTpav/dniSp5k2aCkmCMdz4fc5FZ92gDoJi8YulWV5y/c0G6weyOGqHoU= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of lists.libvirt.org designates 38.145.34.151 as permitted sender) smtp.mailfrom=devel-bounces@lists.libvirt.org; dmarc=pass header.from= (p=none dis=none) Return-Path: Received: from lists.libvirt.org (lists.libvirt.org [38.145.34.151]) by mx.zohomail.com with SMTPS id 1781420015955138.6605314537419; Sat, 13 Jun 2026 23:53:35 -0700 (PDT) Received: by lists.libvirt.org (Postfix, from userid 993) id 2BE5841ABA; Sun, 14 Jun 2026 02:53:31 -0400 (EDT) Received: from [172.19.199.4] (unknown [10.16.107.18]) by lists.libvirt.org (Postfix) with ESMTP id 456F541C9D; Sun, 14 Jun 2026 02:52:38 -0400 (EDT) Received: by lists.libvirt.org (Postfix, from userid 993) id E48F53F2EF; Sun, 14 Jun 2026 02:52:23 -0400 (EDT) Received: from mail-ed1-x535.google.com (mail-ed1-x535.google.com [IPv6:2a00:1450:4864:20::535]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (3072 bits) server-digest SHA256) (No client certificate requested) by lists.libvirt.org (Postfix) with ESMTPS id A6896417CA for ; Sun, 14 Jun 2026 02:52:22 -0400 (EDT) Received: by mail-ed1-x535.google.com with SMTP id 4fb4d7f45d1cf-6913160c9ddso4294530a12.2 for ; Sat, 13 Jun 2026 23:52:22 -0700 (PDT) Received: from tulp.my.domain (2001-1c02-1a15-3000-ee82-4536-a8f2-9e22.cable.dynamic.v6.ziggo.nl. [2001:1c02:1a15:3000:ee82:4536:a8f2:9e22]) by smtp.gmail.com with ESMTPSA id 4fb4d7f45d1cf-693c6d7cf3csm1078218a12.14.2026.06.13.23.52.20 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sat, 13 Jun 2026 23:52:20 -0700 (PDT) X-Spam-Checker-Version: SpamAssassin 4.0.1 (2024-03-26) on lists.libvirt.org X-Spam-Level: X-Spam-Status: No, score=-2.7 required=5.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,FREEMAIL_FORGED_FROMDOMAIN,FREEMAIL_FROM, HEADER_FROM_DIFFERENT_DOMAINS,MAILING_LIST_MULTI,RCVD_IN_DNSWL_NONE, SPF_HELO_NONE autolearn=unavailable autolearn_force=no version=4.0.1 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20251104; t=1781419941; x=1782024741; darn=lists.libvirt.org; h=content-transfer-encoding:mime-version:message-id:date:subject:cc :to:from:from:to:cc:subject:date:message-id:reply-to; bh=J6EZssgRSNrpZ0cDjtcEZhekys9afShOZltJnV93JNM=; b=H3ec72n3EYM3KCDIEOc6nlfvkFj9xZKlUsmTj3uY1bDiSVdJ8WwJ5xCJJQt/2zOB/F iKkgN4DcCFJuq4Zeju0/4F4aF1kpmXIC8XY84DIJr5UgSIHOzlK6FQWU5xT4TyFZ1usC 3ve3u2nubo7qdAYc91g4CIvD6gOVz91ir3QsTbBtSYHWoRnxBWWaxJ40kfDHK1t8uCoe gT8my7werPbwUIsH7gm3UqYHjWbYLoe7x8ZgqtZ86hyQEhyOid4Hpzg45lWWjyMhkoCg S5HnONVGYzyzCsZ7l2ScrpyVGSBGH4gnMKzkjhIv7NmIw+AxWGmazUvNEHNsFEY3FuEV YFaQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1781419941; x=1782024741; h=content-transfer-encoding:mime-version:message-id:date:subject:cc :to:from:x-gm-gg:x-gm-message-state:from:to:cc:subject:date :message-id:reply-to; bh=J6EZssgRSNrpZ0cDjtcEZhekys9afShOZltJnV93JNM=; b=BW0ZrAZbpbvWPgA7ntUIbc8XoA0zdh9PKpgKHJpdt/cEMptQLpCcgYnWfHOqpXK7jU isggeupPCB4XndF6dVcbpZPc2g0GCWgOUfXLWpA6nPM7GL2KW47/V9uTCiKhFBTQ3+NS +aHQR/Zxp9IZxrcsOYP8ZGlz4LqKlSQVRvLw4k/qbo7uh/UtKCcNLcQEcnpbf2x84BPE XocDu0qCMMlnnBqE/PD2Bot2tM+dCb9jJm4l7UDXVk27r/y1Yj+m0Ac1TpKdTU44PRnZ 8JTD/TQ+fsBpAIgg6lzRZQ4MthnR5NuZFQIqJNGNOE4jBu8zwVl8mQDL/gNi3EuDXx+X NqbQ== X-Gm-Message-State: AOJu0Yy6w1WBtSt1VUnEjopZ4VYKe4GtBxLdPD6HNmQ/yVynBR+cyJa7 YEf2ioGDoz56dM3q0UNvD1v1cm8864UtMR0GVq09SVvWYBFOzkf1jFBoGT0xvHat X-Gm-Gg: Acq92OGGjW4GkQh3RKt4XJ+EUgfzQQnBlHYtlT6AsTynky0PJiDziKA9E+bFsS3t6zu eTLhurm8EZssznG8mdJdifXMweRsc/1EmC4xKZ9WRPQOD97JsvTwFBUFD63AbH/RP81Kixb99jh KbRLok8ylEL6X2GCdKFCXodU/uOW+jHeYc2sj/joRCCyjWn96OS4HrIf8ng4v73EKf8O+1PJDw2 llQjo26ide+uWmMmTO6Oxmm6Or6BbsF9SAkNlKPg5rmX+QAFy54g3d2N77+9E2vX1caf4WF7UKD q4DqY6SlgEGuOCM8PP9JWKX0vXFvh9ebCygE/TsteBog+nOHX9d6r2OytYEd/Wuv3E3U8+xpx+o 2eE+l/ENtLB+t6l9ifVx+pWADnJNDUDXe0FX2zeCI50RcTHTgF+woQrBaCSkv4C+CaHSaas1OPW 4qD1i/asDn3SUOd+4B+JnRX6cgxZ9//YUZEZtG83XWAP11gxm7+RAka/4xQ0k4wQ+LWNX23u7VM kO4WNt+1kBqCjNHn6OZ0u0XkwpYzBpvSmVYWw== X-Received: by 2002:a05:6402:4312:b0:66f:2ea5:c269 with SMTP id 4fb4d7f45d1cf-693c6a6acecmr2318483a12.15.1781419940754; Sat, 13 Jun 2026 23:52:20 -0700 (PDT) From: Roman Bogorodskiy To: devel@lists.libvirt.org Subject: [PATCH] bhyve: fix bhyveConnectAgent() Date: Sun, 14 Jun 2026 08:51:23 +0200 Message-ID: <20260614065123.4121-1-bogorodskiy@gmail.com> X-Mailer: git-send-email 2.52.0 MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Message-ID-Hash: OU4KJV2FYWOCLC2WHJDVJO7TJKMHWIJF X-Message-ID-Hash: OU4KJV2FYWOCLC2WHJDVJO7TJKMHWIJF X-MailFrom: bogorodskiy@gmail.com X-Mailman-Rule-Misses: dmarc-mitigation; no-senders; approved; loop; banned-address; header-match-devel.lists.libvirt.org-0; emergency; member-moderation; nonmember-moderation; administrivia; implicit-dest; max-recipients; max-size; news-moderation; no-subject; digests; suspicious-header CC: Roman Bogorodskiy X-Mailman-Version: 3.3.10 Precedence: list List-Id: Development discussions about the libvirt library & tools Archived-At: List-Archive: List-Help: List-Owner: List-Post: List-Subscribe: List-Unsubscribe: X-ZohoMail-DKIM: pass (identity @gmail.com) X-ZM-MESSAGEID: 1781420017546158500 Content-Type: text/plain; charset="utf-8" The bhyveConnectAgent() function calls qemuAgentOpen() to open an agent connection. If it fails, e.g. because of insufficient permissions to open the socket, it returns NULL. Currently, if that happens, bhyveConnectAgent() just sets agentError to true and exits with 0. This does not match the contract of bhyveDomainEnsureAgent(), which should either provide an agent connection or fail. Fix that by returning -1 when qemuAgentOpen() fails. To make intent clearer, add a documentation for bhyveConnectAgent(). Signed-off-by: Roman Bogorodskiy Reviewed-by: J=C3=A1n Tomko --- src/bhyve/bhyve_process.c | 15 +++++++++++++-- 1 file changed, 13 insertions(+), 2 deletions(-) diff --git a/src/bhyve/bhyve_process.c b/src/bhyve/bhyve_process.c index e92bdeb416..ed7e4e7725 100644 --- a/src/bhyve/bhyve_process.c +++ b/src/bhyve/bhyve_process.c @@ -238,6 +238,18 @@ static qemuAgentCallbacks agentCallbacks =3D { .errorNotify =3D bhyveProcessHandleAgentError, }; =20 +/** + * bhyveConnectAgent: + * @driver: driver object + * @vm: domain object + * + * Connect to the guest agent via the UNIX socket specified in the domain + * definition. On success, bhyveDomainObjPrivate's agent field should + * point to the agent instance. + * + * Returns: 0 on success, + * -1 on error + */ int bhyveConnectAgent(struct _bhyveConn *driver G_GNUC_UNUSED, virDomainObj *v= m) { @@ -270,8 +282,7 @@ bhyveConnectAgent(struct _bhyveConn *driver G_GNUC_UNUS= ED, virDomainObj *vm) priv->agent =3D agent; if (!priv->agent) { VIR_WARN("Cannot connect to QEMU guest agent for %s", vm->def->nam= e); - priv->agentError =3D true; - virResetLastError(); + return -1; } =20 return 0; --=20 2.52.0