r12444: Initial version of a NEWS file that should contain a summary of changes
[kai/samba.git] / NEWS
1 This file aims to document the major changes since the latest released version 
2 of Samba, 3.0. Samba 4.0 contains rewrites of several subsystems 
3 and uses a different internal format for most data. Since this 
4 file is an initial draft, please update missing items.
5
6 One of the main goals of Samba 4 was Active Directory Domain Controller 
7 support. This means Samba now implements several protocols that are required 
8 by AD such as Kerberos and DNS.
9
10 An (experimental) upgrade script that performs a one-way upgrade 
11 from Samba 3 is available in source/setup/upgrade.
12
13 Removal of nmbd and introduction of process models
14 ==================================================
15 smbd now implements several network protocols other then just CIFS and 
16 DCE/RPC. nmbd's functionality has been merged into smbd. smbd supports 
17 various 'process models' that specify how concurrent connections are 
18 handled (when to fork, use threads, etc). 
19
20 Introduction of LDB
21 ===================
22 Samba now stores most of its persistent data in a LDAP-like database 
23 called LDB (see ldb(7) for more info). 
24
25 Much improved SWAT
26 ===============
27 SWAT has had some rather large improvements and is now more then just a 
28 direct editor for smb.conf. Its layout has been improved. SWAT can now also 
29 be used for editing run-time data - maintaining user information, provisioning,
30 etc. TLS is supported out of the box.
31
32 Built-in KDC
33 ============
34 FIXME
35
36 Changed configuration options
37 =============================
38 Several configuration options have been removed in Samba4 while others have 
39 been introduced. This section contains a summary of changes to smb.conf and 
40 where these settings moved.
41
42 The 'security' parameter has been split up. It is now only used to choose 
43 between the 'user' and 'share' security levels (the latter is not supported 
44 in Samba 4 yet). The other values of this option and the 'domain master' and 
45 'domain logons' parameters have been merged into a 'server role' parameter 
46 that can be either 'bdc', 'pdc', 'member server' or 'standalone'. Note that 
47 member server support does not work yet.
48
49 'password server' now takes a DCE/RPC binding string (see prog_guide.txt) 
50 rather then simply a NetBIOS name.
51
52 The following parameters have been removed:
53 - passdb backend: accounts are now stored in a LDB-based SAM database, 
54         see 'sam database' below.
55 - update encrypted
56 - public
57 - guest ok
58 - client schannel
59 - server schannel
60 - allow trusted domains
61 - hosts equiv
62 - map to guest
63 - smb passwd file
64 - algorithmic rid base
65 - root directory
66 - root dir
67 - root
68 - guest account
69 - enable privileges
70 - pam password change
71 - passwd program
72 - passwd chat debug
73 - passwd chat timeout
74 - check password script
75 - username map
76 - username level
77 - unix password sync
78 - restrict anonymous
79 - username
80 - user
81 - users
82 - invalid users
83 - valid users
84 - admin users
85 - read list
86 - write list
87 - printer admin
88 - force user
89 - force group
90 - group
91 - write ok
92 - writeable
93 - writable
94 - acl check permissions
95 - acl group control
96 - acl map full control
97 - create mask
98 - create mode
99 - force create mode
100 - security mask
101 - force security mode
102 - directory mask
103 - directory mode
104 - force directory mode
105 - directory security mask
106 - force directory security mode
107 - force unknown acl user
108 - inherit permissions
109 - inherit acls
110 - inherit owner
111 - guest only
112 - only guest
113 - only user
114 - allow hosts
115 - deny hosts
116 - preload modules
117 - use kerberos keytab
118 - syslog
119 - syslog only
120 - max log size
121 - debug timestamp
122 - timestamp logs
123 - debug hires timestamp
124 - debug pid
125 - debug uid
126 - allocation roundup size
127 - aio read size
128 - aio write size
129 - aio write behind
130 - large readwrite
131 - protocol
132 - read bmpx
133 - reset on zero vc
134 - acl compatibility
135 - defer sharing violations
136 - ea support
137 - nt acl support
138 - nt pipe support
139 - profile acls
140 - map acl inherit
141 - afs share
142 - max ttl
143 - client use spnego
144 - enable asu support
145 - svcctl list
146 - block size
147 - change notify timeout
148 - deadtime
149 - getwd cache
150 - keepalive
151 - kernel change notify
152 - lpq cache time
153 - max smbd processes
154 - max disk size
155 - max open files
156 - min print space
157 - strict allocate
158 - sync always
159 - use mmap
160 - use sendfile
161 - hostname lookups
162 - write cache size
163 - name cache timeout
164 - max reported print jobs
165 - load printers
166 - printcap cache time
167 - printcap name
168 - printcap
169 - printing
170 - cups options
171 - cups server
172 - iprint server
173 - print command
174 - disable spoolss
175 - enable spoolss
176 - lpq command
177 - lprm command
178 - lppause command
179 - lpresume command
180 - queuepause command
181 - queueresume command
182 - enumports command
183 - addprinter command
184 - deleteprinter command
185 - show add printer wizard
186 - os2 driver map
187 - use client driver
188 - default devmode
189 - force printername
190 - mangling method
191 - mangle prefix
192 - default case
193 - case sensitive
194 - casesignames
195 - preserve case
196 - short preserve case
197 - mangling char
198 - hide dot files
199 - hide special files
200 - hide unreadable
201 - hide unwriteable files
202 - delete veto files
203 - veto files
204 - hide files
205 - veto oplock files
206 - map readonly
207 - mangled names
208 - mangled map
209 - max stat cache size
210 - stat cache
211 - store dos attributes
212 - machine password timeout
213 - add user script
214 - rename user script
215 - delete user script
216 - add group script
217 - delete group script
218 - add user to group script
219 - delete user from group script
220 - set primary group script
221 - add machine script
222 - shutdown script
223 - abort shutdown script
224 - username map script
225 - logon script
226 - logon path
227 - logon drive
228 - logon home
229 - domain logons
230 - os level
231 - lm announce
232 - lm interval
233 - domain master
234 - browse list
235 - enhanced browsing
236 - dns proxy
237 - wins proxy
238 - wins hook
239 - wins partners
240 - blocking locks
241 - fake oplocks
242 - kernel oplocks
243 - locking
244 - lock spin count
245 - lock spin time
246 - oplocks
247 - level2 oplocks
248 - oplock break wait time
249 - oplock contention limit
250 - posix locking
251 - share modes
252 - ldap server
253 - ldap port
254 - ldap admin dn
255 - ldap delete dn
256 - ldap group suffix
257 - ldap idmap suffix
258 - ldap machine suffix
259 - ldap passwd sync
260 - ldap password sync
261 - ldap replication sleep
262 - ldap suffix
263 - ldap ssl
264 - ldap timeout
265 - ldap page size
266 - ldap user suffix
267 - add share command
268 - change share command
269 - delete share command
270 - eventlog list
271 - utmp directory
272 - wtmp directory
273 - utmp
274 - default service
275 - default
276 - message command
277 - dfree cache time
278 - dfree command
279 - get quota command
280 - set quota command
281 - remote announce
282 - remote browse sync
283 - homedir map
284 - afs username map
285 - afs token lifetime
286 - log nt token command
287 - time offset
288 - NIS homedir
289 - preexec
290 - exec
291 - preexec close
292 - postexec
293 - root preexec
294 - root preexec close
295 - root postexec
296 - set directory
297 - wide links
298 - follow symlinks
299 - dont descend
300 - magic script
301 - magic output
302 - delete readonly
303 - dos filemode
304 - dos filetimes
305 - dos filetime resolution
306 - fake directory create times
307 - panic action
308 - vfs objects
309 - vfs object
310 - msdfs root
311 - msdfs proxy
312 - host msdfs
313 - enable rid algorithm
314 - passdb expand explicit
315 - idmap backend
316 - idmap uid
317 - winbind uid
318 - idmap gid
319 - winbind gid
320 - template homedir
321 - template shell
322 - winbind separator
323 - winbind cache time
324 - winbind enum users
325 - winbind enum groups
326 - winbind use default domain
327 - winbind trusted domains only
328 - winbind nested groups
329 - winbind max idle children
330 - winbind nss info
331  
332 The following parameters have been added:
333 + rpc big endian (G)
334         Make Samba fake it is running on a bigendian machine when using DCE/RPC. 
335         Useful for debugging.
336
337         Default: no
338
339 + case insensitive filesystem (S)
340         Set to true if this share is located on a case-insensitive filesystem.
341         This disables looking for a filename by trying all possible combinations of 
342         uppercase/lowercase characters and thus speeds up operations when a 
343         file cannot be found. 
344
345         Default: no
346         
347 + js include (G)
348         Path to JavaScript library. 
349
350         Default: Set at compile-time
351         
352 + setup directory
353         Path to data used by provisioning script.
354
355         Default: Set at compile-time
356         
357 + ncalrpc dir
358         Directory to use for UNIX sockets used by the 'ncalrpc' DCE/RPC transport.
359
360         Default: Set at compile-time
361         
362 + ntvfs handler
363         Backend to the NT VFS to use (more then one can be specified). Available
364         backends include: 
365         
366         - posix:
367                 Maps POSIX FS semantics to NT semantics
368
369         - simple:
370                 Very simple backend (original testing backend).
371
372         - unixuid:
373                 Sets up user credentials based on POSIX gid/uid.
374
375         - cifs:
376                 Proxies a remote CIFS FS. Mainly useful for testing.
377
378         - nbench:
379                 Filter module that saves data useful to the nbench benchmark suite.
380
381         - ipc:
382                 Allows using SMB for inter process communication. Only used for 
383                 the IPC$ share.
384
385         - print:
386                 Allows printing over SMB. This is LANMAN-style printing (?), not 
387                 the be confused with the spoolss DCE/RPC interface used by later 
388                 versions of Windows.
389         
390         Default: unixuid default
391
392 + ntptr providor
393         FIXME
394
395 + dcerpc endpoint servers
396         What DCE/RPC servers to start.
397
398         Default: epmapper srvsvc wkssvc rpcecho samr netlogon lsarpc spoolss drsuapi winreg dssetup
399
400 + server services
401         Services Samba should provide.
402
403         Default: smb rpc nbt wrepl ldap cldap web kdc
404
405 + sam database
406         Location of the SAM (account database) database. This should be a 
407         LDB URL.
408
409         Default: set at compile-time
410
411 + spoolss database
412         Spoolss (printer) DCE/RPC server database. This should be a LDB URL.
413
414         Default: set at compile-time
415
416 + wins config database
417         WINS configuration database location. This should be a LDB URL.
418
419         Default: set at compile-time
420         
421 + wins database
422         WINS database location. This should be a LDB URL.
423
424         Default: set at compile-time
425         
426 + client use spnego principal
427         Tells the client to use the Kerberos service principal specified by the 
428         server during the security protocol negotation rather then 
429         looking up the principal itself (cifs/hostname).
430
431         Default: false
432
433 + nbt port
434         TCP/IP Port used by the NetBIOS over TCP/IP (NBT) implementation.
435  
436         Default: 137
437
438 + dgram port
439         UDP/IP port used by the NetBIOS over TCP/IP (NBT) implementation.
440         
441         Default: 138
442
443 + cldap port
444         UDP/IP port used by the CLDAP protocol.
445
446         Default: 389
447
448 + krb5 port
449         IP port used by the kerberos KDC.       
450         
451         Default: 88
452         
453 + kpasswd port
454         IP port used by the kerberos password change protocol.
455
456         Default: 464
457         
458 + web port
459         TCP/IP port SWAT should listen on.
460
461         Default: 901
462
463 + tls enabled
464         Enable TLS support for SWAT
465         
466         Default: true
467         
468 + tls keyfile
469         Path to TLS key file (PEM format) to be used by SWAT. If no 
470         path is specified, Samba will create a key.
471
472         Default: none
473
474 + tls certfile
475         Path to TLS certificate file (PEM format) to be used by SWAT. If no 
476         path is specified, Samba will create a certificate.
477
478         Default: none
479         
480 + tls cafile
481         Path to CA authority file Samba will use to sign TLS keys it generates. If 
482         no path is specified, Samba will create a self-signed CA certificate.
483
484         Default: none
485
486 + tls crlfile
487         Path to TLS certificate revocation lists file.
488
489         Default: none
490
491 + swat directory
492         SWAT data directory.
493
494         Default: set at compile-time
495
496 + large readwrite
497         Indicate the CIFS server is able to do large reads/writes.
498
499         Default: true
500         
501 + unicode
502         Enable/disable unicode support in the protocol.
503
504         Default: true