samba4: updated to 4.10.0

Release Notes for Samba 4.10.0

This is the first stable release of the Samba 4.10 release series.
Please read the release notes carefully before upgrading.


NEW FEATURES/CHANGES
====================

GPO Improvements
----------------

A new 'samba-tool gpo backup' command has been added that can export a
set of Group Policy Objects from a domain in a generalised XML format.

A corresponding 'samba-tool gpo restore' command has been added to
rebuild the Group Policy Objects from the XML after generalization.
(The administrator needs to correct the values of XML entities between
the backup and restore to account for the change in domain).

KDC prefork
-----------

The KDC now supports the pre-fork process model and worker processes will be
forked for the KDC when the pre-fork process model is selected for samba.

Prefork 'prefork children'
--------------------------

The default value for this smdb.conf parameter has been increased from 1 to
4.

Netlogon prefork
----------------

DCERPC now supports pre-forked NETLOGON processes. The netlogon processes are
pre-forked when the prefork process model is selected for samba.

Offline domain backups
----------------------

The 'samba-tool domain backup' command has been extended with a new 'offline'
option. This safely creates a backup of the local DC's database directly from
disk. The main benefits of an offline backup are it's quicker, it stores more
database details (for forensic purposes), and the samba process does not have
to be running when the backup is made. Refer to the samba-tool help for more
details on using this command.

Group membership statistics
---------------------------

A new 'samba-tool group stats' command has been added. This provides summary
information about how the users are spread across groups in your domain.
The 'samba-tool group list --verbose' command has also been updated to include
the number of users in each group.

Paged results LDAP control
--------------------------

The behaviour of the paged results control (1.2.840.113556.1.4.319, RFC2696)
has been changed to more closely match Windows servers, to improve memory
usage. Paged results may be used internally (or is requested by the user) by
LDAP libraries or tools that deal with large result sizes, for example, when
listing all the objects in the database.

Previously, results were returned as a snapshot of the database but now,
some changes made to the set of results while paging may be reflected in the
responses. If strict inter-record consistency is required in answers (which is
not possible on Windows with large result sets), consider avoiding the paged
results control or alternatively, it might be possible to enforce restrictions
using the LDAP filter expression.

For further details see https://wiki.samba.org/index.php/Paged_Results

Prefork process restart
-----------------------

The pre-fork process model now restarts failed processes. The delay between
restart attempts is controlled by the "prefork backoff increment" (default = 10)
and "prefork maximum backoff" (default = 120) smbd.conf parameters.  A linear
back off strategy is used with "prefork backoff increment" added to the
delay between restart attempts up until it reaches "prefork maximum backoff".

Using the default sequence the restart delays (in seconds) are:
  0, 10, 20, ..., 120, 120, ...

Standard process model
----------------------

When using the standard process model samba forks a new process to handle ldap
and netlogon connections.  Samba now honours the 'max smbd processes' smb.conf
parameter.  The default value of 0, indicates there is no limit.  The limit
is applied individually to netlogon and ldap.  When the process limit is
exceeded Samba drops new connections immediately.

python3 support
---------------

This is the first release of Samba which has full support for Python 3.
Samba 4.10 still has support for Python 2, however, Python 3 will be used by
default, i.e. 'configure' & 'make' will execute using python3.

To build Samba with python2 you *must* set the 'PYTHON' environment variable
for both the 'configure' and 'make' steps, i.e.
   'PYTHON=python2 ./configure'
   'PYTHON=python2 make'
This will override the python3 default.

Alternatively, it is possible to produce Samba Python bindings for both
Python 2 and Python 3. To do so, specify '--extra-python=/usr/bin/python2'
as part of the 'configure' command. Note that python3 will still be used as
the default in this case.

Note that Samba 4.10 supports Python 3.4 onwards.

Future Python support
---------------------

Samba 4.10 will be the last release that comes with full support for
Python 2. Unfortunately, the Samba Team doesn't have the resources to support
both Python 2 and Python 3 long-term.

Samba 4.11 will not have any runtime support for Python 2. This means if
you use Python 2 bindings it is time to migrate to Python 3 now.

If you are building Samba using the '--disable-python' option (i.e. you're
excluding all the run-time Python support), then this will continue to work
on a system that supports either python2 or python3.

Also note that Samba 4.11 will most likely only support Python 3.6 onwards.

JSON logging
------------

Authentication messages now contain the Windows Event Id "eventId" and logon
type "logonType". The supported event codes and logon types are:
  Event codes:
    4624  Successful logon
    4625  Unsuccessful logon

  Logon Types:
    2  Interactive
    3  Network
    8  NetworkCleartext

The version number for Authentication messages is now 1.1, changed from 1.0

Password change messages now contain the Windows Event Id "eventId", the
supported event Id's are:
  4723 Password changed
  4724 Password reset

The version number for PasswordChange messages is now 1.1, changed from 1.0

Group membership change messages now contain the Windows Event Id "eventId",
the supported event Id's are:
  4728 A member was added to a security enabled global group
  4729 A member was removed from a security enabled global group
  4732 A member was added to a security enabled local group
  4733 A member was removed from a security enabled local group
  4746 A member was added to a security disabled local group
  4747 A member was removed from a security disabled local group
  4751 A member was added to a security disabled global group
  4752 A member was removed from a security disabled global group
  4756 A member was added to a security enabled universal group
  4757 A member was removed from a security enabled universal group
  4761 A member was added to a security disabled universal group
  4762 A member was removed from a security disabled universal group


The version number for GroupChange messages is now 1.1, changed from 1.0. Also
A GroupChange message is generated when a new user is created to log that the
user has been added to their primary group.

The leading "JSON <message type>:" and source file  prefix of the JSON formatted
log entries has been removed to make the parsing of the JSON log messages
easier. JSON log entries now start with 2 spaces followed by an opening brace
i.e. "  {"

SMBv2 samba-tool support
------------------------

On previous releases, some samba-tool commands would not work against a remote
DC that had SMBv1 disabled. SMBv2 support has now been added for samba-tool.
The affected commands are 'samba-tool domain backup|rename' and the
'samba-tool gpo' set of commands.

