[Announce] Samba 4.0.0rc4 Available for Download

Karolin Seeger kseeger at samba.org
Tue Oct 30 02:51:40 MDT 2012

Release Announcements

This is the fourth release candidate of Samba 4.0.  This is *not*
intended for production environments and is designed for testing
purposes only.  Please report any defects via the Samba bug reporting
system at https://bugzilla.samba.org/.

Samba 4.0 will be the next version of the Samba suite and incorporates
all the technology found in both the Samba4 series and the
stable 3.x series. The primary additional features over Samba 3.6 are
support for the Active Directory logon protocols used by Windows 2000
and above.

This release contains the best of all of Samba's
technology parts, both a file server (that you can reasonably expect
to upgrade existing Samba 3.x releases to) and the AD domain
controller work previously known as 'samba4'.

If you are upgrading, or looking to develop, test or deploy Samba 4.0
releases candidates, you should backup all configuration and data.


Users upgrading from Samba 3.x domain controllers and wanting to use
Samba 4.0 as an AD DC should use the 'samba-tool domain
classicupgrade' command.  See the wiki for more details:

Users upgrading from Samba 4.0 alpha and beta releases since alpha15
should run 'samba-tool dbcheck --cross-ncs --fix' before re-starting
Samba.  Users upgrading from earlier alpha releases should contact the
team for advice.

Users upgrading an AD DC from any previous release should run
'samba-tool ntacl sysvolreset' to re-sync ACLs on the sysvol share
with those matching the GPOs in LDAP and the defaults from an initial
provision.  This will set an underlying POSIX ACL if required (eg not
using the NTVFS file server).

If you used the BIND9_FLATFILE or BIND9_DLZ features,
you'll have to add '-dns' to the 'server services' option,
as the internal dns server (SAMBA_INTERNAL) is the default now.


Samba 4.0 supports the server-side of the Active Directory logon
environment used by Windows 2000 and later, so we can do full domain
join and domain logon operations with these clients.

Our Domain Controller (DC) implementation includes our own built-in
LDAP server and Kerberos Key Distribution Center (KDC) as well as the
Samba3-like logon services provided over CIFS.  We correctly generate
the infamous Kerberos PAC, and include it with the Kerberos tickets we

Samba 4.0.0rc4 ships with two distinct file servers.  We now use the
file server from the Samba 3.x series 'smbd' for all file serving by

Samba 4.0 also ships with the 'NTVFS' file server.  This file server
is what was used in all previous releases of Samba 4.0, and is
tuned to match the requirements of an AD domain controller.  We
continue to support this, not only to provide continuity to
installations that have deployed it as part of an AD DC, but also as a
running example of the NT-FSA architecture we expect to move smbd to in
the longer term.

For pure file server work, the binaries users would expect from that
series (nmbd, winbindd, smbpasswd) continue to be available.  When
running an AD DC, you only need to run 'samba' (not
nmbd/smbd/winbind), as the required services are co-coordinated by this
master binary.

As DNS is an integral part of Active Directory, we also provide two DNS
solutions, a simple internal DNS server for 'out of the box' configurations
and a more elaborate BIND plugin using the BIND DLZ mechanism in versions
9.8 and 9.9. During the provision, you can select which backend to use.
With the internal backend, your DNS server is good to go.
If you chose the BIND_DLZ backend, a configuration file will be generated
for bind to make it use this plugin, as well as a file explaining how to
set up bind.

To provide accurate timestamps to Windows clients, we integrate with
the NTP project to provide secured NTP replies.  To use you need to
start ntpd and configure it with the 'restrict ... ms-sntp' and
ntpsigndsocket options.

Finally, a new scripting interface has been added to Samba 4, allowing
Python programs to interface to Samba's internals, and many tools and
internal workings of the DC code is now implemented in python.


