commit ab3e67eca5d9e1798feca4f263ff032fa551acfa Author: Arkadiusz MiĆkiewicz <ar...@maven.pl> Date: Wed Mar 15 12:57:50 2023 +0100
Up to 4.18.0. bsd usage is turned on to get setproctitle etc. With bsd off: Checking for strlcpy : not found Checking for strlcat : not found Checking for getpeereid : not found Checking for library setproctitle : no Checking for setproctitle : not found Checking for setproctitle_init : not found Checking for closefrom : ok With bsd on: Checking for library bsd : yes Checking for strlcpy in bsd : ok Checking for strlcat in bsd : ok Checking for getpeereid : not found Checking for getpeereid in bsd : ok Checking for library setproctitle : no Checking for setproctitle : not found Checking for setproctitle in bsd : ok Checking for setproctitle_init : not found Checking for setproctitle_init in bsd : ok Checking for closefrom : ok samba-bug-9816.patch | 67 -------------------------------- samba-no_libbsd.patch | 16 +++++--- samba.spec | 35 +++++++++-------- unicodePwd-nthash-values-over-LDAP.patch | 6 +-- 4 files changed, 32 insertions(+), 92 deletions(-) --- diff --git a/samba.spec b/samba.spec index 6d99256..577e7e1 100644 --- a/samba.spec +++ b/samba.spec @@ -18,18 +18,18 @@ %bcond_without systemd # systemd integration %bcond_without winexe # winexe tool %bcond_with system_heimdal # Use system Heimdal libraries [since samba 4.4.x build fails with heimdal 1.5.x/7.x] -%bcond_with system_libbsd # system libbsd for MD5 and strl* functions +%bcond_without system_libbsd # system libbsd for MD5, strl*, setproctitle, getpeeridfunctions %bcond_without system_libs # system libraries from SAMBA project (talloc,tdb,tevent,ldb) %bcond_without ctdb_pcp # Performance Co-Pilot support for CTDB # turn on when https://bugzilla.samba.org/show_bug.cgi?id=11764 is fixed %bcond_with replace %if %{with system_libs} -%define ldb_ver 2.5.2 -%define ldb_ver_below 2.6 -%define talloc_ver 2:2.3.3 -%define tdb_ver 2:1.4.6 -%define tevent_ver 0.11.0 +%define ldb_ver 2.7.1 +%define ldb_ver_below 2.8 +%define talloc_ver 2:2.4.0 +%define tdb_ver 2:1.4.8 +%define tevent_ver 0.14.1 %endif # dmapi-devel with xfsprogs-devel >= 4.11(?) needs largefile (64bit off_t) that isn't detected properly @@ -43,13 +43,13 @@ Summary: Samba Active Directory and SMB server Summary(pl.UTF-8): Serwer Samba Active Directory i SMB Name: samba -Version: 4.16.5 -Release: 3 +Version: 4.18.0 +Release: 1 Epoch: 1 License: GPL v3 Group: Networking/Daemons Source0: https://download.samba.org/pub/samba/stable/%{name}-%{version}.tar.gz -# Source0-md5: f7f4cc413fb2e072772098e5c5978212 +# Source0-md5: a36cc7b01305bb8cba9846ac2fbd56d5 Source1: smb.init Source2: samba.pamd Source4: samba.sysconfig @@ -66,7 +66,6 @@ Patch2: %{name}-lprng-no-dot-printers.patch Patch4: unicodePwd-nthash-values-over-LDAP.patch Patch5: %{name}-heimdal.patch Patch6: server-role.patch -Patch7: %{name}-bug-9816.patch Patch8: %{name}-no_libbsd.patch Patch9: format-security.patch URL: https://www.samba.org/ @@ -570,7 +569,7 @@ wyeksportowania do PMCD. %patch4 -p1 %{?with_system_heimdal:%patch5 -p1} %patch6 -p1 -%patch7 -p1 + %{!?with_system_libbsd:%patch8 -p1} %patch9 -p1 @@ -678,7 +677,7 @@ install -p source3/script/mksmbpasswd.sh $RPM_BUILD_ROOT%{_sbindir} cp -p packaging/systemd/samba.conf.tmp $RPM_BUILD_ROOT%{systemdtmpfilesdir}/samba.conf echo "d /var/run/ctdb 755 root root" > $RPM_BUILD_ROOT%{systemdtmpfilesdir}/ctdb.conf -cp -p ctdb/config/ctdb.service $RPM_BUILD_ROOT%{systemdunitdir} +cp -p bin/default/packaging/systemd/ctdb.service $RPM_BUILD_ROOT%{systemdunitdir} install -p %{SOURCE1} $RPM_BUILD_ROOT/etc/rc.d/init.d/smb cp -p %{SOURCE2} $RPM_BUILD_ROOT/etc/pam.d/samba @@ -1270,12 +1269,13 @@ fi %attr(755,root,root) %{_libdir}/libndr-nbt.so.*.*.* %attr(755,root,root) %ghost %{_libdir}/libndr-nbt.so.0 %attr(755,root,root) %{_libdir}/libndr.so.*.*.* -%attr(755,root,root) %ghost %{_libdir}/libndr.so.2 +%attr(755,root,root) %ghost %{_libdir}/libndr.so.3 %attr(755,root,root) %{_libdir}/libndr-standard.so.*.*.* %attr(755,root,root) %ghost %{_libdir}/libndr-standard.so.0 %attr(755,root,root) %{_libdir}/libsamba-credentials.so.*.*.* %attr(755,root,root) %ghost %{_libdir}/libsamba-credentials.so.1 -%attr(755,root,root) %{_libdir}/libsamba-errors.so.1 +%attr(755,root,root) %{_libdir}/libsamba-errors.so.*.*.* +%attr(755,root,root) %ghost %{_libdir}/libsamba-errors.so.1 %attr(755,root,root) %{_libdir}/libsamba-hostconfig.so.*.*.* %attr(755,root,root) %ghost %{_libdir}/libsamba-hostconfig.so.0 %attr(755,root,root) %{_libdir}/libsamba-passdb.so.*.*.* @@ -1404,6 +1404,7 @@ fi %attr(755,root,root) %{_libdir}/samba/libsmbpasswdparser-samba4.so %attr(755,root,root) %{_libdir}/samba/libsmb-transport-samba4.so %attr(755,root,root) %{_libdir}/samba/libsocket-blocking-samba4.so +%attr(755,root,root) %{_libdir}/samba/libstable-sort-samba4.so %attr(755,root,root) %{_libdir}/samba/libsys-rw-samba4.so %attr(755,root,root) %{_libdir}/samba/libtalloc-report-printf-samba4.so %attr(755,root,root) %{_libdir}/samba/libtalloc-report-samba4.so @@ -1434,6 +1435,7 @@ fi %dir %{_includedir}/samba-4.0/gen_ndr %{_includedir}/samba-4.0/gen_ndr/atsvc.h %{_includedir}/samba-4.0/gen_ndr/auth.h +%{_includedir}/samba-4.0/gen_ndr/claims.h %{_includedir}/samba-4.0/gen_ndr/dcerpc.h %{_includedir}/samba-4.0/gen_ndr/drsblobs.h %{_includedir}/samba-4.0/gen_ndr/drsuapi.h @@ -1556,6 +1558,9 @@ fi %dir %{py3_sitedir}/samba/emulate %{py3_sitedir}/samba/emulate/*.py %{py3_sitedir}/samba/emulate/__pycache__ +%dir %{py3_sitedir}/samba/gp +%{py3_sitedir}/samba/gp/*.py +%{py3_sitedir}/samba/gp/__pycache__ %dir %{py3_sitedir}/samba/gp_parse %{py3_sitedir}/samba/gp_parse/*.py %{py3_sitedir}/samba/gp_parse/__pycache__ @@ -1699,7 +1704,6 @@ fi %{_datadir}/ctdb/events/legacy/91.lvs.script %{systemdtmpfilesdir}/ctdb.conf %attr(755,root,root) %{_sbindir}/ctdbd -%attr(755,root,root) %{_sbindir}/ctdbd_wrapper %attr(755,root,root) %{_bindir}/ctdb %attr(755,root,root) %{_bindir}/ping_pong %attr(755,root,root) %{_bindir}/ltdbtool @@ -1726,7 +1730,6 @@ fi %{_mandir}/man1/onnode.1* %{_mandir}/man1/ltdbtool.1* %{_mandir}/man1/ping_pong.1* -%{_mandir}/man1/ctdbd_wrapper.1* %{_mandir}/man5/ctdb-script.options.5* %{_mandir}/man5/ctdb.conf.5* %{_mandir}/man5/ctdb.sysconfig.5* diff --git a/samba-bug-9816.patch b/samba-bug-9816.patch deleted file mode 100644 index c965c2d..0000000 --- a/samba-bug-9816.patch +++ /dev/null @@ -1,67 +0,0 @@ -From 4a8707f25a8825c90987ed25906d5dfd5288aaf9 Mon Sep 17 00:00:00 2001 -From: Sam Liddicott <s...@liddicott.com> -Date: Fri, 19 Apr 2013 11:04:55 +0100 -Subject: [PATCH] Support setproctitle on linux with prctl(PR_SET_NAME - -Only the first 16 characters of the title are used on Linux systems -so the most relevant data should be presented at the start of the -title - -Signed-off-by: Sam Liddicott <s...@liddicott.com> ---- - lib/replace/replace.c | 19 +++++++++++++++++++ - 1 file changed, 19 insertions(+) - -diff --git a/lib/replace/replace.c b/lib/replace/replace.c -index 37edb31..00abad8 100644 ---- a/lib/replace/replace.c -+++ b/lib/replace/replace.c -@@ -33,6 +33,11 @@ - #include "system/locale.h" - #include "system/wait.h" - -+/* Linux replacement for setproctitle */ -+#if ! defined(HAVE_SETPROCTITLE) && defined(HAVE_SYS_PRCTL_H) && defined(HAVE_PRCTL) -+#include <sys/prctl.h> -+#endif -+ - #ifdef _WIN32 - #define mkdir(d,m) _mkdir(d) - #endif -@@ -898,6 +903,20 @@ int rep_usleep(useconds_t sec) - #ifndef HAVE_SETPROCTITLE - void rep_setproctitle(const char *fmt, ...) - { -+#if defined (HAVE_PRCTL) && defined(PR_SET_NAME) -+ char *title = NULL; -+ va_list args; -+ -+ if (fmt) { -+ va_start(args, fmt); -+ vasprintf(&title, fmt, args); -+ prctl(PR_SET_NAME, (unsigned long)title, 0, 0, 0); -+ free(title); -+ va_end(args); -+ } else { -+ prctl(PR_SET_NAME, 0, 0, 0, 0); -+ } -+#endif - } - #endif - #ifndef HAVE_SETPROCTITLE_INIT --- -1.7.10.4 - ---- a/lib/replace/wscript~ 2014-09-08 11:26:14.000000000 +0200 -+++ b/lib/replace/wscript 2014-10-28 22:05:54.003836383 +0100 -@@ -311,8 +311,7 @@ def configure(conf): - strlcpy_in_bsd = True - if not conf.CHECK_FUNCS('getpeereid'): - conf.CHECK_FUNCS_IN('getpeereid', 'bsd', headers='sys/types.h bsd/unistd.h') -- if not conf.CHECK_FUNCS_IN('setproctitle', 'setproctitle', headers='setproctitle.h'): -- conf.CHECK_FUNCS_IN('setproctitle', 'bsd', headers='sys/types.h bsd/unistd.h') -+ conf.CHECK_FUNCS_IN('setproctitle', 'bsd', headers='sys/types.h bsd/unistd.h') - if not conf.CHECK_FUNCS('setproctitle_init'): - conf.CHECK_FUNCS_IN('setproctitle_init', 'bsd', headers='sys/types.h bsd/unistd.h') - - diff --git a/samba-no_libbsd.patch b/samba-no_libbsd.patch index acd8a74..82a68c3 100644 --- a/samba-no_libbsd.patch +++ b/samba-no_libbsd.patch @@ -1,24 +1,28 @@ --- samba-4.7.6/lib/replace/wscript.orig 2018-04-01 20:31:57.522637016 +0200 +++ samba-4.7.6/lib/replace/wscript 2018-04-01 23:00:11.129202131 +0200 -@@ -304,20 +304,6 @@ def configure(conf): - +@@ -437,19 +437,11 @@ def configure(conf): strlcpy_in_bsd = False -- # libbsd on some platforms provides strlcpy and strlcat + # libbsd on some platforms provides strlcpy and strlcat - if not conf.CHECK_FUNCS('strlcpy strlcat'): - if conf.CHECK_FUNCS_IN('strlcpy strlcat', 'bsd', headers='bsd/string.h', - checklibc=True): - strlcpy_in_bsd = True - if not conf.CHECK_FUNCS('getpeereid'): - conf.CHECK_FUNCS_IN('getpeereid', 'bsd', headers='sys/types.h bsd/unistd.h') -- conf.CHECK_FUNCS_IN('setproctitle', 'bsd', headers='sys/types.h bsd/unistd.h') +- if not conf.CHECK_FUNCS_IN('setproctitle', 'setproctitle', headers='setproctitle.h'): +- conf.CHECK_FUNCS_IN('setproctitle', 'bsd', headers='sys/types.h bsd/unistd.h') - if not conf.CHECK_FUNCS('setproctitle_init'): - conf.CHECK_FUNCS_IN('setproctitle_init', 'bsd', headers='sys/types.h bsd/unistd.h') - - if not conf.CHECK_FUNCS('closefrom'): - conf.CHECK_FUNCS_IN('closefrom', 'bsd', headers='bsd/unistd.h') -- ++ conf.CHECK_FUNCS('strlcpy strlcat') ++ conf.CHECK_FUNCS('getpeereid') ++ conf.CHECK_FUNCS_IN('setproctitle', 'setproctitle', headers='setproctitle.h') ++ conf.CHECK_FUNCS('setproctitle_init') ++ conf.CHECK_FUNCS('closefrom') + conf.CHECK_CODE(''' struct ucred cred; - socklen_t cred_len; diff --git a/unicodePwd-nthash-values-over-LDAP.patch b/unicodePwd-nthash-values-over-LDAP.patch index 5d50f43..3652829 100644 --- a/unicodePwd-nthash-values-over-LDAP.patch +++ b/unicodePwd-nthash-values-over-LDAP.patch @@ -3,13 +3,13 @@ Allow setting unicodePwd with NTHash vlue over LDAP --- samba-4.0.7/source4/libcli/ldap/ldap_controls.c~ 2013-07-02 20:19:37.554868793 +0200 +++ samba-4.0.7/source4/libcli/ldap/ldap_controls.c 2013-07-02 21:00:47.595973713 +0200 -@@ -1293,7 +1293,7 @@ +@@ -1260,7 +1260,7 @@ static const struct ldap_control_handler { LDB_CONTROL_REVEAL_INTERNALS, NULL, NULL }, { LDB_CONTROL_AS_SYSTEM_OID, NULL, NULL }, { DSDB_CONTROL_PASSWORD_CHANGE_STATUS_OID, NULL, NULL }, - { DSDB_CONTROL_PASSWORD_HASH_VALUES_OID, NULL, NULL }, -+ { DSDB_CONTROL_PASSWORD_HASH_VALUES_OID, decode_flag_request, encode_flag_request }, - { DSDB_CONTROL_PASSWORD_CHANGE_OID, NULL, NULL }, ++ { DSDB_CONTROL_PASSWORD_HASH_VALUES_OID, decode_flag_request, encode_flag_request }, + { DSDB_CONTROL_PASSWORD_CHANGE_OLD_PW_CHECKED_OID, NULL, NULL }, { DSDB_CONTROL_PASSWORD_ACL_VALIDATION_OID, NULL, NULL }, { DSDB_CONTROL_APPLY_LINKS, NULL, NULL }, --- samba-4.0.7/source4/dsdb/samdb/ldb_modules/password_hash.c~ 2013-07-02 20:01:42.731518064 +0200 ================================================================ ---- gitweb: http://git.pld-linux.org/gitweb.cgi/packages/samba.git/commitdiff/ab3e67eca5d9e1798feca4f263ff032fa551acfa _______________________________________________ pld-cvs-commit mailing list pld-cvs-commit@lists.pld-linux.org http://lists.pld-linux.org/mailman/listinfo/pld-cvs-commit