New glusterfs_fuse VFS module
-----------------------------

The new vfs_glusterfs_fuse module improves performance when Samba
accesses a glusterfs volume mounted via FUSE (Filesystem in Userspace
as part of the Linux kernel). It achieves that by leveraging a
mechanism to retrieve the appropriate case of filenames by querying a
specific extended attribute in the filesystem. No extra configuration
is required to use this module, only glusterfs_fuse needs to be set in
the "vfs objects" parameter. Further details can be found in the
vfs_glusterfs_fuse(8) manpage. This new vfs_glusterfs_fuse module does
not replace the existing vfs_glusterfs module, it just provides an
additional, alternative mechanism to access a Gluster volume.

REMOVED FEATURES
================

MIT Kerberos build of the AD DC
-------------------------------

While not removed, the MIT Kerberos build of the Samba AD DC is still
considered experimental.  Because Samba will not issue security
patches for this configuration, such builds now require the explicit
configure option: --with-experimental-mit-ad-dc

For further details see
https://wiki.samba.org/index.php/Running_a_Samba_AD_DC_with_MIT_Kerberos_KDC

samba_backup
------------

The samba_backup script has been removed. This has now been replaced by the
'samba-tool domain backup offline' command.

SMB client Python bindings
--------------------------

The SMB client python bindings are now deprecated and will be removed in future
Samba releases. This will only affects users that may have used the Samba
Python bindings to write their own utilities, i.e. users with a custom Python
script that includes the line 'from samba import smb'.
This commit is contained in:
adam 2019-03-20 19:09:10 +00:00
parent 9c0ec01c90
commit 2caa503888
13 changed files with 137 additions and 163 deletions

View file

@ -1,6 +1,6 @@
# $NetBSD: Makefile,v 1.61 2019/03/13 18:02:31 adam Exp $
# $NetBSD: Makefile,v 1.62 2019/03/20 19:09:10 adam Exp $
DISTNAME= samba-4.9.5
DISTNAME= samba-4.10.0
CATEGORIES= net
MASTER_SITES= http://download.samba.org/pub/samba/stable/
@ -99,6 +99,9 @@ CONFIGURE_ARGS+= --without-gpgme
# Depends on ncurses, explicitly disable for now.
CONFIGURE_ARGS+= --without-regedit
PY_PATCHPLIST= yes
MAKE_FLAGS+= WAF_BINARY=${PYTHONBIN}\ ${WRKSRC}/buildtools/bin/waf
# for winbind option build.
.if "${OPSYS}" != "Darwin" && "${OPSYS}" != "SunOS"
LDFLAGS+= -Wl,--allow-shlib-undefined
@ -115,10 +118,8 @@ LDFLAGS.SunOS+= -lsocket -lnsl
.if ${SHLIB_TYPE} == "dylib"
PLIST_SUBST+= SOEXT=dylib
SAMBA_LIBEXT= dylib
.else
PLIST_SUBST+= SOEXT=so
SAMBA_LIBEXT= so
.endif
.if !defined(PWD_MKDB)
@ -129,14 +130,6 @@ MAKEFLAGS+= PWD_MKDB=${PWD_MKDB:Q}
FILES_SUBST+= MKTEMP=${MKTEMP:Q}
FILES_SUBST+= PWD_MKDB=${PWD_MKDB:Q}
PLIST_VARS+= 64bit
.if !empty(LP64PLATFORMS:@.PLAT.@${MACHINE_PLATFORM:M${.PLAT.}}@) || \
(defined(ABI) && ${ABI} == "64")
PLIST.64bit= yes
.else
CONFIGURE_ARGS+= --without-ldb-lmdb
.endif
INSTALLATION_DIRS+= ${DOCDIR} ${EGDIR}
DOCDIR= share/doc/${PKGBASE}
@ -149,6 +142,7 @@ SUBST_CLASSES+= docbook
SUBST_MESSAGE.docbook= Fixing docbook URLs.
SUBST_FILES.docbook+= buildtools/wafsamba/wafsamba.py
SUBST_FILES.docbook+= ctdb/doc/*.xml
SUBST_FILES.docbook+= docs-xml/build/DTD/samba-doc
SUBST_FILES.docbook+= docs-xml/xslt/*.xsl
SUBST_FILES.docbook+= lib/ldb/docs/builddocs.sh
SUBST_FILES.docbook+= librpc/tools/*.xml
@ -209,19 +203,12 @@ REPLACE_PYTHON+= buildtools/bin/waf
REPLACE_PYTHON+= source4/setup/wscript_build
REPLACE_PYTHON+= source4/scripting/bin/*
PYTHON_VERSIONS_ACCEPTED= 27
PY_PATCHPLIST= yes
.include "../../lang/python/application.mk"
.include "../../lang/python/extension.mk"
.if "${OPSYS}" == "Linux"
.include "../../devel/libuuid/buildlink3.mk"
.endif
.include "../../archivers/libarchive/buildlink3.mk"
.include "../../converters/libiconv/buildlink3.mk"
.include "../../databases/lmdb/buildlink3.mk"
.include "../../databases/tdb/buildlink3.mk"
.include "../../databases/ldb/buildlink3.mk"
.include "../../devel/cmocka/buildlink3.mk"
.include "../../devel/gettext-lib/buildlink3.mk"
.include "../../devel/popt/buildlink3.mk"
@ -230,6 +217,8 @@ BUILDLINK_API_DEPENDS.talloc+= talloc>=2.1.9
.include "../../devel/talloc/buildlink3.mk"
.include "../../devel/tevent/buildlink3.mk"
.include "../../devel/zlib/buildlink3.mk"
.include "../../lang/python/application.mk"
.include "../../lang/python/extension.mk"
.include "../../security/gnutls/buildlink3.mk"
.include "../../security/libgcrypt/buildlink3.mk"
.include "../../textproc/jansson/buildlink3.mk"

View file

@ -1,14 +1,9 @@
@comment $NetBSD: PLIST,v 1.20 2019/03/13 18:02:31 adam Exp $
@comment $NetBSD: PLIST,v 1.21 2019/03/20 19:09:10 adam Exp $
bin/cifsdd
bin/dbwrap_tool
bin/dumpmscat
bin/findsmb
bin/gentest
bin/ldbadd
bin/ldbdel
bin/ldbedit
bin/ldbmodify
bin/ldbrename
bin/ldbsearch
bin/locktest
bin/masktest
bin/mvxattr
@ -108,16 +103,14 @@ include/util/blocking.h
include/util/byteorder.h
include/util/data_blob.h
include/util/debug.h
include/util/discard.h
include/util/fault.h
include/util/genrand.h
include/util/idtree.h
include/util/idtree_random.h
include/util/memory.h
include/util/safe_string.h
include/util/signal.h
include/util/string_wrappers.h
include/util/substitute.h
include/util/talloc_stack.h
include/util/tevent_ntstatus.h
include/util/tevent_unix.h
include/util/tevent_werror.h
@ -148,7 +141,7 @@ lib/libndr-standard.so.0
lib/libndr-standard.so.0.0.1
lib/libndr.so
lib/libndr.so.0
lib/libndr.so.0.1.0
lib/libndr.so.0.2.0
lib/libnetapi.so
lib/libnetapi.so.0
lib/libnss_winbind.so
@ -162,7 +155,7 @@ lib/libsamba-hostconfig.so.0
lib/libsamba-hostconfig.so.0.0.1
lib/libsamba-passdb.so
lib/libsamba-passdb.so.0
lib/libsamba-passdb.so.0.27.1
lib/libsamba-passdb.so.0.27.2
lib/libsamba-policy.so
lib/libsamba-policy.so.0
lib/libsamba-policy.so.0.0.1
@ -174,7 +167,7 @@ lib/libsamdb.so.0
lib/libsamdb.so.0.0.1
lib/libsmbclient.so
lib/libsmbclient.so.0
lib/libsmbclient.so.0.4.0
lib/libsmbclient.so.0.5.0
lib/libsmbconf.so
lib/libsmbconf.so.0
${PLIST.ldap}lib/libsmbldap.so
@ -184,7 +177,7 @@ lib/libtevent-util.so.0
lib/libtevent-util.so.0.0.1
lib/libwbclient.so
lib/libwbclient.so.0
lib/libwbclient.so.0.14
lib/libwbclient.so.0.15
${PERL5_SUB_INSTALLVENDORLIB}/Parse/Pidl.pm
${PERL5_SUB_INSTALLVENDORLIB}/Parse/Pidl/CUtil.pm
${PERL5_SUB_INSTALLVENDORLIB}/Parse/Pidl/Compat.pm
@ -225,10 +218,6 @@ lib/pkgconfig/samba-util.pc
lib/pkgconfig/samdb.pc
lib/pkgconfig/smbclient.pc
lib/pkgconfig/wbclient.pc
${PYSITELIB}/_ldb_text.py
${PYSITELIB}/_tdb_text.py
${PYSITELIB}/_tevent.so
${PYSITELIB}/ldb.so
${PYSITELIB}/samba/__init__.py
${PYSITELIB}/samba/_glue.so
${PYSITELIB}/samba/_ldb.so
@ -263,15 +252,20 @@ ${PYSITELIB}/samba/dcerpc/misc.so
${PYSITELIB}/samba/dcerpc/nbt.so
${PYSITELIB}/samba/dcerpc/netlogon.so
${PYSITELIB}/samba/dcerpc/ntlmssp.so
${PYSITELIB}/samba/dcerpc/preg.so
${PYSITELIB}/samba/dcerpc/samr.so
${PYSITELIB}/samba/dcerpc/security.so
${PYSITELIB}/samba/dcerpc/server_id.so
${PYSITELIB}/samba/dcerpc/smb_acl.so
${PYSITELIB}/samba/dcerpc/spoolss.so
${PYSITELIB}/samba/dcerpc/srvsvc.so
${PYSITELIB}/samba/dcerpc/svcctl.so
${PYSITELIB}/samba/dcerpc/unixinfo.so
${PYSITELIB}/samba/dcerpc/winbind.so
${PYSITELIB}/samba/dcerpc/windows_event_ids.so
${PYSITELIB}/samba/dcerpc/winreg.so
${PYSITELIB}/samba/dcerpc/winspool.so
${PYSITELIB}/samba/dcerpc/witness.so
${PYSITELIB}/samba/dcerpc/wkssvc.so
${PYSITELIB}/samba/dcerpc/xattr.so
${PYSITELIB}/samba/dckeytab.so
@ -287,6 +281,13 @@ ${PYSITELIB}/samba/emulate/traffic_packets.py
${PYSITELIB}/samba/forest_update.py
${PYSITELIB}/samba/gensec.so
${PYSITELIB}/samba/getopt.py
${PYSITELIB}/samba/gp_ext_loader.py
${PYSITELIB}/samba/gp_parse/__init__.py
${PYSITELIB}/samba/gp_parse/gp_aas.py
${PYSITELIB}/samba/gp_parse/gp_csv.py
${PYSITELIB}/samba/gp_parse/gp_inf.py
${PYSITELIB}/samba/gp_parse/gp_ini.py
${PYSITELIB}/samba/gp_parse/gp_pol.py
${PYSITELIB}/samba/gp_sec_ext.py
${PYSITELIB}/samba/gpclass.py
${PYSITELIB}/samba/gpo.so
@ -300,6 +301,7 @@ ${PYSITELIB}/samba/kcc/graph.py
${PYSITELIB}/samba/kcc/graph_utils.py
${PYSITELIB}/samba/kcc/kcc_utils.py
${PYSITELIB}/samba/kcc/ldif_import_export.py
${PYSITELIB}/samba/logger.py
${PYSITELIB}/samba/mdb_util.py
${PYSITELIB}/samba/messaging.so
${PYSITELIB}/samba/ms_display_specifiers.py
@ -381,12 +383,15 @@ ${PYSITELIB}/samba/tests/blackbox/__init__.py
${PYSITELIB}/samba/tests/blackbox/bug13653.py
${PYSITELIB}/samba/tests/blackbox/check_output.py
${PYSITELIB}/samba/tests/blackbox/ndrdump.py
${PYSITELIB}/samba/tests/blackbox/netads_json.py
${PYSITELIB}/samba/tests/blackbox/samba_dnsupdate.py
${PYSITELIB}/samba/tests/blackbox/smbcontrol.py
${PYSITELIB}/samba/tests/blackbox/smbcontrol_process.py
${PYSITELIB}/samba/tests/blackbox/traffic_learner.py
${PYSITELIB}/samba/tests/blackbox/traffic_replay.py
${PYSITELIB}/samba/tests/blackbox/traffic_summary.py
${PYSITELIB}/samba/tests/common.py
${PYSITELIB}/samba/tests/complex_expressions.py
${PYSITELIB}/samba/tests/core.py
${PYSITELIB}/samba/tests/credentials.py
${PYSITELIB}/samba/tests/dcerpc/__init__.py
@ -402,19 +407,21 @@ ${PYSITELIB}/samba/tests/dcerpc/rpc_talloc.py
${PYSITELIB}/samba/tests/dcerpc/rpcecho.py
${PYSITELIB}/samba/tests/dcerpc/sam.py
${PYSITELIB}/samba/tests/dcerpc/srvsvc.py
${PYSITELIB}/samba/tests/dcerpc/string.py
${PYSITELIB}/samba/tests/dcerpc/string_tests.py
${PYSITELIB}/samba/tests/dcerpc/testrpc.py
${PYSITELIB}/samba/tests/dcerpc/unix.py
${PYSITELIB}/samba/tests/dckeytab.py
${PYSITELIB}/samba/tests/dns.py
${PYSITELIB}/samba/tests/dns_base.py
${PYSITELIB}/samba/tests/dns_forwarder.py
${PYSITELIB}/samba/tests/dns_forwarder_helpers/dns_hub.py
${PYSITELIB}/samba/tests/dns_forwarder_helpers/server.py
${PYSITELIB}/samba/tests/dns_invalid.py
${PYSITELIB}/samba/tests/dns_tkey.py
${PYSITELIB}/samba/tests/dns_wildcard.py
${PYSITELIB}/samba/tests/docs.py
${PYSITELIB}/samba/tests/domain_backup.py
${PYSITELIB}/samba/tests/domain_backup_offline.py
${PYSITELIB}/samba/tests/dsdb.py
${PYSITELIB}/samba/tests/dsdb_lock.py
${PYSITELIB}/samba/tests/dsdb_schema_attributes.py
@ -437,7 +444,7 @@ ${PYSITELIB}/samba/tests/kcc/graph_utils.py
${PYSITELIB}/samba/tests/kcc/kcc_utils.py
${PYSITELIB}/samba/tests/kcc/ldif_import_export.py
${PYSITELIB}/samba/tests/krb5_credentials.py
${PYSITELIB}/samba/tests/libsmb_samba_internal.py
${PYSITELIB}/samba/tests/libsmb.py
${PYSITELIB}/samba/tests/loadparm.py
${PYSITELIB}/samba/tests/lsa_string.py
${PYSITELIB}/samba/tests/messaging.py
@ -448,8 +455,12 @@ ${PYSITELIB}/samba/tests/netcmd.py
${PYSITELIB}/samba/tests/netlogonsvc.py
${PYSITELIB}/samba/tests/ntacls.py
${PYSITELIB}/samba/tests/ntacls_backup.py
${PYSITELIB}/samba/tests/ntlm_auth.py
${PYSITELIB}/samba/tests/ntlm_auth_base.py
${PYSITELIB}/samba/tests/ntlm_auth_krb5.py
${PYSITELIB}/samba/tests/ntlmdisabled.py
${PYSITELIB}/samba/tests/pam_winbind.py
${PYSITELIB}/samba/tests/pam_winbind_chauthtok.py
${PYSITELIB}/samba/tests/pam_winbind_warn_pwd_expire.py
${PYSITELIB}/samba/tests/param.py
${PYSITELIB}/samba/tests/password_hash.py
@ -461,6 +472,8 @@ ${PYSITELIB}/samba/tests/password_quality.py
${PYSITELIB}/samba/tests/password_test.py
${PYSITELIB}/samba/tests/policy.py
${PYSITELIB}/samba/tests/posixacl.py
${PYSITELIB}/samba/tests/prefork_restart.py
${PYSITELIB}/samba/tests/process_limits.py
${PYSITELIB}/samba/tests/provision.py
${PYSITELIB}/samba/tests/pso.py
${PYSITELIB}/samba/tests/py_credentials.py
@ -505,7 +518,6 @@ ${PYSITELIB}/samba/tests/source.py
${PYSITELIB}/samba/tests/strings.py
${PYSITELIB}/samba/tests/subunitrun.py
${PYSITELIB}/samba/tests/tdb_util.py
${PYSITELIB}/samba/tests/unicodenames.py
${PYSITELIB}/samba/tests/upgrade.py
${PYSITELIB}/samba/tests/upgradeprovision.py
${PYSITELIB}/samba/tests/upgradeprovisionneeddc.py
@ -513,17 +525,17 @@ ${PYSITELIB}/samba/tests/xattr.py
${PYSITELIB}/samba/third_party/__init__.py
${PYSITELIB}/samba/upgrade.py
${PYSITELIB}/samba/upgradehelpers.py
${PYSITELIB}/samba/uptodateness.py
${PYSITELIB}/samba/web_server/__init__.py
${PYSITELIB}/samba/werror.so
${PYSITELIB}/samba/xattr.py
${PYSITELIB}/samba/xattr_native.so
${PYSITELIB}/samba/xattr_tdb.so
${PYSITELIB}/tdb.so
${PYSITELIB}/tevent.py
lib/samba/auth/script.${SOEXT}
lib/samba/bind9/dlz_bind9.${SOEXT}
lib/samba/bind9/dlz_bind9_10.${SOEXT}
lib/samba/bind9/dlz_bind9_11.${SOEXT}
lib/samba/bind9/dlz_bind9_12.${SOEXT}
lib/samba/bind9/dlz_bind9_9.${SOEXT}
lib/samba/gensec/krb5.${SOEXT}
${PLIST.ads}lib/samba/idmap/ad.${SOEXT}
@ -537,7 +549,6 @@ lib/samba/krb5/winbind_krb5_locator.${SOEXT}
lib/samba/ldb/acl.${SOEXT}
lib/samba/ldb/aclread.${SOEXT}
lib/samba/ldb/anr.${SOEXT}
lib/samba/ldb/asq.${SOEXT}
lib/samba/ldb/audit_log.${SOEXT}
lib/samba/ldb/descriptor.${SOEXT}
lib/samba/ldb/dirsync.${SOEXT}
@ -551,22 +562,18 @@ lib/samba/ldb/group_audit_log.${SOEXT}
lib/samba/ldb/ildap.${SOEXT}
lib/samba/ldb/instancetype.${SOEXT}
lib/samba/ldb/lazy_commit.${SOEXT}
lib/samba/ldb/ldb.${SOEXT}
lib/samba/ldb/ldbsamba_extensions.${SOEXT}
lib/samba/ldb/linked_attributes.${SOEXT}
lib/samba/ldb/local_password.${SOEXT}
${PLIST.64bit}lib/samba/ldb/mdb.${SOEXT}
lib/samba/ldb/new_partition.${SOEXT}
lib/samba/ldb/objectclass.${SOEXT}
lib/samba/ldb/objectclass_attrs.${SOEXT}
lib/samba/ldb/objectguid.${SOEXT}
lib/samba/ldb/operational.${SOEXT}
lib/samba/ldb/paged_results.${SOEXT}
lib/samba/ldb/paged_searches.${SOEXT}
lib/samba/ldb/partition.${SOEXT}
lib/samba/ldb/password_hash.${SOEXT}
lib/samba/ldb/ranged_results.${SOEXT}
lib/samba/ldb/rdn_name.${SOEXT}
lib/samba/ldb/repl_meta_data.${SOEXT}
lib/samba/ldb/resolve_oids.${SOEXT}
lib/samba/ldb/rootdse.${SOEXT}
@ -575,18 +582,14 @@ lib/samba/ldb/samba3sid.${SOEXT}
lib/samba/ldb/samba_dsdb.${SOEXT}
lib/samba/ldb/samba_secrets.${SOEXT}
lib/samba/ldb/samldb.${SOEXT}
lib/samba/ldb/sample.${SOEXT}
lib/samba/ldb/schema_data.${SOEXT}
lib/samba/ldb/schema_load.${SOEXT}
lib/samba/ldb/secrets_tdb_sync.${SOEXT}
lib/samba/ldb/server_sort.${SOEXT}
lib/samba/ldb/show_deleted.${SOEXT}
lib/samba/ldb/simple_dn.${SOEXT}
lib/samba/ldb/simple_ldap_map.${SOEXT}
lib/samba/ldb/skel.${SOEXT}
lib/samba/ldb/subtree_delete.${SOEXT}
lib/samba/ldb/subtree_rename.${SOEXT}
lib/samba/ldb/tdb.${SOEXT}
lib/samba/ldb/tombstone_reanimate.${SOEXT}
lib/samba/ldb/unique_object_sids.${SOEXT}
lib/samba/ldb/update_keytab.${SOEXT}
@ -617,6 +620,7 @@ lib/samba/private/libcli-nbt-samba4.so
lib/samba/private/libcli-smb-common-samba4.so
lib/samba/private/libcli-spoolss-samba4.so
lib/samba/private/libcliauth-samba4.so
lib/samba/private/libclidns-samba4.so
lib/samba/private/libcluster-samba4.so
lib/samba/private/libcmdline-contexts-samba4.so
lib/samba/private/libcmdline-credentials-samba4.so
@ -659,17 +663,13 @@ lib/samba/private/libkdc-samba4.so.2.0.0
lib/samba/private/libkrb5-samba4.so.26
lib/samba/private/libkrb5-samba4.so.26.0.0
lib/samba/private/libkrb5samba-samba4.so
lib/samba/private/libldb-cmdline-samba4.so
lib/samba/private/libldb-key-value-samba4.so
${PLIST.64bit}lib/samba/private/libldb-mdb-int-samba4.so
lib/samba/private/libldb.so.1
lib/samba/private/libldb.so.1.4.6
lib/samba/private/libldbsamba-samba4.so
lib/samba/private/liblibcli-lsa3-samba4.so
lib/samba/private/liblibcli-netlogon3-samba4.so
lib/samba/private/liblibsmb-samba4.so
lib/samba/private/libmessages-dgm-samba4.so
lib/samba/private/libmessages-util-samba4.so
lib/samba/private/libmscat-samba4.so
lib/samba/private/libmsghdr-samba4.so
lib/samba/private/libmsrpc3-samba4.so
lib/samba/private/libndr-samba-samba4.so
@ -685,8 +685,6 @@ lib/samba/private/libpopt-samba3-samba4.so
lib/samba/private/libposix-eadb-samba4.so
lib/samba/private/libprinting-migrate-samba4.so
lib/samba/private/libprocess-model-samba4.so
lib/samba/private/libpyldb-util.so.1
lib/samba/private/libpyldb-util.so.1.4.6
lib/samba/private/libregistry-samba4.so
lib/samba/private/libreplace-samba4.so
lib/samba/private/libroken-samba4.so.19
@ -785,12 +783,6 @@ lib/samba/vfs/xattr_tdb.${SOEXT}
man/man1/dbwrap_tool.1
man/man1/findsmb.1
man/man1/gentest.1
man/man1/ldbadd.1
man/man1/ldbdel.1
man/man1/ldbedit.1
man/man1/ldbmodify.1
man/man1/ldbrename.1
man/man1/ldbsearch.1
man/man1/locktest.1
man/man1/log2pcap.1
man/man1/masktest.1
@ -824,7 +816,6 @@ man/man3/Parse::Pidl::NDR.3
man/man3/Parse::Pidl::Util.3
man/man3/Parse::Pidl::Wireshark::Conformance.3
man/man3/Parse::Pidl::Wireshark::NDR.3
man/man3/ldb.3
man/man5/lmhosts.5
man/man5/pam_winbind.conf.5
man/man5/smbgetrc.5
@ -862,29 +853,21 @@ man/man8/vfs_acl_xattr.8
man/man8/vfs_aio_fork.8
man/man8/vfs_aio_pthread.8
man/man8/vfs_audit.8
man/man8/vfs_btrfs.8
man/man8/vfs_cacheprime.8
man/man8/vfs_cap.8
man/man8/vfs_catia.8
man/man8/vfs_ceph.8
man/man8/vfs_commit.8
man/man8/vfs_crossrename.8
man/man8/vfs_default_quota.8
man/man8/vfs_dirsort.8
man/man8/vfs_extd_audit.8
man/man8/vfs_fake_perms.8
man/man8/vfs_fileid.8
man/man8/vfs_fruit.8
man/man8/vfs_full_audit.8
man/man8/vfs_glusterfs.8
man/man8/vfs_glusterfs_fuse.8
man/man8/vfs_gpfs.8
man/man8/vfs_linux_xfs_sgid.8
man/man8/vfs_media_harmony.8
man/man8/vfs_netatalk.8
man/man8/vfs_nfs4acl_xattr.8
man/man8/vfs_offline.8
man/man8/vfs_prealloc.8
man/man8/vfs_preopen.8
man/man8/vfs_readahead.8
man/man8/vfs_readonly.8
@ -892,12 +875,10 @@ man/man8/vfs_recycle.8
man/man8/vfs_shadow_copy.8
man/man8/vfs_shadow_copy2.8
man/man8/vfs_shell_snap.8
man/man8/vfs_snapper.8
man/man8/vfs_streams_depot.8
man/man8/vfs_streams_xattr.8
man/man8/vfs_syncops.8
man/man8/vfs_time_audit.8
man/man8/vfs_tsmsm.8
man/man8/vfs_unityed_media.8
man/man8/vfs_virusfilter.8
man/man8/vfs_worm.8

View file

@ -1,4 +1,4 @@
# $NetBSD: buildlink3.mk,v 1.2 2019/01/03 19:36:45 adam Exp $
# $NetBSD: buildlink3.mk,v 1.3 2019/03/20 19:09:10 adam Exp $
BUILDLINK_TREE+= samba
@ -10,8 +10,7 @@ BUILDLINK_PKGSRCDIR.samba?= ../../net/samba4
.include "../../archivers/libarchive/buildlink3.mk"
.include "../../converters/libiconv/buildlink3.mk"
.include "../../databases/lmdb/buildlink3.mk"
.include "../../databases/tdb/buildlink3.mk"
.include "../../databases/ldb/buildlink3.mk"
.include "../../devel/cmocka/buildlink3.mk"
.include "../../devel/gettext-lib/buildlink3.mk"
.include "../../devel/popt/buildlink3.mk"

View file

@ -1,20 +1,21 @@
$NetBSD: distinfo,v 1.24 2019/03/13 18:02:31 adam Exp $
$NetBSD: distinfo,v 1.25 2019/03/20 19:09:10 adam Exp $
SHA1 (samba-4.9.5.tar.gz) = a79e3f75903daa46318cdf1f2c19efb615ec0920
RMD160 (samba-4.9.5.tar.gz) = a29749fbfd2441ee5989fc26ed133308207b154c
SHA512 (samba-4.9.5.tar.gz) = 0ce49721dcd1b16148448bdf516c42f8fdeb3cb48e7fa8113fac508f8585251ead23d5b679f99eb7925e7a6fbedc2da75d339946b0cecb15698f3ea0cb542750
Size (samba-4.9.5.tar.gz) = 18065757 bytes
SHA1 (samba-4.10.0.tar.gz) = 14769a5f9a296359269e15e989d2995fd79ef2e2
RMD160 (samba-4.10.0.tar.gz) = 3bfd51a04666ca115cf86e801c2ec021883d263c
SHA512 (samba-4.10.0.tar.gz) = e82a8ec78cea666a653bddab066eaa22382f5b016b38f7618492e39f470d6f4c3ddd6dc21e9f0e9fde73ab98c4dd3da1a3823fd457f085ac14c36070b447ac90
Size (samba-4.10.0.tar.gz) = 18270804 bytes
SHA1 (patch-buildtools_wafsamba_samba__conftests.py) = 0f9ca14e3a77d7dfad06aa8c4d2de2f6cc3c0646
SHA1 (patch-buildtools_wafsamba_samba__install.py) = 82e91af3125931767df06821983d40e6f94140c3
SHA1 (patch-buildtools_wafsamba_samba__pidl.py) = 1469d23fd2094ce0ecf979df6ff8cfd69fae53a6
SHA1 (patch-buildtools_wafsamba_samba__install.py) = d801340617da325e3bb70a90350e45cc8e383c2d
SHA1 (patch-buildtools_wafsamba_samba__pidl.py) = a7cc41a55ce032c3fe1e0b660f88fa7871710e0e
SHA1 (patch-buildtools_wafsamba_wscript) = 5604936a825675647157331df2333f4237c611f5
SHA1 (patch-docs-xml_wscript__build) = 5aa5cbf61882604b7ec9d19f0cd1537a23705ad0
SHA1 (patch-dynconfig_wscript) = b77bc4aabaab2943962112c51dc539a65d015400
SHA1 (patch-lib_ldb_ldb__mdb_ldb__mdb.c) = e6d10c0eb44bbad4fbdd52a9e66116ead8e1818d
SHA1 (patch-dynconfig_wscript) = 1858e5fcca913f21aa3e7868d9760b9c40c9f5c4
SHA1 (patch-lib_param_loadparm.h) = 0216b69d33d1e17260a446e11bee764116c52b18
SHA1 (patch-lib_replace_wscript) = b6a042c2c13c0be78d7b64c0ce2efdaf4bbb1f3b
SHA1 (patch-lib_replace_wscript) = 2a754e7310850b376d5881b82a8467041284fce9
SHA1 (patch-lib_tevent_wscript) = fbbe2024096b57d651d90064f53489a974db9d7a
SHA1 (patch-nsswitch_winbind__nss__netbsd.c) = 71d8acd0aa4c297d75555fba650461c778495caa
SHA1 (patch-nsswitch_wscript__build) = e8a6251e031ffa13d6347fade8891f7afd65d3eb
SHA1 (patch-source4_dsdb_samdb_ldb__modules_wscript__build__server) = c322cf56995192039fa22548d6d6e50641c4c796
SHA1 (patch-source4_heimdal__build_roken.h) = ee535f8e7cc46a3487d95bc859438c476a88fe60
SHA1 (patch-source4_heimdal__build_wscript__configure) = 82f9da47f7dc4c3fc29f93b1e9829a1a3b54c095
SHA1 (patch-source4_scripting_wsript_build) = bd4feddcaadf1c3d2d25eb7914e7b5843e4e9511
SHA1 (patch-source4_torture_local_nss__tests.c) = 8c878a8ed771ba996a7a325a1ad41bd13016c70c

View file

@ -1,16 +1,15 @@
$NetBSD: patch-buildtools_wafsamba_samba__install.py,v 1.1 2018/12/22 01:13:52 adam Exp $
$NetBSD: patch-buildtools_wafsamba_samba__install.py,v 1.2 2019/03/20 19:09:10 adam Exp $
Apply correct install_name on Darwin.
--- buildtools/wafsamba/samba_install.py.orig 2018-07-12 08:23:36.000000000 +0000
--- buildtools/wafsamba/samba_install.py.orig 2019-01-14 22:24:44.000000000 +0000
+++ buildtools/wafsamba/samba_install.py
@@ -150,6 +150,9 @@ def install_library(self):
@@ -151,6 +151,8 @@ def install_library(self):
bld.symlink_as(os.path.join(install_path, install_link), os.path.basename(install_name))
if dev_link:
bld.symlink_as(os.path.join(install_path, dev_link), os.path.basename(install_name))
+ if getattr(self, 'samba_type', None) != 'PYTHON' and '-dynamiclib' in self.env['LINKFLAGS']:
+ self.env.append_value('LINKFLAGS', '-install_name')
+ self.env.append_value('LINKFLAGS', os.path.join(install_path, install_name))
+ if getattr(self, 'samba_type', None) != 'PYTHON' and self.env.MACOSX_DEPLOYMENT_TARGET:
+ self.env.append_value('LINKFLAGS', ['-install_name', os.path.join(install_path, install_name)])
finally:
bld.all_envs['default'] = default_env

View file

@ -1,16 +1,16 @@
$NetBSD: patch-buildtools_wafsamba_samba__pidl.py,v 1.1 2018/12/22 01:13:52 adam Exp $
$NetBSD: patch-buildtools_wafsamba_samba__pidl.py,v 1.2 2019/03/20 19:09:10 adam Exp $
Do not set CPP, as it fails when using cwrappers.
If not provided, it will default to $CC -E (see pidl/idl.yp).
--- buildtools/wafsamba/samba_pidl.py.orig 2018-12-21 18:12:39.000000000 +0000
--- buildtools/wafsamba/samba_pidl.py.orig 2019-01-15 10:07:00.000000000 +0000
+++ buildtools/wafsamba/samba_pidl.py
@@ -76,7 +76,7 @@ def SAMBA_PIDL(bld, pname, source,
else:
cc = 'CC="%s"' % bld.CONFIG_GET("CC")
- t = bld(rule='cd .. && %s %s ${PERL} "${PIDL}" --quiet ${OPTIONS} --outputdir ${OUTPUTDIR} -- "${SRC[0].abspath(env)}"' % (cpp, cc),
+ t = bld(rule='cd .. && %s ${PERL} "${PIDL}" --quiet ${OPTIONS} --outputdir ${OUTPUTDIR} -- "${SRC[0].abspath(env)}"' % cc,
- t = bld(rule='cd ${PIDL_LAUNCH_DIR} && %s %s ${PERL} ${PIDL} --quiet ${OPTIONS} --outputdir ${OUTPUTDIR} -- "${IDLSRC}"' % (cpp, cc),
+ t = bld(rule='cd ${PIDL_LAUNCH_DIR} && %s ${PERL} ${PIDL} --quiet ${OPTIONS} --outputdir ${OUTPUTDIR} -- "${IDLSRC}"' % cc,
ext_out = '.c',
before = 'cc',
before = 'c',
update_outputs = True,

View file

@ -1,16 +1,16 @@
$NetBSD: patch-dynconfig_wscript,v 1.2 2018/12/22 01:13:52 adam Exp $
$NetBSD: patch-dynconfig_wscript,v 1.3 2019/03/20 19:09:10 adam Exp $
Do not check installation prefix.
--- dynconfig/wscript.orig 2017-01-11 07:55:14.000000000 +0000
--- dynconfig/wscript.orig 2019-01-15 10:07:00.000000000 +0000
+++ dynconfig/wscript
@@ -302,9 +302,6 @@ def configure(conf):
@@ -307,9 +307,6 @@ def configure(conf):
flavor = 'FHS-PATH'
else:
flavor = 'STD-PATH'
- if conf.env.PREFIX == '/usr' or conf.env.PREFIX == '/usr/local':
- Logs.error("Don't install directly under /usr or /usr/local without using the FHS option (--enable-fhs)")
- raise Utils.WafError("ERROR: invalid --prefix=%s value" % (conf.env.PREFIX))
- raise Errors.WafError("ERROR: invalid --prefix=%s value" % (conf.env.PREFIX))
explicit_set ={}

View file

@ -1,16 +0,0 @@
$NetBSD: patch-lib_ldb_ldb__mdb_ldb__mdb.c,v 1.2 2018/12/22 01:13:52 adam Exp $
Some systems do not define EBADE.
--- lib/ldb/ldb_mdb/ldb_mdb.c.orig 2018-07-12 08:23:36.000000000 +0000
+++ lib/ldb/ldb_mdb/ldb_mdb.c
@@ -40,7 +40,9 @@ int ldb_mdb_err_map(int lmdb_err)
return LDB_SUCCESS;
case EIO:
return LDB_ERR_OPERATIONS_ERROR;
+#ifdef EBADE
case EBADE:
+#endif
case MDB_INCOMPATIBLE:
case MDB_CORRUPTED:
case MDB_INVALID:

View file

@ -1,10 +1,10 @@
$NetBSD: patch-lib_replace_wscript,v 1.1 2015/06/26 16:09:49 jperkin Exp $
$NetBSD: patch-lib_replace_wscript,v 1.2 2019/03/20 19:09:10 adam Exp $
Skip epoll tests on SunOS, implementation is Linux-specific.
--- lib/replace/wscript.orig 2015-04-15 18:00:13.000000000 +0000
--- lib/replace/wscript.orig 2019-01-15 10:07:00.000000000 +0000
+++ lib/replace/wscript
@@ -283,7 +283,9 @@ def configure(conf):
@@ -424,7 +424,9 @@ def configure(conf):
conf.CHECK_FUNCS('gai_strerror get_current_dir_name')
conf.CHECK_FUNCS('timegm getifaddrs freeifaddrs mmap setgroups syscall setsid')
conf.CHECK_FUNCS('getgrent_r getgrgid_r getgrnam_r getgrouplist getpagesize')
@ -13,5 +13,5 @@ Skip epoll tests on SunOS, implementation is Linux-specific.
+ if not sys.platform.startswith('sunos'):
+ conf.CHECK_FUNCS('epoll_create')
conf.CHECK_FUNCS('port_create')
conf.CHECK_FUNCS('getprogname')
conf.SET_TARGET_TYPE('attr', 'EMPTY')

View file

@ -0,0 +1,15 @@
$NetBSD: patch-nsswitch_winbind__nss__netbsd.c,v 1.1 2019/03/20 19:09:10 adam Exp $
Syntax error fix.
--- nsswitch/winbind_nss_netbsd.c.orig 2019-03-20 11:23:40.911995594 +0000
+++ nsswitch/winbind_nss_netbsd.c
@@ -185,7 +185,7 @@ netbsdwinbind_getgroupmembership(void *n
};
struct winbindd_response response = {
.length = 0,
- }
+ };
gid_t *wblistv;
int wblistc, i, isdup, dupc;

View file

@ -0,0 +1,22 @@
$NetBSD: patch-source4_dsdb_samdb_ldb__modules_wscript__build__server,v 1.1 2019/03/20 19:09:10 adam Exp $
Some linkers do not support --wrap.
--- source4/dsdb/samdb/ldb_modules/wscript_build_server.orig 2019-03-20 09:32:08.000000000 +0000
+++ source4/dsdb/samdb/ldb_modules/wscript_build_server
@@ -54,6 +54,7 @@ bld.SAMBA_BINARY('test_audit_log_errors'
-Wl,--wrap,json_add_version
-Wl,--wrap,json_add_timestamp
''',
+ enabled=bld.env['HAVE_LDWRAP'],
install=False)
bld.SAMBA_BINARY('test_group_audit',
@@ -87,6 +88,7 @@ bld.SAMBA_BINARY('test_group_audit_error
-Wl,--wrap,json_add_version
-Wl,--wrap,json_add_timestamp
''',
+ enabled=bld.env['HAVE_LDWRAP'],
install=False)
bld.SAMBA_MODULE('ldb_samba_dsdb',

View file

@ -0,0 +1,22 @@
$NetBSD: patch-source4_heimdal__build_wscript__configure,v 1.1 2019/03/20 19:09:10 adam Exp $
krb5_config might contain undecodable characters; skip such lines.
--- source4/heimdal_build/wscript_configure.orig 2019-03-20 08:29:05.000000000 +0000
+++ source4/heimdal_build/wscript_configure
@@ -171,9 +171,13 @@ if not krb5_config:
krb5_config = conf.find_program("krb5-config", var="HEIMDAL_KRB5_CONFIG")
if krb5_config:
# Not ideal, but seems like the best way to get at these paths:
- f = open(krb5_config[0], 'r')
+ f = open(krb5_config[0], 'rb')
try:
- for l in f:
+ for lb in f:
+ try:
+ l = lb.decode()
+ except UnicodeDecodeError:
+ continue
if l.startswith("libdir="):
heimdal_libdirs.append(l.strip()[len("libdir="):])
elif l.startswith("includedir="):

View file

@ -1,38 +0,0 @@
$NetBSD: patch-source4_torture_local_nss__tests.c,v 1.1 2018/12/22 01:13:52 adam Exp $
Fix for systems without getpwent_r() and getgrent_r().
--- source4/torture/local/nss_tests.c.orig 2018-12-21 18:31:03.000000000 +0000
+++ source4/torture/local/nss_tests.c
@@ -346,6 +346,7 @@ static bool test_enum_r_passwd(struct to
torture_comment(tctx, "Testing setpwent\n");
setpwent();
+#ifdef HAVE_GETPWENT_R
while (1) {
torture_comment(tctx, "Testing getpwent_r\n");
@@ -368,6 +369,7 @@ static bool test_enum_r_passwd(struct to
num_pwd++;
}
}
+#endif /* HAVE_GETPWENT_R */
torture_comment(tctx, "Testing endpwent\n");
endpwent();
@@ -544,6 +546,7 @@ static bool test_enum_r_group(struct tor
torture_comment(tctx, "Testing setgrent\n");
setgrent();
+#ifdef HAVE_GETGRENT_R
while (1) {
torture_comment(tctx, "Testing getgrent_r\n");
@@ -566,6 +569,7 @@ static bool test_enum_r_group(struct tor
num_grp++;
}
}
+#endif /* HAVE_GETGRENT_R */
torture_comment(tctx, "Testing endgrent\n");
endgrent();