smb.conf changes

   Parameter Name			Description
   --------------			-----------

   allow dns updates			New
   announce as				Removed
   announce version			Removed
   cldap port				New
   client max protocol			New
   client min protocol			New
   client signing			Changed default
   dcerpc endpoint servers		New
   dgram port				New
   directory security mask		Removed
   display charset			Removed
   dns forwarder			New
   dns update command			New
   force security mode			Removed
   force directory security mode	Removed
   homedir map				Changed default
   kernel oplocks			Changed default
   kernel share modes			New
   kpasswd port				New
   krb5 port				New
   max protocol				Removed
   min protocol				Removed
   nbt client socket address		New
   nbt port				New
   nsupdate command			New
   ntp signd socket directory		New
   ntvfs handler			New
   paranoid server security		Removed
   pid directory			New
   printer admin			Removed
   rndc command 			New
   rpc big endian			New
   samba kcc command			New
   security mask			Removed
   send spnego principal		Removed
   server max protocol			New
   server min protocol			New
   server role				New
   server services			New
   server signing			Changed default
   share backend			New
   share modes				Removed
   smb2 max read			Changed default
   smb2 max write			Changed default
   smb2 max trans			Changed default
   socket address			Removed
   spn update command			New
   time offset				Removed
   tls cafile				New
   tls certfile				New
   tls crlfile				New
   tls dh params file			New
   tls enabled				New
   tls keyfile				New
   unicode				New
   web port				New
   winbindd privileged socket directory	New
   winbind sealed pipes			New
   winbindd socket directory		New


o   Michael Adam <obnox at samba.org>
    * BUG 9304: Remove unused sessionid.tdb and connections.tdb related code.
    * BUG 9319: validate stat(2) information before reconnect durable handles.

o   Jeremy Allison <jra at samba.org>
    * BUG 9190: Fix regression (change in behavior) of default acl masks.
      Remove "security mask", "force security mode", "directory security mask"
      "force directory" and "security mode" parameters.
    * BUG 9329: Directory listing with SeBackup can crash smbd.

o   Andrew Bartlett <abartlet at samba.org>
    * BUG 9295: Assert that auth_domain, auth_builtin, auth_sam, auth_winbind
      are builtin.
    * BUG 9322: Backport ldb version update.

o   Björn Baumbach <bb at sernet.de>
    * BUG 9190: docs: Fix opening and ending tag mismatch: para.

o   Gregor Beck <gbeck at sernet.de>
    * BUG 9304: Remove unused sessionid.tdb and connections.tdb related code.

o   David Disseldorp <ddiss at suse.de>
    * BUG 8564: Fix segfault in pam_sm_authenticate().

o   Stefan Metzmacher <metze at samba.org>
    * BUG 9184: Fix loop in tdgram_bsd_recvfrom().
    * BUG 9209: Fix unitialized padding in smb2_create_blob_push_one().
    * BUG 9304: Remove unused sessionid.tdb and connections.tdb related code.
    * BUG 9309: Avoid a level 0 DEBUG if tstream_npa_connect_recv fails.
    * BUG 9318: Fix write time updates for durable handles.

o   Andreas Schneider <asn at samba.org>
    * BUG 9295: Build standard auth modules as internal modules.
    * BUG 9301: Move 'smbprint' to a common location.

o   Jelmer Vernooij <jelmer at samba.org>
    * BUG 9274: Add documentation and selftest fixes.


o   Jeremy Allison <jra at samba.org>
    * BUG 8966: Fix 'net rpc share allowedusers' to work with 2008r2.
    * BUG 9209: Parse of invalid SMB2 create blob can cause smbd crash.
    * BUG 9214: Bad user supplied SMB2 credit value can cause smbd to call
    * BUG 9222: Document that signing cannot be disabled for SMB2 by design.

o   Andrew Bartlett <abartlet at samba.org>
    * BUG 9235: Update Samba3-HOWTO Collection.
    * BUG 9271: samba-tool: Skip chown in sysvolreset when it would fail on
      a GID.
    * BUG 9274: Update Samba3-HOWTO Collection.

o   Björn Baumbach <bb at sernet.de>
    * BUG 9235: Fix opening and ending tag mismatch in Samba3-HOWTO.
    * BUG 9271: Fix typos in samba_backup.
    * BUG 9274: Add delete_lost option to vfs_streams_depot.8.

o   Kai Blin <kai at samba.org>
    * BUG 9225: Fix return code for deleted DNS records.
    * BUG 8878: Time out UDP requests after DNS_REQUEST_TIMEOUT seconds.

o   Günther Deschner <gd at samba.org>
    * BUG 9177: pam_winbind: Match more return codes when wbcGetPwnam has

o   David Disseldorp <ddiss at samba.org>
    * BUG 9269: Fix 64bit-portability-issue.

o   Björn Jacke <bj at sernet.de>
    * BUG 5670: Apply some Solaris packaging fixes.
    * BUG 8107: Fix poll replacement to become a msleep replacement.
    * BUG 8344: Fix --with(out)-sendfile-support option handling.

