[SCM] Samba Shared Repository - branch master updated

Stefan Metzmacher metze at samba.org
Tue Jun 6 09:34:01 UTC 2023


The branch, master has been updated
       via  fcedf5514b1 smbcacls/smbcquotas: check for valid UNC path
       via  61f3e16d9f8 bootstrap: Add a note about cleaning bootstrap/
       via  bb46379845f Configure builtin heimdal to use KEYRING ccache
      from  198a844ff51 third_party: Fix version of socket_wrapper and uid_wrapper

https://git.samba.org/?p=samba.git;a=shortlog;h=master


- Log -----------------------------------------------------------------
commit fcedf5514b121914483bbc0ffe77580929093ac6
Author: Björn Jacke <bj at sernet.de>
Date:   Tue Jan 10 12:25:35 2023 +0100

    smbcacls/smbcquotas: check for valid UNC path
    
    we used to strip the first two characters of the path and used that.
    
    BUG: https://bugzilla.samba.org/show_bug.cgi?id=2312
    
    Signed-off-by: Bjoern Jacke <bjacke at samba.org>
    Reviewed-by: Stefan Metzmacher <metze at samba.org>
    
    Autobuild-User(master): Stefan Metzmacher <metze at samba.org>
    Autobuild-Date(master): Tue Jun  6 09:33:47 UTC 2023 on atb-devel-224

commit 61f3e16d9f8d6907b0b8576ae0cf4c4e48c0b37e
Author: Łukasz Stelmach <l.stelmach at samsung.com>
Date:   Thu May 11 13:33:45 2023 +0200

    bootstrap: Add a note about cleaning bootstrap/
    
    Signed-off-by: Łukasz Stelmach <l.stelmach at samsung.com>
    Reviewed-by: Andrew Bartlett <abartlet at samba.org>
    Reviewed-by: Douglas Bagnall <douglas.bagnall at catalyst.net.nz>
    Reviewed-by: Stefan Metzmacher <metze at samba.org>

commit bb46379845fb2b3d4e04dca1a8493a8e2126a6fe
Author: Łukasz Stelmach <l.stelmach at samsung.com>
Date:   Fri Mar 31 19:42:13 2023 +0200

    Configure builtin heimdal to use KEYRING ccache
    
    Signed-off-by: Łukasz Stelmach <l.stelmach at samsung.com>
    Reviewed-by: Andrew Bartlett <abartlet at samba.org>
    Reviewed-by: Douglas Bagnall <douglas.bagnall at catalyst.net.nz>
    Reviewed-by: Stefan Metzmacher <metze at samba.org>

-----------------------------------------------------------------------

Summary of changes:
 .gitlab-ci-main.yml                                     |  2 +-
 bootstrap/README.md                                     |  9 +++++++++
 bootstrap/config.py                                     |  2 +-
 bootstrap/generated-dists/debian11/bootstrap.sh         |  1 +
 bootstrap/generated-dists/debian11/packages.yml         |  1 +
 bootstrap/generated-dists/ubuntu1804-32bit/bootstrap.sh |  1 +
 bootstrap/generated-dists/ubuntu1804-32bit/packages.yml |  1 +
 bootstrap/generated-dists/ubuntu1804/bootstrap.sh       |  1 +
 bootstrap/generated-dists/ubuntu1804/packages.yml       |  1 +
 bootstrap/generated-dists/ubuntu2004/bootstrap.sh       |  1 +
 bootstrap/generated-dists/ubuntu2004/packages.yml       |  1 +
 bootstrap/generated-dists/ubuntu2204/bootstrap.sh       |  1 +
 bootstrap/generated-dists/ubuntu2204/packages.yml       |  1 +
 bootstrap/sha1sum.txt                                   |  2 +-
 source3/utils/smbcacls.c                                |  5 +++++
 source3/utils/smbcquotas.c                              |  5 +++++
 third_party/heimdal_build/wscript_build                 |  8 ++++++--
 third_party/heimdal_build/wscript_configure             | 10 ++++++++++
 wscript                                                 | 15 +++++++++++++++
 19 files changed, 63 insertions(+), 5 deletions(-)


