public inbox for git-commits@fedoraproject.org
help / color / mirror / Atom feed
From: nmontero <nmontero@redhat.com>
To: git-commits@fedoraproject.org
Subject: [rpms/gnome-remote-desktop] rawhide: Update to 51~beta
Date: Mon, 24 Aug 2026 07:31:57 GMT	[thread overview]
Message-ID: <178755671700.1.17279238671385064291.rpms-gnome-remote-desktop-1784a20616cf@fedoraproject.org> (raw)

A new commit has been pushed.

Repo   : rpms/gnome-remote-desktop
Branch : rawhide
Commit : 1784a20616cf0be672cfc0ec5aa0f335ffbdd875
Author : nmontero <nmontero@redhat.com>
Date   : 2026-08-21T17:05:02+02:00
Stats  : +163/-2 in 3 file(s)
URL    : https://src.fedoraproject.org/rpms/gnome-remote-desktop/c/1784a20616cf0be672cfc0ec5aa0f335ffbdd875?branch=rawhide

Log:
Update to 51~beta

---
diff --git a/001-Fix-building-when-pointers-are-32-bit.patch b/001-Fix-building-when-pointers-are-32-bit.patch
new file mode 100644
index 0000000..e2ceff0
--- /dev/null
+++ b/001-Fix-building-when-pointers-are-32-bit.patch
@@ -0,0 +1,150 @@
+From 1e3f7d8628d63dc8ad5d813722357ab840ce3049 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Jonas=20=C3=85dahl?= <jadahl@gmail.com>
+Date: Fri, 21 Aug 2026 11:39:51 +0200
+Subject: [PATCH 1/2] daemon/system: Fix building when pointers are 32 bit
+
+We can't use the direct hash/equal function for 64 bit values as that
+does not work on 32 bit architectures. Instead place these values on the
+heap, and use g_int64_(hash|equal).
+---
+ src/grd-rdp-smartcard.c | 32 ++++++++++++++------------------
+ 1 file changed, 14 insertions(+), 18 deletions(-)
+
+diff --git a/src/grd-rdp-smartcard.c b/src/grd-rdp-smartcard.c
+index 4abda0a9e..6f2ff09da 100644
+--- a/src/grd-rdp-smartcard.c
++++ b/src/grd-rdp-smartcard.c
+@@ -48,14 +48,6 @@
+          (uint32_t) (val)) \
+       : (uint32_t) (val)))
+ 
+-#define INT64_TO_POINTER(val) \
+-  (G_STATIC_ASSERT_EXPR (sizeof (val) == sizeof (gpointer)), \
+-    (gpointer) (val))
+-
+-#define POINTER_TO_INT64(ptr) \
+-  (G_STATIC_ASSERT_EXPR (sizeof (ptr) == sizeof (int64_t)), \
+-    (int64_t) (ptr))
+-
+ /*
+  * pcsc-lite dwState bitmask values. These differ from the WinSCard
+  * sequential values (0-6) defined by FreeRDP/WinPR in winpr/smartcard.h.
+@@ -291,10 +283,13 @@ on_smartcard_release_context_complete (RdpdrServerContext *rdpdr_context,
+ 
+ static gboolean
+ remove_cards_for_context (gpointer key,
+-                          gpointer card_context,
+-                          gpointer context)
++                          gpointer value,
++                          gpointer user_data)
+ {
+-  return POINTER_TO_INT64 (card_context) == POINTER_TO_INT64 (context);
++  int64_t card_context = *(int64_t *) value;
++  int64_t context = *(int64_t *) user_data;
++
++  return card_context == context;
+ }
+ 
+ static gboolean
+@@ -321,7 +316,7 @@ on_handle_release_context (GrdDBusPcscdSession   *skeleton,
+ 
+   g_hash_table_foreach_remove (smartcard->card_to_context,
+                                remove_cards_for_context,
+-                               INT64_TO_POINTER (context));
++                               &context);
+ 
+   smartcard_scard_context_native_to_redir (&redir_context, context);
+ 
+@@ -415,8 +410,8 @@ track_card_context (RdpdrServerContext *rdpdr_context,
+   if (smartcard)
+     {
+       g_hash_table_insert (smartcard->card_to_context,
+-                           INT64_TO_POINTER (card),
+-                           INT64_TO_POINTER (context));
++                           g_memdup2 (&card, sizeof card),
++                           g_memdup2 (&context, sizeof context));
+     }
+ }
+ 
+@@ -424,7 +419,7 @@ static void
+ untrack_card_context (GrdRdpSmartcard *smartcard,
+                       int64_t          card)
+ {
+-  g_hash_table_remove (smartcard->card_to_context, INT64_TO_POINTER (card));
++  g_hash_table_remove (smartcard->card_to_context, &card);
+ }
+ 
+ static void
+@@ -553,7 +548,7 @@ resolve_context_for_card (GrdRdpSmartcard       *smartcard,
+   gpointer value;
+ 
+   if (!g_hash_table_lookup_extended (smartcard->card_to_context,
+-                                     INT64_TO_POINTER (card),
++                                     &card,
+                                      NULL,
+                                      &value))
+     {
+@@ -564,7 +559,7 @@ resolve_context_for_card (GrdRdpSmartcard       *smartcard,
+       return FALSE;
+     }
+ 
+-  *out_context = POINTER_TO_INT64 (value);
++  *out_context = *(int64_t *) value;
+   return TRUE;
+ }
+ 
+@@ -2208,7 +2203,8 @@ grd_rdp_smartcard_init (GrdRdpSmartcard *smartcard)
+ 
+   smartcard->smartcard_device_ids = g_hash_table_new (NULL, NULL);
+   smartcard->pending_invocations = g_hash_table_new (NULL, NULL);
+-  smartcard->card_to_context = g_hash_table_new (NULL, NULL);
++  smartcard->card_to_context = g_hash_table_new_full (g_int64_hash, g_int64_equal,
++                                                      g_free, g_free);
+ }
+ 
+ static void
+-- 
+GitLab
+
+
+From ef5a76f5d2d96de4f29ac908ee14db09834882d7 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Jonas=20=C3=85dahl?= <jadahl@gmail.com>
+Date: Fri, 21 Aug 2026 15:09:15 +0200
+Subject: [PATCH 2/2] rdp-smartcard: Remove static assert for narrowing macro
+
+We sometimes "narrow" down a size_t to uint32_t, checking that size_t is
+64 bit, which it isn't on some architectures. Thus, drop the assert.
+---
+ src/grd-rdp-smartcard.c | 14 ++++++--------
+ 1 file changed, 6 insertions(+), 8 deletions(-)
+
+diff --git a/src/grd-rdp-smartcard.c b/src/grd-rdp-smartcard.c
+index 6f2ff09da..15e530aa9 100644
+--- a/src/grd-rdp-smartcard.c
++++ b/src/grd-rdp-smartcard.c
+@@ -37,16 +37,14 @@
+ #include "grd-session-rdp.h"
+ 
+ #define EXTEND_32_TO_64(val) \
+-  (G_STATIC_ASSERT_EXPR (sizeof (val) == sizeof (uint32_t)), \
+-    (uint64_t) (uint32_t) (val))
++  ((uint64_t) (uint32_t) (val))
+ 
+ #define NARROW_64_TO_32(val) \
+-  (G_STATIC_ASSERT_EXPR (sizeof (val) == sizeof (uint64_t)), \
+-    ((uint64_t) (val) > UINT32_MAX \
+-      ? (g_warning ("Narrowing 64-to-32 lost data in '"#val"': 0x%lx", \
+-                     (uint64_t) (val)), \
+-         (uint32_t) (val)) \
+-      : (uint32_t) (val)))
++  ((uint64_t) (val) > UINT32_MAX \
++    ? (g_warning ("Narrowing 64-to-32 lost data in '"#val"': 0x%lx", \
++                  (uint64_t) (val)), \
++       (uint32_t) (val)) \
++    : (uint32_t) (val))
+ 
+ /*
+  * pcsc-lite dwState bitmask values. These differ from the WinSCard
+-- 
+GitLab
+

diff --git a/gnome-remote-desktop.spec b/gnome-remote-desktop.spec
index 02859cd..6d97fe6 100644
--- a/gnome-remote-desktop.spec
+++ b/gnome-remote-desktop.spec
@@ -13,7 +13,7 @@
 %global vncserver_version 0.9.11-7
 
 Name:           gnome-remote-desktop
-Version:        51~alpha
+Version:        51~beta
 Release:        %autorelease
 Summary:        GNOME Remote Desktop screen share service
 
@@ -26,6 +26,9 @@ Source0:        https://download.gnome.org/sources/%{name}/%{gnome_major_version
 # Adds encryption support (requires patched LibVNCServer)
 Patch0:         gnutls-anontls.patch
 
+# https://gitlab.gnome.org/GNOME/gnome-remote-desktop/-/merge_requests/416
+Patch1:         001-Fix-building-when-pointers-are-32-bit.patch
+
 BuildRequires:  asciidoc
 BuildRequires:  gcc
 BuildRequires:  meson >= %{meson_version}
@@ -131,17 +134,25 @@ GNOME desktop environment.
 %{_libexecdir}/gnome-remote-desktop-daemon
 %{_libexecdir}/gnome-remote-desktop-enable-service
 %{_libexecdir}/gnome-remote-desktop-configuration-daemon
+%{_libexecdir}/grd-pcscd
+%{_libdir}/libgrdpcsc.so
+%{_libdir}/libgrdpcsc.so.0
+%{_libdir}/libgrdpcsc.so.0.0.0
 %{_userunitdir}/%{systemd_unit_user}
 %{_userunitdir}/%{systemd_unit_headless}
 %{_userunitdir}/%{systemd_unit_handover}
 %{_unitdir}/%{systemd_unit_system}
 %{_unitdir}/gnome-remote-desktop-configuration.service
+%{_unitdir}/gnome-remote-desktop-pcscd.service
 %{_datadir}/dbus-1/system-services/org.gnome.RemoteDesktop.Configuration.service
+%{_datadir}/dbus-1/system-services/org.gnome.RemoteDesktop.Pcscd.service
 %{_datadir}/dbus-1/system.d/org.gnome.RemoteDesktop.conf
+%{_datadir}/dbus-1/system.d/org.gnome.RemoteDesktop.Pcscd.conf
 %{_datadir}/glib-2.0/schemas/org.gnome.desktop.remote-desktop.gschema.xml
 %{_datadir}/glib-2.0/schemas/org.gnome.desktop.remote-desktop.enums.xml
 %{_datadir}/polkit-1/actions/org.gnome.remotedesktop.configure-system-daemon.policy
 %{_datadir}/polkit-1/actions/org.gnome.remotedesktop.enable-system-daemon.policy
+%{_datadir}/polkit-1/actions/org.gnome.remotedesktop.use-grd-pcscd.policy
 %{_datadir}/polkit-1/rules.d/20-gnome-remote-desktop.rules
 %{_sysusersdir}/gnome-remote-desktop-sysusers.conf
 %{_tmpfilesdir}/gnome-remote-desktop-tmpfiles.conf

diff --git a/sources b/sources
index fb8d26a..c20412d 100644
--- a/sources
+++ b/sources
@@ -1 +1 @@
-SHA512 (gnome-remote-desktop-51.alpha.tar.xz) = 26aae17ed848a9d1f8c68b66244144ebb7e3b86cce2427a8fda9eb8067bdcb4e22855d1dd16d0daf6f711f9c8705304fad9cb8e1d4db5b380cd4e4c8b4d5cb22
+SHA512 (gnome-remote-desktop-51.beta.tar.xz) = 8276b30e56ef42645267551f1b56330e8d3c0ff7096bc6aa088545a5325c45d36d094257906417bde835138d7e7fd76bea1454a11ab989927fb4f2a63a3c5ed2

                 reply	other threads:[~2026-08-24  7:31 UTC|newest]

Thread overview: [no followups] expand[flat|nested]  mbox.gz  Atom feed

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=178755671700.1.17279238671385064291.rpms-gnome-remote-desktop-1784a20616cf@fedoraproject.org \
    --to=nmontero@redhat.com \
    --cc=git-commits@fedoraproject.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox