Hi!

Please find attached the patch I made to fix this issue.

It moves the DCE RPC binaries in /usr/libexec/samba into their own package
along with required libs from the samba package creating the
samba-libexec-dcerpc package, and makes samba and winbind depend on it,
thus solving all the issues.

Michael, could you please incorporate this in the sid samba packages you
have created?

Kind Regards,

Matt Grant

On Fri, 3 Jun 2022 at 20:12, Michael Tokarev <m...@tls.msk.ru> wrote:

> 03.06.2022 04:00, Matt Grant wrote:
> > Hi!
> >
> > May be best to move the contents of /usr/libexec/samba to samba-libs.
>
> No, definitely not. A library is a library, it is multiarch and different
> arch must be co-installable.
>
> It might be more appropriate to move these executables to samba-common-bin
> as I already mentioned.
>
> But before that I need to understand how/when they're used.  Maybe some day
> I will find a time to dig into the code to understand this...
>
> /mjt
>
diff --git a/debian/control b/debian/control
index bfb2839a0a7..5d013c508af 100644
--- a/debian/control
+++ b/debian/control
@@ -91,6 +91,7 @@ Depends: adduser,
          python3-samba,
          samba-common (= ${source:Version}),
          samba-common-bin (=${binary:Version}),
+         samba-libexec-dcerpc (=${binary:Version}),
          tdb-tools,
          ${misc:Depends},
          ${python3:Depends},
@@ -143,6 +144,22 @@ Description: Samba core libraries
  .
  This package contains the shared libraries.
 
+Package: samba-libexec-dcerpc
+Pre-Depends: ${misc:Pre-Depends}
+Multi-Arch: same
+Architecture: any
+Section: libs
+Depends: ${misc:Depends}, ${shlibs:Depends}
+Breaks: samba (<= 2:4.16.1+dfsg-8~)
+Description: Samba core libexec needed for winbind and samba
+ Samba is an implementation of the SMB/CIFS protocol for Unix systems,
+ providing support for cross-platform file sharing with Microsoft Windows, OS X,
+ and other Unix systems.  Samba can also function as a domain controller
+ or member server in both NT4-style and Active Directory domains.
+ .
+ This package contains the libexec binaries and shared libraries needed for
+ winbind to resolve getgroups(3) information, and for smbd's use.
+
 Package: samba-common
 Architecture: all
 Multi-Arch: foreign
@@ -344,6 +361,7 @@ Multi-Arch: allowed
 Depends: lsb-base (>= 3.0-6),
          samba-common (= ${source:Version}),
          samba-common-bin (=${binary:Version}),
+         samba-libexec-dcerpc (=${binary:Version}),
          ${misc:Depends},
          ${shlibs:Depends}
 Enhances: libkrb5-26-heimdal
diff --git a/debian/samba-libexec-dcerpc.install b/debian/samba-libexec-dcerpc.install
new file mode 100644
index 00000000000..f7726df8b5d
--- /dev/null
+++ b/debian/samba-libexec-dcerpc.install
@@ -0,0 +1,11 @@
+usr/libexec/samba/samba-dcerpcd
+usr/libexec/samba/rpcd_lsad
+usr/libexec/samba/rpcd_classic
+usr/libexec/samba/rpcd_epmapper
+usr/libexec/samba/rpcd_fsrvp
+usr/libexec/samba/rpcd_mdssvc
+usr/libexec/samba/rpcd_rpcecho
+usr/libexec/samba/rpcd_spoolss
+usr/libexec/samba/rpcd_winreg
+usr/lib/*/samba/libRPC-SERVER-LOOP-samba4.so.0
+usr/lib/*/samba/libREG-FULL-samba4.so.0
diff --git a/debian/samba-libs.install b/debian/samba-libs.install
index 84792d5221e..57dad2ed8e2 100644
--- a/debian/samba-libs.install
+++ b/debian/samba-libs.install
@@ -25,7 +25,6 @@ usr/lib/*/samba/libCHARSET3-samba4.so.0
 usr/lib/*/samba/libLIBWBCLIENT-OLD-samba4.so.0
 usr/lib/*/samba/libMESSAGING-SEND-samba4.so.0
 usr/lib/*/samba/libMESSAGING-samba4.so.0
-usr/lib/*/samba/libRPC-SERVER-LOOP-samba4.so.0
 usr/lib/*/samba/libaddns-samba4.so.0
 usr/lib/*/samba/libads-samba4.so.0
 usr/lib/*/samba/libasn1-samba4.so.0
@@ -122,5 +121,6 @@ usr/lib/*/samba/libutil-setid-samba4.so.0
 usr/lib/*/samba/libutil-tdb-samba4.so.0
 usr/lib/*/samba/libwind-samba4.so.0
 usr/lib/*/samba/libxattr-tdb-samba4.so.0
+usr/lib/*/samba/libRPC-WORKER-samba4.so.0
 usr/lib/*/samba/process_model/*.so
 usr/share/man/man8/idmap_rfc2307.8
diff --git a/debian/samba.install b/debian/samba.install
index 55b3227d34f..dc6e77d447b 100755
--- a/debian/samba.install
+++ b/debian/samba.install
@@ -12,16 +12,12 @@ usr/bin/sharesec
 usr/bin/smbcontrol
 usr/bin/smbstatus
 usr/lib/*/samba/libHDB-SAMBA4-samba4.so.0
-usr/lib/*/samba/libREG-FULL-samba4.so.0
-usr/lib/*/samba/libRPC-WORKER-samba4.so.0
 usr/lib/*/samba/libgss-preauth-samba4.so.0
 usr/lib/*/samba/libhdb-samba4.so.0
 usr/lib/*/samba/libkdc-samba4.so.0
 usr/lib/*/samba/libmscat-samba4.so.0
 usr/lib/*/samba/libpac-samba4.so.0
-usr/libexec/samba/rpcd_*
 usr/libexec/samba/samba-bgqd
-usr/libexec/samba/samba-dcerpcd
 usr/lib/*/samba/service/*.so
 usr/sbin/eventlogadm
 usr/sbin/mksmbpasswd

Reply via email to