Change Log for netbios for unix sofware.

Unless otherwise attributed, all changes were made by Andrew Tridgell


1.5.00	announced to mailing list

1.5.01 1/12/93
	- configuration through makefile only
	- fixed silly bug that made the client not accept dir's from 
	the server
	- tested and updated include files for ultrix, aix and solaris
	- several things fixed thanks to pierson@ketje.enet.dec.com
	who provided invaluable help and advice.

1.5.02 1/12/93
	- added username option to services file so connection
	as non guest from lanmanager is possible
	- made server abort when it can't read/write on a socket
	- added logging to client

1.5.03 2/12/93
	- printing now works
	- fixed a minor bug to do with hidden and system attributes
	
1.5.04 2/12/93
	- added reduce_name() call to fill in security hole.
	- cleanup up debug stuff a little

1.5.05 2/12/93
	- fixed bug in reduce_name that affects services with base paths
	that have a soft link in them.

1.5.06 3/12/93
	- used the reserved server field in the search status to hold the 
	directory pointer. This allows lots of directories to be open
	at once by clients without stuffing things up.
	- preserved all the client reserved bytes in the search status
	in case they actually use them. Hopefully this will fix the annoying
	empty directory dir bug. (it does)
	
1.5.07 3/12/93
	- fixed silly bug that caused volume ids to appear twice
	- fixed a wrote-too-few bug in smb_send()

1.5.08 3/12/93
	- did the SMBsearch properly. It can now handle recursive searches.
	In order to keep the required dir info I encode the dirptr and
	the current dir offset (from telldir) into 5 bytes by using a table
	on the last 7 bits of the first byte. The first bit is always on
	as this byte must by != 0
	This is all put in the "server reserved" search field.

1.5.09 5/12/93
	- added a prototype nameserver. It's broken but can at least interpret
	incoming packets.
	- minor fixes to the server and client


1.5.10 5/12/93
	- fixed silly unsigned/signed char bug that made dosshell noot see all files
	- added nmbserver to Makefile

1.5.11 6/12/93
	- made the volume label appear as the service name, rather than "Remote"
	- made the nmbserver actually work (a little) for lanman for dos

1.5.12 7/12/93
	- fixed broadcasting in the nameserver
	- the smbserver now correctly sets the pid and uid
	- nmbserver now seems to work enough to satisfy the MS client.


1.5.13 7/12/93
	- fixed a silly bug that truncated filenames
	- added -B option to nameserver to specify bcast address
	- added -R option to nameserver to prevent name registering
	- fixed minor read() bug. Does this fix the "cmp" bug?

1.5.14 8/12/93
	- fixed a bug in send_login() in the client. Thanks to 
	tim.hudson@gslmail.mincom.oz.au for pointing this out.
	- changed name_mangle() to pad to minimum of 32 bytes with spaces
	- changed the returned buffer size in reply_connect() to not
	count the 4 byte length field. This fixes the "can execute" bug
	and the "comp" bug
	- once again re-wrote the directory pointer handling code.
	now "tree" works correctly

1.5.15 9/12/93
	- fixed name mangle bug introduced in 1.5.14 which stopped
	nameserver from working

1.5.16 9/12/93
	- arrgh. another silly bug in name_mangle() causes the client to die.


1.5.17 13/12/93
	- some cosmetic cleanups to the code
	- changed make_connection not to lower case the password (thanks
	to bryan@alex.com)
	- fixed accept() bug not initialising in_addrlen (thanks to
	bogstad@cs.jhu.edu)
	- fixed cd bug in client.c (thanks to joergs@toppoint.de)
	- lots of fixes to the nameserver to read_socket and
	associated routines. It should now correctly reply to the originating
	address and use the correct broadcast. 
	(thanks to troyer@saifr00.ateng.az.honeywell.com)
	- SVR4 patches from mark@scot1.ucsalf.ac.uk
	- changed the default BUFFER_SIZE to 0xFFFF

1.5.18 15/12/93
	- minor fix to reply_printqueue() to zero data buffer array.
	- added print command to client.
	- fixed minor bug in cmd_put() in client where a handle could
	be closed without being previously opened.
	- minor cleanups to the client
	- minor solaris fixes from lonnie@itg.ti.com
	- SYSV, shadow password  and dfree() fixes from mark@scot1.ucsalf.ac.uk
	- fixed reply_delete() to not delete read-only files
	- fixed infinite loop in reply_delete on "del ." 
	Thanks to mark@scot1.ucsalf.ac.uk for pointing this out.
	- posix mode definitions and changes from mark@scot1.ucsalf.ac.uk


1.5.19 18/12/93
	- another very minor fix to dfree().
	- minor change to SVR4 makefile entry from rossw@march.co.uk
	- changed reply_open not to open directories, this fixes the 
	"copy .." bug pointed out by mark@scot1.ucsalf.ac.uk
	- changed dos_mode() so it doesn't return hidden and system info
	on directories.
	- changed get_dir_entry() not to descend into proc/self under linux
	control this with the DONT_DESCEND define in includes.h
	- changed smb_setlen() to add in the SMB id. (thanks 
	to troyer@saifr00.ateng.az.honeywell.com)
	- fixed minor bug in reply_dir() so it won't return a ACCESS_DENIED
	when searching a directory that is unreadable
	- removed second stat() from get_dir_entry() (speed up)
	- made null searches close the dirptr (fixes big filesystem problem)
	- fixed clean_name for cd .. (from magnus@axiom.se)

	
