From nobody Wed May 15 18:38:18 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; dmarc=pass(p=none dis=none) header.from=redhat.com ARC-Seal: i=1; a=rsa-sha256; t=1607430234; cv=none; d=zohomail.com; s=zohoarc; b=l4/NeWkR/QR3suyO6a/MUzdU9lPHh9WVlZ3hIgZhi7zXEXNhWbc6KCRVczauCThMAchRBF/4rxQgmABLrYdIFCMc7tYD/8wmKVokYojDUPx0sUn55psW++BIpMImHhphlbHltOu+COeEEkESkd0xHQ1sPQXg1eKKb9O7C6xu0Ss= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1607430234; 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=uNKilwWVAH7hHlfFA8GmXIISF8LfSAOs/eZ0rlZAhP4=; b=HxEkKvTkdgioTObo8yDDXWUwvxQWXY7TtK0YgB6xO9oqDR4ZiC/yFWMFU7mIjgWxnejLZeRHCLzpjQ8RlH6V7pZAV92mSYy/UWaFst0BnC5yVmtR0rFN1JZw+XmMCXL2RKobLa2es1S4IvCY1xfAxoqT343jL3ShJchv05g4rg4= 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+importer=patchew.org@nongnu.org; dmarc=pass header.from= (p=none dis=none) header.from= Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1607430234722547.9935965916335; Tue, 8 Dec 2020 04:23:54 -0800 (PST) Received: from localhost ([::1]:42542 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1kmbiu-0006oa-4f for importer@patchew.org; Tue, 08 Dec 2020 07:04:04 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]:49262) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1kmbcq-0001Rr-I3 for qemu-devel@nongnu.org; Tue, 08 Dec 2020 06:57:48 -0500 Received: from us-smtp-delivery-124.mimecast.com ([63.128.21.124]:37289) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_CBC_SHA1:256) (Exim 4.90_1) (envelope-from ) id 1kmbcn-000531-QE for qemu-devel@nongnu.org; Tue, 08 Dec 2020 06:57:48 -0500 Received: from mimecast-mx01.redhat.com (mimecast-mx01.redhat.com [209.132.183.4]) (Using TLS) by relay.mimecast.com with ESMTP id us-mta-216-iHLs5TtdPtGraWoZDog-8Q-1; Tue, 08 Dec 2020 06:57:42 -0500 Received: from smtp.corp.redhat.com (int-mx07.intmail.prod.int.phx2.redhat.com [10.5.11.22]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mimecast-mx01.redhat.com (Postfix) with ESMTPS id 8F58B18C89C4 for ; Tue, 8 Dec 2020 11:57:41 +0000 (UTC) Received: from sirius.home.kraxel.org (ovpn-112-94.ams2.redhat.com [10.36.112.94]) by smtp.corp.redhat.com (Postfix) with ESMTP id 2D1BD10021B3; Tue, 8 Dec 2020 11:57:38 +0000 (UTC) Received: by sirius.home.kraxel.org (Postfix, from userid 1000) id 2BDDDA1E2; Tue, 8 Dec 2020 12:57:37 +0100 (CET) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1607428664; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=uNKilwWVAH7hHlfFA8GmXIISF8LfSAOs/eZ0rlZAhP4=; b=Jimrskf9KgoCth1lknwsvE97cYE9HRd2uNyHEt56dReEmml9FvnRHvkCXMMLGQpLwmgU4/ GhlNeCLFkRuorkm/winDWh7XX+D1xUYPjjoHj7GSAepn/v5/FJ5GEXobrwzw2tmqItyLHD 5uVk2naXPh6jcGB/20LVD4RSugeaG80= X-MC-Unique: iHLs5TtdPtGraWoZDog-8Q-1 From: Gerd Hoffmann To: qemu-devel@nongnu.org Subject: [PATCH v2 1/9] console: drop qemu_console_get_ui_info Date: Tue, 8 Dec 2020 12:57:29 +0100 Message-Id: <20201208115737.18581-2-kraxel@redhat.com> In-Reply-To: <20201208115737.18581-1-kraxel@redhat.com> References: <20201208115737.18581-1-kraxel@redhat.com> MIME-Version: 1.0 X-Scanned-By: MIMEDefang 2.84 on 10.5.11.22 Authentication-Results: relay.mimecast.com; auth=pass smtp.auth=CUSA124A263 smtp.mailfrom=kraxel@redhat.com X-Mimecast-Spam-Score: 0 X-Mimecast-Originator: redhat.com Content-Transfer-Encoding: quoted-printable 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=63.128.21.124; envelope-from=kraxel@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_H4=0.001, RCVD_IN_MSPIKE_WL=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.23 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Gerd Hoffmann Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: "Qemu-devel" X-ZohoMail-DKIM: pass (identity @redhat.com) Content-Type: text/plain; charset="utf-8" Unused and duplicate (there is dpy_get_ui_info). Signed-off-by: Gerd Hoffmann Reviewed-by: Daniel P. Berrang=C3=A9 Reviewed-by: Marc-Andr=C3=A9 Lureau --- include/ui/console.h | 1 - ui/console.c | 6 ------ 2 files changed, 7 deletions(-) diff --git a/include/ui/console.h b/include/ui/console.h index e7303d8b98a8..5dd21976a376 100644 --- a/include/ui/console.h +++ b/include/ui/console.h @@ -390,7 +390,6 @@ bool qemu_console_is_gl_blocked(QemuConsole *con); char *qemu_console_get_label(QemuConsole *con); int qemu_console_get_index(QemuConsole *con); uint32_t qemu_console_get_head(QemuConsole *con); -QemuUIInfo *qemu_console_get_ui_info(QemuConsole *con); int qemu_console_get_width(QemuConsole *con, int fallback); int qemu_console_get_height(QemuConsole *con, int fallback); /* Return the low-level window id for the console */ diff --git a/ui/console.c b/ui/console.c index 53dee8e26b17..f995639e45f6 100644 --- a/ui/console.c +++ b/ui/console.c @@ -2122,12 +2122,6 @@ uint32_t qemu_console_get_head(QemuConsole *con) return con ? con->head : -1; } =20 -QemuUIInfo *qemu_console_get_ui_info(QemuConsole *con) -{ - assert(con !=3D NULL); - return &con->ui_info; -} - int qemu_console_get_width(QemuConsole *con, int fallback) { if (con =3D=3D NULL) { --=20 2.27.0 From nobody Wed May 15 18:38:18 2024 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=fail; 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; dmarc=fail(p=none dis=none) header.from=redhat.com ARC-Seal: i=1; a=rsa-sha256; t=1607428803; cv=none; d=zohomail.com; s=zohoarc; b=C8YILqPOBlIVhGMJVK+0kH0TaVMsbsilgygeIVFa6GLy/n9j4o4IGciPrYin+k6q8XrRlJPuVe6ZADCQiy/R5HQWTTqg9wzdq63Vq72VYq1JoElubOheKe6qk5gSF/csCMTFRJ7z+uVT+3BhE0JrxJ4WXGFSjmi1ZHj3ppGGBcQ= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1607428803; 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=QxD69VGRgsi+QiZdT0WgePX6vKXo/iHQYhEe4YomoPM=; b=fiJSKoGJVAXwDczgSgFQ/FmQyROrinDwC+oHxZaEGrOrAmimN6Bp5fq4GQYSqfUgYWZQN2gy7R1Mq9MY+kJ8PIXk3xw3scOBlkXe+MXKvTra4q1luTwd54AakBIgZY9uPLX1hdGurDodgH7zWQ89T3h5j8wy5/T6Ng7XUr0LgVE= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=fail; 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; dmarc=fail header.from= (p=none dis=none) header.from= Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1607428802997710.1519476481812; Tue, 8 Dec 2020 04:00:02 -0800 (PST) Received: from localhost ([::1]:33890 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1kmbey-00038Q-I9 for importer@patchew.org; Tue, 08 Dec 2020 07:00:01 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]:49276) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1kmbcq-0001Rt-Lj for qemu-devel@nongnu.org; Tue, 08 Dec 2020 06:57:48 -0500 Received: from us-smtp-delivery-124.mimecast.com ([216.205.24.124]:40792) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_CBC_SHA1:256) (Exim 4.90_1) (envelope-from ) id 1kmbcn-00052v-Ll for qemu-devel@nongnu.org; Tue, 08 Dec 2020 06:57:47 -0500 Received: from mimecast-mx01.redhat.com (mimecast-mx01.redhat.com [209.132.183.4]) (Using TLS) by relay.mimecast.com with ESMTP id us-mta-447-Rat-l52XMo-cEOIGAbLsng-1; Tue, 08 Dec 2020 06:57:42 -0500 Received: from smtp.corp.redhat.com (int-mx06.intmail.prod.int.phx2.redhat.com [10.5.11.16]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mimecast-mx01.redhat.com (Postfix) with ESMTPS id 6D2E4427C2 for ; Tue, 8 Dec 2020 11:57:41 +0000 (UTC) Received: from sirius.home.kraxel.org (ovpn-112-94.ams2.redhat.com [10.36.112.94]) by smtp.corp.redhat.com (Postfix) with ESMTP id 3A4C65C1A3; Tue, 8 Dec 2020 11:57:38 +0000 (UTC) Received: by sirius.home.kraxel.org (Postfix, from userid 1000) id 350E9A1FB; Tue, 8 Dec 2020 12:57:37 +0100 (CET) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1607428664; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=QxD69VGRgsi+QiZdT0WgePX6vKXo/iHQYhEe4YomoPM=; b=WmI5KGbVwMMmWJBn8x4MzXIJNZT6xal2I5o0Wg71mbGIZKiK0NLYrBcfc6X94Ug+ECFfj1 CPI9q2vN4fC0j5ORQwollG+ZBvE+BwDN6WsfqGxZYBT/yq6GPdBWvNhwSdhI3BxrqplAbl dhQjVkwwHWJKTzR39VK76MavNeTHii0= X-MC-Unique: Rat-l52XMo-cEOIGAbLsng-1 From: Gerd Hoffmann To: qemu-devel@nongnu.org Subject: [PATCH v2 2/9] console: allow con==NULL in dpy_{get, set}_ui_info and dpy_ui_info_supported Date: Tue, 8 Dec 2020 12:57:30 +0100 Message-Id: <20201208115737.18581-3-kraxel@redhat.com> In-Reply-To: <20201208115737.18581-1-kraxel@redhat.com> References: <20201208115737.18581-1-kraxel@redhat.com> MIME-Version: 1.0 X-Scanned-By: MIMEDefang 2.79 on 10.5.11.16 Authentication-Results: relay.mimecast.com; auth=pass smtp.auth=CUSA124A263 smtp.mailfrom=kraxel@redhat.com X-Mimecast-Spam-Score: 0 X-Mimecast-Originator: redhat.com Content-Transfer-Encoding: quoted-printable 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=216.205.24.124; envelope-from=kraxel@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_H3=0.001, RCVD_IN_MSPIKE_WL=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.23 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Gerd Hoffmann Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: "Qemu-devel" X-ZohoMail-DKIM: fail (Header signature does not verify) Content-Type: text/plain; charset="utf-8" Use active_console in that case like we do in many other places. Signed-off-by: Gerd Hoffmann Reviewed-by: Daniel P. Berrang=C3=A9 --- ui/console.c | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) diff --git a/ui/console.c b/ui/console.c index f995639e45f6..30e70be555db 100644 --- a/ui/console.c +++ b/ui/console.c @@ -1544,19 +1544,27 @@ static void dpy_set_ui_info_timer(void *opaque) =20 bool dpy_ui_info_supported(QemuConsole *con) { + if (con =3D=3D NULL) { + con =3D active_console; + } + return con->hw_ops->ui_info !=3D NULL; } =20 const QemuUIInfo *dpy_get_ui_info(const QemuConsole *con) { - assert(con !=3D NULL); + if (con =3D=3D NULL) { + con =3D active_console; + } =20 return &con->ui_info; } =20 int dpy_set_ui_info(QemuConsole *con, QemuUIInfo *info) { - assert(con !=3D NULL); + if (con =3D=3D NULL) { + con =3D active_console; + } =20 if (!dpy_ui_info_supported(con)) { return -1; --=20 2.27.0 From nobody Wed May 15 18:38:18 2024 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=fail; 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; dmarc=fail(p=none dis=none) header.from=redhat.com ARC-Seal: i=1; a=rsa-sha256; t=1607430080; cv=none; d=zohomail.com; s=zohoarc; b=ND6C9PCGzU/W3JZJM8xeamJyEedifumqN84+PMZ8bIBKMijdsykH54ljqxR7qcpHxlCTCXn+fuO0V55iqjb3tIETJz1r4bkfNOITA9V1p8SVdtK8oFeKlbT2G/N2Jq94QM8eRivsTz5wgGSa8zGosuAobiw+wJrh34Tc09kpkRE= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1607430080; 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=54eErFjWzULpBgE1E4/EYUqQQPO1dJmwDPj3VAlTzVk=; b=ScE83WWZd+m7gJttXouiX1afx8DJ6v57TWX7hYkYaNk2JrnWQRZ7eKNSkebUlWsjs/McWOcNFPMV6yseqTZuFQLL5A8NkSa8QhxEr09xLLtMURLZGT3flfksUZmx6Y+YyZrnpoXfjrcEYDA6jj3MeVdOUUvkFfYStErheQimdEQ= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=fail; 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; dmarc=fail header.from= (p=none dis=none) header.from= Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1607430080961407.6143443272489; Tue, 8 Dec 2020 04:21:20 -0800 (PST) Received: from localhost ([::1]:42732 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1kmbjI-0006tJ-26 for importer@patchew.org; Tue, 08 Dec 2020 07:04:28 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]:49310) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1kmbcr-0001Su-Uq for qemu-devel@nongnu.org; Tue, 08 Dec 2020 06:57:49 -0500 Received: from us-smtp-delivery-124.mimecast.com ([63.128.21.124]:30784) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_CBC_SHA1:256) (Exim 4.90_1) (envelope-from ) id 1kmbcp-00053K-H6 for qemu-devel@nongnu.org; Tue, 08 Dec 2020 06:57:49 -0500 Received: from mimecast-mx01.redhat.com (mimecast-mx01.redhat.com [209.132.183.4]) (Using TLS) by relay.mimecast.com with ESMTP id us-mta-318-PjudyFOhP96fO0Gsft3cdA-1; Tue, 08 Dec 2020 06:57:45 -0500 Received: from smtp.corp.redhat.com (int-mx04.intmail.prod.int.phx2.redhat.com [10.5.11.14]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mimecast-mx01.redhat.com (Postfix) with ESMTPS id 5B8E6107ACE3 for ; Tue, 8 Dec 2020 11:57:44 +0000 (UTC) Received: from sirius.home.kraxel.org (ovpn-112-94.ams2.redhat.com [10.36.112.94]) by smtp.corp.redhat.com (Postfix) with ESMTP id 3A3E95D9DD; Tue, 8 Dec 2020 11:57:38 +0000 (UTC) Received: by sirius.home.kraxel.org (Postfix, from userid 1000) id 3DD649D92; Tue, 8 Dec 2020 12:57:37 +0100 (CET) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1607428666; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=54eErFjWzULpBgE1E4/EYUqQQPO1dJmwDPj3VAlTzVk=; b=Tuae0oZQUnmA96n6wULap/saFhkrPa+fKtGY7B/JVKO9XmQ45X6lv7ECmjAtQZ4S0uM/qO bs9eJwUlIMd2p8wdnIZraLj0IxWnqYNpUPrKP5+KJs0tCa+8RC6/LOFWQ3JrG719SdqUkK pZgtj6xaRiiN95mk4b93bu8TyP8gk44= X-MC-Unique: PjudyFOhP96fO0Gsft3cdA-1 From: Gerd Hoffmann To: qemu-devel@nongnu.org Subject: [PATCH v2 3/9] vnc: use enum for features Date: Tue, 8 Dec 2020 12:57:31 +0100 Message-Id: <20201208115737.18581-4-kraxel@redhat.com> In-Reply-To: <20201208115737.18581-1-kraxel@redhat.com> References: <20201208115737.18581-1-kraxel@redhat.com> MIME-Version: 1.0 X-Scanned-By: MIMEDefang 2.79 on 10.5.11.14 Authentication-Results: relay.mimecast.com; auth=pass smtp.auth=CUSA124A263 smtp.mailfrom=kraxel@redhat.com X-Mimecast-Spam-Score: 0 X-Mimecast-Originator: redhat.com Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable 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=63.128.21.124; envelope-from=kraxel@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_H4=0.001, RCVD_IN_MSPIKE_WL=0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, UPPERCASE_50_75=0.008 autolearn=no autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: =?UTF-8?q?Marc-Andr=C3=A9=20Lureau?= , Gerd Hoffmann Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: "Qemu-devel" X-ZohoMail-DKIM: fail (Header signature does not verify) Use an enum for the vnc feature bits. That way they are enumerated automatically and we don't have to do that manually when adding or removing features. Signed-off-by: Gerd Hoffmann Reviewed-by: Marc-Andr=C3=A9 Lureau --- ui/vnc.h | 26 ++++++++++++++------------ 1 file changed, 14 insertions(+), 12 deletions(-) diff --git a/ui/vnc.h b/ui/vnc.h index 4e2637ce6c5c..262fcf179b44 100644 --- a/ui/vnc.h +++ b/ui/vnc.h @@ -438,18 +438,20 @@ enum { * *************************************************************************= ****/ =20 -#define VNC_FEATURE_RESIZE 0 -#define VNC_FEATURE_HEXTILE 1 -#define VNC_FEATURE_POINTER_TYPE_CHANGE 2 -#define VNC_FEATURE_WMVI 3 -#define VNC_FEATURE_TIGHT 4 -#define VNC_FEATURE_ZLIB 5 -#define VNC_FEATURE_COPYRECT 6 -#define VNC_FEATURE_RICH_CURSOR 7 -#define VNC_FEATURE_TIGHT_PNG 8 -#define VNC_FEATURE_ZRLE 9 -#define VNC_FEATURE_ZYWRLE 10 -#define VNC_FEATURE_LED_STATE 11 +enum VncFeatures { + VNC_FEATURE_RESIZE, + VNC_FEATURE_HEXTILE, + VNC_FEATURE_POINTER_TYPE_CHANGE, + VNC_FEATURE_WMVI, + VNC_FEATURE_TIGHT, + VNC_FEATURE_ZLIB, + VNC_FEATURE_COPYRECT, + VNC_FEATURE_RICH_CURSOR, + VNC_FEATURE_TIGHT_PNG, + VNC_FEATURE_ZRLE, + VNC_FEATURE_ZYWRLE, + VNC_FEATURE_LED_STATE, +}; =20 #define VNC_FEATURE_RESIZE_MASK (1 << VNC_FEATURE_RESIZE) #define VNC_FEATURE_HEXTILE_MASK (1 << VNC_FEATURE_HEXTILE) --=20 2.27.0 From nobody Wed May 15 18:38:18 2024 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=fail; 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; dmarc=fail(p=none dis=none) header.from=redhat.com ARC-Seal: i=1; a=rsa-sha256; t=1607428805; cv=none; d=zohomail.com; s=zohoarc; b=NYC6ZMR2N1QAUicEhdN5IXav3i87guNWQY1ERfQidZFZORP+M5P5fiS/WGYPcvq40CVgKqGqcNjvxDcI1NKc9DXj1ZjEqIttIO8hIpFew5gqCnKPVov1artgx6IqW0ns8IdLPk71wUjB+CAqSUCxo9slNhsNK+fdu1e2ekUBx14= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1607428805; 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=jQyQAZ6/qxaXmZ1al1Dr+ViL9pnyUEKfGDcXziTfGZw=; b=j5t9VQUTaEYWCJ74ZWRK8Ka5X2RLQB9bHBfgJW/cM5Lghry6koBMnKA0wuiJaumIscnH1XEF3Uedi7rXqnGuiRQyZzPlgeW1sa9ALN7Tnh90vnn3pC65uMQFr4Ij+wkqD40MaGmVrk5xN3x9j+/KewoR7Na4TlRilVAl3rL54WU= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=fail; 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; dmarc=fail header.from= (p=none dis=none) header.from= Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1607428805643555.7248155100157; Tue, 8 Dec 2020 04:00:05 -0800 (PST) Received: from localhost ([::1]:34072 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1kmbf2-0003Dh-2K for importer@patchew.org; Tue, 08 Dec 2020 07:00:04 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]:49296) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1kmbcr-0001SJ-Cn for qemu-devel@nongnu.org; Tue, 08 Dec 2020 06:57:49 -0500 Received: from us-smtp-delivery-124.mimecast.com ([63.128.21.124]:31120) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_CBC_SHA1:256) (Exim 4.90_1) (envelope-from ) id 1kmbcp-00053R-Mo for qemu-devel@nongnu.org; Tue, 08 Dec 2020 06:57:49 -0500 Received: from mimecast-mx01.redhat.com (mimecast-mx01.redhat.com [209.132.183.4]) (Using TLS) by relay.mimecast.com with ESMTP id us-mta-188-OJksENMdNsy8vSbVR78jXg-1; Tue, 08 Dec 2020 06:57:45 -0500 Received: from smtp.corp.redhat.com (int-mx01.intmail.prod.int.phx2.redhat.com [10.5.11.11]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mimecast-mx01.redhat.com (Postfix) with ESMTPS id B2DBA80EF80 for ; Tue, 8 Dec 2020 11:57:44 +0000 (UTC) Received: from sirius.home.kraxel.org (ovpn-112-94.ams2.redhat.com [10.36.112.94]) by smtp.corp.redhat.com (Postfix) with ESMTP id 3A36C39A66; Tue, 8 Dec 2020 11:57:38 +0000 (UTC) Received: by sirius.home.kraxel.org (Postfix, from userid 1000) id 483BB9D99; Tue, 8 Dec 2020 12:57:37 +0100 (CET) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1607428667; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=jQyQAZ6/qxaXmZ1al1Dr+ViL9pnyUEKfGDcXziTfGZw=; b=FruhRgJzD++uQoiJ2nNuQ0lE5f5rfBz/8gkNVwOwoJQMkBOhrRQO8SLjA0qHjBB2VUUEUZ yetohImvUtrxi4KC3RkAk1T+LfGc+Jp6i88t73ToDwOnK2FDoiD+5wiWasec3ExYXPJeSL CNmTLzzm7wnsrIuJ++zNVhT02L+g7NQ= X-MC-Unique: OJksENMdNsy8vSbVR78jXg-1 From: Gerd Hoffmann To: qemu-devel@nongnu.org Subject: [PATCH v2 4/9] vnc: drop unused copyrect feature Date: Tue, 8 Dec 2020 12:57:32 +0100 Message-Id: <20201208115737.18581-5-kraxel@redhat.com> In-Reply-To: <20201208115737.18581-1-kraxel@redhat.com> References: <20201208115737.18581-1-kraxel@redhat.com> MIME-Version: 1.0 X-Scanned-By: MIMEDefang 2.79 on 10.5.11.11 Authentication-Results: relay.mimecast.com; auth=pass smtp.auth=CUSA124A263 smtp.mailfrom=kraxel@redhat.com X-Mimecast-Spam-Score: 0 X-Mimecast-Originator: redhat.com Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable 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=63.128.21.124; envelope-from=kraxel@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_H4=0.001, RCVD_IN_MSPIKE_WL=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.23 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: =?UTF-8?q?Marc-Andr=C3=A9=20Lureau?= , Gerd Hoffmann Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: "Qemu-devel" X-ZohoMail-DKIM: fail (Header signature does not verify) vnc stopped using the copyrect pseudo encoding in 2017, in commit 50628d3479e4 ("cirrus/vnc: zap bitblit support from console code.") So we can drop the now unused copyrect feature bit. Signed-off-by: Gerd Hoffmann Reviewed-by: Marc-Andr=C3=A9 Lureau Reviewed-by: Daniel P. Berrang=C3=A9 --- ui/vnc.h | 2 -- ui/vnc.c | 3 --- 2 files changed, 5 deletions(-) diff --git a/ui/vnc.h b/ui/vnc.h index 262fcf179b44..a7fd38a82075 100644 --- a/ui/vnc.h +++ b/ui/vnc.h @@ -445,7 +445,6 @@ enum VncFeatures { VNC_FEATURE_WMVI, VNC_FEATURE_TIGHT, VNC_FEATURE_ZLIB, - VNC_FEATURE_COPYRECT, VNC_FEATURE_RICH_CURSOR, VNC_FEATURE_TIGHT_PNG, VNC_FEATURE_ZRLE, @@ -459,7 +458,6 @@ enum VncFeatures { #define VNC_FEATURE_WMVI_MASK (1 << VNC_FEATURE_WMVI) #define VNC_FEATURE_TIGHT_MASK (1 << VNC_FEATURE_TIGHT) #define VNC_FEATURE_ZLIB_MASK (1 << VNC_FEATURE_ZLIB) -#define VNC_FEATURE_COPYRECT_MASK (1 << VNC_FEATURE_COPYRECT) #define VNC_FEATURE_RICH_CURSOR_MASK (1 << VNC_FEATURE_RICH_CURSOR) #define VNC_FEATURE_TIGHT_PNG_MASK (1 << VNC_FEATURE_TIGHT_PNG) #define VNC_FEATURE_ZRLE_MASK (1 << VNC_FEATURE_ZRLE) diff --git a/ui/vnc.c b/ui/vnc.c index 49235056f7a8..8c2771c1ce3b 100644 --- a/ui/vnc.c +++ b/ui/vnc.c @@ -2061,9 +2061,6 @@ static void set_encodings(VncState *vs, int32_t *enco= dings, size_t n_encodings) case VNC_ENCODING_RAW: vs->vnc_encoding =3D enc; break; - case VNC_ENCODING_COPYRECT: - vs->features |=3D VNC_FEATURE_COPYRECT_MASK; - break; case VNC_ENCODING_HEXTILE: vs->features |=3D VNC_FEATURE_HEXTILE_MASK; vs->vnc_encoding =3D enc; --=20 2.27.0 From nobody Wed May 15 18:38:18 2024 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=fail; 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; dmarc=fail(p=none dis=none) header.from=redhat.com ARC-Seal: i=1; a=rsa-sha256; t=1607432372; cv=none; d=zohomail.com; s=zohoarc; b=UN0wMb/LiynDw55JQjq7e5KBNZigDQS+ER3qJ8jA2YjXb1Ho/q+8iNVqjK2H5+KJwuD8QSrWHxULOIQL4eilH+0HW+is60KhvBK4BYvd4OHaqZ8lZYXMvPjZ6EdqD5D9ZUlPOocSxp5viOJIsRK9oDEFKCI+R43YiO3fVQIVBOY= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1607432372; 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=G7aTeJjzKsK69nA0G4xgsx94wshRcjiFdffLBIFSChI=; b=DE3fnuphUI/Miqn6rpTErYGeFM2won+UQcrfWJZLl96bNDaxDrCiBtPnGgAY1OjlYd/yuQtZpygQV5XqXXV9LjxXAoN625bOfsHMFjviTdhGBqRbYagOgh/o7s4vI68r7J4m65/xPVg65NVzF6eexPH2Ap0Wg0Ws+/5iX/ISwos= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=fail; 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; dmarc=fail header.from= (p=none dis=none) header.from= Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1607432372487980.1016883903003; Tue, 8 Dec 2020 04:59:32 -0800 (PST) Received: from localhost ([::1]:50822 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1kmbmG-0001ts-7J for importer@patchew.org; Tue, 08 Dec 2020 07:07:32 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]:49356) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1kmbcx-0001bE-5U for qemu-devel@nongnu.org; Tue, 08 Dec 2020 06:57:55 -0500 Received: from us-smtp-delivery-124.mimecast.com ([63.128.21.124]:54788) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_CBC_SHA1:256) (Exim 4.90_1) (envelope-from ) id 1kmbcu-00055z-Dz for qemu-devel@nongnu.org; Tue, 08 Dec 2020 06:57:54 -0500 Received: from mimecast-mx01.redhat.com (mimecast-mx01.redhat.com [209.132.183.4]) (Using TLS) by relay.mimecast.com with ESMTP id us-mta-290-s8xKgUjEPEOcAOZy7v2_fQ-1; Tue, 08 Dec 2020 06:57:49 -0500 Received: from smtp.corp.redhat.com (int-mx05.intmail.prod.int.phx2.redhat.com [10.5.11.15]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mimecast-mx01.redhat.com (Postfix) with ESMTPS id B354110054FF for ; Tue, 8 Dec 2020 11:57:48 +0000 (UTC) Received: from sirius.home.kraxel.org (ovpn-112-94.ams2.redhat.com [10.36.112.94]) by smtp.corp.redhat.com (Postfix) with ESMTP id 433BB5D6AB; Tue, 8 Dec 2020 11:57:42 +0000 (UTC) Received: by sirius.home.kraxel.org (Postfix, from userid 1000) id 50F639D9B; Tue, 8 Dec 2020 12:57:37 +0100 (CET) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1607428671; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=G7aTeJjzKsK69nA0G4xgsx94wshRcjiFdffLBIFSChI=; b=Ct2jhlcztrJzxK2e3dfjEMTFe5dU4vhhFBjo6N/GzulzGQWlvCNTmFtTw+bPln2WDLlxxa Qv9AUHOJLZlPah1i+uSrCIYF019IenaNHxx54WcEeHJuaK7Ar0mT74QciOJ03OcvwTTrLA dYeSK5zGTrjHTLMO06sb5oaA8daMYL0= X-MC-Unique: s8xKgUjEPEOcAOZy7v2_fQ-1 From: Gerd Hoffmann To: qemu-devel@nongnu.org Subject: [PATCH v2 5/9] vnc: add pseudo encodings Date: Tue, 8 Dec 2020 12:57:33 +0100 Message-Id: <20201208115737.18581-6-kraxel@redhat.com> In-Reply-To: <20201208115737.18581-1-kraxel@redhat.com> References: <20201208115737.18581-1-kraxel@redhat.com> MIME-Version: 1.0 X-Scanned-By: MIMEDefang 2.79 on 10.5.11.15 Authentication-Results: relay.mimecast.com; auth=pass smtp.auth=CUSA124A263 smtp.mailfrom=kraxel@redhat.com X-Mimecast-Spam-Score: 0 X-Mimecast-Originator: redhat.com Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable 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=63.128.21.124; envelope-from=kraxel@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_H4=0.001, RCVD_IN_MSPIKE_WL=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.23 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: =?UTF-8?q?Marc-Andr=C3=A9=20Lureau?= , Gerd Hoffmann Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: "Qemu-devel" X-ZohoMail-DKIM: fail (Header signature does not verify) Add #defines for two new pseudo encodings: * cursor with alpha channel. * extended desktop resize. https://github.com/rfbproto/rfbproto/blob/master/rfbproto.rst#pseudo-encodi= ngs Signed-off-by: Gerd Hoffmann Reviewed-by: Marc-Andr=C3=A9 Lureau Reviewed-by: Daniel P. Berrang=C3=A9 --- ui/vnc.h | 2 ++ 1 file changed, 2 insertions(+) diff --git a/ui/vnc.h b/ui/vnc.h index a7fd38a82075..6f5006da3593 100644 --- a/ui/vnc.h +++ b/ui/vnc.h @@ -411,6 +411,8 @@ enum { #define VNC_ENCODING_AUDIO 0XFFFFFEFD /* -259 */ #define VNC_ENCODING_TIGHT_PNG 0xFFFFFEFC /* -260 */ #define VNC_ENCODING_LED_STATE 0XFFFFFEFB /* -261 */ +#define VNC_ENCODING_DESKTOP_RESIZE_EXT 0XFFFFFECC /* -308 */ +#define VNC_ENCODING_ALPHA_CURSOR 0XFFFFFEC6 /* -314 */ #define VNC_ENCODING_WMVi 0x574D5669 =20 /*************************************************************************= **** --=20 2.27.0 From nobody Wed May 15 18:38:18 2024 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=fail; 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; dmarc=fail(p=none dis=none) header.from=redhat.com ARC-Seal: i=1; a=rsa-sha256; t=1607432131; cv=none; d=zohomail.com; s=zohoarc; b=d4WwGgIwK7gp8wDSR3dlSvCUMgfnNLutJH/NrFLiQKhOX0E3v/P9IKWNUlQrHtyX9qHlmvMD0LzT3fycmXi4mjExeIlZiSiO1qmlDDaUSUg8JBZcLvrpdVTzP/RsMADrXIA4KmjO65W844vUVD+EBHpDv+92j1886YENDX6dTek= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1607432131; 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=1C2QM1Xu65wcBQ76oYf5uh/7oLC1B5FQ0LON5pl4M74=; b=DFvnL5qDXowkH94fr9ZyEh7sCXCosuIiMsTehrHSJg/OdMVXfBtBaaQYLeQdbyyNM5istddDLhTlU1aDybLELA1NmlgM5hmEvSYepwRmzEU0jIM9n/5nYX8WGShcK88fYj9e/oozhnkDfb96ResEjfM5dx2aCeN+o/sZkzaXwQs= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=fail; 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; dmarc=fail header.from= (p=none dis=none) header.from= Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 160743213144656.65077130213399; Tue, 8 Dec 2020 04:55:31 -0800 (PST) Received: from localhost ([::1]:42434 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1kmbir-0006ll-Lh for importer@patchew.org; Tue, 08 Dec 2020 07:04:01 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]:49352) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1kmbcv-0001Yg-Sd for qemu-devel@nongnu.org; Tue, 08 Dec 2020 06:57:53 -0500 Received: from us-smtp-delivery-124.mimecast.com ([216.205.24.124]:35267) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_CBC_SHA1:256) (Exim 4.90_1) (envelope-from ) id 1kmbcs-000554-KM for qemu-devel@nongnu.org; Tue, 08 Dec 2020 06:57:53 -0500 Received: from mimecast-mx01.redhat.com (mimecast-mx01.redhat.com [209.132.183.4]) (Using TLS) by relay.mimecast.com with ESMTP id us-mta-425-euV43QtjPHawvTPFwMocmg-1; Tue, 08 Dec 2020 06:57:45 -0500 Received: from smtp.corp.redhat.com (int-mx04.intmail.prod.int.phx2.redhat.com [10.5.11.14]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mimecast-mx01.redhat.com (Postfix) with ESMTPS id 84FFA107ACE4 for ; Tue, 8 Dec 2020 11:57:44 +0000 (UTC) Received: from sirius.home.kraxel.org (ovpn-112-94.ams2.redhat.com [10.36.112.94]) by smtp.corp.redhat.com (Postfix) with ESMTP id 4C3385D9DE; Tue, 8 Dec 2020 11:57:42 +0000 (UTC) Received: by sirius.home.kraxel.org (Postfix, from userid 1000) id 5BA9A9D9C; Tue, 8 Dec 2020 12:57:37 +0100 (CET) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1607428670; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=1C2QM1Xu65wcBQ76oYf5uh/7oLC1B5FQ0LON5pl4M74=; b=IpGJXKMDn37wJyTqeMA2sbMCNDGLUqID6xmKj9uqMLFu/rolpkF12d8TwMeV19edGzdmFO nsyY3d7ow+DRn0boIc2YP3w45pHzljoJ6JErmoeCBpNC7M4/tmnmr/GLGT1ejBkkIoPQMr 7OzX9oue9V3REYpXFl1gtwdbCp5b6bM= X-MC-Unique: euV43QtjPHawvTPFwMocmg-1 From: Gerd Hoffmann To: qemu-devel@nongnu.org Subject: [PATCH v2 6/9] vnc: add alpha cursor support Date: Tue, 8 Dec 2020 12:57:34 +0100 Message-Id: <20201208115737.18581-7-kraxel@redhat.com> In-Reply-To: <20201208115737.18581-1-kraxel@redhat.com> References: <20201208115737.18581-1-kraxel@redhat.com> MIME-Version: 1.0 X-Scanned-By: MIMEDefang 2.79 on 10.5.11.14 Authentication-Results: relay.mimecast.com; auth=pass smtp.auth=CUSA124A263 smtp.mailfrom=kraxel@redhat.com X-Mimecast-Spam-Score: 0 X-Mimecast-Originator: redhat.com Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable 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=216.205.24.124; envelope-from=kraxel@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_H3=0.001, RCVD_IN_MSPIKE_WL=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.23 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: =?UTF-8?q?Marc-Andr=C3=A9=20Lureau?= , Gerd Hoffmann Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: "Qemu-devel" X-ZohoMail-DKIM: fail (Header signature does not verify) There is a new vnc extension for cursors with an alpha channel. Use it if supported by the vnc client, prefer it over the "rich cursor" extension which supports only a bitmask for transparency. This is a visible improvement especially on modern desktops which actually use the alpha channel when defining cursors. https://github.com/rfbproto/rfbproto/blob/master/rfbproto.rst#cursor-with-a= lpha-pseudo-encoding Signed-off-by: Gerd Hoffmann Reviewed-by: Marc-Andr=C3=A9 Lureau Reviewed-by: Daniel P. Berrang=C3=A9 Tested-by: Daniel P. Berrang=C3=A9 --- ui/vnc.h | 2 ++ ui/vnc.c | 21 ++++++++++++++++++--- 2 files changed, 20 insertions(+), 3 deletions(-) diff --git a/ui/vnc.h b/ui/vnc.h index 6f5006da3593..c8d3ad9ec496 100644 --- a/ui/vnc.h +++ b/ui/vnc.h @@ -448,6 +448,7 @@ enum VncFeatures { VNC_FEATURE_TIGHT, VNC_FEATURE_ZLIB, VNC_FEATURE_RICH_CURSOR, + VNC_FEATURE_ALPHA_CURSOR, VNC_FEATURE_TIGHT_PNG, VNC_FEATURE_ZRLE, VNC_FEATURE_ZYWRLE, @@ -461,6 +462,7 @@ enum VncFeatures { #define VNC_FEATURE_TIGHT_MASK (1 << VNC_FEATURE_TIGHT) #define VNC_FEATURE_ZLIB_MASK (1 << VNC_FEATURE_ZLIB) #define VNC_FEATURE_RICH_CURSOR_MASK (1 << VNC_FEATURE_RICH_CURSOR) +#define VNC_FEATURE_ALPHA_CURSOR_MASK (1 << VNC_FEATURE_ALPHA_CURSO= R) #define VNC_FEATURE_TIGHT_PNG_MASK (1 << VNC_FEATURE_TIGHT_PNG) #define VNC_FEATURE_ZRLE_MASK (1 << VNC_FEATURE_ZRLE) #define VNC_FEATURE_ZYWRLE_MASK (1 << VNC_FEATURE_ZYWRLE) diff --git a/ui/vnc.c b/ui/vnc.c index 8c2771c1ce3b..247e80d8f5c8 100644 --- a/ui/vnc.c +++ b/ui/vnc.c @@ -937,6 +937,18 @@ static int vnc_cursor_define(VncState *vs) QEMUCursor *c =3D vs->vd->cursor; int isize; =20 + if (vnc_has_feature(vs, VNC_FEATURE_ALPHA_CURSOR)) { + vnc_lock_output(vs); + vnc_write_u8(vs, VNC_MSG_SERVER_FRAMEBUFFER_UPDATE); + vnc_write_u8(vs, 0); /* padding */ + vnc_write_u16(vs, 1); /* # of rects */ + vnc_framebuffer_update(vs, c->hot_x, c->hot_y, c->width, c->height, + VNC_ENCODING_ALPHA_CURSOR); + vnc_write_s32(vs, VNC_ENCODING_RAW); + vnc_write(vs, c->data, c->width * c->height * 4); + vnc_unlock_output(vs); + return 0; + } if (vnc_has_feature(vs, VNC_FEATURE_RICH_CURSOR)) { vnc_lock_output(vs); vnc_write_u8(vs, VNC_MSG_SERVER_FRAMEBUFFER_UPDATE); @@ -2102,9 +2114,9 @@ static void set_encodings(VncState *vs, int32_t *enco= dings, size_t n_encodings) break; case VNC_ENCODING_RICH_CURSOR: vs->features |=3D VNC_FEATURE_RICH_CURSOR_MASK; - if (vs->vd->cursor) { - vnc_cursor_define(vs); - } + break; + case VNC_ENCODING_ALPHA_CURSOR: + vs->features |=3D VNC_FEATURE_ALPHA_CURSOR_MASK; break; case VNC_ENCODING_EXT_KEY_EVENT: send_ext_key_event_ack(vs); @@ -2134,6 +2146,9 @@ static void set_encodings(VncState *vs, int32_t *enco= dings, size_t n_encodings) vnc_desktop_resize(vs); check_pointer_type_change(&vs->mouse_mode_notifier, NULL); vnc_led_state_change(vs); + if (vs->vd->cursor) { + vnc_cursor_define(vs); + } } =20 static void set_pixel_conversion(VncState *vs) --=20 2.27.0 From nobody Wed May 15 18:38:18 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; dmarc=pass(p=none dis=none) header.from=redhat.com ARC-Seal: i=1; a=rsa-sha256; t=1607428823; cv=none; d=zohomail.com; s=zohoarc; b=SRZ8kt2oW06buDaLHsK/8T5m/yKTQmCMFxiTRtu7sqC6H9oBDRTdd55aUiAKwumBhYPjEeMY11q2vURe/NcWTPrz1wyKloNn5K3F2iUn+MurnwBqSStVyj3V5VZStlWjpqaMEj+0J/gYXehyDsV5+SyOGK8q+/tCYze3tfHV6Lo= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1607428823; 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=FfDnnqZhMg8ve3HQG0wHiEoFXbDMSDaubQU0AousCJA=; b=WCwUA3I8TF5RUmU8BA8EuwKW0Cg8wJyJOome+QUxHoWFvBmNWtTdloj30LV2mETnoAIt8/Xk9bLIV8Fo8hveau03A1TsGpp3Zctn5UpJMTsBsHG0yaTl/nsyoODCJ+f9Zpe85h0iVZLTrYE6uEmBTAUsb8hnmRTakoDHA4Dk61I= 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+importer=patchew.org@nongnu.org; dmarc=pass header.from= (p=none dis=none) header.from= Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1607428820483981.7213124560774; Tue, 8 Dec 2020 04:00:20 -0800 (PST) Received: from localhost ([::1]:34270 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1kmbfF-0003Ie-9H for importer@patchew.org; Tue, 08 Dec 2020 07:00:17 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]:49332) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1kmbcu-0001VG-2R for qemu-devel@nongnu.org; Tue, 08 Dec 2020 06:57:52 -0500 Received: from us-smtp-delivery-124.mimecast.com ([63.128.21.124]:53787) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_CBC_SHA1:256) (Exim 4.90_1) (envelope-from ) id 1kmbco-000535-Pc for qemu-devel@nongnu.org; Tue, 08 Dec 2020 06:57:51 -0500 Received: from mimecast-mx01.redhat.com (mimecast-mx01.redhat.com [209.132.183.4]) (Using TLS) by relay.mimecast.com with ESMTP id us-mta-506-TYsRSOmhNdyxbeMpCZYuig-1; Tue, 08 Dec 2020 06:57:43 -0500 Received: from smtp.corp.redhat.com (int-mx04.intmail.prod.int.phx2.redhat.com [10.5.11.14]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mimecast-mx01.redhat.com (Postfix) with ESMTPS id 830CE800D53 for ; Tue, 8 Dec 2020 11:57:42 +0000 (UTC) Received: from sirius.home.kraxel.org (ovpn-112-94.ams2.redhat.com [10.36.112.94]) by smtp.corp.redhat.com (Postfix) with ESMTP id 4CAA45D9E2; Tue, 8 Dec 2020 11:57:42 +0000 (UTC) Received: by sirius.home.kraxel.org (Postfix, from userid 1000) id 646D59D9D; Tue, 8 Dec 2020 12:57:37 +0100 (CET) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1607428664; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=FfDnnqZhMg8ve3HQG0wHiEoFXbDMSDaubQU0AousCJA=; b=GXBDTrS/Fn5dux2n9n+BiF5N5S38L4LnqXyR9KC4u/ptpda4/ZEaarKEVuQlYMZSVRK3Nr LPQCMmLXFODmyynRcygqsl/0Lb/IIGV5BHKmwo6lY3jw+/I1EJ7E+FRst7jD6PVXjgmqbs jUo3zHq9HgclnafMPQnUvT/W8/GCUU0= X-MC-Unique: TYsRSOmhNdyxbeMpCZYuig-1 From: Gerd Hoffmann To: qemu-devel@nongnu.org Subject: [PATCH v2 7/9] vnc: force initial resize message Date: Tue, 8 Dec 2020 12:57:35 +0100 Message-Id: <20201208115737.18581-8-kraxel@redhat.com> In-Reply-To: <20201208115737.18581-1-kraxel@redhat.com> References: <20201208115737.18581-1-kraxel@redhat.com> MIME-Version: 1.0 X-Scanned-By: MIMEDefang 2.79 on 10.5.11.14 Authentication-Results: relay.mimecast.com; auth=pass smtp.auth=CUSA124A263 smtp.mailfrom=kraxel@redhat.com X-Mimecast-Spam-Score: 0 X-Mimecast-Originator: redhat.com Content-Transfer-Encoding: quoted-printable 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=63.128.21.124; envelope-from=kraxel@redhat.com; helo=us-smtp-delivery-124.mimecast.com X-Spam_score_int: -16 X-Spam_score: -1.7 X-Spam_bar: - X-Spam_report: (-1.7 / 5.0 requ) BAYES_00=-1.9, DKIM_INVALID=0.1, DKIM_SIGNED=0.1, RCVD_IN_DNSWL_NONE=-0.0001, RCVD_IN_MSPIKE_H4=0.001, RCVD_IN_MSPIKE_WL=0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=no autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Gerd Hoffmann Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: "Qemu-devel" X-ZohoMail-DKIM: pass (identity @redhat.com) Content-Type: text/plain; charset="utf-8" The vnc server should send desktop resize notifications unconditionally on a new client connect, for feature negotiation reasons. Add a bool flag to vnc_desktop_resize() to force sending the message even in case there is no size change. Signed-off-by: Gerd Hoffmann Reviewed-by: Daniel P. Berrang=C3=A9 --- ui/vnc.c | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/ui/vnc.c b/ui/vnc.c index 247e80d8f5c8..bdaf384f71a4 100644 --- a/ui/vnc.c +++ b/ui/vnc.c @@ -664,13 +664,14 @@ void vnc_framebuffer_update(VncState *vs, int x, int = y, int w, int h, } =20 =20 -static void vnc_desktop_resize(VncState *vs) +static void vnc_desktop_resize(VncState *vs, bool force) { if (vs->ioc =3D=3D NULL || !vnc_has_feature(vs, VNC_FEATURE_RESIZE)) { return; } if (vs->client_width =3D=3D pixman_image_get_width(vs->vd->server) && - vs->client_height =3D=3D pixman_image_get_height(vs->vd->server)) { + vs->client_height =3D=3D pixman_image_get_height(vs->vd->server) && + !force) { return; } =20 @@ -800,7 +801,7 @@ static void vnc_dpy_switch(DisplayChangeListener *dcl, =20 QTAILQ_FOREACH(vs, &vd->clients, next) { vnc_colordepth(vs); - vnc_desktop_resize(vs); + vnc_desktop_resize(vs, false); if (vs->vd->cursor) { vnc_cursor_define(vs); } @@ -2143,7 +2144,7 @@ static void set_encodings(VncState *vs, int32_t *enco= dings, size_t n_encodings) break; } } - vnc_desktop_resize(vs); + vnc_desktop_resize(vs, true); check_pointer_type_change(&vs->mouse_mode_notifier, NULL); vnc_led_state_change(vs); if (vs->vd->cursor) { --=20 2.27.0 From nobody Wed May 15 18:38:18 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; dmarc=pass(p=none dis=none) header.from=redhat.com ARC-Seal: i=1; a=rsa-sha256; t=1607432138; cv=none; d=zohomail.com; s=zohoarc; b=QTlqL+CDbcJ9jYqLqot9jDau78tCXMEOsVGh31slZwO2ID2i+yBfqDTrPSL7BR5zhh7tDF+QwDazo+2dRu6CNAePB/A4Rrp/5+GKNnSfBYxRtBmI3/uzS7+Lt2emryMKtHIx94K54eVl5z7+gjGpfiuZ4S35BAukNS1oN0SBNJ0= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1607432138; 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=AtDOdayK1w7oKa0hdXK41HIH3xgZMMOBme8p4QpmBlY=; b=bxMJszv0fWaYhwe9eZGdKm4DhF3q9BmVBJT7vzpe9yet7QNLsNFhveOTQyhH44HOdferq2adDa8FHY8hbO/XILdHOrVyeOqg8ZlE9WsCj3iEo3IdUhLrlW3IJ60ASVzr7D7y/HdZGBIuHk4bqYVNKZNkivHtLm2XzOwK9lJzZeo= 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+importer=patchew.org@nongnu.org; dmarc=pass header.from= (p=none dis=none) header.from= Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1607432138471891.3706238312751; Tue, 8 Dec 2020 04:55:38 -0800 (PST) Received: from localhost ([::1]:44140 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1kmbjr-0007Tz-KG for importer@patchew.org; Tue, 08 Dec 2020 07:05:03 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]:49340) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1kmbcu-0001Vq-CZ for qemu-devel@nongnu.org; Tue, 08 Dec 2020 06:57:52 -0500 Received: from us-smtp-delivery-124.mimecast.com ([216.205.24.124]:53270) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_CBC_SHA1:256) (Exim 4.90_1) (envelope-from ) id 1kmbcq-00054a-Pq for qemu-devel@nongnu.org; Tue, 08 Dec 2020 06:57:52 -0500 Received: from mimecast-mx01.redhat.com (mimecast-mx01.redhat.com [209.132.183.4]) (Using TLS) by relay.mimecast.com with ESMTP id us-mta-501-lWPz3TG0PaWrq-1656t82g-1; Tue, 08 Dec 2020 06:57:43 -0500 Received: from smtp.corp.redhat.com (int-mx03.intmail.prod.int.phx2.redhat.com [10.5.11.13]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mimecast-mx01.redhat.com (Postfix) with ESMTPS id B6DD610054FF for ; Tue, 8 Dec 2020 11:57:42 +0000 (UTC) Received: from sirius.home.kraxel.org (ovpn-112-94.ams2.redhat.com [10.36.112.94]) by smtp.corp.redhat.com (Postfix) with ESMTP id 4E6EC36FA; Tue, 8 Dec 2020 11:57:42 +0000 (UTC) Received: by sirius.home.kraxel.org (Postfix, from userid 1000) id 6F3529D9E; Tue, 8 Dec 2020 12:57:37 +0100 (CET) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1607428668; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=AtDOdayK1w7oKa0hdXK41HIH3xgZMMOBme8p4QpmBlY=; b=E9wcPc31AqPLlOXuop0pKgZ+G3ee0MCqkt/GYzLobflHC2h/lKR9AJez0sHSzaZjGh0QpT mQyiZQITVrTySe5OqfVAJxG4AqeanWFyoMaAw1qUJEJ8iCCnpuermVrwpmTuuZY+cbHyty ZMtxhLJU5LWQ2Ca/DEb+U6BGYnmaMmM= X-MC-Unique: lWPz3TG0PaWrq-1656t82g-1 From: Gerd Hoffmann To: qemu-devel@nongnu.org Subject: [PATCH v2 8/9] vnc: add support for extended desktop resize Date: Tue, 8 Dec 2020 12:57:36 +0100 Message-Id: <20201208115737.18581-9-kraxel@redhat.com> In-Reply-To: <20201208115737.18581-1-kraxel@redhat.com> References: <20201208115737.18581-1-kraxel@redhat.com> MIME-Version: 1.0 X-Scanned-By: MIMEDefang 2.79 on 10.5.11.13 Authentication-Results: relay.mimecast.com; auth=pass smtp.auth=CUSA124A263 smtp.mailfrom=kraxel@redhat.com X-Mimecast-Spam-Score: 0 X-Mimecast-Originator: redhat.com Content-Transfer-Encoding: quoted-printable 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=216.205.24.124; envelope-from=kraxel@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_H3=0.001, RCVD_IN_MSPIKE_WL=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.23 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Gerd Hoffmann Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: "Qemu-devel" X-ZohoMail-DKIM: pass (identity @redhat.com) Content-Type: text/plain; charset="utf-8" The extended desktop resize encoding adds support for (a) clients sending resize requests to the server, and (b) multihead support. This patch implements (a). All resize requests are rejected by qemu. Qemu can't resize the framebuffer on its own, this is in the hands of the guest, so all qemu can do is forward the request to the guest. Should the guest actually resize the framebuffer we can notify the vnc client later with a separate message. This requires support in the display device. Works with virtio-gpu. https://github.com/rfbproto/rfbproto/blob/master/rfbproto.rst#extendeddeskt= opsize-pseudo-encoding Signed-off-by: Gerd Hoffmann --- ui/vnc.h | 2 ++ ui/vnc.c | 64 +++++++++++++++++++++++++++++++++++++++++++++++++++++++- 2 files changed, 65 insertions(+), 1 deletion(-) diff --git a/ui/vnc.h b/ui/vnc.h index c8d3ad9ec496..77a310947bd6 100644 --- a/ui/vnc.h +++ b/ui/vnc.h @@ -442,6 +442,7 @@ enum { =20 enum VncFeatures { VNC_FEATURE_RESIZE, + VNC_FEATURE_RESIZE_EXT, VNC_FEATURE_HEXTILE, VNC_FEATURE_POINTER_TYPE_CHANGE, VNC_FEATURE_WMVI, @@ -456,6 +457,7 @@ enum VncFeatures { }; =20 #define VNC_FEATURE_RESIZE_MASK (1 << VNC_FEATURE_RESIZE) +#define VNC_FEATURE_RESIZE_EXT_MASK (1 << VNC_FEATURE_RESIZE_EXT) #define VNC_FEATURE_HEXTILE_MASK (1 << VNC_FEATURE_HEXTILE) #define VNC_FEATURE_POINTER_TYPE_CHANGE_MASK (1 << VNC_FEATURE_POINTER_TYP= E_CHANGE) #define VNC_FEATURE_WMVI_MASK (1 << VNC_FEATURE_WMVI) diff --git a/ui/vnc.c b/ui/vnc.c index bdaf384f71a4..094ba6cd14cb 100644 --- a/ui/vnc.c +++ b/ui/vnc.c @@ -663,10 +663,35 @@ void vnc_framebuffer_update(VncState *vs, int x, int = y, int w, int h, vnc_write_s32(vs, encoding); } =20 +static void vnc_desktop_resize_ext(VncState *vs, int reject_reason) +{ + vnc_lock_output(vs); + vnc_write_u8(vs, VNC_MSG_SERVER_FRAMEBUFFER_UPDATE); + vnc_write_u8(vs, 0); + vnc_write_u16(vs, 1); /* number of rects */ + vnc_framebuffer_update(vs, + reject_reason ? 1 : 0, + reject_reason, + vs->client_width, vs->client_height, + VNC_ENCODING_DESKTOP_RESIZE_EXT); + vnc_write_u8(vs, 1); /* number of screens */ + vnc_write_u8(vs, 0); /* padding */ + vnc_write_u8(vs, 0); /* padding */ + vnc_write_u8(vs, 0); /* padding */ + vnc_write_u32(vs, 0); /* screen id */ + vnc_write_u16(vs, 0); /* screen x-pos */ + vnc_write_u16(vs, 0); /* screen y-pos */ + vnc_write_u16(vs, vs->client_width); + vnc_write_u16(vs, vs->client_height); + vnc_write_u32(vs, 0); /* screen flags */ + vnc_unlock_output(vs); + vnc_flush(vs); +} =20 static void vnc_desktop_resize(VncState *vs, bool force) { - if (vs->ioc =3D=3D NULL || !vnc_has_feature(vs, VNC_FEATURE_RESIZE)) { + if (vs->ioc =3D=3D NULL || (!vnc_has_feature(vs, VNC_FEATURE_RESIZE) && + !vnc_has_feature(vs, VNC_FEATURE_RESIZE_EXT)))= { return; } if (vs->client_width =3D=3D pixman_image_get_width(vs->vd->server) && @@ -681,6 +706,12 @@ static void vnc_desktop_resize(VncState *vs, bool forc= e) pixman_image_get_height(vs->vd->server) >=3D 0); vs->client_width =3D pixman_image_get_width(vs->vd->server); vs->client_height =3D pixman_image_get_height(vs->vd->server); + + if (vnc_has_feature(vs, VNC_FEATURE_RESIZE_EXT)) { + vnc_desktop_resize_ext(vs, 0); + return; + } + vnc_lock_output(vs); vnc_write_u8(vs, VNC_MSG_SERVER_FRAMEBUFFER_UPDATE); vnc_write_u8(vs, 0); @@ -2110,6 +2141,9 @@ static void set_encodings(VncState *vs, int32_t *enco= dings, size_t n_encodings) case VNC_ENCODING_DESKTOPRESIZE: vs->features |=3D VNC_FEATURE_RESIZE_MASK; break; + case VNC_ENCODING_DESKTOP_RESIZE_EXT: + vs->features |=3D VNC_FEATURE_RESIZE_EXT_MASK; + break; case VNC_ENCODING_POINTER_TYPE_CHANGE: vs->features |=3D VNC_FEATURE_POINTER_TYPE_CHANGE_MASK; break; @@ -2431,6 +2465,34 @@ static int protocol_client_msg(VncState *vs, uint8_t= *data, size_t len) break; } break; + case VNC_MSG_CLIENT_SET_DESKTOP_SIZE: + { + size_t size; + uint8_t screens; + + if (len < 8) { + return 8; + } + + screens =3D read_u8(data, 6); + size =3D 8 + screens * 16; + if (len < size) { + return size; + } + + if (dpy_ui_info_supported(vs->vd->dcl.con)) { + QemuUIInfo info; + memset(&info, 0, sizeof(info)); + info.width =3D read_u16(data, 2); + info.height =3D read_u16(data, 4); + dpy_set_ui_info(vs->vd->dcl.con, &info); + vnc_desktop_resize_ext(vs, 4 /* Request forwarded */); + } else { + vnc_desktop_resize_ext(vs, 3 /* Invalid screen layout */); + } + + break; + } default: VNC_DEBUG("Msg: %d\n", data[0]); vnc_client_error(vs); --=20 2.27.0 From nobody Wed May 15 18:38:18 2024 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=fail; 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; dmarc=fail(p=none dis=none) header.from=redhat.com ARC-Seal: i=1; a=rsa-sha256; t=1607432368; cv=none; d=zohomail.com; s=zohoarc; b=Uj1U0jmO6/nrjv+TRUAgT4RIruSgwYB31j5O3xhPy9LRQViXokeWaSSBf3jY08UflAB3fypytOYbi0Clto1TxlDBz7MLRa3jfGvJaQMbs6P25G6glD/SjWObkUU//4AunZN18sJgG9xdqxnQymXt//SGTrY1YT0kQ1dCJvidips= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1607432368; 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=cqLCWZ1hH6EEOkWtPWWKS2elKGGSNaTpcMn8cf0h7t4=; b=L3luNS+UmZGTeLY91Qc+J/eGVHpxO53pqYHw77rTTP5c7/kcHrgur1U2touCaJ6frQiWFdfAuAouTV9uoi7K2Jn+WoBwRaBFM4ZssOWw4DysQ4GEJZdmjQLyyh7QAr0zHrhbhcRL+/aLWoRWNMgTqyEj+ki39S0XZS/yw8xQWbw= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=fail; 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; dmarc=fail header.from= (p=none dis=none) header.from= Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1607432368343447.1781545225747; Tue, 8 Dec 2020 04:59:28 -0800 (PST) Received: from localhost ([::1]:50920 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1kmbmG-0001wN-H6 for importer@patchew.org; Tue, 08 Dec 2020 07:07:32 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]:49320) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1kmbcs-0001Tb-KD for qemu-devel@nongnu.org; Tue, 08 Dec 2020 06:57:50 -0500 Received: from us-smtp-delivery-124.mimecast.com ([216.205.24.124]:23066) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_CBC_SHA1:256) (Exim 4.90_1) (envelope-from ) id 1kmbcq-00053J-Jj for qemu-devel@nongnu.org; Tue, 08 Dec 2020 06:57:50 -0500 Received: from mimecast-mx01.redhat.com (mimecast-mx01.redhat.com [209.132.183.4]) (Using TLS) by relay.mimecast.com with ESMTP id us-mta-425-kJ2RvKLrNimURMtaBQta0A-1; Tue, 08 Dec 2020 06:57:45 -0500 Received: from smtp.corp.redhat.com (int-mx04.intmail.prod.int.phx2.redhat.com [10.5.11.14]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mimecast-mx01.redhat.com (Postfix) with ESMTPS id 5FDEE800D53 for ; Tue, 8 Dec 2020 11:57:44 +0000 (UTC) Received: from sirius.home.kraxel.org (ovpn-112-94.ams2.redhat.com [10.36.112.94]) by smtp.corp.redhat.com (Postfix) with ESMTP id 651CB5D9E4; Tue, 8 Dec 2020 11:57:42 +0000 (UTC) Received: by sirius.home.kraxel.org (Postfix, from userid 1000) id 7808A9D9F; Tue, 8 Dec 2020 12:57:37 +0100 (CET) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1607428666; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=cqLCWZ1hH6EEOkWtPWWKS2elKGGSNaTpcMn8cf0h7t4=; b=dxxAE02Rj8qrOVKJEMWsa5HGIqUjVSoC5z+yDR3BQ+7s55PRUeCosw0gtPtnuqLSlQ3nUq mOiPK0SfICM/dL65AOzkMynjGeroHR/zTFQRqlVFgP0OiUsmKn6L4FrBEV3GmQeqtZiobu HDpqqbtmGDkmMDiGmRFdFUB4FKx2nsM= X-MC-Unique: kJ2RvKLrNimURMtaBQta0A-1 From: Gerd Hoffmann To: qemu-devel@nongnu.org Subject: [PATCH v2 9/9] vnc: move check into vnc_cursor_define Date: Tue, 8 Dec 2020 12:57:37 +0100 Message-Id: <20201208115737.18581-10-kraxel@redhat.com> In-Reply-To: <20201208115737.18581-1-kraxel@redhat.com> References: <20201208115737.18581-1-kraxel@redhat.com> MIME-Version: 1.0 X-Scanned-By: MIMEDefang 2.79 on 10.5.11.14 Authentication-Results: relay.mimecast.com; auth=pass smtp.auth=CUSA124A263 smtp.mailfrom=kraxel@redhat.com X-Mimecast-Spam-Score: 0 X-Mimecast-Originator: redhat.com Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable 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=216.205.24.124; envelope-from=kraxel@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_H3=0.001, RCVD_IN_MSPIKE_WL=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.23 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: =?UTF-8?q?Marc-Andr=C3=A9=20Lureau?= , Gerd Hoffmann Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: "Qemu-devel" X-ZohoMail-DKIM: fail (Header signature does not verify) Move the check whenever a cursor exists into the vnc_cursor_define() function so callers don't have to do it. Suggested-by: Marc-Andr=C3=A9 Lureau Signed-off-by: Gerd Hoffmann --- ui/vnc.c | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/ui/vnc.c b/ui/vnc.c index 094ba6cd14cb..1f7dc545db7c 100644 --- a/ui/vnc.c +++ b/ui/vnc.c @@ -833,9 +833,7 @@ static void vnc_dpy_switch(DisplayChangeListener *dcl, QTAILQ_FOREACH(vs, &vd->clients, next) { vnc_colordepth(vs); vnc_desktop_resize(vs, false); - if (vs->vd->cursor) { - vnc_cursor_define(vs); - } + vnc_cursor_define(vs); memset(vs->dirty, 0x00, sizeof(vs->dirty)); vnc_set_area_dirty(vs->dirty, vd, 0, 0, vnc_width(vd), @@ -969,6 +967,10 @@ static int vnc_cursor_define(VncState *vs) QEMUCursor *c =3D vs->vd->cursor; int isize; =20 + if (!vs->vd->cursor) { + return -1; + } + if (vnc_has_feature(vs, VNC_FEATURE_ALPHA_CURSOR)) { vnc_lock_output(vs); vnc_write_u8(vs, VNC_MSG_SERVER_FRAMEBUFFER_UPDATE); @@ -2181,9 +2183,7 @@ static void set_encodings(VncState *vs, int32_t *enco= dings, size_t n_encodings) vnc_desktop_resize(vs, true); check_pointer_type_change(&vs->mouse_mode_notifier, NULL); vnc_led_state_change(vs); - if (vs->vd->cursor) { - vnc_cursor_define(vs); - } + vnc_cursor_define(vs); } =20 static void set_pixel_conversion(VncState *vs) --=20 2.27.0