From: Bjorn Ketelaars Subject: UPDATE net/samba-4.25.0 To: ports@openbsd.org, Ian McWilliam Date: Fri, 25 Sep 2026 07:13:04 +0200 Diff below updates net/samba to 4.25.0. Changes: https://www.samba.org/samba/history/samba-4.25.0.html. Lightly run tested on amd64. Bumped couple of shared libs per check_sym's suggestion. diff --git Makefile Makefile index 9be2a94b209..3f44577efcc 100644 --- Makefile +++ Makefile @@ -1,4 +1,4 @@ -VERSION = 4.24.7 +VERSION = 4.25.0 DISTNAME = samba-${VERSION} EPOCH = 0 @@ -17,18 +17,18 @@ SHARED_LIBS = dcerpc 3.0 \ ldb 2.4 \ ndr 4.1 \ ndr-krb5pac 1.4 \ - ndr-nbt 2.1 \ + ndr-nbt 2.2 \ ndr-standard 6.2 \ netapi 3.4 \ samba-credentials 3.1 \ samba-errors 2.1 \ - samba-hostconfig 19.0 \ + samba-hostconfig 20.0 \ samba-passdb 3.2 \ samba-policy 0.0 \ - samba-util 14.0 \ + samba-util 15.0 \ samdb 6.0 \ smbclient 6.3 \ - smbconf 19.1 \ + smbconf 20.0 \ smbldap 1.0 \ tevent 2.4 \ tevent-util 2.0 \ @@ -83,7 +83,7 @@ LIB_DEPENDS-main = archivers/libarchive \ databases/tdb>=1.4.15 \ devel/jansson \ devel/libinotify \ - devel/libtalloc>=2.4.4 \ + devel/libtalloc>=2.5.0 \ devel/libtalloc,-python \ devel/popt \ net/avahi,-libs \ diff --git distinfo distinfo index 8916a3f0261..6a9d15ef89f 100644 --- distinfo +++ distinfo @@ -1,2 +1,2 @@ -SHA256 (samba-4.24.7.tar.gz) = Rbd0ekdFLv8rIVmkTMY+tDaQ0zn9EGkIjgI6AV/tBsc= -SIZE (samba-4.24.7.tar.gz) = 43450847 +SHA256 (samba-4.25.0.tar.gz) = Liy3KWgzs1uPen+3YEXgxXrcDCzQMmSzffXVjkDyhDc= +SIZE (samba-4.25.0.tar.gz) = 43571277 diff --git patches/patch-buildtools_wafsamba_samba_autoconf_py patches/patch-buildtools_wafsamba_samba_autoconf_py index ae7e992f100..30ac13a136d 100644 --- patches/patch-buildtools_wafsamba_samba_autoconf_py +++ patches/patch-buildtools_wafsamba_samba_autoconf_py @@ -5,7 +5,7 @@ Index: buildtools/wafsamba/samba_autoconf.py --- buildtools/wafsamba/samba_autoconf.py.orig +++ buildtools/wafsamba/samba_autoconf.py -@@ -963,6 +963,27 @@ def ADD_LDFLAGS(conf, flags, testflags=False): +@@ -968,6 +968,27 @@ def ADD_LDFLAGS(conf, flags, testflags=False): if not 'EXTRA_LDFLAGS' in conf.env: conf.env['EXTRA_LDFLAGS'] = [] conf.env['EXTRA_LDFLAGS'].extend(TO_LIST(flags)) @@ -33,7 +33,7 @@ Index: buildtools/wafsamba/samba_autoconf.py return flags -@@ -1034,7 +1055,7 @@ def SAMBA_CHECK_UNDEFINED_SYMBOL_FLAGS(conf): +@@ -1039,7 +1060,7 @@ def SAMBA_CHECK_UNDEFINED_SYMBOL_FLAGS(conf): # symbols used for fuzzers are only defined by compiler wrappers. return diff --git patches/patch-lib_tdb_wrap_tdb_wrap_c patches/patch-lib_tdb_wrap_tdb_wrap_c new file mode 100644 index 00000000000..2e98fa2d501 --- /dev/null +++ patches/patch-lib_tdb_wrap_tdb_wrap_c @@ -0,0 +1,17 @@ +Silent fallback to fcntl locking when optional TDB mutexes are unavailable. +Taken from https://gitlab.com/samba-team/samba/-/merge_requests/4700 + +Index: lib/tdb_wrap/tdb_wrap.c +--- lib/tdb_wrap/tdb_wrap.c.orig ++++ lib/tdb_wrap/tdb_wrap.c +@@ -151,8 +151,10 @@ struct tdb_wrap *tdb_wrap_open(TALLOC_CTX *mem_ctx, + + if (tdb_flags & TDB_MUTEX_LOCKING) { + if (!tdb_runtime_check_for_robust_mutexes()) { ++#ifdef HAVE_ROBUST_MUTEXES + DBG_ERR("mutexes requested but not " + "available\n"); ++#endif + tdb_flags &= ~TDB_MUTEX_LOCKING; + } + } diff --git patches/patch-lib_util_statvfs_c patches/patch-lib_util_statvfs_c new file mode 100644 index 00000000000..80690c8f900 --- /dev/null +++ patches/patch-lib_util_statvfs_c @@ -0,0 +1,15 @@ +Fix a type mismatch by passing OpenBSD's native struct statfs—which contains +non-standard fields like f_iosize and f_flags—instead of POSIX struct statvfs. + +Index: lib/util/statvfs.c +--- lib/util/statvfs.c.orig ++++ lib/util/statvfs.c +@@ -79,7 +79,7 @@ static int darwin_fs_capabilities(const char * path) + + #if defined(BSD_STYLE_STATVFS) + +-static void bsd_init_statvfs(const struct statvfs *src, ++static void bsd_init_statvfs(const struct statfs *src, + struct vfs_statvfs_struct *dst) + { + dst->OptimalTransferSize = src->f_iosize; diff --git patches/patch-source3_lib_dbwrap_dbwrap_open_c patches/patch-source3_lib_dbwrap_dbwrap_open_c new file mode 100644 index 00000000000..934cab06267 --- /dev/null +++ patches/patch-source3_lib_dbwrap_dbwrap_open_c @@ -0,0 +1,18 @@ +Silent fallback to fcntl locking when optional TDB mutexes are unavailable. +Taken from https://gitlab.com/samba-team/samba/-/merge_requests/4700 + +Index: source3/lib/dbwrap/dbwrap_open.c +--- source3/lib/dbwrap/dbwrap_open.c.orig ++++ source3/lib/dbwrap/dbwrap_open.c +@@ -127,9 +127,11 @@ struct db_context *db_open_ex(TALLOC_CTX *mem_ctx, + if (try_mutex) { + if (tdb_runtime_check_for_robust_mutexes()) { + tdb_flags |= TDB_MUTEX_LOCKING; ++#ifdef HAVE_ROBUST_MUTEXES + } else { + DBG_ERR("mutexes requested but not " + "available\n"); ++#endif + } + } + diff --git patches/patch-source3_lib_sysquotas_c patches/patch-source3_lib_sysquotas_c index 767fffd2aa8..331a8e38384 100644 --- patches/patch-source3_lib_sysquotas_c +++ patches/patch-source3_lib_sysquotas_c @@ -3,7 +3,7 @@ Avoid printf("%s", NULL); Index: source3/lib/sysquotas.c --- source3/lib/sysquotas.c.orig +++ source3/lib/sysquotas.c -@@ -452,10 +452,10 @@ int sys_get_quota(const char *path, enum SMB_QUOTA_TYP +@@ -544,10 +544,10 @@ int sys_get_quota(dev_t dev, ret = sys_quota_backends[i].get_quota(mntpath, bdev, qtype, id, dp); if (ret!=0) { DEBUG(3,("sys_get_%s_quota() failed for mntpath[%s] bdev[%s] qtype[%d] id[%d]: %s.\n", @@ -16,7 +16,7 @@ Index: source3/lib/sysquotas.c } ready = True; break; -@@ -467,10 +467,10 @@ int sys_get_quota(const char *path, enum SMB_QUOTA_TYP +@@ -559,10 +559,10 @@ int sys_get_quota(dev_t dev, ret=sys_get_vfs_quota(mntpath, bdev, qtype, id, dp); if (ret!=0) { DEBUG(3,("sys_get_%s_quota() failed for mntpath[%s] bdev[%s] qtype[%d] id[%d]: %s\n", diff --git patches/patch-source3_wscript patches/patch-source3_wscript index 9f16eb2ee11..9c3024e411d 100644 --- patches/patch-source3_wscript +++ patches/patch-source3_wscript @@ -4,7 +4,7 @@ Index: source3/wscript --- source3/wscript.orig +++ source3/wscript -@@ -97,6 +97,7 @@ def options(opt): +@@ -102,6 +102,7 @@ def options(opt): # default = None means autodetection opt.samba_add_onoff_option('spotlight', with_name="enable", without_name="disable", default=None) opt.samba_add_onoff_option('wsp', with_name="enable", without_name="disable", default=True) @@ -12,7 +12,7 @@ Index: source3/wscript def configure(conf): default_static_modules = [] -@@ -105,7 +106,7 @@ def configure(conf): +@@ -110,7 +111,7 @@ def configure(conf): forced_static_modules = [] forced_shared_modules = [] diff --git pkg/PLIST-main pkg/PLIST-main index 74d82b0745f..288be0fc33e 100644 --- pkg/PLIST-main +++ pkg/PLIST-main @@ -319,10 +319,12 @@ lib/python${MODPY_VERSION}/site-packages/samba/dcerpc/${MODPY_PYCACHE}__init__.$ @so lib/python${MODPY_VERSION}/site-packages/samba/dcerpc/drsuapi.${MODPY_PYC_MAGIC_TAG}so @so lib/python${MODPY_VERSION}/site-packages/samba/dcerpc/echo.${MODPY_PYC_MAGIC_TAG}so @so lib/python${MODPY_VERSION}/site-packages/samba/dcerpc/epmapper.${MODPY_PYC_MAGIC_TAG}so +@so lib/python${MODPY_VERSION}/site-packages/samba/dcerpc/file_id.${MODPY_PYC_MAGIC_TAG}so @so lib/python${MODPY_VERSION}/site-packages/samba/dcerpc/gkdi.${MODPY_PYC_MAGIC_TAG}so @so lib/python${MODPY_VERSION}/site-packages/samba/dcerpc/gmsa.${MODPY_PYC_MAGIC_TAG}so @so lib/python${MODPY_VERSION}/site-packages/samba/dcerpc/idmap.${MODPY_PYC_MAGIC_TAG}so @so lib/python${MODPY_VERSION}/site-packages/samba/dcerpc/initshutdown.${MODPY_PYC_MAGIC_TAG}so +@so lib/python${MODPY_VERSION}/site-packages/samba/dcerpc/ioctl.${MODPY_PYC_MAGIC_TAG}so @so lib/python${MODPY_VERSION}/site-packages/samba/dcerpc/irpc.${MODPY_PYC_MAGIC_TAG}so @so lib/python${MODPY_VERSION}/site-packages/samba/dcerpc/keycredlink.${MODPY_PYC_MAGIC_TAG}so @so lib/python${MODPY_VERSION}/site-packages/samba/dcerpc/krb5ccache.${MODPY_PYC_MAGIC_TAG}so @@ -1117,6 +1119,10 @@ lib/python${MODPY_VERSION}/site-packages/samba/tests/${MODPY_PYCACHE}netcmd.${MO lib/python${MODPY_VERSION}/site-packages/samba/tests/${MODPY_PYCACHE}netcmd.${MODPY_PYC_MAGIC_TAG}pyc lib/python${MODPY_VERSION}/site-packages/samba/tests/${MODPY_PYCACHE}netlogonsvc.${MODPY_PYC_MAGIC_TAG}${MODPY_PYOEXTENSION} lib/python${MODPY_VERSION}/site-packages/samba/tests/${MODPY_PYCACHE}netlogonsvc.${MODPY_PYC_MAGIC_TAG}pyc +lib/python${MODPY_VERSION}/site-packages/samba/tests/${MODPY_PYCACHE}nps_echo_test.${MODPY_PYC_MAGIC_TAG}${MODPY_PYOEXTENSION} +lib/python${MODPY_VERSION}/site-packages/samba/tests/${MODPY_PYCACHE}nps_echo_test.${MODPY_PYC_MAGIC_TAG}pyc +lib/python${MODPY_VERSION}/site-packages/samba/tests/${MODPY_PYCACHE}ntacl_resource_attr_ace.${MODPY_PYC_MAGIC_TAG}${MODPY_PYOEXTENSION} +lib/python${MODPY_VERSION}/site-packages/samba/tests/${MODPY_PYCACHE}ntacl_resource_attr_ace.${MODPY_PYC_MAGIC_TAG}pyc lib/python${MODPY_VERSION}/site-packages/samba/tests/${MODPY_PYCACHE}ntacls.${MODPY_PYC_MAGIC_TAG}${MODPY_PYOEXTENSION} lib/python${MODPY_VERSION}/site-packages/samba/tests/${MODPY_PYCACHE}ntacls.${MODPY_PYC_MAGIC_TAG}pyc lib/python${MODPY_VERSION}/site-packages/samba/tests/${MODPY_PYCACHE}ntacls_backup.${MODPY_PYC_MAGIC_TAG}${MODPY_PYOEXTENSION} @@ -1652,6 +1658,7 @@ lib/python${MODPY_VERSION}/site-packages/samba/tests/net_join_no_spnego.py lib/python${MODPY_VERSION}/site-packages/samba/tests/netbios.py lib/python${MODPY_VERSION}/site-packages/samba/tests/netcmd.py lib/python${MODPY_VERSION}/site-packages/samba/tests/netlogonsvc.py +lib/python${MODPY_VERSION}/site-packages/samba/tests/nps_echo_test.py lib/python${MODPY_VERSION}/site-packages/samba/tests/nss/ lib/python${MODPY_VERSION}/site-packages/samba/tests/nss/${MODPY_PYCACHE}/ lib/python${MODPY_VERSION}/site-packages/samba/tests/nss/${MODPY_PYCACHE}base.${MODPY_PYC_MAGIC_TAG}${MODPY_PYOEXTENSION} @@ -1660,6 +1667,7 @@ lib/python${MODPY_VERSION}/site-packages/samba/tests/nss/${MODPY_PYCACHE}group.$ lib/python${MODPY_VERSION}/site-packages/samba/tests/nss/${MODPY_PYCACHE}group.${MODPY_PYC_MAGIC_TAG}pyc lib/python${MODPY_VERSION}/site-packages/samba/tests/nss/base.py lib/python${MODPY_VERSION}/site-packages/samba/tests/nss/group.py +lib/python${MODPY_VERSION}/site-packages/samba/tests/ntacl_resource_attr_ace.py lib/python${MODPY_VERSION}/site-packages/samba/tests/ntacls.py lib/python${MODPY_VERSION}/site-packages/samba/tests/ntacls_backup.py lib/python${MODPY_VERSION}/site-packages/samba/tests/ntlm_auth.py