From nobody Mon Sep 8 17:06:07 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=1756387473; cv=pass; d=zohomail.com; s=zohoarc; b=Pc7E83a5pRFc5fAFVpz5bvCMN9k6JSJJQz/fiQQrjjjdlZkrivECWiDVQYTYrteR3qnXpNAAJ7p3PZZWD4hNVz55xKMpEnHeNaIZKVoYbS2cxqnUkxx690Ifb+6HCHprp5mYIIx1kswKQNnjbGd/bnYurdbcZfq8FAxJn0ZhSX4= ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1756387473; 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=Y0CBwNd4Bjul1Ry2LVq/2AfhT3iTgpUtVjbrLuu9YO8=; b=eL0iGu5QfhtA8dYd+VPdf2J0juUrX12XxQ4f1xb1+cE+i8ER+eK6vcrw0WtgMPp7QgT7no9GMDWpazVjf22TMzacx4i4eLLd91Jou2yo9bapGkLV39NDQFnCLfqU7SBK2sVlS+f3j08UVWPaC9ZdvwhSDrr+CZu56VWqjcrYso8= 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 1756387473426880.3551958343687; Thu, 28 Aug 2025 06:24:33 -0700 (PDT) Received: by lists.libvirt.org (Postfix, from userid 993) id 974DE44207; Thu, 28 Aug 2025 09:24:32 -0400 (EDT) Received: from [172.19.199.3] (lists.libvirt.org [8.43.85.245]) by lists.libvirt.org (Postfix) with ESMTP id 71FEE4443D; Thu, 28 Aug 2025 08:56:52 -0400 (EDT) Received: by lists.libvirt.org (Postfix, from userid 993) id 35998440A0; Thu, 28 Aug 2025 08:55:16 -0400 (EDT) Received: from BEUP281CU002.outbound.protection.outlook.com (mail-germanynorthazon11020113.outbound.protection.outlook.com [52.101.169.113]) (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 D366044083 for ; Thu, 28 Aug 2025 08:55:09 -0400 (EDT) Received: from BEZP281MB1973.DEUP281.PROD.OUTLOOK.COM (2603:10a6:b10:46::5) by BEVP281MB3430.DEUP281.PROD.OUTLOOK.COM (2603:10a6:b10:91::13) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.9073.16; Thu, 28 Aug 2025 12:55:06 +0000 Received: from BEZP281MB1973.DEUP281.PROD.OUTLOOK.COM ([fe80::7272:f32d:eb8d:e401]) by BEZP281MB1973.DEUP281.PROD.OUTLOOK.COM ([fe80::7272:f32d:eb8d:e401%5]) with mapi id 15.20.9052.021; Thu, 28 Aug 2025 12:55:06 +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=lxVKzOgH5OtQpkmTZ3pzsdnaaVOOv//anQY+qDOtD9WNQmfJU7R6riXrPI7rAAhV+JUB2IDmyTpzswOXFRXsWAgaVHPml1z3VObsAMpFQw76NqeLZ5hHOHQYw2whiPMo45ENxiedXRiqzKNFH6eEc6suMtvETJw0zMmjVC0Ne4h444ZuM0vfgHE70aj9Zyje5fg0qZyhx8zMlRf8GMQ2VTsnikX+ZNVDgOCpnidprGLMFyEeFGyXpax66rZrO8QSu6YVnaDoQY3hrMrywU/V0rnNy4PJGzZp6wtJLLpXq1Pi6v+m7wjKpqWWEah9oaGzQyIxvJlz+2rZoAiqDlsjRA== 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=Y0CBwNd4Bjul1Ry2LVq/2AfhT3iTgpUtVjbrLuu9YO8=; b=rEeq7LI/LyttkEOy1dKhblQjBF/jAxmB11zw/QYbtFTpsBkp7tfkrMbByY9CZ/9PzsVe0yu07Bg3sKacgizAg3MJKbuN7uyx9G5cCAOerbYN2U+L56ENfnkWOeull2F6RjWFiu6sf89uuguUFP7No1WnY9btuLQ58wIxNN1nWh3Ksq9xzZn0zUSaHr8lCrUqKCzsMuRTTEn5HO+KNiUaHvlLk/cLweF0ptpFi5EjML+1FxLS/x1rd3f2dGBzVduDZNP0tEOZ0K+pbDUgeu3irU762CR1qT1kV/O+/47pydhnVz1GgKpmdLI/5VMWsswT84ECGm4LUnqvYxzUBx+qUA== 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=Y0CBwNd4Bjul1Ry2LVq/2AfhT3iTgpUtVjbrLuu9YO8=; b=OC/M3cODO6NNqbDmFGMnxvUqZWxuYY5WuH1Gnayh2WZrCe6ymGknBmB4iBo90l/TUF67kOPpD+MbzPSurIh0v8n1KlAS48JioEW3+FzmFpZrtX+jt/o+skgSoZDG61rZZt2Rw38CKRYlwtJKEWQ/ZFMXfCLPew8ZxpWm2bizeLBmHt230cyvPFEb/fBwtF/Gfrrb+lvI3tEA5vdYBl0GJWhjurTlOW3eKPclY5ytWgkbfgVwCRW1ZpiH+mXgMAnSWfcQSXt6GPBiHbdF+gonVi9P1Huun+KxwAhAkZ1NRPKgdiR+xTJDrQouonezBe3ZBhkZH0tPYDrr16sCIiFAQg== 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 11/13] ch: Add virCHMonitorRemoveDevice function Date: Thu, 28 Aug 2025 14:54:51 +0200 Message-ID: <20250828125453.202358-12-stefan.kober@cyberus-technology.de> X-Mailer: git-send-email 2.50.1 In-Reply-To: <20250828125453.202358-1-stefan.kober@cyberus-technology.de> References: <20250828125453.202358-1-stefan.kober@cyberus-technology.de> Content-Transfer-Encoding: quoted-printable X-ClientProxiedBy: FR4P281CA0249.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:f5::19) To BEZP281MB1973.DEUP281.PROD.OUTLOOK.COM (2603:10a6:b10:46::5) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: BEZP281MB1973:EE_|BEVP281MB3430:EE_ X-MS-Office365-Filtering-Correlation-Id: ff479ede-c72b-4b24-e87b-08dde6321c47 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230040|366016|376014|10070799003|1800799024; X-Microsoft-Antispam-Message-Info: =?us-ascii?Q?ROGLM93L1Gr07ni48G6Go6LqtyeM2knlQe+HGoYicKeNqAbVlfIhnG6pKFQX?= =?us-ascii?Q?f5ErQQNPGr6gHE0j4tyDkqwZBEq5rfHSt/b7vRoiFpGbNQzVeSRtXx43NLzK?= =?us-ascii?Q?TM7qHVtzRRN8MvjZ1MYymQR7ga45FRtiJGLY26+CN23YbSGCme8itAPNaLMd?= =?us-ascii?Q?i8We6vClYBhNguJ1XxJI7ieJJHu+u1gYJKV4IHJfy/Y3v8+9X9yqKwO4/1gt?= =?us-ascii?Q?Rp6tgT/RjugeLVxtlkcoPsUU8eh1faPbYQ5sEDhHx8fkQO5zfED+aIVidY86?= =?us-ascii?Q?7t0aSg28mYhdrpOgPs17FEdjfJ42VK3EfX7dKt6eSrvlPHPOtRKhMKuwDjqo?= =?us-ascii?Q?e+WTIxlrTeclvXBfIjYBcwp9J+Clb/ahdwxON+7gcZJlinjHcO+SP90AfeTR?= =?us-ascii?Q?F7qwx46VbJ/FD19q0WY3UiMNYMM+4mjN2ODWIGtGQbvmoIGBDSCBibiuH/gj?= =?us-ascii?Q?rcNNUBdhrOmBToyHM9a8W0f/eURSqtLecFI7sbtYKirkwCYqMyYQz2s7HU9W?= =?us-ascii?Q?n3Yrdfpe69wqtFttsh8q9opiqBcPTe67rI6VZwQMywtNQAQyDQknWDGJ1xlL?= =?us-ascii?Q?Mzi820R4j78Z8pjigYw92fog1sSeWWZs5ibLL11RUDMudFrVLn1sf4AIWO0p?= =?us-ascii?Q?8Bmw7Q7h2a101aJek8tT5Xnne7F0YdfPobEOOR5PbkTa49rTRDGbOP8KbJJ2?= =?us-ascii?Q?zjO5cVEDvS/h/ap+RmaDcCsNwNaH1hdb+cJQX+d0XTzCmeRbjjoyOEBac1A0?= =?us-ascii?Q?mtjfNwuXBipYOSZG//JQqi5gV5TLBNM31yevMDQY9Sty5O+256EzWtJwMqfX?= =?us-ascii?Q?pSyUGeyMrhVAnCEDvnn2zv/l+bUIoiNeDESfhOkIKUWNLgfeoAc8ET4VVsB3?= =?us-ascii?Q?Y+Ifho/eoclbTIcPxVNvhJTIf9TV7g9yVli5JXJmfQ8+W8VXHil/pWLrkjYB?= =?us-ascii?Q?L1vi/f6mW4x8Ep/JlfWO6XU8cT6gJyh3iGvpdom03R+Pp6iJs+wnMgt4uS7V?= =?us-ascii?Q?+IfPj3J6E88Bs4XhkVssDvWxQ4RchlG347Et7XoX7JOBa7K8h87zCvjbuI29?= =?us-ascii?Q?2gc/BhRv4R2Hi8Tmr6MzNKVIPWMKzkO9K4aoaofp+22NzjA1T7WfWD6DEQWr?= =?us-ascii?Q?a/NRplBEkN4hl8Pk1sCsiIZOiOLefQ2/5+oVaMnYnE+XXyKpWycmaIl8Xq6q?= =?us-ascii?Q?ljdnbUyRFk5HvqN9QfyHJdlo3VgJF94Fq+3lS21/ODdc1Ck10OYmJiMeKX+h?= =?us-ascii?Q?P4FTLnpEgEmCsgDTKloh1C0KSjt02CEIi/7xuw0ZTdtLoLkm+IRmuC/9f2Vp?= =?us-ascii?Q?LnWv1XoASljW7FaR/2rL5F4QvwRcUbiwZ6YaaflgD8zqvKZBtfq2NaJL3cCV?= =?us-ascii?Q?D5uF4IuaO4vP/bw/Pg+6Ck7ApKM07AszqhlG81wogamSb9xPIdh4WD60Svfq?= =?us-ascii?Q?gryAkdQB5Fs=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)(366016)(376014)(10070799003)(1800799024);DIR:OUT;SFP:1102; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?I8vxL2OKyE7BWwzgLicauUUzpv/JuqDl3Y4xYaEjTxIoi9XlW1GqH+EIJQ+F?= =?us-ascii?Q?vWkqcAWuPdv5ifjF2Oa1dHFRXCnyuidOW4wJRWTGYA6dc2qOHoLDPesdmyL0?= =?us-ascii?Q?Stnw11vqrPLm+1i36pmatZ7KSwmehFMcZ92+NOCZ3y7yGpV/L0zag3qwhlOb?= =?us-ascii?Q?X2dWYjFhYWJYMoa289NY2ysCD0k1HEIBQgbZyXW4I381Gt8PvXwuVOcw5KWi?= =?us-ascii?Q?qw9dDYYQxwYIkEM1W6OlC5ThOvzMuXqLiKbf6aPIaJgJUcTl95lgzic7eJ2Y?= =?us-ascii?Q?O2SLTylxdy7GAjRBNXUb9P0XjI2nkRpdcIgYopDupXB9tu+2wHNsSbtY3R+j?= =?us-ascii?Q?9M6n0MfMbDZGgXAFgoI2P8J6a294f0j3CINFx7VWjLj+ItaCG3k8UU/W8bsW?= =?us-ascii?Q?jJYmuxjSNiPrJ2EhsP2gWlRfnaW3bNcpl+51RP9kwG4/hbDqTQ5Ail06nfcF?= =?us-ascii?Q?4jQIcTwThVjMpjmdHmhylORfnyZ0uc6MY/FHb1PTh7feg7eKrObGsQN7M9DI?= =?us-ascii?Q?pMTL5q18wEr35SNaDJt9ZwFQx+Sm3Jr3AVNLxK264HRfzm4jSDOMt4wb8htk?= =?us-ascii?Q?XNVUm+bxTRHukGHw1Ml4J4sSdb6p6+DDmT89y2ZYenEvx9oZ67VxOuy4/loM?= =?us-ascii?Q?CSVbWNnF0HacS9eHkyTlHwVOcAk1JC67wHrryPcsNjA5txEs4qTb59GVcvsx?= =?us-ascii?Q?vOXVt+fcuncbZuK4GXlhjiiuQql75yprsM3xA3431dl6kp7LlOgow5Whfkre?= =?us-ascii?Q?O/wnORhDA2570lmXIRE/DWVo/wpIcdx8pHJHEVXi9iFy5/gCzkUl1yiZW5Jb?= =?us-ascii?Q?o3+HAldvUcfFvkVw1iLibaiKSxeMLMiKAOPLD946qZ5jyV+8oP7EsGf+20RU?= =?us-ascii?Q?ehr4zv1Yt7eOXNcI5o+GjLERsP+xmcfvSNKjGvbwmGJPuw+BsjtpnBkvH+y0?= =?us-ascii?Q?2K8cYloGEmVzZb7MXw8aeE59ukDNRMEgCD9y0WSX8JmwTt8khG7jvUMWieGr?= =?us-ascii?Q?aDa/8voAfVbZcdKCHmSLtfBdlGLw3gh/hp/fOnrWjMGLeSE6BG81iqlTTdl0?= =?us-ascii?Q?KLILmqjbRY/EdO3rHKe/fMbnIDhr9iHl7afjPm4KiSZKRMQvrYSYrkJTN3+u?= =?us-ascii?Q?ovblotjO+juh/tsfCNLcHN5J2xdalMGqButdMpiXGh/bXpR3GA/DaldZMWxx?= =?us-ascii?Q?C0Snjsl3el30No6KFdqvjC8D2QlPJUWobT9UxMcbwTjFfAXNi09RP/dNQdEM?= =?us-ascii?Q?XbBBBvtU0p6cs2ZEiv1S6owNQHyFSELhvdHMhZpDdl9R2MmWqHyMEU7T/eSX?= =?us-ascii?Q?XwN/OP+LLJPKwSFFkQvjjOj4fk5Fy6qz+FQgia7wtJCgWHqA0sEu725DgYSV?= =?us-ascii?Q?fMA3K3an2/+YlVKnrGapCqyuvsWfswKgrLrOXUVDUqjrBhgTOdspy2e8OXUI?= =?us-ascii?Q?bUymjI2tp+O1wBVbDcRHCJw0jHxRZXkFeqjkMSd4/0VdNBPnXUjHAL0nVXwJ?= =?us-ascii?Q?HaW70wGYbhPBaIGnWIazGy7287DkmJckD4y1esvXatYVT4nV8MLzR/SIOaDo?= =?us-ascii?Q?frGbTSlwrd8379hU3wjdoZ3yooQp7B5pB5EFUCyMjTgSa0TuQhzEfvff/nCX?= =?us-ascii?Q?pO///ncWgW7tgad21+45tMHlC7b0YBngMpOeg8tVhEgHGf57IxhINgo2WT2i?= =?us-ascii?Q?dmvCct+DtPN2LWsIJMdm8F+d4nw=3D?= X-OriginatorOrg: cyberus-technology.de X-MS-Exchange-CrossTenant-Network-Message-Id: ff479ede-c72b-4b24-e87b-08dde6321c47 X-MS-Exchange-CrossTenant-AuthSource: BEZP281MB1973.DEUP281.PROD.OUTLOOK.COM X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 28 Aug 2025 12:55:05.5352 (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: 0Mic0jsF9ZRvpQDgqveRPytwMTOhPyXjuEhdvBzhBmLjv8a3bn/0ka3nU3qVVhhmD02CevSvi4FmTbsJQAMpg8+zjKOe+LytDnpqjdBTyTkSrjkoYC+pZ+mPylRbtklP X-MS-Exchange-Transport-CrossTenantHeadersStamped: BEVP281MB3430 Message-ID-Hash: MPXMNJU4JEKE3KHFIGHALIPX3EA45R3T X-Message-ID-Hash: MPXMNJU4JEKE3KHFIGHALIPX3EA45R3T 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: 1756387475338124100 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 | 17 +++++++++++++++++ src/ch/ch_monitor.h | 3 +++ 2 files changed, 20 insertions(+) diff --git a/src/ch/ch_monitor.c b/src/ch/ch_monitor.c index 8968d84a71..2e21823f08 100644 --- a/src/ch/ch_monitor.c +++ b/src/ch/ch_monitor.c @@ -596,6 +596,23 @@ 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); + + if (virCHMonitorPut(mon, URL_VM_REMOVE_DEVICE, payload, NULL) =3D=3D N= ULL) { + return -1; + } + + return 0; +} + 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