Fix fd leak with kerenel change notify.
[Samba.git] / WHATSNEW.txt
blob80176e272573677ea1fa8785613f5eb3c95e7653
1             WHAT'S NEW IN Samba 2.2.6 - 16th October 2002
2             =============================================
4 This is the latest stable release of Samba. This is the version that all
5 production Samba servers should be running for all current bug-fixes.
7 There have been several fixes and internal enhancements which include:
9  * Fixes for MS-RPC printing issues affecting Windows 2000 clients
10  * New support for smb.conf generation in SWAT
11  * Inclusion of several performance enhancements (See --with-sendfile
12    & and the modified smb.conf(5) parameters in these Release Notes)
13  * Fixes for several file locking bugs and returned status codes
16 New Parameters
17 --------------
19 Refer to the smb.conf(5) man page for complete descriptions of new parameters.
21   * profile acls (S)            workaround for issue with WinXP SP1
22                                 and roaming user profiles
24 Removed Parameters
25 ------------------
27   * max packet (G)
28   * packet size (G)
30 Modified Parameters
31 -------------------
33   * max xmit (G)                new default value
34   * large readwrite (G)         new default value
36 New ./configure Options
37 -----------------------
39   --with-sendfile               Enable experimental sendfile support
40   --with-winbind-ldap-hack      Enable winbindd_ldap_hack() functionality
41                                 for Windows 2000 native mode domains
44 Changes since 2.2.5
45 --------------------
47 See the cvs log for SAMBA_2_2 for more details
49 1)  Fixed several compiler warnings caused by the use of const parameters
50 2)  Fixed a hang in the main smbd process caused by an EINTR in the
51     wrong place
52 3)  Fixed string substitutions to accept a length for sanity checks
53 4)  Fixed 17-bit length field in nmb header
54 5)  Removed non-portable inline declaration for functions
55 6)  Performance fix for including files with an smb.conf variable in the
56     path name
57 7)  Fix for parsing LPRng lpq output
58 8)  Parsing fix for PRINTER_INFO_2 structure which was causing viewing
59     printer properties to fail
60 9)  Fix for printer change notification and Windows NT clients which caused
61     the client to go into an infinite loop of refreshing the local printers
62     folder
63 10) Allow trans2 and nttrans messages to be processed in oplock break state
64     which fixes a problem with oplock break requests and Win2k clients
65 11) Don't crash on setfileinfo on printer fsp
66 12) Memory fixes caught by Valgrind
67 13) Updates to stop spurious error message in tdb
68 14) Fix silly logic bug in 'make smbd processes' and 'status = no' check
69 15) Fix compilation of pam_smbpass and --with-ldap
70 16) Fix compilation of smbwrapper on Solaris hosts
71 17) fix logic error in a check for enabling the winbind_pam_auth_crap() code
72     & fix formatting typo in --with-winbind-auth-challenge
73 18) Correcting check for ldap_start_tls()
74 19) Fixed a problem with getgroups() where it could include our current
75     effective gid
76 20) fix incorrect semantics in the DeletePrinterDriver() spoolss rpc
77     to only attempt to delete the architecture specified by the client
78 21) Don't allow TEMP attribute on directory open
79 22) Restore VxFS quotas to the 2.2 branch
80 23) Added basic "Wizard" functionality to SWAT
81 24) Fix initial "allocation size" in NTcreate&X call
82 25) Fix for open fid, "nametoolong"
83 26) Exit server on receipt of a non-SMB packet.  Ensure we have
84     at least smb_size bytes before processing a packet
85 27) Replace inet_aton with inet_addr() to correct compile problems on Solaris
86 28) Include the "account" objectclass when adding a new account to --with-ldapsam
87     in order to comply with the data model implemented by OpenLDAP 2.1.x
88 29) Various fixes for POSIX compliance
89 30) Correct alignment & offset bug in EnumPrinterDataEx()
90 31) Fix access checks when modifying forms using a print server handle
91     (not just a printer handle)
92 32) Account for case data_len == 0 in EnumPrinterDataEx()
93 33) Fix logic error in blocking lock code
94 34) Fixed various incorrect return codes to clients
95 35) Add RESOLVE_DFSPATH to mkdir operations
96 36) Fix longstanding bug in Win2k clients by clearing the shortname
97     buffer before returning ASCII short name
98 37) added -t option to smbpasswd for explicitly changing a trust
99     account password when operating in security = domain
100 38) installed -x option to testparm to eXclude printing all parameter
101     values that are at default settings.
102 39) Fix shares/printers view in SWAT so that only Basic options are exposed
103     upon initial entry.
104 40) Added 1125 & KOI8-U to codepage list in Makefile.in
105 41) Include separate configure checks for *openbsd* & *freebsd* when
106     determining flags used to compile shared libraries.
107 42) Merge in free list unlock on error fix
108 43) Correctly fail opens with mismatching SYSTEM or HIDDEN attributes
109     if we are mapping system or hidden
110 44) Fix bug with stat mode open being done on read-only open with truncate
111 45) Fix crash bug discovered where cli struct was being deallocated in a
112     called function
113 46) Ensure we open UNIX fifo's non-blocking
114 47) Fix DeletePrinterDriver() (hopefully for the last time...yeah right....)
115 48) only lowercase global_myname in the %L substitution, not the whole string
116 49) Merged Steve French's fix for OS/2 EA return error being removed
117 50) Patch from Steve French to fix difference in responses to smbclient
118     //server/share ls / on Samba and Windows 2000
119 51) Print error and exit if smb.conf doesn't have security=domain and
120     encrypt passwords=yes when joining domain
121 52) Added final Steve French patch for "required" attributes with old dir
122     listings
123 53) Initialize user_rid value in WINBIND_USERINFO structure returned by
124     the rpc version of query_user()
125 54) Ensure we've failed a lock with a lock denied message before automatically
126     pushing it onto the blocking queue
127 55) Add experimental --with-sendfile code
128 56) alignment fix in printing code merged from HEAD
129 57) Merge fix for other sids in token from HEAD
130 58) Merge winbindd with current (more advanced) state of play in APPLIANCE_HEAD
131 59) fix smbclient / Win98 off by one bug
132 60) Never, *ever* hold a mutex lock in the message database where there may be
133     traversals being attempted
134 61) Add LDAP hack for retrieving the SAM sequence number when a member of a
135     Windows 2000 native mode domain
136 62) Fix race condition when changing a machine account password as we were
137     no longer locking the secrets entry
138 63) Allow '@' as a valid character in domain names
139 64) remove jobs from the spool directory when using cups
140 65) removed -lresolv for --enable-ldapsam
141 66) Memory leak fix and correct use of negative caching in winbindd
142 67) Updated spoolss parsing code with known good state of APPLIANCE_HEAD
143 68) Delete printer security check was reversed
144 69) Windows allows delete printer on a handle opened by an admin user, then
145     used on a pipe handle created by an anonymous user...We do to now...
146 70) Make explicit the difference between a tdb key with no data attached, and
147     a non existent entry
148 71) Ensure we register the 1c name on the unicast subnet.
149 72) Fix inheritance problem when recursively setting ACLs on directories
150 73) prevent ACL set on read-only share
151 74) Ensure we never have more than MAX_PRINT_JOBS in a queue
152 75) Added timeout to tdb_lock_bystring()
153 76) Ensure we set FIRST+LAST flags on a bind request
154 77) Add version strings to the usage message for smbcacls and smbpasswd
155 78) Fix bug in the write cache code
156 79) make the default printed values for boolean the same for all parameters
157 80) Default all LDAP connections to v3 with compiling with --with-ldapsam
158 81) Fix memory leak in smbspool
159 82) Fix bug in mangling code that resulted in Win9x clients not being
160     able to execute batch files in deep, non 8.3  directory paths
161 83) Fix infinite looping bug in winbindd_getgrent()
162 84) Fix crash bug on 64-bit systems (merge from HEAD)
163 85) Fix extended character bug when setting LanMan/NT password
164 86) Negotiate same SMB read size as a Windows 2000 file server
165     to fix performance bug with NT4 clients
168               =========================================
170 Older releases notes for 2.2.x distributions follow
172 -----------------------------------------------------------------------------
173 The release notes for 2.2.5 follow :
175 There have been several fixes and internal enhancements which include:
177 * Several compile fixes for Solaris and HP-UX
178 * More printing fixes for Windows NT/2k/XP clients
179 * New options for the VFS recycle bin library
180 * New internal signal handling semantics relating to directory change
181   notification and oplocks
183 New/Changed parameters in 2.2.5
184 --------------------------------
186 For more information on these parameters, see the man pages for
187 smb.conf(5).
189 Added/changed parameters
190 ------------------------
192 * block size = <INTEGER>
193 * force unknown acl user = <boolean>
194 * mangling method = [hash|hash2]
197 Deprecated Parameters
198 ---------------------
200 The following parameters have been marked as deprecated and will be removed
201 in Samba 3.0
203 * strip dot
204 * status
207 Removed Parameters
208 ------------------
210   none
213 Changes in 2.2.5
214 ----------------
216 See the cvs log for SAMBA_2_2 for more details
218 1)  Removal of several compiler warnings, incorrect Makefile dependencies,
219     and wrong autoconf tests on various platforms--Solaris & HP-UX 10.20
220     being the predominantly reported platforms
221 2)  Fixed winbindd crash bug on the IBM s390 running Linux
222 3)  Inclusion of enhanced Linux quota support
223 4)  Correctly link against Sun LDAP libraries on Solaris 8 (even through
224     there is no apparent SSL support there)
225 5)  POSIX conformance patches
226 6)  Include new configure --enable-cups option (can also be disabled even
227     if CUPS libraries are installed on the system)
228 7)  Set reasonable default for the "passwd program" parameter using an
229     autoconf test
230 8)  Added --with-winbind-auth for enabling winbindd_pam_auth_crap() code
231 9)  fixed bug to prevent root account from being deleted by the
232     "delete user script"
233 10) Inclusion of autoconf script for building VFS modules
234 11) Add new run time options to the VFS recycle bin library (see
235     examples/VFS/recycle/README for details)
236 12) Include findsmb perl script as part of the "make install" process
237 13) Return correct error code for EnumPrinters(PRINTER_ENUM_REMOTE, InfoLevel1)
238     to fix a bug where printers appear at the workgroup level in the Windows
239     NT/2k APW browse list
240 14) Added support to nmblookup to return NMB flags (See nmblookup(8) for
241     details)
242 15) Fix length bug that caused password changes from Windows NT/2k clients to
243     occasionally fail
244 16) Correct false password expiration when using --with-ldapsam caused by
245     missing attributes in the directory
246 17) added -S option to smbpasswd for storing the SID of a domain controller
247     as the local machine SID in secrets.tdb.  See the smbpasswd(8) man page
248     for details.
249 18) Various fixes for UNIX CIFS extensions commands
250 19) Fixed CIDR notation in "hosts allow/deny"
251 20) Change semantics of an idle connection to mean "no open files and no
252     open handles".  We cannot idle a connection if there are open named
253     pipe handles.  This fixes scalability problem on Samba print servers
254     and NT/2k clients introduced in 2.2.4
255 21) Fix germam umlaut problem when returning ACL entries
256 22) Return NT_STATUS_OBJECT_NAME_NOT_FOUND for ENOENT.  This fixes the bug
257     of running the Microsoft Access executable (msaccess.exe) and database
258     files from a Samba share documented in the 2.2.4 release
259 23) Corrected signal handling relating to directory change notification and
260     kernel oplocks
261 24) Fix bug in unix_to_nt_time() that appeared on files dated close to Daylight
262     Savings Time
263 25) Corrected alignment bug in spoolss parsing code which caused Win2k/XP
264     clients not to be able to view printer properties from a Samba host
265 26) Fixed spoolss parsing bug causing printing from ACT! 2000 running on
266     Windows 2k/XP clients to fail
267 27) Fixed incorrect error check in mod_share_entry()
268 28) Allow %S variable in MS-DFS root paths
269 29) Correct a bug regarding the use of 'wbinfo -A'
270 30) Fixed libnss_wins.so to correctly work on RedHat 7.3 systems
271 31) Store the key for a name-to-sid cache entry in upper case rather than
272     whatever case the request was made in.  This gets rid of duplicate
273     cache entries.
274 32) Fix bug causing the pid stored in winbindd's pid file to be the wrong id
275 33) Enhanced error reporting messages of wbinfo
276 34) Parameterize block size on disk size return
277 35) Added new parameter to allow incoming ACLs to have owner and group forced
278     to the currently logged in user. This fixes the XCOPY /O problem
279 36) Fixed bug in local_change_password() caused by reusing a struct
280     passwd* pointer
281 37) Change default value for "ldap port" to 389 if "ldap ssl = no"
282 38) Updated HOWTO's, manpages, and general documentation....
283 39) Allow root as well as domain admins to open an LDAP connection
284 40) Fixed veto files bug with ".*"
285 41) Fixed uninitialized variable bug in smbpasswd that was causing a random
286     IP address to be used in the connection when joining a domain
287 42) Fix for joining a domain with a netbios name of 15 characters and
288     pre-creating the account on the DC
289 43) Added links to new documentation on SWAT welcome page
293 -----------------------------------------------------------------------------
294 The release notes for 2.2.4 follow :
296 There have been several fixes and internal enhancements which include:
298  * More/better SPOOLSS printing functionality for Windows
299    NT/2k/XP clients.
300  * Several fixes relating to serving PC database files such
301    as (Access and FoxPro) from a Samba file share.
302  * Several improves in Samba's VFS layer which can be seen
303    in the inclusion of a "Recycle Bin" vfs module.  See
304    examples/VFS/README for more details on this.
305  * Addition of a tool (tdbbackup) for backup/restore of Samba's
306    tdb's
307  * Continued improvements to winbind for greater scalability
308    and stability
309  * Several fixes related to Samba's MS-DFS support
310  * Rpcclient's various printer commands now work (again)
313 New/Changed parameters in 2.2.4
314 --------------------------------
316 For more information on these parameters, see the man pages for
317 smb.conf(5).
319 Added/changed parameters
320 ------------------------
322 * csc policy
323 * inherit acls
324 * nt status support
325 * lock spin count
326 * lock spin time
327 * pid directory
328 * winbind use default domain
331 Deprecated parameters
332 ---------------------
334 The following parameters have been marked as deprecated
335 and will be removed in Samba 3.0
337 * postscript
338 * printer driver
339 * printer driver file
340 * printer driver location
343 Removed Parameters
344 ------------------
346   none
349 Changes in 2.2.4
350 ----------------
352 See the cvs log for SAMBA_2_2 for more details
354 1)  added -c option to smbpasswd
355 2)  reworked smbpasswd internal command line option parsing
356 3)  small various bug fixes to experimental pdb_tdb.c
357 4)  Enforce spoolss RPCs based on the access granted at PrinterOpen()
358 5)  Added missing access checks to [add/delete/set]form
359 6)  Compile fixes for pam_smbpass
360 7)  fix smbd crash when netbios session request fails from
361     spoolss_connect_to_client().
362 8)  fixed logic bug that prevent SetPrinter() from storing devmode
363 9)  Removed extra get_printer_snum() calls from set_printer_hnd_name()
364 10) fix joining domain on big endian machine when using -U to smbpasswd
365 11) allow command line arg to override smb.conf log level
366 12) continue to retry to register 1b name with wins server if there is an old IP there
367 13) fix smbclient print crash bug
368 14) 9x pnp fix when the config file and driver file are different
369 15) force testparm to print the correct value for log level
370 16) fix swat to show full log level info
371 17) fix server GetPrinterData() fields to be more sensible
372 18) fix logic error in SetPrinterDataEx()
373 19) Only set smb_read_error if not already set
374 20) Fix string returns that require unicode
375 21) Merge of printing performance fixes from appliance
376 22) lpq parsing fixes
377 23) Back port tridge's xcopy /o fix from HEAD
378 24) Fix the printer change notify code (unfinished)
379 25) Patch for Domain users not showing up
380 26) Fixed SetPrinterData(magic key) to support zero length DEVMODE
381 27) Ensure that all methods of looking up and connecting to DC's work
382     using identical logic.
383 28) Merge in the mutex code to stop multiple domain logon failure
384 29) Ignore 0/0 lock
385 30) Fix winbindd to respect command line debuglevel as nmbd/smbd
386 31) Update with tdbbackup from HEAD
387 32) Fix for typo on solaris nss
388 33) Merge in the locking changes from HEAD
389 34) Added POSIX ACL layer into the vfs
390 35) Fix the returning of domain enum
391 36) Fix the generation of the MACHINE.SID file into the secrets.tdb.
392 37) Enable test for -rdynamic when building binaries
393 38) Remove the "stat open" code - make it inline
394 39) Fix the mp3 rename bug
395 40) Fix for Explorer DFS problems on older Windows 9X machines
396 41) implement OpenPrinter() opnum == 0x01
397 42) Matched W2K *insane* open semantics....
398 43) small fix that will prevent the "failed to marshall
399     R_NET_SAMLOGON" message in the logs
400 42) don't do checking of local passdb in smbpasswd if using -r option
401 43) fix "smbpasswd -j DOMAIN -r * -U Admin%XXXX" so that it doesn't
402     try to connect to a server named '*'
403 44) merge rpcclient code from HEAD
404 45) Ensure MACHINE.SID update done before child spawns
405 46) Fix the bad path errors for mkdir so mkdir \a\b\c\d works
406 47) Removed --with-vfs - always built if available
407 48) Fixed psec for 2.2
408 49) Fixed the handle leak in the connection management code
409 50) fix disable spoolss after the switch to nt status codes
410 51) Added Shirish's client side caching policy change
411 52) Honor the specversion when parsing the the DEVICEMODE
412 53) fix parsing bug when DEVICEMODE's private data does not end
413     on a 4 byte boundary
414 54) do not idle an smbd when there is an open pipe
415 55) when a new driver is added to a Samba server, cycle through
416     all printers and bump the change_id for each one bound to the driver
417 56) allow smbclient to work with a FIFO as well (needed for KDE
418     ioslave)
419 57) various updates to pdb_nisplus.c
420 58) many small documentation updates
421 59) removed many compiler warnings
424 -----------------------------------------------------------------------------
425 The release notes for 2.2.3a follow :
427 This is a minor bugfix release for the 2.2.3 release. The 2.2.3
428 release had a problem that was visible to Windows 2000 Explorer
429 users in that copying files into a share that already existed
430 failed with "Access Denied" rather than asking the user if an
431 overwrite was required. This was due to an incorrect error mapping
432 between the UNIX EXIST error code and the NT status error.
434 As Windows Explorer is a highly visible end user application a quick
435 bugfix release was required, hence 2.2.3a.
437 Compilation on HPUX versions earlier than HPUX 11 has also been
438 corrected.
440 The cvs.log file is no longer included with this release, as it adds
441 13Mb to the size of the release, and is easily available on the Web.
443 -----------------------------------------------------------------------------
444 The release notes for 2.2.3 follow :
446 There are several important scaling bugs that have been fixed in this release
447 for large server systems so an upgrade is recommended.
449 LDAP update
450 -----------
452 Much work has been done on the LDAP backend code. The configure
453 option --with-ldapsam is now considered to be stable. The schema
454 used has changed, see the file examples/LDAP/samba.schema for the
455 new schema.
457 New documentation explaining how to set up a Samba only PDC/BDC
458 setup has been added in the files Samba-LDAP-HOWTO and Samba-BDC-HOWTO
459 in the documentation tree.
461 winbindd daemon extended
462 ------------------------
464 Samba 2.2.2 was the first release to include the winbind daemon.
465 This code allows UNIX systems that implement the name service
466 switch (nss) to be entered into a Windows NT/2000 domain and
467 use the Domain controller for all user and group enumeration.
469 Samba 2.2.3 fixes the known memory leaks in winbindd and has
470 been extended to work with SGI IRIX and HPUX (11.x) in addition
471 to the earlier targets of Linux and Solaris.
473 For more information on using winbind, see the man pages for
474 winbindd and wbinfo.
476 Note that winbindd is not installed by default.
478 New/Changed parameters in 2.2.3
479 --------------------------------
481 For more information on these parameters, see the man pages for
482 smb.conf.
484 Added/changed parameters.
485 -------------------------
487 unix extensions
489 Enables the experimental UNIX CIFS extensions in smbd. See the manpage
490 for more details.
492 default devmode
494 Some printer drivers will crash the Windows NT/2000 spooler service
495 if they are given a default devmode, some require it. This parameter
496 allows the administrator a choice of whether smbd returns such a
497 default devmode for a driver.
499 share modes
501 This parameter has been restored to allow people who wish smbd to ignore
502 client share modes. This is *very dangerous* and should not be set without
503 full knowledge of what this is designed for.
505 Changes in 2.2.3
506 -----------------
508 1). Fixed shared library compile for Solaris with native compiler.
509 2). UNIX CIFS extensions code added (donated by HP).
510 3). Changed to using NT status codes on the wire if the client can support
511 this.
512 4). altname command to show 8.3 name added to smbclient.
513 5). const-safe endian macros now used.
514 6). client code now uses UNICODE on the wire.
515 7). Correctly return fault PDU's on bad handle.
516 8). Improved NT error code mapping table.
517 9). Many new point and print RPC calls added.
518 10). Win9x clients can now see full user list.
519 11). field added to identify simultaneous open files (no longer
520 use dev/inode/time as unique value).
521 12). HPUX ACL code added (donated by HP).
522 13). vfs interfaces updated (again !).
523 14). MSDOS Code Page 866 -> 1251 mapping added.
524 15). winbindd now processes quit/hup signals correctly.
525 16). No tdb traversal done on startup/shutdown - ensures scalability.
526 17). Fix bug with paths for homes share.
527 18). Fixed copyfile for OS/2.
528 19). Fix group membership when groups are on more than one line.
529 20). Fixed core dumps in posix ACL mapping code.
530 21). Tidyup of UNICODE functions (put/get).
531 22). Move rpcclient to the new libsmb code.
532 23). Add missing Windows 2000 passthough trans2 calls.
533 24). Return check all tdb calls.
534 25). Make local name lookup work even if wins server is down.
535 26). pam session code added to winbind.
536 27). Added winbindd cache to all lookups.
537 28). Fix allocate bugs that caused file sizes to be incorrect.
538 29). Fixed write cache code - now safe to use.
539 30). Fixed winbindd memory leaks.
540 31). winbindd will now do name lookups (to allow non Open Source
541 systems to do the nsswitch WINS lookup). Fixed by SGI.
542 32). passdb memory leaks fixed.
543 33). LDAP code updates and now properly maintained.
544 34). Finally figured out how changeid is meant to work.
545 35). Downlevel printing now looks as NT does in print monitor window.
546 36). Many fixups in spoolss printing RPC parsing.
547 37). Speed up password enumeration as a PDC.
548 38). Fix printer changed notify messages (work from HP).
549 39). Fix modify timestamp on close code.
550 40). Fix long standing mangled names bug.
551 41). Fix delete on close semantics.
552 42). Stop opening all files with O_NONBLOCK !
553 43). Use O_NOFOLLOW for systems that have it and don't want symlinks.
554 44). Ensure NT supplementary groups get added to user token.
555 45). Try and mitigate effects of DNS timeout (do less lookups).
556 46). Added current user connection context stack.
557 47). Fixes to utmp code.
558 48). smbw code tidyups.
559 49). Added tdb open log code. Several tdb fixes.
561 -----------------------------------------------------------------------------
562 The release notes for 2.2.2 follow :
564 New daemon included - winbindd
565 ------------------------------
567 Samba 2.2.2 is the first release to include the winbind daemon.
568 This code allows UNIX systems that implement the name service
569 switch (nss) to be entered into a Windows NT/2000 domain and
570 use the Domain controller for all user and group enumeration.
572 This allows a Samba server added to a Windows domain to serve
573 file and print services with *NO* local users needed in /etc/passwd
574 and /etc/group - all users and groups are read directly from the
575 Windows domain controller. In addition with pam_winbind which allows
576 a PAM enabled UNIX system to use a Windows domain for authentication
577 service this allows single sign on and account control across
578 UNIX and Windows systems.
580 The current version of winbindd shipped in 2.2.2 does have some
581 memory leaks, which will be addressed for the next Samba release,
582 so it is advisable to monitor the winbind process. This code is
583 being used in production by several vendors, so the leaks are
584 manageable. In addition, this version of winbind does not work
585 correctly against a Samba PDC, due to some missing calls on the
586 PDC side. These problems are being addressed for the next Samba
587 release, but it was thought better to release the code now rather
588 than delay the main Samba code to match the winbind release schedule.
590 For more information on using winbind, see the man pages for
591 winbindd and wbinfo.
593 Note that winbindd is not installed by default.
595 New/Changed parameters in 2.2.2
596 -------------------------------
598 For more information on these parameters, see the man pages for
599 smb.conf.
601 Added/changed parameters.
602 -------------------------
604 strict allocate
606 Causes Samba not to create UNIX 'sparse' files, but to follow the
607 Windows behavior of always allocating on-disk space.
609 use mmap
611 Set to 'on' by default, only set to 'off' on HPUX 11.x or below or other
612 UNIX systems that don't have coherent mmap/read-write internal caches.
613 You should not need to set this parameter.
615 nt acl support
617 This parameter has been changed to a per-share option, and is very
618 useful in enabling Windows 2000 SP2 to load/save profiles from a 
619 Samba share.
621 New printing parameters.
622 ------------------------
624 disable spoolss
626 Setting this parameter causes Samba to go back to the old 2.0.x
627 LANMAN printing behavior, for people who wish to disable the
628 new SPOOLSS pipe.
630 use client driver
632 Causes Windows NT/2000 clients to need have a local printer driver
633 installed and to treat the printer as local.
635 New LDAP parameters.
636 --------------------
638 Samba 2.2.2 contains new code to maintain a Samba SAM database
639 on a remote LDAP server. These parameters have been added as
640 part of this code. These parameters are only available when Samba
641 has been compiled with the --with-ldapsam option.
643 ldap admin dn
644 ldap ssl
646 New SSL parameters.
647 -------------------
649 The SSL support in Samba has been fixed. These new parameters
650 are part of the changes added. These parameters are only available
651 when Samba has been compiled with the --with-ssl option. 
652 Please see the smb.conf man page for details.
654 ssl egd socket
655 ssl entropy file
656 ssl entropy bytes
658 New winbindd parameters.
659 ------------------------
661 These parameters are used by winbindd. See the man page for
662 winbindd for details.
664 winbind separator
665 winbind uid
666 winbind gid
667 winbind cache time
668 winbind enum users
669 winbind enum groups
670 template homedir
671 template shell
673 Removed parameters.
674 -------------------
676 share modes
677 ldap root
678 ldap root passwd
680 New Documentation.
681 ------------------
683 Some new README's have been added in the docs/ directory. These cover
684 using roving profiles with Windows 2000 SP2 (docs/README.Win2kSP2),
685 and how to use Samba to help prevent Windows virus spread
686 (docs/README.Win32-Viruses).
688 Quota problems on a Linux 2.4 kernel.
689 -------------------------------------
691 Currently the quota interfaces have diverged between the Linus
692 2.4.x kernels and the Alan Cox 2.4.x kernels (the Alan Cox variants
693 are shipped with RedHat). Running quota-enabled Samba compiled on
694 an Alan Cox kernel works correctly on an Alan Cox kernel (the one
695 shipped by default with RedHat 7.x) but fails on a Linus kernel.
697 This is a mess, and hopefully Alan and Linus will sort it out soon.
698 In the meantime we need to ship.....
700 Changes in 2.2.2
701 -----------------
703 1). mmap tdb code disabled on HPUX. This should prevent the reports of
704 tdb corruption on HUPX.
705 2). Large file support set to off in Solaris 5.5 and below.
706 3). Better CUPS detection.
707 4). New SAM (password database) backends - smbpasswd (traditional),
708 LDAP, NIS+ and Samba TDB.
709 5). Quota fixups on Linux.
710 6). libsmbclient stand-alone code added. Can be built as a shared library
711 under Linux.
712 7). Tru64 ACL support added.
713 8). winbindd option added.
714 9). Realloc fail tidyup fixes all over the code.
715 10). Large improvement in hash table code efficiency - would be found with
716 large stat caches.
717 11). Error code consistency improved (still needs more work).
718 12). Profile shared memory support added to nmbd.
719 13). New Windows 2000/NT passthrough info levels added.
720 14). readraw/writeraw code rewritten - many bugs fixed.
721 15). UNIX password sync (non pam) code fixed, use correct wildcard matcher.
722 16). Reverse DNS lookup avoided on socket open.
723 17). Bug preventing nmbd re-registering names on WINS server timeout fixed.
724 18). Zero length byte range lock code added. Much closer to Windows semantics.
725 19). Alignment fault fixes for Linux/Alpha.
726 20). Error checking on tdb returns vastly improved.
727 21). Handling of delete on close fixed. No longer possible to leave 'dead'
728 file entries.
729 22). Handling of oplock break failure cleanups improved. Should not be
730 able to leave 'dead' entries.
731 23). Fix handling of errors trying to set 64 bit locks on 32 bit NFS mounts.
732 24). Misc. MS-DFS code fixes.
733 25). Ignore logon packets if not a PDC (needed for PDC/BDC failover).
734 26). winbind pam module added.
735 27). Order N^^2 enumeration of printers problem fixed.
736 28). Password backend database code re-ordered to allow different password
737 backends (at compile time currently).
738 29). Improved print driver version detection for Windows 2000.
739 30). Driver DEVMODE initialization fixes.
740 31). Improved SYSV print parse code.
741 32). Fixed enumeration of large numbers of users/groups from Windows clients.
742 Code still too slow.
743 33). Fix for buggy NetApp RPC pipe clients.
744 34). Fix for NT sending multiple SetPrinterDataEx calls.
745 35). Fix for logic bug where smbd could delay oplock break request messages
746 from other smbd daemons whilst client kept us busy.
747 36). Fix deadlock problem with connections tdb on enumeration.
748 37). Fixes for setting/getting NT ACLs - improved POSIX mapping both ways.
749 38). Removed unused readbmpx/writebmpx code.
750 39). Attempt to fix Linux 2.4.x quota mess.
751 40). Improved ctemp code for Windows 2000 compatibility.
752 41). Finally understood difference between set EOF and set allocation requests.
753 Added strict allocate parameter to help.
754 42). Correctly return name types on name to SID lookups.
755 43). tdb spinlock code update.
756 44). Use pread/pwrite on systems that have it to fix race condition in tdb code.
758 -----------------------------------------------------------------------------
759 The release notes for 2.2.1a follow :
761 This is a minor bugfix release for 2.2.1, *NOT* security related.
763 1). 2.2.1 had a bug where using smbpasswd -m to add a Windows NT or
764 Windows2000 machine into a Samba hosted PDC would fail due to our
765 stricter user name checking. We were disallowing user names
766 containing '$', which is needed when using smbpasswd to add a
767 machine into a domain. Automatically adding machines (using the
768 native Windows tools) into a Samba domain worked correctly.
770 2.2.1a fixes this single problem.
772 -----------------------------------------------------------------------------
773 The release notes for 2.2.1 follow :
775 New/Changed parameters in 2.2.1
776 -------------------------------
778 Added parameters.
779 -----------------
781 obey pam restrictions
783 When Samba is configured to use PAM, turns on or off Samba checking
784 the PAM account restrictions. Defaults to off.
786 pam password change
788 When Samba is configured to use PAM, turns on or off Samba passing
789 the password changes to PAM. Defaults to off.
791 large readwrite
793 New option to allow new Windows 2000 large file (64k) streaming
794 read/write options. Needs a 64 bit underlying operating system
795 (for Linux use kernel 2.4 with glibc 2.2 or above). Can improve performance
796 by 10% with Windows 2000 clients. Defaults to off. Not as tested
797 as some other Samba code paths.
799 hide unreadable
801 Prevents clients from seeing the existence of files that cannot
802 be read. Off by default.
804 enhanced browsing
806 Turn on/off the enhanced Samba browsing functionality (*1B names).
807 Default is "on". Can prevent eternal machines in workgroups when
808 WINS servers are not synchronized.
810 Removed parameters.
811 -------------------
813 domain groups
814 domain admin users
815 domain guest users
817 Changes in 2.2.1
818 -----------------
820 1). "find" command removed for smbclient. Internal code now used.
821 2). smbspool updates to retry connections from Michael Sweet.
822 3). Fix for mapping 8859-15 characters to UNICODE.
823 4). Changed "security=server" to try with invalid username to prevent
824     account lockouts.
825 5). Fixes to allow Windows 2000 SP2 clients to join a Samba PDC.
826 6). Support for Windows 9x Nexus tools to allow security changes from Win9x.
827 7). Two locking fixes added. Samba 2.2.1 now passes the Clarion network
828     lock tester tool for distributed databases.
829 8). Preliminary support added for Windows 2000 large file read/write SMBs.
830 9). Changed random number generator in Samba to prevent guess attacks.
831 10). Fixes for tdb corruption in connections.tdb and file locking brlock.tdb.
832      smbd's clean the tdb files on startup and shutdown.
833 11). Fixes for default ACLs on Solaris.
834 12). Tidyup of password entry caching code.
835 13). Correct shutdowns added for send fails. Helps tdb cleanup code.
836 14). Prevent invalid '/' characters in workgroup names.
837 15). Removed more static arrays in SAMR code.
838 16). Client code is now UNICODE on the wire.
839 17). Fix 2 second timestamp resolution everywhere if dos timestamp set to yes.
840 18). All tdb opens now going through logging function.
841 19). Add pam password changing and pam restrictions code.
842 20). Printer driver management improvements (delete driver).
843 21). Fix difference between NULL security descriptors and empty
844      security descriptors.
845 22). Fix SID returns for server roles.
846 23). Allow Windows 2000 mmc to view and set Samba share security descriptors.
847 24). Allow smbcontrol to forcibly disconnect a share.
848 25). tdb fixes for HPUX, OpenBSD and other OS's that don't have a coherent
849      mmap/file read/write cache.
850 26). Fix race condition in returning create disposition for file create/open.
851 27). Fix NT rewriting of security descriptors to their canonical form for
852      ACLs.
853 28). Fix for Samba running on top of Linux VFAT ftruncate bug.
854 29). Swat fixes for being run with xinetd that doesn't set the umask.
855 30). Fix for slow writes with Win9x Explorer clients. Emulates Microsoft
856      TCP stack early ack specification error.
857 31). Changed lock & persistent tdb directory to /var/cache/samba by default on
858      RedHat and Mandrake as they clear the /var/lock/samba directory on reboot.
860 -----------------------------------------------------------------------------
861 The release notes for 2.2.0a follow :
863 SECURITY FIX
864 ============
866 This is a security bugfix release for Samba 2.2.0. This release provides the
867 following two changes *ONLY* from the 2.2.0 release.
869 1). Fix for the security hole discovered by Michal Zalewski (lcamtuf@bos.bindview.com)
870     and described in the security advisory below.
871 2). Fix for the hosts allow/hosts deny parameters not being honoured.
873 No other changes are being made for this release to ensure a security fix only.
874 For new functionality (including these security fixes) download Samba 2.2.1
875 when it is available.
877 The security advisory follows :
880                 IMPORTANT: Security bugfix for Samba
881                 ------------------------------------
883 June 23rd 2001
886 Summary
887 -------
889 A serious security hole has been discovered in all versions of Samba
890 that allows an attacker to gain root access on the target machine for
891 certain types of common Samba configuration.
893 The immediate fix is to edit your smb.conf configuration file and
894 remove all occurances of the macro "%m". Replacing occurances of %m
895 with %I is probably the best solution for most sites.
897 Details
898 -------
900 A remote attacker can use a netbios name containing unix path
901 characters which will then be substituted into the %m macro wherever
902 it occurs in smb.conf. This can be used to cause Samba to create a log
903 file on top of an important system file, which in turn can be used to
904 compromise security on the server.
906 The most commonly used configuration option that can be vulnerable to
907 this attack is the "log file" option. The default value for this
908 option is VARDIR/log.smbd. If the default is used then Samba is not
909 vulnerable to this attack.
911 The security hole occurs when a log file option like the following is
912 used:
914   log file = /var/log/samba/%m.log
916 In that case the attacker can use a locally created symbolic link to
917 overwrite any file on the system. This requires local access to the
918 server.
920 If your Samba configuration has something like the following:
922   log file = /var/log/samba/%m
924 Then the attacker could successfully compromise your server remotely
925 as no symbolic link is required. This type of configuration is very
926 rare.
928 The most commonly used log file configuration containing %m is the
929 distributed in the sample configuration file that comes with Samba:
931   log file = /var/log/samba/log.%m
933 in that case your machine is not vulnerable to this attack unless you
934 happen to have a subdirectory in /var/log/samba/ which starts with the
935 prefix "log."
937 Credit
938 ------
940 Thanks to Michal Zalewski (lcamtuf@bos.bindview.com) for finding this
941 vulnerability.
944 New Release
945 -----------
947 While we recommend that vulnerable sites immediately change their
948 smb.conf configuration file to prevent the attack we will also be
949 making new releases of Samba within the next 24 hours to properly fix
950 the problem. Please see http://www.samba.org/ for the new releases.
952 Please report any attacks to the appropriate authority.
954         The Samba Team
955         security@samba.org
957 ---------------------------------------------------------------------------
959 The release notes for 2.2.0 follow :
961 This is the official Samba 2.2.0 release. This version of Samba provides
962 the following new features and enhancements.
964 Integration between Windows oplocks and NFS file opens (IRIX and Linux
965 2.4 kernel only). This gives complete data and locking integrity between
966 Windows and UNIX file access to the same data files.
968 Ability to act as an authentication source for Windows 2000 clients as
969 well as for NT4.x clients.
971 Integration with the winbind daemon that provides a single
972 sign on facility for UNIX servers in Windows 2000/NT4 networks
973 driven by a Windows 2000/NT4 PDC. winbind is not included in
974 this release, it currently must be obtained separately. We are
975 committed to including winbind in a future Samba 2.2.x release.
977 Support for native Windows 2000/NT4 printing RPCs. This includes
978 support for automatic printer driver download.
980 Support for server supported Access Control Lists (ACLs).
981 This release contains support for the following filesystems: 
983     Solaris 2.6+ 
984     SGI Irix 
985     Linux Kernel with ACL patch from http://acl.bestbits.at
986         Linux Kernel with XFS ACL support.
987         Caldera/SCO UnixWare
988         IBM AIX
989         FreeBSD (with external patch)
991 Other platforms will be supported as resources are
992 available to test and implement the necessary modules. If
993 you are interested in writing the support for a particular
994 ACL filesystem, please join the samba-technical mailing
995 list and coordinate your efforts. 
997 On PAM (Pluggable Authentication Module) based systems - better debugging
998 messages and encrypted password users now have access control verified via
999 PAM - Note: Authentication still uses the encrypted password database.
1001 Rewritten internal locking semantics for more robustness.
1002 This release supports full 64 bit locking semantics on all
1003 (even 32 bit) platforms. SMB locks are mapped onto POSIX
1004 locks (32 bit or 64 bit) as the underlying system allows.
1006 Conversion of various internal flat data structures to use
1007 database records for increased performance and
1008 flexibility.
1010 Support for acting as a MS-DFS (Distributed File System) server.
1012 Support for manipulating Samba shares using Windows client tools
1013 (server manager). Per share security can be set using these tools
1014 and Samba will obey the access restrictions applied.
1016 Samba profiling support (see below).
1018 Compile time option for enabling a (Virtual file system) VFS layer 
1019 to allow non-disk resources to be exported as Windows filesystems
1020 (such as databases etc.).
1022 The documentation in this release has been updated and converted
1023 from Yodl to DocBook 4.1. There are many new parameters since 2.0.7
1024 and some defaults have changed.
1026 Profiling support.
1027 ------------------
1028 Support for collection of profile information. A shared 
1029 memory area has been created which contains counters for
1030 the number of calls to and the amount of time spent in
1031 various system calls, smb transactions and nmbd activity. See 
1032 the file profile.h for a complete listing of the information 
1033 collected. Sample code for a samba pmda (collection agent
1034 for Performance Co-Pilot) has been included in the pcp
1035 directory. 
1037 To enable the profile data collection code in samba, you must 
1038 compile samba with profile data support (run configure with 
1039 the --with-profiling-data option). On startup, collection of 
1040 data is disabled. To begin collecting data use the smbcontrol
1041 program to turn on profiling (see the smbcontrol man page).
1042 Profile information collection can be enabled for nmbd, all smbd
1043 processes or one or more selected processes. The profiling
1044 data collected is the aggregate for all processes that have
1045 profiling enabled.
1047 With samba compiled for profile data collection, you may see
1048 a very slight degradation in performance even with profiling
1049 collection turned off. On initial tests with NetBench on an
1050 SGI Origin 200 server, this degradation was not measurable 
1051 with profile collection off compared to no profile collection
1052 compiled into samba.
1054 With count profile collection enabled on all clients, the 
1055 degradation was less than 2%. With full profile collection 
1056 enabled on all clients, the degradation was about 8.5%. 
1058 =====================================================================
1060 If you think you have found a bug please email a report to :
1062         samba@samba.org
1064 As always, all bugs are our responsibility.
1066 Regards,
1068         The Samba Team.