Samba 2.2.0alpha2 snapshot released

Jeremy Allison jeremy at
Tue Jan 30 00:02:30 GMT 2001

Hi all,

                I have just released the third alpha snapshot
of what will become Samba 2.2.0.

It's available from the usual ftp sites, in the alpha
directory as :

<ftp mirror>:/pub/samba/alpha/samba-2.2.0-alpha2.tar.gz

If people could test this snapshot out and provide feedback
about what is broken and let the lists know that would help.

I know about the problem acting as a PDC for Win2k clients -
this is being worked on (by JF and myself).

The Team will be monitoring the feedback and this will help
for the next alpha.

The POSIX ACL mapping feature has been implemented on Linux
only at the moment and many bugs in the point and print code have
been fixed.

The documentation is not currently up to date, but this code
has been running under memory overrun/leak detectors for weeks
now without problems.

Having said that - *please* don't use this on a production
system (yet - although it's closer now.... :-).

I know there are still some patches missing, I will try
and get to these as soon as I return from the Linuxworld
conferences and the Brussels Open Source conference (Feb 8th).

Please kick the tires again and let us know what you think !
The release notes follow :

                Jeremy Allison,
                Samba Team.


              WHATS NEW IN Samba 2.2.0alpha2

This is the third alpha release of the new 2.2.0 codebase
for Samba. This version must not be run in production.

This code will almost certainly have some bugs and is
intended to help the Samba Team prepare an official 2.2.0

The documentation in this alpha snapshot is not up to date,
there are many new parameters since 2.0.7 and some defaults
have changed. This will be corrected in a later alpha release.

A known problem is this version of Samba will not act as a PDC
for Win2k clients (although it works as a member server in a
Win2k hosted domain). This is being actively worked on and
it is intended this be fixed before 2.2.0 release.

Several significant bugs have been fixed between alpha2
and alpha2, these include :

Inclusion of mapping of NT ACLs to Linux ACLs, using the patch
found at

This is being done via an abstract interface that needs porting
to the following UNIXes - IRIX, Solaris, HPUX, AIX - as many
as can be done will be supported at 2.2.0 release. Please look
at the code in lib/sysacls.c for the needed work.

Addition of tdb spinlock code for tdb speed.
Addition of user list lookup from Win2k (thanks to the Samba TNG
branch code for this).
Addition of generic to specific mapping of security descriptors
in printer code.
Addition of code page 857 (Turkish).
Addition of "%D" substitution for incoming Domain of user.
getpwnam/getpwuid cache.
Many codepage fixes when dealing with printers with extended
characters (thanks to HP for this fix).
Inherited security descriptors for printing.
Creation of internal NT "token" for smbd access checks.
Addition of NT trans code for client.
Fix for inheritance of blocked signals (thanks to HP).
Addition of "total print jobs" parameter.
Fix for NT not being able to save properties changes on
PCL drivers.
Fixes to speed up enumeration of print jobs.
Cleanup printer spool files on client disconnect.
Byteswap fixes for printing code (thanks JF).
New parameter "dos filemode" to allow a user who can write to a
file to change permissions on it.
Subtle statcache bugfix.
Fix for Office2000 print to file bug.
Fix for MS Access multi-user open problem.
Valid users now in linked list rather than array.
SMB lookup now table driven rather than linear search (doh!).
TDB locking fixes for multiple openers.

Several significant bugs have been fixed between alpha0
and alpha1, these include :

Fix for level II oplock bug.
Support for detecting version 2/3 printer drivers (from HP).
Samba profiling support (from SGI).
Winbind integration fixes.
Preliminary Win2K PDC support in compatibility mode for Win2K
clients (from JF).
VFS interface updates.
Failover finding of BDC's now works again.
lpq race condition fixes.
utmp fixes.
SWAT username detection fix.
Bugfix for WinNT and Win2K point and print feature.

The upcoming 2.2.0 Samba release will include the following
new features: 

Integration with the winbind daemon that provides a single
sign on facility for UNIX servers in Windows NT4/2000 networks
driven by a Windows NT4/2000 PDC.

Support for native Windows NT4/2000 printing RPCs.
This includes support for automatic printer driver
download. It is currently believed this functionality
is working in alpha2.

Rewritten internal locking semantics for more robustness.
This alpha supports full 64 bit locking semantics on all
(even 32 bit) platforms. SMB locks are mapped onto POSIX
locks (32 bit or 64 bit) as the underlying system allows.

Conversion of various internal flat data structures to use
database records for increased performance and

Support for acting as a MS-DFS server 

Compile time option for enabling a VFS layer 

Support for server supported Access Control Lists (ACLs).
This support will require a specific pluggable backend to
be written for each filesystem ACL implementation to be
supported. The stable 2.2.0 release should contain
support for the following filesystems: 
    Solaris 2.6+ 
    SGI Irix 
    Linux Kernel 2.2 with German ACL patch 

Currently in this alpha snapshot (alpha1) this feature
is not enabled - the VFS layer has been modified to allow
it, but the code is still under development and should
be in a later alpha snapshot.

Other platforms will be supported as resources are
available to test and implement the encessary modules. If
you are interested in writing the support for a particular
ACL filesystem, please join the samba-technical mailing
list and coordinate your efforts. 

Support for collection of profile information. A shared 
memory area has been created which contains counters for
the number of calls to and the amount of time spent in
various system calls and smb transactions. See the file
profile.h for a complete listing of the information 
collected. Sample code for a samba pmda (collection agent
for Performance Co-Pilot) has been included in the pcp

To enable the profile data collection code in samba, you 
must compile samba with profile support (run configure with 
the --with-profile option). On startup, collection of data
is disabled. To begin collecting data use the smbcontrol
program to turn on profiling (see the smbcontrol man page).
Profile information collection can be enabled for all smbd
processes or one or more selected processes. The profiling
data collected is the aggragate for all processes that have
profiling enabled.

With samba compiled for profile data collection, you may see
a very slight degradation in performance even with profiling
collection turned off. On initial tests with NetBench on an
SGI Origin 200 server, this degradation was not measureable 
with profile collection off compared to no profile collection
compiled into samba. 

With count profile collection enabled on all clients, the 
degradation was less than 2%. With full profile collection 
enabled on all clients, the degradation was about 8.5%. 


If you think you have found a bug please email a report to :

        samba at

As always, all bugs are our responsibility.


        The Samba Team.  


Buying an operating system without source is like buying
a self-assembly Space Shuttle with no instructions.

More information about the samba-technical mailing list