Changeset truncated at 500 lines:

diff --git a/.gitlab-ci-main.yml b/.gitlab-ci-main.yml
index 4208cbcc104..279c1087789 100644
--- a/.gitlab-ci-main.yml
+++ b/.gitlab-ci-main.yml
@@ -47,7 +47,7 @@ variables:
   # Set this to the contents of bootstrap/sha1sum.txt
   # which is generated by bootstrap/template.py --render
   #
-  SAMBA_CI_CONTAINER_TAG: cfddaa8d36c3f512827bd96fe05c30f7f8337f4b
+  SAMBA_CI_CONTAINER_TAG: 6f4e1c3f1eb3b3236ae793c11def2135386a0ee9
   #
   # We use the ubuntu2204 image as default as
   # it matches what we have on atb-devel-224
diff --git a/bootstrap/README.md b/bootstrap/README.md
index d9a60878f61..6b3de983728 100644
--- a/bootstrap/README.md
+++ b/bootstrap/README.md
@@ -34,6 +34,15 @@ Just calculate the sha1sum for consistency checks:
 The checksum needs to be added as `SAMBA_CI_CONTAINER_TAG` in
 the toplevel .gitlab-ci-main.yml file.
 
+NOTE: Remember to remove any files not tracked by git from the bootstrap
+directory before running bootstrap/template.py.
+
+  git clean -dfx bootstrap
+
+Otherwise the files will affect the checksum but because they are not
+checked in and won't be pushed to CI system the checksum calculated there
+won't match.
+
 ## User Stories
 
 As a gitlab-ci user, I can use this tool to build new CI docker images:
diff --git a/bootstrap/config.py b/bootstrap/config.py
index fd1753fb3e1..c67ab9184ab 100644
--- a/bootstrap/config.py
+++ b/bootstrap/config.py
@@ -181,7 +181,7 @@ PKGS = [
     # rpm has no pkg for docbook-xml
     ('docbook-xml', 'docbook-dtds'),
     ('docbook-xsl', 'docbook-style-xsl'),
-    ('', 'keyutils-libs-devel'),
+    ('libkeyutils-dev', 'keyutils-libs-devel'),
     ('', 'which'),
     ('xz-utils', 'xz')
 ]
diff --git a/bootstrap/generated-dists/debian11/bootstrap.sh b/bootstrap/generated-dists/debian11/bootstrap.sh
index 1f9cddfe8ee..1aac852e83e 100755
--- a/bootstrap/generated-dists/debian11/bootstrap.sh
+++ b/bootstrap/generated-dists/debian11/bootstrap.sh
@@ -57,6 +57,7 @@ apt-get -y install \
     libjansson-dev \
     libjs-jquery \
     libjson-perl \
+    libkeyutils-dev \
     libkrb5-dev \
     libldap2-dev \
     liblmdb-dev \
diff --git a/bootstrap/generated-dists/debian11/packages.yml b/bootstrap/generated-dists/debian11/packages.yml
index e6336463721..1ff63e4b272 100644
--- a/bootstrap/generated-dists/debian11/packages.yml
+++ b/bootstrap/generated-dists/debian11/packages.yml
@@ -46,6 +46,7 @@ packages:
   - libjansson-dev
   - libjs-jquery
   - libjson-perl
+  - libkeyutils-dev
   - libkrb5-dev
   - libldap2-dev
   - liblmdb-dev
diff --git a/bootstrap/generated-dists/ubuntu1804-32bit/bootstrap.sh b/bootstrap/generated-dists/ubuntu1804-32bit/bootstrap.sh
index 56e7b805dfd..702f5153382 100755
--- a/bootstrap/generated-dists/ubuntu1804-32bit/bootstrap.sh
+++ b/bootstrap/generated-dists/ubuntu1804-32bit/bootstrap.sh
@@ -58,6 +58,7 @@ apt-get -y install \
     libjansson-dev \
     libjs-jquery \
     libjson-perl \
