From nobody Mon Sep 8 17:07:22 2025 Delivered-To: importer@patchew.org Received-SPF: pass (zohomail.com: domain of lists.libvirt.org designates 8.43.85.245 as permitted sender) client-ip=8.43.85.245; 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 8.43.85.245 as permitted sender) smtp.mailfrom=devel-bounces@lists.libvirt.org; arc=pass (i=1 dmarc=pass fromdomain=cyberus-technology.de); dmarc=pass(p=none dis=none) header.from=cyberus-technology.de ARC-Seal: i=2; a=rsa-sha256; t=1756815059; cv=pass; d=zohomail.com; s=zohoarc; b=GKIesFRDyZq511g+Y4KL3kUke01XgOi+MthSY3bUIKzeILhQGwKZWEpsjDRMGMQMsZpkeeTMn+TdxJFea2CG2nMYMt00aGeFF9fgg2UusPB6tHGXZU+fk79XFajFiv/W5pvlYn5LLNoHCp+T9Udfa93lPExqDagfiHOwYJIwPmw= ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1756815059; h=Content-Type:Content-Transfer-Encoding:Cc:Cc:Date:Date:From:From:In-Reply-To:List-Subscribe:List-Post:List-Owner:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Subject:Subject:To:To:Message-Id:Reply-To; bh=PpDiqMRsYLeAm5HSzVNUDTPGWfFmfKH75tW2A8MepB8=; b=IhrCjSuR4M5h81opdhSZuM2AtnUGKtTrvjp7Qfzi4I4PToD5Yl7rPH8bP0ssBkaqubOOuLIZIYuVrPPgHiBnJIFnefYqN/JdR9OXUTYnECIE7RmdXENOtHDqUX4yAUbimfczghrY347jr6UGa0HfldD78bWqY42jZ6t0lY5oKmg= ARC-Authentication-Results: i=2; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of lists.libvirt.org designates 8.43.85.245 as permitted sender) smtp.mailfrom=devel-bounces@lists.libvirt.org; arc=pass (i=1 dmarc=pass fromdomain=cyberus-technology.de); dmarc=pass header.from= (p=none dis=none) Return-Path: Received: from lists.libvirt.org (lists.libvirt.org [8.43.85.245]) by mx.zohomail.com with SMTPS id 1756815059324112.92331932813931; Tue, 2 Sep 2025 05:10:59 -0700 (PDT) Received: by lists.libvirt.org (Postfix, from userid 993) id 6974D43FBD; Tue, 2 Sep 2025 08:10:58 -0400 (EDT) Received: from [172.19.199.3] (lists.libvirt.org [8.43.85.245]) by lists.libvirt.org (Postfix) with ESMTP id 5936A445C7; Tue, 2 Sep 2025 07:57:01 -0400 (EDT) Received: by lists.libvirt.org (Postfix, from userid 993) id 6D5C44419B; Tue, 2 Sep 2025 07:55:56 -0400 (EDT) Received: from FR4P281CU032.outbound.protection.outlook.com (mail-germanywestcentralazon11022111.outbound.protection.outlook.com [40.107.149.111]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange ECDHE (prime256v1) server-signature RSA-PSS (3072 bits) server-digest SHA256) (No client certificate requested) by lists.libvirt.org (Postfix) with ESMTPS id 1372F4414B for ; Tue, 2 Sep 2025 07:55:48 -0400 (EDT) Received: from BEZP281MB1973.DEUP281.PROD.OUTLOOK.COM (2603:10a6:b10:46::5) by FR5P281MB5644.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:1ae::12) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.9073.27; Tue, 2 Sep 2025 11:55:40 +0000 Received: from BEZP281MB1973.DEUP281.PROD.OUTLOOK.COM ([fe80::7272:f32d:eb8d:e401]) by BEZP281MB1973.DEUP281.PROD.OUTLOOK.COM ([fe80::7272:f32d:eb8d:e401%3]) with mapi id 15.20.9073.026; Tue, 2 Sep 2025 11:55:40 +0000 X-Spam-Checker-Version: SpamAssassin 4.0.1 (2024-03-26) on lists.libvirt.org X-Spam-Level: X-Spam-Status: No, score=-1.8 required=5.0 tests=ARC_SIGNED,ARC_VALID, DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,HEADER_FROM_DIFFERENT_DOMAINS, MAILING_LIST_MULTI,RCVD_IN_DNSWL_LOW, RCVD_IN_VALIDITY_CERTIFIED_BLOCKED,RCVD_IN_VALIDITY_RPBL_BLOCKED, RCVD_IN_VALIDITY_SAFE_BLOCKED,SPF_PASS autolearn=unavailable autolearn_force=no version=4.0.1 ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=NNuFdiLWlEpgi/Y9Zpp+anKWzPydQWk3l34aU7P+jzldpQ/bAnxbeKwukKg2S5P+94yKNw22nKhCG0CFwRiH2N+YlqreO1qrnHGZvNBC55DtZgXafBSkGsBMdGkBe3uAMg/5ULKV1+OklsF2OXP8l0u6yRre0eiNvf7i+34q8v63IMZqBdTr4BqtvKaUPl7YkyfjqCVLSUFgSZhISRfbVielRN5c/Q8bodrRPLr1f2S3x2hmd/vmq3mRPolZ+8bONHkTaqOgK467iysxLHGgescTqnY0FXDc50KRJWDYzTf4nHpfvErtwTpjb8uApF8Zvz8DsJDC/zYYdWTZtjDuPw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector10001; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=PpDiqMRsYLeAm5HSzVNUDTPGWfFmfKH75tW2A8MepB8=; b=POSMP71ohpkbC4DLyblr9+sWKk8xjB7uChuraW+lRA+einMlhyAFs18dmVDZ5htZ7CEThGyTXcvC6IhQLTM2T9uepcJ1WJ4COUXERUAkSPnABSLB8vAlbpINPAjzyW6kmOyeNyGSlMRqNyiJGGnu9rUrayPdvaXRJonhQsPhcXr0Kh043YzWZGmfsI3LEQJ685yBiVFD2H62LUj5jjBy/9loGImBdPNV0B8aVNZATdtYtlNHjfvztLXWClaRb5nJXpRC/bEq/llapC7hElcI3/S1Rv2a5dztNBgGlXLwPFa2yK8KaO/6io/z6wcOUQvwn+eU6EjCQMX6PeFC11Sd7g== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=cyberus-technology.de; dmarc=pass action=none header.from=cyberus-technology.de; dkim=pass header.d=cyberus-technology.de; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=cyberus-technology.de; s=selector2; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=PpDiqMRsYLeAm5HSzVNUDTPGWfFmfKH75tW2A8MepB8=; b=UQgl9Bz7MfsOMjw/britnIgqhssMWfnxv7PcvYEOccvy005VpuGWbvxMyMBrfFlgoGw9hEHWZdv5uJfNR2dYg1Z/4bXklnELJgVgvrETIy3Rv50/k0iMj62UGDhR2K0jz7IbbcDUB1Ab5fHSG9jxn3l6SuChl6swQl/xHPtcx7htVSUb+FdrnmU2+ZkwcLqzaYj5H0FeY946Vnas9lh4F41CxT5auv4vmVu1Issyr2YL5VxqW264N9wjXpaKZXxDOQucbKnSP8IjTGpU3W0ZEt5drtjI39n9vXpWXLC31a+Osas5X/YViMpRoD4W3yaFT9OMxSxgMwTxGvzQAmfg2w== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=cyberus-technology.de; From: Stefan Kober To: devel@lists.libvirt.org Subject: [PATCH v2 11/13] ch: Add virCHMonitorRemoveDevice function Date: Tue, 2 Sep 2025 13:55:26 +0200 Message-ID: <20250902115528.557133-12-stefan.kober@cyberus-technology.de> X-Mailer: git-send-email 2.50.1 In-Reply-To: <20250902115528.557133-1-stefan.kober@cyberus-technology.de> References: <20250902115528.557133-1-stefan.kober@cyberus-technology.de> Content-Transfer-Encoding: quoted-printable X-ClientProxiedBy: FR5P281CA0052.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:f0::11) To BEZP281MB1973.DEUP281.PROD.OUTLOOK.COM (2603:10a6:b10:46::5) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: BEZP281MB1973:EE_|FR5P281MB5644:EE_ X-MS-Office365-Filtering-Correlation-Id: 453f6862-8299-4297-003c-08ddea17a36a X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230040|1800799024|10070799003|376014|366016; X-Microsoft-Antispam-Message-Info: =?us-ascii?Q?ie53PnSZzQ7Hv1G8KLnPz5o8fcPoxkTe1xjFSu6nJUN3WTze0lFr89rwEJW2?= =?us-ascii?Q?6MZULb4h/zSGHgqHrEDRyP0L6cYYau9MiyDjbFBnBMoGZEbV4svWN4dMo4mA?= =?us-ascii?Q?9nHvqKtSas8RlgSLmHut5msrx60+fP5Len1SzL0PRHYt6l4VhyUbaLja7sAl?= =?us-ascii?Q?7ipr3T5FS3u9IIkO9X+ZK6q5ZHG2w6irqoh7IrxVsO+ISBihZXbraLkQPduL?= =?us-ascii?Q?xGBpp5REwjDe+jku6hhlTzn2KZZ0eDXKJ3jl2aRihRThQf2+ngXoPMPPsCJe?= =?us-ascii?Q?5I7rw0v15IE54U0CYyAXeDZetm2NGHsBXepoaVZyfokVNCjZm/nNb/vyrE0C?= =?us-ascii?Q?UK+y6kRBhXITLr0TQMc6xiLHoQJY82CpS0egcfGzTwJZ9gbntzfnix77Gj/J?= =?us-ascii?Q?b8rkO7U7LzWR3D1OvKyazmPhdm69XoLYAZvZBmoYx8bqxIE4xckahjmJ6ASO?= =?us-ascii?Q?6+YXSEysS8xdeLF6xdtPqCnPmzcIySugGtQkIRT0Wu9QZFQJkjN5MNNvatPt?= =?us-ascii?Q?x+bi4SJMBdF6C2lY122PtsJoUaYShSVasN4QhaBPsO4TPOVwSVGPo3Me5dEs?= =?us-ascii?Q?zCuB3URXJ2oAMYno0TbUQ9pgxJBRphpq8CqsfIIeOsSroTOM4AYq8XJK+kWk?= =?us-ascii?Q?NPuAbnPUaxQ5XebY7/fz8ny0ujpYygf3OUn8yEFr0uy2UfUquL1p9W3WRap8?= =?us-ascii?Q?VRM2uxU5gSu5XBKY0Egxhta2NoVlsB5/NjYP0P9FELXAB9fGG7mV1WyX5thw?= =?us-ascii?Q?sJMtevV9tslU8RhB+zvmyvfaIfDAZtNgbWwYq18R4O6Th5G40fdO8qZg73Pl?= =?us-ascii?Q?/yc95Kbpoe+9dMDJAl04KRcyzzwzD0RA/5GOISAwS26h8qkUd9RavAQOYrZG?= =?us-ascii?Q?meSRq2MQWYL6hkoPBHwBZo2ekUDZmfYYXqnXupOxI5FypIjdMR2/Tl1GIfjO?= =?us-ascii?Q?1kKNz//34xRZUNP5tGZzzJUPoRfICNu/7ehTKqZiQkcbbvoAZNtFL2Vi7zWZ?= =?us-ascii?Q?1/H7zQAdoic7+OEcarOHRSVLb3c+ygAtKHB9/FT2D7t8IKIHCGV9zpCPGvDP?= =?us-ascii?Q?mpgoOYoBlIYRud4zgUGkHyrT/ckHzzuOswt29JFi6v0T0DwKeVnvIoI0Elfb?= =?us-ascii?Q?X2egWmcLYWzBDLgXabb5mO8pl+GTjtVOGDKf1SjVXppd6iiIzyl+kqlOYD2G?= =?us-ascii?Q?TaffVRTONL8vomOeaL7quzS9SImekU/FiTnDQMt+iFX2ZJOlFOQPh0BpTz/o?= =?us-ascii?Q?aK5HX31B8be/+vv150ydKw2exXPQV7YEU42+gYBJ6uPCzFMe1HdAnhv+6i3R?= =?us-ascii?Q?c3WdQX2IiWcIviAjfTAW0O92aeqFkMCwKlXC0QiqTleFt/n/Du8L0MVCynxZ?= =?us-ascii?Q?t906KItpKir9DHdPW7bTI3/fQNsOp/kTVzZx/XmeEiTRV8Ig40SS0GarVkhI?= =?us-ascii?Q?IlJUWomnofQ=3D?= X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:BEZP281MB1973.DEUP281.PROD.OUTLOOK.COM;PTR:;CAT:NONE;SFS:(13230040)(1800799024)(10070799003)(376014)(366016);DIR:OUT;SFP:1102; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?iuogHp7WxZqkZuI03FOUl93qZ0vDFSRdmatLnH637zLTX9Z31cuX0Aim29/z?= =?us-ascii?Q?9130EqWf4TG0+EAmfkFj0pmEUgMKRqqgKyJsW5ZyqnCDMJk/5NfxOnxKXHHX?= =?us-ascii?Q?yZiXVtzSSsOkc8mVNMlyk4prsb5DluTr4GtR/0HKgJ5P/3VOwd5Lsru5XsqX?= =?us-ascii?Q?KdQF9Vq/7uzaqD6jEdqq+6JWJjccVrDs1s4S6qTiqSRJkDbtSf6ok2DHzR6c?= =?us-ascii?Q?+Movw7WKjxTaavsRuPwmnVzwUlkbFc2q+INO8Klv1s/RvroPQkIhMnVw+jyw?= =?us-ascii?Q?0aG715GUaHu6b801vgltjQlMU9Zu2Gz81uRptwuQGOHtSGO2Pfcr6/mJlCLU?= =?us-ascii?Q?079LlWQse/UMl3NZF2MblKZAxt2gD2kArldvGvkbMXj6aBI/sYaJX59KlHMG?= =?us-ascii?Q?fjpBofchYG4vRrQGq4nhpW4ZXnOilpXVViHcMZakeVPRixEQCp9cCE8xb+XP?= =?us-ascii?Q?5VD8a1PEsH4GK9oyzq9fbpVRQAsVJHuSpCxksJtYHZdcMIWV0XuQUMCNWDYu?= =?us-ascii?Q?2m/kiTBzHgYzvuaZ1JXJHQwJw6UoBWmc2FO3KFxDqM4xWZlQ5fjkbndCTxpD?= =?us-ascii?Q?rLKyt9KOpqhiZwhS1mdKr6XA7uCkAJwONZUyKFsGn/MKIy8wwI9NJlSnWZrq?= =?us-ascii?Q?v55/oDMTdmf1gCLaUr3y/ZoBSzbgVoSDJjbevG0pxYhdGYUedxql1ufA3nqw?= =?us-ascii?Q?HgR4s1fD6xC8i87+uNWdJiLqYFDZ6C39yjLvhLjz7nxEMTGea26nk+N1pwWp?= =?us-ascii?Q?qhsp9lwbBspmY3Hz1SHWoA1psvDQk6Lnz9hJ5ANz/FdIG0Ls+kx8PaIsxRZJ?= =?us-ascii?Q?Cy5rbulimDAR7ESTKhVn9KdYT0N6W7wE0peup01FiKI/07/TtthfEne3VhVW?= =?us-ascii?Q?5BWZxdUEZXYBGZxDo3tsGfNSwlXWflCPY7JCOU5yV9htI04973EEuZNtoKwb?= =?us-ascii?Q?RlnN3y+FcsJRvzTnKRmo4pUrgtEB0HDe7COlV5U2do9WpJL8kTS8UP6ScXjC?= =?us-ascii?Q?Ty2KQruwBNU3nLyUXLUhip1IRk3CcNnTEexs45U3UdfZkVABNd9votwkWrhP?= =?us-ascii?Q?gABZRUB/zjk1n8Igbt98vPVnEWtTVinUopYuMz4WIi0lzHeGWXRnDVTA5qEx?= =?us-ascii?Q?O5m7dEzlo3BTzWP40qaQhF4IRJaS1MV9NP5Pms+Q4K2ppRT+Jso316aA01jq?= =?us-ascii?Q?qbUrAykJTj7Z/xjXF199NDc7iZzBlvAhBY3DPJo8uyAN7Js1Ev/umhIeGx8h?= =?us-ascii?Q?GC4uce7YfmPvk6W/sDX8SGxbnHkORu35D4xfCQ9CxdM0poPzAr8IqKvDeEzc?= =?us-ascii?Q?416WrJXvf2jTf3pkvBnFLN1p+aCmEY29gLpBgyqoAwlFYkgDAaYHufjujN//?= =?us-ascii?Q?BkRr4xOTrv6LzbmKQWLxyOUBr0IRBWXNLjIEUHh2rUyl5YEA1UDK5kq1Rpxj?= =?us-ascii?Q?okJZ2pvzBUfUKRTPtdREkNOtuyADGEUwVrCL2ynifH4vtZ8kZkYfq90THrw0?= =?us-ascii?Q?FUn+TCHYuL5M7a2ljB67LfGuwVI8pnP4s6qyn8h4/cNM0O87Qx71qi2VuU42?= =?us-ascii?Q?nf2lds11ypLJu24PViCVZpXIn4GfyIiwU6b4htp4x7ypJpc4/WLPuiDkosDn?= =?us-ascii?Q?KgdBVCati16pZbK3cDkzwYruKZEI1WOm5qwdtTvCxwhJ?= X-OriginatorOrg: cyberus-technology.de X-MS-Exchange-CrossTenant-Network-Message-Id: 453f6862-8299-4297-003c-08ddea17a36a X-MS-Exchange-CrossTenant-AuthSource: BEZP281MB1973.DEUP281.PROD.OUTLOOK.COM X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 02 Sep 2025 11:55:40.5068 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: f4e0f4e0-9d68-4bd6-a95b-0cba36dbac2e X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: JPDTacQ4RGqVLLq3f8vdUOXPnn3kiJ/Wm2ofFkSZzGEZRrfuvuqSlyTD0T04iRnKJ46SETOCU6Adbm+2TRXs+4EQKAiW7hBG3ojm3cicWjTZDo3qRvA+PcYHv/anTfPX X-MS-Exchange-Transport-CrossTenantHeadersStamped: FR5P281MB5644 Message-ID-Hash: OB3LNXANNL7HPJ7MRMGLF5CPV4VY4WQV X-Message-ID-Hash: OB3LNXANNL7HPJ7MRMGLF5CPV4VY4WQV X-MailFrom: stefan.kober@cyberus-technology.de 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: Stefan Kober 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 @cyberus-technology.de) X-ZM-MESSAGEID: 1756815061316116600 Content-Type: text/plain; charset="utf-8" The function calls the respective CH API to remove a device of any type from a VM. On-behalf-of: SAP stefan.kober@sap.com Signed-off-by: Stefan Kober --- src/ch/ch_monitor.c | 13 +++++++++++++ src/ch/ch_monitor.h | 3 +++ 2 files changed, 16 insertions(+) diff --git a/src/ch/ch_monitor.c b/src/ch/ch_monitor.c index 8968d84a71..ee629f61fb 100644 --- a/src/ch/ch_monitor.c +++ b/src/ch/ch_monitor.c @@ -596,6 +596,19 @@ virCHMonitorBuildKeyValueStringJson(char **jsonstr, return 0; } =20 +int virCHMonitorRemoveDevice(virCHMonitor *mon, + const char* device_id) +{ + g_autofree char *payload =3D NULL; + + if (virCHMonitorBuildKeyValueStringJson(&payload, "id", device_id) != =3D 0) + return -1; + + VIR_DEBUG("Remove device %s", device_id); + + return virCHMonitorPut(mon, URL_VM_REMOVE_DEVICE, payload, NULL, NULL); +} + static int chMonitorCreateSocket(const char *socket_path) { diff --git a/src/ch/ch_monitor.h b/src/ch/ch_monitor.h index 8338059c7c..e8fa393e54 100644 --- a/src/ch/ch_monitor.h +++ b/src/ch/ch_monitor.h @@ -41,6 +41,7 @@ #define URL_VM_SAVE "vm.snapshot" #define URL_VM_RESTORE "vm.restore" #define URL_VM_ADD_DISK "vm.add-disk" +#define URL_VM_REMOVE_DEVICE "vm.remove-device" =20 #define VIRCH_THREAD_NAME_LEN 16 =20 @@ -141,6 +142,8 @@ virCHMonitorBuildNetJson(virDomainNetDef *netdef, char **jsonstr); int virCHMonitorAddDisk(virCHMonitor* mon, virDomainDiskDef *diskdef); +int virCHMonitorRemoveDevice(virCHMonitor *mon, + const char* device_id); =20 int virCHMonitorBuildRestoreJson(virDomainDef *vmdef, const char *from, --=20 2.50.1