1.5.20 28/12/93
	- added debug statement in case of SMBcreate with volid set (leefi@microsoft.com)
	- fixed a bug in dptr_close() so it sets the next_key to a better 
	value, this fixes a annoying dir bug
	- LOTS of changes from jeremy@netcom.com (Jeremy Allison). This
	makes it possible to at least connect to a NT server with the client
	and also fixes up much of the socket/process code. This also includes
	stuff for compiling on a sun386
	- got the client working with the Syntax server (a commercial
	smb server). This required a few minor changes so the xmit sizes were
	negotiated properly.
	- added support for OSF1, tested on a DEC3000/400 alpha.
	- fixed the ifconf support under ultrix

1.5.21 31/12/93
	- minor cosmetic change to reduce_name()
	- changes for HPUX from ppk@atk.tpo.fi (Pasi Kaara)
	- minor fix to nameserver
	- revamped configuration file format. It now takes a Windows-style
          (.INI style) configuration file. See the file services for
          full details of the format. New files: loadparm.c, loadparm.h,
          params.c, params.h, testparm.c. Several changes to smb.h, local.h,
          server.c, Makefile. The services structure is no longer visible 
          to the rest of the system. (Karl Auer)
        - added ability to specify a print command on a per service basis
          and globally via the configuration file. Also allows guest account
          to be specified in the configuration file. Made appropriate changes
          to server.c so that these data items are obtained from the config
          module rather than from hardcoded strings (though the hardcoded
          strings are still the source of the defaults). (Karl Auer)
        - renamed old-style configuration file to services.old (Karl Auer)
        - changed README to reflect new configuration details. (Karl Auer)
        - removed an item from the bugs wishlist (now supplied!) (Karl Auer)
        - protected smb.h against multiple compilation. (Karl Auer)
        - protected local.h against multiple compilation. (Karl Auer)
	- made config stuff do dynamic allocation
	- added "homes" capability
	- added create_mask to each service in config

1.5.22 3/1/94
	- added "root dir" option for extra security
	- added -n option to client (useful for OS/2)
	- changed operation of -n to nameserver to be more useful
	- patches from Jeremy Allison (jeremy@netcom.com)
	fixing bug in set_message(), fixing up wait3() for SYSV,
	making cd check the path in the client, allowing fetching to stdin
	in client, and enhancing prompt in client to include directory.
	- made the -D become_daemon() actually detach from the tty. This
	may need tuning for different flavors of unix.
	- added "dont descend" option to each service to prevent infinite 
	loops on recursive filesystems.
	- updated README to add "running as a daemon" and a simple
	smb.conf file.
	- HP/UX fixes from ppk@atk.tpo.fi
	- made lock calls only if opened with write enabled, as pointed out
	by gadams@ddrive.demon.co.uk

1.5.23 4/1/94
	- minor fix to logging of data in receive_smb(). It used to
	miss the last 4 bytes of packets.
	- added the pid,uid and mid fields to the negotiation phase of
	the client.
	- made client able to print from stdin
	- added password on command line for client
	- created a sample printcap input filter "smbprint"
	- several fixes to client to work with OS/2
	- added mput, mget, prompt and lcd to client

1.5.24 5/1/94
	- a resend of 1.5.23 as I managed to not include the new
	prompt, mput and mget code.

1.5.25 7/1/94
	- change -B on nameserver so it can override the broadcast address
	- minor changes to printing in client so OS/2 server can handle it.
	- fixed reply_access() where OK was not being initialised
	- added "max xmit" to global parameters.
	- changed create to open with O_RDWR instead of O_WRONLY
	- added printmode command to client
	- made help return extra help on a specified command in client
	- fixed return code in chkpath
	- added "recurse" and "lowercase" options to client
	- fixed some error codes from server
	- added -I option to client
	- fix for become_daemon() for HPUX from ppk@atk.tpo.fi
	- added "hosts allow" and "hosts deny" to server
	- added keepalives to server
	- added "access" feature to testparam
	- NetBSD patches from sreiz@aie.nl

1.5.26 8/1/94
	- changed semantics of hosts access code to do more sensible defaults
	when either of "hosts allow" or "hosts deny" is blank
	- added the SO_KEEPALIVE option to configurations of sockets in the
	server
	- made some of the SVAL fns into macros to keep fussy compilers from
	complaining
	- fixed several null pointer bugs in check_access(). These bugs
	made 1.5.25 unuseable for many people.
	- fixed null pointer reference of lp_dontdescend()
	- reload services file after each new connection. 

1.5.27 11/1/94
	- fixed opening mode for reply_open() in server
	- patches from Jeremy Allison (jeremy@netcom.com) to support the 
	"core+" protocol. The patches also inclued some other features, such
	as a new read_with_timeout() call (used by SMBreadbraw), and auto 
	detection of the need to create a socket.
	- changed the default KEEPALIVE value to 0, as it caused
	problems with Lanmanager.
	- added tar capability to client when getting files
	- altered unix_mode() to return x bits for directories
	- fixed bug in trim_string()

1.5.28 12/1/94
	- cleaned up the debug levels a little so debug level 1 is a practical
	level for general use
	- fixed a bug in add_a_service() where a freed pointer was referenced. Thanks
	to bryan@alex.com for finding the bug.
	- fixed bug in time structure handling in server and client. Thanks to 
	bryan@alex.com for pointing out the bug.

1.5.29 15/1/94
	- fixed a silly bug in reply_open(). Thanks to
	jeremy@netcom.com for pointing this out.
	- fixed debug levels in client to be more sensible
	- added raw read to client
	- added -B option to client
	- fixed several bugs in the client, mostly to do with the tar option
	- added -E option to client

1.5.30 16/1/94
	- added lots of prototypes so compilers don't complain
	- fixed minor bug in reply_rename() (thanks to ppk@atk.tpo.fi)
	- added more support for LANMAN1.0 protocol.
	- added SESSION SETUP AND X call
	- added READ AND X call
	- added TREE CONNECT AND X call
	- added support for setbuffer for HPUX (thanks to ppk@atk.tpo.fi)
