From nobody Sun May 19 12:26:26 2024 Delivered-To: importer@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+importer=patchew.org@nongnu.org; arc=pass (i=1 dmarc=pass fromdomain=virtuozzo.com); dmarc=pass(p=quarantine dis=none) header.from=virtuozzo.com ARC-Seal: i=2; a=rsa-sha256; t=1640200878; cv=pass; d=zohomail.com; s=zohoarc; b=jg5v3wwlm6VrBNCJBAZzBMSx3mjG2FZii7d8cii6Gje1lkI+uR0S+LWdMnNF61AchkCxJzz2R1ed8K2VCeQFamoZUnI+QvhvnLYv6SVwn0ddE+rgS1UFi635Gm9H/FPmZSocJNSh9aKAXsepPbERpkQDzlfZ/K/kU0HA1jooBb4= ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1640200878; h=Content-Type:Content-Transfer-Encoding:Cc: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=6NxReX+zZB11T3FWg1GzCru/y1F/eQ929AsgbRqO0ro=; b=Q2frs75nCiJ3p1enkc+r71DbDxpqo9Y1A4GOL3Mh9EMqJD8sVQzdJM6DrU4lrS6wMPLX4JgSvsRv7x5SkHZdkmfRvS30W80Yx32HVhl6gHDsywY0DZOWGAxtejV9NxtYfodlfX9nVsrcmtQmW5bbk/WdqlR/2N/vTITr7+ybONg= ARC-Authentication-Results: i=2; 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+importer=patchew.org@nongnu.org; arc=pass (i=1 dmarc=pass fromdomain=virtuozzo.com); dmarc=pass header.from= (p=quarantine dis=none) Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1640200878491343.5310018202755; Wed, 22 Dec 2021 11:21:18 -0800 (PST) Received: from localhost ([::1]:53200 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1n07Ar-0001Pr-AZ for importer@patchew.org; Wed, 22 Dec 2021 14:21:17 -0500 Received: from eggs.gnu.org ([209.51.188.92]:51042) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1n077b-0007Yb-I5 for qemu-devel@nongnu.org; Wed, 22 Dec 2021 14:17:55 -0500 Received: from mail-eopbgr140119.outbound.protection.outlook.com ([40.107.14.119]:46656 helo=EUR01-VE1-obe.outbound.protection.outlook.com) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1n077Z-0001Jb-FQ for qemu-devel@nongnu.org; Wed, 22 Dec 2021 14:17:55 -0500 Received: from AM9PR08MB6737.eurprd08.prod.outlook.com (2603:10a6:20b:304::18) by AM9PR08MB6290.eurprd08.prod.outlook.com (2603:10a6:20b:2d5::21) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4823.14; Wed, 22 Dec 2021 19:17:45 +0000 Received: from AM9PR08MB6737.eurprd08.prod.outlook.com ([fe80::b118:483a:d003:3112]) by AM9PR08MB6737.eurprd08.prod.outlook.com ([fe80::b118:483a:d003:3112%5]) with mapi id 15.20.4823.019; Wed, 22 Dec 2021 19:17:45 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=igNdMIYTRbHqZV2xKPPkeaxy1Lgfp10ea+0Or75/C4UscSeQnghGLYhH75VI679pOmAbfu1aKFznMiWVqOsDdswseqRzl9tiMung6CPu2WK5GoDYU025WjD1jd0i1VdKbvRmEudgdZT86PzTMpAlMEvreYMVhBNKa1NSDwdGIXl04kkZNmvEF5W5KWoCoBLSoPbVVdrBQRduEGnyBT4FfENvSCDt0Q8TwwK4GVMNCaRI8Oi6/6WozXUFYePDMyTHgzURWxRuH9StH4AkPPRtzpLVOX/oe3X1ahn4Mo5/Rvd9aeSGiDQ5R21reo4HgJ9lrZyzU++xXDvzc458O2Jfrg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=6NxReX+zZB11T3FWg1GzCru/y1F/eQ929AsgbRqO0ro=; b=B1oXTxpcbgGfMAtFn67B7e6l/rrVAEHc1scXPnUL+MacwuQZWNXvqXYpYg+0bQcH1+1015F66wNZ+GTQgdTLt7aWymLBlP6OKPScuC6JYXxJJAHumxxh31u0Dsf0/Ej1U0N2WK8/hz5qwleYpvx+WcETCE/aVd4ZbzRIzbqLCCjAf07B2r2/Lcn8zzMldZgSuApIGhKRyjayHAsGt6v1dbkXuc/cY5ivJCj0q9z4QfFh5kVtKXOxyol8ZWk0wtPKuObD6oLf+gzTlHdeva6BEUCj69Q/GxYgGR56mSVJycvBR/iXHaV5i3T2SrKNWoWqTkGnQo1CKqLNJxEz5o36YQ== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=virtuozzo.com; dmarc=pass action=none header.from=virtuozzo.com; dkim=pass header.d=virtuozzo.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=virtuozzo.com; s=selector2; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=6NxReX+zZB11T3FWg1GzCru/y1F/eQ929AsgbRqO0ro=; b=IzA7CGLXWJ6ihV9UOh4Rg6r0+YqSMT+MFpIWTs8Eq0VDnL09LHzur/mnPHGC5/RegG2jm4tpDqwH7eckOTtwQ05rxnbZHu8Gi2uGzmFL0yrmp3GNXabHewe8NT2C7UqLujvIRBdR63tGYGOYiM9VYRO5z44kvgrTdmvbUXelnBo= Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=virtuozzo.com; From: Vladimir Sementsov-Ogievskiy To: qemu-devel@nongnu.org Cc: bleal@redhat.com, wainersm@redhat.com, philmd@redhat.com, crosa@redhat.com, armbru@redhat.com, eblake@redhat.com, kraxel@redhat.com, marcandre.lureau@gmail.com, vsementsov@virtuozzo.com, =?UTF-8?q?Marc-Andr=C3=A9=20Lureau?= Subject: [PATCH v2 1/3] ui/vnc: refactor arrays of addresses to SocketAddressList Date: Wed, 22 Dec 2021 20:17:29 +0100 Message-Id: <20211222191731.467706-2-vsementsov@virtuozzo.com> X-Mailer: git-send-email 2.31.1 In-Reply-To: <20211222191731.467706-1-vsementsov@virtuozzo.com> References: <20211222191731.467706-1-vsementsov@virtuozzo.com> Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable X-ClientProxiedBy: FR2P281CA0035.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:14::22) To AM9PR08MB6737.eurprd08.prod.outlook.com (2603:10a6:20b:304::18) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: 6580cb13-aa70-47d8-25ed-08d9c57fbbde X-MS-TrafficTypeDiagnostic: AM9PR08MB6290:EE_ X-Microsoft-Antispam-PRVS: X-MS-Oob-TLC-OOBClassifiers: OLM:454; X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: 4A9C5fS3r02l9AkiLsGJ3gZeMKiVpw1xa82M8PkmC9IzB2rEJycZa2KBjLPDWdI32JzGHq4V4owRbgj2YlnTXIO6mmMlRBUVaqXklQLXj2i342MExlackZhCS8k11pevlP/OLHftCYAc6fBU9Xvi16UcuxjHPWw39EKLAWJ3sJXscaRs/67AAvKtXgR477372UfEMeAuaeJr7oVV5uU1oR6tzGYOT+uAfouSSie26kXY5mBYqDMkelb1g1f/tHyY290vdr7F0BZaElLhQHFRl6SGQGDq7fxqV8jHAlrTvP3UQO7OpIzHPjj75dqiEmRJAzquHOBW8VuEyZETpCIWFYrPldJscz+xf+xX9WO+OPKG0SCkOvx4oEQZfhAxgaddFa7MEaVQBtsySXNJ9pFKZgJYScBcFnEn2+6RL+BGCVBQvJtUMMMRP2FF21OYOW03V4jB4RAJORIDpVRWeSUqyx9tykYof+Z04xeE2tt+WCyar3NsDpKYcHa9phHIYpR1vyXomzeCIznLdu4bKq6QesZWMCrbx0YF/8JK2R9tspXgU2BWQKHQSrYgxKmjRcld2KRMffeWdvvkRHvObWzX6QIlX5pA3z2YSp9HdZpASao0V8L8E7mp/RkBIlyJwBt6fpguD47DryijxzXg5/M7FAk5ZyPIXMribaPQVjCQpAJP31FNlqe044tzkkrzhk6mj46Cbpj8vOfvB1In7LrAIA== X-Forefront-Antispam-Report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:AM9PR08MB6737.eurprd08.prod.outlook.com; PTR:; CAT:NONE; SFS:(4636009)(366004)(316002)(52116002)(38350700002)(38100700002)(6506007)(66476007)(66556008)(2906002)(66946007)(6486002)(8676002)(7416002)(4326008)(36756003)(2616005)(6916009)(5660300002)(86362001)(8936002)(186003)(26005)(1076003)(508600001)(6666004)(83380400001)(6512007); DIR:OUT; SFP:1102; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?SjloVVQ0dE9Xd1lxNTgwSUlLV2U0QTJRb3VmS2RBYlJ1NzdQVVIvV3JtNHUr?= =?utf-8?B?VnMwWVpCQ0pnMmg5Vjl3ck9DeGdkdHh4Nkk2aXNyMzlkZ0IrdjdkV3Z4dk5G?= =?utf-8?B?MW9nQlpqWm8rMkZKdzV0WkJZRk9SQUwxYjJZWVVMVkEwOWpwWEpxRy9yMjNS?= =?utf-8?B?a2J5eFpjNEFUY05Rc0tKV1NnK3p2aFMvekNJTzJSWnFDei96T1h6WFJhSFZw?= =?utf-8?B?SW1MR1dheTBtZkJ5WXBUQ3lnK0xvLzFnNXptUUJyc09vaG5Lay9LckNxNkVC?= =?utf-8?B?NmR5eDVDN1VTSm5VNTN1VU81Tko1Q2pIWDA4RDh0d0tWVG5Pc3NnNXFPajVl?= =?utf-8?B?dUNpME5taEVwYVZhTVlkc3ZEK3A2c1JsWUt0V2hXZmxFMXpLRjl3T3ZZNEdI?= =?utf-8?B?cTE0VXR6S3pwemVsdmtmMkJ2amd3U1ZuN256Q2kyNXBIZUIrRVZyNGgxb3ZL?= =?utf-8?B?R0RpSHBhN09kQk5Zb3RuZnJrK2lIam0rREhYbmhiZmdSRmZlOFN2N1NtWTRY?= =?utf-8?B?czd4YjdlcGMyUFgyUDlyazFsSjVvL0FRTW1JMkNBWjM3citFd0U0SVdoMmFD?= =?utf-8?B?ZWZKRERXUEhFVVU4VXNsTG1oZ3JBVTZoQ0p0MU1vZXdQNExaRHYvNGsrclBa?= =?utf-8?B?OTNDTHpZa2xWSHp5bjM5Uk02MS8rYmZFSWJ1TlFkVEp2d2plOUV0anAvd0kr?= =?utf-8?B?dE1XVVhFK3NIUU1xT0RCRFVzMHh4TjRGUFRxZU1TSTd6VnZjb3lpNUZqQWI1?= =?utf-8?B?UThySmNWNG44ZFRhZjhyQTV2QmFNK2lDdWJpUHlpRmxSc2R5QzRoa0d6NXE4?= =?utf-8?B?cWtVNUpJTGZiajhvRjRVanowVm0xYVNEWXZ1dCt5VDlNRmpXaXU3bHpNTlU4?= =?utf-8?B?OE9TWU1oU1ovd29palZnai9rbG9pRWlRSnkvN1ZidG1CWFRiNGRTUHY2bUho?= =?utf-8?B?M1V2bUlpRUpqT1pYQnRoL2FUZ2ZoaWV0VkU4OWswVXZtWEFFeUNsT1JpakhW?= =?utf-8?B?RG5pZ3NUYVpGYUpzYlhCQVV5eFA5amxuZzJlRWVPY2RKVTdDUHoxckFGVWY2?= =?utf-8?B?T1FZSTJ0L1ZYUldEbjNMOFNYZzBNTDZPbEFyS1ljR2IrM0VKcFhOZGlLVEFM?= =?utf-8?B?Z2l6WFlFZHFZQnRsTlNDb1BSZ2s1ZkxaSUJHYVRrMHNrTDhBcnd5eXhxdWYv?= =?utf-8?B?UVpsQmV2U3ltSGw0N2xTUzJCMFZReE42eXZ6SE9ueUc0MSswdkN5cERYYmFM?= =?utf-8?B?ay9TUGpFYXZTWS9mY1lEVUFIdnhPQ2pZQmNhNGt4SVptU01vUjJ6Nk40SzRz?= =?utf-8?B?UEFHUVFNYUxPYkN5SG5BV1RjY05RZVpSNEF3V2czTktvQUxmZnRFbUNxVUNv?= =?utf-8?B?WW55QlpLQ25PV0F2SnhOWFRsYy9aTkJkNnFQOTNRcXBMUGNqQ29WcXJDbVVj?= =?utf-8?B?eUJ0QjJ1d1VIM1MwWUliTjlUNVJxMWxIYm1nemthY0h4QjZpNzhpSExwaDE4?= =?utf-8?B?ODN2WWZmUTFJV1NpZW4zNDJldEh1ZW5kaEx2RVFsVi9JRmxEeEI5Z0ZKZTM5?= =?utf-8?B?VU1uSVlMQ2tlS0VjSW1TSmVXUVprZ0hSOVFRMWZRZzVIcENXaEI3Vmw4aFB1?= =?utf-8?B?UGF4RXBGSUhFeW9PRnVSTHpuZzc2STk1eC9HNFBsS0tmZTM5MVdMaXdJODFY?= =?utf-8?B?VTBrSzVMblA2VlpLWDZ3clVZM0JqditBeGt3WmJYcklMS0tvK2lJanlCT2ll?= =?utf-8?B?enlOcytld3hUQTdLTWUyc05mbEhKeDFsWkd4eEVYZWp0RFFvNWZWb0lRaHJy?= =?utf-8?B?L0J3QTJjOHRzQjJCR3NIOHZJaWJkSjdtSGE4aEkvdi9kSUJnZUFyeU9VdSt0?= =?utf-8?B?MUN4amY3V0xUaHBRODI5MTFmdDYrSjUvdUI5K2MwR2dUTTVSY2dDZnJsc2l3?= =?utf-8?B?TTRaaHhldktsWm5aWmFaY2NoVGZrZWN4ZlNkaktLVlV1TFRqUzIxMmhnaHF6?= =?utf-8?B?RGlSazBPczZiZmZ3MDdSRzkrLy9ML2cxU1lYTkRsTnB1R3Znb1U0dHFTMktx?= =?utf-8?B?cUVHRDA5ZUFpb1MxVVA5cVlYVkFMZXhwQndGd2tiMkozcmlHa2NIWS83Wm1p?= =?utf-8?B?YzRwdXA5ampiSWNadXlkN1dScXlzK1IraEE0NlViaCtGSkMzQUZscGZwZmha?= =?utf-8?B?dXhZVkV6T0N3eGdIakMrOThWVDQ2NmN2QVdlK1JkdjVKN241eElkdjdFUUpW?= =?utf-8?Q?2KKXB5ifuK1TCcro8tlX+tk3uQVwR1McVysfvmIbVQ=3D?= X-OriginatorOrg: virtuozzo.com X-MS-Exchange-CrossTenant-Network-Message-Id: 6580cb13-aa70-47d8-25ed-08d9c57fbbde X-MS-Exchange-CrossTenant-AuthSource: AM9PR08MB6737.eurprd08.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 22 Dec 2021 19:17:45.5708 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 0bc7f26d-0264-416e-a6fc-8352af79c58f X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: rf5Ectp28Avoov/Q7VIenA2xNaDHajmE8ukTef205vQte3JDTZMcA8QUj/QsQt5Zeg5A9rVtAk+HjZA9YwFfM6J9eT3m4TfTDFvNWMjLNfs= X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM9PR08MB6290 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+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=40.107.14.119; envelope-from=vsementsov@virtuozzo.com; helo=EUR01-VE1-obe.outbound.protection.outlook.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, 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_PASS=-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+importer=patchew.org@nongnu.org Sender: "Qemu-devel" X-ZohoMail-DKIM: pass (identity @virtuozzo.com) X-ZM-MESSAGEID: 1640200881019100002 Let's use SocketAddressList instead of dynamic arrays. Benefits: - Automatic cleanup: don't need specific freeing function and drop some gotos. - Less indirection: no triple asterix anymore! - Prepare for the following commit, which will reuse new interface of vnc_display_listen(). Signed-off-by: Vladimir Sementsov-Ogievskiy Reviewed-by: Marc-Andr=C3=A9 Lureau --- ui/vnc.c | 129 ++++++++++++++++++++++--------------------------------- 1 file changed, 51 insertions(+), 78 deletions(-) diff --git a/ui/vnc.c b/ui/vnc.c index 1ed1c7efc6..e8430531c0 100644 --- a/ui/vnc.c +++ b/ui/vnc.c @@ -3812,30 +3812,19 @@ static int vnc_display_get_address(const char *addr= str, return ret; } =20 -static void vnc_free_addresses(SocketAddress ***retsaddr, - size_t *retnsaddr) -{ - size_t i; - - for (i =3D 0; i < *retnsaddr; i++) { - qapi_free_SocketAddress((*retsaddr)[i]); - } - g_free(*retsaddr); - - *retsaddr =3D NULL; - *retnsaddr =3D 0; -} - static int vnc_display_get_addresses(QemuOpts *opts, bool reverse, - SocketAddress ***retsaddr, - size_t *retnsaddr, - SocketAddress ***retwsaddr, - size_t *retnwsaddr, + SocketAddressList **saddr_list_ret, + SocketAddressList **wsaddr_list_ret, Error **errp) { SocketAddress *saddr =3D NULL; SocketAddress *wsaddr =3D NULL; + g_autoptr(SocketAddressList) saddr_list =3D NULL; + SocketAddressList **saddr_tail =3D &saddr_list; + SocketAddress *single_saddr =3D NULL; + g_autoptr(SocketAddressList) wsaddr_list =3D NULL; + SocketAddressList **wsaddr_tail =3D &wsaddr_list; QemuOptsIter addriter; const char *addr; int to =3D qemu_opt_get_number(opts, "to", 0); @@ -3844,23 +3833,16 @@ static int vnc_display_get_addresses(QemuOpts *opts, bool ipv4 =3D qemu_opt_get_bool(opts, "ipv4", false); bool ipv6 =3D qemu_opt_get_bool(opts, "ipv6", false); int displaynum =3D -1; - int ret =3D -1; - - *retsaddr =3D NULL; - *retnsaddr =3D 0; - *retwsaddr =3D NULL; - *retnwsaddr =3D 0; =20 addr =3D qemu_opt_get(opts, "vnc"); if (addr =3D=3D NULL || g_str_equal(addr, "none")) { - ret =3D 0; - goto cleanup; + return 0; } if (qemu_opt_get(opts, "websocket") && !qcrypto_hash_supports(QCRYPTO_HASH_ALG_SHA1)) { error_setg(errp, "SHA1 hash support is required for websockets"); - goto cleanup; + return -1; } =20 qemu_opt_iter_init(&addriter, opts, "vnc"); @@ -3871,7 +3853,7 @@ static int vnc_display_get_addresses(QemuOpts *opts, ipv4, ipv6, &saddr, errp); if (rv < 0) { - goto cleanup; + return -1; } /* Historical compat - first listen address can be used * to set the default websocket port @@ -3879,13 +3861,16 @@ static int vnc_display_get_addresses(QemuOpts *opts, if (displaynum =3D=3D -1) { displaynum =3D rv; } - *retsaddr =3D g_renew(SocketAddress *, *retsaddr, *retnsaddr + 1); - (*retsaddr)[(*retnsaddr)++] =3D saddr; + QAPI_LIST_APPEND(saddr_tail, saddr); } =20 - /* If we had multiple primary displays, we don't do defaults - * for websocket, and require explicit config instead. */ - if (*retnsaddr > 1) { + if (saddr_list && !saddr_list->next) { + single_saddr =3D saddr_list->value; + } else { + /* + * If we had multiple primary displays, we don't do defaults + * for websocket, and require explicit config instead. + */ displaynum =3D -1; } =20 @@ -3895,57 +3880,50 @@ static int vnc_display_get_addresses(QemuOpts *opts, has_ipv4, has_ipv6, ipv4, ipv6, &wsaddr, errp) < 0) { - goto cleanup; + return -1; } =20 /* Historical compat - if only a single listen address was * provided, then this is used to set the default listen * address for websocket too */ - if (*retnsaddr =3D=3D 1 && - (*retsaddr)[0]->type =3D=3D SOCKET_ADDRESS_TYPE_INET && + if (single_saddr && + single_saddr->type =3D=3D SOCKET_ADDRESS_TYPE_INET && wsaddr->type =3D=3D SOCKET_ADDRESS_TYPE_INET && g_str_equal(wsaddr->u.inet.host, "") && - !g_str_equal((*retsaddr)[0]->u.inet.host, "")) { + !g_str_equal(single_saddr->u.inet.host, "")) { g_free(wsaddr->u.inet.host); - wsaddr->u.inet.host =3D g_strdup((*retsaddr)[0]->u.inet.host); + wsaddr->u.inet.host =3D g_strdup(single_saddr->u.inet.host); } =20 - *retwsaddr =3D g_renew(SocketAddress *, *retwsaddr, *retnwsaddr + = 1); - (*retwsaddr)[(*retnwsaddr)++] =3D wsaddr; + QAPI_LIST_APPEND(wsaddr_tail, wsaddr); } =20 - ret =3D 0; - cleanup: - if (ret < 0) { - vnc_free_addresses(retsaddr, retnsaddr); - vnc_free_addresses(retwsaddr, retnwsaddr); - } - return ret; + *saddr_list_ret =3D g_steal_pointer(&saddr_list); + *wsaddr_list_ret =3D g_steal_pointer(&wsaddr_list); + return 0; } =20 static int vnc_display_connect(VncDisplay *vd, - SocketAddress **saddr, - size_t nsaddr, - SocketAddress **wsaddr, - size_t nwsaddr, + SocketAddressList *saddr_list, + SocketAddressList *wsaddr_list, Error **errp) { /* connect to viewer */ QIOChannelSocket *sioc =3D NULL; - if (nwsaddr !=3D 0) { + if (wsaddr_list) { error_setg(errp, "Cannot use websockets in reverse mode"); return -1; } - if (nsaddr !=3D 1) { + if (!saddr_list || saddr_list->next) { error_setg(errp, "Expected a single address in reverse mode"); return -1; } /* TODO SOCKET_ADDRESS_TYPE_FD when fd has AF_UNIX */ - vd->is_unix =3D saddr[0]->type =3D=3D SOCKET_ADDRESS_TYPE_UNIX; + vd->is_unix =3D saddr_list->value->type =3D=3D SOCKET_ADDRESS_TYPE_UNI= X; sioc =3D qio_channel_socket_new(); qio_channel_set_name(QIO_CHANNEL(sioc), "vnc-reverse"); - if (qio_channel_socket_connect_sync(sioc, saddr[0], errp) < 0) { + if (qio_channel_socket_connect_sync(sioc, saddr_list->value, errp) < 0= ) { object_unref(OBJECT(sioc)); return -1; } @@ -3956,20 +3934,18 @@ static int vnc_display_connect(VncDisplay *vd, =20 =20 static int vnc_display_listen(VncDisplay *vd, - SocketAddress **saddr, - size_t nsaddr, - SocketAddress **wsaddr, - size_t nwsaddr, + SocketAddressList *saddr_list, + SocketAddressList *wsaddr_list, Error **errp) { - size_t i; + SocketAddressList *el; =20 - if (nsaddr) { + if (saddr_list) { vd->listener =3D qio_net_listener_new(); qio_net_listener_set_name(vd->listener, "vnc-listen"); - for (i =3D 0; i < nsaddr; i++) { + for (el =3D saddr_list; el; el =3D el->next) { if (qio_net_listener_open_sync(vd->listener, - saddr[i], 1, + el->value, 1, errp) < 0) { return -1; } @@ -3979,12 +3955,12 @@ static int vnc_display_listen(VncDisplay *vd, vnc_listen_io, vd, NULL); } =20 - if (nwsaddr) { + if (wsaddr_list) { vd->wslistener =3D qio_net_listener_new(); qio_net_listener_set_name(vd->wslistener, "vnc-ws-listen"); - for (i =3D 0; i < nwsaddr; i++) { + for (el =3D wsaddr_list; el; el =3D el->next) { if (qio_net_listener_open_sync(vd->wslistener, - wsaddr[i], 1, + el->value, 1, errp) < 0) { return -1; } @@ -4002,8 +3978,8 @@ void vnc_display_open(const char *id, Error **errp) { VncDisplay *vd =3D vnc_display_find(id); QemuOpts *opts =3D qemu_opts_find(&qemu_vnc_opts, id); - SocketAddress **saddr =3D NULL, **wsaddr =3D NULL; - size_t nsaddr, nwsaddr; + g_autoptr(SocketAddressList) saddr_list =3D NULL; + g_autoptr(SocketAddressList) wsaddr_list =3D NULL; const char *share, *device_id; QemuConsole *con; bool password =3D false; @@ -4028,8 +4004,8 @@ void vnc_display_open(const char *id, Error **errp) } =20 reverse =3D qemu_opt_get_bool(opts, "reverse", false); - if (vnc_display_get_addresses(opts, reverse, &saddr, &nsaddr, - &wsaddr, &nwsaddr, errp) < 0) { + if (vnc_display_get_addresses(opts, reverse, &saddr_list, &wsaddr_list, + errp) < 0) { goto fail; } =20 @@ -4211,16 +4187,16 @@ void vnc_display_open(const char *id, Error **errp) } qkbd_state_set_delay(vd->kbd, key_delay_ms); =20 - if (saddr =3D=3D NULL) { - goto cleanup; + if (saddr_list =3D=3D NULL) { + return; } =20 if (reverse) { - if (vnc_display_connect(vd, saddr, nsaddr, wsaddr, nwsaddr, errp) = < 0) { + if (vnc_display_connect(vd, saddr_list, wsaddr_list, errp) < 0) { goto fail; } } else { - if (vnc_display_listen(vd, saddr, nsaddr, wsaddr, nwsaddr, errp) <= 0) { + if (vnc_display_listen(vd, saddr_list, wsaddr_list, errp) < 0) { goto fail; } } @@ -4229,14 +4205,11 @@ void vnc_display_open(const char *id, Error **errp) vnc_display_print_local_addr(vd); } =20 - cleanup: - vnc_free_addresses(&saddr, &nsaddr); - vnc_free_addresses(&wsaddr, &nwsaddr); + /* Success */ return; =20 fail: vnc_display_close(vd); - goto cleanup; } =20 void vnc_display_add_client(const char *id, int csock, bool skipauth) --=20 2.31.1 From nobody Sun May 19 12:26:26 2024 Delivered-To: importer@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+importer=patchew.org@nongnu.org; arc=pass (i=1 dmarc=pass fromdomain=virtuozzo.com); dmarc=pass(p=quarantine dis=none) header.from=virtuozzo.com ARC-Seal: i=2; a=rsa-sha256; t=1640200878; cv=pass; d=zohomail.com; s=zohoarc; b=SyPO4xYpzScNWTOFKA7Y+eEdd4EjsMrsBfrx60lq3mioefc9cnsfBVcnhVy/+oktH/vvFXOL9CIs8C4wPpPOk3WCTlNPj+i8T5rQOptw3i4diIVoJRd6jX35m2QBAB5C4Em8379BG1YHvAG5J98/IFlnbVwACcdKPWDUGf+qjCA= ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1640200878; h=Content-Type:Content-Transfer-Encoding:Cc: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=GVkvxmXfslKFa7aAHicEUtg8JE/6RDsWCgsb7J2iGN8=; b=jDuHWivN32LBbCDzjSVEnYF8tXRfczBs5t++I+RwDVrxTDU9MYFF+buAPrJYMb0PXuUg4dNpIxra9yzmX4x3+mDIyeXZvSn79cvHh0pO0wjkWNaS0gUiMGyK9jP18gslIGeCldXhFmGz49zItNdYZ3Ipv83bR0jyCmdrYUJJPDY= ARC-Authentication-Results: i=2; 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+importer=patchew.org@nongnu.org; arc=pass (i=1 dmarc=pass fromdomain=virtuozzo.com); dmarc=pass header.from= (p=quarantine dis=none) Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1640200878470414.74679811970077; Wed, 22 Dec 2021 11:21:18 -0800 (PST) Received: from localhost ([::1]:53110 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1n07Ak-0001MU-S7 for importer@patchew.org; Wed, 22 Dec 2021 14:21:10 -0500 Received: from eggs.gnu.org ([209.51.188.92]:51066) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1n077f-0007aY-IG for qemu-devel@nongnu.org; Wed, 22 Dec 2021 14:18:00 -0500 Received: from mail-eopbgr140119.outbound.protection.outlook.com ([40.107.14.119]:46656 helo=EUR01-VE1-obe.outbound.protection.outlook.com) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1n077b-0001Jb-RH for qemu-devel@nongnu.org; Wed, 22 Dec 2021 14:17:59 -0500 Received: from AM9PR08MB6737.eurprd08.prod.outlook.com (2603:10a6:20b:304::18) by AM9PR08MB6290.eurprd08.prod.outlook.com (2603:10a6:20b:2d5::21) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4823.14; Wed, 22 Dec 2021 19:17:46 +0000 Received: from AM9PR08MB6737.eurprd08.prod.outlook.com ([fe80::b118:483a:d003:3112]) by AM9PR08MB6737.eurprd08.prod.outlook.com ([fe80::b118:483a:d003:3112%5]) with mapi id 15.20.4823.019; Wed, 22 Dec 2021 19:17:46 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=Qo3YddyijB6mDZuMLlXQGas8ISRqaCmOG5gw7tCWC/Q46DAVE5smWaSEN+cB8+iyL/w4gNGWEza5h9U5JiTEcYNyPnvBO6i+vGMC7MOv0DpClsyQg3bZYQKJHjKh7L5Ds9oXP7s2qTz4JJAjnMpZCu/RM+PcIzn2dOGFTKDnwnPJ+DP6Ixf0VGGh8W1kr2cIOJ8FNqwQ5G+AxySqL/iL3dMF3RQryb579tAbxdr6i15Kaap9z8vpBKU4hEWwJTIMiTakiEtgiCV2qXcEYhKzBbPrRCmmIS4+Slhm5rQ0x/77GagP97W8HQkufP8KWVxm9/G35mEeKxNmjg0G4FsxcA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=GVkvxmXfslKFa7aAHicEUtg8JE/6RDsWCgsb7J2iGN8=; b=TtjYt94k2LU9U4fzFxRn8spv+KwuNha89GpxeOoqpbkd3qjtII1VBUBhYrZt1MrA8Trc3T9rtamN4UiOJCkUX4MsAsA/z25zePfpLdASWmD5sqSu8JEB86ehHp6eMxeBo1WVQRXBA9SU/StU4YG6hBjNSv1fyjAlqPJoR8Ro+6LOGNXaAGPk2Au1eQv5PtjWy/e2NW76CVz5eKDPGmedIa5MWc++GzYRKSb3cmXli0PH5A1DMlcsSq+zV1WKfhwzVLhT+ETfedOTnTPW6PE7KZPjGVOeTPg+pfyXG3Kc6JOZ41fT6qs7IOgoWqYCMuUql0XFbmPvDFHAdP4i3GMijg== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=virtuozzo.com; dmarc=pass action=none header.from=virtuozzo.com; dkim=pass header.d=virtuozzo.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=virtuozzo.com; s=selector2; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=GVkvxmXfslKFa7aAHicEUtg8JE/6RDsWCgsb7J2iGN8=; b=TqT4T7W48FjBD7EPJS2L++2IGNVp5noQvoTVQpvMCzg7Nr7STt0ePYTtjO0CISc24rmpk0Xu3/8CB5Mr4PgZu4NKhwGJQbKepU/JmX0VpTIiZRiMocWN/qUQQV8RvjnneokaCfNFBbgvyFmU0inu/UzHQgeDiPk0BvkVTqsobWg= Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=virtuozzo.com; From: Vladimir Sementsov-Ogievskiy To: qemu-devel@nongnu.org Cc: bleal@redhat.com, wainersm@redhat.com, philmd@redhat.com, crosa@redhat.com, armbru@redhat.com, eblake@redhat.com, kraxel@redhat.com, marcandre.lureau@gmail.com, vsementsov@virtuozzo.com, =?UTF-8?q?Marc-Andr=C3=A9=20Lureau?= Subject: [PATCH v2 2/3] qapi/ui: introduce change-vnc-listen Date: Wed, 22 Dec 2021 20:17:30 +0100 Message-Id: <20211222191731.467706-3-vsementsov@virtuozzo.com> X-Mailer: git-send-email 2.31.1 In-Reply-To: <20211222191731.467706-1-vsementsov@virtuozzo.com> References: <20211222191731.467706-1-vsementsov@virtuozzo.com> Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable X-ClientProxiedBy: FR2P281CA0035.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:14::22) To AM9PR08MB6737.eurprd08.prod.outlook.com (2603:10a6:20b:304::18) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: 1fb7f058-5457-4eab-2fc8-08d9c57fbca4 X-MS-TrafficTypeDiagnostic: AM9PR08MB6290:EE_ X-Microsoft-Antispam-PRVS: X-MS-Oob-TLC-OOBClassifiers: OLM:7219; X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: jixfIB8/9/sbLGduO6oM74/DqzIspgAVpFrc9ftceQQPS9ImBd+iqiceybORvafXiSWalXL+0PVuGIpTNctY5og5vACcMnlEsOCcyw5Ri2urbynLeqmXbF2X9hkzKFlX0OdauIuSrZQ8HihAomCbOdZLib2iEojCmYDxG0nvRc3VDQPYeRzkCaFPRFIMXmYizv4qbIs6ec1CXvTxwhD7jJ5lHkrWPxoOmEgMLDTIm37a7o+sdwTlgZK9PRLBmD+KJmAgR83yDU3Ni8nf+3PhhgCmH2xLrqACBCerACZZeUvmRDhcxd71sGOX0z6tbkeybzBJjrKRBwCLfbNuaZY2fzYcEAZINbT8pMScG8pkYz5x6DK9tzjSvQ2sBK7rQVFc9WnlCg73CrcrKGUiAZXWA+8G60fVx0rWtJfa47KLsXomYWT4EctF3DZPQocRkKNhffDwiiGUM4zOqwJbwZr2FWV9NkRFccYimyIT4LSJDQFfE4KqdaJx2BUh1lEK0Gvra0Qsitkpa8IgQ4ohbMZ7GBTZz8p5lcNInzlk1REsGar0qoJQAuJsYDKf1pX+KkyZ5llJbqP7/rHhqbXpSn992afg1WklocSRPAQCTgWameurUap324f1chAnfx887XQuwNU2wz4JT1BqN18Z8rnfI7AdYuUXJ4bFQm36T0yxKyLSLvlsJyCa+f3tCHsS15hHhCI70wAsv/NcwYSaLCDk4A== X-Forefront-Antispam-Report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:AM9PR08MB6737.eurprd08.prod.outlook.com; PTR:; CAT:NONE; SFS:(4636009)(366004)(316002)(52116002)(38350700002)(38100700002)(6506007)(66476007)(66556008)(2906002)(66946007)(6486002)(8676002)(7416002)(4326008)(36756003)(2616005)(6916009)(5660300002)(86362001)(8936002)(186003)(26005)(1076003)(508600001)(6666004)(83380400001)(6512007); DIR:OUT; SFP:1102; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?V2diWVdRV2tMWWM3Zkx6M3lwNnJMakxlMUFsSThNd3VPUkdvM1MxMStkUEx5?= =?utf-8?B?bXZhUXd1L1FLVnBmdk1yUzNGeDFsdXZpN0V6ME9GRFZ3UTlFL1pqMzFob1hO?= =?utf-8?B?ZDBkWmJrYkdpclBpOE82ZUFQQUtBcENWb2Joam5MTnhBR1dnV0xkamxidjJl?= =?utf-8?B?dzdyOXIyeDY1NGJhdTZ6S2pPYlF5bTVnci9qS2FhWkpxWXdXK1ZrVEgwR2Nh?= =?utf-8?B?RGxSYWpiUGN3dGREYkY5UlZjZFcwTnpvVHRQYUVRYzZXbTUyTnRGVFhYZ0Uz?= =?utf-8?B?OWM4bjRrZDV0U1o5bVRVSUowb2Q3dFY2aEF3TEVoMCtKS2c1amFDaGl1Q21x?= =?utf-8?B?K1VxWHRSSktCb3ZFYSthdFNjVmsvbnhXaU82V1N2Vk5ua1J5dm55U3RlQi9s?= =?utf-8?B?aVAwOHJHbzdnUjBzLzY1SnVWRmNFc2VZalJFT2FlMGRHZWpBLys4cWtEeGNq?= =?utf-8?B?eEIveEt3QlBpc3d2RjJCajFhNXkxMXp2aStMc1U5azJOeVlSc1BtSXpiNERR?= =?utf-8?B?RE1YWThPWHVzMUVNTlpseTBMdTJoTFdwRjRwVEcrWitkVGpOeDlMYlNjME50?= =?utf-8?B?b2xxaTlHVlZQWi9SZ1duRnJPRDhNVDcvbkZ0U2dxWmMra2h1aWxuRUZnYnp1?= =?utf-8?B?bDRySVoxSUl3d1k4N2QvQ1UvZy9jT3ZwTUpDRkI4QzVZd3orUGRVL3U1ejlt?= =?utf-8?B?MkVEUSs5TmRXdTBFaytSbDJwVFJCZkQwT1pPVnpTdUxzZUluYXhscTZTdFVU?= =?utf-8?B?aWJRWTFwSWdHVVlDL2ptVmxxQllHbGo3Uk5EaGNEcXFDdlhuWkZqUXd3N1RC?= =?utf-8?B?MEl5RUtWVTR5UzcyMjBjblVieDBZMUVRS2p4UmgwcnovdE9yQkt6OFZJODB1?= =?utf-8?B?a1JFZ2lCMlFremgwbytCcXVNWWMyRjBvdldjZEwyNTQrNkVGOXlscENlQmhm?= =?utf-8?B?SlRJNzRWcHR2NWJEdTRqTHZNUkdZUE5Mb3cxOFhHTE1Lem9nYW9kcnVCei94?= =?utf-8?B?S3cxaUx5UXM5TEhLbXZreVBQYUM3cDh5dTczTVN3ekZmdHR0T1VIaWNtdU91?= =?utf-8?B?NzRnSUdUZlEySXptaXk0U05zTGxhVUxlTzhkcHoyNHpoVkhPcVhPdEJyMmds?= =?utf-8?B?S3BHa0tYRldVOVB6RHZLempXQ0Y0Uk11SzZmNnlDTkU3LzZzWlc4ek5rejBU?= =?utf-8?B?YkNOTFd2QWpOWkpVTGVPUmNaeWlGN3ZmNkg4M28vWFZaOG1OWmM0M01hYXNp?= =?utf-8?B?d2t3OHozdTFJRnprRllYZDF4ZDlHZVJQUlJZT1pZeEZHN1ZkQmFycXJKUTQy?= =?utf-8?B?VHFGSERXWExvV0dRSDFhb0owZ29EWnEyOFhpR0lGbTE4MzBQZmtjeDQxRDdV?= =?utf-8?B?N0pDbTJ2U3d5MEV1by8yNWFidEwvQnpHU0JUMy9obVpRWklsSEdoWVVLOTds?= =?utf-8?B?TlJoc3JEZ3M4NTVSTW9ISlZ6d0JBZk9GVXo1TVRUTUx6OU1hcGI5cHV3aXJ4?= =?utf-8?B?cEJHMUNKbmFYMWRHd1JXQXVPQi93WTcrZk9UZDJKY0VBU0lBVVR5MTNVRkVx?= =?utf-8?B?cEtaZDZsc080SDNyS3VxZk54REVjMHY4d0M2R1NxUWVIckVFbXVUcXZVckM0?= =?utf-8?B?L2c5SzVsclBGVytnMXUwMG1TWmx1bDRnTkE2VERaL3NHQzJjdWhDU3VVbkpQ?= =?utf-8?B?Qlp1NW5DVEpFRHdqRlR1ZW1Md1BlR0s0QWRyRExXU1ZiRlJUblc2WFJUL2o0?= =?utf-8?B?SnhHZmVESkdISEJURm1rMDYyVk1Id1Vzc1k5R1VEZnZoQ25RUkl1YnVER01m?= =?utf-8?B?bXVLUkxWa3kxZ3hFcDF3MXBwNGNEc1daejB6aDJkL2g1a3dpUHEvVDFSSzA3?= =?utf-8?B?aFlpdEZ0WlNzZWw2VW1vTDB0Zlk4Y09uVnZZT3laUU1wNjR3SWNQWmJESnNX?= =?utf-8?B?SDEvZW41blRFWGdqVm9PNEJ6aDNGcFQxRGsyZjFvSG53TTZnN3FIUVhKK0VD?= =?utf-8?B?bzJuK3FUU2swaS9wTWd2Mmh1TjV0ME5NeUtnR1lsc1F6cUpuRWI3enNEVVVF?= =?utf-8?B?VlpZVllXTktWYzBmUVA2ZUtXTUFWQk5SWWthc1l5NytDbkpxb1ZUSFltRUxv?= =?utf-8?B?M0VGaUxDckNXVHg3ODBTa3ZZcGxjLzEvUm9ydWwwc21tZTkzYno1eGdsVVdX?= =?utf-8?B?cGM5VUVMSEFnRGlQUlRJTThMWXJ0TlV2MnlZdTFRcmxiajlIanpXQVpHdGNo?= =?utf-8?Q?x5L+Np5IVS4c4qYnbJsbxqbyjfGa65QQ4vSf+EpPh4=3D?= X-OriginatorOrg: virtuozzo.com X-MS-Exchange-CrossTenant-Network-Message-Id: 1fb7f058-5457-4eab-2fc8-08d9c57fbca4 X-MS-Exchange-CrossTenant-AuthSource: AM9PR08MB6737.eurprd08.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 22 Dec 2021 19:17:46.7749 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 0bc7f26d-0264-416e-a6fc-8352af79c58f X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: 3J2b3tsfMJngcveWi4lwrtjnaGg7PcDanwG9p63+g94ijwoPm1HMsd93HQHSYL4S0BzSZcq/QnU/wN+sSh+xxsMT6FhZMiYctnDeKXM+8b0= X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM9PR08MB6290 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+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=40.107.14.119; envelope-from=vsementsov@virtuozzo.com; helo=EUR01-VE1-obe.outbound.protection.outlook.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, 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_PASS=-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+importer=patchew.org@nongnu.org Sender: "Qemu-devel" X-ZohoMail-DKIM: pass (identity @virtuozzo.com) X-ZM-MESSAGEID: 1640201782873100001 Add command that can change addresses where VNC server listens for new connections. Prior to 6.0 this functionality was available through 'change' qmp command which was deleted. Signed-off-by: Vladimir Sementsov-Ogievskiy Reviewed-by: Marc-Andr=C3=A9 Lureau --- docs/about/removed-features.rst | 3 ++- qapi/ui.json | 19 +++++++++++++++++++ ui/vnc.c | 26 ++++++++++++++++++++++++++ 3 files changed, 47 insertions(+), 1 deletion(-) diff --git a/docs/about/removed-features.rst b/docs/about/removed-features.= rst index d42c3341de..20e6901a82 100644 --- a/docs/about/removed-features.rst +++ b/docs/about/removed-features.rst @@ -348,7 +348,8 @@ documentation of ``query-hotpluggable-cpus`` for additi= onal details. ``change`` (removed in 6.0) ''''''''''''''''''''''''''' =20 -Use ``blockdev-change-medium`` or ``change-vnc-password`` instead. +Use ``blockdev-change-medium`` or ``change-vnc-password`` or +``change-vnc-listen`` instead. =20 ``query-events`` (removed in 6.0) ''''''''''''''''''''''''''''''''' diff --git a/qapi/ui.json b/qapi/ui.json index 2b4371da37..6a586edff1 100644 --- a/qapi/ui.json +++ b/qapi/ui.json @@ -1334,3 +1334,22 @@ { 'command': 'display-reload', 'data': 'DisplayReloadOptions', 'boxed' : true } + +## +# @change-vnc-listen: +# +# Change set of addresses to listen for connections. +# +# @id: vnc display identifier +# +# @addresses: list of addresses for listen at +# +# @websockets: list of addresses to listen with websockets +# +# Since: 7.0 +# +## +{ 'command': 'change-vnc-listen', + 'data': { 'id': 'str', 'addresses': ['SocketAddress'], + '*websockets': ['SocketAddress'] }, + 'if': 'CONFIG_VNC' } diff --git a/ui/vnc.c b/ui/vnc.c index e8430531c0..d7d0d255fc 100644 --- a/ui/vnc.c +++ b/ui/vnc.c @@ -4212,6 +4212,32 @@ fail: vnc_display_close(vd); } =20 +void qmp_change_vnc_listen(const char *id, SocketAddressList *addresses, + bool has_websockets, SocketAddressList *websock= ets, + Error **errp) +{ + VncDisplay *vd =3D vnc_display_find(id); + + if (!vd) { + error_setg(errp, "VNC display '%s' not active", id); + return; + } + + if (vd->listener) { + qio_net_listener_disconnect(vd->listener); + object_unref(OBJECT(vd->listener)); + } + vd->listener =3D NULL; + + if (vd->wslistener) { + qio_net_listener_disconnect(vd->wslistener); + object_unref(OBJECT(vd->wslistener)); + } + vd->wslistener =3D NULL; + + vnc_display_listen(vd, addresses, websockets, errp); +} + void vnc_display_add_client(const char *id, int csock, bool skipauth) { VncDisplay *vd =3D vnc_display_find(id); --=20 2.31.1 From nobody Sun May 19 12:26:26 2024 Delivered-To: importer@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+importer=patchew.org@nongnu.org; arc=pass (i=1 dmarc=pass fromdomain=virtuozzo.com); dmarc=pass(p=quarantine dis=none) header.from=virtuozzo.com ARC-Seal: i=2; a=rsa-sha256; t=1640201196; cv=pass; d=zohomail.com; s=zohoarc; b=YDGA/sYkGqVP9v9Ij3mAG8ql9qkNo63Cy/4qbj27VKrWEXQUyFmwehvuD02c3P5np5D9ufuz4QHlKdbf5UOkxl4vDum1rMCagrVBjVioj+A465f7hlDd7NFxjgfxW6aSGLPUo8mg/fgyTZZ2Jglx+YvOFlU4Wu+/HWy/EFeMpZM= ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1640201196; h=Content-Type:Content-Transfer-Encoding:Cc: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=llS1TjyFmWvFLtpCGp2YfKO92lT1wDZw4gFm+qt4bb4=; b=UIvqPLt8Pf/sLUVCYKQ30GXyo4wkxueTN9tW280ULbB765MjEqbTetwkymMM8dTo0/2CAidXsYUbYz5Yv5u8SNUyeDmO5st4M8AnqyriQP3DxBnuydt22SrmOjlVWH7JBPq/tYAixDLNqZ7LkEZgSjxfBedfqtSw4uDHAa+cF1o= ARC-Authentication-Results: i=2; 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+importer=patchew.org@nongnu.org; arc=pass (i=1 dmarc=pass fromdomain=virtuozzo.com); dmarc=pass header.from= (p=quarantine dis=none) Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1640201196615354.56607739990113; Wed, 22 Dec 2021 11:26:36 -0800 (PST) Received: from localhost ([::1]:60262 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1n07Fz-0006Mt-CW for importer@patchew.org; Wed, 22 Dec 2021 14:26:35 -0500 Received: from eggs.gnu.org ([209.51.188.92]:51080) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1n077h-0007bY-JB for qemu-devel@nongnu.org; Wed, 22 Dec 2021 14:18:01 -0500 Received: from mail-eopbgr140119.outbound.protection.outlook.com ([40.107.14.119]:46656 helo=EUR01-VE1-obe.outbound.protection.outlook.com) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1n077f-0001Jb-Mi for qemu-devel@nongnu.org; Wed, 22 Dec 2021 14:18:00 -0500 Received: from AM9PR08MB6737.eurprd08.prod.outlook.com (2603:10a6:20b:304::18) by AM9PR08MB6290.eurprd08.prod.outlook.com (2603:10a6:20b:2d5::21) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4823.14; Wed, 22 Dec 2021 19:17:48 +0000 Received: from AM9PR08MB6737.eurprd08.prod.outlook.com ([fe80::b118:483a:d003:3112]) by AM9PR08MB6737.eurprd08.prod.outlook.com ([fe80::b118:483a:d003:3112%5]) with mapi id 15.20.4823.019; Wed, 22 Dec 2021 19:17:47 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=HzoUHvcvwxn6UYT79cq9B1Hon6vNdc7F5XE2cmVGVZmRi1zGr4Fsg65Ich4ilvnrF4AzhrvIZkmOes+hl+/Zb+wc+zy9CyykhXWL0xJYf+nvy2grh9hlx99ZMXIhX3WmCpMHTYSnoeJzE7oHnBFQAU1UGgD1NqsodVskC+ujIK90R8bpxSneXVRx//CoUnBSayqC0gRBp7qkfWyyLkyQqgpp7/BCLHKwgN633x1fK89Y8F6Aw5FgRowP7lhMmbEpeqzRqspLlUgXJBxnGkiXYYb1uGUgFU5NSun195h4VAw1Z6qO/ysvNROHTyXwD4l1SJAu6qp7QNEAFKYZlX5atw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=llS1TjyFmWvFLtpCGp2YfKO92lT1wDZw4gFm+qt4bb4=; b=LAR6DNIOA7Wyx7K8RgN+BSuMiWDbA4rXetuCfVHvVG6HYk5YvCi/2ZQHJ91yh8naKbX+vokb6IVKjrPd6PIkWgLok/Cn6NE7ZLmmFEBvnYBHsfK6IfDP3u4uBn3TdwuwgzV7ivybh7bSDatRfNqlqh5WO7Uz18V5+dH4v0WKEHn41O/VUAVDuhQvWZMKSzarPaWD/PDrJEcqYuYCg7F0hTcotswQOUZvZK6t12P3DQviBFs39pobkqNcoPipCcJ/S7eNVZ104qzIzxG+h5jQGNbBxLagcFwRIhN0lkVJ5Z0Xw9rhkTiknjLyCZm0p8xHl0rBXFuY8EZTbP5fwojy7A== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=virtuozzo.com; dmarc=pass action=none header.from=virtuozzo.com; dkim=pass header.d=virtuozzo.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=virtuozzo.com; s=selector2; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=llS1TjyFmWvFLtpCGp2YfKO92lT1wDZw4gFm+qt4bb4=; b=GvVpZzwtKySYzXCaRT9BfagVTbUuNGbdc4aGmRWOmzKlSy/M2+ADwzRh53dDUkCOsRNV6FkC1nDw463VAEQl8vQuoTSBS0VZ7nx00MXLqYGlip91jW2X/FDCvzgjqoZPm4Ir00hYG9S7PkK2hxyphRRRGNF04j4mX5y7BDaa6Js= Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=virtuozzo.com; From: Vladimir Sementsov-Ogievskiy To: qemu-devel@nongnu.org Cc: bleal@redhat.com, wainersm@redhat.com, philmd@redhat.com, crosa@redhat.com, armbru@redhat.com, eblake@redhat.com, kraxel@redhat.com, marcandre.lureau@gmail.com, vsementsov@virtuozzo.com, =?UTF-8?q?Marc-Andr=C3=A9=20Lureau?= Subject: [PATCH v2 3/3] avocado/vnc: add test_change_listen Date: Wed, 22 Dec 2021 20:17:31 +0100 Message-Id: <20211222191731.467706-4-vsementsov@virtuozzo.com> X-Mailer: git-send-email 2.31.1 In-Reply-To: <20211222191731.467706-1-vsementsov@virtuozzo.com> References: <20211222191731.467706-1-vsementsov@virtuozzo.com> Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable X-ClientProxiedBy: FR2P281CA0035.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:14::22) To AM9PR08MB6737.eurprd08.prod.outlook.com (2603:10a6:20b:304::18) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: 3a29555c-75f0-4f3d-c4ba-08d9c57fbcfe X-MS-TrafficTypeDiagnostic: AM9PR08MB6290:EE_ X-Microsoft-Antispam-PRVS: X-MS-Oob-TLC-OOBClassifiers: OLM:1079; X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: X9YAvdi36hotONVSNpy+u5hBjZFbMJFtvhCkACihlvr7DmqTjVWZVJn0/KONedkubOVgehCWl/KCVBtc1rM2C9eLjIUxDt+ccG+Tj+6LUBkRAefFl4a9ptd8J5/CoYUwcKwjU5jRFYN+KpBlpCrsFMu3GDUX+eUYZ4vbDJExiWQsoIo6VJUjTr2/FxW7tnSDw89nLVDbilJTM1X/nH/0YAOUrLdbxPWSnPy6wTLgD0LwGNIlQ+pG6fitXOjpXsbxz7QMwPoQ1ARIwRSU6vwvkHS4w1BbiBbWm1+sYeoNSLkD+jCf95y0K+uaqCw598pkoDmk6MbdnHa0t5AusAOlERz2njycIg/hfjU5wAbW5AhhMxIO9hkmqqaNX3CbWHLmFLM50gHnTqu4PYRALcCBn8zbNUgPVF8zIsSZvbeBr543WbqPINdjMXUmt9Ad54vlNpMwWMu4PC36IwK9OgoGWUR6TcszZT9d388l3vVOviSjr855RwAWmjGf+bNI4MAj+fp0wwk7G1U18UCeMb+8JEK9ASCswrEVJL/mRUwa46no8Im9vV76C826wYe9sJhL7NKXNt8Dp4us2u5BDDwphCnOQ4wXZ0T+LkXIOF4tZNTbleVzcY0rgjnO55uqwcgkfzJbNI/SkHoSp/v4xL7qjLBd3bKUgevjHQbuTGDCw7xn2iDAcIA0G7paLKDBdysvVb/9y9bVvQbWYtXSM/m4kA== X-Forefront-Antispam-Report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:AM9PR08MB6737.eurprd08.prod.outlook.com; PTR:; CAT:NONE; SFS:(4636009)(366004)(316002)(52116002)(38350700002)(38100700002)(6506007)(66476007)(66556008)(2906002)(66946007)(6486002)(8676002)(7416002)(4326008)(36756003)(2616005)(6916009)(5660300002)(86362001)(8936002)(186003)(26005)(1076003)(508600001)(6666004)(83380400001)(6512007); DIR:OUT; SFP:1102; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?R2ZRa3FDQXhnK1oxeHZsb3YxckR0ZnM0OEtHK1JYOVhodXRSd24zeWh4aFlh?= =?utf-8?B?b3VBQlZXbEY1bVl5c05heFU0dCtsVkkvVFI5Q3JhYVRUUzVYdmd6R1NmZ0ZK?= =?utf-8?B?WE5FSk41emdYRkVDV2pxNm9COTBuTVlFMVFFSklUYzdkSkd1SmVubGY4TUlF?= =?utf-8?B?Vi9vRjZuKysrazRQUUJzWnY1eUlGR1diNmkvYVVOT3c4THNzcHhRT0p1RDVM?= =?utf-8?B?SW85SUxZWDZQcDV6MFdmOHpNUS9GQi8wWXlZM1JzV2xxWkI0SkpkUjFMdU4z?= =?utf-8?B?TkVaRlJyMk53NW9KRnlMci9idDRVNFNYRHQwdmN3UnAybW13dHlNdWhNa3Fi?= =?utf-8?B?LzZIZ1F6d25GWXlHY2NnSVJYTmwxaHFJTkZlRE9YWFkzWFA3cm00cXBiMDNy?= =?utf-8?B?M1hpSGpkeW5XYUl1VUxkUlUwazlKejYwdk9pL1RvVXc5c1hGNDNPQ0lvbDNs?= =?utf-8?B?cm1VZlhtNG11c3NmbzdQQ3JNdDVGRjVYaFl0dTlvU0VUMmZ3SFRVMS80V1VU?= =?utf-8?B?U3FrMGxNdXRWdjBmV1dVcXN0Y2hhOFgxTk11eTVHampCdXNFbHlPUGdVRXor?= =?utf-8?B?M0Zvd2gxa21KbkdGSnpLY20yeFRSZmtrdWlEY3hvcmMvY0ZQbEE2NWJMZ0o3?= =?utf-8?B?eEtJUFlrOTlpQlpYOGFkd3lUTENrN2tocU53RkUzWjRUaElsK3hSUUwyam10?= =?utf-8?B?ZGJJcmNDdkhxeHN2WndvRVR6Ni9XWVRLR2tpZ20vMlZRbWpSWVlqSG5IS3pY?= =?utf-8?B?SDRnKzRycHdSWlUvTDc2MHVZZEF2SGhWdEpNKzdYdTF1TUxNRnl1RXVPQXVR?= =?utf-8?B?ZUVyNHJEaExhOTFvZmZEWjkwaUhwU245VG1KWENPRlZPRjVncnp6dG83SjZ4?= =?utf-8?B?TDdyVHFDUEdoeEJud1I1WkMvSUpLeEs0R3FDNUZuTHViM3ZUcFBXUzZDRjFr?= =?utf-8?B?THgwQlBkZ3MyTXd2Szc5UThKNnhPSzE5Znoyd21IZ2ZEN3F6QS9NRktLRWpU?= =?utf-8?B?MDl1ajhzMUtmMHI2SE8zZ1VTOVZ4YUZ3eEtNekRFQTA5QU4xalhGdVY3eVFZ?= =?utf-8?B?UmY3aFViVVRwRFZZcjh6V29qR1ZPazdJL2x1TTZVRFJFNFg1NTN4NXdWMkUz?= =?utf-8?B?M2pPU3JoT0dWcmJzWERTanFhdGtEcW9iSGRVaGFyUXhtV2ZnYVFvOE1DaG85?= =?utf-8?B?M3o4by9qc3JyZnFRVFBiNTYzMnlKL0ozNXd0WEVLMTVoNzlVUmJjTk5GN2Vu?= =?utf-8?B?TFJKUWpqbCt4V0N0RXU2THFSNHV4QmFVMFM1SlRPMkZ6UFEwTThEemZNclJw?= =?utf-8?B?cEcvMG9HaHVTc2NLdHgvcWI3RENRM3YveEIwb29KKzVQZkl3dG9lU1JQUElY?= =?utf-8?B?ZG9oQm1jQktPaVQzeUt3YXJJZzBFVGdFRER2NkZVbWMrTVdOc0h5eXpwZUpN?= =?utf-8?B?dm5xaXJiV1FGaXdFdUxtTjlXd0FMdmFkdnN3NjBnc0RyYmhXcG92L29CUk9a?= =?utf-8?B?a1ZtTFFMMVBnNFBiNW5uM3VROG5Hc1l1aUhrSDJCWndWTTErWmxlbUpVYjNa?= =?utf-8?B?U1hUQmFhS3ZjczZKT2dWUXBWWnliUVF0WmJmRlNRK1BZOUlWZnMxU2tMOTBN?= =?utf-8?B?N0kxWlRPcHdncjlncnVYODN6OTJDak44Z0JNU2xPQ3JHUFRzZENLd1dTRzhr?= =?utf-8?B?WldtajZkSWVWUU5LcHVnM1dFcGp6K3RWZWJSQVk2ZWxHbnh0cXluQlo5V1hW?= =?utf-8?B?TU5nRm5SUkFqM0ZRSGV0cXZOREpVSUl5dEJEVVc3azJYYnZSSDB5Rmw4aEk5?= =?utf-8?B?RiswdHdpb0xjdDF4ZVV1ZWxsSk14bU5DVzJpOEJlK1lFSkc2cEZ0L0RRc29y?= =?utf-8?B?VnE1SHRjdUlPNStnY1pDZjJvOHZMV0V1N0NsTitrczQwbTFtY1ZXN2pNcnor?= =?utf-8?B?TzM5SkJVbzFQV012eGMxWWlmWjFkQWVYMVRjZGZkVjR4enMybWZXKzRzZ20x?= =?utf-8?B?Vkx0OWhHVzhrM1RlOEpVL2lMczdNZGZaMkp0S2dEN1BGYVJZWjQ0S1FVMjV2?= =?utf-8?B?VGR0MnIxZDBEWnVRVS9Bbk9PeG9ZVENYeS9qWVdKRHE3ZGhRb0pQQmpTV1h5?= =?utf-8?B?d1laSHFUNmNZbVNVUWF3NWpsWTRwa0JRYlNVeENwMW5NVmt0UG9sUHFTdW5P?= =?utf-8?B?bVFnZER5akc0NEUydXNhQ2NpWU9Lc09hVUdxNFhrWDhWOE1velpwT2owK01Y?= =?utf-8?Q?z4pUjz8vpw/ZC789YRm8LqdufwsxiWnCP3gPcidY9Y=3D?= X-OriginatorOrg: virtuozzo.com X-MS-Exchange-CrossTenant-Network-Message-Id: 3a29555c-75f0-4f3d-c4ba-08d9c57fbcfe X-MS-Exchange-CrossTenant-AuthSource: AM9PR08MB6737.eurprd08.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 22 Dec 2021 19:17:47.4154 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 0bc7f26d-0264-416e-a6fc-8352af79c58f X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: Dizk86y2EFeR9Uml6AuLvpnfgv0VwtsD2JBCIP2LfuwILjgJ+QO+/lUQBWFjhAuB/uZ4JLfWwBBjcgfy2v2WIi3K/AOUTAGZ8AYcJ2YPNRY= X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM9PR08MB6290 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+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=40.107.14.119; envelope-from=vsementsov@virtuozzo.com; helo=EUR01-VE1-obe.outbound.protection.outlook.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, 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_PASS=-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+importer=patchew.org@nongnu.org Sender: "Qemu-devel" X-ZohoMail-DKIM: pass (identity @virtuozzo.com) X-ZM-MESSAGEID: 1640201197328100001 Add simple test-case for new change-vnc-listen qmp command. Signed-off-by: Vladimir Sementsov-Ogievskiy Reviewed-by: Marc-Andr=C3=A9 Lureau --- tests/avocado/vnc.py | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/tests/avocado/vnc.py b/tests/avocado/vnc.py index 096432988f..f05ee1e00a 100644 --- a/tests/avocado/vnc.py +++ b/tests/avocado/vnc.py @@ -51,3 +51,13 @@ def test_change_password(self): set_password_response =3D self.vm.qmp('change-vnc-password', password=3D'new_password') self.assertEqual(set_password_response['return'], {}) + + def test_change_listen(self): + self.vm.add_args('-nodefaults', '-S', '-vnc', ':0') + self.vm.launch() + self.assertEqual(self.vm.qmp('query-vnc')['return']['service'], '5= 900') + res =3D self.vm.qmp('change-vnc-listen', id=3D'default', + addresses=3D[{'type': 'inet', 'host': '0.0.0.0', + 'port': '5901'}]) + self.assertEqual(res['return'], {}) + self.assertEqual(self.vm.qmp('query-vnc')['return']['service'], '5= 901') --=20 2.31.1