From nobody Thu May 2 09:22:11 2024 Delivered-To: importer2@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer2=patchew.org@nongnu.org; dmarc=pass(p=none dis=none) header.from=redhat.com ARC-Seal: i=1; a=rsa-sha256; t=1678305941; cv=none; d=zohomail.com; s=zohoarc; b=KC5SKQeZ3up1ROiuAPF71/nFoKt9TwS6Fo/1MnyQh6dt+8RuszLIWBzOWGdVjkDZgLQO5027VbU3DFx50JkNZQlcxLm46jG9PROx8heP53B/dyqzVi1CEwRmFZSKWxHB3lDwXyf5EaGyQGaQqzWVf4crZnl+MsAtSoavAMlSYmg= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1678305941; h=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; bh=Z3NJSDdK9IidexqUuWYWIIP6h2jYWPfBhqOpNB2Un4c=; b=aRPqAbw1GcZuD/0U1+tEWFfP3zT3A/d44aIvYcHeXGdvGFuHFTFjge+EaBcA2vgnipPbHv2jiT/yZw0OrtfCvkUQ3Ty8ry0dQ7j2wx50xErkn3KxkGQcoOqnXalh07TifPViQ1P/xj6YY42yrGAl7T4FaugVgFVlDemmCTij+ac= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer2=patchew.org@nongnu.org; dmarc=pass header.from= (p=none dis=none) Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1678305941402975.1111681280283; Wed, 8 Mar 2023 12:05:41 -0800 (PST) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1pa01h-00013X-8M; Wed, 08 Mar 2023 15:04:41 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1pa01b-00012U-T5 for qemu-devel@nongnu.org; Wed, 08 Mar 2023 15:04:35 -0500 Received: from us-smtp-delivery-124.mimecast.com ([170.10.133.124]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1pa01a-0006vF-CE for qemu-devel@nongnu.org; Wed, 08 Mar 2023 15:04:35 -0500 Received: from mimecast-mx02.redhat.com (mx3-rdu2.redhat.com [66.187.233.73]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id us-mta-230-8b-4i6QZPee7o7mx6JosfQ-1; Wed, 08 Mar 2023 15:04:24 -0500 Received: from smtp.corp.redhat.com (int-mx04.intmail.prod.int.rdu2.redhat.com [10.11.54.4]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mimecast-mx02.redhat.com (Postfix) with ESMTPS id 6115438041DA; Wed, 8 Mar 2023 20:04:24 +0000 (UTC) Received: from kostyanf14nb.redhat.com (unknown [10.45.224.68]) by smtp.corp.redhat.com (Postfix) with ESMTPS id 713ED2026D4B; Wed, 8 Mar 2023 20:04:23 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1678305865; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=Z3NJSDdK9IidexqUuWYWIIP6h2jYWPfBhqOpNB2Un4c=; b=Cdnmh5xrm3f4rPErTMZ4cYsmxGiwQ3+ve38krnJ32OLq0fGNqQWx1O1vblEBQI8ppyTLtU zGezhYmNoSzPFStPjXfSL9ckftcgXz8xXSvRE3B+5qBfiZTSUD0D+OpxWwTzAcnqdyLxKo bYjtrDAE8ECHLYAq1xKIkcdRP2uaF/A= X-MC-Unique: 8b-4i6QZPee7o7mx6JosfQ-1 From: Konstantin Kostiuk To: qemu-devel@nongnu.org, Peter Maydell , =?UTF-8?q?Daniel=20P=20=2E=20Berrang=C3=A9?= Subject: [PULL 1/5] qga/win32: Remove change action from MSI installer Date: Wed, 8 Mar 2023 22:04:15 +0200 Message-Id: <20230308200419.453688-2-kkostiuk@redhat.com> In-Reply-To: <20230308200419.453688-1-kkostiuk@redhat.com> References: <20230308200419.453688-1-kkostiuk@redhat.com> MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable X-Scanned-By: MIMEDefang 3.1 on 10.11.54.4 Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer2=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=170.10.133.124; envelope-from=kkostiuk@redhat.com; helo=us-smtp-delivery-124.mimecast.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIMWL_WL_HIGH=-0.001, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, RCVD_IN_MSPIKE_H2=-0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+importer2=patchew.org@nongnu.org Sender: qemu-devel-bounces+importer2=patchew.org@nongnu.org X-ZohoMail-DKIM: pass (identity @redhat.com) X-ZM-MESSAGEID: 1678305942440100001 Content-Type: text/plain; charset="utf-8" Remove the 'change' button from "Programs and Features" because it does not checks if a user is an admin or not. The installer has no components to choose from and always installs everything. So the 'change' button is not obviously needed but can create a security issue. resolves: https://bugzilla.redhat.com/show_bug.cgi?id=3D2167423 fixes: CVE-2023-0664 (part 1 of 2) Signed-off-by: Konstantin Kostiuk Reviewed-by: Yan Vugenfirer Reported-by: Brian Wiltse --- qga/installer/qemu-ga.wxs | 1 + 1 file changed, 1 insertion(+) diff --git a/qga/installer/qemu-ga.wxs b/qga/installer/qemu-ga.wxs index 51340f7ecc..feb629ec47 100644 --- a/qga/installer/qemu-ga.wxs +++ b/qga/installer/qemu-ga.wxs @@ -31,6 +31,7 @@ /> 1 + --=20 2.25.1 From nobody Thu May 2 09:22:11 2024 Delivered-To: importer2@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer2=patchew.org@nongnu.org; dmarc=pass(p=none dis=none) header.from=redhat.com ARC-Seal: i=1; a=rsa-sha256; t=1678305955; cv=none; d=zohomail.com; s=zohoarc; b=Mh1RLGT0aPJHEPkkae2kQiJU4a5MsqfQByTn6QFzJ/XKhkHWnbwqFmnkTNsiGO3BXGg24CxLp/3YL6wophpmHP9ghaXaenG99MlUDMojv1vsaDWkR0rVPMw28xJlUDcYaK7lXsonRO/2Ph6+3sNE/ggpQE/vliP1M3agEgZdCNM= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1678305955; h=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; bh=n7a42SrubIoXUImbAN8XOyOMoYa67DMUvHOpB/gTJ0M=; b=Yd912FYzZ/zwDbf3oaFbfKbV7eXM6UheCROjyaS1ycElh0ed/uty2PVBKq8Ukc//xc6AFoMk0ozdcXynqza+1YWlg/7n5vVE28QWj8pbhRkVfr/NxyWh7kTDo6NKhHxW64MFFmXU8H1CC0ruT6TP8ULf3EYy1MzAcNkOixMg0qs= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer2=patchew.org@nongnu.org; dmarc=pass header.from= (p=none dis=none) Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1678305955868747.9429727830635; Wed, 8 Mar 2023 12:05:55 -0800 (PST) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1pa01b-00012B-8K; Wed, 08 Mar 2023 15:04:35 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1pa01Y-000115-UE for qemu-devel@nongnu.org; Wed, 08 Mar 2023 15:04:32 -0500 Received: from us-smtp-delivery-124.mimecast.com ([170.10.129.124]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1pa01W-0006xV-Ri for qemu-devel@nongnu.org; Wed, 08 Mar 2023 15:04:32 -0500 Received: from mimecast-mx02.redhat.com (mx3-rdu2.redhat.com [66.187.233.73]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id us-mta-643-R1cTlSxrMcS8EIIexxB1fw-1; Wed, 08 Mar 2023 15:04:26 -0500 Received: from smtp.corp.redhat.com (int-mx04.intmail.prod.int.rdu2.redhat.com [10.11.54.4]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mimecast-mx02.redhat.com (Postfix) with ESMTPS id F3B401C27D86; Wed, 8 Mar 2023 20:04:25 +0000 (UTC) Received: from kostyanf14nb.redhat.com (unknown [10.45.224.68]) by smtp.corp.redhat.com (Postfix) with ESMTPS id B8C5F2026D4B; Wed, 8 Mar 2023 20:04:24 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1678305869; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=n7a42SrubIoXUImbAN8XOyOMoYa67DMUvHOpB/gTJ0M=; b=DVCn21zItp4RE6GNyT+qHz06HEg1JRWu6twm2t/lY0hJCme4Xtko/nRy2vfxMPjVGEoHfj 6ELVW2S7BKp2fY0MAZzVZc+cI6mYYPC103UvXUkoPvN/FJNv9UPcQG/tIHF1+RjI9qZGEt gdyKNxN5xfRF3t7DX4wVFieaeWceCBU= X-MC-Unique: R1cTlSxrMcS8EIIexxB1fw-1 From: Konstantin Kostiuk To: qemu-devel@nongnu.org, Peter Maydell , =?UTF-8?q?Daniel=20P=20=2E=20Berrang=C3=A9?= Subject: [PULL 2/5] qga/win32: Use rundll for VSS installation Date: Wed, 8 Mar 2023 22:04:16 +0200 Message-Id: <20230308200419.453688-3-kkostiuk@redhat.com> In-Reply-To: <20230308200419.453688-1-kkostiuk@redhat.com> References: <20230308200419.453688-1-kkostiuk@redhat.com> MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable X-Scanned-By: MIMEDefang 3.1 on 10.11.54.4 Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer2=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=170.10.129.124; envelope-from=kkostiuk@redhat.com; helo=us-smtp-delivery-124.mimecast.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIMWL_WL_HIGH=-0.001, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, RCVD_IN_MSPIKE_H2=-0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+importer2=patchew.org@nongnu.org Sender: qemu-devel-bounces+importer2=patchew.org@nongnu.org X-ZohoMail-DKIM: pass (identity @redhat.com) X-ZM-MESSAGEID: 1678305956566100001 Content-Type: text/plain; charset="utf-8" The custom action uses cmd.exe to run VSS Service installation and removal which causes an interactive command shell to spawn. This shell can be used to execute any commands as a SYSTEM user. Even if call qemu-ga.exe directly the interactive command shell will be spawned as qemu-ga.exe is a console application and used by users from the console as well as a service. As VSS Service runs from DLL which contains the installer and uninstaller code, it can be run directly by rundll32.exe without any interactive command shell. Add specific entry points for rundll which is just a wrapper for COMRegister/COMUnregister functions with proper arguments. resolves: https://bugzilla.redhat.com/show_bug.cgi?id=3D2167423 fixes: CVE-2023-0664 (part 2 of 2) Signed-off-by: Konstantin Kostiuk Reviewed-by: Yan Vugenfirer Reported-by: Brian Wiltse --- qga/installer/qemu-ga.wxs | 10 +++++----- qga/vss-win32/install.cpp | 9 +++++++++ qga/vss-win32/qga-vss.def | 2 ++ 3 files changed, 16 insertions(+), 5 deletions(-) diff --git a/qga/installer/qemu-ga.wxs b/qga/installer/qemu-ga.wxs index feb629ec47..46ae9e7a13 100644 --- a/qga/installer/qemu-ga.wxs +++ b/qga/installer/qemu-ga.wxs @@ -127,22 +127,22 @@ =20 - + =20 diff --git a/qga/vss-win32/install.cpp b/qga/vss-win32/install.cpp index b57508fbe0..68662a6dfc 100644 --- a/qga/vss-win32/install.cpp +++ b/qga/vss-win32/install.cpp @@ -357,6 +357,15 @@ out: return hr; } =20 +STDAPI_(void) CALLBACK DLLCOMRegister(HWND, HINSTANCE, LPSTR, int) +{ + COMRegister(); +} + +STDAPI_(void) CALLBACK DLLCOMUnregister(HWND, HINSTANCE, LPSTR, int) +{ + COMUnregister(); +} =20 static BOOL CreateRegistryKey(LPCTSTR key, LPCTSTR value, LPCTSTR data) { diff --git a/qga/vss-win32/qga-vss.def b/qga/vss-win32/qga-vss.def index 927782c31b..ee97a81427 100644 --- a/qga/vss-win32/qga-vss.def +++ b/qga/vss-win32/qga-vss.def @@ -1,6 +1,8 @@ LIBRARY "QGA-PROVIDER.DLL" =20 EXPORTS + DLLCOMRegister + DLLCOMUnregister COMRegister PRIVATE COMUnregister PRIVATE DllCanUnloadNow PRIVATE --=20 2.25.1 From nobody Thu May 2 09:22:11 2024 Delivered-To: importer2@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer2=patchew.org@nongnu.org; dmarc=pass(p=none dis=none) header.from=redhat.com ARC-Seal: i=1; a=rsa-sha256; t=1678305917; cv=none; d=zohomail.com; s=zohoarc; b=XnnEA/rHaFWx+bP2G9pMLCzIbEZlzOk55KNlCMppBR/WSsrMLT1mu89oUPpb4KbEfFgoID8FK5JsSkDBLANZzSFR7Mzn6VGF/da6P7g7oi5wdQoqwo2jq3cIbxkeuBPeyUEFe+lde+rzfdK5h67gcjCu/skbFNF/IC68T/3MnrY= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1678305917; h=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; bh=7VdawxskoZ4vJELFk7KkOnzsqTS1Pl8mUwZ2u9LYOB8=; b=j8GaB0z98B+cD7getwwjTKpzk/3vfJ1mjK+mWuF0np5kulhDIS5bf/oWbFO1DNYiWc72DycCgPz+pIZDQnBS++cDIyCDMMF0YoH5Q53GCEgwxxbXJCasNOlxRb6Ytvtz05BPiq+FtgAdxY5LaCHbylQ9Z6iXR187mwzPkuxOGXo= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer2=patchew.org@nongnu.org; dmarc=pass header.from= (p=none dis=none) Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1678305917287307.69404627547885; Wed, 8 Mar 2023 12:05:17 -0800 (PST) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1pa01c-00012T-0Q; Wed, 08 Mar 2023 15:04:36 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1pa01Z-00011a-Lx for qemu-devel@nongnu.org; Wed, 08 Mar 2023 15:04:33 -0500 Received: from us-smtp-delivery-124.mimecast.com ([170.10.133.124]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1pa01X-0006xn-Iy for qemu-devel@nongnu.org; Wed, 08 Mar 2023 15:04:33 -0500 Received: from mimecast-mx02.redhat.com (mx3-rdu2.redhat.com [66.187.233.73]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id us-mta-44-QqPvE2rLOYuuILuSJOypcA-1; Wed, 08 Mar 2023 15:04:27 -0500 Received: from smtp.corp.redhat.com (int-mx04.intmail.prod.int.rdu2.redhat.com [10.11.54.4]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mimecast-mx02.redhat.com (Postfix) with ESMTPS id 1E7C21C27D8E; Wed, 8 Mar 2023 20:04:27 +0000 (UTC) Received: from kostyanf14nb.redhat.com (unknown [10.45.224.68]) by smtp.corp.redhat.com (Postfix) with ESMTPS id 3FB672026D4B; Wed, 8 Mar 2023 20:04:26 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1678305870; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=7VdawxskoZ4vJELFk7KkOnzsqTS1Pl8mUwZ2u9LYOB8=; b=Ff9yvjjdCHecw99yedYMHtDmPwWYD9JU5Ke2Lq2e4TtLqUPA1cYkPi8HNHi1oRTyu4Rps7 /VN2sJgFh7nV2MCmXM3tudLWJdmNcDNyMRtFDBN4Qa7c0aJmOdU2KGW3aGdoPNj4aRhH58 ILMcbIJxIN68UBMymvz1YWc932M5no0= X-MC-Unique: QqPvE2rLOYuuILuSJOypcA-1 From: Konstantin Kostiuk To: qemu-devel@nongnu.org, Peter Maydell , =?UTF-8?q?Daniel=20P=20=2E=20Berrang=C3=A9?= Subject: [PULL 3/5] qga/win/installer: add VssOption to installer Date: Wed, 8 Mar 2023 22:04:17 +0200 Message-Id: <20230308200419.453688-4-kkostiuk@redhat.com> In-Reply-To: <20230308200419.453688-1-kkostiuk@redhat.com> References: <20230308200419.453688-1-kkostiuk@redhat.com> MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable X-Scanned-By: MIMEDefang 3.1 on 10.11.54.4 Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer2=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=170.10.133.124; envelope-from=kkostiuk@redhat.com; helo=us-smtp-delivery-124.mimecast.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIMWL_WL_HIGH=-0.001, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, RCVD_IN_MSPIKE_H2=-0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+importer2=patchew.org@nongnu.org Sender: qemu-devel-bounces+importer2=patchew.org@nongnu.org X-ZohoMail-DKIM: pass (identity @redhat.com) X-ZM-MESSAGEID: 1678305918721100001 Content-Type: text/plain; charset="utf-8" From: Kfir Manor Adds registry value VssOption with value 1 to QEMU Guest Agent VSS Provider= service registry key Signed-off-by: Kfir Manor Reviewed-by: Konstantin Kostiuk Signed-off-by: Konstantin Kostiuk --- qga/installer/qemu-ga.wxs | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/qga/installer/qemu-ga.wxs b/qga/installer/qemu-ga.wxs index 46ae9e7a13..df572adb4a 100644 --- a/qga/installer/qemu-ga.wxs +++ b/qga/installer/qemu-ga.wxs @@ -122,6 +122,10 @@ + + + --=20 2.25.1 From nobody Thu May 2 09:22:11 2024 Delivered-To: importer2@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer2=patchew.org@nongnu.org; dmarc=pass(p=none dis=none) header.from=redhat.com ARC-Seal: i=1; a=rsa-sha256; t=1678305955; cv=none; d=zohomail.com; s=zohoarc; b=Ghir0gs8ef1FK1mejLmI5CYLXLa18ISok6YKfFLlel0LMliudKcKL00SoIvKxH+RUi9dlA8vAheUTBjNNcDJY8/dSJO5tivO34oGp6cyIHsz+5TffbcmHbU060OZFkhbG1GgPACS0JLx2bfPynzvbXVBlZ/mNGX9mRzOOseeQoI= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1678305955; h=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; bh=SR7Nzf/Ynf6gDendfnPnQChtOMCFkbv6WT+Z7RsIV44=; b=U0+8k2UHXP6qITvkOTDLAshnuABqztZ/yNI/ifxUaizve3dqn9LMstfKT2eErDZoub2xNrEgsWP2CdsvRdslVaNGkzVepXineNtGQ0A9YvkWrzl3SyJdHpcyR2AVJW//GcGwl74DLz5na8PpQ1+3eZ90XQhF2chXvm71Eu5G+eA= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer2=patchew.org@nongnu.org; dmarc=pass header.from= (p=none dis=none) Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1678305955958166.11615874450376; Wed, 8 Mar 2023 12:05:55 -0800 (PST) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1pa01a-00011w-MV; Wed, 08 Mar 2023 15:04:34 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1pa01Y-000114-Tl for qemu-devel@nongnu.org; Wed, 08 Mar 2023 15:04:32 -0500 Received: from us-smtp-delivery-124.mimecast.com ([170.10.133.124]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1pa01X-0006xY-0I for qemu-devel@nongnu.org; Wed, 08 Mar 2023 15:04:32 -0500 Received: from mimecast-mx02.redhat.com (mimecast-mx02.redhat.com [66.187.233.88]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id us-mta-582-s47-NiY7Nd-A6-5ZtTt-1w-1; Wed, 08 Mar 2023 15:04:28 -0500 Received: from smtp.corp.redhat.com (int-mx04.intmail.prod.int.rdu2.redhat.com [10.11.54.4]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mimecast-mx02.redhat.com (Postfix) with ESMTPS id 41F8A811E6E; Wed, 8 Mar 2023 20:04:28 +0000 (UTC) Received: from kostyanf14nb.redhat.com (unknown [10.45.224.68]) by smtp.corp.redhat.com (Postfix) with ESMTPS id 801212026D4B; Wed, 8 Mar 2023 20:04:27 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1678305870; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=SR7Nzf/Ynf6gDendfnPnQChtOMCFkbv6WT+Z7RsIV44=; b=fCZDSx6ykEQReyhG9mpvvLMlf7CKC7Ga87Lqb1wm7rtDdpCoJF3ubEyAusy4P9+dyBOsbW EE2D+K5ZLfTpzY4+xr26drVgDke2rPumTf4z1wOuo8ZsLPFipp4v+0CoAPGueHDqZ9x3ZE eysLk2yg73vi+WxxY8PhADkbXECy97M= X-MC-Unique: s47-NiY7Nd-A6-5ZtTt-1w-1 From: Konstantin Kostiuk To: qemu-devel@nongnu.org, Peter Maydell , =?UTF-8?q?Daniel=20P=20=2E=20Berrang=C3=A9?= Subject: [PULL 4/5] qga/win/vss: query VSS backup type Date: Wed, 8 Mar 2023 22:04:18 +0200 Message-Id: <20230308200419.453688-5-kkostiuk@redhat.com> In-Reply-To: <20230308200419.453688-1-kkostiuk@redhat.com> References: <20230308200419.453688-1-kkostiuk@redhat.com> MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable X-Scanned-By: MIMEDefang 3.1 on 10.11.54.4 Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer2=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=170.10.133.124; envelope-from=kkostiuk@redhat.com; helo=us-smtp-delivery-124.mimecast.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIMWL_WL_HIGH=-0.001, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, RCVD_IN_MSPIKE_H2=-0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+importer2=patchew.org@nongnu.org Sender: qemu-devel-bounces+importer2=patchew.org@nongnu.org X-ZohoMail-DKIM: pass (identity @redhat.com) X-ZM-MESSAGEID: 1678305956568100002 Content-Type: text/plain; charset="utf-8" From: Kfir Manor Query VSS backup type number (DWORD) from QEMU Guest Agent VSS Provider reg= istry key registry value VssOption Translate the VSS backup type number (DWORD) into its VSS backup type (VSS_= BACKUP_TYPE) Returns the queried VSS backup type if the program encounters unexpected be= haviors or values return default VSS backup type VSS_BT_FULL instead Signed-off-by: Kfir Manor Reviewed-by: Konstantin Kostiuk Signed-off-by: Konstantin Kostiuk --- qga/vss-win32/requester.cpp | 38 +++++++++++++++++++++++++++++++++++++ qga/vss-win32/vss-handles.h | 3 +++ 2 files changed, 41 insertions(+) diff --git a/qga/vss-win32/requester.cpp b/qga/vss-win32/requester.cpp index b371affeab..e06d516675 100644 --- a/qga/vss-win32/requester.cpp +++ b/qga/vss-win32/requester.cpp @@ -23,6 +23,8 @@ /* Call QueryStatus every 10 ms while waiting for frozen event */ #define VSS_TIMEOUT_EVENT_MSEC 10 =20 +#define DEFAULT_VSS_BACKUP_TYPE VSS_BT_FULL + #define err_set(e, err, fmt, ...) = \ ((e)->error_setg_win32_wrapper((e)->errp, __FILE__, __LINE__, __func__= , \ err, fmt, ## __VA_ARGS__)) @@ -234,6 +236,42 @@ out: } } =20 +DWORD get_reg_dword_value(HKEY baseKey, LPCSTR subKey, LPCSTR valueName, + DWORD defaultData) +{ + DWORD regGetValueError; + DWORD dwordData; + DWORD dataSize =3D sizeof(DWORD); + + regGetValueError =3D RegGetValue(baseKey, subKey, valueName, RRF_RT_DW= ORD, + NULL, &dwordData, &dataSize); + if (regGetValueError !=3D ERROR_SUCCESS) { + return defaultData; + } + return dwordData; +} + +bool is_valid_vss_backup_type(VSS_BACKUP_TYPE vssBT) +{ + return (vssBT > VSS_BT_UNDEFINED && vssBT < VSS_BT_OTHER); +} + +VSS_BACKUP_TYPE get_vss_backup_type( + VSS_BACKUP_TYPE defaultVssBT =3D DEFAULT_VSS_BACKUP_TYPE) +{ + VSS_BACKUP_TYPE vssBackupType; + + vssBackupType =3D static_cast( + get_reg_dword_value(HKEY_LOCAL_MACHINE, + QGA_PROVIDER_REGISTRY_ADDR= ESS, + "VssOption", + defaultVssBT)); + if (!is_valid_vss_backup_type(vssBackupType)) { + return defaultVssBT; + } + return vssBackupType; +} + void requester_freeze(int *num_vols, void *mountpoints, ErrorSet *errset) { COMPointer pAsync; diff --git a/qga/vss-win32/vss-handles.h b/qga/vss-win32/vss-handles.h index 0f8a741ad2..1a7d842129 100644 --- a/qga/vss-win32/vss-handles.h +++ b/qga/vss-win32/vss-handles.h @@ -6,6 +6,9 @@ #define QGA_PROVIDER_NAME "QEMU Guest Agent VSS Provider" #define QGA_PROVIDER_LNAME L(QGA_PROVIDER_NAME) #define QGA_PROVIDER_VERSION L(QEMU_VERSION) +#define QGA_PROVIDER_REGISTRY_ADDRESS "SYSTEM\\CurrentControlSet"\ + "\\Services"\ + "\\" QGA_PROVIDER_NAME =20 #define EVENT_NAME_FROZEN "Global\\QGAVSSEvent-frozen" #define EVENT_NAME_THAW "Global\\QGAVSSEvent-thaw" --=20 2.25.1 From nobody Thu May 2 09:22:11 2024 Delivered-To: importer2@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer2=patchew.org@nongnu.org; dmarc=pass(p=none dis=none) header.from=redhat.com ARC-Seal: i=1; a=rsa-sha256; t=1678305976; cv=none; d=zohomail.com; s=zohoarc; b=hi0ZtRaLgXEtwoat9U1eznMQ1sDADkBTZ81ifMY6xpKkbz7Dj4cVyuHz79uuIi4ANf0Vn12IZWl4dhGDPAY5wwnoADsdndbM5AqZEn6fgjDmW2vP3/V1dJaaGA4gCaEytm0KnV9DeZY44sD+64ppew9hOH5qdiexJ+WO4tK5boE= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1678305976; h=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; bh=X/AFU0JU1z8T5WP1b+002mj/Rf7qzwuGBuYJ1H4aWS8=; b=QPUB3CGi0wgFcI0cAoNXLhzkaTsFhWoCfnvwzld2GtO5GdT0yn5pS0FYO6apJ+Gi5U1NBAZdG/Ho85RHMYMVAj4uNPMopO/ahzwgXTJo9Ia0YU2+xbfpFffPP3q6ylbMkl/i0d+WuW6Fy2pfcO0JVV9u3gwUgds0j0QPcnAEKJ4= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer2=patchew.org@nongnu.org; dmarc=pass header.from= (p=none dis=none) Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1678305976590794.0953104361502; Wed, 8 Mar 2023 12:06:16 -0800 (PST) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1pa01b-00012I-L8; Wed, 08 Mar 2023 15:04:35 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1pa01a-00011i-3q for qemu-devel@nongnu.org; Wed, 08 Mar 2023 15:04:34 -0500 Received: from us-smtp-delivery-124.mimecast.com ([170.10.133.124]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1pa01Y-0006xx-LK for qemu-devel@nongnu.org; Wed, 08 Mar 2023 15:04:33 -0500 Received: from mimecast-mx02.redhat.com (mx3-rdu2.redhat.com [66.187.233.73]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id us-mta-602-Fyh9Fmv2M8G33-U528q4Fg-1; Wed, 08 Mar 2023 15:04:29 -0500 Received: from smtp.corp.redhat.com (int-mx04.intmail.prod.int.rdu2.redhat.com [10.11.54.4]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mimecast-mx02.redhat.com (Postfix) with ESMTPS id 7AD751C27D85; Wed, 8 Mar 2023 20:04:29 +0000 (UTC) Received: from kostyanf14nb.redhat.com (unknown [10.45.224.68]) by smtp.corp.redhat.com (Postfix) with ESMTPS id 824A22026D4B; Wed, 8 Mar 2023 20:04:28 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1678305871; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=X/AFU0JU1z8T5WP1b+002mj/Rf7qzwuGBuYJ1H4aWS8=; b=MOl56X41Gv8Cj732eG11qT4ANfNOscHFHDn0IXXR22/ZQLEGCWY48u3wmw3eylde63lxwb pUZ1undHQ5qMspTJWLM6A2tFF9ngKxxcSSJ6kyYNXdh0UoDbT1LsFQvrizVKmyjRhYrzU0 KDEcQ1tNcTz4e6i3aYeqf9Y4ja3z4zg= X-MC-Unique: Fyh9Fmv2M8G33-U528q4Fg-1 From: Konstantin Kostiuk To: qemu-devel@nongnu.org, Peter Maydell , =?UTF-8?q?Daniel=20P=20=2E=20Berrang=C3=A9?= Subject: [PULL 5/5] qga/win/vss: requester_freeze changes Date: Wed, 8 Mar 2023 22:04:19 +0200 Message-Id: <20230308200419.453688-6-kkostiuk@redhat.com> In-Reply-To: <20230308200419.453688-1-kkostiuk@redhat.com> References: <20230308200419.453688-1-kkostiuk@redhat.com> MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable X-Scanned-By: MIMEDefang 3.1 on 10.11.54.4 Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer2=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=170.10.133.124; envelope-from=kkostiuk@redhat.com; helo=us-smtp-delivery-124.mimecast.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIMWL_WL_HIGH=-0.001, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, RCVD_IN_MSPIKE_H2=-0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+importer2=patchew.org@nongnu.org Sender: qemu-devel-bounces+importer2=patchew.org@nongnu.org X-ZohoMail-DKIM: pass (identity @redhat.com) X-ZM-MESSAGEID: 1678305978683100003 Content-Type: text/plain; charset="utf-8" From: Kfir Manor Change requester_freeze so that the VSS backup type queried from the regist= ry Signed-off-by: Kfir Manor Reviewed-by: Konstantin Kostiuk Signed-off-by: Konstantin Kostiuk --- qga/vss-win32/requester.cpp | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/qga/vss-win32/requester.cpp b/qga/vss-win32/requester.cpp index e06d516675..3e998af4a8 100644 --- a/qga/vss-win32/requester.cpp +++ b/qga/vss-win32/requester.cpp @@ -285,6 +285,7 @@ void requester_freeze(int *num_vols, void *mountpoints,= ErrorSet *errset) DWORD wait_status; int num_fixed_drives =3D 0, i; int num_mount_points =3D 0; + VSS_BACKUP_TYPE vss_bt =3D get_vss_backup_type(); =20 if (vss_ctx.pVssbc) { /* already frozen */ *num_vols =3D 0; @@ -332,7 +333,7 @@ void requester_freeze(int *num_vols, void *mountpoints,= ErrorSet *errset) goto out; } =20 - hr =3D vss_ctx.pVssbc->SetBackupState(true, true, VSS_BT_FULL, false); + hr =3D vss_ctx.pVssbc->SetBackupState(true, true, vss_bt, false); if (FAILED(hr)) { err_set(errset, hr, "failed to set backup state"); goto out; --=20 2.25.1