o   Volker Lendecke <vl at samba.org>
    * BUG 9223: Fix uninitialized variable in the cldap server.
    * BUG 9268: Make tdb robust against improper CLEAR_IF_FIRST restart.

o   Stefan Metzmacher <metze at samba.org>
    * BUG 9271: Several samba-tool fixes.
    * BUG 9196: Don't take 'state->te' as indication for "was_deferred".

o   Matthieu Patou <mat at matws.net>
    * BUG 9240: Remove unused variable in DNS server.
    * BUG 9252: Preliminary tests for dcpromo in Windows 2012 fails with
      Samba DC.
    * BUG 9253: Crackname returns a dns domain name even if there is no cracked
    * BUG 9255: Getncchanges with exop for repl_obj returns highest_usn.
    * BUG 9256: Getncchanges with exop for repl_obj_with_secrets should always
      be allowed for RWDC.
    * BUG 9257: LDAP server has at least one un-initialized variable.
    * BUG 9258: LDAP server ignore configuration values set in the database for
    * BUG 9259: rodc join fails complaining that it can't find a RWDC.
    * BUG 9260: kccdrs_replica_get_info returns invalid level when non
      supported should be returned.
    * BUG 9261: ds_replica_sync fails when specifying a name and not a guid.
    * BUG 9264: getncchanges returns invalid_parameters when it should return
    * BUG 9254: DsExecuteKCC returns wrong error code if taskid != 0.
    * BUG 9265: Bind dlz fails to start if there is a trustedanchors zone.

o   Rusty Russell <rusty at rustcorp.com.au>
    * BUG 9268: Make tdb robust against shrinking tdbs.

o   Andreas Schneider <asn at samba.org>
    * BUG 8769: Fix RAW printing for normal users.
    * BUG 9112: Increase debug level for info that the db is empty.
    * BUG 9244: Build pam_smbpass module only if enabled.
    * BUG 9245: Make sure the registry is set up before we init printing.
    * BUG 9276: Add config for systemd-tmpfiles.
    * BUG 9280: Add support for reloading systemd services.

o   Karolin Seeger <kseeger at samba.org>
    * BUG 7826: Remove link to Using Samba.
    * BUG 8802: Add basic manpages for 'samba' and 'samba-tool'.
    * BUG 9165: Fix makerpms.sh on RHEL.
    * BUG 9243: Remove duplicate synonym min protocol.
    * BUG 9271: Several samba-tool fixes.

o   Jelmer Vernooij <jelmer at samba.org>
    * BUG 9243: Add basic documentation for 'server min protocol'.
    * BUG 9271: Several samba-tool fixes.
    * BUG 9274: Add documentation for several parameters.

o   Matthias Dieter Wallnöfer <mdw at samba.org>
    * BUG 9183: Introduce the wildcard binding feature to allow DNS to listen on


o   Michael Adam <obnox at samba.org>
    * BUG 9173: Make the SMB2 compound request create/delete_on_close/
      close work as Windows.

o   Jeremy Allison <jra at samba.org>
    * BUG 9161: Re-add the vfs_Chdir() cache.
    * BUG 9189: SMB2 Create doesn't return correct MAX ACCESS access mask in
    * BUG 9213: Bad ASN.1 NegTokenInit packet can cause invalid free.

o   Christian Ambach <ambi at samba.org>
    * BUG 9162: Fix the build of the GPFS VFS module.
    * BUG 9197: Only do 'printing_subsystem_update' when printing is enabled.

o   Andrew Bartlett <abartlet at samba.org>
    * BUG 9228: Fix build on systems without ldap development headers.

o   Alexander Bokovoy <ab at samba.org>
    * BUG 9157: Cleanup idmap_ldap build dependencies.
    * BUG 9228: Make smbldaphelper subsystem an internal library.
    * BUG 9229: Fix build of winbindd- and krb5 locator-related manpages.

o   Sumit Bose <sbose at redhat.com>
    * BUG 9185: Allow DNS resolution of trusted domains if DNS name is

o   Ira Cooper <ira at samba.org>
    * BUG 9162: Fix build on Illumos/Solaris using '--with-acl'.
    * BUG 9173: Compound requests should continue processing.

o   Günther Deschner <gd at samba.org>
    * BUG 9185: Winbind cannot resolve AD DC in a different subnet.

o   Björn Jacke <bj at sernet.de>
    * BUG 9162: Fix the build of the ACL VFS modules.
    * BUG 9172: Fix reporting of gfs2 quotas.