+    libkeyutils-dev \
     libkrb5-dev \
     libldap2-dev \
     liblmdb-dev \
diff --git a/bootstrap/generated-dists/ubuntu1804-32bit/packages.yml b/bootstrap/generated-dists/ubuntu1804-32bit/packages.yml
index b42b4d05989..78a73aec01f 100644
--- a/bootstrap/generated-dists/ubuntu1804-32bit/packages.yml
+++ b/bootstrap/generated-dists/ubuntu1804-32bit/packages.yml
@@ -47,6 +47,7 @@ packages:
   - libjansson-dev
   - libjs-jquery
   - libjson-perl
+  - libkeyutils-dev
   - libkrb5-dev
   - libldap2-dev
   - liblmdb-dev
diff --git a/bootstrap/generated-dists/ubuntu1804/bootstrap.sh b/bootstrap/generated-dists/ubuntu1804/bootstrap.sh
index 56e7b805dfd..702f5153382 100755
--- a/bootstrap/generated-dists/ubuntu1804/bootstrap.sh
+++ b/bootstrap/generated-dists/ubuntu1804/bootstrap.sh
@@ -58,6 +58,7 @@ apt-get -y install \
     libjansson-dev \
     libjs-jquery \
     libjson-perl \
+    libkeyutils-dev \
     libkrb5-dev \
     libldap2-dev \
     liblmdb-dev \
diff --git a/bootstrap/generated-dists/ubuntu1804/packages.yml b/bootstrap/generated-dists/ubuntu1804/packages.yml
index b42b4d05989..78a73aec01f 100644
--- a/bootstrap/generated-dists/ubuntu1804/packages.yml
+++ b/bootstrap/generated-dists/ubuntu1804/packages.yml
@@ -47,6 +47,7 @@ packages:
   - libjansson-dev
   - libjs-jquery
   - libjson-perl
+  - libkeyutils-dev
   - libkrb5-dev
   - libldap2-dev
   - liblmdb-dev
diff --git a/bootstrap/generated-dists/ubuntu2004/bootstrap.sh b/bootstrap/generated-dists/ubuntu2004/bootstrap.sh
index 56e7b805dfd..702f5153382 100755
--- a/bootstrap/generated-dists/ubuntu2004/bootstrap.sh
+++ b/bootstrap/generated-dists/ubuntu2004/bootstrap.sh
@@ -58,6 +58,7 @@ apt-get -y install \
     libjansson-dev \
     libjs-jquery \
     libjson-perl \
+    libkeyutils-dev \
     libkrb5-dev \
     libldap2-dev \
     liblmdb-dev \
diff --git a/bootstrap/generated-dists/ubuntu2004/packages.yml b/bootstrap/generated-dists/ubuntu2004/packages.yml
index b42b4d05989..78a73aec01f 100644
--- a/bootstrap/generated-dists/ubuntu2004/packages.yml
+++ b/bootstrap/generated-dists/ubuntu2004/packages.yml
@@ -47,6 +47,7 @@ packages:
   - libjansson-dev
   - libjs-jquery
   - libjson-perl
+  - libkeyutils-dev
   - libkrb5-dev
   - libldap2-dev
   - liblmdb-dev
diff --git a/bootstrap/generated-dists/ubuntu2204/bootstrap.sh b/bootstrap/generated-dists/ubuntu2204/bootstrap.sh
index 481d46c186c..83012cda983 100755
--- a/bootstrap/generated-dists/ubuntu2204/bootstrap.sh
+++ b/bootstrap/generated-dists/ubuntu2204/bootstrap.sh
@@ -58,6 +58,7 @@ apt-get -y install \
     libjansson-dev \
     libjs-jquery \
     libjson-perl \
