diff options
Diffstat (limited to 'meta-openembedded/meta-networking/recipes-connectivity/samba')
20 files changed, 344 insertions, 680 deletions
diff --git a/meta-openembedded/meta-networking/recipes-connectivity/samba/samba/16-do-not-check-xsltproc-manpages.patch b/meta-openembedded/meta-networking/recipes-connectivity/samba/samba/0001-Don-t-check-xsltproc-manpages.patch index 8ca7a52ed..f4668dc6f 100644 --- a/meta-openembedded/meta-networking/recipes-connectivity/samba/samba/16-do-not-check-xsltproc-manpages.patch +++ b/meta-openembedded/meta-networking/recipes-connectivity/samba/samba/0001-Don-t-check-xsltproc-manpages.patch @@ -1,12 +1,14 @@ -From 2214c2d1e455a38c891d17e421b438e3f7c495d8 Mon Sep 17 00:00:00 2001 +From 3bc1ebc3d2758af4067b3aace7ddd0ea0cb0b57b Mon Sep 17 00:00:00 2001 From: Bian Naimeng <biannm@cn.fujitsu.com> Date: Mon, 18 Apr 2016 17:00:53 -0400 Subject: [PATCH] Don't check xsltproc manpages Upstream-Status: Pending - + Signed-off-by: Bian Naimeng <biannm@cn.fujitsu.com> +Rebase to 4.14.4 +Signed-off-by: Yi Zhao <yi.zhao@windriver.com> --- lib/ldb/wscript | 2 +- lib/talloc/wscript | 2 +- @@ -14,10 +16,10 @@ Signed-off-by: Bian Naimeng <biannm@cn.fujitsu.com> 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/lib/ldb/wscript b/lib/ldb/wscript -index 5ea5231..d94086b 100644 +index bf6129b..c515deb 100644 --- a/lib/ldb/wscript +++ b/lib/ldb/wscript -@@ -98,7 +98,7 @@ def configure(conf): +@@ -143,7 +143,7 @@ def configure(conf): conf.DEFINE('EXPECTED_SYSTEM_LDB_VERSION_RELEASE', int(v[2])) if conf.env.standalone_ldb: @@ -27,10 +29,10 @@ index 5ea5231..d94086b 100644 # we need this for the ldap backend if conf.CHECK_FUNCS_IN('ber_flush ldap_open ldap_initialize', 'lber ldap', headers='lber.h ldap.h'): diff --git a/lib/talloc/wscript b/lib/talloc/wscript -index df7e6be..b3305cf 100644 +index a767477..f754819 100644 --- a/lib/talloc/wscript +++ b/lib/talloc/wscript -@@ -49,7 +49,7 @@ def configure(conf): +@@ -48,7 +48,7 @@ def configure(conf): conf.env.PKGCONFIGDIR = '${LIBDIR}/pkgconfig' conf.env.TALLOC_VERSION = VERSION @@ -40,18 +42,18 @@ index df7e6be..b3305cf 100644 conf.CHECK_HEADERS('sys/auxv.h') conf.CHECK_FUNCS('getauxval') diff --git a/lib/tdb/wscript b/lib/tdb/wscript -index 4782550..6bb3fa1 100644 +index e56ddd0..467dd65 100644 --- a/lib/tdb/wscript +++ b/lib/tdb/wscript -@@ -89,7 +89,7 @@ def configure(conf): +@@ -95,7 +95,7 @@ def configure(conf): not conf.env.disable_tdb_mutex_locking): conf.define('USE_TDB_MUTEX_LOCKING', 1) - conf.CHECK_XSLTPROC_MANPAGES() + #conf.CHECK_XSLTPROC_MANPAGES() - if not conf.env.disable_python: - # also disable if we don't have the python libs installed + conf.SAMBA_CHECK_PYTHON() + conf.SAMBA_CHECK_PYTHON_HEADERS() -- -2.14.3 +2.17.1 diff --git a/meta-openembedded/meta-networking/recipes-connectivity/samba/samba/0001-lib-replace-wscript-Avoid-generating-nested-main-fun.patch b/meta-openembedded/meta-networking/recipes-connectivity/samba/samba/0001-lib-replace-wscript-Avoid-generating-nested-main-fun.patch deleted file mode 100644 index de7f31183..000000000 --- a/meta-openembedded/meta-networking/recipes-connectivity/samba/samba/0001-lib-replace-wscript-Avoid-generating-nested-main-fun.patch +++ /dev/null @@ -1,30 +0,0 @@ -From 3a935c638605bfb392ca7780d22c08c1a0a71e71 Mon Sep 17 00:00:00 2001 -From: Khem Raj <raj.khem@gmail.com> -Date: Thu, 5 Sep 2019 21:37:33 -0700 -Subject: [PATCH 1/2] lib/replace/wscript: Avoid generating nested main - function - -clang is not happy when it sees another main nested inside the main -function and fails the test for prctl syscall, therefore avoid adding -implicit main() here - -Signed-off-by: Khem Raj <raj.khem@gmail.com> ---- - lib/replace/wscript | 1 + - 1 file changed, 1 insertion(+) - -diff --git a/lib/replace/wscript b/lib/replace/wscript -index a7fd25d..d6767fc 100644 ---- a/lib/replace/wscript -+++ b/lib/replace/wscript -@@ -137,6 +137,7 @@ def configure(conf): - } - ''', - 'HAVE_PRCTL', -+ addmain=False, - headers='sys/prctl.h', - msg='Checking for prctl syscall') - --- -2.23.0 - diff --git a/meta-openembedded/meta-networking/recipes-connectivity/samba/samba/0001-nsswitch-nsstest.c-Avoid-nss-function-conflicts-with.patch b/meta-openembedded/meta-networking/recipes-connectivity/samba/samba/0001-nsswitch-nsstest.c-Avoid-nss-function-conflicts-with.patch deleted file mode 100644 index 2dbabdaa4..000000000 --- a/meta-openembedded/meta-networking/recipes-connectivity/samba/samba/0001-nsswitch-nsstest.c-Avoid-nss-function-conflicts-with.patch +++ /dev/null @@ -1,96 +0,0 @@ -From 9aba5ac17bb822f91f6b214f5b82dd1eb8c47616 Mon Sep 17 00:00:00 2001 -From: Khem Raj <raj.khem@gmail.com> -Date: Wed, 22 Jul 2020 22:42:09 -0700 -Subject: [PATCH] nsswitch/nsstest.c: Avoid nss function conflicts with glibc nss.h - -glibc 2.32 will define these varibles [1] which results in conflicts -with these static function names, therefore prefix these function names -with samba_ to avoid it - -[1] https://sourceware.org/git/?p=glibc.git;a=commit;h=499a92df8b9fc64a054cf3b7f728f8967fc1da7d - -Upstream-Status: Submitted [https://gitlab.com/samba-team/samba/-/merge_requests/1477] - -Signed-off-by: Khem Raj <raj.khem@gmail.com> ---- - nsswitch/nsstest.c | 16 ++++++++-------- - 1 file changed, 8 insertions(+), 8 deletions(-) - -diff --git a/nsswitch/nsstest.c b/nsswitch/nsstest.c -index 6d92806..46f9679 100644 ---- a/nsswitch/nsstest.c -+++ b/nsswitch/nsstest.c -@@ -137,7 +137,7 @@ static struct passwd *nss_getpwuid(uid_t uid) - return &pwd; - } - --static void nss_setpwent(void) -+static void samba_nss_setpwent(void) - { - NSS_STATUS (*_nss_setpwent)(void) = - (NSS_STATUS(*)(void))find_fn("setpwent"); -@@ -152,7 +152,7 @@ static void nss_setpwent(void) - } - } - --static void nss_endpwent(void) -+static void samba_nss_endpwent(void) - { - NSS_STATUS (*_nss_endpwent)(void) = - (NSS_STATUS (*)(void))find_fn("endpwent"); -@@ -284,7 +284,7 @@ again: - return &grp; - } - --static void nss_setgrent(void) -+static void samba_nss_setgrent(void) - { - NSS_STATUS (*_nss_setgrent)(void) = - (NSS_STATUS (*)(void))find_fn("setgrent"); -@@ -299,7 +299,7 @@ static void nss_setgrent(void) - } - } - --static void nss_endgrent(void) -+static void samba_nss_endgrent(void) - { - NSS_STATUS (*_nss_endgrent)(void) = - (NSS_STATUS (*)(void))find_fn("endgrent"); -@@ -396,7 +396,7 @@ static void nss_test_users(void) - { - struct passwd *pwd; - -- nss_setpwent(); -+ samba_nss_setpwent(); - /* loop over all users */ - while ((pwd = nss_getpwent())) { - printf("Testing user %s\n", pwd->pw_name); -@@ -418,14 +418,14 @@ static void nss_test_users(void) - printf("initgroups: "); nss_test_initgroups(pwd->pw_name, pwd->pw_gid); - printf("\n"); - } -- nss_endpwent(); -+ samba_nss_endpwent(); - } - - static void nss_test_groups(void) - { - struct group *grp; - -- nss_setgrent(); -+ samba_nss_setgrent(); - /* loop over all groups */ - while ((grp = nss_getgrent())) { - printf("Testing group %s\n", grp->gr_name); -@@ -446,7 +446,7 @@ static void nss_test_groups(void) - printf("getgrgid: "); print_group(grp); - printf("\n"); - } -- nss_endgrent(); -+ samba_nss_endgrent(); - } - - static void nss_test_errors(void) --- -2.27.0 - diff --git a/meta-openembedded/meta-networking/recipes-connectivity/samba/samba/0001-waf-add-support-of-cross_compile.patch b/meta-openembedded/meta-networking/recipes-connectivity/samba/samba/0001-waf-add-support-of-cross_compile.patch deleted file mode 100644 index 23b35a814..000000000 --- a/meta-openembedded/meta-networking/recipes-connectivity/samba/samba/0001-waf-add-support-of-cross_compile.patch +++ /dev/null @@ -1,62 +0,0 @@ -From 4b8463ff43f8983a706b181c5292491f9f954be1 Mon Sep 17 00:00:00 2001 -From: Changqing Li <changqing.li@windriver.com> -Date: Fri, 25 Jan 2019 15:00:59 +0800 -Subject: [PATCH] waf: add support of cross_compile - -After upgrade, waf also upgraded - -on 1.5.19, for cross_compile, subprocess.Popen is set to be -samba_cross.cross_Popen, which will not execute testprog on -host, but only read result from cross-answers.txt which is -passed by option --cross-answer - -part of old code: - args = Utils.to_list(kw.get('exec_args', [])) - proc = Utils.pproc.Popen([lastprog] + args, stdout=Utils.pproc.PIPE, stderr=Utils.pproc.PIPE) - -but on new version, exec_args is not used and cause do_configure -failed with Exec format error - -fixed by append cross anser related args to cmd - -Upstream-Status: Submitted [https://gitlab.com/samba-team/samba/merge_requests/211] - -Signed-off-by: Changqing Li <changqing.li@windriver.com> ---- - third_party/waf/waflib/Tools/c_config.py | 11 ++++++----- - 1 file changed, 6 insertions(+), 5 deletions(-) - -diff --git a/third_party/waf/waflib/Tools/c_config.py b/third_party/waf/waflib/Tools/c_config.py -index 7608215..767cf33 100644 ---- a/third_party/waf/waflib/Tools/c_config.py -+++ b/third_party/waf/waflib/Tools/c_config.py -@@ -660,20 +660,21 @@ class test_exec(Task.Task): - """ - color = 'PINK' - def run(self): -+ args = self.generator.bld.kw.get('exec_args', []) - if getattr(self.generator, 'rpath', None): - if getattr(self.generator, 'define_ret', False): -- self.generator.bld.retval = self.generator.bld.cmd_and_log([self.inputs[0].abspath()]) -- else: -- self.generator.bld.retval = self.generator.bld.exec_command([self.inputs[0].abspath()]) -+ self.generator.bld.retval = self.generator.bld.cmd_and_log([self.inputs[0].abspath()] + args) -+ else: -+ self.generator.bld.retval = self.generator.bld.exec_command([self.inputs[0].abspath()] + args) - else: - env = self.env.env or {} - env.update(dict(os.environ)) - for var in ('LD_LIBRARY_PATH', 'DYLD_LIBRARY_PATH', 'PATH'): - env[var] = self.inputs[0].parent.abspath() + os.path.pathsep + env.get(var, '') - if getattr(self.generator, 'define_ret', False): -- self.generator.bld.retval = self.generator.bld.cmd_and_log([self.inputs[0].abspath()], env=env) -+ self.generator.bld.retval = self.generator.bld.cmd_and_log([self.inputs[0].abspath()] + args, env=env) - else: -- self.generator.bld.retval = self.generator.bld.exec_command([self.inputs[0].abspath()], env=env) -+ self.generator.bld.retval = self.generator.bld.exec_command([self.inputs[0].abspath()] + args, env=env) - - @feature('test_exec') - @after_method('apply_link') --- -2.7.4 - diff --git a/meta-openembedded/meta-networking/recipes-connectivity/samba/samba/20-do-not-import-target-module-while-cross-compile.patch b/meta-openembedded/meta-networking/recipes-connectivity/samba/samba/0002-do-not-import-target-module-while-cross-compile.patch index 3f2921ed3..292e614eb 100644 --- a/meta-openembedded/meta-networking/recipes-connectivity/samba/samba/20-do-not-import-target-module-while-cross-compile.patch +++ b/meta-openembedded/meta-networking/recipes-connectivity/samba/samba/0002-do-not-import-target-module-while-cross-compile.patch @@ -1,4 +1,4 @@ -From cc0576405803bcae45ee353c4333c449cead9207 Mon Sep 17 00:00:00 2001 +From 9ebea97a52e4f70e831dd6402b865c77753ce1cc Mon Sep 17 00:00:00 2001 From: Changqing Li <changqing.li@windriver.com> Date: Tue, 25 Jun 2019 14:25:08 +0800 Subject: [PATCH] do not import target module while cross compile @@ -12,10 +12,10 @@ update to version 4.10.5, and switch to python3 Signed-off-by: Changqing Li <changqing.li@windriver.com> --- buildtools/wafsamba/samba_bundled.py | 27 +++++++++++++++++++-------- - 1 file changed, 18 insertions(+), 8 deletions(-) + 1 file changed, 19 insertions(+), 8 deletions(-) diff --git a/buildtools/wafsamba/samba_bundled.py b/buildtools/wafsamba/samba_bundled.py -index 60ce7da..5468a36 100644 +index 5f080dd..cdc115e 100644 --- a/buildtools/wafsamba/samba_bundled.py +++ b/buildtools/wafsamba/samba_bundled.py @@ -4,6 +4,7 @@ import sys @@ -63,5 +63,5 @@ index 60ce7da..5468a36 100644 Logs.error('ERROR: Python module %s of version %s not found, and bundling disabled' % (libname, minversion)) sys.exit(1) -- -2.7.4 +2.17.1 diff --git a/meta-openembedded/meta-networking/recipes-connectivity/samba/samba/0002-util_sec.c-Move-__thread-variable-to-global-scope.patch b/meta-openembedded/meta-networking/recipes-connectivity/samba/samba/0002-util_sec.c-Move-__thread-variable-to-global-scope.patch deleted file mode 100644 index 6fc849337..000000000 --- a/meta-openembedded/meta-networking/recipes-connectivity/samba/samba/0002-util_sec.c-Move-__thread-variable-to-global-scope.patch +++ /dev/null @@ -1,58 +0,0 @@ -From c62a6f32ab965de2ec77a614f20f04568116835b Mon Sep 17 00:00:00 2001 -From: Khem Raj <raj.khem@gmail.com> -Date: Thu, 5 Sep 2019 21:39:05 -0700 -Subject: [PATCH 2/2] util_sec.c: Move __thread variable to global scope - -Make clang happy otherwise it complains about variable scope - -fixes - -source3/./lib/util_sec.c:470:4: error: '__thread' variables must have global storage - } __thread cache; - ^ - -Signed-off-by: Khem Raj <raj.khem@gmail.com> ---- - source3/lib/util_sec.c | 19 +++++++++++-------- - 1 file changed, 11 insertions(+), 8 deletions(-) - -diff --git a/source3/lib/util_sec.c b/source3/lib/util_sec.c -index 9408269..7390318 100644 ---- a/source3/lib/util_sec.c -+++ b/source3/lib/util_sec.c -@@ -444,6 +444,17 @@ void become_user_permanently(uid_t uid, gid_t gid) - assert_gid(gid, gid); - } - -+#ifdef HAVE___THREAD -+ struct cache_t { -+ bool active; -+ uid_t uid; -+ gid_t gid; -+ size_t setlen; -+ uintptr_t gidset; -+ }; -+ -+static __thread struct cache_t cache; -+#endif - /********************************************************** - Function to set thread specific credentials. Leave - saved-set uid/gid alone.Must be thread-safe code. -@@ -461,14 +472,6 @@ int set_thread_credentials(uid_t uid, - * available. - */ - #ifdef HAVE___THREAD -- static struct { -- bool active; -- uid_t uid; -- gid_t gid; -- size_t setlen; -- uintptr_t gidset; -- } __thread cache; -- - if (cache.active && - cache.uid == uid && - cache.gid == gid && --- -2.23.0 - diff --git a/meta-openembedded/meta-networking/recipes-connectivity/samba/samba/21-add-config-option-without-valgrind.patch b/meta-openembedded/meta-networking/recipes-connectivity/samba/samba/0003-Add-config-option-without-valgrind.patch index 46a6f0626..93ca005d6 100644 --- a/meta-openembedded/meta-networking/recipes-connectivity/samba/samba/21-add-config-option-without-valgrind.patch +++ b/meta-openembedded/meta-networking/recipes-connectivity/samba/samba/0003-Add-config-option-without-valgrind.patch @@ -1,4 +1,4 @@ -From 87bc8e7eafc7d12a1d3a143ebb9e43cf5fbafb72 Mon Sep 17 00:00:00 2001 +From 6455448eb060d03a534539f1a424e2d3e44319e1 Mon Sep 17 00:00:00 2001 From: Changqing Li <changqing.li@windriver.com> Date: Thu, 20 Jun 2019 14:11:16 +0800 Subject: [PATCH] Add config option without-valgrind @@ -15,10 +15,10 @@ Signed-off-by: Changqing Li <changqing.li@windriver.com> 2 files changed, 7 insertions(+), 2 deletions(-) diff --git a/lib/replace/wscript b/lib/replace/wscript -index a7fd25d..a19ae68 100644 +index 2c856b6..bc726f7 100644 --- a/lib/replace/wscript +++ b/lib/replace/wscript -@@ -110,8 +110,9 @@ def configure(conf): +@@ -121,8 +121,9 @@ def configure(conf): conf.CHECK_HEADERS('sys/fileio.h sys/filesys.h sys/dustat.h sys/sysmacros.h') conf.CHECK_HEADERS('xfs/libxfs.h netgroup.h') @@ -31,10 +31,10 @@ index a7fd25d..a19ae68 100644 conf.CHECK_HEADERS('sys/extattr.h sys/ea.h sys/proplist.h sys/cdefs.h') conf.CHECK_HEADERS('utmp.h utmpx.h lastlog.h') diff --git a/wscript b/wscript -index e38a8e9..38b7230 100644 +index 83d9421..969b07a 100644 --- a/wscript +++ b/wscript -@@ -105,6 +105,10 @@ def options(opt): +@@ -123,6 +123,10 @@ def options(opt): help=("Disable RELRO builds"), action="store_false", dest='enable_relro') @@ -46,5 +46,5 @@ index e38a8e9..38b7230 100644 opt.load('python') # options for disabling pyc or pyo compilation -- -2.7.4 +2.17.1 diff --git a/meta-openembedded/meta-networking/recipes-connectivity/samba/samba/0001-Add-options-to-configure-the-use-of-libbsd.patch b/meta-openembedded/meta-networking/recipes-connectivity/samba/samba/0004-Add-options-to-configure-the-use-of-libbsd.patch index 80cdd3955..5fd32f385 100644 --- a/meta-openembedded/meta-networking/recipes-connectivity/samba/samba/0001-Add-options-to-configure-the-use-of-libbsd.patch +++ b/meta-openembedded/meta-networking/recipes-connectivity/samba/samba/0004-Add-options-to-configure-the-use-of-libbsd.patch @@ -1,19 +1,21 @@ -From 1e8d31c138395122df4cc2a3e0edd6cd3fad736c Mon Sep 17 00:00:00 2001 +From 5abf3c2efa1cd4e16878b6b26068ff153973ebd3 Mon Sep 17 00:00:00 2001 From: Peter Kjellerstedt <pkj@axis.com> Date: Tue, 28 Apr 2020 02:05:33 +0200 Subject: [PATCH] Add options to configure the use of libbsd Upstream-Status: Inappropriate [oe deterministic build specific] Signed-off-by: Peter Kjellerstedt <peter.kjellerstedt@axis.com> + +Rebase to 4.14.4 +Signed-off-by: Yi Zhao <yi.zhao@windriver.com> --- - buildtools/wafsamba/wscript | 7 +++++++ - lib/crypto/wscript_configure | 2 +- - lib/replace/wscript | 29 +++++++++++++++-------------- - lib/texpect/wscript | 7 ++++++- - 4 files changed, 29 insertions(+), 16 deletions(-) + buildtools/wafsamba/wscript | 7 +++++++ + lib/replace/wscript | 29 +++++++++++++++-------------- + lib/texpect/wscript | 8 +++++++- + 3 files changed, 29 insertions(+), 15 deletions(-) diff --git a/buildtools/wafsamba/wscript b/buildtools/wafsamba/wscript -index 7b8fb01..a8e4b0a 100644 +index 1aadb95..e7b47c0 100644 --- a/buildtools/wafsamba/wscript +++ b/buildtools/wafsamba/wscript @@ -88,6 +88,13 @@ def options(opt): @@ -30,24 +32,11 @@ index 7b8fb01..a8e4b0a 100644 gr = opt.option_group('developer options') gr.add_option('-C', -diff --git a/lib/crypto/wscript_configure b/lib/crypto/wscript_configure -index 09dfe04..e871718 100644 ---- a/lib/crypto/wscript_configure -+++ b/lib/crypto/wscript_configure -@@ -2,7 +2,7 @@ - from waflib import Options - from waflib import Errors, Logs - --if not conf.CHECK_FUNCS_IN('MD5Init', 'bsd', headers='bsd/md5.h', -+if not Options.options.enable_libbsd or not conf.CHECK_FUNCS_IN('MD5Init', 'bsd', headers='bsd/md5.h', - checklibc=True): - conf.CHECK_FUNCS_IN('MD5Init', 'md5', headers='sys/md5.h', - checklibc=True) diff --git a/lib/replace/wscript b/lib/replace/wscript -index 0020d2a..cd9228f 100644 +index bc726f7..44ad0d6 100644 --- a/lib/replace/wscript +++ b/lib/replace/wscript -@@ -407,20 +407,21 @@ def configure(conf): +@@ -419,20 +419,21 @@ def configure(conf): strlcpy_in_bsd = False @@ -84,13 +73,14 @@ index 0020d2a..cd9228f 100644 conf.CHECK_CODE(''' struct ucred cred; diff --git a/lib/texpect/wscript b/lib/texpect/wscript -index e14c048..a91de59 100644 +index 82f6b25..33eea64 100644 --- a/lib/texpect/wscript +++ b/lib/texpect/wscript -@@ -1,7 +1,12 @@ +@@ -1,7 +1,13 @@ #!/usr/bin/env python -+from waflib import Options ++from waflib import Options ++ def configure(conf): - conf.CHECK_FUNCS_IN('openpty', 'util', checklibc=True, headers='pty.h util.h bsd/libutil.h libutil.h') + hdrs = 'pty.h util.h' @@ -100,4 +90,7 @@ index e14c048..a91de59 100644 + conf.CHECK_FUNCS_IN('openpty', 'util', checklibc=True, headers=hdrs) def build(bld): - bld.SAMBA_BINARY('texpect', 'texpect.c', deps='popt util replace', install=False) + bld.SAMBA_BINARY('texpect', +-- +2.17.1 + diff --git a/meta-openembedded/meta-networking/recipes-connectivity/samba/samba/dnsserver-4.7.0.patch b/meta-openembedded/meta-networking/recipes-connectivity/samba/samba/0005-samba-build-dnsserver_common-code.patch index 0c7592f8e..2abbe563a 100644 --- a/meta-openembedded/meta-networking/recipes-connectivity/samba/samba/dnsserver-4.7.0.patch +++ b/meta-openembedded/meta-networking/recipes-connectivity/samba/samba/0005-samba-build-dnsserver_common-code.patch @@ -1,11 +1,19 @@ -samba: build dnsserver_common code +From 10d7abc8f1aa99ae45209aeb704978d206f329c0 Mon Sep 17 00:00:00 2001 +From: Joe Slater <joe.slater@windriver.com> +Date: Tue, 1 Jun 2021 11:09:19 +0800 +Subject: [PATCH] samba: build dnsserver_common code Just 'install' does not seem to do it. Upstream-Status: Pending Signed-off-by: Joe Slater <joe.slater@windriver.com> +--- + source4/dns_server/wscript_build | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) +diff --git a/source4/dns_server/wscript_build b/source4/dns_server/wscript_build +index e97c85d..a49fbb9 100644 --- a/source4/dns_server/wscript_build +++ b/source4/dns_server/wscript_build @@ -4,7 +4,7 @@ bld.SAMBA_LIBRARY('dnsserver_common', @@ -17,3 +25,6 @@ Signed-off-by: Joe Slater <joe.slater@windriver.com> ) bld.SAMBA_MODULE('service_dns', +-- +2.17.1 + diff --git a/meta-openembedded/meta-networking/recipes-connectivity/samba/samba/iconv-4.7.0.patch b/meta-openembedded/meta-networking/recipes-connectivity/samba/samba/0006-samba-defeat-iconv-test.patch index 5ae8c5978..00b692b58 100644 --- a/meta-openembedded/meta-networking/recipes-connectivity/samba/samba/iconv-4.7.0.patch +++ b/meta-openembedded/meta-networking/recipes-connectivity/samba/samba/0006-samba-defeat-iconv-test.patch @@ -1,4 +1,7 @@ -samba: defeat iconv test +From 59f7098bfbd63f9b3c19d7d297a8f90870a1893d Mon Sep 17 00:00:00 2001 +From: Joe Slater <joe.slater@windriver.com> +Date: Mon, 31 May 2021 14:50:38 +0800 +Subject: [PATCH] samba: defeat iconv test A test was added when configuring samba which requires target code to be executed. In general, this will not work, so we eliminate it. @@ -6,10 +9,15 @@ to be executed. In general, this will not work, so we eliminate it. Upstream-Status: Pending Signed-off-by: Joe Slater <joe.slater@windriver.com> +--- + lib/util/charset/wscript_configure | 3 +++ + 1 file changed, 3 insertions(+) +diff --git a/lib/util/charset/wscript_configure b/lib/util/charset/wscript_configure +index 9c27fc6..845eb36 100644 --- a/lib/util/charset/wscript_configure +++ b/lib/util/charset/wscript_configure -@@ -17,6 +17,8 @@ if (conf.CHECK_FUNCS_IN('iconv_open', 'i +@@ -17,6 +17,8 @@ if (conf.CHECK_FUNCS_IN('iconv_open', 'iconv', checklibc=False, headers='iconv.h conf.DEFINE('HAVE_NATIVE_ICONV', 1) @@ -18,8 +26,14 @@ Signed-off-by: Joe Slater <joe.slater@windriver.com> conf.CHECK_CODE(''' uint8_t inbuf[2] = { 0x30, 0xdf }; uint8_t outbuf[4] = { 0 }; -@@ -36,3 +38,4 @@ conf.CHECK_CODE(''' +@@ -36,6 +38,7 @@ conf.CHECK_CODE(''' msg='Checking errno of iconv for illegal multibyte sequence', lib='iconv', headers='errno.h iconv.h') +""" + + if conf.CHECK_CFG(package='icu-i18n', + args='--cflags --libs', +-- +2.17.1 + diff --git a/meta-openembedded/meta-networking/recipes-connectivity/samba/samba/0007-wscript_configure_system_gnutls-disable-check-gnutls.patch b/meta-openembedded/meta-networking/recipes-connectivity/samba/samba/0007-wscript_configure_system_gnutls-disable-check-gnutls.patch new file mode 100644 index 000000000..0f843af20 --- /dev/null +++ b/meta-openembedded/meta-networking/recipes-connectivity/samba/samba/0007-wscript_configure_system_gnutls-disable-check-gnutls.patch @@ -0,0 +1,39 @@ +From a31a014c5d98501074fde1acb5c00162c927c361 Mon Sep 17 00:00:00 2001 +From: Yi Zhao <yi.zhao@windriver.com> +Date: Mon, 31 May 2021 15:47:58 +0800 +Subject: [PATCH] wscript_configure_system_gnutls: disable check gnutls + AES_CFB8/AES_CMAC + +The CHECK_VALUEOF() can not work on cross-compilation. + +Fixes configure error: + Checking value of GNUTLS_CIPHER_AES_128_CFB8: UNKNOWN + Checking value of GNUTLS_MAC_AES_CMAC_128: UNKNOWN + +Upstream-Status: Inappropriate [embedded specific] + +Signed-off-by: Yi Zhao <yi.zhao@windriver.com> +--- + wscript_configure_system_gnutls | 2 ++ + 1 file changed, 2 insertions(+) + +diff --git a/wscript_configure_system_gnutls b/wscript_configure_system_gnutls +index 2ec217f..cd91b55 100644 +--- a/wscript_configure_system_gnutls ++++ b/wscript_configure_system_gnutls +@@ -39,6 +39,7 @@ if (parse_version(gnutls_version) > parse_version('3.6.14')): + if conf.CHECK_FUNCS_IN('gnutls_get_system_config_file', 'gnutls'): + conf.DEFINE('HAVE_GNUTLS_CRYPTO_POLICIES', 1) + ++""" + if conf.CHECK_VALUEOF('GNUTLS_CIPHER_AES_128_CFB8', headers='gnutls/gnutls.h'): + conf.DEFINE('HAVE_GNUTLS_AES_CFB8', 1) + else: +@@ -48,3 +49,4 @@ if conf.CHECK_VALUEOF('GNUTLS_MAC_AES_CMAC_128', headers='gnutls/gnutls.h'): + conf.DEFINE('HAVE_GNUTLS_AES_CMAC', 1) + else: + Logs.warn('No gnutls support for AES CMAC') ++""" +-- +2.17.1 + diff --git a/meta-openembedded/meta-networking/recipes-connectivity/samba/samba/0008-source3-wscript-disable-check-fcntl-F_OWNER_EX.patch b/meta-openembedded/meta-networking/recipes-connectivity/samba/samba/0008-source3-wscript-disable-check-fcntl-F_OWNER_EX.patch new file mode 100644 index 000000000..d4ceb5ce9 --- /dev/null +++ b/meta-openembedded/meta-networking/recipes-connectivity/samba/samba/0008-source3-wscript-disable-check-fcntl-F_OWNER_EX.patch @@ -0,0 +1,79 @@ +From ba6bc5459cf148dd617fd9cd38dd50c3a9b5d706 Mon Sep 17 00:00:00 2001 +From: Yi Zhao <yi.zhao@windriver.com> +Date: Mon, 31 May 2021 15:50:48 +0800 +Subject: [PATCH] source3/wscript: disable check fcntl F_OWNER_EX + +It fails on cross-compilation. + +Fixes configure error: + Checking whether fcntl supports flags to send direct I/O availability signals: UNKNOWN + +Upstream-Status: Inappropriate [embedded specific] + +Signed-off-by: Yi Zhao <yi.zhao@windriver.com> +--- + source3/wscript | 48 ------------------------------------------------ + 1 file changed, 48 deletions(-) + +diff --git a/source3/wscript b/source3/wscript +index adc31ce..f6de0a6 100644 +--- a/source3/wscript ++++ b/source3/wscript +@@ -1168,54 +1168,6 @@ err: + #include <fcntl.h> + #include <unistd.h> + #include <stdlib.h> +-#include <sys/socket.h> +- +-int main(void) +-{ +- int sockfd, ret; +- struct f_owner_ex owner, get_owner; +- +- sockfd = socket(AF_UNIX, SOCK_STREAM, 0); +- if (sockfd == -1) { +- goto err; +- } +- +- owner.type = F_OWNER_PID; +- owner.pid = getpid(); +- +- ret = fcntl(sockfd, F_SETOWN_EX, &owner); +- if (ret == -1) { +- goto err; +- } +- +- ret = fcntl(sockfd, F_GETOWN_EX, &get_owner); +- if (ret == -1) { +- goto err; +- } +- +- if (get_owner.type != F_OWNER_PID) { +- goto err; +- } +- +- if (get_owner.pid != getpid()) { +- goto err; +- } +- +- close(sockfd); +- exit(0); +-err: +- close(sockfd); +- exit(1); +-}''', +- 'HAVE_F_OWNER_EX', +- addmain=False, +- execute=True, +- msg="Checking whether fcntl supports flags to send direct I/O availability signals") +- +- conf.CHECK_CODE(''' +-#include <fcntl.h> +-#include <unistd.h> +-#include <stdlib.h> + #include <stdint.h> + + #define DATA "hinttest.fcntl" +-- +2.17.1 + diff --git a/meta-openembedded/meta-networking/recipes-connectivity/samba/samba/0009-source3-wscript-disable-check-fcntl-RW_HINTS.patch b/meta-openembedded/meta-networking/recipes-connectivity/samba/samba/0009-source3-wscript-disable-check-fcntl-RW_HINTS.patch new file mode 100644 index 000000000..a0b751034 --- /dev/null +++ b/meta-openembedded/meta-networking/recipes-connectivity/samba/samba/0009-source3-wscript-disable-check-fcntl-RW_HINTS.patch @@ -0,0 +1,92 @@ +From 9942bca2e276c7b4c7696a08594258430c4c5bb5 Mon Sep 17 00:00:00 2001 +From: Yi Zhao <yi.zhao@windriver.com> +Date: Thu, 3 Jun 2021 09:39:56 +0800 +Subject: [PATCH] source3/wscript: disable check fcntl RW_HINTS + +It fails on cross-compilation for musl. + +Fixes configure error: + Checking whether fcntl supports setting/geting hints: UNKNOWN + +Upstream-Status: Inappropriate [embedded specific] + +Signed-off-by: Yi Zhao <yi.zhao@windriver.com> +--- + source3/wscript | 61 ------------------------------------------------- + 1 file changed, 61 deletions(-) + +diff --git a/source3/wscript b/source3/wscript +index f6de0a6..3e260c1 100644 +--- a/source3/wscript ++++ b/source3/wscript +@@ -1164,67 +1164,6 @@ err: + execute=True, + msg="Checking whether fcntl lock supports open file description locks") + +- conf.CHECK_CODE(''' +-#include <fcntl.h> +-#include <unistd.h> +-#include <stdlib.h> +-#include <stdint.h> +- +-#define DATA "hinttest.fcntl" +- +-int main(void) +-{ +- uint64_t hint, get_hint; +- int fd; +- +- fd = open(DATA, O_RDONLY | O_CREAT | O_EXCL); +- if (fd == -1) { +- goto err; +- } +- +- hint = RWH_WRITE_LIFE_SHORT; +- int ret = fcntl(fd, F_SET_RW_HINT, &hint); +- if (ret == -1) { +- goto err; +- } +- +- ret = fcntl(fd, F_GET_RW_HINT, &get_hint); +- if (ret == -1) { +- goto err; +- } +- +- if (get_hint != RWH_WRITE_LIFE_SHORT) { +- goto err; +- } +- +- hint = RWH_WRITE_LIFE_EXTREME; +- ret = fcntl(fd, F_SET_FILE_RW_HINT, &hint); +- if (ret == -1) { +- goto err; +- } +- +- ret = fcntl(fd, F_GET_FILE_RW_HINT, &get_hint); +- if (ret == -1) { +- goto err; +- } +- +- if (get_hint != RWH_WRITE_LIFE_EXTREME) { +- goto err; +- } +- +- close(fd); +- unlink(DATA); +- exit(0); +-err: +- close(fd); +- unlink(DATA); +- exit(1); +-}''', +- 'HAVE_RW_HINTS', +- addmain=False, +- execute=True, +- msg="Checking whether fcntl supports setting/geting hints") +- + conf.CHECK_STRUCTURE_MEMBER('struct stat', 'st_mtim.tv_nsec', + define='HAVE_STRUCT_STAT_ST_MTIM_TV_NSEC') # Linux, Solaris + conf.CHECK_STRUCTURE_MEMBER('struct stat', 'st_mtimensec', +-- +2.17.1 + diff --git a/meta-openembedded/meta-networking/recipes-connectivity/samba/samba/CVE-2020-14318.patch b/meta-openembedded/meta-networking/recipes-connectivity/samba/samba/CVE-2020-14318.patch deleted file mode 100644 index ff1225db0..000000000 --- a/meta-openembedded/meta-networking/recipes-connectivity/samba/samba/CVE-2020-14318.patch +++ /dev/null @@ -1,142 +0,0 @@ -From ccf53dfdcd39f3526dbc2f20e1245674155380ff Mon Sep 17 00:00:00 2001 -From: Zheng Ruoqin <zhengrq.fnst@cn.fujitsu.com> -Date: Fri, 11 Dec 2020 11:32:44 +0900 -Subject: [PATCH] s4: torture: Add smb2.notify.handle-permissions test. - -s3: smbd: Ensure change notifies can't get set unless the - directory handle is open for SEC_DIR_LIST. - -CVE-2020-14318 - -BUG: https://bugzilla.samba.org/show_bug.cgi?id=14434 - -Signed-off-by: Jeremy Allison <jra@samba.org> - -Signed-off-by: Zheng Ruoqin <zhengrq.fnst@cn.fujitsu.com> ---- - source3/smbd/notify.c | 8 ++++ - source4/torture/smb2/notify.c | 82 ++++++++++++++++++++++++++++++++++- - 2 files changed, 89 insertions(+), 1 deletion(-) - -diff --git a/source3/smbd/notify.c b/source3/smbd/notify.c -index 44c0b09..d23c03b 100644 ---- a/source3/smbd/notify.c -+++ b/source3/smbd/notify.c -@@ -283,6 +283,14 @@ NTSTATUS change_notify_create(struct files_struct *fsp, uint32_t filter, - char fullpath[len+1]; - NTSTATUS status = NT_STATUS_NOT_IMPLEMENTED; - -+ /* -+ * Setting a changenotify needs READ/LIST access -+ * on the directory handle. -+ */ -+ if (!(fsp->access_mask & SEC_DIR_LIST)) { -+ return NT_STATUS_ACCESS_DENIED; -+ } -+ - if (fsp->notify != NULL) { - DEBUG(1, ("change_notify_create: fsp->notify != NULL, " - "fname = %s\n", fsp->fsp_name->base_name)); -diff --git a/source4/torture/smb2/notify.c b/source4/torture/smb2/notify.c -index ebb4f8a..a5c9b94 100644 ---- a/source4/torture/smb2/notify.c -+++ b/source4/torture/smb2/notify.c -@@ -2569,6 +2569,83 @@ done: - return ok; - } - -+/* -+ Test asking for a change notify on a handle without permissions. -+*/ -+ -+#define BASEDIR_HPERM BASEDIR "_HPERM" -+ -+static bool torture_smb2_notify_handle_permissions( -+ struct torture_context *torture, -+ struct smb2_tree *tree) -+{ -+ bool ret = true; -+ NTSTATUS status; -+ union smb_notify notify; -+ union smb_open io; -+ struct smb2_handle h1 = {{0}}; -+ struct smb2_request *req; -+ -+ smb2_deltree(tree, BASEDIR_HPERM); -+ smb2_util_rmdir(tree, BASEDIR_HPERM); -+ -+ torture_comment(torture, -+ "TESTING CHANGE NOTIFY " -+ "ON A HANDLE WITHOUT PERMISSIONS\n"); -+ -+ /* -+ get a handle on the directory -+ */ -+ ZERO_STRUCT(io.smb2); -+ io.generic.level = RAW_OPEN_SMB2; -+ io.smb2.in.create_flags = 0; -+ io.smb2.in.desired_access = SEC_FILE_READ_ATTRIBUTE; -+ io.smb2.in.create_options = NTCREATEX_OPTIONS_DIRECTORY; -+ io.smb2.in.file_attributes = FILE_ATTRIBUTE_NORMAL; -+ io.smb2.in.share_access = NTCREATEX_SHARE_ACCESS_READ | -+ NTCREATEX_SHARE_ACCESS_WRITE; -+ io.smb2.in.alloc_size = 0; -+ io.smb2.in.create_disposition = NTCREATEX_DISP_CREATE; -+ io.smb2.in.impersonation_level = SMB2_IMPERSONATION_ANONYMOUS; -+ io.smb2.in.security_flags = 0; -+ io.smb2.in.fname = BASEDIR_HPERM; -+ -+ status = smb2_create(tree, torture, &io.smb2); -+ CHECK_STATUS(status, NT_STATUS_OK); -+ h1 = io.smb2.out.file.handle; -+ -+ /* ask for a change notify, -+ on file or directory name changes */ -+ ZERO_STRUCT(notify.smb2); -+ notify.smb2.level = RAW_NOTIFY_SMB2; -+ notify.smb2.in.buffer_size = 1000; -+ notify.smb2.in.completion_filter = FILE_NOTIFY_CHANGE_NAME; -+ notify.smb2.in.file.handle = h1; -+ notify.smb2.in.recursive = true; -+ -+ req = smb2_notify_send(tree, ¬ify.smb2); -+ torture_assert_goto(torture, -+ req != NULL, -+ ret, -+ done, -+ "smb2_notify_send failed\n"); -+ -+ /* -+ * Cancel it, we don't really want to wait. -+ */ -+ smb2_cancel(req); -+ status = smb2_notify_recv(req, torture, ¬ify.smb2); -+ /* Handle h1 doesn't have permissions for ChangeNotify. */ -+ CHECK_STATUS(status, NT_STATUS_ACCESS_DENIED); -+ -+done: -+ if (!smb2_util_handle_empty(h1)) { -+ smb2_util_close(tree, h1); -+ } -+ smb2_deltree(tree, BASEDIR_HPERM); -+ return ret; -+} -+ - /* - basic testing of SMB2 change notify - */ -@@ -2602,7 +2679,10 @@ struct torture_suite *torture_smb2_notify_init(TALLOC_CTX *ctx) - torture_smb2_notify_rmdir3); - torture_suite_add_2smb2_test(suite, "rmdir4", - torture_smb2_notify_rmdir4); -- -+ torture_suite_add_1smb2_test(suite, -+ "handle-permissions", -+ torture_smb2_notify_handle_permissions); -+ - suite->description = talloc_strdup(suite, "SMB2-NOTIFY tests"); - - return suite; --- -2.25.1 - diff --git a/meta-openembedded/meta-networking/recipes-connectivity/samba/samba/CVE-2020-14383.patch b/meta-openembedded/meta-networking/recipes-connectivity/samba/samba/CVE-2020-14383.patch deleted file mode 100644 index 3341b80a3..000000000 --- a/meta-openembedded/meta-networking/recipes-connectivity/samba/samba/CVE-2020-14383.patch +++ /dev/null @@ -1,112 +0,0 @@ -From ff17443fe761eda864d13957bec45f5bac478fe3 Mon Sep 17 00:00:00 2001 -From: Zheng Ruoqin <zhengrq.fnst@cn.fujitsu.com> -Date: Fri, 11 Dec 2020 14:34:31 +0900 -Subject: [PATCH] CVE-2020-14383: s4/dns: Ensure variable initialization with - NULL. do not crash when additional data not found -MIME-Version: 1.0 -Content-Type: text/plain; charset=UTF-8 -Content-Transfer-Encoding: 8bit - -Found by Francis Brosnan Blázquez <francis@aspl.es>. -Based on patches from Francis Brosnan Blázquez <francis@aspl.es> -and Jeremy Allison <jra@samba.org> - -BUG: https://bugzilla.samba.org/show_bug.cgi?id=14472 -BUG: https://bugzilla.samba.org/show_bug.cgi?id=12795 - -Signed-off-by: Douglas Bagnall <douglas.bagnall@catalyst.net.nz> -Reviewed-by: Jeremy Allison <jra@samba.org> - -Autobuild-User(master): Douglas Bagnall <dbagnall@samba.org> -Autobuild-Date(master): Mon Aug 24 00:21:41 UTC 2020 on sn-devel-184 - -(based on commit df98e7db04c901259dd089e20cd557bdbdeaf379) -(based on commit 7afe449e7201be92bed8e53cbb37b74af720ef4e - -Signed-off-by: Zheng Ruoqin <zhengrq.fnst@cn.fujitsu.com> ---- - .../rpc_server/dnsserver/dcerpc_dnsserver.c | 31 ++++++++++--------- - 1 file changed, 17 insertions(+), 14 deletions(-) - -diff --git a/source4/rpc_server/dnsserver/dcerpc_dnsserver.c b/source4/rpc_server/dnsserver/dcerpc_dnsserver.c -index 910de9a1..618c7096 100644 ---- a/source4/rpc_server/dnsserver/dcerpc_dnsserver.c -+++ b/source4/rpc_server/dnsserver/dcerpc_dnsserver.c -@@ -1754,15 +1754,17 @@ static WERROR dnsserver_enumerate_records(struct dnsserver_state *dsstate, - TALLOC_CTX *tmp_ctx; - char *name; - const char * const attrs[] = { "name", "dnsRecord", NULL }; -- struct ldb_result *res; -- struct DNS_RPC_RECORDS_ARRAY *recs; -+ struct ldb_result *res = NULL; -+ struct DNS_RPC_RECORDS_ARRAY *recs = NULL; - char **add_names = NULL; -- char *rname; -+ char *rname = NULL; - const char *preference_name = NULL; - int add_count = 0; - int i, ret, len; - WERROR status; -- struct dns_tree *tree, *base, *node; -+ struct dns_tree *tree = NULL; -+ struct dns_tree *base = NULL; -+ struct dns_tree *node = NULL; - - tmp_ctx = talloc_new(mem_ctx); - W_ERROR_HAVE_NO_MEMORY(tmp_ctx); -@@ -1845,15 +1847,15 @@ static WERROR dnsserver_enumerate_records(struct dnsserver_state *dsstate, - } - } - -- talloc_free(res); -- talloc_free(tree); -- talloc_free(name); -+ TALLOC_FREE(res); -+ TALLOC_FREE(tree); -+ TALLOC_FREE(name); - - /* Add any additional records */ - if (select_flag & DNS_RPC_VIEW_ADDITIONAL_DATA) { - for (i=0; i<add_count; i++) { -- struct dnsserver_zone *z2; -- -+ struct dnsserver_zone *z2 = NULL; -+ struct ldb_message *msg = NULL; - /* Search all the available zones for additional name */ - for (z2 = dsstate->zones; z2; z2 = z2->next) { - char *encoded_name; -@@ -1865,14 +1867,15 @@ static WERROR dnsserver_enumerate_records(struct dnsserver_state *dsstate, - LDB_SCOPE_ONELEVEL, attrs, - "(&(objectClass=dnsNode)(name=%s)(!(dNSTombstoned=TRUE)))", - encoded_name); -- talloc_free(name); -+ TALLOC_FREE(name); - if (ret != LDB_SUCCESS) { - continue; - } - if (res->count == 1) { -+ msg = res->msgs[0]; - break; - } else { -- talloc_free(res); -+ TALLOC_FREE(res); - continue; - } - } -@@ -1885,10 +1888,10 @@ static WERROR dnsserver_enumerate_records(struct dnsserver_state *dsstate, - } - status = dns_fill_records_array(tmp_ctx, NULL, DNS_TYPE_A, - select_flag, rname, -- res->msgs[0], 0, recs, -+ msg, 0, recs, - NULL, NULL); -- talloc_free(rname); -- talloc_free(res); -+ TALLOC_FREE(rname); -+ TALLOC_FREE(res); - } - } - --- -2.25.1 - diff --git a/meta-openembedded/meta-networking/recipes-connectivity/samba/samba/glibc_only.patch b/meta-openembedded/meta-networking/recipes-connectivity/samba/samba/glibc_only.patch deleted file mode 100644 index d07ec0df1..000000000 --- a/meta-openembedded/meta-networking/recipes-connectivity/samba/samba/glibc_only.patch +++ /dev/null @@ -1,28 +0,0 @@ -From 062cf74b498c1d12fd76f9d9bca926ac806e0b99 Mon Sep 17 00:00:00 2001 -From: Changqing Li <changqing.li@windriver.com> -Date: Thu, 20 Jun 2019 14:15:18 +0800 -Subject: [PATCH] glibc only fix - -Signed-off-by: Changqing Li <changqing.li@windriver.com> ---- - ctdb/tests/src/test_mutex_raw.c | 2 ++ - 1 file changed, 2 insertions(+) - -diff --git a/ctdb/tests/src/test_mutex_raw.c b/ctdb/tests/src/test_mutex_raw.c -index 926a525..814343f 100644 ---- a/ctdb/tests/src/test_mutex_raw.c -+++ b/ctdb/tests/src/test_mutex_raw.c -@@ -291,8 +291,10 @@ int main(int argc, const char **argv) - "failed\n"); - exit (EXIT_FAILURE); - } -+#ifdef __GLIBC__ - } else if (ret == EBUSY) { - printf("INFO: pid=%u\n", mutex->__data.__owner); -+#endif - } else if (ret == 0) { - pthread_mutex_unlock(mutex); - } --- -2.7.4 - diff --git a/meta-openembedded/meta-networking/recipes-connectivity/samba/samba/0001-samba-fix-musl-lib-without-innetgr.patch b/meta-openembedded/meta-networking/recipes-connectivity/samba/samba/samba-fix-musl-lib-without-innetgr.patch index fb12a10e2..fb12a10e2 100644 --- a/meta-openembedded/meta-networking/recipes-connectivity/samba/samba/0001-samba-fix-musl-lib-without-innetgr.patch +++ b/meta-openembedded/meta-networking/recipes-connectivity/samba/samba/samba-fix-musl-lib-without-innetgr.patch diff --git a/meta-openembedded/meta-networking/recipes-connectivity/samba/samba/smb.conf b/meta-openembedded/meta-networking/recipes-connectivity/samba/samba/smb.conf index d6bde417f..588491ee6 100644 --- a/meta-openembedded/meta-networking/recipes-connectivity/samba/samba/smb.conf +++ b/meta-openembedded/meta-networking/recipes-connectivity/samba/samba/smb.conf @@ -32,17 +32,6 @@ # Change this to the workgroup/NT-domain name your Samba server will part of workgroup = WORKGROUP -# Windows Internet Name Serving Support Section: -# WINS Support - Tells the NMBD component of Samba to enable its WINS Server -# wins support = no - -# WINS Server - Tells the NMBD components of Samba to be a WINS Client -# Note: Samba can be either a WINS Server, or a WINS Client, but NOT both -; wins server = w.x.y.z - -# This will prevent nmbd to search for NetBIOS names through DNS. - dns proxy = no - #### Networking #### # The specific set of interfaces / networks to bind to @@ -68,14 +57,9 @@ # Cap the size of the individual log files (in KiB). max log size = 1000 -# If you want Samba to only log through syslog then set the following -# parameter to 'yes'. -# syslog only = no - -# We want Samba to log a minimum amount of information to syslog. Everything -# should go to /var/log/samba/log.{smbd,nmbd} instead. If you want to log -# through syslog you should set the following parameter to something higher. - syslog = 0 +# We want Samba to only log to /var/log/samba/log.{smbd,nmbd}. +# Append syslog@1 if you want important messages to be sent to syslog too. + logging = file # Do something sensible when Samba crashes: mail the admin a backtrace panic action = /usr/share/samba/panic-action %d @@ -94,10 +78,6 @@ # new domain. server role = standalone server -# If you are using encrypted passwords, Samba will need to know what -# password database type you are using. - passdb backend = tdbsam - obey pam restrictions = yes # This boolean parameter controls whether Samba attempts to sync the Unix @@ -123,8 +103,8 @@ ########## Domains ########### # -# The following settings only takes effect if 'server role = primary -# classic domain controller', 'server role = backup domain controller' +# The following settings only takes effect if 'server role = classic +# primary domain controller', 'server role = classic backup domain controller' # or 'domain logons' is set # @@ -172,15 +152,17 @@ # Some defaults for winbind (make sure you're not using the ranges # for something else.) -; idmap uid = 10000-20000 -; idmap gid = 10000-20000 +; idmap config * : backend = tdb +; idmap config * : range = 3000-7999 +; idmap config YOURDOMAINHERE : backend = tdb +; idmap config YOURDOMAINHERE : range = 100000-999999 ; template shell = /bin/bash # Setup usershare options to enable non-root users to share folders # with the net usershare command. -# Maximum number of usershare. 0 (default) means that usershare is disabled. -; usershare max shares = 100 +# Maximum number of usershare. 0 means that usershare is disabled. +# usershare max shares = 100 # Allow users who've been granted usershare privileges to create # public shares, not just authenticated ones diff --git a/meta-openembedded/meta-networking/recipes-connectivity/samba/samba/smb_conf-4.7.0.patch b/meta-openembedded/meta-networking/recipes-connectivity/samba/samba/smb_conf-4.7.0.patch deleted file mode 100644 index 6ae292835..000000000 --- a/meta-openembedded/meta-networking/recipes-connectivity/samba/samba/smb_conf-4.7.0.patch +++ /dev/null @@ -1,28 +0,0 @@ -From f99b6a8617df6a46f41fb68ffafb2608dbb6681e Mon Sep 17 00:00:00 2001 -From: Joe Slater <joe.slater@windriver.com> -Date: Wed, 8 Nov 2017 11:58:05 -0800 -Subject: [PATCH] samba: correct log files location - -We use /var/log/samba. - -Upstream-Status: Pending - -Signed-off-by: Joe Slater <joe.slater@windriver.com> - ---- - examples/smb.conf.default | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/examples/smb.conf.default b/examples/smb.conf.default -index 2f20720..44c1aa8 100644 ---- a/examples/smb.conf.default -+++ b/examples/smb.conf.default -@@ -52,7 +52,7 @@ - - # this tells Samba to use a separate log file for each machine - # that connects -- log file = /usr/local/samba/var/log.%m -+ log file = /var/log/samba/log.%m - - # Put a capping on the size of the log files (in Kb). - max log size = 50 diff --git a/meta-openembedded/meta-networking/recipes-connectivity/samba/samba_4.10.18.bb b/meta-openembedded/meta-networking/recipes-connectivity/samba/samba_4.14.5.bb index 166bf5727..5c5ce3670 100644 --- a/meta-openembedded/meta-networking/recipes-connectivity/samba/samba_4.10.18.bb +++ b/meta-openembedded/meta-networking/recipes-connectivity/samba/samba_4.14.5.bb @@ -14,40 +14,40 @@ ${SAMBA_MIRROR} http://www.mirrorservice.org/sites/ftp.samba.org \n \ SRC_URI = "${SAMBA_MIRROR}/stable/samba-${PV}.tar.gz \ file://smb.conf \ - file://16-do-not-check-xsltproc-manpages.patch \ - file://20-do-not-import-target-module-while-cross-compile.patch \ - file://21-add-config-option-without-valgrind.patch \ - file://netdb_defines.patch \ - file://glibc_only.patch \ - file://iconv-4.7.0.patch \ - file://dnsserver-4.7.0.patch \ - file://smb_conf-4.7.0.patch \ file://volatiles.03_samba \ - file://0001-waf-add-support-of-cross_compile.patch \ - file://0001-lib-replace-wscript-Avoid-generating-nested-main-fun.patch \ - file://0002-util_sec.c-Move-__thread-variable-to-global-scope.patch \ - file://0001-Add-options-to-configure-the-use-of-libbsd.patch \ - file://0001-nsswitch-nsstest.c-Avoid-nss-function-conflicts-with.patch \ - file://CVE-2020-14318.patch \ - file://CVE-2020-14383.patch \ + file://0001-Don-t-check-xsltproc-manpages.patch \ + file://0002-do-not-import-target-module-while-cross-compile.patch \ + file://0003-Add-config-option-without-valgrind.patch \ + file://0004-Add-options-to-configure-the-use-of-libbsd.patch \ + file://0005-samba-build-dnsserver_common-code.patch \ + file://0006-samba-defeat-iconv-test.patch \ + file://0007-wscript_configure_system_gnutls-disable-check-gnutls.patch \ + file://0008-source3-wscript-disable-check-fcntl-F_OWNER_EX.patch \ + file://0009-source3-wscript-disable-check-fcntl-RW_HINTS.patch \ " + SRC_URI_append_libc-musl = " \ + file://netdb_defines.patch \ file://samba-pam.patch \ file://samba-4.3.9-remove-getpwent_r.patch \ file://cmocka-uintptr_t.patch \ - file://0001-samba-fix-musl-lib-without-innetgr.patch \ - " + file://samba-fix-musl-lib-without-innetgr.patch \ + " + +SRC_URI[md5sum] = "96d275e31387e6c403d6c16465d15b7e" +SRC_URI[sha256sum] = "bb6ef5d2f16b85288d823578abc453d9a80514c42e5a2ea2c4e3c60dc42335c3" -SRC_URI[md5sum] = "f006a3d1876113e4a049015969d20fe6" -SRC_URI[sha256sum] = "7dcfc2aaaac565b959068788e6a43fc79ce2a03e7d523f5843f7a9fddffc7c2c" +UPSTREAM_CHECK_REGEX = "samba\-(?P<pver>4\.14(\.\d+)+).tar.gz" -UPSTREAM_CHECK_REGEX = "samba\-(?P<pver>4\.10(\.\d+)+).tar.gz" +inherit systemd waf-samba cpan-base perlnative update-rc.d perl-version + +# CVE-2011-2411 is valnerble only on HP NonStop Servers. +CVE_CHECK_WHITELIST += "CVE-2011-2411" -inherit systemd waf-samba cpan-base perlnative update-rc.d # remove default added RDEPENDS on perl RDEPENDS_${PN}_remove = "perl" -DEPENDS += "readline virtual/libiconv zlib popt libtalloc libtdb libtevent libldb libaio libpam libtasn1 jansson" +DEPENDS += "readline virtual/libiconv zlib popt libtalloc libtdb libtevent libldb libaio libpam libtasn1 jansson libparse-yapp-perl-native gnutls" inherit features_check REQUIRED_DISTRO_FEATURES = "pam" @@ -56,6 +56,8 @@ DEPENDS_append_libc-musl = " libtirpc" CFLAGS_append_libc-musl = " -I${STAGING_INCDIR}/tirpc" LDFLAGS_append_libc-musl = " -ltirpc" +COMPATIBLE_HOST_riscv32 = "null" + INITSCRIPT_NAME = "samba" INITSCRIPT_PARAMS = "start 20 3 5 . stop 20 0 1 6 ." @@ -76,7 +78,7 @@ export WAF_NO_PREFORK="yes" # Use krb5. Build active domain controller. # PACKAGECONFIG ??= "${@bb.utils.filter('DISTRO_FEATURES', 'systemd zeroconf', d)} \ - acl cups ad-dc gnutls ldap mitkrb5 \ + acl cups ad-dc ldap mitkrb5 \ " RDEPENDS_${PN}-ctdb-tests += "bash util-linux-getopt" @@ -96,19 +98,7 @@ PACKAGECONFIG[libunwind] = ", , libunwind" PACKAGECONFIG[gpgme] = ",--without-gpgme,," PACKAGECONFIG[lmdb] = ",--without-ldb-lmdb,lmdb," PACKAGECONFIG[libbsd] = "--with-libbsd, --without-libbsd, libbsd" - -# Building the AD (Active Directory) DC (Domain Controller) requires GnuTLS, -# And ad-dc doesn't work with mitkrb5 for versions prior to 4.7.0 according to: -# http://samba.2283325.n4.nabble.com/samba-4-6-6-Unknown-dependency-kdc-in-service-kdc-objlist-td4722096.html -# So the working combination is: -# 1) ad-dc: enable, gnutls: enable, mitkrb5: disable -# 2) ad-dc: disable, gnutls: enable/disable, mitkrb5: enable -# -# We are now at 4.7.0, so take the above with a grain of salt. We do not need to know where -# krb5kdc is unless ad-dc is enabled, but we tell configure anyhow. -# -PACKAGECONFIG[ad-dc] = "--with-experimental-mit-ad-dc,--without-ad-dc,," -PACKAGECONFIG[gnutls] = "--enable-gnutls,--disable-gnutls,gnutls," +PACKAGECONFIG[ad-dc] = "--with-experimental-mit-ad-dc,--without-ad-dc,python3-markdown python3-dnspython," PACKAGECONFIG[mitkrb5] = "--with-system-mitkrb5 --with-system-mitkdc=/usr/sbin/krb5kdc,,krb5," SAMBA4_IDMAP_MODULES="idmap_ad,idmap_rid,idmap_adex,idmap_hash,idmap_tdb2" @@ -140,6 +130,18 @@ EXTRA_OECONF += "--enable-fhs \ LDFLAGS += "-Wl,-z,relro,-z,now ${@bb.utils.contains('DISTRO_FEATURES', 'ld-is-gold', ' -fuse-ld=bfd ', '', d)}" +do_configure_append () { + cd ${S}/pidl/ + perl Makefile.PL PREFIX=${prefix} + sed -e 's,VENDORPREFIX)/lib/perl,VENDORPREFIX)/${baselib}/perl,g' \ + -e 's,PERLPREFIX)/lib/perl,PERLPREFIX)/${baselib}/perl,g' -i Makefile + +} + +do_compile_append () { + oe_runmake -C ${S}/pidl +} + do_install_append() { for section in 1 5 7; do install -d ${D}${mandir}/man$section @@ -182,11 +184,11 @@ do_install_append() { install -m644 packaging/systemd/samba.sysconfig ${D}${sysconfdir}/default/samba # the items are from ctdb/tests/run_tests.sh - for d in onnode takeover tool eventscripts cunit simple complex; do - testdir=${D}${datadir}/ctdb-tests/$d + for d in cunit eventd eventscripts onnode shellcheck takeover takeover_helper tool; do + testdir=${D}${datadir}/ctdb-tests/UNIT/$d install -d $testdir - cp ${S}/ctdb/tests/$d/*.sh $testdir - cp -r ${S}/ctdb/tests/$d/scripts ${S}/ctdb/tests/$d/stubs $testdir || true + cp ${S}/ctdb/tests/UNIT/$d/*.sh $testdir + cp -r ${S}/ctdb/tests/UNIT/$d/scripts ${S}/ctdb/tests/UNIT/$d/stubs $testdir || true done # fix file-rdeps qa warning @@ -197,7 +199,7 @@ do_install_append() { chmod 0750 ${D}${sysconfdir}/sudoers.d || true rm -rf ${D}/run ${D}${localstatedir}/run ${D}${localstatedir}/log - for f in samba-gpupdate samba_upgradedns samba_spnupdate samba_kcc samba_dnsupdate; do + for f in samba-gpupdate samba_upgradedns samba_spnupdate samba_kcc samba_dnsupdate samba_downgrade_db; do if [ -f "${D}${sbindir}/$f" ]; then sed -i -e 's,${PYTHON},/usr/bin/env python3,g' ${D}${sbindir}/$f fi @@ -205,7 +207,11 @@ do_install_append() { if [ -f "${D}${bindir}/samba-tool" ]; then sed -i -e 's,${PYTHON},/usr/bin/env python3,g' ${D}${bindir}/samba-tool fi - + + oe_runmake -C ${S}/pidl DESTDIR=${D} install_vendor + find ${D}${libdir}/ -type f -name "perllocal.pod" | xargs rm -f + rm -rf ${D}${libdir}/perl5/vendor_perl/${PERLVERSION}/${BUILD_SYS}/auto/Parse/Pidl/.packlist + sed -i -e '1s,#!.*perl,#!${bindir}/env perl,' ${D}${bindir}/pidl } PACKAGES =+ "${PN}-python3 ${PN}-pidl \ @@ -310,8 +316,10 @@ FILES_smbclient = "${bindir}/cifsdd \ ${bindir}/smbtree \ ${libdir}/samba/smbspool_krb5_wrapper" -RDEPENDS_${PN}-pidl_append = " perl" -FILES_${PN}-pidl = "${bindir}/pidl ${datadir}/perl5/Parse" +RDEPENDS_${PN}-pidl_append = " perl libparse-yapp-perl" +FILES_${PN}-pidl = "${bindir}/pidl \ + ${libdir}/perl5 \ + " RDEPENDS_${PN}-client = "\ smbclient \ |