o   Volker Lendecke <vl at samba.org>
    * BUG 9217: CreateFile with FILE_DIRECTORY_FILE can create directories
      on read-only shares.

o   Vladimir Marek <Vladimir.Marek at Oracle.COM>
    * BUG 9192: Fix service control for non-internal services.

o   Stefan Metzmacher <metze at samba.org>
    * BUG 9173: Make the SMB2 compound request create/delete_on_close/
      close work as Windows.
    * BUG 9184: Fix receiving of UDP packets from 0 bytes.
    * BUG 9191: Release the share mode lock before calling exit_server().
    * BUG 9193: Fix usage of invalid memory in smb2_signing_check_pdu().
    * BUG 9194: Disallow '--prefix=/usr' and '--prefix=/usr/local' without
    * BUG 9198: Fix RHEL-CTDB packaging.

o   Matthieu Patou <mat at matws.net>
    * BUG 9199: Fix usage of "panic action".
    * BUG 9233: Fix a non handled memory out of memory.

o   Andreas Schneider <asn at samba.org>
    * BUG 8632: Fix builtin forms order to match Windows again.
    * BUG 9159: Fix generating idmap manpages.
    * BUG 9218: Don't segfault if user specified ports out for range.
    * BUG 9231: Fix NT_STATUS_IO_TIMEOUT during slow import of printers into


- 'samba-tool domain classicupgrade' will fail when setting ACLs on
  the GPO folders with NT_STATUS_INVALID_ONWER in the default
  configuration.  This happens if, as is typical a 'domain admins'
  group (-512) is mapped in the passdb backend being upgraded.  This
  is because the group mapping to a GID only prevents Samba from
  allocating a uid for that group.  The uid is needed so the 'domain
  admins' group can own the GPO file objects.

  To work around this issue, remove the 'domain admins' group before
  upgrade, as it will be re-created automatically.  You will
  of course need to fill in the group membership again.  A future release
  will make this automatic, or find some other workaround.

- This release makes the s3fs file server the default, as this is the
  file server combination we will use for the Samba 4.0 release.

- For similar reasons, sites with ACLs stored by the ntvfs file server
  may wish to continue to use that file server implementation, as a
  posix ACL will similarly not be set in this case.

- Replication of DNS data from one AD server to another may not work.
  The DNS data used by the internal DNS server and bind9_dlz is stored
  in an application partition in our directory.  The replication of
  this partition is not yet reliable.

- Replication may fail on FreeBSD due to getaddrinfo() rejecting names
  containing _.  A workaround will be in a future release.

- samba_upgradeprovision should not be run when upgrading to this release
  from a recent release.  No important database format changes have
  been made since alpha16.

- Installation on systems without a system iconv (and developer
  headers at compile time) is known to cause errors when dealing with
  non-ASCII characters.

- Domain member support in the 'samba' binary is in its infancy, and
  is not comparable to the support found in winbindd.  As such, do not
  use the 'samba' binary (provided for the AD server) on a member

- There is no NetBIOS browsing support (network neighbourhood)
  available for the AD domain controller.  (Support in nmbd and smbd
  for classic domains and member/standalone servers is unchanged).

- Clock Synchronisation is critical.  Many 'wrong password' errors are
  actually due to Kerberos objecting to a clock skew between client
  and server.  (The NTP work in the previous alphas are partly to assist
  with this problem).

- The DRS replication code may fail.  Please contact the team if you
  experience issues with DRS replication, as we have fixed many issues
  here in response to feedback from our production users.

RUNNING Samba 4.0 as an AD DC

A short guide to setting up Samba 4 as an AD DC can be found on the wiki:


Reporting bugs & Development Discussion

Please discuss this release on the samba-technical mailing list or by
joining the #samba-technical IRC channel on irc.freenode.net.

If you do report problems then please try to send high quality
feedback. If you don't provide vital information to help us track down
the problem then you will probably be ignored.  All bug reports should
be filed under the Samba 4.0 product in the project's Bugzilla
database (https://bugzilla.samba.org/).

== Our Code, Our Bugs, Our Responsibility.
== The Samba Team

Download Details

The uncompressed tarballs and patch files have been signed
using GnuPG (ID 6568B7EA).  The source code can be downloaded


The release notes are available online at:


Binary packages will be made available on a volunteer basis from


Our Code, Our Bugs, Our Responsibility.

                        The Samba Team

More information about the samba-technical mailing list