Basic doc changes to keep up to date.
[samba.git] / source3 / change-log
1 Change Log for Samba
2
3 Unless otherwise attributed, all changes were made by 
4 Andrew.Tridgell@anu.edu.au
5
6 NOTE: THIS LOG IS IN CHRONOLOGICAL ORDER
7
8 NOTE: From now on the cvs.log file will be used to give a complete log of
9 changes to samba. This change-log is now obsolete.
10
11 1.5.00  announced to mailing list
12
13 1.5.01 1/12/93
14         - configuration through makefile only
15         - fixed silly bug that made the client not accept dir's from 
16         the server
17         - tested and updated include files for ultrix, aix and solaris
18         - several things fixed thanks to pierson@ketje.enet.dec.com
19         who provided invaluable help and advice.
20
21 1.5.02 1/12/93
22         - added username option to services file so connection
23         as non guest from lanmanager is possible
24         - made server abort when it can't read/write on a socket
25         - added logging to client
26
27 1.5.03 2/12/93
28         - printing now works
29         - fixed a minor bug to do with hidden and system attributes
30         
31 1.5.04 2/12/93
32         - added reduce_name() call to fill in security hole.
33         - cleanup up debug stuff a little
34
35 1.5.05 2/12/93
36         - fixed bug in reduce_name that affects services with base paths
37         that have a soft link in them.
38
39 1.5.06 3/12/93
40         - used the reserved server field in the search status to hold the 
41         directory pointer. This allows lots of directories to be open
42         at once by clients without stuffing things up.
43         - preserved all the client reserved bytes in the search status
44         in case they actually use them. Hopefully this will fix the annoying
45         empty directory dir bug. (it does)
46         
47 1.5.07 3/12/93
48         - fixed silly bug that caused volume ids to appear twice
49         - fixed a wrote-too-few bug in smb_send()
50
51 1.5.08 3/12/93
52         - did the SMBsearch properly. It can now handle recursive searches.
53         In order to keep the required dir info I encode the dirptr and
54         the current dir offset (from telldir) into 5 bytes by using a table
55         on the last 7 bits of the first byte. The first bit is always on
56         as this byte must by != 0
57         This is all put in the "server reserved" search field.
58
59 1.5.09 5/12/93
60         - added a prototype nameserver. It's broken but can at least interpret
61         incoming packets.
62         - minor fixes to the server and client
63
64
65 1.5.10 5/12/93
66         - fixed silly unsigned/signed char bug that made dosshell noot see all files
67         - added nmbd to Makefile
68
69 1.5.11 6/12/93
70         - made the volume label appear as the service name, rather than "Remote"
71         - made the nmbd actually work (a little) for lanman for dos
72
73 1.5.12 7/12/93
74         - fixed broadcasting in the nameserver
75         - the smbd now correctly sets the pid and uid
76         - nmbd now seems to work enough to satisfy the MS client.
77
78
79 1.5.13 7/12/93
80         - fixed a silly bug that truncated filenames
81         - added -B option to nameserver to specify bcast address
82         - added -R option to nameserver to prevent name registering
83         - fixed minor read() bug. Does this fix the "cmp" bug?
84
85 1.5.14 8/12/93
86         - fixed a bug in send_login() in the client. Thanks to 
87         tim.hudson@gslmail.mincom.oz.au for pointing this out.
88         - changed name_mangle() to pad to minimum of 32 bytes with spaces
89         - changed the returned buffer size in reply_connect() to not
90         count the 4 byte length field. This fixes the "can execute" bug
91         and the "comp" bug
92         - once again re-wrote the directory pointer handling code.
93         now "tree" works correctly
94
95 1.5.15 9/12/93
96         - fixed name mangle bug introduced in 1.5.14 which stopped
97         nameserver from working
98
99 1.5.16 9/12/93
100         - arrgh. another silly bug in name_mangle() causes the client to die.
101
102
103 1.5.17 13/12/93
104         - some cosmetic cleanups to the code
105         - changed make_connection not to lower case the password (thanks
106         to bryan@alex.com)
107         - fixed accept() bug not initialising in_addrlen (thanks to
108         bogstad@cs.jhu.edu)
109         - fixed cd bug in client.c (thanks to joergs@toppoint.de)
110         - lots of fixes to the nameserver to read_socket and
111         associated routines. It should now correctly reply to the originating
112         address and use the correct broadcast. 
113         (thanks to troyer@saifr00.ateng.az.honeywell.com)
114         - SVR4 patches from mark@scot1.ucsalf.ac.uk
115         - changed the default BUFFER_SIZE to 0xFFFF
116
117 1.5.18 15/12/93
118         - minor fix to reply_printqueue() to zero data buffer array.
119         - added print command to client.
120         - fixed minor bug in cmd_put() in client where a handle could
121         be closed without being previously opened.
122         - minor cleanups to the client
123         - minor solaris fixes from lonnie@itg.ti.com
124         - SYSV, shadow password  and dfree() fixes from mark@scot1.ucsalf.ac.uk
125         - fixed reply_delete() to not delete read-only files
126         - fixed infinite loop in reply_delete on "del ." 
127         Thanks to mark@scot1.ucsalf.ac.uk for pointing this out.
128         - posix mode definitions and changes from mark@scot1.ucsalf.ac.uk
129
130
131 1.5.19 18/12/93
132         - another very minor fix to dfree().
133         - minor change to SVR4 makefile entry from rossw@march.co.uk
134         - changed reply_open not to open directories, this fixes the 
135         "copy .." bug pointed out by mark@scot1.ucsalf.ac.uk
136         - changed dos_mode() so it doesn't return hidden and system info
137         on directories.
138         - changed get_dir_entry() not to descend into proc/self under linux
139         control this with the DONT_DESCEND define in includes.h
140         - changed smb_setlen() to add in the SMB id. (thanks 
141         to troyer@saifr00.ateng.az.honeywell.com)
142         - fixed minor bug in reply_dir() so it won't return a ACCESS_DENIED
143         when searching a directory that is unreadable
144         - removed second stat() from get_dir_entry() (speed up)
145         - made null searches close the dirptr (fixes big filesystem problem)
146         - fixed clean_name for cd .. (from magnus@axiom.se)
147
148         
149 1.5.20 28/12/93
150         - added debug statement in case of SMBcreate with volid set (leefi@microsoft.com)
151         - fixed a bug in dptr_close() so it sets the next_key to a better 
152         value, this fixes a annoying dir bug
153         - LOTS of changes from jeremy@netcom.com (Jeremy Allison). This
154         makes it possible to at least connect to a NT server with the client
155         and also fixes up much of the socket/process code. This also includes
156         stuff for compiling on a sun386
157         - got the client working with the Syntax server (a commercial
158         smb-based server). This required a few minor changes so the xmit 
159         sizes were negotiated properly.
160         - added support for OSF1, tested on a DEC3000/400 alpha.
161         - fixed the ifconf support under ultrix
162
163 1.5.21 31/12/93
164         - minor cosmetic change to reduce_name()
165         - changes for HPUX from ppk@atk.tpo.fi (Pasi Kaara)
166         - minor fix to nameserver
167         - revamped configuration file format. It now takes a Windows-style
168           (.INI style) configuration file. See the file services for
169           full details of the format. New files: loadparm.c, loadparm.h,
170           params.c, params.h, testparm.c. Several changes to smb.h, local.h,
171           server.c, Makefile. The services structure is no longer visible 
172           to the rest of the system. (Karl Auer)
173         - added ability to specify a print command on a per service basis
174           and globally via the configuration file. Also allows guest account
175           to be specified in the configuration file. Made appropriate changes
176           to server.c so that these data items are obtained from the config
177           module rather than from hardcoded strings (though the hardcoded
178           strings are still the source of the defaults). (Karl Auer)
179         - renamed old-style configuration file to services.old (Karl Auer)
180         - changed README to reflect new configuration details. (Karl Auer)
181         - removed an item from the bugs wishlist (now supplied!) (Karl Auer)
182         - protected smb.h against multiple compilation. (Karl Auer)
183         - protected local.h against multiple compilation. (Karl Auer)
184         - made config stuff do dynamic allocation
185         - added "homes" capability
186         - added create_mask to each service in config
187
188 1.5.22 3/1/94
189         - added "root dir" option for extra security
190         - added -n option to client (useful for OS/2)
191         - changed operation of -n to nameserver to be more useful
192         - patches from Jeremy Allison (jeremy@netcom.com)
193         fixing bug in set_message(), fixing up wait3() for SYSV,
194         making cd check the path in the client, allowing fetching to stdin
195         in client, and enhancing prompt in client to include directory.
196         - made the -D become_daemon() actually detach from the tty. This
197         may need tuning for different flavors of unix.
198         - added "dont descend" option to each service to prevent infinite 
199         loops on recursive filesystems.
200         - updated README to add "running as a daemon" and a simple
201         smb.conf file.
202         - HP/UX fixes from ppk@atk.tpo.fi
203         - made lock calls only if opened with write enabled, as pointed out
204         by gadams@ddrive.demon.co.uk
205
206 1.5.23 4/1/94
207         - minor fix to logging of data in receive_smb(). It used to
208         miss the last 4 bytes of packets.
209         - added the pid,uid and mid fields to the negotiation phase of
210         the client.
211         - made client able to print from stdin
212         - added password on command line for client
213         - created a sample printcap input filter "smbprint"
214         - several fixes to client to work with OS/2
215         - added mput, mget, prompt and lcd to client
216
217 1.5.24 5/1/94
218         - a resend of 1.5.23 as I managed to not include the new
219         prompt, mput and mget code.
220
221 1.5.25 7/1/94
222         - change -B on nameserver so it can override the broadcast address
223         - minor changes to printing in client so OS/2 server can handle it.
224         - fixed reply_access() where OK was not being initialised
225         - added "max xmit" to global parameters.
226         - changed create to open with O_RDWR instead of O_WRONLY
227         - added printmode command to client
228         - made help return extra help on a specified command in client
229         - fixed return code in chkpath
230         - added "recurse" and "lowercase" options to client
231         - fixed some error codes from server
232         - added -I option to client
233         - fix for become_daemon() for HPUX from ppk@atk.tpo.fi
234         - added "hosts allow" and "hosts deny" to server
235         - added keepalives to server
236         - added "access" feature to testparam
237         - NetBSD patches from sreiz@aie.nl
238
239 1.5.26 8/1/94
240         - changed semantics of hosts access code to do more sensible defaults
241         when either of "hosts allow" or "hosts deny" is blank
242         - added the SO_KEEPALIVE option to configurations of sockets in the
243         server
244         - made some of the SVAL fns into macros to keep fussy compilers from
245         complaining
246         - fixed several null pointer bugs in check_access(). These bugs
247         made 1.5.25 unuseable for many people.
248         - fixed null pointer reference of lp_dontdescend()
249         - reload services file after each new connection. 
250
251 1.5.27 11/1/94
252         - fixed opening mode for reply_open() in server
253         - patches from Jeremy Allison (jeremy@netcom.com) to support the 
254         "core+" protocol. The patches also inclued some other features, such
255         as a new read_with_timeout() call (used by SMBreadbraw), and auto 
256         detection of the need to create a socket.
257         - changed the default KEEPALIVE value to 0, as it caused
258         problems with Lanmanager.
259         - added tar capability to client when getting files
260         - altered unix_mode() to return x bits for directories
261         - fixed bug in trim_string()
262
263 1.5.28 12/1/94
264         - cleaned up the debug levels a little so debug level 1 is a practical
265         level for general use
266         - fixed a bug in add_a_service() where a freed pointer was referenced. Thanks
267         to bryan@alex.com for finding the bug.
268         - fixed bug in time structure handling in server and client. Thanks to 
269         bryan@alex.com for pointing out the bug.
270
271
272 1.5.29 15/1/94
273         - fixed a silly bug in reply_open(). Thanks to
274         jeremy@netcom.com for pointing this out.
275         - fixed debug levels in client to be more sensible
276         - added raw read to client
277         - added -B option to client
278         - fixed several bugs in the client, mostly to do with the tar option
279         - added -E option to client
280
281 1.5.30 16/1/94
282         - added lots of prototypes so compilers don't complain
283         - fixed minor bug in reply_rename() (thanks to ppk@atk.tpo.fi)
284         - added more support for LANMAN1.0 protocol.
285         - added SESSION SETUP AND X call
286         - added READ AND X call
287         - added TREE CONNECT AND X call
288         - added support for setbuffer for HPUX (thanks to ppk@atk.tpo.fi)
289
290 1.5.31 29/1/94
291         - added support for user level security in smbclient eg:
292           smbclient "\\SERVER\SHARE" -U USERNAME%PASSWORD
293         - added error message decode as per SMB File Sharing
294           protocol extensions. (thanks to merik@blackadder.dsh.oz.au)
295         - added selection masks to smbclient that recurse down directory
296           tree. eg: mget *.* with recurse and mask *.c on will retrieve all
297           *.c files in the tree.
298         - patches for FreeBSD from kuku@acds.physik.rwth-aachen.de
299         - changed reduce_name() to trim ./ from front of strings and / from 
300           back
301         - fixed a nasty bug in trim_string().
302         - numerous small changes to lots of stuff that I didn't
303         document while I was doing them. Sorry :-(
304         - slightly updated sockspy
305
306        - The following was done by Karl Auer (Karl.Auer@anu.edu.au)
307        - added processing in configuration file of a [printers] section. Allows
308          connection to any printer specified in /etc/printcap (or the file
309          specified in the global parameter 'printcap name').
310        - added full processing of 'available' flag to configuration file. A
311          service can now be 'turned off' by specifying 'available = no'. Of
312          dubious utility.
313        - added 'printcap =' parameter to [global] section in the configuration
314          file. This allows the normal /etc/printcap to be bypassed when
315          checking printer names for dynamic printer connections via [printers].
316        - added 'printer name =' parameters to both the [global] section and
317          services sections of the configuration file. This allows the printer
318          name only to be set, without having to specify an entire print
319          command.
320        - added some synonyms: 'writable' and 'write ok' have the opposite sense
321          to 'read only'. 'public' may be used instead of 'guest ok'. 'printer'
322          may be used instead of 'printer name'. 'printable' is the same as 
323          'print ok'. 'root' may be used instead of 'root dir' or 'root 
324          directory'.
325        - added lots more detail to the sample configuration file to take
326          account of the above.
327        - many minor fixes to internal documentation in the configuration
328          sources.
329        - also - Man pages!
330
331
332 1.5.32 3/2/94
333         - addition of smbd, smbclient and testparm man pages 
334           from Karl Auer
335         - zombie process fix from lendecke@namu01.gwdg.de
336         - added capability to nmbd to serve names available 
337         via gethostbyname().
338
339 1.5.33 3/2/94
340         - fixed up getting of netmask so it works on more unix variants
341         - added -N option to nmbd
342         - changed GMT diff calculation. need to check it's right for
343         lots of OSes
344         - fixed a bug in read_and_X() and chain_reply() chaining now
345         seems to work correctly
346
347 1.5.34 4/2/94
348         - fixed bug in client that meant it couldn't get/put files from WfWg
349         - fixed a bug in the server that caused lpr to return -1 under sunos
350         - fixed a few errors in the hosts allow section of the
351         smb.conf.5 manual page and added examples
352
353 1.5.35  6/2/1994
354         - minor bugfix in reduce_name().
355         - changed width of "size" in client during a dir
356         - patches for NEXT (among other things) from lendecke@namu01.gwdg.de
357         - added -a switch to server, and made default action to append
358         to log file
359         - added deadtime options to [global] section for timing out
360         dead connections to the smbd.
361         - HPUX changes from Pasi.Kaara@atk.tpo.fi
362         - made use of unsigned char more consistent
363         - changed the way of getting the default username and host in the
364          client
365         - made LANMAN1 default to on in the client, off in server.
366         Use -DLANMAN1=1 to make it on in both.
367         - lots of casts and cleanups for various operating systems
368         - changes to the Makefile from Karl to auto-instal the man pages
369         - added a short history of the project to the distribution
370
371 1.5.36 15/2/94
372         - fixed minor bug in Debug() (thanks to Pasi.Kaara@atk.tpo.fi)
373         - fixed bug in server.c so -a wasn't accepted.
374         - minor fixes to the client
375         - added hosts file to name server (-H option)
376         - added -G option for groups to nameserver
377         - cleanups and additions from Jeremy Allison, taking us
378         closer to LANMAN1.0. In particular the locking code was cleaned up
379         considerably.
380
381 1.5.37 16/2/94
382         - fixed bug introduced in 1.5.36 which disabled SMBcreate
383
384 1.5.38 18/2/94
385         - fixed get_broadcast() for ultrix (fix from iversen@dsfys1.fi.uib.no)
386         - added automatic group registration
387         - fixed bug in registration code
388         - made nmbd work better with WfWg, and probably others
389         - updated the man pages to include the new nmbd options.
390         - minor updates to the README
391         - fixed double log_out() in send_packet().
392         - fixed bug in smbclient so that "dir" didn't work correctly
393         with pathworks
394         - possibly fixed bug in server that led to "abort retry ignore" from
395         pathworks client when doing a "dir".
396         - changed behaviour of smbclient login slightly, to try a
397         blank password in SMBtcon if the right password fails, and a
398         session setup has succeeded. Some clients seem to use a blank
399         one if a session setup has succeeded.
400         - ISC patches from imb@asstdc.scgt.oz.au
401         - the client now tries to do name registration using a unicast.
402         Let me know if this helps anyone.
403         - tried to add a "contributed" line to each OS in the Makefile.
404
405 1.5.39 18/2/94
406         - fixed silly C code that only worked with some compilers
407         - fixed another silly bug in nameserv.c that caused it to seg fault
408
409 1.5.40 21/2/94
410         - removed the from (IP) message so people don't worry about 0.0.0.0,
411         it's redundant anyway.
412         - changed the client so the crypt key isn't printed
413         - changed the structure of switch_message() to use a list of functions.
414         This improves the debug info.
415         - made SMBopen ignore supplied attribute as per X/Open spec
416         - made SMBopen fail if file doesn't exist in all cases. Let me know
417         if this breaks something. It is implied in the X/Open spec. This
418         fixes the pkzip bug.
419         - added dptr_demote() to replace dptr_close() to try and fix 
420         pathworks dir bug. This has the potential disadvantage of
421         leaving lots of open file descriptors.
422         - changed mask_match to disallow two .s in a name
423
424 1.5.41 2/3/94
425         - added "dfree command" global option to smbd to support an
426         external "disk free" executable (typically a script). This gets 
427         around the problem of getting disk free info reliably on lots
428         of systems.
429         - added ffirst and fclose to client
430         - simple SYSVR4 patch from mark@scot1.ucsalf.ac.uk
431         - added better uid/gid reporting for debugging purposes
432         - several changes to the logon procedure for the client, so hopefully
433         it will connect correctly to a wider range of servers.
434         - server should no longer crash if it can't open the debug
435         file (thanks to MGK@newton.npl.co.uk)
436         - added the THANKS file.
437
438 1.5.42 6/3/94
439         - lots of changes from Jeremy Allison, implementing more of
440         the LANMAN1.0 protocol, and fixing a few bugs.
441         - fixed delete bug, so hopefully wildcards are correct now
442         - pcap changes from Martin Kiff so non-aliased printers in
443         /etc/printcap are recognised
444         - wrote announce file ready for 1.6
445         - re-wrote browse code in client (still doesn't work)
446         - updates to man-pages from Karl Auer
447         - made raw packet dumps mode 0600 and only if -dA is given
448         - changed socket code to use utility functions in util.c
449
450 1.6.00 17/3/94
451         - made server always return to original directory (rather than /)
452         - fixed bug in params.c that caused a seg fault if no parms in a 
453           section
454         - minor clean ups for clean compile under solaris
455         - solaris fix for running from inetd from Karl Auer
456         - fixes for dfree() under solaris
457         - minor changes that might help BSDI
458         - changes to the Makefile, manual-pages and sample config file from 
459         Karl Auer
460         - fixed dfree for Ultrix
461
462 1.6.01 19/3/94
463         - fixed setatr bug that allowed directories to be unusable 
464
465 1.6.02 27/3/94
466         - added timestamps to connection message in log
467         - added idle timeout of 10 minutes to name server
468         - made HAVE_SYSCONF==0 the default in includes.h
469         - made the client not register by default
470         - ISC patches from imb@asstdc.scgt.oz.au
471         - GetWd() cache code from Martin Kiff
472         - rewrote the locking code in terms of fcntl() calls.
473         - fixed "can't delete directory" bug
474         - added code to close old dirptrs for duplicate searches
475         - removed exchange_uids() and the access() call and replaced them.
476
477 1.6.03 28/3/94
478         - tried to clean up the time handling a little (local vs gmt time)
479         - added debug level global to server config
480         - added protocol level global to server config
481         - added SMBecho command to server
482         - included Karl Auers SMBGuide in the distribution.
483
484 1.6.04 31/3/94
485         - fixed time zeroing bug in smb_close and smb_setatr
486         - re-wrote the username/password handling to be more flexible
487         - added "guest only" service setting to smb.conf
488         - updated man pages for new username/password handling
489         - fixed parse bug in reply_tconX
490         - improved error return code from tcon
491         - several changes to fix printing from WfWg
492
493 1.6.05 2/4/94
494         - changed the name of the whole package to Samba
495         - removed SMBexit call from client to stop exiting error message
496         - added interpret_addr() call to replace inet_addr() so
497         a hostname can be used whenever a IP is required
498
499 1.6.06 8/4/94
500         - added random tid choice to reduce problem of clients not
501         detecting a server disconnection.
502         - made client not report spurious time from CORE or COREPLUS server.
503         - minor HPUX fix from gunjkoa@dep.sa.gov.au
504         - turned off GETWD_CACHE until we track down a minor bug in it
505
506 1.6.07: 10/4/94
507         - added helpful error messages to connection failure in client.
508         - fixed problem with mput in client
509         - changed server to allow guest-only sesssetup messages with any
510         password. Control this with GUEST_SESSION_SETUP in local.h.
511         - minor change to session setup handling in make_connection()
512         - added check for right number of \s in the client.
513         - made the server not exit on last close if the deadtime is != 0
514         - added malloc and realloc wrappers. enable them with -DWRAP_MALLOC=1
515         - if smbd is started with a debug level of 10 or greater it creates
516         a log file ending in the process number
517
518 1.6.08: 18/4/94
519         - updated the THANKS file
520         - changes from marcel@fanout.et.tudelft.nl (Marcel Mol) for AMPM
521         times and error report on connect().
522         - made the get_myname() routine discard any part after the first '.'
523         - added a wrapper for free from Martin Kiff
524         - added simpleminded code to handle trapdoor uid systems (untested)
525         - added Martin Kiffs "paranoid" getwd code.
526         - added default MAXPATHLEN if undefined of 1024
527         - made get_broadcast() continue to get netmask if it can't get
528         broadcast (suggestion from Hannu Martikk)
529         - replaced fchmod() calls with chmod() to satisfy some unixes
530
531
532
533 1.6.09: 4/5/94
534         - changed perror() calls to strerror() in server.c
535         - fix for dfree on OSF1 from 
536         Maximilian Errath (errath@balu.kfunigraz.ac.at)
537         - fixed server time reporting for protocol >= LANMAN1
538         - fixed TimeDiff() for machines without TIMEZONE or TIMELOCAL
539         (thanks to Vesa S{rkel{ <vesku@rankki.kcl.fi>)
540         - added SYSV defs to AIX and HPUX to fix "memory" problem
541         (actually a signal problem).
542         - added version to client banner in log file
543         - Ultrix patches from Vesa S{rkel{ <vesku@rankki.kcl.fi>
544         - added ! command to client for executing shell commands
545         - fixed ERRnofids bug in server
546         - fixed name_equal bug 
547         (thanks to cjkiick@flinx.b11.ingr.com (Chris Kiick))
548         - wrapped gethostbyname() with Get_Hostbyname() to prevent
549         case sensitive problems on name lookups
550         - limit printer tmp filename to 14 chars 
551         (from Paul Thomas Mahoney <ptm@xact1.xact.com>)
552         - added ability to understand 64 bit file times 
553         (thanks to davidb@ndl.co.uk (David Boreham))
554         - added Gwt_Pwnam() wrapper to cover server case-sensitivity
555         problems (suggestion from J.M.OConnor@massey.ac.nz (John O'Connor))
556         - changed the setuid() calls to try and work for more systems
557         without breaking the ones it currently works for
558         - added version number to usage() 
559         (suggestion from peter@prospect.anprod.csiro.au)
560         - added "security=" option for share or user level security
561         - allowed multiple usernames in "user=" field
562         - changed display method for recursive dorectory listings
563         - switched client to use long filenames where supported
564         - added speed reporting to client transfers
565         - several NT fixes to server from jra@vantive.com (Jeremy Allison)
566         - ISC fixes from ptm@xact.demon.co.uk (Paul Mahoney)
567         - fix to README from grif@cs.ucr.edu (Michael A. Griffith)
568         - default netmask and broadcast from  Ian A Young <iay@threel.co.uk>   
569         - changed default of is_locked() on fcntl() error.
570         - fixed bug in read_with_timeout() that could cause a runaway 
571         smbd process.
572         - fixed findnext bug for long filenames in client
573         - changed default protocol level to LANMAN1
574         - change default reported security level to SHARE.
575         - changed password_ok() so that if pwdauth() fails it tries
576         with standard crypt.
577         - added "translate" command to the client to do CR/LF translation
578         for printing, and add a form feed at the end. 
579         (thanks to mh2620@sarek.sbc.com (Mark A. Horstman ) )
580         - added "locking=yes/no" toggle for each service
581         - SCO unix patches from Heinz Mauelshagen (mauelsha@ez.da.telekom.de)
582
583 1.6.10: 7/5/94
584         - fixed important bug in readbraw/writebraw
585         - added -A option to client
586         - fixed delete bug on long filenames (untested). Thanks to
587         Stefan Wessels <SWESSELS@dos-lan.cs.up.ac.za>
588         - neatened up the byte swapping code
589
590 1.6.11: 3/6/94
591         - fixed bug in client in receive_trans2_response() that caused
592         some strange behaviour with LANMAN2.
593         - fixed some offset/alignment problems with lockingX (thanks to 
594         Jeremy Allison)
595         - allow locking on O_RDONLY files. Thanks to Martin N Dey <mnd@netmgrs.co.uk>
596         - fixed del bug in client thanks to paulzn@olivetti.nl (Paul van der Zwan)
597         - fixed multiple user= bug thanks to MDGrosen@spectron.COM (Mark Grosen)
598         - added translate ability for all files. Thanks to mh2620@sarek.sbc.com (Mark A. Horstman )
599         - mask out negative lock offsets. Thanks to bgm@atml.co.uk (Barry G Merrick)
600         - more attempts to get the structure alignment better for some machines
601         - cleaned up the machine dependencies a little
602         - ISC fixes from Paul Thomas Mahoney <ptm@xact1.xact.com>
603         - enabled printing with a SMBclose and SMBwrite for NT 
604         thanks to jkf@frisky.Franz.COM (Sean Foderaro)
605         - SGI changes from Michael Chua <lpc@solomon.technet.sg>
606         - CLIX patches from cjkiick@ingr.com
607         - NEXT2 and NEXT3_0 patches from Brad Greer (brad@cac.washington.edu)
608         - BSDI changes from tomh@metrics.com (Tom Haapanen)
609         - SCO patches from John Owens (john@micros.com)
610         - fix psz bug in pcap.c (thanks to Karl Auer)
611         - added widelinks option (global and per service). Suggestion from
612         Karl Auer. Defaults to True.
613         - made locking able to be global or local (default is give by global)
614         - added check_name() to dir listings
615         - added "packet size" option to globals. default to 32767. This
616         "fixes" a WfWg bug (thanks to Karl Auer)
617         - fixes for getattrE and setattrE and minor fix in util.c from Jeremy Allison.
618         - Karl updated the man pages o be current
619         - disabled writebraw and readbraw until a possible bug can be investigated further
620
621 1.7.00: 14/7/94
622         - added session_users list, to overcome problem of missing usernames in SMBTconX.
623         - added term support to the client
624         - added "default service"
625         - fork for print so user is not root
626         - added name mangling to 8.3 (rudimentary)
627         - fixed bug in in_group()
628         - changed to use gid in place of egid
629         - fixed client connection to OS/2 (1.3 + lanman2.2) and long filenames
630         - added patches from mcochran@wellfeet.com (Marc Cochran)
631           these implement scope ids and fix some udp bugs. It means
632           the -L option to nmbd now works.
633         - made nmbd respond to incoming port rather than only 137
634         - made wide links refuse .. components
635         - fixed "dir foo." bug to stop it showing "foo.???"
636         - improved name mangling (added stack)
637         - added valid FNUM check to most calls
638         - fixed important do_put bug in the client
639         - added magic scripts to the server
640         - re-enabled getwd_cache code
641         - added optional agressive password checking
642         - removed dptr_closepath from SMBsearch to try and stop "dos for loop"
643           bug
644         - DGUX patches from ross@augie.insci.com (ross andrus)
645         - updated the README and THANKS file.
646         - added node status request to -L option of nmbd
647         - stripped trailing spaces in mask_match() (thanks to mike hench hench@cae.uwm.edu)
648         - added COREPLUS style print queue reporting and "lpq command"
649           in globals.
650         - cleaned up date handling and fixed byte order dependancy on dates
651         in SMBgetattrE.
652         - cleaned up the password handling and added "password level" with
653         the possability of checking all case combinations up to N upper
654         case chars.
655         - changed to use recvfrom only on udp ports (fixed read raw!)
656         - added TCB password support for SCO (thanks to lance@fox.com)
657         - updated README, THANKS and announce files.
658         - fixed timezone reporting to be signed (thanks to noses@oink.rhein.de)
659         - disabled max packet as it could cause problems with WfWg (no longer 
660         needed now readraw is "fixed")
661         - changed from creat() to open() in mktemp and mknew.
662         - changed umask handling
663         - sped up nmbd by making it cache names
664         - changed idle timeout on nmbd to 2 mins
665         - Netbsd changes from noses@oink.rhein.de
666         - released alpha2
667         - added name timeout to nmbd
668         - changed bind port retry in nmbd
669         - added Limitations sections to README
670         - fixed two . in is_83()
671         - fixed compilations warnings in util.c (thanks to njw@cpsg.com.au)
672         - made [homes] honour multiple user list 
673         - fixed mask match bug introduced in alpha1
674         - added "mangled stack" option for stack size
675         - added mangled stack promotion
676         - released alpha3
677         - netbsd-1.0 fix for statfs().
678         - added null_string to util.c to reduce memory usage
679         - changed the way directory structures are put together
680         - added smbrun for system() requests
681         - changed maxmux to 0 in hope of avoiding mpx commands problem
682         - fixed zero response length for session keepalives
683         - removed called name from session users list
684         - added F_RDLCK support to try and handle locks on readonly files
685         - made directory creation honour the lowercase flag in client (thanks 
686         to charlie@edina.demon.co.uk)
687         - made checksum for mangling independant of extension if extension is 
688         lowercase
689         - added ability to rename files with different extension, preserving 
690         root name
691         - released alpha4
692         - better command line error checking in client
693         - changed all debug statements to new format
694         - fixed delete error code reporting
695         - released alpha5
696         - added mangled name support to wildcard delete in server
697         - fixed mask bug in SMBsearch
698         - cleaned up prototypes
699         - released alpha6
700         - fixed important bug in session_setup which made WfWg freeze 
701         (maxmux was 0 - this bug was introduced in alpha4)
702         - released alpha7
703         - two printing bug fixes thanks to bgm@atml.co.uk (Barry G Merrick)
704         - uid fix to smbrun (thanks to larry@witch.mitra.com)
705         - man page updates from Karl Auer
706         - FAQ file from Karl Auer
707         - released alpha8
708         - fixed read-only flag in dos_mode() for non writeable services
709         - fixed error code reporting in open() and openX().
710         - minor secureware fix from (thanks to lance@fox.com)
711         - released alpha9
712         - casting cleanups for memcpy().
713         - cleaned up error code names to be more consistant
714
715 1.7.01: 17/7/94
716         - minor man page fix from baeder@cadence.com (Scott Baeder)
717         - changed usage() error message in client
718         - made nmbd not exit if can't register own name
719         - made nmbd only register if running as a daemon
720         - fixed stdout problem in smbrun by closing stdin/stdout/stderr
721         - minor fix to lmhosts parsing
722
723
724 1.7.02: 20/7/94
725         - made nmbd not call get_broadcast if both -B and -N are used (thanks 
726         to Chris Woodrow <Chris.Woodrow@actrix.gen.nz>)
727         - disabled GETWD_CACHE again
728         - fixed INCLUDES list in Makefile to add version.h (thanks to 
729         jimw@PE-Nelson.COM (Jim Watt))
730         - made checkname do a become user if it hasn't already done so.
731         - added consistancy check to become_user().
732         - removed mask extension expansion from SMBsearch
733         - small change to chkpth
734         - fix to snum select for lpq status (thanks to Rafi Sadowsky 
735         rafi@tavor.openu.ac.il)
736         - changed daemon to is_daemon for NetBSD (thanks to noses@oink.rhein.de)
737         - removed STAFS3 stuff for NETBSD_1_0
738
739
740 1.7.03: 29/7/94
741         - updated docs for new distribution structure
742         - made getatr return 0 size for directories (thanks to Bernd Esser 
743         esser@pib1.physik.uni-bonn.de)
744         - added valid dos filename checks from Stefan Wessels 
745         (swessels@cs.up.ac.za)
746         - added trimming of . in hostnames to -S mode of nmbd
747         - removed become_user() and OPEN_CNUM calls. Now make them 
748         in switch_message instead which simplifies a lot of code.
749         - added GETFNUM macro to make chain_fnum more consistant and
750         reliable.
751         - added flags to protocol structures to simplify CAN_WRITE and AS_USER
752         checking
753         - added getwd cache boolean option to globals
754         - added fclose() to lpq status routine thanks to 
755         dgb900@durras.anu.edu.au (David Baldwin)
756         - added "only user" option, to limit connection usernames to those 
757         in the user= line
758         - changed to badpath from badfile in chkpath despite specs (following 
759         what WfWg does). This fixes "file not found" error in copy command.
760         Thanks to rwa@aber.ac.uk for pointing out the bug
761         - changes for apollo from Stephen C. Steel <steve@qv3donald.LeidenUniv.nl>
762         - more changes for Apollo from jmi@csd.cri.dk (John Mills)
763         - released alpha release
764         - added FTRUNCATE_CAN_EXTEND=0 as default to fix problem with word6.
765         Possibly not needed on many OSes? Thanks to Charlie Hussey 
766         charlie@edina.demon.co.uk
767         - started adding max connections code
768         - much improved group handling contributed by 
769         Ian Heath (ih@ecs.soton.ac.uk)
770
771 1.7.04: 29/7/94
772         - fixed one line bug in SMBopenX that got error code wrong.
773
774 1.7.05: 2/8/94
775         - added UNIXERROR() macro to get error code from unix errno.
776         - fixed lpq status for MSTCPB3
777         - added @ option for user= line to lookup groups in group file
778         - added become_user optimisation and process timeout (thanks to
779         Jeanette Pauline Middelink (middelin@calvin.iaf.nl)
780         - added malloc optimisation in readbraw
781         - released alpha
782         - patches for OSF1 enhanced security from Udo Linauer <ul@eacpc4.tuwien.ac.at>
783         - made level 2 a more useful debug level (less guff)
784         - added "max connections" and "lock dir" options to allow
785         limiting of the number of connections to a service at one time.
786         - released alpha2
787         - updated man pages
788         - released alpha3
789         - added read prediction code for better read performance
790         - released alpha4
791         - minor tuning to receive_smb()
792         - changed the order of mangled stack checking
793         - bug fix in read_predict().
794         - released alpha5
795         - minor search optimisation
796         - fixed keep alive bug in writebraw and in readbraw in the client
797         - released alpha6
798         - disabled writeraw by default pending a bug fix
799         - added profiling code (off by default)
800         - minor delete tuning
801         
802
803 1.7.06: 4/8/94
804         - OSF1 crypt fix thanks to Udo Linauer <ul@eacpc4.tuwien.ac.at>
805         - ifdef'd EDQUOT in case you don't have it (thanks to Paul Blackman <ictinus@Lake.canberra.edu.au>)
806         - tidied up UNIXERROR stuff to work on more systems.
807         - made Makefile more sophisticated and added "make revert"
808
809 1.7.07: 4/8/94
810         - fixed one line fatal bug in receive_smb. Thanks to bruce@pixar.com
811
812 1.7.08: 2/9/94
813         - initgroups call for SCO from lance@fox.com
814         - code cleanups from cap@isac.hces.com (Simon Casady)
815         - use full pathname in print command construction
816         - ISC includes fix from Martin Tomes <mt00@ecl.etherm.co.uk>
817         - added GID_TYPE define to cope with ultrix. Thanks to
818         brad@cac.washington.edu
819         - added umask call to main in server
820         - fixed several minor problems with the max connections
821         code. Thanks to lehmann@klizix.mpi-stuttgart.mpg.de (Arno Lehmann).
822         - fixed filetime in writeclose. Thanks to Andreas Bahrdt
823         <100321.2431@compuserve.com>
824         - df fix for large disks from Andreas Bahrdt
825         - getpwanam support from horn@mickey.jsc.nasa.gov
826         - clean name change from Bernd Esser
827         <be@syli30.physik.uni-bonn.de>
828         - released alpha1
829         - more locking changes to fix Excel problem
830         - released alpha3
831         - another minor locking change
832         - smarter masking in the locking code. Excel now apparently works.
833         - minor FAQ updates
834         - changed max connections refusal error to access denied.
835         - added queue command to client to show the print queue
836         - changed some print queue reporting stuff
837
838 1.8.0: 14/10/94
839         - added international chars to valid_dos_char(). Thanks 
840         to Daniel.Grandjean@dgr.epfl.ch
841         - volume label fix
842         - released alpha1
843         - important off by 4 fix in the server
844         - readbraw size adaption in the client
845         - released alpha2       
846         - wait3 cast for NeXt fixed. Thanks to dbrandon@politics.tamu.edu.
847         - man page fix for max xmit. Thanks to mmoore@wexford (Mike Moore)
848         - is_8_3() fixes from Jochen Roderburg <Roderburg@rrz.Uni-Koeln.DE>
849         - list_match() fix from jkf@soton.ac.uk
850         - statfs3 fix for BSDI from dan@supra.com
851         - changed file open/close/read in server in preparation for mmap()
852         based IO.
853         - added mmap() support for reading files in the server. Optional
854         at compile time. Thanks to suggestion from Roger Binns <rogerb@x.co.uk>
855         - mmap bug fixes
856         - added __SAMBA__ name in nmbd
857         - major changes for support of lanman2 and long filenames from
858         Jeremy Allison (jeremy@netcom.com)
859         - lseek optimisation. Thanks to Linus Torvalds.
860         - released alpha4
861         - date patches for lanman2 from Jeremy Allison
862         - added protocol aliases to handle WfWg (untested)
863         - allow for zero params or data in reply_trans2
864         - small lanman2 patches from jeremy
865         - more prototype additions for clean compilation
866         - postscript patches from tim@fsg.com
867         - more lanman2 patches from Jeremy
868         - added null ioctl support 
869         - kanji patches from fujita@ainix.isac.co.jp
870         - released alpha6
871         - disallowed null password access (thanks to Birger Kraegelin krg@iitb.fhg.de)
872         - Makefile fix for ultrix from andrew@d2bsys.demon.co.uk (Andrew Stirling)
873         - added per-service mangled names
874         - totally re-vamped loadparm.c  
875         - added "mangling char" parameter
876         - released alpha7
877         - added "default case = lower|upper" service option
878         - change mangling char to a service parameter
879         - ultrix enhanced security patch from steven@gopher.dosli.govt.nz
880         - more changes to loadparm.c
881         - printer name always set in [printers]
882         - string_free() fix thanks to jef_iwaniw@pts.mot.com
883         - changed group handling to be faster and work for large numbers 
884           of groups
885         - added dynamic gid_t type determination
886         - released alpha8
887         - fixed become_user() problem for services with invalid
888         directories
889         - added "invalid users" list on per service basis
890         - fixed pointer problems in alpha8 (thanks to murnaghant@a1uproar.yuppy.rdgmts.MTS.dec.com)
891         - fixed some date setting problems
892         - trans2 fixes from jeremy to stop infinite directory listings of 
893         long filenames
894         - "standard input" lpq patch from root@tlspu.demon.co.uk (Adrian Hungate)
895         - changed password checking to check session list and validated ids 
896         before user list
897         - split off password functions into password.c
898         - added hosts equiv and rhosts code (thanks to Tim Murnaghan <murnaghant@a1uproar.yuppy.hhl.MTS.dec.com>)
899         - released alpha11
900         - added "newer" command to the client
901         - attempt at aix trapdoor uid workaround
902         - released alpha12
903         - minor trans2 bugfix
904         - added ufc crypt (fast crypt) support. Thanks to suggestion from
905         forrest d whitcher <fw@world.std.com>
906         - socket() fix for getting bcast and netmask thanks to
907         Brian.Onn@Canada.Sun.COM
908         - added beginnings of IPC and named pipe support in the server
909         - changed file structure a bit, creating reply.c
910         - finished print queue support for lanman1
911         - changed default protocol to LANMAN2
912         - released alpha13
913         - logged IPC connects at a higher debug level
914         - added netgroup support to hosts equiv search
915         - disallowed root access though hosts.equiv (thanks to Colin.Dean@Smallworld.co.uk)
916         - kanji and password handling fixes from fujita@ainix.isac.co.jp
917         - several bug fixes for lanman and other things from
918         esser@pib1.physik.uni-bonn.de (Bernd Esser)
919         - updated man pages, README and announce files.
920         - released 1.8.00alpha1
921         - reply_close() time change fix from Andreas Bahrdt <100321.2431@compuserve.com>
922         - added valid users list to compliment invalid users list.
923         - aix fixes from tomc@osi.curtin.edu.au (Tom Crawley)
924         - changed testparm output format
925         - support for getting time from the server (nearly untested)
926         - fixed device type error for wild device ???? 
927         - fixed groups problem when in 0 groups
928         - more IPC fixups
929         - added support for "net view \\server" command to list
930         available services (like browsing)
931         - released 1.8.00alpha2
932         - changed port choice for nmbd -L
933         - added -L option to client to view share list on a host
934         - bug fixes for NetShareEnum code
935         - added "server string" option
936         - changed default print file name to include remote machine name.
937         - added hooks for browsing in nmbd
938         - added browsing to nmbd
939         - freebsd fixed from Steve Sims SimsS@Infi.Net
940         - got rid of tell()
941         - added subnet browsing with the S option in lmhosts
942         - made smbd prime nmbd with a 1 byte dgram
943         - added REUSADDR to open_socket_in() thanks to peter@ifm.liu.se
944
945
946 1.8.01: 18/10/94
947
948         - auto add group "LANGROUP" if no group specified in nmbd
949         - made nmbd more responsive at startup
950         - lots of cleanups and consistancy checks
951         - added -C option to nmbd to set "machine comment".
952         - fixed postscript option
953         - force print_file in print_open()
954         - restructured the browsing a little
955         - casesignames fix for lanman-dos
956         - auto-load home directory from session setup
957         - changed to StrnCpy() for safety
958         - fixed "out of file descriptors" bug in the client (a WfWg bug?)
959
960
961 1.8.02: 22/10/94
962         - fixed uppercase username problem
963         - added "hide dot files" option
964         - changed auto debug log in nmbd
965         - added LMHOSTS to Makefile
966         - added M flag in lmhosts to specify own netbios name
967         - added "load printers" option to auto-load all printers
968         - substitution of %p in lpq command
969         - substitution of %h and %v in server string and -C option of
970         nmbd
971         - string substitions substitute all occurances of a pattern
972         - added casesignames global option
973         - fix for man pages thanks to David Gardiner <dgardine@cssip.edu.au>
974         - changed debug options a bit
975         - added default for lpq command and lpr command
976         - changed default shell path to /bin/sh
977         - forced lpq under api to run as root - should speed things up
978         - added "group" option to force group of a connection
979         - added "read list" and "write list" options
980         - added max mux option - seems to fix NT browsing?
981         - added "mangled map" option thanks to
982         Martin.Tomes@uk.co.eurotherm.controls
983         - separated mangling functions into mangle.c
984         - allowed all dos chars in mangled names
985         - apollo changes from Helmut Buchsbaum <buc@eze22.siemens.co.at>
986         - password changing code from Bob Nance <Bob.Nance@niehs.nih.gov>
987         it doesn't quite work yet, but it's a start (disabled by default)
988
989
990 1.8.03: 25/10/94
991         - made auto loaded services browsable as per default service
992         so you can hide homes but keep home directories.
993         - changed check_name() to handle "direct to network" printing
994         - auto 3 minute deadtime if all connections are closed. This 
995         prevents restart when polling the print queue.
996         - fix for newer command in client from Rich-Hoesly@uai.com
997         - changed connection recording method
998         - added the program smbstatus
999         - changed timeout mechanism
1000         - "null passwords" option from Pim Zandbergen <pim@cti-software.nl>
1001         - made new files with casesignames=False set their case to the default
1002         case.
1003         - fixed problem of uppercasing first letter of printers in printcap
1004         - debug level fixes in trans2 from jimw@PE-Nelson.COM (Jim Watt)
1005         - made null printer default to lp
1006         
1007 1.8.04: 27/10/94
1008         - added OS2.txt from riiber@oslonett.no
1009         - another "auto services" fix. A silly strtok() bug :-(
1010         - fixed the status locking and max connections (broken in 1.8.03)
1011         - released alpha1
1012         - added gets_slash so lines can be continued in smb.conf and
1013         lmhosts
1014         - browse list bugfix
1015         - default to "load printers=yes"
1016         - rewrote pcap.c
1017         - intergraph bugfix from tarjeij@ulrik.uio.no
1018         - changed properties flags in nmbd (to fix NT print browsing)
1019         - allowed very long lines in printcap parsing.
1020
1021 1.8.05: 28/10/94
1022         - lanman2 fix from Jeremy
1023
1024 1.9.00: 22/1/95
1025         - only add home if not already there.
1026         - added ulogoffX support
1027         - PTR_DIFF() cleanups
1028         - fixed a bug that caused STATUS..LCK to grow very large
1029         - changed mangling to handle names ending in . a little better
1030         - added "strip dot" option
1031         - SGI and setgroups() fix from bill@sg25.npt.nuwc.navy.mil
1032         - fixed password preservation in password_ok() (again?)
1033         - unink fix from emer@vssad.enet.dec.com (Joel S. Emer)
1034         - changed username part of spool filename to max 10 chars (from 6)
1035         - magic script fix from beverly@datacube.com (Beverly Brown)
1036         - reply_special() fix from Peter Brouwer <pb@apd.dec.com>
1037         - stopped nmbd from listening on 138. It didn't seem to help much.
1038         - clix fixes from ttj@sknsws61.sjo.statkart.no
1039         - fixed select behaviour under Linux
1040         - man page fix from Robin Cutshaw <robin@intercore.com>
1041         - ISC block size fix from ralf@rbsoft.sdata.de (Ralf Beck)
1042         - ISC fixes from Martin.Tomes@controls.eurotherm.co.uk
1043         - attrib bit fix in smbclient (pointed out by Rich-Hoesly@uai.com)
1044         - japanese extensions from fujita@ainix.isac.co.jp (Takashi
1045         Fujita) and ouki@gssm.otuska.tsukuba.ac.jp.
1046         - SCO patches from Stephen.Rothwell@pd.necisa.oz.au
1047         - changed the system commands to redirect stderr
1048         - changed default printername to service name for all print ops
1049         - added ability to delete print queue entries
1050         - added warning if you try to print without -P in smbclient
1051         - INTERACTIVE patches from cardinal@settimo.italtel.it
1052         - patch to handle spaces in group names from GJC@vax1.village.com 
1053         (GEORGE J. CARRETTE)
1054         - lockingX fix from stefank@esi.COM.AU (Stefan Kjellberg)
1055         - some fairly radical changes to filename handling. We can now
1056         handle mixed case filenames properly
1057         - released alpha2
1058         - added sysv printing support and improved bsd support
1059         - changed the user that does print queues and lprm jobs
1060         - return code support in the client from doylen@nbslib.isc-br.com (Doyle Nickless)
1061         - added "strict locking" option. Defaults to no.
1062
1063         - added -I switch to nmbd
1064         - fixed DEV bug thanks to Dirk.DeWachter@rug.ac.be
1065         - use pw_encrypt() for shadow passords in Linux (from begemot@begemot.iko.kharkov.ua (Dmitry Gorodchanin))
1066         - disabled read prediction by default
1067         - added varient handling code to ipc.c for printQ and printDel.
1068         - released alpha5
1069         - AUX patches from root@dolphin.csudh.edu
1070         - struct timeval fix from gkb1@york.ac.uk
1071         - patches to merge ISC and INTERACTIVE from pim@cti-software.nl
1072         - changed to "printing ="
1073         - fixed problem with long print queues.
1074         - fixed node status request in nmbd to go to non bcast
1075         - made default path in services /tmp if not specified
1076         - added %u in passwd program
1077         - fixed up the password changing code for Linux
1078         - no guest sess setup when user level security
1079         - changed timeouts to kill dirptrs so cdroms can be unmounted
1080         - added auto-reload of smb.conf if changed
1081         - added SIGHUP to reload the config files
1082         - added -M option to nmbd to search for a master browser
1083         - added support for continue bit in trans2findnext      
1084         - changed to dynamic strings in some more structures
1085         - changed default deadtime to 30 minutes
1086         - cleaned up the memory swapping code a bit
1087         - updated the man pages somewhat
1088         - added %m and %u in the "path=" of services
1089         - released alpha6
1090         - simple testing and fixups for solaris, sunos, aix, ultrix and
1091         osf/1 (this is all I have access to).
1092         - fixed chdir bug 
1093         - added hashing to cnum selection
1094         - released alpha7
1095         - fixed printing bug
1096         - reduced chance of "hung" smbd with dead client
1097         - fixed do_match() bug (recently introduced)
1098         - released alpha8
1099         - nameserver fix from W.J.M.vGeest@et.tudelft.nl (W.J.M. van Geest)
1100         - rewrote readbraw to try and overlap reads with writes
1101         - client optimisations
1102         - rewrote getwd cache and enabled it by default
1103         - added partial smb packet reads (hopefully faster writes)
1104         - added log file and log level options (with subs)
1105         - added "read size" option
1106         - tried setting some more socket options
1107         - can use subs in "config file=" and will auto-reload
1108         - added "include" options, with some subs
1109         - finally got print manager working with NT
1110         - auto-respond in nmbd to non-broadcast (auto WINS server, no -A
1111         needed)
1112         - released alpha10
1113         - auto-delet unused services when reloading
1114         - fixed auto-deletion
1115         - fixed long names in printing
1116         - fixed double loading of services file
1117         - added printer file name support
1118         - reformatted man pages for better www conversion
1119         - renamed to 1.9.00.
1120         - added support for RNetServerGetInfo and NetWkstaGetInfo API's
1121         - updated the docs a bit
1122         - released alpha1
1123         - added -M -
1124         - changed nmbd announce interval to 10 mins in outgoing packets
1125         - hopefully fixed idle timeout reconnects
1126         - strupper all command lines in nmbd
1127         - added %a substitution for "remote architecture"
1128         - added "Samba" protocol (same as lanman2)
1129         - added "security = SERVER"
1130         - released alpha2
1131         - lowercase password fix
1132         - fixed connect path length bug (thanks to JOHN YTSENG 
1133         <jtseng@cory.EECS.Berkeley.EDU>)
1134         - added subs on "password server".
1135         - fixed printing filename bug from smbclient
1136         - disk quotas and hpux printing support from Dirk.DeWachter@rug.ac.be
1137         - Makefile patches from pappinm@ayr_srv2.nth.dpi.qld.gov.au
1138         - AFS patches from Mike Allard (mgrmja@nextwork.rose-hulman.edu)
1139         - fixed grp name = server name problem
1140         - man page updates from Charlie Brady (charlieb@budge.apana.org.au)
1141         - fixed file search bug by adding "finished" flag 
1142         - added "max log size". Suggestion from Mark Hastings <mark.hastings@gain.com>
1143         - released alpha3
1144         - changed the read/write routines to handle partial read/writes
1145         - released alpha4
1146         - changed "guest account" to per-service
1147         - changed so "guest ok" allows access to the guest account, 
1148         not the "user=" line
1149         - changed default readsize to 2048
1150         - try bind to 137 in nmbd if possible
1151         - added server lookup to -L option in smbclient (gets list of servers)
1152         - added -M switch to smbclient for sending winpopup messages
1153         - released alpha5
1154         - FAQ updates from Paul Blackman ictinus@lake.canberra.edu.au
1155
1156 1.9.01: 23/1/95
1157         - changed comment in print Q info to service rather than server comment
1158         - fixed smbclient -L to NT when in user level security mode
1159         - hopefully finally fixed NT print manager problems
1160         - added informative messages during smbclient -M 
1161         - added node status replies to nmbd
1162         - changed the lock offset fixup calculation to be more friendly
1163         to dumb lockd daemons.
1164         - added sigbus and sigsegv handlers to catch any silly errors and
1165         print a message
1166         - added message receipt to smbd and "message command =" option
1167         
1168 1.9.02: 25/1/95
1169         - added argv/argc mangling for people who start the server the
1170         wrong way.
1171         - some man page updates
1172         - added "revalidate" option
1173         - added hosts allow/deny access check to messaging access
1174         - added timeouts in the client
1175         - added check for existance of smbrun binary
1176         - man page updates from Colin.Dean@Smallworld.co.uk
1177         - freebsd patches from dfr@render.com
1178         - added mask sanity check in SMBsearch
1179         - added more useful substitutions (%S, %P, %I and %T)
1180         - added "exec =" option to execute commands on each connection
1181
1182 1.9.03: 13/3/95
1183         - added "socket options" option
1184         - close base fd's (0,1 and 2)
1185         - use dup(0) for inetd operation
1186         - better detection of is_daemon
1187         - hopefully finally fixed silly put bug that gave the wrong
1188         date on files.
1189         - fixed segv in readbraw bug
1190         - added improved checing for invalid (or null) print file name
1191         - several patches from ad@papyrus.hamburg.com (Andreas Degert)
1192         - fixed slow logout bug in smbclient
1193         - fixed automounter problems
1194         - added subs on lock dir
1195         - BSDI patch from John.Terpstra@Aquasoft.com.au
1196         - added separate nmb and smb logfile entries in the Makefile
1197         - fixed return code error in open calls
1198         - added simple status display of printer in lpq parsing
1199         - rewrote the directory handling to avoid seekdir (added dir.c)
1200         - added uid=65535 check (thanks to grant@gear.torque.net)
1201         - enhanced transfer_file() to add header (used in readbraw)
1202         - reply_special bugfix from ferret@pc8871.seqeb.gov.au
1203         - added HAVE_PATHCONF
1204         - RiscIX patches from Jim Barry <jim@ilp.com> and 
1205         Charles Gay-Jones <charlie@ilp.com> 
1206         - CLIX patches from ttj@sknsws61.sjo.statkart.no
1207         - fixed aix lpq parser from kvintus@acd.com
1208         - added substitutions to "include="
1209         - M88K_S3 patches from tonyb@plaza.ds.adp.com (Tony D. Birnseth)
1210         - fixed mangled stack problem
1211         - added code to handle broken readdir() setups on solaris
1212         - initgroups() fix from jarit@to.icl.fi
1213         - dgux dfree fix from listwork@cloud9.net
1214         - dnix support from Peter Olsson <pol@leissner.se>
1215         - getgrgid() patch from tpg@bailey.com (Tom Gall)
1216         - Makefile patch from obrien@Sea.Legent.com (David O'Brien)
1217         - password changing fixes from Dirk.DeWachter@rug.ac.be
1218         - minor man page updates
1219         - tried to enhance the read prediction code a little bit
1220
1221 1.9.04: 16/3/95
1222         - a bit better handling of global include lists
1223         - fixed GSTRING bug in loadparm.c (affected "socket options =")
1224         - fixed broken lpq parsing code (recent bug). 
1225         Thanks to Dirk.DeWachter@rug.ac.be
1226
1227 1.9.05: 20/3/95
1228         - improved mget in client to take multiple arguments and default
1229         to *.*
1230         - socket option fixes for both nmbd and smbd
1231         - changed the byteorder handling scheme to be more portable (and
1232         faster)
1233         - lint cleanups from kast@kcs.planet.net (Robert Kast)
1234         - added crude segv, sigbus and sighup recovery to nmbd
1235         - rewrote lanman2_match to be closer to NT and WfWg behaviour
1236         - Cray support from velo@sesun3.epfl.ch (Martin Ouwehand)
1237         - "admin users" patch from Tim Leamy <tcleamy@ucdavis.edu>
1238         - released alpha1
1239         - added samba.7 man page
1240         - no chdir when doing non AS_USER protocols
1241         - become_guest() returns true in trapdoor uid system
1242         - added more sophisticated segv/sigbus reporting (Linux only)
1243         - released alpha2
1244         - minor code cleanups (output of -Wall)
1245         - smbprint fix from James Dryfoos <dryfoos@ll.mit.edu>
1246         - improved testparm a little
1247         - updated INSTALL.txt a little
1248
1249
1250 1.9.06: 21/3/95
1251         - added %S substitution to users, valid users and invalid
1252         users. This is useful for [homes].
1253         - split off printing routines into printing.c and more dir
1254         commands into dir.c
1255         - postexec patch from jpm@gin.Mens.DE (Jan-Piet Mens)
1256         - smbstatus updates from jpm@gin.Mens.DE (Jan-Piet Mens)
1257         - reload sighup after use       
1258         - fixed name ptr offset bug
1259         - added %f in print commands 
1260         - fixed byte ordering in nmbd which caused browsing to fail in
1261         1.9.05
1262
1263 1.9.07: 22/3/95
1264         - important directory listing fix
1265         - allowed path= in [homes] section
1266         - printer status patches from Dirk.DeWachter@rug.ac.be
1267
1268 1.9.08: 24/3/95
1269         - fixed . and .. in root dir for lanman2
1270         - better default comment in [homes]
1271         - added time stamping to directory entries
1272         - check directory access at connection time     
1273         - rlimit code from loebach@homer.atria.com (Thomas M. Loebach)
1274         - fixed home dir default comment
1275         - totally rewrote dptr handling to overcome a persistant bug
1276         - added [globals] as well as [global]
1277
1278 1.9.09: 30/3/95
1279         - fixed static string bug in nmbd
1280         - better null password handling
1281         - split CFLAGS in Makefile
1282         - fixed typo in smbclient messaging
1283         - made home dir not inherit path from [global]
1284         - standard input printing patch from xiao@ic.ac.uk
1285         - added O_CREAT to all print opens (bug in Win95)
1286         - use /proc for process_exists under Linux and solaris
1287         - fixed another segv problem in readbraw
1288         - fixed volume label problem
1289         - lots of changes to try and support the NT1 protocol
1290         - released alpha1
1291         - fixed session setup bug with NT in NT1 protocol
1292         - released alpha2
1293         - fixed "get" bug in smbclient that affected NT3.5
1294         - added SO_KEEPALIVE as a default socket option in smbd
1295         - changed some error codes to match those that NT 3.5 produces
1296         - updated trans2 with some new calls for Win95 and WinNT (better
1297         long file support)
1298         - released alpha3
1299         - fixed "nmbd -D -b" timeouts
1300         - added IS_LONG_NAME flag to getattr in NT1
1301         - added the NT qfileinfo trans2 commands
1302         - merged qpathinfo with qfileinfo
1303         - changed idling technique to try and be more friendly to
1304         clients
1305         - merged setfileinfo with setpathinfo and updated them with the NT fns
1306         - improved read prediction a lot
1307         - added read prediction to readbraw
1308         - improved fault reporting (last packet dump)
1309
1310 1.9.10: 30/3/95
1311         - fixed read prediction+readbraw bug for read/write files
1312
1313 1.9.11: 9/4/95
1314         - fixed trans2 qpathinfo bug
1315         - fixed bug with % in service name when doing print queue requests
1316         - default readsize now 16K
1317         - minor read prediction changes
1318         - fixed status initialisation in print queue reporting
1319         - fixed const compile problem for hpux
1320         - minor SMBread fix from Volker Lendecke <lendecke@namu01.gwdg.de>
1321         - removed space after -P in print commands (for fussy systems)
1322         - disabled level2 of setfilepathinfo
1323         - changed to a single read dir model, saving all dir names in
1324         the Dir structure
1325         - disabled NT protocols in the client due to reported problems
1326         - fixed QUERY_FS_VOLUME_INFO which caused Win95 to hang on drive
1327         properties
1328         - minor lseek bug fix
1329         - fixed up keepalives
1330         - new timezone handling code (hopefully better!) 
1331         from steve@qv3pluto.LeidenUniv.nl
1332         - BSDI interface patch from jrb@csi.compuserve.com
1333         - gettimeofday changes from Roger Binns <rogerb@x.co.uk>
1334         - added smbrun option
1335         - added "root preexec" and "root postexec" options
1336
1337 1.9.12: 12/4/95
1338         - hopefully fixed some recently introduced NT problems
1339         - fixed a unlink error code problem
1340         - minor testparm fix
1341         - fixed silly error messages about comments in config files
1342         - added "valid chars" option for other languages
1343
1344 1.9.13: 28/4/95
1345         - patches from David O'Brien (obrien@Sea.Legent.com) improving the
1346         netgroup suport, and adding the "map archive" option, as well as
1347         other minor cleanups.
1348         - tried to add info level 3 and 4 support for OS/2
1349         - default deadtime set to 0 as in docs
1350         - cleaned up the trans2 code a little
1351         - cleaned up the Makefile a little
1352         - added charset.c and charset.h 
1353         - expanded "valid chars" option to handle case mapping
1354         - lots of changes to try and get timezones right
1355         - released alpha1
1356         - win95 fixups
1357         - released alpha2
1358         - added %H substitution (gives home directory)
1359         - nameserv.c cleanups and minor bug fixes
1360         - redid the browse hook logic 
1361         - fixed daylight saving time offset for logfile messages
1362         - added name cacheing to nmbd
1363         - added send counts to node status in nmbd
1364         - added STRICT_TIMEZONES compile time option (very computationally
1365         expensive)
1366         - removed the partial read code
1367         - cleaned up the permission checking a lot
1368         - added share modes (DENY_READ, DENY_WRITE, DENY_ALL, DENY_NONE,
1369         DENY_FCB and DENY_DOS)
1370         - added "share modes" option
1371         - cleaned up the file open calls
1372         - released alpha4
1373         - fixed important one line bug in open_file()
1374         - trans2 client fix from lendecke@namu01.gwdg.de
1375         - netgroup patche from David O'Brien (obrien@Sea.Legent.com)
1376         - case sensitive fix from lenneis@statrix2.wu-wien.ac.at (Joerg Lenneis)
1377         - got long filenames working from Win95 dos prompt
1378         - added "workgroup=" option
1379         - added "username map" option including multiple maps, group maps etc
1380         - fixed password server for NT1 protocol and made it more robust
1381         - changed unix_mode() to add IWUSR to read-only directories. This
1382         is much closer to what clients expect.
1383         - added preservation of unused permission bits when a chmod() is
1384         called from a client.
1385         - made static those fns that could be
1386         - fixed typo in access.c (thanks to  Andrew J Cole
1387         <A.J.Cole@cbl.leeds.ac.uk>)
1388         - added %d substitution for process id 
1389         (thanks to lenneis@statrix2.wu-wien.ac.at (Joerg Lenneis))
1390         - changed share error code to ERRbadshare
1391         - added locked files list to smbstatus if share modes is enabled
1392         - changed DENY_DOS to allow read by other tasks
1393         - added shared_pending checks to server
1394         - preserverd all possible permission bits during a chmod, and
1395         fixed a trans2 chmod bug
1396         - open /dev/null to use up first 3 fds, in an attempt to stop rogue
1397         library routines from causing havoc
1398         - fixed NT username problem when in server security
1399         - added "force user" and "force group" options
1400         - cleaned up some of the IPC calls a bit
1401         - added writeraw to the client and cleaned up write raw in the server
1402         - osf1 big-crypt bugfix from Udo Linauer <ul@eacpc4.tuwien.ac.at>
1403         - hopefully better disk-full checking
1404         - next uid bugfix from patrick@graphics.cornell.edu
1405         - changed share modes so lock directory doesn't need to be world 
1406         writeable
1407         - enabled write-raw by default
1408         - added server_info() in client
1409         - added level checks in some ipc calls
1410         - added defines for the important timeouts in local.h
1411         - added print queue deletion to smbclient (untested)
1412         - removed the sysconf() calls
1413         - optimised writebraw a bit
1414         - fixed some file deletion problems
1415         - added total_data check for extended attribs in trans2 (for OS/2)
1416         - fixed broadcast reply bug in nmbd
1417         - added careful core dumping code
1418         - added faster password level searches (suggestion 
1419         by lydick@cvpsun104.csc.ti.com (Dan Lydick))
1420
1421
1422 1.9.14: 22/9/95
1423         - fixed up level 3 and 4 trans2 requests for OS/2
1424         - minor optimisations in a few places
1425         - cleaned up the closing of low fds a bit
1426         - added SO_REUSEADDR to socket as a daemon
1427         - override aDIR bit for directories in dos_chmod()
1428         - SGI5 fixes from ymd@biosym.com (Yuri Diomin)
1429         - bsize sanity check and removed sunos force to 1k
1430         - force the create mode to be at least 0700
1431         - SCO and freebsd include changes from Peter Olsson
1432         <pol@leissner.se>
1433         - check with FQDN in access.c (thanks to Arne Ansper <arne@ioc.ee>)
1434         - default broadcast for dnix from Peter Olsson <pol@leissner.se>
1435         - solaris patches from Ronald Guilmette <rfg@segfault.us.com>
1436         - added EXDEV handling
1437         - small AFS Makefile patch from mgrlhc@nextwork.rose-hulman.edu
1438         - hopefully fixed the Win95 dates to work in other than my
1439         timezone
1440         - attempted alignment fixups (to speed up memcpy)
1441         - added some DCE/DFS support (thanks to Jim Doyle <doyle@oec.com>)
1442         - added fix so that root doesn't have special privilages to open
1443         readonly files for writing (but admin users do). This fixes the MS
1444         office install problem.
1445         - fixed trans2 response bug in client
1446         - got dual names working for NT
1447         - enabled lock_and_read in NT protocol
1448         - added %L macro for "local machine"
1449         - changed dfree reporting to use "sectors per unit"
1450         - fixed "not enough memory" bug in MS print manger by limiting
1451         share name length in share enum.
1452         - "short preserve case" option from Rabin Ezra (rabin@acm.org)
1453         - added archive option to client
1454         - changed openX in client to be able to open hidden and system files
1455         - added "sync always" option
1456         - rewrote writebmpx and readbmpx
1457         - added auto string_sub_basic to all loadparm strings
1458         - lots of nmbd fixups (add registration, refresh etc)
1459         - released alpha1
1460         - added smbtar patches from Ricky Poulten (poultenr@logica.co.uk)
1461         - added a lpq cache and the "lpq cache time" option
1462         - released alpha 2
1463         - sun includes fix from Kimmo Suominen <kim@deshaw.com>
1464         - change nmbd -L lookup type to workstation from server
1465         - added min print space option
1466         - added user and group names to smbstatus (thanks to 
1467         davide.migliavacca@inferentia.it)
1468         - fixed %f in print command bug (thanks to huver@amgraf.com)
1469         - added wildcard support to SMBmv
1470         - misc patches from David Elm (delm@hookup.net)
1471         - changed default of "share modes" to yes
1472         - changed default of "status" to yes
1473         - aix qconfig parsing from Jean-Pierre.Boulard@univ-rennes1.fr
1474         - more long_date fixups
1475         - added wildcards to nmbd
1476         - extensive changes to ipc.c and miscellaneous other changes 
1477         from ad@papyrus.hamburg.com (Andreas Degert). Should especially
1478         help OS/2 users
1479         - added name release to nmbd
1480         - relesed alpha4
1481         - fixed "SOLARIS" to SUNOS5 in Makefile
1482         - several minor fixups to get it to compile on aix, osf1, ultrix,
1483         solaris and sunos
1484         - released alpha5       
1485         - minor bug fixes and cleanups in ipc.c
1486         - fixed "only user" bug
1487         - changed lpq to report guest queue entries as sesssetup_user to
1488         allow for deletion by windows
1489         - released alpha6
1490         - added __SAMBA__ as type 0 in nmbd (was type 20)
1491         - fixed null print job bug
1492         - added 8 char warnings to testparm and smbclient
1493         - changed to 8 char limit for names in pcap.c
1494         - added linked list of config files to detect all date changes
1495         that require a reload
1496         - simplified pcap guessing heuristics
1497         - added space trimming to the name mapping
1498         - updated Get_Pwnam to add allow_change field for username mapping
1499         - fixed MemMove bug (thanks to mass@tanner.com (Massimo
1500         Sivilotti))
1501         - released alpha7
1502         - rewrote MemMove to be a little more efficient
1503         - ipc va_arg bug fix from djg@tas.com (Dave Gesswein)
1504         - added check for illegal chars in long filenames
1505         - fixed name cache init bug in nmbd
1506         - Convex patches from Victor Balashov <balashov@cv.jinr.dubna.su>
1507         - timestring() bugfix from staale@spacetec.no
1508         - changed %H to give path of forced user if one is set
1509         - added quoting to smbclient to allow spaces in filenames
1510         - convex and other patches from Ulrich Hahn
1511         <ulrich.hahn@zdv.uni-tuebingen.de>
1512         - released alpha8
1513         - fixed rename directory bug
1514         - nmbd wins fix from Maximilian Errath <errath@balu.kfunigraz.ac.at>
1515         - client and AFS changes + password.c reorganisation + "more" and
1516         "pwd" commands in client from Todd j. Derr (tjd@smi.med.pitt.edu)
1517         - fixed several nmbd bugs
1518         - released alpha9
1519         - fixed another "cd" bug in smbclient
1520         - password encryption from Jeremy Allison
1521         - added "passwd chat" option and chat interpretation code
1522         - added "smb passwd file" option
1523         - released alpha10
1524         - cleaned up chgpasswd.c a little
1525         - portability changes to the encryption handling code
1526         - added password encryption to smbclient
1527         - fixed a share level security encryption bug
1528         - added "ENCRYPTION.txt" document
1529         - released alpha11
1530         - added code to detect a password server loop
1531         - fixed typo in chkpath in client.c that broken cd (again)
1532         - LINUX_BIGCRYPT from marsj@ida.liu.se
1533         - AFS password fixup from jbushey@primenet.com (Jeffrey G. Bushey)
1534         - iso/8859-1 charcnv patches from Dan.Oscarsson@malmo.trab.se
1535         - strtok/user_in_list fix from roderich@nodebonn.muc.bmw.de
1536         - NETGROUP patches from J.W.Schilperoort@research.ptt.nl
1537         - trim_string patch from J.W.Schilperoort@research.ptt.nl
1538         - fixed problem with files with no extension getting mixed up
1539         - ipc bugfix for print job deletion from Rainer Leberle <rleberle@auspex.de>
1540         - released alpha12
1541         - pwlen fix in NETGROUP from Andrew J Cole <A.J.Cole@cbl.leeds.ac.uk>
1542         - lots of uid and encryption changes from Jeremy Allison. WinDD
1543         should now work.
1544         - released alpha13
1545         - fixed max_xmit bug in client
1546         - select fix in server (fixed critical drive errors under ISC)
1547         - released alpha14
1548         - wildcard fix from Jeremy
1549         - changes to make IPC code more robust
1550         - small select loop change to reduce cleaning of share files
1551         - vtp, altos and mktime patches from Christian A. Lademann
1552         <cal@zls.com>
1553         - EEXIST bugfix in server.c
1554         - changed mangled map to apply in all cases
1555         - released alpha15
1556         - fixed fcb open permissions (should mean apps know when a file is
1557         read only)
1558         - released alpha16
1559         - client help formatting fix and docs fix from Peter Jones
1560         <thanatos@drealm.org>
1561         - added a directory cache
1562         - use /proc whenever possible for pid detection
1563         - TCSANOW fix in getsmbpasswd from roderich@nodebonn.muc.bmw.de
1564         - fixed default printing mode for sysv systems
1565         - make client always expand mask
1566         - more minor IPC fixups
1567         - pyramid makefile entry from jeffrey@itm.org
1568         - client fixups for passlen, maxvcs and session redirect from
1569         Charles Hoch <hoch@hplcgh.hpl.hp.com>
1570         - finally fixed important IPC bug (varargs bug with int16)
1571         - quota patches from Dirk.DeWachter@rug.ac.be
1572         - print queue cache changes (per service) and print queue priority
1573         additions from Dirk.DeWachter@rug.ac.be
1574         - new japanese patches (incomplete) from 
1575         fujita@ainix.isac.co.jp (Takashi Fujita)
1576         - moved a lot more functions into system.c via wrappers
1577         - changed a lot of the connection refused error codes to be more
1578         informative (or at least different)
1579         - released alpha17
1580         - changed error return code from cannor chdir() in make_connection
1581         - fixed realloc() bug in printing.c
1582         - fixed invalid username bug in sesssetupX
1583         - released alpha18
1584         - made default service change name to asked for service (idea
1585         from Ian McEwan <ijm@doc.ic.ac.uk>)
1586         - fixed "guest only" bug
1587         - sambatar patches from Ricky
1588         - printing.c patches from Dirk.DeWachter@rug.ac.be
1589         - rewrote become_user()
1590         - sunos5 patch from Niels.Baggesen@uni-c.dk
1591         - more japanese extensions patches from fujita@ainix.isac.co.jp 
1592         - released alpha20
1593         - added force_user to conn struct
1594
1595
1596 1.9.15: 14/11/95
1597         - removed bcast override from workgroup announce in nmbd
1598         - aix patch, added NO_SYSMOUNTH, from 
1599         lionel leston <102624.346@compuserve.com>       
1600         - quick fix in lp_string() to try and stop some core dumps
1601         - added uid cache in connections structure 
1602         to make user level security faster
1603         - changed dos_mode() to show read-only on read-only shares only if
1604         user w bit not set
1605         - added check to stop exit_server() looping
1606         - core dump fix in string_sub()
1607         - fix client bug for long dirs in NT1 mode. 
1608         Thanks to Erwin Authried (erwin@ws1.atv.tuwien.ac.at)
1609         - switched to a safer (but probably slower) readbraw implementation
1610         - released p1
1611         - readbraw fix from Stefaan.Eeckels@eunet.lu
1612         - fixed groups bug when user is in 1 group
1613         - fixed NT1 dir bug
1614         - changed default protocol in client to NT1
1615         - changed trans2 to not return both names in long listing if long
1616         name is 8.3
1617         - made stat of "" return RONLY if not writeable drive
1618         - wrapped strcpy() to stop nulls propogating (hack)
1619         - made rename and unlink look at share locks on file
1620         - clitar memory leak fix from jjm@jjm.com
1621         - added -p option to smbstatus to list smbd processes
1622         - added rename to the client
1623         - released p2
1624         - fixed SMBmv for case where the destination exists
1625         - man page patch from michal@ellpspace.math.ualberta.ca (Michal Jaegermann)
1626         - once again redid the time handling, but finally explained what
1627         is going on, this is written up in TIME.txt. The "kludge-GMT" used
1628         by NT is a bastard and led to a lot of the confusion
1629         - kanji patch from fujita@ainix.isac.co.jp (Takashi Fujita)
1630         - is08859-1 patches from eauth@mail.cso.co.at
1631         - starting rewriting nmbd, new nmbd is nmbd2, old one still around
1632         for time being
1633         - released p3
1634         - rewrote more of nmbd2 to use new structures
1635         - CLIX patches from Jason.J.Faultless@bechtel.btx400.co.uk
1636         - DirCacheFlush() bugfix from Michael Joosten
1637         <joost@ori.cadlab.de>. This bug explains a lot of the crashes.
1638         - fixed a bug in ChDir() that caused reversion to / in some
1639         situations
1640         - ipc fix from Magnus Hyllander <mhy@os.se>
1641         - released p4
1642         - smbpasswd fix from Jeremy
1643         - compilation fixes from Magnus Hyllander <mhy@os.se>
1644         - added NetServerEnum to ipc.c (needed for master browser stuff)
1645         - Makefile fix from Gunther Mayer <gmayer@physik.uni-kl.de>
1646         - cleanups for clean compile on several OSes
1647         - added browse mastering code
1648         - started integration with smb.conf for nmbd2
1649         - released p5
1650         - fixed death_time (should be t+ttl*3)
1651         - fixed non-removal of dead servers
1652         - added smbstatus -u patch from oskarh@spornet.is (Oskar Hannesson)
1653         - NETGROUP fix from J.W.Schilperoort@research.kpn.com
1654         - select and NO_SETGROUPS patches from lennylim@netcom.com (Lenny
1655         Lim)
1656         - added LINKS_READ_ONLY define in dos_mode() for LM/X
1657         compatability
1658         - "dir a.c" bug fixed thanks to roderich@nodebonn.muc.bmw.de 
1659         (Roderich Schupp)
1660         - job cancel fix in client from peo@mtek.chalmers.se
1661         - changed nmbd2 to nmbd 
1662         - fixed "dir a*" under trans2 lookups
1663         - added StrnCaseCmp()
1664         - updated docs a bit for new browsing stuff
1665         - updated INSTALL.txt
1666         - hopefully fixed server level security with WfWg
1667
1668 1.9.15 (patches):
1669         - major/minor fix for solaris from Jeroen Schipper 
1670         <Jeroen.Schipper@let.ruu.nl>
1671         - fixed critical bug in directory listings
1672         - released p1
1673         - fixed one of the causes of "out of memory" while browsing
1674         - fixed manpage install script (Paul Blackman)
1675         - added DNS failures to name cache
1676         - fixed writebmpx bug (affects OS/2)
1677         - misc OS/2 fixes, mostly for EA handling
1678         - added SMBcopy
1679         - added "max ttl" option
1680         - arch detection patch from Bas Laarhoven <bas@vimec.nl>
1681         - released p2
1682         - another OS/2 fix - the level 4 getpathinfo for EAs
1683         - added "alternate permissions" option
1684         - changed client to parse destination names into name + domain
1685         - fixed problem with PrimaryGroup and lmhosts loading
1686         - added domain master ability to nmbd
1687         - added "domain master" option
1688         - added "domain controller" option and code
1689         - pwd fix to client from Erik Devriendt (de@te6.siemens.be)
1690         - fixed problem in smbmv that led to ar not working in mks
1691         - added transs2
1692         - released p3
1693         - updated email addresses
1694         - fix for innetgr from Olaf Seibert (rhialto@polder.ubc.kun.nl)
1695         - client translate fix from bandc@dircon.co.uk
1696         - netbsd bcast fix from from Olaf Seibert (rhialto@polder.ubc.kun.nl)
1697         - syslog code from Alex Nash <alex@fa.tca.com>
1698         - strip dot fix from Arne Ansper <arne@ioc.ee>
1699         - added addtosmbpass + man page from 
1700         michal@ellpspace.math.ualberta.ca (Michal Jaegermann)
1701         - pcap fix for AIX from Jon Christiansen <jchristi@sctcorp.com>
1702         - fixed servertype bug in remote announcements
1703         - fixed up illegal name checks (should also be faster)
1704         - kanji patches from fujita@ainix.isac.co.jp (Takashi Fujita)
1705         - fixed bug handling non-encrypted passwords
1706         - released p4
1707         - fixed makefile for addtosmbpass
1708         - DCE/DFS fixes from John Brezak (brezak@ch.hp.com)
1709         - client patch for partial command matching from Andrew Wiseman 
1710         <bandc@dircon.co.uk>
1711         - made is_8_3() handle full paths
1712         - rewrote open_file_shared() with help from Charles Hoch 
1713         <hoch@hplcgh.hpl.hp.com>
1714         - changed syslog to handle interactive programs
1715         - fixed syslog problem with full path in argv[0]
1716         - illegal name fixup for kanji from fujita@ainix.isac.co.jp
1717         - fixed server level security to allow fallback to encryption
1718         - changed reply_read() and reply_lockread() to ignore clients 
1719         smb_bufsize in order to handle broken lanman clients
1720         - fixed NT wildcard problem with old style programs
1721         - man page patches from "John M. Sellens" 
1722         <jmsellen@watdragon.uwaterloo.ca>
1723         - partially documented the "character set" option
1724         - changed default for MAXDIR to 64
1725         - changed default DPTR idle time to 120
1726         - released p5
1727         - QNX patches from eldo@invisa.satlink.net (Eldo Loguzzo)       
1728         - made nmbd use the "max log size" option and changed log handling
1729         code a bit
1730         - sunos patches, remote protocol (%R) addition and arch detection
1731         changes to stop compiler warning from Timothy Hunt <tim@fsg.com>
1732         - fixed become_user() bug that led to incorrect permissions in
1733         some situations.
1734         - released p6   
1735         - is_8_3() fix from Charles Hoch <hoch@hplcgh.hpl.hp.com>
1736         - nmblib bugfix from gmk@mhcnet.att.com (George Kull)
1737         - aix pcap fix from Jon Christiansen <jchristi@sctcorp.com>
1738         - added explicit sig_pipe() in server.c
1739         - added domain logins option (not fully implemented)
1740         - added HAVE_GMTOFF code
1741         - got rid of PM_MAXLINE 
1742         - minor client fix from goggi@eflir (GarĂ°ar Georg Nielsen)
1743         - added SIGCLD_IGNORE for HPUX (from Tor Lillqvist 
1744         <tml@hemuli.tte.vtt.fi>)        
1745         - OSF/1 lpq patch from scooter@GENE.COM (Scooter Morris)
1746         - NeXT patches from pmarcos@next.com (Paul Marcos)
1747         - dstdiff patch to stop infinite loop from Erwin Authried (eauth@cso.co.at)
1748         - password server option can now take a list of password servers
1749         - patches to let samba run on OS/2 from Jason Rumney <jasonr@pec.co.nz>
1750         - added domain logon and logon script suport
1751         - SCO openserver 5 patches from Scott Michel <scottm@intime.intime.com>
1752         - Makefile changes from Marty Leisner <leisner@sdsp.mc.xerox.com>
1753         - chgpasswd changes from Roman Dumych <roman@nyxis.unibase.com>
1754         for SVR4
1755         - GUEST_SESSSETUP change from David.Chappell@mail.cc.trincoll.edu
1756         - released p7
1757         - moved SO_REUSEADDR before bind() (thanks to Thomas Bellman 
1758         <tbe@ivab.se>)
1759         - added more flexible GUEST_SESSSETUP to local.h and restored
1760         pre-p7 behaviour as default
1761         - released p8
1762
1763 1.9.16: 
1764         - Makefile fix from Marty Leisner <leisner@sdsp.mc.xerox.com>
1765         - added %g and %G substitutions
1766         - changed IDLE_CLOSED_TIMEOUT to 60 
1767         - fixed the "admin user" status in domain logons
1768         - hpux 10 "trusted security" patches from David-Michael Lincke
1769         (dlincke@sgcl1.unisg.ch)
1770         - added nmb lookups to client from Adrian Hill <Adrian.Hill@softimage.co.uk>
1771         - svr4 pause/resume printing patch from Brendan O'Dea (bod@tyndall.com.au)
1772         - fixed master announcement thanks to Luke Leighton <rah14@dial.pipex.com>
1773         - changed srcdir usage in Makefile to be friendly to more systems
1774         - NT4 alignment patches from Jeremy Allison (jra@vantive.com)
1775         - updated share mode code for new spec
1776         - minor client bugfix (for smbclient '\\\')
1777         - fix for level 260 when magling disabled. From Martin Tomes
1778         <Martin.Tomes@ecl.etherm.co.uk>
1779         - SMBtranss2 fix for OS/2 from Jeremy Allison
1780         - profiles fixup from Timm Wetzel <twetzel@cage.mpibpc.gwdg.de>
1781         - man page updates from Dirk.DeWachter@rug.ac.be
1782         - nmbsync fix from Andy Whitcroft <andy@soi.city.ac.uk>
1783         - Lynx patches from Manfred Woelfel <woelfel@hpesco1.fzk.de>
1784         - new smbtar stuff from Ricky
1785         - changed to share mode DENY_NONE for tar
1786         - fixed -D option of smbclient when in tar mode
1787         - added aARCH to open modes
1788         - added code to cope with select/read errors
1789         - fixed blank browse entries after smb.conf reread
1790         - integrated new browse stuff from Luke into ipc.c
1791         - added workgroup list to smbclient -L
1792         - improved archive attribute handling in close_file() and
1793         write_file()
1794         - smbtar fixes from Martin.Kraemer@mch.sni.de
1795         - Linux quota patch from xeno@mix.hsv.no
1796         - try to work around NT passlen2 problem in session setup
1797         - released alpha1
1798
1799 NOTE: From now on the cvs.log file will be used to give a complete log of
1800 changes to samba. This change-log is now obsolete.
1801         
1802         
1803 ==========
1804 todo:
1805
1806
1807 64 bit longs and IP addresses may give problems with unsigned longs?
1808         
1809 set archive bit whenever file is modified??
1810         
1811 fix man page dates
1812
1813 reply only to own workgroup in server enum
1814         
1815 patch to compile with g++ and possibly solaris c++
1816         
1817 nmbd needs to keep browse list uptodate by talking to the master if it loses
1818 an election as others may still think its a valid backup and use it to get
1819 lists. 
1820         
1821 leftover lock files can end up belonging to non-smbd processes after a reboot.
1822         
1823 hosts allow in nmbd
1824
1825 hosts allow cache
1826
1827 add password command in smbclient
1828
1829 drag long filename to samba under os/2 gives short name
1830
1831 document max ttl option
1832
1833 dup/close 0 for getopt?
1834
1835 implement SMBmove  ??
1836
1837 add option to print more info about locked files (full path, share name
1838 etc)
1839
1840 very slow listing CD, perhaps because of order of stat and readdir or add 
1841 masking to opendir?
1842
1843 protocol drop back in client to avoid openX etc.
1844
1845 handle exported fat drives to a long filename capable client
1846
1847 add check for existance of lpq commands etc (use stat?)
1848
1849 get rid of the silly +4 and -4 by removing NBT stuff
1850
1851 write-only shares
1852
1853 document cnvchar stuff
1854
1855 allow smbd to serve user and group lists to win95
1856
1857 document homes behaviour with WinDD
1858
1859 add "hide file = *.o" "hide dir = .Foo*" "show file = xx*" type options.
1860
1861 ALLOW_PASSWORD_CHANGE only compiles/works on some systems
1862
1863 weird foooooooo/open.exe bug on NT
1864
1865 %a detection can't detect Win95 versus WinNT
1866
1867 reverse mangled maps, so (*.html *.htm) works for new files.
1868
1869 install problems with w95. could be some sort of race?
1870
1871 more efficient Files[] structure to handle thousands of open files
1872         
1873 lpd stuff:
1874         Tony Aiuto (tony@ics.com)
1875
1876 make max disk size local
1877