+    libkeyutils-dev \
     libkrb5-dev \
     libldap2-dev \
     liblmdb-dev \
diff --git a/bootstrap/generated-dists/ubuntu2204/packages.yml b/bootstrap/generated-dists/ubuntu2204/packages.yml
index 91e48034a05..7d9f66e7f1f 100644
--- a/bootstrap/generated-dists/ubuntu2204/packages.yml
+++ b/bootstrap/generated-dists/ubuntu2204/packages.yml
@@ -47,6 +47,7 @@ packages:
   - libjansson-dev
   - libjs-jquery
   - libjson-perl
+  - libkeyutils-dev
   - libkrb5-dev
   - libldap2-dev
   - liblmdb-dev
diff --git a/bootstrap/sha1sum.txt b/bootstrap/sha1sum.txt
index 3a6671d4fb8..77937ea6800 100644
--- a/bootstrap/sha1sum.txt
+++ b/bootstrap/sha1sum.txt
@@ -1 +1 @@
-cfddaa8d36c3f512827bd96fe05c30f7f8337f4b
+6f4e1c3f1eb3b3236ae793c11def2135386a0ee9
diff --git a/source3/utils/smbcacls.c b/source3/utils/smbcacls.c
index 71cd93b8bc7..6e6a5d932be 100644
--- a/source3/utils/smbcacls.c
+++ b/source3/utils/smbcacls.c
@@ -1736,6 +1736,11 @@ int main(int argc, char *argv[])
 		return -1;
 	}
 
+	if (strncmp(path, "\\\\", 2) && strncmp(path, "//", 2)) {
+		printf("Invalid argument: %s\n", path);
+		return -1;
+	}
+
 	if(!poptPeekArg(pc)) {
 		poptPrintUsage(pc, stderr, 0);
 		return -1;
diff --git a/source3/utils/smbcquotas.c b/source3/utils/smbcquotas.c
index 748334a04a6..ce8ca2fafd0 100644
--- a/source3/utils/smbcquotas.c
+++ b/source3/utils/smbcquotas.c
@@ -760,6 +760,11 @@ int main(int argc, char *argv[])
 		exit(EXIT_PARSE_ERROR);
 	}
 
+	if (strncmp(path, "\\\\", 2) && strncmp(path, "//", 2)) {
+		printf("Invalid argument: %s\n", path);
+		return -1;
+	}
+
 	poptFreeContext(pc);
 	samba_cmdline_burn(argc, argv);
 
diff --git a/third_party/heimdal_build/wscript_build b/third_party/heimdal_build/wscript_build
index 1518afe9ef4..8aea52b55f5 100644
--- a/third_party/heimdal_build/wscript_build
+++ b/third_party/heimdal_build/wscript_build
@@ -710,7 +710,7 @@ if not bld.CONFIG_SET("USING_SYSTEM_KRB5"):
                                    get_port.c init_creds.c init_creds_pw.c
                                    kcm.c keyblock.c keytab.c keytab_any.c
                                    keytab_file.c keytab_memory.c
-                                   keytab_keyfile.c krbhst.c log.c
+                                   keytab_keyfile.c krbhst.c krcache.c log.c
                                    mcache.c misc.c mk_error.c mk_priv.c
                                    mk_rep.c mk_req.c mk_req_ext.c
                                    mit_glue.c net_read.c net_write.c n-fold.c padata.c pkinit.c pkinit-ec.c
