patches and low-level development discussion
 help / color / mirror / code / Atom feed
From: Alyssa Ross <hi@alyssa.is>
To: devel@spectrum-os.org
Subject: [PATCH 3/3] pkgs: remove dbus overlay
Date: Thu, 13 Nov 2025 12:10:38 +0100	[thread overview]
Message-ID: <20251113111038.39098-3-hi@alyssa.is> (raw)
In-Reply-To: <20251113111038.39098-1-hi@alyssa.is>

We ended up going with socat forwarding VSOCK to unix inside guests,
so these patches are no longer necessary.

Signed-off-by: Alyssa Ross <hi@alyssa.is>
---
 ...add-vsock-address-format-to-the-spec.patch |  97 -------
 ...02-build-sys-add-enable-vsock-option.patch |  55 ----
 ...upport-to-_dbus_append_address_from_.patch |  68 -----
 .../0004-dbus-add-_dbus_listen_vsock.patch    | 190 -------------
 .../0005-dbus-add-vsock-server-support.patch  | 139 ----------
 .../0006-dbus-add-_dbus_connect_vsock.patch   |  93 -------
 .../0007-dbus-add-vsock-client-support.patch  | 117 --------
 ...-test-add-simple-loopback-vsock-test.patch | 127 ---------
 ...dd-allow-CIDs.-on-listenable-address.patch | 255 ------------------
 pkgs/dbus/default.nix                         |  25 --
 pkgs/overlay.nix                              |   2 -
 11 files changed, 1168 deletions(-)
 delete mode 100644 pkgs/dbus/0001-doc-add-vsock-address-format-to-the-spec.patch
 delete mode 100644 pkgs/dbus/0002-build-sys-add-enable-vsock-option.patch
 delete mode 100644 pkgs/dbus/0003-unix-add-vsock-support-to-_dbus_append_address_from_.patch
 delete mode 100644 pkgs/dbus/0004-dbus-add-_dbus_listen_vsock.patch
 delete mode 100644 pkgs/dbus/0005-dbus-add-vsock-server-support.patch
 delete mode 100644 pkgs/dbus/0006-dbus-add-_dbus_connect_vsock.patch
 delete mode 100644 pkgs/dbus/0007-dbus-add-vsock-client-support.patch
 delete mode 100644 pkgs/dbus/0008-test-add-simple-loopback-vsock-test.patch
 delete mode 100644 pkgs/dbus/0009-vsock-add-allow-CIDs.-on-listenable-address.patch
 delete mode 100644 pkgs/dbus/default.nix

