mirror of
https://abf.rosa.ru/djam/samba.git
synced 2025-02-23 17:12:48 +00:00
update to 4.9.4 (alpha build)
This commit is contained in:
parent
9e0e0c0a0f
commit
74184adaa9
12 changed files with 355 additions and 58 deletions
4
.abf.yml
4
.abf.yml
|
@ -1,4 +1,4 @@
|
|||
sources:
|
||||
samba-pubkey.asc: 7a27a6974cc0ec939d50fcb1591aa754c4b4b0bf
|
||||
samba-4.6.14.tar.gz: 08fc851957e18428a0fc76f0e4aa7044b509aa0a
|
||||
samba-4.6.14.tar.asc: ded9eaa8924fa30838e869d21e8e44b31be7f68b
|
||||
samba-4.9.4.tar.gz: 7f8e15709e03e52d14bd9c85dd717366c106993f
|
||||
samba-4.9.4.tar.asc: e2562084ae84516a91c5f1477085d80e21d275a4
|
||||
|
|
|
@ -0,0 +1,52 @@
|
|||
From cbdbf5e6e26017084fab0a6f6bd5ad495775fc31 Mon Sep 17 00:00:00 2001
|
||||
From: Stefan Metzmacher <metze@samba.org>
|
||||
Date: Wed, 19 Dec 2018 09:38:33 +0100
|
||||
Subject: [PATCH] s3:auth: ignore create_builtin_guests() failing without a
|
||||
valid idmap configuration
|
||||
|
||||
This happens on standalone servers, where winbindd is automatically
|
||||
started by init scripts if it's installed. But it's not really
|
||||
used and may not have a valid idmap configuration (
|
||||
"idmap config * : range" has no default!)
|
||||
|
||||
BUG: https://bugzilla.samba.org/show_bug.cgi?id=13697
|
||||
|
||||
Signed-off-by: Stefan Metzmacher <metze@samba.org>
|
||||
Reviewed-by: Alexander Bokovoy <ab@samba.org>
|
||||
(cherry picked from commit 865538fabaea33741f5fa542dbc3f2e08308c2c1)
|
||||
---
|
||||
source3/auth/token_util.c | 18 +++++++++++++++++-
|
||||
1 file changed, 17 insertions(+), 1 deletion(-)
|
||||
|
||||
diff --git a/source3/auth/token_util.c b/source3/auth/token_util.c
|
||||
index f5b0e694433..ee38d6c9645 100644
|
||||
--- a/source3/auth/token_util.c
|
||||
+++ b/source3/auth/token_util.c
|
||||
@@ -745,7 +745,23 @@ NTSTATUS finalize_local_nt_token(struct security_token *result,
|
||||
status = create_builtin_guests(domain_sid);
|
||||
unbecome_root();
|
||||
|
||||
- if (NT_STATUS_EQUAL(status, NT_STATUS_PROTOCOL_UNREACHABLE)) {
|
||||
+ /*
|
||||
+ * NT_STATUS_PROTOCOL_UNREACHABLE:
|
||||
+ * => winbindd is not running.
|
||||
+ *
|
||||
+ * NT_STATUS_ACCESS_DENIED:
|
||||
+ * => no idmap config at all
|
||||
+ * and wbint_AllocateGid()/winbind_allocate_gid()
|
||||
+ * failed.
|
||||
+ *
|
||||
+ * NT_STATUS_NO_SUCH_GROUP:
|
||||
+ * => no idmap config at all and
|
||||
+ * "tdbsam:map builtin = no" means
|
||||
+ * wbint_Sids2UnixIDs() fails.
|
||||
+ */
|
||||
+ if (NT_STATUS_EQUAL(status, NT_STATUS_PROTOCOL_UNREACHABLE) ||
|
||||
+ NT_STATUS_EQUAL(status, NT_STATUS_ACCESS_DENIED) ||
|
||||
+ NT_STATUS_EQUAL(status, NT_STATUS_NO_SUCH_GROUP)) {
|
||||
/*
|
||||
* Add BUILTIN\Guests directly to token.
|
||||
* But only if the token already indicates
|
||||
--
|
||||
2.19.2
|
||||
|
|
@ -1,5 +1,5 @@
|
|||
--- third_party/aesni-intel/wscript.orig 2017-09-17 19:15:34 UTC
|
||||
+++ third_party/aesni-intel/wscript
|
||||
--- a/third_party/aesni-intel/wscript.orig 2017-09-17 19:15:34 UTC
|
||||
+++ b/third_party/aesni-intel/wscript
|
||||
@@ -4,14 +4,19 @@ import Utils
|
||||
|
||||
def configure(conf):
|
||||
|
|
83
OpenBSD-Follow-shared-libs-policy.patch
Normal file
83
OpenBSD-Follow-shared-libs-policy.patch
Normal file
|
@ -0,0 +1,83 @@
|
|||
From 43b6d6207d68aa8f884d551324554d05281dbde6 Mon Sep 17 00:00:00 2001
|
||||
From: Mikhail Novosyolov <m.novosyolov@rosalinux.ru>
|
||||
Date: Thu, 24 Jan 2019 02:25:23 +0300
|
||||
Subject: [PATCH] Follow shared libs policy
|
||||
|
||||
Based on https://bugzilla.samba.org/show_bug.cgi?id=9774
|
||||
|
||||
"On OpenBSD, shared libraries (not "plugins", but those who get linked in) should have the following name scheme:
|
||||
libNAME.so.MAJOR.MINOR
|
||||
It's also permitted, but highly discouraged to have libNAME.so links pointing to the "versioned" file.
|
||||
There was done a lot of work on autotools to fix this. And now Samba4 is using WAF, which does not respect those requirements. Also, new build system does not allow for packager to control shared object's version. Yes, WAF tries to do it's best to control ABI... but it is a must to have such control anyway. On OpenBSD the convention is to use environment variables like LIBfoo_VERSION=MAJOR.MINOR to set SO version to 0.0 for library "foo", and therefore result in libfoo.so.0.0.
|
||||
Of course, I do not want to force Samba project doing that work, but I'm just asking, what could be tuned to change the scheme? I grepped different things in buildtools/ directory for a few hours but still did not get where does versioning happen."
|
||||
---
|
||||
buildtools/wafsamba/samba_install.py | 6 +++---
|
||||
buildtools/wafsamba/wafsamba.py | 12 ++++++++++--
|
||||
2 files changed, 13 insertions(+), 5 deletions(-)
|
||||
|
||||
diff --git a/buildtools/wafsamba/samba_install.py b/buildtools/wafsamba/samba_install.py
|
||||
index 21035bf29db..45a73fa525c 100644
|
||||
--- a/buildtools/wafsamba/samba_install.py
|
||||
+++ b/buildtools/wafsamba/samba_install.py
|
||||
@@ -117,11 +117,15 @@ def install_library(self):
|
||||
else:
|
||||
inst_name = bld.make_libname(t.target)
|
||||
elif self.vnum:
|
||||
+ import sys
|
||||
vnum_base = self.vnum.split('.')[0]
|
||||
install_name = bld.make_libname(target_name, version=self.vnum)
|
||||
- install_link = bld.make_libname(target_name, version=vnum_base)
|
||||
- inst_name = bld.make_libname(t.target)
|
||||
- if not self.private_library:
|
||||
+ if sys.platform.startswith('linux'):
|
||||
+ install_link = install_name
|
||||
+ else:
|
||||
+ install_link = bld.make_libname(target_name, version=vnum_base)
|
||||
+ inst_name = bld.make_libname(t.target, version=self.vnum)
|
||||
+ if not self.private_library and not sys.platform.startswith('linux'):
|
||||
# only generate the dev link for non-bundled libs
|
||||
dev_link = bld.make_libname(target_name)
|
||||
elif getattr(self, 'soname', ''):
|
||||
@@ -171,7 +175,7 @@ def apply_vscript(self):
|
||||
'''add version-script arguments to library build'''
|
||||
|
||||
if self.env.HAVE_LD_VERSION_SCRIPT and getattr(self, 'version_script', ''):
|
||||
- self.env.append_value('LINKFLAGS', "-Wl,--version-script=%s" %
|
||||
+ self.env.append_unique('LINKFLAGS', "-Wl,--version-script=%s" %
|
||||
self.version_script)
|
||||
self.version_script = None
|
||||
|
||||
diff --git a/buildtools/wafsamba/wafsamba.py b/buildtools/wafsamba/wafsamba.py
|
||||
index 12d5421c4a6..56b7e2aace7 100644
|
||||
--- a/buildtools/wafsamba/wafsamba.py
|
||||
+++ b/buildtools/wafsamba/wafsamba.py
|
||||
@@ -219,6 +219,14 @@ def SAMBA_LIBRARY(bld, libname, source,
|
||||
deps = TO_LIST(deps)
|
||||
deps.append(obj_target)
|
||||
|
||||
+ saved_lib_version = vnum
|
||||
+ osvnum = os.getenv('LIB' + libname.replace('-', '_') + '_VERSION')
|
||||
+ if osvnum:
|
||||
+ vnum = osvnum
|
||||
+ if realname: realname = re.sub(r'(\.[0-9]+)+$', '.' + osvnum, realname)
|
||||
+ if link_name: link_name = re.sub(r'(\.[0-9]+)+$', '.' + osvnum, link_name)
|
||||
+ if soname: soname = re.sub(r'(\.[0-9]+)+$', '.' + osvnum, soname)
|
||||
+
|
||||
realname = bld.map_shlib_extension(realname, python=(target_type=='PYTHON'))
|
||||
link_name = bld.map_shlib_extension(link_name, python=(target_type=='PYTHON'))
|
||||
|
||||
@@ -331,9 +339,9 @@ def SAMBA_LIBRARY(bld, libname, source,
|
||||
|
||||
if pc_files is not None and not private_library:
|
||||
if pyembed and bld.env['IS_EXTRA_PYTHON']:
|
||||
- bld.PKG_CONFIG_FILES(pc_files, vnum=vnum, extra_name=bld.env['PYTHON_SO_ABI_FLAG'])
|
||||
+ bld.PKG_CONFIG_FILES(pc_files, vnum=saved_lib_version, extra_name=bld.env['PYTHON_SO_ABI_FLAG'])
|
||||
else:
|
||||
- bld.PKG_CONFIG_FILES(pc_files, vnum=vnum)
|
||||
+ bld.PKG_CONFIG_FILES(pc_files, vnum=saved_lib_version)
|
||||
|
||||
if (manpages is not None and 'XSLTPROC_MANPAGES' in bld.env and
|
||||
bld.env['XSLTPROC_MANPAGES']):
|
||||
--
|
||||
2.17.1
|
||||
|
26
OpenBSD-Lock-order-violation.patch
Normal file
26
OpenBSD-Lock-order-violation.patch
Normal file
|
@ -0,0 +1,26 @@
|
|||
From 3749e2253f5eec9adc61aadb48ae7ddb4be43d3a Mon Sep 17 00:00:00 2001
|
||||
From: Mikhail Novosyolov <m.novosyolov@rosalinux.ru>
|
||||
Date: Thu, 24 Jan 2019 01:29:06 +0300
|
||||
Subject: [PATCH] Lock order violation
|
||||
|
||||
Workaround/fix for https://bugzilla.samba.org/show_bug.cgi?id=11761
|
||||
---
|
||||
source3/modules/vfs_acl_tdb.c | 2 +-
|
||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||
|
||||
diff --git a/source3/modules/vfs_acl_tdb.c b/source3/modules/vfs_acl_tdb.c
|
||||
index bb69170c910..5ff26692328 100644
|
||||
--- a/source3/modules/vfs_acl_tdb.c
|
||||
+++ b/source3/modules/vfs_acl_tdb.c
|
||||
@@ -59,7 +59,7 @@ static bool acl_tdb_init(void)
|
||||
|
||||
become_root();
|
||||
acl_db = db_open(NULL, dbname, 0, TDB_DEFAULT, O_RDWR|O_CREAT, 0600,
|
||||
- DBWRAP_LOCK_ORDER_1, DBWRAP_FLAG_NONE);
|
||||
+ DBWRAP_LOCK_ORDER_2, DBWRAP_FLAG_NONE);
|
||||
unbecome_root();
|
||||
|
||||
if (acl_db == NULL) {
|
||||
--
|
||||
2.17.1
|
||||
|
30
OpenBSD-Make-arguements-to-WAF.patch
Normal file
30
OpenBSD-Make-arguements-to-WAF.patch
Normal file
|
@ -0,0 +1,30 @@
|
|||
From 500239325088b475dd52cf40cfe9ded242f759ac Mon Sep 17 00:00:00 2001
|
||||
From: Mikhail Novosyolov <m.novosyolov@rosalinux.ru>
|
||||
Date: Thu, 24 Jan 2019 00:53:54 +0300
|
||||
Subject: [PATCH] Make arguements to WAF
|
||||
|
||||
With this patch, it becomes easy to call WAF with additional arguments. This ability is quiet handy in automated environments that are already oriented on Makefile framework.
|
||||
|
||||
Author: Vadim Zhukov, OpenBSD
|
||||
https://bugzilla.samba.org/show_bug.cgi?id=9886
|
||||
---
|
||||
Makefile | 3 ++-
|
||||
1 file changed, 2 insertions(+), 1 deletion(-)
|
||||
|
||||
diff --git a/Makefile b/Makefile
|
||||
index 5cc90771000..a91be074e5e 100644
|
||||
--- a/Makefile
|
||||
+++ b/Makefile
|
||||
@@ -2,7 +2,8 @@
|
||||
|
||||
PYTHON?=python
|
||||
WAF_BINARY=$(PYTHON) ./buildtools/bin/waf
|
||||
-WAF=WAF_MAKE=1 $(WAF_BINARY)
|
||||
+WAF_ARGS?=
|
||||
+WAF=WAF_MAKE=1 $(WAF_BINARY) $(WAF_ARGS)
|
||||
|
||||
all:
|
||||
$(WAF) build
|
||||
--
|
||||
2.17.1
|
||||
|
33
OpenBSD-Reverse-order-of-paths-added.patch
Normal file
33
OpenBSD-Reverse-order-of-paths-added.patch
Normal file
|
@ -0,0 +1,33 @@
|
|||
From 66fa8e15ab47a6569e639f6c1e8d46f0cfa465c8 Mon Sep 17 00:00:00 2001
|
||||
From: Vadim Zhukov <persgray@gmail.com>
|
||||
Date: Fri, 17 May 2013 12:51:03 +0400
|
||||
Subject: [PATCH] Reverse order of paths added to get more reliable builds
|
||||
|
||||
When processing configure time checks, there is a Samba-specific hook activated for each check being made. This hooks looks into CPPPATH and LIBPATH, and, if the default path supplied by configure option does not present there, adds those to respective lists in those variables. I do not know, why, but new paths are prepended to this list instead of being appended to it. As a result, the results of previous configure checks are not reliable anymore, because they were made in a different environment, not looking at the directories added later. This could (and break) some setups, especially on *BSD, when base system and additional packages install headers and/or libraries with the same name.
|
||||
|
||||
The patch below reverses the order of paths being appended. I suspect this could be wrong, because this seems an obvious decision for initial implementation, but there are no comments in the code describing the reasons to do this either way.
|
||||
|
||||
BUG: https://bugzilla.samba.org/show_bug.cgi?id=9890
|
||||
---
|
||||
buildtools/wafsamba/samba_conftests.py | 4 ++--
|
||||
1 file changed, 2 insertions(+), 2 deletions(-)
|
||||
|
||||
diff --git a/buildtools/wafsamba/samba_conftests.py b/buildtools/wafsamba/samba_conftests.py
|
||||
index ec98ba0..560d939 100644
|
||||
--- a/buildtools/wafsamba/samba_conftests.py
|
||||
+++ b/buildtools/wafsamba/samba_conftests.py
|
||||
@@ -39,9 +39,9 @@ def check(self, *k, **kw):
|
||||
def add_options_dir(dirs, env):
|
||||
for x in dirs:
|
||||
if not x in env.CPPPATH:
|
||||
- env.CPPPATH = [os.path.join(x, 'include')] + env.CPPPATH
|
||||
+ env.CPPPATH = env.CPPPATH + [os.path.join(x, 'include')]
|
||||
if not x in env.LIBPATH:
|
||||
- env.LIBPATH = [os.path.join(x, 'lib')] + env.LIBPATH
|
||||
+ env.LIBPATH = env.LIBPATH + [os.path.join(x, 'lib')]
|
||||
|
||||
add_options_dir(additional_dirs, kw['env'])
|
||||
|
||||
--
|
||||
1.8.2.2
|
||||
|
37
ROSA-bind-GID.patch
Normal file
37
ROSA-bind-GID.patch
Normal file
|
@ -0,0 +1,37 @@
|
|||
From 371e987689d16074e43fb9f23e775120513f1d7c Mon Sep 17 00:00:00 2001
|
||||
From: Mikhail Novosyolov <m.novosyolov@rosalinux.ru>
|
||||
Date: Thu, 24 Jan 2019 01:21:29 +0300
|
||||
Subject: [PATCH] ROSA bind GID
|
||||
|
||||
ROSA's bind package must have user group 'named' by default
|
||||
(package bind-9.11.4-P1-1 does not have it, but I'll make it have it)
|
||||
|
||||
diff --git a/python/samba/provision/__init__.py b/python/samba/provision/__init__.py
|
||||
index 066411ab8d7..1820d460360 100644
|
||||
--- a/python/samba/provision/__init__.py
|
||||
+++ b/python/samba/provision/__init__.py
|
||||
@@ -2128,7 +2128,8 @@ def provision(logger, session_info, smbconf=None,
|
||||
root_gid = pwd.getpwuid(root_uid).pw_gid
|
||||
|
||||
try:
|
||||
- bind_gid = findnss_gid(["bind", "named"])
|
||||
+ # ROSA's bind package must have user group 'named' by default (package 9.11.4-P1-1 does not have it, but I'll make it have it)
|
||||
+ bind_gid = findnss_gid(["named", "bind"])
|
||||
except KeyError:
|
||||
bind_gid = None
|
||||
|
||||
--- a/source4/scripting/bin/samba_upgradedns
|
||||
+++ b/source4/scripting/bin/samba_upgradedns
|
||||
@@ -77,7 +77,7 @@ __docformat__ = 'restructuredText'
|
||||
def find_bind_gid():
|
||||
"""Find system group id for bind9
|
||||
"""
|
||||
- for name in ["bind", "named"]:
|
||||
+ for name in ["named", "bind"]:
|
||||
try:
|
||||
return grp.getgrnam(name)[2]
|
||||
except KeyError:
|
||||
|
||||
--
|
||||
2.17.1
|
||||
|
27
ROSA-vendor-version.patch
Normal file
27
ROSA-vendor-version.patch
Normal file
|
@ -0,0 +1,27 @@
|
|||
From dfac5d88745bd89884dc5b2f2dccceb2f73392fb Mon Sep 17 00:00:00 2001
|
||||
From: Mikhail Novosyolov <m.novosyolov@rosalinux.ru>
|
||||
Date: Thu, 24 Jan 2019 02:21:58 +0300
|
||||
Subject: [PATCH] ROSA vendor version
|
||||
|
||||
---
|
||||
VERSION | 7 +++++--
|
||||
1 file changed, 5 insertions(+), 2 deletions(-)
|
||||
|
||||
diff --git a/VERSION b/VERSION
|
||||
index 7efe718ebbf..fd582b9fc18 100644
|
||||
--- a/VERSION
|
||||
+++ b/VERSION
|
||||
@@ -123,5 +123,8 @@ SAMBA_VERSION_RELEASE_NICKNAME=
|
||||
# -> "3.0.0rc2-VendorVersion" #
|
||||
# #
|
||||
########################################################
|
||||
-SAMBA_VERSION_VENDOR_SUFFIX=
|
||||
-SAMBA_VERSION_VENDOR_PATCH=
|
||||
+# Examples:
|
||||
+# SAMBA_VERSION_VENDOR_SUFFIX=ROSA
|
||||
+# SAMBA_VERSION_VENDOR_PATCH=rosa2016.1_4.9.4_1 (distro_packageVersion_packageRelease)
|
||||
+SAMBA_VERSION_VENDOR_SUFFIX=ROSA
|
||||
+SAMBA_VERSION_VENDOR_PATCH=@ROSA_VENDOR_PATCH@
|
||||
--
|
||||
2.17.1
|
||||
|
|
@ -1,11 +1,11 @@
|
|||
diff -urN samba-4.3.11/packaging/systemd/winbind.service samba-4.3.11-patched/packaging/systemd/winbind.service
|
||||
--- samba-4.3.11/packaging/systemd/winbind.service 2016-06-14 17:37:36.000000000 +1000
|
||||
+++ samba-4.3.11-patched/packaging/systemd/winbind.service 2016-07-24 17:09:25.124316862 +1000
|
||||
@@ -1,6 +1,7 @@
|
||||
--- a/packaging/systemd/winbind.service.in.orig 2019-01-14 22:21:05.446405666 +0300
|
||||
+++ b/packaging/systemd/winbind.service.in 2019-01-14 22:22:12.208373529 +0300
|
||||
@@ -1,7 +1,8 @@
|
||||
[Unit]
|
||||
Description=Samba Winbind Daemon
|
||||
-After=syslog.target network.target nmb.service
|
||||
+After=syslog.target network-online.target time-sync.target nmb.service
|
||||
Documentation=man:winbindd(8) man:samba(7) man:smb.conf(5)
|
||||
-After=network.target nmb.service
|
||||
+After=network-online.target time-sync.target nmb.service
|
||||
+Before=systemd-user-sessions.service
|
||||
|
||||
[Service]
|
||||
|
|
|
@ -1,22 +0,0 @@
|
|||
diff -Naur samba-4.6.1.orig/ctdb/wscript samba-4.6.1/ctdb/wscript
|
||||
--- samba-4.6.1.orig/ctdb/wscript 2017-03-30 12:54:50.646453287 +0300
|
||||
+++ samba-4.6.1/ctdb/wscript 2017-03-30 12:54:51.348454582 +0300
|
||||
@@ -546,6 +546,7 @@
|
||||
source=bld.SUBDIR('utils/smnotify',
|
||||
'smnotify.c gen_smnotify.c gen_xdr.c'),
|
||||
deps='ctdb-smnotify-h ctdb-smnotify-c ctdb-smnotify-x popt',
|
||||
+ ldflags='-ltirpc',
|
||||
includes='utils utils/smnotify',
|
||||
install_path='${CTDB_HELPER_BINDIR}')
|
||||
|
||||
diff -Naur samba-4.6.1.orig/source3/wscript_build samba-4.6.1/source3/wscript_build
|
||||
--- samba-4.6.1.orig/source3/wscript_build 2017-03-30 12:54:51.098454121 +0300
|
||||
+++ samba-4.6.1/source3/wscript_build 2017-03-30 12:54:51.349454583 +0300
|
||||
@@ -758,6 +758,7 @@
|
||||
bld.env['dmapi_lib'] +
|
||||
bld.env['legacy_quota_libs'] +
|
||||
NOTIFY_DEPS,
|
||||
+ ldflags='-ltirpc',
|
||||
private_library=True)
|
||||
|
||||
bld.SAMBA3_SUBSYSTEM('LOCKING',
|
83
samba.spec
83
samba.spec
|
@ -20,7 +20,7 @@
|
|||
%define passdbmajor 0
|
||||
%define credentialsmajor 0
|
||||
%define smbconfmajor 0
|
||||
%define smbldapmajor 0
|
||||
%define smbldapmajor 2
|
||||
%define tevent_utilmajor 0
|
||||
%define nsswinsmajor 2
|
||||
%define winbindmajor 2
|
||||
|
@ -88,7 +88,7 @@
|
|||
|
||||
Summary: Samba SMB server
|
||||
Name: samba
|
||||
Version: 4.6.14
|
||||
Version: 4.9.4
|
||||
Release: 1
|
||||
Epoch: 1
|
||||
License: GPLv3+
|
||||
|
@ -111,10 +111,18 @@ Source28: samba.pamd
|
|||
Source29: system-auth-winbind.pamd
|
||||
Source41: openldap-samba.conf
|
||||
Source100: %{name}.rpmlintrc
|
||||
# xdr_* functions have moved from glibc into libtirpc
|
||||
Patch0: samba-4.3.9-tirpc.patch
|
||||
# OpenBSD-* patches are based on patches in OpenBSD net/samba;
|
||||
# in some cases conditions like 'if platform=OpenBSD' are removed;
|
||||
# in some cases patches are just rediffed.
|
||||
Patch2: samba-4.3.11-winbind-service.patch
|
||||
Patch3: FreeBSD-third__party_aesni-intel_wscript.patch
|
||||
Patch4: OpenBSD-Reverse-order-of-paths-added.patch
|
||||
Patch5: OpenBSD-Make-arguements-to-WAF.patch
|
||||
#Patch6: OpenBSD-Follow-shared-libs-policy.patch
|
||||
Patch7: OpenBSD-Lock-order-violation.patch
|
||||
Patch8: ROSA-bind-GID.patch
|
||||
Patch9: DEBIAN-s3-auth-ignore-create_builtin_guests-failing-without.patch
|
||||
Patch10: ROSA-vendor-version.patch
|
||||
|
||||
# Required for ldb docs
|
||||
BuildRequires: docbook-style-xsl
|
||||
|
@ -158,6 +166,9 @@ BuildRequires: pkgconfig(pytalloc-util)
|
|||
BuildRequires: pkgconfig(talloc)
|
||||
BuildRequires: pkgconfig(tdb)
|
||||
BuildRequires: pkgconfig(tevent)
|
||||
BuildRequires: pkgconfig(jansson)
|
||||
BuildRequires: pkgconfig(libarchive)
|
||||
BuildRequires: gpgme-devel
|
||||
|
||||
Requires(pre): chkconfig mktemp psmisc
|
||||
Requires(pre): coreutils sed grep
|
||||
|
@ -246,6 +257,7 @@ implementation details.
|
|||
%{_sbindir}/samba_dnsupdate
|
||||
%{_sbindir}/samba_spnupdate
|
||||
%{_sbindir}/samba_upgradedns
|
||||
%{_sbindir}/samba-gpupdate
|
||||
%{_sbindir}/smbd
|
||||
%{_sbindir}/nmbd
|
||||
%attr(-,root,root) %config(noreplace) %{_sysconfdir}/logrotate.d/%{name}-server
|
||||
|
@ -260,8 +272,8 @@ implementation details.
|
|||
%dir %{_datadir}/%{name}/scripts
|
||||
%{_datadir}/samba/setup
|
||||
%attr(0755,root,root) %{_datadir}/%{name}/scripts/print-pdf
|
||||
%{_mandir}/man8/idmap_*.8*
|
||||
%{_mandir}/man8/samba.8*
|
||||
%{_mandir}/man8/samba-gpupdate.8*
|
||||
%{_unitdir}/samba.service
|
||||
%{_unitdir}/smb.service
|
||||
%{_unitdir}/nmb.service
|
||||
|
@ -313,6 +325,7 @@ Provides libraries for samba-server
|
|||
%{_libdir}/samba/gensec
|
||||
%{_libdir}/samba/auth
|
||||
%{_libdir}/samba/libCHARSET3-samba4.so
|
||||
%{_libdir}/samba/libMESSAGING-SEND-samba4.so
|
||||
%{_libdir}/samba/libHDB-SAMBA4-samba4.so
|
||||
%{_libdir}/samba/libLIBWBCLIENT-OLD-samba4.so
|
||||
%{_libdir}/samba/libMESSAGING-samba4.so
|
||||
|
@ -325,7 +338,6 @@ Provides libraries for samba-server
|
|||
%{_libdir}/samba/libasn1-samba4.so.8.0.0
|
||||
%{_libdir}/samba/libasn1util-samba4.so
|
||||
%{_libdir}/samba/libauth-samba4.so
|
||||
%{_libdir}/samba/libauth-sam-reply-samba4.so
|
||||
%{_libdir}/samba/libauth-unix-token-samba4.so
|
||||
%{_libdir}/samba/libauth4-samba4.so
|
||||
%{_libdir}/samba/libauthkrb5-samba4.so
|
||||
|
@ -338,6 +350,9 @@ Provides libraries for samba-server
|
|||
%{_libdir}/samba/libcliauth-samba4.so
|
||||
%{_libdir}/samba/libcluster-samba4.so
|
||||
%{_libdir}/samba/libcmdline-credentials-samba4.so
|
||||
%{_libdir}/samba/libcmdline-contexts-samba4.so
|
||||
%{_libdir}/samba/libgpext-samba4.so
|
||||
%{_libdir}/samba/libcommon-auth-samba4.so
|
||||
%{_libdir}/samba/libcom_err-samba4.so.0
|
||||
%{_libdir}/samba/libcom_err-samba4.so.0.25
|
||||
%{_libdir}/samba/libdb-glue-samba4.so
|
||||
|
@ -348,12 +363,12 @@ Provides libraries for samba-server
|
|||
%{_libdir}/samba/libdlz-bind9-for-torture-samba4.so
|
||||
%{_libdir}/samba/libdnsserver-common-samba4.so
|
||||
%{_libdir}/samba/libdsdb-garbage-collect-tombstones-samba4.so
|
||||
%{_libdir}/samba/libscavenge-dns-records-samba4.so
|
||||
%{_libdir}/samba/libdsdb-module-samba4.so
|
||||
%{_libdir}/samba/libevents-samba4.so
|
||||
%{_libdir}/samba/libflag-mapping-samba4.so
|
||||
%{_libdir}/samba/libgenrand-samba4.so
|
||||
%{_libdir}/samba/libgensec-samba4.so
|
||||
%{_libdir}/samba/libgpo-samba4.so
|
||||
%{_libdir}/samba/libgse-samba4.so
|
||||
%{_libdir}/samba/libgssapi-samba4.so.2
|
||||
%{_libdir}/samba/libgssapi-samba4.so.2.0.0
|
||||
|
@ -393,6 +408,7 @@ Provides libraries for samba-server
|
|||
%{_libdir}/samba/libnss-info-samba4.so
|
||||
%{_libdir}/samba/libpac-samba4.so
|
||||
%{_libdir}/samba/libpopt-samba3-samba4.so
|
||||
%{_libdir}/samba/libpopt-samba3-cmdline-samba4.so
|
||||
%{_libdir}/samba/libposix-eadb-samba4.so
|
||||
%{_libdir}/samba/libprinting-migrate-samba4.so
|
||||
%{_libdir}/samba/libprocess-model-samba4.so
|
||||
|
@ -433,6 +449,8 @@ Provides libraries for samba-server
|
|||
%{_libdir}/samba/libutil-setid-samba4.so
|
||||
%{_libdir}/samba/libutil-tdb-samba4.so
|
||||
%{_libdir}/samba/libwinbind-client-samba4.so
|
||||
%{_libdir}/samba/libcmocka-samba4.so
|
||||
%{_libdir}/samba/libnon-posix-acls-samba4.so
|
||||
%ifarch x86_64
|
||||
%{_libdir}/samba/libaesni-intel-samba4.so
|
||||
%endif
|
||||
|
@ -466,7 +484,6 @@ printing to SMB printers.
|
|||
%files client
|
||||
%{_bindir}/cifsdd
|
||||
%{_bindir}/dbwrap_tool
|
||||
%{_bindir}/eventlogadm
|
||||
%{_bindir}/findsmb
|
||||
%{_bindir}/mvxattr
|
||||
%{_bindir}/net
|
||||
|
@ -475,6 +492,7 @@ printing to SMB printers.
|
|||
%{_bindir}/profiles
|
||||
%{_bindir}/rpcclient
|
||||
%{_sbindir}/samba_kcc
|
||||
%{_sbindir}/eventlogadm
|
||||
%{_bindir}/samba-tool
|
||||
%{_bindir}/sharesec
|
||||
%{_bindir}/smbcacls
|
||||
|
@ -543,8 +561,6 @@ packages of Samba.
|
|||
%dir /var/lib/%{name}/private
|
||||
%(for i in %{_bindir}/{%{commonbin}};do echo $i;done)
|
||||
%(for i in %{_mandir}/man?/{%{commonbin}}\.[0-9]*;do echo $i|grep -v testparm;done)
|
||||
%dir %{_libdir}/%{name}
|
||||
%{_libdir}/%{name}/libnon-posix-acls-samba4.so
|
||||
%dir %{_datadir}/%{name}
|
||||
%dir %{_sysconfdir}/%{name}
|
||||
%attr(-,root,root) %config(noreplace) %{_sysconfdir}/%{name}/smb.conf
|
||||
|
@ -575,7 +591,8 @@ packages of Samba.
|
|||
%{_mandir}/man5/smbgetrc.5*
|
||||
%{_mandir}/man5/smbpasswd.5*
|
||||
%{_mandir}/man7/samba.7*
|
||||
%{_mandir}/man7/winbind_krb5_locator.7*
|
||||
%{_mandir}/man7/traffic_learner.7*
|
||||
%{_mandir}/man7/traffic_replay.7*
|
||||
%{_mandir}/man8/cifsdd.8*
|
||||
%{_mandir}/man8/eventlogadm.8*
|
||||
%{_mandir}/man8/net.8*
|
||||
|
@ -589,7 +606,6 @@ packages of Samba.
|
|||
%{_mandir}/man8/vfs_acl_tdb.8*
|
||||
%{_mandir}/man8/vfs_acl_xattr.8*
|
||||
%{_mandir}/man8/vfs_aio_fork.8*
|
||||
%{_mandir}/man8/vfs_aio_linux.8*
|
||||
%{_mandir}/man8/vfs_aio_pthread.8*
|
||||
%{_mandir}/man8/vfs_audit.8*
|
||||
%{_mandir}/man8/vfs_cacheprime.8*
|
||||
|
@ -629,7 +645,8 @@ packages of Samba.
|
|||
%{_mandir}/man8/vfs_btrfs.8*
|
||||
%{_mandir}/man8/vfs_linux_xfs_sgid.8*
|
||||
%{_mandir}/man8/vfs_syncops.8*
|
||||
%{_mandir}/man8/winbindd.8*
|
||||
%{_mandir}/man8/vfs_nfs4acl_xattr.8*
|
||||
%{_mandir}/man8/vfs_virusfilter.8*
|
||||
|
||||
%post common
|
||||
systemd-tmpfiles --create %{_prefix}/lib/tmpfiles.d/samba.conf
|
||||
|
@ -672,7 +689,9 @@ Provides libraries for winbind daemon and testing tools
|
|||
%files -n %{libwinbind}
|
||||
%attr(755,root,root) /%{_lib}/security/pam_winbind*
|
||||
%attr(755,root,root) /%{_lib}/libnss_winbind*
|
||||
%{_libdir}/winbind_krb5_locator.so
|
||||
%{_libdir}/samba/krb5/winbind_krb5_locator.so
|
||||
%{_mandir}/man8/winbind_krb5_locator.8*
|
||||
%ghost %{_libdir}/krb5/plugins/libkrb5/winbind_krb5_locator.so
|
||||
|
||||
#----------------------------------------------------------------------------
|
||||
|
||||
|
@ -692,6 +711,9 @@ and group/user enumeration from a Windows or Samba domain controller.
|
|||
%{_bindir}/wbinfo
|
||||
%attr(-,root,root) %config(noreplace) %{_sysconfdir}/pam.d/system-auth-winbind*
|
||||
%{_unitdir}/winbind.service
|
||||
%{_sysconfdir}/NetworkManager/dispatcher.d/30-winbind
|
||||
%{_mandir}/man8/winbindd.8*
|
||||
%{_mandir}/man8/idmap_*.8*
|
||||
|
||||
%post winbind
|
||||
# winbind service must not be auto-enabled e.g. because it will break Samba as a Domain Controller
|
||||
|
@ -1353,14 +1375,16 @@ else
|
|||
fi
|
||||
|
||||
%setup -q
|
||||
%patch0 -p1 -b .tirpc~
|
||||
%patch2 -p1 -b .winbind~
|
||||
# FreeBSD-third__party_aesni-intel_wscript.patch
|
||||
%patch3 -p0
|
||||
%apply_patches
|
||||
grep -q '@ROSA_VENDOR_PATCH@' VERSION # validate
|
||||
# SAMBA_VERSION_VENDOR_PATCH is a floating constant
|
||||
sed -e 's/@ROSA_VENDOR_PATCH@/%{release}/g' -i VERSION
|
||||
|
||||
%build
|
||||
install -d -m 0755 %{buildroot}/%{_libdir}/samba
|
||||
|
||||
CFLAGS=-g buildtools/bin/waf configure --enable-fhs \
|
||||
--with-privatelibdir=%{_libdir}/%{name} \
|
||||
--with-modulesdir=%{_libdir}/samba \
|
||||
--bundled-libraries=heimdal,!zlib,!popt,!talloc,!tevent,!tdb,!ldb \
|
||||
--enable-gnutls \
|
||||
--enable-cups \
|
||||
|
@ -1398,10 +1422,10 @@ CFLAGS=-g buildtools/bin/waf configure --enable-fhs \
|
|||
--sysconfdir=%{_sysconfdir} \
|
||||
--datadir=%{_datadir} \
|
||||
--localstatedir=%{_localstatedir} \
|
||||
--with-modulesdir=%{_libdir}/%{name} \
|
||||
-v -v -p \
|
||||
%{?_smp_mflags}
|
||||
|
||||
# --with-privatelibdir=%{_libdir}/%{name} \
|
||||
# --with-system-mitkrb5 <--- probably a good idea, but causes
|
||||
# samba_upgradeprovision and friends not to be built
|
||||
|
||||
|
@ -1496,9 +1520,7 @@ install -m644 %{SOURCE1} %{buildroot}/%{_sysconfdir}/logrotate.d/%{name}-server
|
|||
mkdir -p %{buildroot}%{_sysconfdir}/security
|
||||
|
||||
# Some inline fixes for smb.conf for non-winbind use
|
||||
install -m644 packaging/LSB/smb.conf %{buildroot}/%{_sysconfdir}/%{name}/smb.conf
|
||||
cat packaging/LSB/smb.conf | \
|
||||
touch %{buildroot}/%{_sysconfdir}/%{name}/smb.conf
|
||||
install -m644 examples/smb.conf.default %{buildroot}/%{_sysconfdir}/%{name}/smb.conf
|
||||
#sed -e 's/^; printer admin = @adm/ printer admin = @adm/g' >%{buildroot}/%{_sysconfdir}/%{name}/smb.conf
|
||||
sed -i -e "/^\[$section\]/,/^\[.*\]/ s|^\($option[ \t]*=[ \t]*\).*$|\1$value|" "%{buildroot}/%{_sysconfdir}/%{name}/smb.conf"
|
||||
python %{SOURCE81} "%{buildroot}/%{_sysconfdir}/%{name}/smb.conf"
|
||||
|
@ -1528,13 +1550,22 @@ mkdir -p %{buildroot}%{_unitdir} %{buildroot}%{_sysconfdir}/sysconfig
|
|||
|
||||
install -m644 packaging/systemd/samba.sysconfig %{buildroot}%{_sysconfdir}/sysconfig/samba
|
||||
|
||||
# NetworkManager online/offline script
|
||||
install -d -m 0755 %{buildroot}%{_sysconfdir}/NetworkManager/dispatcher.d/
|
||||
install -m 0755 packaging/NetworkManager/30-winbind-systemd %{buildroot}%{_sysconfdir}/NetworkManager/dispatcher.d/30-winbind
|
||||
|
||||
# winbind krb5 plugins
|
||||
install -d -m 0755 %{buildroot}%{_libdir}/krb5/plugins/libkrb5
|
||||
touch %{buildroot}%{_libdir}/krb5/plugins/libkrb5/winbind_krb5_locator.so
|
||||
|
||||
install -d -m 0755 %{buildroot}%{_prefix}/lib/tmpfiles.d/
|
||||
install -m644 packaging/systemd/samba.conf.tmp %{buildroot}%{_prefix}/lib/tmpfiles.d/samba.conf
|
||||
install -m644 packaging/systemd/*.service %{buildroot}%{_unitdir}/
|
||||
sed -i 's|/usr/bin/kill|/bin/kill|g' %{buildroot}%{_unitdir}/*.service
|
||||
for i in $(ls ./packaging/systemd/*.service.in); do
|
||||
install -m 0644 "$i" "%{buildroot}%{_unitdir}/$(echo "$i" | awk -F '/' '{print $NF}' | sed -e 's/.in$//g')" ; done
|
||||
sed -i "s|/usr/bin/kill|$(which kill)|g" %{buildroot}%{_unitdir}/*.service
|
||||
|
||||
# create /run/samba too.
|
||||
echo "d /run/samba 755 root root" >> %{buildroot}%{_prefix}/lib/tmpfiles.d/samba.conf
|
||||
echo "d /run/samba 755 root root" >> %{buildroot}%{_prefix}/lib/tmpfiles.d/samba.conf
|
||||
|
||||
# Prepare schema files to be included into OpenLDAP configuration
|
||||
mkdir -p %{buildroot}%{_sysconfdir}/openldap/{schema,slapd.d}
|
||||
|
|
Loading…
Add table
Reference in a new issue