@@ -726,10 +726,14 @@ if not bld.CONFIG_SET("USING_SYSTEM_KRB5"):
                                    mk_cred.c kx509_err.c
                                    k524_err.c krb_err.c k5e1_err.c''')]  + ["../heimdal_build/krb5-glue.c"]
 
+    krb5_keyutils_dep = ''
+    if bld.CONFIG_SET('HAVE_KEYCTL_GET_PERSISTENT'):
+        krb5_keyutils_dep = ' keyutils'
+
     HEIMDAL_LIBRARY('krb5', KRB5_SOURCE,
         version_script='lib/krb5/version-script.map',
                         includes='../heimdal/lib/krb5 ../heimdal/lib/asn1 ../heimdal/include',
-                deps='roken wind asn1 hx509 HEIMDAL_KX509_ASN1 hcrypto com_err HEIMDAL_CONFIG heimbase execinfo samba_intl HEIMDAL_IPC_CLIENT KRB5_CRYPTO',
+                deps='roken wind asn1 hx509 HEIMDAL_KX509_ASN1 hcrypto com_err HEIMDAL_CONFIG heimbase execinfo samba_intl HEIMDAL_IPC_CLIENT KRB5_CRYPTO' + krb5_keyutils_dep,
                 cflags=['-DLOCALSTATEDIR="/2"'] + bld.dynconfig_cflags(),
                         )
     KRB5_PROTO_SOURCE = KRB5_SOURCE + ['lib/krb5/expand_path.c', 'lib/krb5/plugin.c', 'lib/krb5/context.c', 'lib/krb5/crypto.c']
diff --git a/third_party/heimdal_build/wscript_configure b/third_party/heimdal_build/wscript_configure
index a97a1b9baa8..645ce3a3468 100644
--- a/third_party/heimdal_build/wscript_configure
+++ b/third_party/heimdal_build/wscript_configure
@@ -66,6 +66,16 @@ conf.CHECK_FUNCS('dirfd', headers='dirent.h')
 conf.CHECK_DECLS('dirfd', reverse=True, headers='dirent.h')
 conf.CHECK_STRUCTURE_MEMBER('DIR', 'dd_fd', define='HAVE_DIR_DD_FD',  headers='dirent.h')
 
+if conf.env['WITH_KERNEL_KEYRING'] != False:
+    require_keyutils = False
+    if conf.env['WITH_KERNEL_KEYRING'] == True:
+        require_keyutils = True
+    conf.CHECK_FUNCS_IN('add_key keyctl_get_persistent',
+                        'keyutils', headers='keyutils.h',
+                        mandatory=require_keyutils)
+    conf.CHECK_SIZEOF('key_serial_t', headers='keyutils.h',
+                      critical=require_keyutils)
+
 heimdal_no_error_flags = ['-Wno-error=discarded-qualifiers',
                           '-Wno-error=cast-qual',
                           '-Wno-error=missing-field-initializers',
diff --git a/wscript b/wscript
index b219297f0e0..681e669d019 100644
--- a/wscript
+++ b/wscript
@@ -116,6 +116,14 @@ def options(opt):
                   help=("Disable RELRO builds"),
                   action="store_false", dest='enable_relro')
 
+    opt.add_option('--with-kernel-keyring',
+                  help=('Enable kernely keyring support for credential storage ' +
+                        '(default if keyutils libraries are available)'),
+                  action='store_true', dest='enable_keyring')
+    opt.add_option('--without-kernel-keyring',
+                  help=('Disable kernely keyring support for credential storage'),
+                  action='store_false', dest='enable_keyring')
+
     gr = opt.option_group('developer options')
 
     opt.load('python') # options for disabling pyc or pyo compilation
@@ -200,6 +208,13 @@ def configure(conf):
                    mandatory=True)
     conf.CHECK_FUNCS_IN('inflateInit2', 'z')
 
+    if Options.options.enable_keyring != False:
+        conf.env['WITH_KERNEL_KEYRING'] = 'auto'
+        if Options.options.enable_keyring == True:
+            conf.env['WITH_KERNEL_KEYRING'] = True
+    else:
+        conf.env['WITH_KERNEL_KEYRING'] = False
+
     if conf.CHECK_FOR_THIRD_PARTY():
         conf.RECURSE('third_party')
     else:


-- 
Samba Shared Repository



More information about the samba-cvs mailing list