diff --git a/pkgs/dbus/0001-doc-add-vsock-address-format-to-the-spec.patch b/pkgs/dbus/0001-doc-add-vsock-address-format-to-the-spec.patch
deleted file mode 100644
index 017ed0b..0000000
--- a/pkgs/dbus/0001-doc-add-vsock-address-format-to-the-spec.patch
+++ /dev/null
@@ -1,97 +0,0 @@
-From 1b2bf09fbd4a6fadaf2438d0bc99f08e5c38b764 Mon Sep 17 00:00:00 2001
-From: =?UTF-8?q?Marc-Andr=C3=A9=20Lureau?= <marcandre.lureau@redhat.com>
-Date: Sun, 10 Jan 2021 01:14:18 +0400
-Subject: [PATCH 1/9] doc: add vsock: address format to the spec
-MIME-Version: 1.0
-Content-Type: text/plain; charset=UTF-8
-Content-Transfer-Encoding: 8bit
-SPDX-License-Identifier: AFL-2.1 OR GPL-2.0-or-later
-SPDX-FileCopyrightText: The D-Bus Authors
-
-Signed-off-by: Marc-André Lureau <marcandre.lureau@redhat.com>
----
- doc/dbus-specification.xml | 61 +++++++++++++++++++++++++++++++++++++-
- 1 file changed, 60 insertions(+), 1 deletion(-)
-
-diff --git a/doc/dbus-specification.xml b/doc/dbus-specification.xml
-index 16bbc2ca..775928c0 100644
---- a/doc/dbus-specification.xml
-+++ b/doc/dbus-specification.xml
-@@ -3576,7 +3576,7 @@
-       [FIXME we need to specify in detail each transport and its possible arguments]
- 
-       Current transports include: unix domain sockets (including
--      abstract namespace on linux), launchd, systemd, TCP/IP, an executed subprocess and a debug/testing transport
-+      abstract namespace on linux), launchd, systemd, TCP/IP, VSOCK, an executed subprocess and a debug/testing transport
-       using in-process pipes. Future possible transports include one that
-       tunnels over X11 protocol.
-     </para>
-@@ -3686,6 +3686,65 @@
-        </para>
-       </sect3>
-     </sect2>
-+    <sect2 id="transports-vsock">
-+      <title>VSOCK Sockets</title>
-+      <para>
-+        VSOCK sockets facilitates communication between virtual machines and the
-+        host they are running on. It is supported on various operating systems,
-+        although it is most common on Linux (support added in 3.9 for VMWare,
-+        4.8 for KVM, 4.14 for Hyper-V).
-+      </para>
-+      <para>
-+        VSOCK addresses do not need to specify the CID or the port to be
-+        listenable. By default, they will use
-+        <literal>VMADDR_CID_ANY(-1)</literal> and
-+        <literal>VMADDR_PORT_ANY(-1)</literal>, which will bind any address or
-+        port available.
-+      </para>
-+      <para>
-+        To be connectable, a VSOCK address must specify both the CID and the port.
-+      </para>
-+      <sect3 id="transport-vsock-addresses">
-+        <title>Server Address Format</title>
-+        <para>
-+          VSOCK socket addresses are identified by the "vsock:" prefix
-+          and support the following key/value pairs:
-+        </para>
-+        <informaltable>
-+         <tgroup cols="3">
-+          <thead>
-+           <row>
-+            <entry>Name</entry>
-+            <entry>Values</entry>
-+            <entry>Description</entry>
-+           </row>
-+          </thead>
-+          <tbody>
-+           <row>
-+             <entry>cid</entry>
-+             <entry>(32 bits unsigned number)</entry>
-+             <entry>
-+              The Context Identifier (CID). 0 is reserved for services
-+              built into the hypervisor, 1 is the well-known address for local
-+              communication, 2 is the well-known address of the host.
-+              -1U means any address for binding.
-+             </entry>
-+           </row>
-+           <row>
-+             <entry>port</entry>
-+             <entry>(32 bits unsigned number)</entry>
-+             <entry>
-+              The port number. -1U means any port for binding. On Linux, the
-+              port numbers below 1024 are called privileged ports. Only a
-+              process with the CAP_NET_BIND_SERVICE capability may bind to these
-+              port numbers.
-+             </entry>
-+           </row>
-+          </tbody>
-+         </tgroup>
-+        </informaltable>
-+      </sect3>
-+    </sect2>
-     <sect2 id="transports-launchd">
-       <title>launchd</title>
-       <para>
--- 
-2.42.0
-
diff --git a/pkgs/dbus/0002-build-sys-add-enable-vsock-option.patch b/pkgs/dbus/0002-build-sys-add-enable-vsock-option.patch
deleted file mode 100644
index 32ac0d5..0000000
--- a/pkgs/dbus/0002-build-sys-add-enable-vsock-option.patch
+++ /dev/null
@@ -1,55 +0,0 @@
-From 5b47ee683887c23c0f56cf403f46be1ad8f04470 Mon Sep 17 00:00:00 2001
-From: =?UTF-8?q?Marc-Andr=C3=A9=20Lureau?= <marcandre.lureau@redhat.com>
-Date: Fri, 8 Jan 2021 15:37:54 +0400
-Subject: [PATCH 2/9] build-sys: add --enable-vsock option
-MIME-Version: 1.0
-Content-Type: text/plain; charset=UTF-8
-Content-Transfer-Encoding: 8bit
-SPDX-License-Identifier: AFL-2.1 OR GPL-2.0-or-later
-SPDX-FileCopyrightText: The D-Bus Authors
-
-Disabled by default, mainly for two reasons:
-- SELinux support is lacking in kernel, so --disable-selinux is required atm
-- Testing in containers/CI has unresolved issues (time out or unreachable)
-
-Signed-off-by: Marc-André Lureau <marcandre.lureau@redhat.com>
----
- configure.ac | 8 ++++++++
- 1 file changed, 8 insertions(+)
-
-diff --git a/configure.ac b/configure.ac
-index 3f200a6c..2c3e7f54 100644
---- a/configure.ac
-+++ b/configure.ac
-@@ -218,6 +218,7 @@ AC_ARG_ENABLE(console-owner-file, AS_HELP_STRING([--enable-console-owner-file],[
- AC_ARG_ENABLE(launchd, AS_HELP_STRING([--enable-launchd],[build with launchd auto-launch support]),enable_launchd=$enableval,enable_launchd=auto)
- AC_ARG_ENABLE(systemd, AS_HELP_STRING([--enable-systemd],[build with systemd at_console support]),enable_systemd=$enableval,enable_systemd=auto)
- AC_ARG_ENABLE(traditional-activation, AS_HELP_STRING([--disable-traditional-activation], [Do not build support for service activation without using SystemdService]), enable_traditional_activation="$enableval", enable_traditional_activation=yes)
-+AC_ARG_ENABLE([vsock], [AS_HELP_STRING([--enable-vsock],[build with vsock support (linux only)])], [enable_vsock=$enableval], [enable_vsock=no])
- 
- AC_ARG_WITH(session-socket-dir, AS_HELP_STRING([--with-session-socket-dir=[dirname]],[Where to put sockets for the per-login-session message bus]))
- AC_ARG_WITH(test-socket-dir, AS_HELP_STRING([--with-test-socket-dir=[dirname]],[Where to put sockets for make check]))
-@@ -882,6 +883,12 @@ fi
- 
- AM_CONDITIONAL(DBUS_BUS_ENABLE_INOTIFY, test x$have_inotify = xyes)
- 
-+AS_IF([test "x$enable_vsock" = xno],
-+    [have_vsock=no],
-+    [AC_CHECK_HEADERS([linux/vm_sockets.h], [have_vsock=yes], [have_vsock=no], [#include <sys/socket.h>])])
-+AS_IF([test "x$have_vsock" = xyes],
-+    [AC_DEFINE([DBUS_ENABLE_VSOCK], [1], [Use vsock])])
-+
- # For simplicity, we require the userland API for epoll_create1 at
- # compile-time (glibc 2.9), but we'll run on kernels that turn out
- # not to have it at runtime.
-@@ -1796,6 +1803,7 @@ echo "
-         Building inotify support: ${have_inotify}
-         Building kqueue support:  ${have_kqueue}
-         Building systemd support: ${have_systemd}
-+        Building vsock support:   ${have_vsock}
-         Traditional activation:   ${enable_traditional_activation}
-         Building X11 code:        ${have_x11}
-         Building Doxygen docs:    ${enable_doxygen_docs}
--- 
-2.42.0
-
diff --git a/pkgs/dbus/0003-unix-add-vsock-support-to-_dbus_append_address_from_.patch b/pkgs/dbus/0003-unix-add-vsock-support-to-_dbus_append_address_from_.patch
deleted file mode 100644
index 311667f..0000000
--- a/pkgs/dbus/0003-unix-add-vsock-support-to-_dbus_append_address_from_.patch
+++ /dev/null
@@ -1,68 +0,0 @@
-From 9c0d476590791451a344e086526826ad5a7821f8 Mon Sep 17 00:00:00 2001
-From: =?UTF-8?q?Marc-Andr=C3=A9=20Lureau?= <marcandre.lureau@redhat.com>
-Date: Fri, 8 Jan 2021 15:40:01 +0400
-Subject: [PATCH 3/9] unix: add vsock support to
- _dbus_append_address_from_socket
-MIME-Version: 1.0
-Content-Type: text/plain; charset=UTF-8
-Content-Transfer-Encoding: 8bit
-SPDX-License-Identifier: AFL-2.1 OR GPL-2.0-or-later
-SPDX-FileCopyrightText: 2002, 2003, 2006  Red Hat, Inc.
-SPDX-FileCopyrightText: 2003 CodeFactory AB
-SPDX-FileCopyrightText: The D-Bus Authors
-
-Signed-off-by: Marc-André Lureau <marcandre.lureau@redhat.com>
----
- dbus/dbus-sysdeps-unix.c | 22 +++++++++++++++++++++-
- 1 file changed, 21 insertions(+), 1 deletion(-)
-
-diff --git a/dbus/dbus-sysdeps-unix.c b/dbus/dbus-sysdeps-unix.c
-index e585136f..cc40c0cd 100644
---- a/dbus/dbus-sysdeps-unix.c
-+++ b/dbus/dbus-sysdeps-unix.c
-@@ -89,6 +89,10 @@
- #include <systemd/sd-daemon.h>
- #endif
- 
-+#ifdef DBUS_ENABLE_VSOCK
-+#include <linux/vm_sockets.h>
-+#endif
-+
- #if !DBUS_USE_SYNC
- #include <pthread.h>
- #endif
-@@ -4891,6 +4895,9 @@ _dbus_append_address_from_socket (DBusSocket  fd,
-       struct sockaddr_un un;
-       struct sockaddr_in ipv4;
-       struct sockaddr_in6 ipv6;
-+#ifdef DBUS_ENABLE_VSOCK
-+      struct sockaddr_vm vm;
-+#endif
-   } socket;
-   char hostip[INET6_ADDRSTRLEN];
-   socklen_t size = sizeof (socket);
-@@ -4962,7 +4969,20 @@ _dbus_append_address_from_socket (DBusSocket  fd,
-         }
-       /* not reached */
-       break;
--
-+#ifdef DBUS_ENABLE_VSOCK
-+    case AF_VSOCK:
-+      if (_dbus_string_append_printf (address, "vsock:cid=%u,port=%u",
-+                                      socket.vm.svm_cid, socket.vm.svm_port))
-+        {
-+          return TRUE;
-+        }
-+      else
-+        {
-+          _DBUS_SET_OOM (error);
-+          return FALSE;
-+        }
-+      break;
-+#endif
-     default:
-       dbus_set_error (error,
-                       _dbus_error_from_errno (EINVAL),
--- 
-2.42.0
-
diff --git a/pkgs/dbus/0004-dbus-add-_dbus_listen_vsock.patch b/pkgs/dbus/0004-dbus-add-_dbus_listen_vsock.patch
deleted file mode 100644
index c9f7cc2..0000000
--- a/pkgs/dbus/0004-dbus-add-_dbus_listen_vsock.patch
+++ /dev/null
@@ -1,190 +0,0 @@
-From 468b34e34ae36970029d544455df80d767b95296 Mon Sep 17 00:00:00 2001
-From: =?UTF-8?q?Marc-Andr=C3=A9=20Lureau?= <marcandre.lureau@redhat.com>
-Date: Sun, 10 Jan 2021 00:42:54 +0400
-Subject: [PATCH 4/9] dbus: add _dbus_listen_vsock
-MIME-Version: 1.0
-Content-Type: text/plain; charset=UTF-8
-Content-Transfer-Encoding: 8bit
-SPDX-License-Identifier: AFL-2.1 OR GPL-2.0-or-later
-SPDX-FileCopyrightText: 2002, 2003, 2006  Red Hat, Inc.
-SPDX-FileCopyrightText: 2003 CodeFactory AB
-SPDX-FileCopyrightText: The D-Bus Authors
-
-Signed-off-by: Marc-André Lureau <marcandre.lureau@redhat.com>
----
- dbus/dbus-sysdeps-unix.c | 140 +++++++++++++++++++++++++++++++++++++++
- dbus/dbus-sysdeps-unix.h |   7 ++
- 2 files changed, 147 insertions(+)
-
-diff --git a/dbus/dbus-sysdeps-unix.c b/dbus/dbus-sysdeps-unix.c
-index cc40c0cd..9a46625a 100644
---- a/dbus/dbus-sysdeps-unix.c
-+++ b/dbus/dbus-sysdeps-unix.c
-@@ -1565,6 +1565,146 @@ out:
-   return fd;
- }
- 
-+#ifdef DBUS_ENABLE_VSOCK
-+static dbus_bool_t
-+_dbus_vsock_parse_cid (const char    *cid,
-+                       unsigned int  *ret,
-+                       DBusError     *error)
-+{
-+  DBusString cid_str;
-+  unsigned long val;
-+
-+  _dbus_string_init_const (&cid_str, cid);
-+
-+  if (!_dbus_string_parse_uint (&cid_str, 0, &val, NULL) || val > _DBUS_UINT32_MAX)
-+    {
-+      dbus_set_error (error,
-+                      DBUS_ERROR_BAD_ADDRESS,
-+                      "Failed to parse vsock CID value '%s'", cid);
-+      return FALSE;
-+    }
-+
-+
-+  *ret = val;
-+  return TRUE;
-+}
-+
-+static dbus_bool_t
-+_dbus_vsock_parse_port (const char    *port,
-+                        unsigned int  *ret,
-+                        DBusError     *error)
-+{
-+  DBusString port_str;
-+  unsigned long val;
-+
-+  _dbus_string_init_const (&port_str, port);
-+
-+  if (!_dbus_string_parse_uint (&port_str, 0, &val, NULL) || val > _DBUS_UINT32_MAX)
-+    {
-+      dbus_set_error (error,
-+                      DBUS_ERROR_BAD_ADDRESS,
-+                      "Failed to parse vsock port value '%s'", port);
-+      return FALSE;
-+    }
-+
-+  *ret = val;
-+  return TRUE;
-+}
-+
-+int
-+_dbus_listen_vsock (const char *cid,
-+                    const char *port,
-+                    DBusString *retcid,
-+                    DBusString *retport,
-+                    DBusError  *error)
-+{
-+  struct sockaddr_vm sa;
-+  int saved_errno;
-+  int fd = -1;
-+
-+  _DBUS_ASSERT_ERROR_IS_CLEAR (error);
-+  _DBUS_ZERO (sa);
-+  sa.svm_family = AF_VSOCK;
-+  sa.svm_cid = VMADDR_CID_ANY;
-+  sa.svm_port = VMADDR_PORT_ANY;
-+
-+  if ((cid && !_dbus_vsock_parse_cid (cid, &sa.svm_cid, error)) ||
-+      (port && !_dbus_vsock_parse_port (port, &sa.svm_port, error)))
-+    {
-+      _DBUS_ASSERT_ERROR_IS_SET (error);
-+      return -1;
-+    }
-+
-+  if (!_dbus_open_socket (&fd, AF_VSOCK, SOCK_STREAM, 0, error))
-+    {
-+      _DBUS_ASSERT_ERROR_IS_SET (error);
-+      return -1;
-+    }
-+
-+  if (bind (fd, (struct sockaddr *) &sa, sizeof (sa)) < 0)
-+    {
-+      saved_errno = errno;
-+      _dbus_close (fd, NULL);
-+      dbus_set_error (error, _dbus_error_from_errno (saved_errno),
-+                      "Failed to bind VSOCK socket of CID:%u: port:%u: %s",
-+                      sa.svm_cid, sa.svm_port, _dbus_strerror (saved_errno));
-+      return -1;
-+    }
-+
-+  if (!_dbus_set_fd_nonblocking (fd, error))
-+    {
-+      _DBUS_ASSERT_ERROR_IS_SET (error);
-+      _dbus_close (fd, NULL);
-+      return -1;
-+    }
-+
-+  if (listen (fd, 30 /* backlog */) < 0)
-+    {
-+      saved_errno = errno;
-+      dbus_set_error (error, _dbus_error_from_errno (saved_errno),
-+                      "Failed to listen on VSOCK socket of CID:%u port:%u: %s",
-+                      sa.svm_cid, sa.svm_port, _dbus_strerror (saved_errno));
-+      _dbus_close (fd, NULL);
-+      return -1;
-+    }
-+
-+  if (!port || !cid)
-+    {
-+      int result;
-+      socklen_t addrlen;
-+
-+      addrlen = sizeof (sa);
-+      result = getsockname (fd, (struct sockaddr *) &sa, &addrlen);
-+
-+      if (result == -1)
-+        {
-+          saved_errno = errno;
-+          dbus_set_error (error, _dbus_error_from_errno (saved_errno),
-+                          "Failed to retrieve VSOCK socket name: %s",
-+                          _dbus_strerror (saved_errno));
-+          _dbus_close (fd, NULL);
-+          return -1;
-+        }
-+    }
-+
-+  if (!_dbus_string_append_printf (retcid, "%u", sa.svm_cid))
-+    {
-+      dbus_set_error (error, DBUS_ERROR_NO_MEMORY, NULL);
-+      _dbus_close (fd, NULL);
-+      return -1;
-+    }
-+
-+  if (!_dbus_string_append_printf (retport, "%u", sa.svm_port))
-+    {
-+      dbus_set_error (error, DBUS_ERROR_NO_MEMORY, NULL);
-+      _dbus_close (fd, NULL);
-+      return -1;
-+    }
-+
-+  return fd;
-+}
-+#endif
-+
- /**
-  * Creates a socket and binds it to the given path, then listens on
-  * the socket. The socket is set to be nonblocking.  In case of port=0
-diff --git a/dbus/dbus-sysdeps-unix.h b/dbus/dbus-sysdeps-unix.h
-index e86de6d9..49b8f436 100644
---- a/dbus/dbus-sysdeps-unix.h
-+++ b/dbus/dbus-sysdeps-unix.h
-@@ -73,6 +73,13 @@ int _dbus_listen_unix_socket  (const char     *path,
-                                dbus_bool_t     abstract,
-                                DBusError      *error);
- 
-+int _dbus_listen_vsock        (const char     *cid,
-+                               const char     *port,
-+                               DBusString     *retcid,
-+                               DBusString     *retport,
-+                               DBusError      *error);
-+
-+
- int _dbus_connect_exec (const char     *path,
-                         char *const    argv[],
-                         DBusError      *error);
--- 
-2.42.0
-
diff --git a/pkgs/dbus/0005-dbus-add-vsock-server-support.patch b/pkgs/dbus/0005-dbus-add-vsock-server-support.patch
deleted file mode 100644
index 04b03b8..0000000
--- a/pkgs/dbus/0005-dbus-add-vsock-server-support.patch
+++ /dev/null
@@ -1,139 +0,0 @@
-From 1f770dab67ddf78a6c327eebf25086e207a0f6e2 Mon Sep 17 00:00:00 2001
-From: =?UTF-8?q?Marc-Andr=C3=A9=20Lureau?= <marcandre.lureau@redhat.com>
-Date: Sun, 10 Jan 2021 00:43:20 +0400
-Subject: [PATCH 5/9] dbus: add vsock: server support
-MIME-Version: 1.0
-Content-Type: text/plain; charset=UTF-8
-Content-Transfer-Encoding: 8bit
-SPDX-License-Identifier: AFL-2.1 OR GPL-2.0-or-later
-SPDX-FileCopyrightText: 2002, 2003, 2004, 2006  Red Hat Inc.
-SPDX-FileCopyrightText: The D-Bus Authors
-
-Signed-off-by: Marc-André Lureau <marcandre.lureau@redhat.com>
----
- dbus/dbus-server-socket.c | 55 +++++++++++++++++++++++++++++++++++++++
- dbus/dbus-server-socket.h |  3 +++
- dbus/dbus-server-unix.c   | 20 ++++++++++++++
- 3 files changed, 78 insertions(+)
-
-diff --git a/dbus/dbus-server-socket.c b/dbus/dbus-server-socket.c
-index bc5e3a9d..074b2dfd 100644
---- a/dbus/dbus-server-socket.c
-+++ b/dbus/dbus-server-socket.c
-@@ -29,6 +29,10 @@
- #include "dbus-memory.h"
- #include "dbus-nonce.h"
- #include "dbus-string.h"
-+#ifdef DBUS_ENABLE_VSOCK
-+#include "dbus-sysdeps.h"
-+#include "dbus-sysdeps-unix.h"
-+#endif
- 
- /**
-  * @defgroup DBusServerSocket DBusServer implementations for SOCKET
-@@ -395,6 +399,57 @@ failed:
-   return NULL;
- }
- 
-+#ifdef DBUS_ENABLE_VSOCK
-+DBusServer *
-+_dbus_server_new_for_vsock (const char       *cid,
-+                            const char       *port,
-+                            DBusError        *error)
-+{
-+  DBusServer *server = NULL;
-+  DBusSocket listen_fd = DBUS_SOCKET_INIT;
-+  DBusString address = _DBUS_STRING_INIT_INVALID;
-+  DBusString cid_str = _DBUS_STRING_INIT_INVALID;
-+  DBusString port_str = _DBUS_STRING_INIT_INVALID;
-+
-+  _DBUS_ASSERT_ERROR_IS_CLEAR (error);
-+
-+  if (!_dbus_string_init (&address) ||
-+      !_dbus_string_init (&cid_str) ||
-+      !_dbus_string_init (&port_str))
-+    {
-+      dbus_set_error (error, DBUS_ERROR_NO_MEMORY, NULL);
-+      goto out;
-+    }
-+
-+  listen_fd.fd = _dbus_listen_vsock (cid, port, &cid_str, &port_str, error);
-+  if (!_dbus_socket_is_valid (listen_fd))
-+    {
-+      _DBUS_ASSERT_ERROR_IS_SET (error);
-+      goto out;
-+    }
-+
-+  if (!_dbus_string_append (&address, "vsock:cid=") ||
-+      !_dbus_string_append (&address, _dbus_string_get_const_data (&cid_str)) ||
-+      !_dbus_string_append (&address, ",port=") ||
-+      !_dbus_string_append (&address, _dbus_string_get_const_data (&port_str)))
-+    {
-+      dbus_set_error (error, DBUS_ERROR_NO_MEMORY, NULL);
-+      goto out;
-+    }
-+
-+  server = _dbus_server_new_for_socket (&listen_fd, 1, &address, NULL, error);
-+  if (server)
-+    _dbus_socket_invalidate (&listen_fd);
-+
-+out:
-+  _dbus_close_socket (listen_fd, NULL);
-+  _dbus_string_free (&cid_str);
-+  _dbus_string_free (&port_str);
-+  _dbus_string_free (&address);
-+  return server;
-+}
-+#endif
-+
- /**
-  * Creates a new server listening on TCP.
-  * If host is NULL, it will default to localhost.
-diff --git a/dbus/dbus-server-socket.h b/dbus/dbus-server-socket.h
-index ee5bf45f..d2461148 100644
---- a/dbus/dbus-server-socket.h
-+++ b/dbus/dbus-server-socket.h
-@@ -34,6 +34,9 @@ DBusServer* _dbus_server_new_for_socket           (DBusSocket       *fds,
-                                                    const DBusString *address,
-                                                    DBusNonceFile    *noncefile,
-                                                    DBusError        *error);
-+DBusServer* _dbus_server_new_for_vsock            (const char       *cid,
-+                                                   const char       *port,
-+                                                   DBusError        *error);
- DBusServer* _dbus_server_new_for_autolaunch       (const DBusString *address,
-                                                    DBusError        *error);
- DBUS_PRIVATE_EXPORT
-diff --git a/dbus/dbus-server-unix.c b/dbus/dbus-server-unix.c
-index c7ace2bc..0f34fa8e 100644
---- a/dbus/dbus-server-unix.c
-+++ b/dbus/dbus-server-unix.c
-@@ -287,6 +287,26 @@ _dbus_server_listen_platform_specific (DBusAddressEntry *entry,
-           return DBUS_SERVER_LISTEN_DID_NOT_CONNECT;
-         }
-     }
-+#endif
-+#ifdef DBUS_ENABLE_VSOCK
-+  else if (strcmp (method, "vsock") == 0)
-+    {
-+      const char *vsock_cid_var = dbus_address_entry_get_value (entry, "cid");
-+      const char *vsock_port_var = dbus_address_entry_get_value (entry, "port");
-+      *server_p = _dbus_server_new_for_vsock (vsock_cid_var, vsock_port_var, error);
-+
-+      if (*server_p != NULL)
-+        {
-+          _DBUS_ASSERT_ERROR_IS_CLEAR(error);
-+          return DBUS_SERVER_LISTEN_OK;
-+        }
-+      else
-+        {
-+          _DBUS_ASSERT_ERROR_IS_SET(error);
-+          return DBUS_SERVER_LISTEN_DID_NOT_CONNECT;
-+        }
-+
-+    }
- #endif
-   else
-     {
--- 
-2.42.0
-
diff --git a/pkgs/dbus/0006-dbus-add-_dbus_connect_vsock.patch b/pkgs/dbus/0006-dbus-add-_dbus_connect_vsock.patch
deleted file mode 100644
index 18ec6d9..0000000
--- a/pkgs/dbus/0006-dbus-add-_dbus_connect_vsock.patch
+++ /dev/null
@@ -1,93 +0,0 @@
-From 3ac54c0f252cbdedcd86a19822d6f4e736741856 Mon Sep 17 00:00:00 2001
-From: =?UTF-8?q?Marc-Andr=C3=A9=20Lureau?= <marcandre.lureau@redhat.com>
-Date: Sun, 10 Jan 2021 00:43:55 +0400
-Subject: [PATCH 6/9] dbus: add _dbus_connect_vsock
-MIME-Version: 1.0
-Content-Type: text/plain; charset=UTF-8
-Content-Transfer-Encoding: 8bit
-SPDX-License-Identifier: AFL-2.1 OR GPL-2.0-or-later
-SPDX-FileCopyrightText: 2002, 2003, 2006  Red Hat, Inc.
-SPDX-FileCopyrightText: 2003 CodeFactory AB
-SPDX-FileCopyrightText: The D-Bus Authors
-
-Signed-off-by: Marc-André Lureau <marcandre.lureau@redhat.com>
----
- dbus/dbus-sysdeps-unix.c | 47 ++++++++++++++++++++++++++++++++++++++++
- dbus/dbus-sysdeps-unix.h |  3 +++
- 2 files changed, 50 insertions(+)
-
-diff --git a/dbus/dbus-sysdeps-unix.c b/dbus/dbus-sysdeps-unix.c
-index 9a46625a..829219e6 100644
---- a/dbus/dbus-sysdeps-unix.c
-+++ b/dbus/dbus-sysdeps-unix.c
-@@ -1611,6 +1611,53 @@ _dbus_vsock_parse_port (const char    *port,
-   return TRUE;
- }
- 
-+int
-+_dbus_connect_vsock (const char    *cid,
-+                     const char    *port,
-+                     DBusError      *error)
-+{
-+  int fd;
-+  struct sockaddr_vm sa;
-+
-+  _DBUS_ASSERT_ERROR_IS_CLEAR (error);
-+
-+  _DBUS_ZERO (sa);
-+  sa.svm_family = AF_VSOCK;
-+
-+  if (!_dbus_vsock_parse_cid (cid, &sa.svm_cid, error) ||
-+      !_dbus_vsock_parse_port (port, &sa.svm_port, error))
-+    {
-+      _DBUS_ASSERT_ERROR_IS_SET(error);
-+      return -1;
-+    }
-+
-+  if (!_dbus_open_socket (&fd, AF_VSOCK, SOCK_STREAM, 0, error))
-+    {
-+      _DBUS_ASSERT_ERROR_IS_SET(error);
-+      return -1;
-+    }
-+
-+  if (connect (fd, (struct sockaddr *) &sa, sizeof (sa)) < 0)
-+    {
-+      dbus_set_error (error,
-+                      _dbus_error_from_errno (errno),
-+                      "Failed to connect to vsock CID:%s port:%s: %s",
-+                      cid, port, _dbus_strerror (errno));
-+
-+      _dbus_close (fd, NULL);
-+      return -1;
-+    }
-+
-+  if (!_dbus_set_fd_nonblocking (fd, error))
-+    {
-+      _DBUS_ASSERT_ERROR_IS_SET (error);
-+      _dbus_close (fd, NULL);
-+      return -1;
-+    }
-+
-+  return fd;
-+}
-+
- int
- _dbus_listen_vsock (const char *cid,
-                     const char *port,
-diff --git a/dbus/dbus-sysdeps-unix.h b/dbus/dbus-sysdeps-unix.h
-index 49b8f436..8d72b56e 100644
---- a/dbus/dbus-sysdeps-unix.h
-+++ b/dbus/dbus-sysdeps-unix.h
-@@ -73,6 +73,9 @@ int _dbus_listen_unix_socket  (const char     *path,
-                                dbus_bool_t     abstract,
-                                DBusError      *error);
- 
-+int _dbus_connect_vsock       (const char     *cid,
-+                               const char     *port,
-+                               DBusError      *error);
- int _dbus_listen_vsock        (const char     *cid,
-                                const char     *port,
-                                DBusString     *retcid,
--- 
-2.42.0
-
diff --git a/pkgs/dbus/0007-dbus-add-vsock-client-support.patch b/pkgs/dbus/0007-dbus-add-vsock-client-support.patch
deleted file mode 100644
index 5115021..0000000
--- a/pkgs/dbus/0007-dbus-add-vsock-client-support.patch
+++ /dev/null
@@ -1,117 +0,0 @@
-From cb3a8ab9bd11ec5eafe5798ae8a8825915d8d3a1 Mon Sep 17 00:00:00 2001
-From: =?UTF-8?q?Marc-Andr=C3=A9=20Lureau?= <marcandre.lureau@redhat.com>
-Date: Sun, 10 Jan 2021 00:44:55 +0400
-Subject: [PATCH 7/9] dbus: add vsock: client support
-MIME-Version: 1.0
-Content-Type: text/plain; charset=UTF-8
-Content-Transfer-Encoding: 8bit
-SPDX-License-Identifier: AFL-2.1 OR GPL-2.0-or-later
-SPDX-FileCopyrightText: 2002, 2003, 2004  Red Hat Inc.
-SPDX-FileCopyrightText: The D-Bus Authors
-
-Signed-off-by: Marc-André Lureau <marcandre.lureau@redhat.com>
----
- dbus/dbus-transport-unix.c | 80 ++++++++++++++++++++++++++++++++++++++
- 1 file changed, 80 insertions(+)
-
-diff --git a/dbus/dbus-transport-unix.c b/dbus/dbus-transport-unix.c
-index 30c3ba44..6664206c 100644
---- a/dbus/dbus-transport-unix.c
-+++ b/dbus/dbus-transport-unix.c
-@@ -109,6 +109,53 @@ _dbus_transport_new_for_domain_socket (const char     *path,
-   return NULL;
- }
- 
-+#ifdef DBUS_ENABLE_VSOCK
-+static DBusTransport *
-+_dbus_transport_new_for_vsock (const char     *cid,
-+                               const char     *port,
-+                               DBusError      *error)
-+{
-+  DBusSocket fd = DBUS_SOCKET_INIT;
-+  DBusTransport *transport = NULL;
-+  DBusString address = _DBUS_STRING_INIT_INVALID;
-+
-+  _DBUS_ASSERT_ERROR_IS_CLEAR (error);
-+
-+  if (!_dbus_string_init (&address))
-+    {
-+      dbus_set_error (error, DBUS_ERROR_NO_MEMORY, NULL);
-+      goto out;
-+    }
-+
-+  if (!_dbus_string_append_printf (&address, "vsock:cid=%s,port=%s",
-+                                   cid, port))
-+    {
-+      dbus_set_error (error, DBUS_ERROR_NO_MEMORY, NULL);
-+      goto out;
-+    }
-+
-+  fd.fd = _dbus_connect_vsock (cid, port, error);
-+  if (fd.fd < 0)
-+      goto out;
-+
-+  _dbus_verbose ("Successfully connected to CID:%s port:%s\n",
-+                 cid, port);
-+
-+  transport = _dbus_transport_new_for_socket (fd, NULL, &address);
-+  if (transport)
-+    /* DBusTransport takes ownership on success */
-+    _dbus_socket_invalidate (&fd);
-+  else
-+    dbus_set_error (error, DBUS_ERROR_NO_MEMORY, NULL);
-+
-+out:
-+  _DBUS_ASSERT_ERROR_XOR_BOOL (error, transport != NULL);
-+  _dbus_close_socket (fd, NULL);
-+  _dbus_string_free (&address);
-+  return transport;
-+}
-+#endif
-+
- /**
-  * Creates a new transport for the given binary and arguments. This
-  * creates a client-side of a transport. The process will be forked
-@@ -346,6 +393,39 @@ _dbus_transport_open_platform_specific (DBusAddressEntry  *entry,
-           return DBUS_TRANSPORT_OPEN_OK;
-         }
-     }
-+#ifdef DBUS_ENABLE_VSOCK
-+  else if (strcmp (method, "vsock") == 0)
-+    {
-+      const char *cid = dbus_address_entry_get_value (entry, "cid");
-+      const char *port = dbus_address_entry_get_value (entry, "port");
-+
-+      if (cid == NULL)
-+        {
-+          _dbus_set_bad_address (error, NULL, NULL,
-+                                 "Missing vsock CID to connect to");
-+          return DBUS_TRANSPORT_OPEN_BAD_ADDRESS;
-+        }
-+
-+      if (port == NULL)
-+        {
-+          _dbus_set_bad_address (error, NULL, NULL,
-+                                 "Missing vsock port to connect to");
-+          return DBUS_TRANSPORT_OPEN_BAD_ADDRESS;
-+        }
-+
-+      *transport_p = _dbus_transport_new_for_vsock (cid, port, error);
-+      if (*transport_p == NULL)
-+        {
-+          _DBUS_ASSERT_ERROR_IS_SET (error);
-+          return DBUS_TRANSPORT_OPEN_DID_NOT_CONNECT;
-+        }
-+      else
-+        {
-+          _DBUS_ASSERT_ERROR_IS_CLEAR (error);
-+          return DBUS_TRANSPORT_OPEN_OK;
-+        }
-+    }
-+#endif
- #ifdef DBUS_ENABLE_LAUNCHD
-   else if (strcmp (method, "launchd") == 0)
-     {
--- 
-2.42.0
-
diff --git a/pkgs/dbus/0008-test-add-simple-loopback-vsock-test.patch b/pkgs/dbus/0008-test-add-simple-loopback-vsock-test.patch
deleted file mode 100644
index 425945b..0000000
--- a/pkgs/dbus/0008-test-add-simple-loopback-vsock-test.patch
+++ /dev/null
@@ -1,127 +0,0 @@
-From f007236005cf26015e5dcdccb5161b9f2b85d134 Mon Sep 17 00:00:00 2001
-From: =?UTF-8?q?Marc-Andr=C3=A9=20Lureau?= <marcandre.lureau@redhat.com>
-Date: Sat, 9 Jan 2021 22:05:53 +0400
-Subject: [PATCH 8/9] test: add simple loopback vsock: test
-MIME-Version: 1.0
-Content-Type: text/plain; charset=UTF-8
-Content-Transfer-Encoding: 8bit
-SPDX-License-Identifier: GPL-2.0-or-later
-SPDX-FileCopyrightText: 2010-2012 Nokia Corporation
-SPDX-FileCopyrightText: 2013-2015 Collabora Ltd.
-SPDX-FileCopyrightText: The D-Bus Authors
-
-Signed-off-by: Marc-André Lureau <marcandre.lureau@redhat.com>
----
- test/loopback.c        | 40 ++++++++++++++++++++++++++++++++++++++++
- test/test-utils-glib.c | 10 ++++++++++
- test/test-utils-glib.h |  1 +
- 3 files changed, 51 insertions(+)
-
-diff --git a/test/loopback.c b/test/loopback.c
-index f89f5a95..f02ef8d6 100644
---- a/test/loopback.c
-+++ b/test/loopback.c
-@@ -35,6 +35,10 @@
- 
- #include <errno.h>
- #include <string.h>
-+#ifdef DBUS_ENABLE_VSOCK
-+#include <sys/socket.h>
-+#include <linux/vm_sockets.h>
-+#endif
- 
- #include "test-utils-glib.h"
- 
-@@ -107,6 +111,15 @@ setup (Fixture *f,
-       return;
-     }
- 
-+#ifdef DBUS_ENABLE_VSOCK
-+  if ((g_str_has_prefix (addr, "vsock:") &&
-+       !test_check_vsock_works ()))
-+    {
-+      f->skip = TRUE;
-+      return;
-+    }
-+#endif
-+
-   f->server = dbus_server_listen (addr, &f->e);
-   assert_no_error (&f->e);
-   g_assert (f->server != NULL);
-@@ -260,6 +273,28 @@ test_connect (Fixture *f,
-       /* No particular statement about the path here: for that see
-        * setup_runtime() and setup_no_runtime() */
-     }
-+#endif
-+#ifdef DBUS_ENABLE_VSOCK
-+  else if (g_strcmp0 (listening_address, "vsock:") == 0)
-+    {
-+      DBusString addr_str;
-+      const char *cid = dbus_address_entry_get_value (entries[0], "cid");
-+      const char *port = dbus_address_entry_get_value (entries[0], "port");
-+
-+      g_assert_cmpstr (dbus_address_entry_get_method (entries[0]), ==, "vsock");
-+
-+      g_assert_nonnull (cid);
-+      g_assert_cmpstr (cid, ==, "4294967295");
-+      dbus_free (address);
-+      address = NULL;
-+
-+      _dbus_string_init (&addr_str);
-+      _dbus_string_append_printf (&addr_str, "vsock:cid=%u,port=%s",
-+                                  1 /* VMADDR_CID_LOCAL */, port);
-+      _dbus_string_steal_data (&addr_str, &address);
-+      _dbus_string_free (&addr_str);
-+      g_assert_nonnull (address);
-+    }
- #endif
-   else
-     {
-@@ -523,6 +558,11 @@ main (int argc,
-       test_bad_guid, teardown);
- #endif
- 
-+#ifdef DBUS_ENABLE_VSOCK
-+  g_test_add ("/connect/vsock", Fixture, "vsock:", setup,
-+      test_connect, teardown);
-+#endif
-+
-   ret = g_test_run ();
-   dbus_shutdown ();
-   return ret;
-diff --git a/test/test-utils-glib.c b/test/test-utils-glib.c
-index 2aafb03e..de24f685 100644
---- a/test/test-utils-glib.c
-+++ b/test/test-utils-glib.c
-@@ -899,6 +899,16 @@ test_check_tcp_works (void)
- #endif
- }
- 
-+#ifdef DBUS_ENABLE_VSOCK
-+gboolean
-+test_check_vsock_works (void)
-+{
-+  int fd = socket (AF_VSOCK, SOCK_STREAM, 0);
-+  g_close (fd, NULL);
-+  return fd >= 0;
-+}
-+#endif
-+
- /*
-  * Store the result of an async operation. @user_data is a pointer to a
-  * variable that can store @result, initialized to %NULL.
-diff --git a/test/test-utils-glib.h b/test/test-utils-glib.h
-index c4a2c543..d24cb382 100644
---- a/test/test-utils-glib.h
-+++ b/test/test-utils-glib.h
-@@ -131,6 +131,7 @@ backported_g_steal_pointer (gpointer pointer_to_pointer)
- #endif
- 
- gboolean test_check_tcp_works (void);
-+gboolean test_check_vsock_works (void);
- 
- void test_store_result_cb (GObject *source_object,
-                            GAsyncResult *result,
--- 
-2.42.0
-
diff --git a/pkgs/dbus/0009-vsock-add-allow-CIDs.-on-listenable-address.patch b/pkgs/dbus/0009-vsock-add-allow-CIDs.-on-listenable-address.patch
deleted file mode 100644
index cdf096f..0000000
--- a/pkgs/dbus/0009-vsock-add-allow-CIDs.-on-listenable-address.patch
+++ /dev/null
@@ -1,255 +0,0 @@
-From db3dfe2fc8732a5d431c7bf5d07da8e17731b1fa Mon Sep 17 00:00:00 2001
-From: =?UTF-8?q?Marc-Andr=C3=A9=20Lureau?= <marcandre.lureau@redhat.com>
-Date: Thu, 14 Jan 2021 17:30:51 +0400
-Subject: [PATCH 9/9] vsock: add allow=CIDs... on listenable address
-MIME-Version: 1.0
-Content-Type: text/plain; charset=UTF-8
-Content-Transfer-Encoding: 8bit
-SPDX-License-Identifier: AFL-2.1 OR GPL-2.0-or-later
-SPDX-FileCopyrightText: 2002, 2003, 2004, 2006  Red Hat Inc.
-SPDX-FileCopyrightText: The D-Bus Authors
-
-Limit access to peer CID listed in the allow= list.
-
-When several CIDs are given, the comma will need to be percent-encoded.
-
-Signed-off-by: Marc-André Lureau <marcandre.lureau@redhat.com>
----
- dbus/dbus-server-socket.c  | 111 +++++++++++++++++++++++++++++++++++++
- dbus/dbus-server-socket.h  |   1 +
- dbus/dbus-server-unix.c    |   5 +-
- doc/dbus-specification.xml |   8 +++
- 4 files changed, 124 insertions(+), 1 deletion(-)
-
-diff --git a/dbus/dbus-server-socket.c b/dbus/dbus-server-socket.c
-index 074b2dfd..581a231e 100644
---- a/dbus/dbus-server-socket.c
-+++ b/dbus/dbus-server-socket.c
-@@ -32,6 +32,8 @@
- #ifdef DBUS_ENABLE_VSOCK
- #include "dbus-sysdeps.h"
- #include "dbus-sysdeps-unix.h"
-+#include <sys/socket.h>
-+#include <linux/vm_sockets.h>
- #endif
- 
- /**
-@@ -59,6 +61,10 @@ struct DBusServerSocket
-   DBusWatch **watch; /**< File descriptor watch. */
-   char *socket_name; /**< Name of domain socket, to unlink if appropriate */
-   DBusNonceFile *noncefile; /**< Nonce file used to authenticate clients */
-+#ifdef DBUS_ENABLE_VSOCK
-+  int n_allow_cids;   /**< Number of allowed CIDs. */
-+  unsigned int *allow_cids; /**< Allowed CIDs. */
-+#endif
- };
- 
- static void
-@@ -76,6 +82,9 @@ socket_finalize (DBusServer *server)
-         socket_server->watch[i] = NULL;
-       }
- 
-+#ifdef DBUS_ENABLE_VSOCK
-+  dbus_free (socket_server->allow_cids);
-+#endif
-   dbus_free (socket_server->fds);
-   dbus_free (socket_server->watch);
-   dbus_free (socket_server->socket_name);
-@@ -157,6 +166,37 @@ handle_new_client_fd_and_unlock (DBusServer *server,
-   return TRUE;
- }
- 
-+#ifdef DBUS_ENABLE_VSOCK
-+static dbus_bool_t
-+_dbus_server_allow_vsock_client (DBusServerSocket *server, DBusSocket client_fd)
-+{
-+  struct sockaddr_vm sa;
-+  socklen_t len;
-+  int n;
-+
-+  if (server->n_allow_cids == 0)
-+    return TRUE;
-+
-+  _DBUS_ZERO (sa);
-+  len = sizeof (sa);
-+  if (getpeername (_dbus_socket_get_int (client_fd), (struct sockaddr *)&sa, &len) < 0)
-+    {
-+      int saved_errno;
-+      saved_errno = _dbus_save_socket_errno ();
-+      _dbus_verbose ("Failed to getpeername(): %s\n", _dbus_strerror (saved_errno));
-+      return FALSE;
-+    }
-+
-+    for (n = 0; n < server->n_allow_cids; n++)
-+      {
-+        if (server->allow_cids[n] == sa.svm_cid)
-+          return TRUE;
-+      }
-+
-+    return FALSE;
-+}
-+#endif
-+
- static dbus_bool_t
- socket_handle_watch (DBusWatch    *watch,
-                    unsigned int  flags,
-@@ -196,6 +236,14 @@ socket_handle_watch (DBusWatch    *watch,
-       else 
-           client_fd = _dbus_accept (listen_fd);
- 
-+#ifdef DBUS_ENABLE_VSOCK
-+      if (!_dbus_server_allow_vsock_client (socket_server, client_fd))
-+        {
-+          _dbus_close_socket (client_fd, NULL);
-+          _dbus_socket_invalidate (&client_fd);
-+        }
-+#endif
-+
-       saved_errno = _dbus_save_socket_errno ();
- 
-       if (!_dbus_socket_is_valid (client_fd))
-@@ -400,19 +448,76 @@ failed:
- }
- 
- #ifdef DBUS_ENABLE_VSOCK
-+static dbus_bool_t
-+_dbus_vsock_parse_cid_list (const char *list,
-+                            unsigned int **ret_list_cids,
-+                            int *ret_n_list_cids,
-+                            DBusError *error)
-+{
-+  DBusString list_str;
-+  unsigned int *list_cids = NULL;
-+  int n = 0;
-+  int pos;
-+  int end;
-+
-+  _DBUS_ASSERT_ERROR_IS_CLEAR (error);
-+
-+  if (!list)
-+    goto end;
-+
-+  // over-allocate
-+  end = strlen (list);
-+  list_cids = dbus_new0 (unsigned int, end);
-+
-+  _dbus_string_init_const (&list_str, list);
-+  for (pos = 0, n = 0; pos < end; ) {
-+    unsigned long val;
-+
-+    if (!_dbus_string_parse_uint (&list_str, pos, &val, &pos) ||
-+        val > _DBUS_UINT32_MAX ||
-+        (list[pos] && list[pos] != ','))
-+      {
-+        dbus_set_error (error,
-+                        DBUS_ERROR_BAD_ADDRESS,
-+                        "Failed to parse VSOCK CID list '%s'", list);
-+        dbus_free (list_cids);
-+        return FALSE;
-+      }
-+
-+    list_cids[n++] = val;
-+    pos++;
-+  }
-+
-+end:
-+  *ret_list_cids = list_cids;
-+  *ret_n_list_cids = n;
-+
-+  return TRUE;
-+}
-+
- DBusServer *
- _dbus_server_new_for_vsock (const char       *cid,
-                             const char       *port,
-+                            const char       *allow,
-                             DBusError        *error)
- {
-   DBusServer *server = NULL;
-+  DBusServerSocket *server_socket = NULL;
-   DBusSocket listen_fd = DBUS_SOCKET_INIT;
-   DBusString address = _DBUS_STRING_INIT_INVALID;
-   DBusString cid_str = _DBUS_STRING_INIT_INVALID;
-   DBusString port_str = _DBUS_STRING_INIT_INVALID;
-+  unsigned int *allow_cids = NULL;
-+  int n_allow_cids = 0;
- 
-   _DBUS_ASSERT_ERROR_IS_CLEAR (error);
- 
-+  if (!_dbus_vsock_parse_cid_list (allow, &allow_cids, &n_allow_cids, error))
-+    {
-+      _DBUS_ASSERT_ERROR_IS_SET (error);
-+      goto out;
-+    }
-+
-   if (!_dbus_string_init (&address) ||
-       !_dbus_string_init (&cid_str) ||
-       !_dbus_string_init (&port_str))
-@@ -441,11 +546,17 @@ _dbus_server_new_for_vsock (const char       *cid,
-   if (server)
-     _dbus_socket_invalidate (&listen_fd);
- 
-+  server_socket = (DBusServerSocket *)server;
-+  server_socket->n_allow_cids = n_allow_cids;
-+  server_socket->allow_cids = allow_cids;
-+  allow_cids = NULL;
-+
- out:
-   _dbus_close_socket (listen_fd, NULL);
-   _dbus_string_free (&cid_str);
-   _dbus_string_free (&port_str);
-   _dbus_string_free (&address);
-+  dbus_free (allow_cids);
-   return server;
- }
- #endif
-diff --git a/dbus/dbus-server-socket.h b/dbus/dbus-server-socket.h
-index d2461148..62b61aac 100644
---- a/dbus/dbus-server-socket.h
-+++ b/dbus/dbus-server-socket.h
-@@ -36,6 +36,7 @@ DBusServer* _dbus_server_new_for_socket           (DBusSocket       *fds,
-                                                    DBusError        *error);
- DBusServer* _dbus_server_new_for_vsock            (const char       *cid,
-                                                    const char       *port,
-+                                                   const char       *allow,
-                                                    DBusError        *error);
- DBusServer* _dbus_server_new_for_autolaunch       (const DBusString *address,
-                                                    DBusError        *error);
-diff --git a/dbus/dbus-server-unix.c b/dbus/dbus-server-unix.c
-index 0f34fa8e..1809cecc 100644
---- a/dbus/dbus-server-unix.c
-+++ b/dbus/dbus-server-unix.c
-@@ -293,7 +293,10 @@ _dbus_server_listen_platform_specific (DBusAddressEntry *entry,
-     {
-       const char *vsock_cid_var = dbus_address_entry_get_value (entry, "cid");
-       const char *vsock_port_var = dbus_address_entry_get_value (entry, "port");
--      *server_p = _dbus_server_new_for_vsock (vsock_cid_var, vsock_port_var, error);
-+      const char *vsock_allow_var = dbus_address_entry_get_value (entry, "allow");
-+
-+      *server_p = _dbus_server_new_for_vsock (vsock_cid_var, vsock_port_var,
-+                                              vsock_allow_var, error);
- 
-       if (*server_p != NULL)
-         {
-diff --git a/doc/dbus-specification.xml b/doc/dbus-specification.xml
-index 775928c0..25dab7af 100644
---- a/doc/dbus-specification.xml
-+++ b/doc/dbus-specification.xml
-@@ -3740,6 +3740,14 @@
-               port numbers.
-              </entry>
-            </row>
-+           <row>
-+             <entry>allow</entry>
-+             <entry>(comma-separated 32 bits unsigned numbers)</entry>
-+             <entry>
-+               Used on listenable address, to configure the list of allowed peer
-+               CID. If unset, all CID peers are allowed to connect.
-+             </entry>
-+           </row>
-           </tbody>
-          </tgroup>
-         </informaltable>
--- 
-2.42.0
-
diff --git a/pkgs/dbus/default.nix b/pkgs/dbus/default.nix
deleted file mode 100644
index a17ffb9..0000000
--- a/pkgs/dbus/default.nix
+++ /dev/null
@@ -1,25 +0,0 @@
-# SPDX-FileCopyrightText: 2024 Alyssa Ross <hi@alyssa.is>
-# SPDX-License-Identifier: MIT
-
-import ../../lib/overlay-package.nix [ "dbus" ] ({ final, super }:
-
-super.dbus.overrideAttrs ({ configureFlags ? [], patches ? [], ... }: {
-  patches = patches ++ [
-    # https://gitlab.freedesktop.org/dbus/dbus/-/merge_requests/200
-    ./0001-doc-add-vsock-address-format-to-the-spec.patch
-    ./0002-build-sys-add-enable-vsock-option.patch
-    ./0003-unix-add-vsock-support-to-_dbus_append_address_from_.patch
-    ./0004-dbus-add-_dbus_listen_vsock.patch
-    ./0005-dbus-add-vsock-server-support.patch
-    ./0006-dbus-add-_dbus_connect_vsock.patch
-    ./0007-dbus-add-vsock-client-support.patch
-    ./0008-test-add-simple-loopback-vsock-test.patch
-    ./0009-vsock-add-allow-CIDs.-on-listenable-address.patch
-  ];
-
-  configureFlags = configureFlags ++ [
-    "--enable-vsock"
-  ];
-
-  separateDebugInfo = true;
-}))
diff --git a/pkgs/overlay.nix b/pkgs/overlay.nix
index 2987e7c..55cb00c 100644
--- a/pkgs/overlay.nix
+++ b/pkgs/overlay.nix
@@ -3,6 +3,4 @@
 
 (final: super: {
   cloud-hypervisor = import ./cloud-hypervisor { inherit final super; };
-
-  dbus = import ./dbus { inherit final super; };
 })
-- 
2.51.0


  parent reply	other threads:[~2025-11-13 11:10 UTC|newest]

Thread overview: 15+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2025-11-13 11:10 [PATCH 1/3] img/app: move init to /usr/bin Alyssa Ross
2025-11-13 11:10 ` [PATCH 2/3] img/app: dbus: don't listen on VSOCK Alyssa Ross
2025-11-13 17:46   ` Demi Marie Obenour
2025-11-13 17:56     ` Alyssa Ross
2025-11-13 19:32       ` Demi Marie Obenour
2025-11-14 11:45         ` Alyssa Ross
2025-11-14 22:15           ` Demi Marie Obenour
2025-11-17 22:08           ` Demi Marie Obenour
2025-11-17 22:19   ` Demi Marie Obenour
2025-11-18 15:03   ` Alyssa Ross
2025-11-13 11:10 ` Alyssa Ross [this message]
2025-11-17 22:13   ` [PATCH 3/3] pkgs: remove dbus overlay Demi Marie Obenour
2025-11-18 15:03   ` Alyssa Ross
2025-11-17 22:07 ` [PATCH 1/3] img/app: move init to /usr/bin Demi Marie Obenour
2025-11-18 15:03 ` Alyssa Ross

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=20251113111038.39098-3-hi@alyssa.is \
    --to=hi@alyssa.is \
    --cc=devel@spectrum-os.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.
Code repositories for project(s) associated with this public inbox

	https://spectrum-os.org/git/crosvm
	https://spectrum-os.org/git/doc
	https://spectrum-os.org/git/mktuntap
	https://spectrum-os.org/git/nixpkgs
	https://spectrum-os.org/git/spectrum
	https://spectrum-os.org/git/ucspi-vsock
	https://spectrum-os.org/git/www

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).