Mon Dec 23 13:35:27 1996  Jeremy Allison <jra@cygnus.com>

	* Makefile.in: Added $(srcdir)/../libstdc++/stl -I$(srcdir)/../libio
	to the include path. As mmap uses STL then this is needed
	to build the cross compiler. Also added mmap.o file.
	* cygwin.din: Added mmap, mprotect, msync, munmap.
	* dcrt0.cc: Added code to get the module pathname from
	a previously unused field in the u area so fork() calls
	don't have to search the path. Forwards compatible with 
	earlier releases as they set this field to zero.
	* fork.cc: Added call to recreate_mmaps_after_fork() in
	child code. Ensures child has same view of mmap'ed areas
	as parent.
	* libccrt0.cc: (See dcrt0.cc change). Setup the module 
	handle so fork can get the path name.
	* mmap.cc: New file. Implements mmap, mprotect, msync, munmap,
	recreate_mmaps_after_fork. Uses STL.
	* select.cc: Added code to set errno to EINVAL if select done
	on handles and sockets. Must fix this soon.
	* spawn.cc: Set new variable hmodule in u area to zero for child.
	* syscalls.cc: Added fsync functionality. No longer a dummy call.
	* winsup.h: Decremented internal_reserved array by one to add
	hmodule in u area. Added prototype for recreate_mmaps_after_fork().
	* include/sys/mman.h: Fixed include file for mmap calls.
	
Tue Dec 17 16:20:52 1996  Geoffrey Noer  <noer@cygnus.com>

	* syscalls.cc (_rename): fix code so we really do
	return -1 if _rename fails.

Tue Dec 17 12:12:29 1996  Jeremy Allison <jra@cygnus.com>

	* fhandler.cc: Added Sergeys patch for FakeReadFile.
	* cygwin.din: Re-ordered network calls.

Mon Dec 16 16:47:26 1996  Geoffrey Noer  <noer@cygnus.com>

	* configure.in: remove AC_C_CROSS (now part of AC_PROG_CC)
	* utils/configure.in: ditto
	* configure: regenerate
	* utils/configure: regenerate

Mon Dec 16 14:50:46 1996  Geoffrey Noer  <noer@cygnus.com>

	* cygwin.din: export cygwin32_getsockopt

	patch from sos@prospect.com.ru (Sergey Okhapkin):
	* spawn.cc: don't assume all scripts should be run in
	bash -- run the shell specified after the #!

Fri Dec 13 16:18:22 1996  Jeremy Allison <jra@cygnus.com>

	* path.cc: Added support for UNC paths.

Fri Dec 13 10:56:21 1996  Jeremy Allison <jra@cygnus.com>

        * cygwin.din: Added h_errno, seteuid, _seteuid.
        * exceptions.cc: Made init_exceptions extern "C".
        * exceptions.h: Added cplusplus wrappers to enable this to
        be used from C.
        * net.cc: Added error numbers, fixed gethostbyaddr, added h_errno
        fixes.
        * stubs.cc: Added seteuid.
        * include/mywinsock.h: Added HOST error entries for DNS lookups.

Tue Dec 10 15:38:46 1996  Geoffrey Noer  <noer@cygnus.com>

	* version.h: bump CYGWIN_DLL_VERSION_MINOR to 4

	patch from Marcus Daniels <marcus@sysc.pdx.edu>:
	* fhandler.cc: add fhandler_dev_null::dup (fhandler_base *child)
	* fhandler.h: add matching header

	gnu-win32 beta 17.1 release made

Thu Dec  5 14:03:08 1996  Geoffrey Noer  <noer@cygnus.com>

        * select.cc: add missing end comment at about line 933.
	gnu-win32 beta 17 release made

Wed Dec  4 15:53:11 1996  Geoffrey Noer  <noer@cygnus.com>

	* version.h: increment minor dll number in conjunction
	with gnu-win32 beta 17 release

Tue Dec  3 15:05:57 1996  Geoffrey Noer  <noer@cygnus.com>

	* strsep.cc: new file containing Berkeley-copyrighted strsep
	code previously in misc.cc.
	* misc.cc: strsep moved to strsep.cc, stop including
	unistd.h, strings.h, sys/types.h, stddef.h, and stdarg.h
	* Makefile.in: appropriate adjustments to add strsep.cc

Tue Dec  3 13:50:59 1996  Geoffrey Noer  <noer@cygnus.com>

	* include/sys/copying.dj: new file whose presence is
	required by include/sys/file.h

Tue Dec  3 13:37:27 1996  Geoffrey Noer  <noer@cygnus.com>

	Throughout all Cygnus-developped source files: put all
	code under GPL

Tue Dec  3 10:54:01 1996  Jeremy Allison <jra@cygnus.com>

	* fork.cc: Changed code to delete [] saved child_hinfo
	after allocate_pid called. Needed as child changes this
	value in the shared area when it de-linearizes fd array.
	Needed to stop race condition with earlier fix.
	* winsup.h: Changed definition of item in hinfo to be
	a char array rather than fhandler_console. Stops
	destructor being called when fork delete [] of
	hinfo array called.
	* hinfo.cc: Changes (casts) to support winsup.h changes.

Mon Dec  2 17:22:13 1996  Geoffrey Noer  <noer@cygnus.com>

	* include/utime.h: add ifdef _UTIME_U wrapper around header

Mon Dec  2 15:45:46 1996  Jeremy Allison <jra@cygnus.com>

	* fork.cc: Fixed file descriptor resource leak in parent.
	* registry.cc: Removed fatal error if registry key cannot
	be opened. Causes errors in service code.

Wed Nov 27 15:40:15 1996  Geoffrey Noer  <noer@cygnus.com>

	* cygwin.din: for MS compatibility, also export functions
	as _funcname = funcname
	* include/netdb:
	* include/sys/socket.h:
	Do the equivalent thing for functions exported as cygwin32_funcname

Wed Nov 27 15:14:30 1996  Geoffrey Noer  <noer@cygnus.com>

	* cygwin.din: remove exported helper functions that shouldn't
	need to be exported (_read et al)
	* glob/Makefile.in: add SHELL definition
	* utils/Makefile.in: add SHELL definition

Mon Nov 25 14:24:52 1996  Geoffrey Noer  <noer@cygnus.com>

	* include/commdlg.h, ddeml.h, winadvapi.h, winbase.h, wincon.h,
	windef.h, windowsx.h, winerror.h, wingdi.h, winkernel.h, winnt.h,
	wintypes.h, winuser.h, winversion.h:
	Add MS-style header files back, each of which now includes our
	windows.h.  This should allow compilation of Windows code
	that expects normal MS-named headers as long as the information
	is in our windows.h somewhere.  The appropriate wrappers have
	been added to each file so windows.h isn't included more than
	once.
	* include/windows.h: add paranoia wrapper so it can be included
	more than once.

Mon Nov 18 22:19:40 1996  Geoffrey Noer  <noer@cygnus.com>

	* Makefile.in: change rules around so new-cygwin.dll is
	only rebuilt when necessary 
	* spawn.cc: include <stdlib.h>

Mon Nov 18 21:08:15 1996  Geoffrey Noer  <noer@cygnus.com>

	* net.cc: remove extern "C"s that shouldn't be there
	(get_win95_ifconf, get_winnt_ifconf, get_if_flags)
	* syscalls.cc: remove extern "C"s from num_entries, _stat_worker
	* winsup.h: add extern "C"s for syscalls protos

Mon Nov 18 20:35:39 1996  Geoffrey Noer  <noer@cygnus.com>

	* winsup.h: include version.h
	* Makefile.in: remove dependencies involving version.h, but add
	version.h to winsup.h dependency line and also add others that
	should also be there.
	* dcrt0.cc:
	* libccrt0.cc:
	* registry.cc:
	* shared.cc: delete includes of version.h

Mon Nov 18 20:16:37 1996  Geoffrey Noer  <noer@cygnus.com>

	* stubs.c -> stubs.cc, add extern "C"s
	* uname.c -> uname.cc, add extern "C"s
	* console.cc: add extern "C"s, remove include windows.h
	since its already included in winsup.h
	* dirsearch.cc: add extern "C"s
	* fcntl.cc: add extern "C"s
	* winsup.h: remove LEAN_AND_MEAN define since that's no longer
	relevant with new windows headers, include version.h
	* malloc.cc: fix typos

Mon Nov 18 18:02:31 1996  Geoffrey Noer  <noer@cygnus.com>

	* grp.c renamed to grp.cc, add extern "C"s
	* misc.c renamed to misc.cc, add extern "C"s

Mon Nov 18 16:08:26 1996  Geoffrey Noer  <noer@cygnus.com>

	* syscalls.cc: extern "C"'d function calls
	* net.cc: extern "C"'d function calls, some respacing
	* hinfo.cc: extern "C"'d function calls, some respacing
	* syscalls.h: removed defines for MIN, errno, alloca(x),
	DEFAULT_GID/UID, NOT_OPEN_FD(fd), STD_RBITS et al,
	O_NOSYMLINK
	* winsup.h: added what was just deleted from syscalls.h

Mon Nov 18 15:56:22 1996  Jeremy Allison <jra@cygnus.com>

	* cygwin.din: Added readv
	* syscalls.cc: Added readv code.
	* syscalls.h: Added readv prototype.

Wed Nov 13 15:55:14 1996  Geoffrey Noer  <noer@cygnus.com>

	* cygwin.din: added C++-related exports for stuff in
	libgcc.a (from new.o, tinfo.o, tinfo2.o, exception.o).

Mon Nov 11 15:50:26 1996  Geoffrey Noer  <noer@cygnus.com>

	* dcrt0.cc
	* dirsearch.cc
	* malloc.cc
	* passwd.cc
	* path.cc,
	* pinfo.cc
	* syslog.cc
	* utils/kill.cc
	* utils/cygwin.cc:
	need to #include <stdlib.h> which used to be included
	automatically in windows.h included by winsup.h.
	* shared.cc: UnmapViewOfFile takes a void *, not a 
	const void *
	* malloc.cc: formatting fixes

Fri Nov  8 17:31:55 1996  Jeremy Allison <jra@cygnus.com>

	* select.cc: Added fix for HANDLE select sent by
	Sergey Okhapkin.
	* fhandler.h: Changed dup to return int. Can now
	return error to dup2.
	* fhandler.cc: Changed dup to return error code.
	Corrected fhandler_console::close to return
	error code.
	* hinfo.cc (dup2): Check return code from
	fhandler->dup.
	* times.cc: Changed DST calculation as tm struct
	month starts at zero, NT wMonth starts at 1.
	* TODO: Added the things i'd like to do.

Wed Nov  6 17:42:31 1996  Geoffrey Noer  <noer@cygnus.com>

	* Makefile.in: Changed name of base file for cygwin.dll from
	base to cygwin.base.  Changed name of exp file for cygwin.dll 
	from win.exp to cygwin.exp.  Updated dependency list, removing
	recently removed files like libcfork.cc, added missing files,
	and added all missing header dependencies.  Small formatting
	fixes.

Fri Nov  1 16:38:48 1996  Geoffrey Noer  <noer@cygnus.com>

	* TODO: deleted old stuff from a long time ago, added some
	new stuff

	* added public domain disclaimers to all files missing them,
	reformatting of non-imported code to conform to GNU standards.
	Changes to:
	delqueue.h, exceptions.h, fcntl.cc, fhandler.h, grp.c,
	init.cc, ioctl.cc, key.cc, libcctype.c, libcerr.cc, libcmain.cc,
	misc.c, path.h, pold.c, resource.cc, smallprint.c, strerror.cc,
	syslog.cc, termios.cc, test.c, version.h, wait.cc

Fri Nov  1 14:44:29 1996 Jeremy Allison <jra@cygnus.com>

	* fhandler.h: Added is_console() method needed by
	new select code.
	* fhandler.cc (fhandler_console::init): Added c_oflag setting
	dependent on bin parameter.
	* select.cc: Added code to implement select from console
	handles. Ignores keyup events and still blocks.

Wed Oct 30 16:35:41 1996 Jeremy Allison <jra@cygnus.com>

	* fhandler.h: Removed fhandler_console_in, fhandler_console_out
	and integrated them both into fhandler_console. Added output_handle_
	so fhandler console has two handles. 
	* fhandler.cc: Updated to support changes in fhandler.h. It is now
	possible to open("/dev/tty") and read/write to the same fd.
	* hinfo.cc(build_fhandler): Removed references to obsolete classes.
	* spawn.cc: Changed to get correct reference to output_handle_ for
	fhandler_console class.
	* console.cc: Changed to get output handle rather than input handle.
	* winsup.h: Changed definition of prototypes for functions changed
	in console.cc

Wed Oct 30 13:05:33 1996  Geoffrey Noer  <noer@cygnus.com>

        * include/custcntl.h
        * include/features.h
        * include/icmp.h
        * include/wchar.h
        * include/cygwin32/icmp.h
        * include/cygwin32/ip.h
        * include/cygwin32/sockios.h
        * include/cygwin32/types.h
        * include/cygwin32/uio.h
        * include/sys/ttychars.h
        Added comment with name of header to each so that these are no
        longer empty files (some unzip programs won't create
        zero-length files which is a problem for headers)

Sun Oct 27 17:30:03 1996  Geoffrey Noer  <noer@cygnus.com>

	* cygwin.din: also export "_execl = execl" and the same
	for _execle and _execlp

Thu Oct 24 01:43:29 1996  Geoffrey Noer  <noer@cygnus.com>

	* include/windows.h: rewritten to include headers from
	the include/Windows32 subdirectory
	* winsup.h: no longer define MAX_PATH here since it's defined
	in header files dragged in by windows.h
	* dirsearch.cc (readdir): change WIN32_FIND_DATAA to WIN32_FIND_DATA
	* libccrt0.cc: #include <stdlib.h>
	* syscalls.cc (_unlink): chmod file to be unlinked to be
	writable and try to delete it again if first delete failed
	with permission denied error (rm will now work on read-only files)
	(num_entries): change WIN32_FIND_DATAA to WIN32_FIND_DATA
	* include/commdlg.h: delete
	* include/ddeml.h: delete
	* include/winadvapi.h: delete
	* include/winbase.h: delete
	* include/wincon.h: delete
	* include/windef.h: delete
	* include/windowsx.h: delete
	* include/winerror.h: delete
	* include/wingdi.h: delete
	* include/winkernel.h: delete
	* include/winnt.h: delete
	* include/wintypes.h: delete
	* include/winuser.h: delete
	* include/winversion.h: delete

Wed Oct 23 10:43:05 1996  Jeremy Allison <jra@cygnus.com>

	* dcrt0.cc (api_fatal): Changed locking clear of
	process table to unlocking clear. Needed as lock code calls
	api_fatal.
	* exceptions.cc: Added debug_printfs to follow exceptions in
	strace mode.
	* pinfo.cc: Added code to ensure fd table is cleared when new
	pid entry allocated. Fixed bug when process is terminated
	violently by TerminateProcess and leaves fd table non-zero.
	* termios.cc: Changed stubbed out syscalls to syscall_printf
	rather than small_printf. Stops annoying tcdrain message.
	* winsup.h: Made get_empty_pinfo call private to pinfo_list.
	Should never be called external to this class.

Tue Oct 22 16:14:23 1996  Jeremy Allison <jra@cygnus.com>

	* hinfo.cc: Removed previous change. This is not the
	correct place to flush input events.

Tue Oct 22 09:25:32 1996  Jeremy Allison <jra@cygnus.com>

	* dcrt0.cc: Fixed up exit code to clean up pinfo array.
	* exceptions.cc: Fixed up exit code to clean up pinfo array.
	* fork.cc: Tidied up access to inuse_p entry. Added flags
	to allow different states to be represented.
	* hinfo.cc: Added code to flush pending events if
	stdin is a console.
	* pinfo.cc (pinfo::record_death): Added code to clean
	the pinfo array if we are an exiting parent.
	* spawn.cc: Removed erroneous code to clean childs
	pinfo entry.
	* wait.cc: Changed WAIT_ERROR_RC to Win32 WAIT_FAILED.
	Tidied up access to pinfo array.
	* winsup.h: Added record_death_nolock to pinfo class.
	Added PID_XXX types for inuse_p.

Tue Oct 22 01:26:52 1996  Geoffrey Noer  <noer@cygnus.com>

	* include/Windows32/Base.h:
	* include/Windows32/Functions.h:
	* include/Windows32/Structures.h:
	* include/Windows32/UnicodeFunctions.h:
	Fixes to just commited changes

Mon Oct 21 19:58:50 1996  Geoffrey Noer  <noer@cygnus.com>

	* include/Windows32/ASCIIFunctions.h:
	* include/Windows32/Base.h:
	* include/Windows32/Defines.h:
	* include/Windows32/Functions.h:
	* include/Windows32/Structures.h:
	* include/Windows32/UnicodeFunctions.h:

	Add back items in old include files (commdlg.h, ddeml.h,
	shellapi.h, winadvapi.h, winbase.h, wincon.h, windef.h,
	windowsx.h, winerror.h, wingdi.h, winkernel.h, winnt.h,
	wintypes.h, winuser.h, winversion.h) which should now be able
	to be erased and windows.h modified to point to the new headers
	without anything nasty happening. 

	* include/WINREADME: deleted
	* include/mywinsock.h: removed many blank lines

Mon Oct 21 09:48:00 1996  Jeremy Allison <jra@cygnus.com>

	* select.cc: Re-written from scratch. Take account of
	the following cases. (1). All sockets [written&works]
        (2). Handles, sockets and always readies [written,not tested]
        (3). All handles [written,not tested]. (4). Handles & sockets
        with timeout [not yet written,returns -1]. Correctly blocks
	and doesn't spin cpu.
        * pinfo.cc: Changed to add global lock around pinfo array.
	* fork.cc: Changed to use global pinfo lock.
	* shared.cc: Fixed bug with fork()->exec()->exec() code.
	* net.cc: Removed select_init() call (no longer used).
	* spawn.cc: Implemented suggestion that spawn creates
	process suspended, then sets up it's dwProcessId entry
	in the shared pinfo array.
	* wait.cc: Changed to use global pinfo lock.
	* winsup.h: Added missing windows_95() call.
	* fhandler.h: Changed ifdefs to select new always_ready
	methods.
	* fhandler.cc (fhandler_console::write): Fixed bug
	where return of write_normal was being ignored.
	* dcrt0.cc: Added code to use global pinfo lock.
	Ensure that process records it's own death.
	* exceptions.cc: Added code to clear our entry in pinfo
	array when we are exiting. Should reduce dead processes in
	pinfo array.
	* include/winbase.h: Added MAXIMUM_WAIT_OBJECTS define.

Mon Oct 21 00:52:17 1996  Geoffrey Noer  <noer@cygnus.com>

	* Makefile.in: install headers from new Windows32 dir

Sat Oct 19 00:47:58 1996  Geoffrey Noer  <noer@cygnus.com>

	* include/Windows32/Base.h: change DWORD to unsigned int from
	unsigned long, change __WIN32__ checks to _WIN32, change
	// comments to /* */

Fri Oct 18 17:33:07 1996  Geoffrey Noer  <noer@cygnus.com>

	* include/Windows32/Defines.h: change INFINITE to 0xFFFFFFFF,
	add back definitions present in old winsup headers missing from
	this file (STATUS_WAIT_0 et al, CONTEXT stuff, FAR, PACKED,
	ASCIICHAR)
	* include/Windows32/Functions.h: change // comments to /* */
	* include/Windows32/Messages.h: add definitions for WM_NULL,
	WM_PENWINFIRST, WM_PENWINLAST
	* include/Windows32/Sockets.h: change __WIN32__ checks to _WIN32
	* include/Windows32/Structures.h: add ppc case for CONTEXT
	structure, change // comments to /* */

Fri Oct 18 17:25:09 1996  Geoffrey Noer  <noer@cygnus.com>

	* include/Windows32: new directory for Windows headers
	* include/Windows32/ASCIIFunctions.h:
	* include/Windows32/Base.h:
	* include/Windows32/Defines.h:
	* include/Windows32/Errors.h:
	* include/Windows32/Functions.h:
	* include/Windows32/Messages.h:
	* include/Windows32/Sockets.h:
	* include/Windows32/Structures.h:
	* include/Windows32/UnicodeFunctions.h:
	New Win32 headers from Scott Christley's windows32api-0.1.2 package
	with no local modifications.

Wed Oct 16 17:16:33 1996  Geoffrey Noer  <noer@cygnus.com>

	* key.cc: remove extra blank lines, change ASCIICHAR to AsciiChar
	* registry.cc: remove #include <winbase.h> since it's already
	included in windows.h

Tue Oct 15 09:51:48 1996  Jeremy Allison <jra@cygnus.com>

	* fhandler.h: Many changes to support moving fhandler array out of
        shared area into locally allocated memory. Removed fhandler class,
        fhandler_base is now root of class tree. Re-arranged class definitions
        to make it clear what functions are virtual and can be overridden.
	Inlined may accessor functions.
        * fhandler.cc: Many changes to support moving fhandler array out of
        shared area into locally allocated memory. unix_path_name_ is now
	always set (all fhandler_base classes have a name).
	* hinfo.cc: Many changes to support moving fhandler array out of
        shared area into locally allocated memory. Added linearization and
	de-linearization functions.
	* net.cc(socket): Added code to keep name for fhandler_socket.
	* pinfo.cc : Changed allocation of fhandler_base array to be in local
        memory rather than in shared area. (modified functions are pinfo_init,
	pinfo_list::get_empty_pinfo, pinfo_list::allocate_pid,
	pinfo::record_death).
	* shared.cc: Added functions to copy fd area for spawned process.
	Changed name of shared area to include master version number of
	Cygwin32.
	* spawn.cc (spawn_guts): Added code to initialize new shared area
	for fds.
	* syscalls.cc: Changed all code depending on NOFILE to use
	getdtablesize(). Added internal setdtablesize() call for exec'ed 
	processes.
	* syscalls.h: Added getdtablesize().
	* sysconf.cc (sysconf): Changed SC_OPEN_MAX to return getdtablesize().
	* winsup.h: Moved fhandler array out of shared area. Changed from
	fhandler to fhandler_base (new root of class tree).
	* include/mywinsock.h: Updated #endif to make end of
	__INSIDE_CYGWIN32__ clear.
	* include/winkernel.h: Added UnmapViewOfFile call.

Mon Oct 14 14:59:16 1996  Geoffrey Noer  <noer@cygnus.com>

        * sysdef/i386: replace all files with ones from Scott
	Christley's windows32api-0.1.2 package.  Still need to
	integrate new headers.

Mon Oct 14 13:41:14 1996  Geoffrey Noer  <noer@cygnus.com>

        * syscalls.cc (_unlink): need to fchmod file to writable
	before attempting to delete.  This change still needs more
	work (fchmod isn't written yet).
	* (fchmod): change comment

Fri Oct 11 22:27:17 1996  Geoffrey Noer  <noer@cygnus.com>

	* fhandler.cc, fhandler.h: minor fixes to console
	support functions (remove missed reference to gotarg2,
	definition in fhandler.h)

Wed Oct  9 17:55:00 1996  Geoffrey Noer  <noer@cygnus.com>

	* delqueue.cc: added copyright notice, reformatted file

	from sos@prospect.com.ru (Sergey Okhapkin):
	* fhandler.cc, fhandler.h: add/fix ansi/vt100 console support,
	and fix a tab bug
	(modified functions are fhandler_console_out::clear_screen,
	fhandler_console_out::clear_to_eol,
	fhandler_console_out::char_command,
	fhandler_console_out::write,
	FakeReadFile)

Wed Oct  9 17:32:17 1996  Jeremy Allison <jra@cygnus.com>

	* times.cc: Swapped gmtime and localtime (they were
	incorrectly reversed).
	Added is_dst determination to them both.
	* misc.c: Added swab, ffs.
	* fcntl.cc(fcntl): Added capability for lock calls.
	* fhandler.h: Added lock method into fhandler class.
	* fhandler.cc: Added NT/Win95 semantics locks into ::lock
	made them pretend they are POSIX locks.
	* syscalls.cc (writev): Fixed return value bug.
	* net.cc: Added WSAEOPNOTSUPP error.
	* cygwin.din: Added ffs and swab.
	* include/strings.h: Added file (just include string.h).
	* include/winbase.h: Added defines LOCKFILE_FAIL_IMMEDIATELY
	and LOCKFILE_EXCLUSIVE_LOCK.
	* include/winerror.h: Added define ERROR_LOCK_FAILED.

Thu Oct  3 16:19:23 1996  Jeremy Allison <jra@cygnus.com>

	* fhandler.h: Many changes - removed all public variables
	from classes, replaced with accessor functions. Renamed all
	class variables to add a trailing '_'. This makes reading
	and understanding which variables are class variables much simpler.
	Changed name member to unix_path_name_ and made dynamic rather
	than a fixed 31 byte buffer per entry.
        * fhandler.cc: Updated varable access for above.
	* fcntl.cc: Updated varable access for above.
	* hinfo.cc: Updated varable access for above.
	* spawn.cc: Updated varable access for above.
	* syscalls.cc: Added fsync (null call) and fchmod(null
	call at present).
	* net.cc: Added ioctls for SIOCGIFCONF and SIOCGIFFLAGS.
	Added ntohs, ntohl, static functions get_winnt_ifconf,
	get_win95_ifconf and get_if_flags.
	* include/cygwin32/if.h: Added structs for new ioctls.
	* include/cygwin32/socket.h: Added iovec include.
	* include/asm/socket.h: Added defines for above ioctls.
	* cygwin.din: Added ntohs, ntohl, fsync, fchmod.

Wed Oct  2 17:34:21 1996  Geoffrey Noer  <noer@cygnus.com>

	* utils/configure.in: add call to AC_CANONICAL_SYSTEM
	* utils/configure: regenerate
	* Makefile.in: build cygwin.dll as new-cygwin.dll and install as
	cygwin.dll to prevent confusion when building winsup natively

Tue Oct 1 17:27:34 1996  Jeremy Allison (jra@cygnus.com)

	* include/regex.h: Added.
	* net.cc: Added WSAECONNRESET, WSAEPFNOSUPPORT to
	errmap array.

Tue Oct 1 15:40:39 1996  Jeremy Allison (jra@cygnus.com)

	* fork.cc (cygwin_fork_helper1): Fixed resource leak of process
	handles, added cleanup code. Also fixed timout problem when child
	cannot be initialized.
	* dirsearch.cc (readdir): Changed comparison to explicitly check for
	INVALID_HANDLE_VALUE. Test < 0 fails with void *.
	* syscalls.cc (num_entries): Changed comparison to explicitly check for
	INVALID_HANDLE_VALUE. Test < 0 fails with void *.
	* cygwin.din: Added regcomp, regexec, regerror, regfree.
	* Makefile.in: Added EXTRA_OFILES containing ../librx/rx.o. Added
	comment to explain makefrag. Added ../newlib/libc/include to include
	path.

Mon Sep 30 16:10:56 1996  Stu Grossman  (grossman@critters.cygnus.com)

	* cygwin.din:  Remove getopt and friends.

Fri Sep 27 18:31:28 1996  Jeremy Allison <jra@cygnus.com>

	* dcrt0.cc (dll_crt_1): Moved initialization of _reent to correct
	position.

Fri Sep 27 14:24:05 1996  Jeremy Allison <jra@cygnus.com>

	* dcrt0.cc (dll_crt_1): Fixed fork bug with _impure_ptr not being
	initialized correctly in a forked child. This should fix
	the bash echo in a sub-shell bug.
	* include/sys/uio.h: Created file. Contains definitions for writev
	* include/limits.h: Added IOV_MAX and SSIZE_MAX.
	* syscalls.cc: Added writev, changed read and write to return ssize_t.
	* syscalls.h: Added writev, changed read and write to return ssize_t.
	* cygwin.din: Added writev call.

Wed Sep 20 13:09:00 1996  Jeremy Allison <jra@cygnus.com>

	* include/mntent.h: Added MOUNTED definition, needed by
	some code.
	* dcrt0.cc : Added __progname for getopt code.
	* misc.c: Added getw code.
	* cygwin.din: Added getopt, optarg, opterr, optind
	optopt, putw, getw calls.

Fri Sep 20 03:03:17 1996  Geoffrey Noer  <noer@cygnus.com>

	* select.cc: change long millisec to unsigned int,
	respaced file

	patch from Sergey Okhapkin <sos@prospect.com.ru>:
	* select.cc (polled): fix for select to get keyboard input
	working properly (check EventType != KEY_EVENT instead
	of checking for KeyEvent.AsciiChar == 0)
	* select.cc (cygwin32_select): make int i unsigned int so NULL is
	a valid timeout argument for loop 

Fri Sep 13 18:21:52 1996  Jeremy Allison <jra@cygnus.com>

	* fhandler.cc (fhandler_base::read): rewrite text mode read

Fri Sep 13 14:58:17 1996  Geoffrey Noer  <noer@cygnus.com>

	* exceptions.cc (call_handler): fix control-C not working
	problem by setting rethere variable before the old value is
	clobbered.

Thu Sep 12 16:27:00 1996  Jeremy Allison <jra@cygnus.com>

	* syslog.cc (pass_handler) : Removed duplicate code
	in pass_handler::print(). Added get_win95_event_log_path()
	to facilitate moving to registry configuration.

Thu Sep 12 12:56:00 1996  Jeremy Allison <jra@cygnus.com>

	* syslog.cc : Added real openlog, syslog, logmask, closelog
	calls. syslog logs to event log on NT, file on Win95.
	* include/winnt.h : added EVENTLOG_xx_TYPE definitions.
	* include/winadvapi.h : added ReportEventA, RegisterEventSourceA
	DeregisterEventSourceA declarations.
	* include/winkernel.h : added LockFile, UnlockFile, LockFileEx,
	UnlockFileEx declarations.
	* include/wintypes.h : added PSID typedef.
	* include/sys/syslog.h : added options flag definitions for openlog.

Wed Sep 11 15:34:09 1996  Geoffrey Noer  <noer@cygnus.com>

	* fhandler.cc (popen): delete stub in favor of newlib's
	(pclose): delete stub in favor of newlib's

Tue Sep 10 17:20:56 1996  Geoffrey Noer  <noer@cygnus.com>

	* configure.in: don't transform names (the only time this might
	be a good idea is for unix x cygwin32)
	* configure: regenerated with autoconf

Tue Sep 10 17:20:56 1996  Geoffrey Noer  <noer@cygnus.com>

	patch from Sergey Okhapkin <sos@prospect.com.ru>:
	* fhandler.cc (FakeReadFile): support arrow keys, stop treating
	bringing window to front as a key down (resulting in random
	characters being printed in bash).

Mon Sep  9 19:09:36 1996  Geoffrey Noer  <noer@cygnus.com>

	* syscalls.cc (system): fix system call

Fri Sep  6 09:33:13 1996  Doug Evans  <dje@canuck.cygnus.com>

	* fhandler.h (fhandler_base): Make execable_p public char, not
	private signed char.  Delete get_execable.
	* fhandler.cc (fhandler_base::get_execable): Renamed to
	check_execable_p.
	(fhandler_base::open): Restore symlink support.
	Set execable_p, symlink_p.
	(fhandler_base::fstat): Replace call to get_execable with reference
	to execable_p.
	(fhandler_base::fhandler_base): Set execable_p to 0.
	* path.h (symlink_check): Declare it.
	* path.cc (symlink_check): New function.
	(readlink): Call it.
	(symlink_follow): Likewise.  New arg EXEC, callers updated.
	* syscalls.cc (_stat_worker): New arg CALLER, callers updated.

	* syscalls.cc: Delete all occurences of in/out and MARK.

Thu Sep  5 18:51:01 1996  Doug Evans  <dje@canuck.cygnus.com>

	* fork.cc: Don't include <ctype.h>.  Delete find_exec and support.
	* spawn.cc: Include <ctype.h>.  Move find_exec and support here.
	(perhaps_suffix): New argument report_failure_p, callers updated.
	(find_exec_1): Use perhaps_suffix when scanning PATH.
	(spawn_guts): Replace code to translate posix to win32 path lists
	with calls to utility fns that do the job.

Wed Sep  4 13:30:57 1996  Doug Evans  <dje@canuck.cygnus.com>

	* path.cc (readlink): Make more bulletproof.

Wed Aug 28 16:44:24 1996  Geoffrey Noer  <noer@cygnus.com>

	* syscalls.cc (system): use execlp
	* public release beta 16 made

Tue Aug 27 09:58:14 1996  Doug Evans  <dje@canuck.cygnus.com>

	* version.h (CYGWIN_DLL_VERSION_MINOR): Bump up to 2.

Mon Aug 26 15:12:44 1996  Geoffrey Noer  <noer@cygnus.com>

	* syscalls.cc (system): added basic system() call.

Mon Aug 26 13:46:30 1996  Doug Evans  <dje@canuck.cygnus.com>

	* cygwin.din (cygwin_fork_helper__FPvN30): Delete.
	(vfork,select): Add.
	* fork.cc (prepare_child): Delete, contents moved into
	cygwin_fork_helper1.
	(cygwin_fork_helper): Delete, contents moved into __fork.
	* winsup.h (cygwin_fork_helper): Delete.

	* path.cc: #include <fcntl.h>.
	(symlink,readlink): Reenable, rewrite.
	(symlink_follow): New function.
	* path.h (symlink): Delete.
	(SYMLINK_COOKIE, MAX_LINK_DEPTH): Define.
	(symlink_follow): Declare.
	* spawn.cc (spawn_guts): Rewrite symlink support.

	* syscalls.cc (_unlink): Make arg a const char *.
	* winsup.h (_unlink): Likewise.

	* spawn.cc (spawn_guts): Fix allocation of stack space for sh.exe path.

	* include/sys/errno.h: Deleted.  Use newlib's.

Fri Aug 23 16:00:00 1996  Jeremy Allison <jra@cygnus.com>

	* net.cc (getdomainname): Changed win95 code to open
	"System" key rather than "SYSTEM". I think the registry
	is case-sensitive.
 
Thu Aug 22 17:04:09 1996  Geoffrey Noer  <noer@cygnus.com>

	move fork into the dll:
	* libcfork.cc: deleted
	* fork.cc (vfork): used to be in libcfork.cc
	* (__fork): used to be in libcfork.cc
	* (fork): used to be in libcfork.cc	
	* Makefile.in: don't build libcfork.cc any more
	* libccrt0.cc: set data_start, etc. from dll structure
	* winsup.h: add data_start, etc. to public vars in dll
	* cygwin.din: list fork

Thu Aug 22 01:36:53 1996  Geoffrey Noer  <noer@cygnus.com>

	* registry.cc: fix new registry code
	* syscalls.cc: make Windows95 check function extern "C"

Wed Aug 21 16:15:47 1996  Geoffrey Noer  <noer@cygnus.com>

        * cygwin.din: list vfork
        * dirsearch.cc: fix errno setting in readdir that caused
        diff to not function on directories
        * pipe.cc: reformatted

Wed Aug 21 15:12:47 1996  Jeremy Allison <jra@cygnus.com>

	* net.cc (domainname): Changed getdomainname to get the 
	information from the registry.
	* registry.h:  Modified interface to reg_key.
	* registry.cc: Added open(),close() calls, made 
	get/set string values return error indication, added trailing 
	underscore to hkey member so it can be seen to 
	be a class member.
	* include/winadvapi.h: Added KEY_READ and KEY write
	defines for registry access.

Mon Aug 19 09:22:35 1996  Doug Evans  <dje@canuck.cygnus.com>

	* path.cc (split_path): New function.
	* path.h (split_path): Declare it.
	* cygwin.din (cygwin32_split_path): Export it.

	* include/winkernel.h (FILE_SHARE_DELETE): Define.

	* syscalls.cc (__do_global_[cd]tors], __main): Move from here.
	* dcrt0.cc: To here.

	* dcrt0.cc (recur): Restore (now that we know WHY it was needed).
	(dll_crt0_1): Probe forked child's stack out.

	* fork.cc (FORK_WAIT_TIMEOUT): Bump up to two minutes.
	
	* fork.cc (dump_jmp_buf): New function.
	(cygwin_fork_helper1): Call it.
	* dcrt0.cc (dll_crt0:1): Call it.
	* winsup.h (dump_jmp_buf): Declare it.

	* fork.cc (cygwin_fork_helper1): Reenable child suspend before
	stack copy code.

Sat Aug 17 04:06:36 1996  Geoffrey Noer  <noer@cygnus.com>

	* dirsearch.cc: reformatted, removed a couple of gotos

Thu Aug 15 17:56:08 1996  Geoffrey Noer  <noer@cygnus.com>

	* cygwin.din: added __eprintf, a newlib function needed by assert.
	* times.cc: swap gmtime and localtime (gmtime really was localtime
	and vice versa).

Tue Aug 13 03:46:22 1996  Geoffrey Noer  <noer@cygnus.com>

	* signal.cc: renamed all signal variables "sig",
	fixed signal range error checking in all relevant functions,
	(sigaddset): new
	(sigismember): new
	(sigfillset): new
	(sigemptyset): new
	* cygwin.din: added corresponding entries for new signal functions.
	* cygwin.h: added protos for them 
	* fhandler.cc, fhandler.h: major reformat of code
	* net.cc (cygwin32_socket): call checkinit() at start to
	initialize WinSock in case it isn't already.
	* syscalls.cc (access): set errno appropriately when no
	write access
	* fcntl.cc: reformatting

Sat Aug 10 16:30:14 1996  Geoffrey Noer  <noer@cygnus.com>

	* signal.cc (_raise): rewrite to shorten code, corrected
	return values.  
	* fcntl.cc, net.cc, signal.cc, stubs.c: reformatted, added
	public domain notice at the tops if they were missing.   

Fri Aug  9 18:19:12 1996  Geoffrey Noer  <noer@cygnus.com>

        * syscalls.cc (_rename): return -1 if file to be renamed
        doesn't exist.  Reformatted whole file.
	* fork.cc: increase timeout value to 60 sec from 30 sec

Thu Aug  8 17:44:39 1996  Jim Wilson  <wilson@cygnus.com>

	* config/i386/longjmp.c: Increment %eax if it is zero.

Wed Aug  7 15:51:04 1996  Geoffrey Noer  <noer@cygnus.com>

	* include/sys/mman.h: fixed defines for PROT_READ et al to
	match what's more normally there in unix
	* sysdef/i386/*: removed the extra underscores present in most
	of these files that shouldn't have been there
	* net.cc: cleaned up whitespace, formatting

Tue Jul 16 12:43:16 1996  Doug Evans  <dje@canuck.cygnus.com>

	* libccrt0.cc (__version): Deleted, unused.

	* uname.c (uname): Print CYGWIN_DLL_VERSION is version field.

Mon Jul 15 16:48:29 1996  Doug Evans  <dje@canuck.cygnus.com>

	* version.h (CYGWIN_DLL_VERSION_MINOR): Bump up to 1.

	Path handling clean up, pass 2 (use //<letter>, not /.<letter>.).
	* path.cc (SLASH_DRIVE_PREFIX_LEN): Delete.
	(slash_drive_to_win32_path): New function.
	(mount_info::posix_path_p): Delete support for $CYGWIN,
	always return 1.
	(path_conv::path_conv): Call slash_drive_to_win32_path.
	(mount_info::conv_to_win32_path): Renamed from
	posix_path_to_win32_path.  All callers updated.
	(mount_info::conv_to_posix_path): Renamed from
	win32_path_to_posix_path.  All callers updated.
	(normalize_posix_path): Keep two leading /'s (or \'s).
	(normalize_win32_path): Likewise.
	(conv_to_{win32,posix}_path): Renamed from
	{posix,win32}_path_to_{win32,posix}_path_keep_rel.
	(conv_to_full_{win32,posix}_path): Renamed from
	{posix,win32}_path_to_full_{win32,posix}_path.
	(posix_path_list_p): New function.
	(cygwin32_{unix,dos}_path_to_{dos,unix}_path_keep_rel): Delete.
	({unix,dos}_path_to_{dos,unix}_path): Delete.
	({win32,posix}_to_{posix,win32}_path_list_buf_size): Renamed from
	cygwin32_{win32,posix}_to_{posix,win32}_path_list_buf_size.
	({win32,posix}_to_{posix,win32}_path_list): Renamed from
	cygwin32_{win32,posix}_to_{posix,win32}_path_list.
	(slash_drive_prefix_p): Recognize //<letter>, not /.<letter>.
	(build_slash_drive_prefix): Update.
	* path.h: Update.
	* cygwin.din ({dos,unix}_path_to_{unix,dos}_path): Delete.
	(cygwin32_{dos,unix}_path_to_{unix,dos}_path_keep_rel): Delete.
	(cygwin32_conv_to_{posix,win32}_path): Renamed from
	(cygwin32_{win32,posix}_path_to_{posix,win32}_path_keep_rel.
	(cygwin32_conv_to_full_{posix,win32}): New exports.
	(cygwin32_posix_path_list_p): New export.
	* dcrt0.cc (path_len): Delete.
	(PATH_ENV_BUF_SIZE): Delete.
	(conv_path_names): Delete all but PATH.
	(dll_crt0_1): Rewrite environment variable conversion code.
	* fork.cc (find_exec_1): Delete _SC_PATH_RULES support.  Determine
	path delimiter by calling posix_path_list_p.
	* shared.cc (shared_info::initialize): Delete `path_rules'.
	* sysconf.cc (sysconf): Delete _SC_PATH_RULES.
	* winsup.h (shared_info): Delete `path_rules'.

	* fork.cc (cygwin_fork_helper1): Reset u->forkee after child has
	started.

	* pinfo.cc (pinfo::init_from_fork): Delete.  Empty function.
	* fork.cc (cygwin_fork_helper1): Delete call to it.

	* utils/kill.cc (usage): New function.
	(main): Allow multiple pids to be passed.  Call usage.

Mon Jul 15 13:07:23 1996  Michael Meissner  <meissner@tiktok.cygnus.com>

	* Makefile.in (install): If cross compiling, install the
	cygwin.dll file as $target_alias-cygwin.dll in the bin directory,
	instead of plain cygin.dll.
	Install the cygwin.dll file in the library directory as well.

	* configure.in: Test for cross compiling, and if cross compiling,
	transform name of cygwin.dll file in the binary directory.

	* configure: Regenerate.

	* utils/Makefile.in (Makefile): Rebuild Makefile if configure.in
	changes.
	(install): Use the toplevel install.sh to install the utilities,
	and transform the name if cross compiling.

	* utils/configure.in: Test for cross compiling, and if cross
	compiling, tranform mount, umount, ps, etc.  Do not call
	AC_PROG_INSTALL anymore.

	* utils/configure: Regenerate.

Fri Jul 12 16:25:09 1996  Geoffrey Noer  <noer@cygnus.com>

	*  Makefile.in: also make install in utils subdir so "mount"
	et al gets installed.

Thu Jul 11 17:53:31 1996  Geoffrey Noer  <noer@cygnus.com>

	* include/sys/param.h: fixed value of HZ (now 1000 instead of 100).
	caused bug that showed up as "time sleep 5" returning 50.

Thu Jul 11 14:08:09 1996  Geoffrey Noer  <noer@cygnus.com>

	* fhandler.cc: correct typo in comment
	* exceptions.cc: remove definition of sig_func_ptr, replace
	occurances with newlib-defined _sig_func_ptr.

Wed Jul 10 19:12:18 1996  Doug Evans  <dje@canuck.cygnus.com>

	* version.h (CYGWIN_DLL_VERSION_{MAJOR,MINOR}): Bump up to 17.0.
	* winsup.h (class per_process): New members {public,internal}_reserved.
	(SIZEOF_PER_PROCESS): Define.
	* dcrt0.cc (dll_crt0_1): Add sanity check of per_process size.
	Don't call checkout for forkee.
	* libccrt0.cc (cygwin_crt0): Set magic_biscuit to sizeof per_process
	again.

	* utils/ps.cc (main): Print uid.

	* hinfo.h: Deleted.  Contents moved to winsup.h.
	* Makefile.in (WINSUP_H): Update.

	* dcrt0.cc (u, environ): Moved here.
	* shared.cc: From here.

	* pinfo.cc (pinfo_init): Renamed from pinfo_init_per_process.
	All callers updated.
	* hinfo.cc (hmap_init): Renamed from hmap_init_per_process.
	All callers updated.
	* winsup.h (cygwin_parent_p): Renamed from invoked_by_cygwin_p.
	All uses updated.

	* fork.cc (prepare_child): Add debug message.

	* uinfo.cc (uinfo_init): Renamed from uinfo::init.
	All callers updated.  Call getlogin instead of GetUserName.
	(getlogin): Call GetUserName.
	* winsup.h (class uinfo): Delete.  Members uid,gid moved ...
	(class pinfo): To here.  All uses updated.
	(class shared_info): Delete member `u'.
	* fork.cc (cygwin_fork_helper1): Set child's uid,gid.

	* pinfo.cc (pinfo::clearout): Reset strace_mask_ptr.

	* shared.cc (open_shared_file_map): Add debugging message.

Fri Jul  5 15:36:48 1996  Doug Evans  <dje@canuck.cygnus.com>

	* exceptions.cc (sig_func_ptr): New typedef.
	(__stack_trace): Make i386 and ppc formats the same.
	(sigfunc): Use sig_func_ptr.
	(call_handler): Likewise.  All callers updated.
	(__cygwin_exception_handler): Handle exceptions before dll has
	fully initialized.  Only call dump_status once, like __stack_trace.
	(really_exit): Call _exit, not exit.

	* hinfo.cc: Add copyright.
	* uinfo.cc: Likewise.

	* passwd.c: Whitespace cleanup.
	(search_for): Make static.

	* pinfo.cc (pinfo_list::init): Delete call to clearout vec[0].
	(pinfo::clearout): Reset more fields.
	(pinfo_list::get_empty_pinfo): Delete printing of error messages
	if table is full.

	* shared.cc (open_shared_file_map): Mark shared map as not inherited.

	* signal.cc (signal): Delete (void *) coersion of result.
	(usleep): Convert microseconds to milliseconds.  Delete second copy.
	(_raise): Use _sig_func_ptr.

	* syscalls.h: Delete #include mntent.h, sys/types.h, string.h,
	stdio.h, setjmp.h, stdlib.h, signal.h, sys/strace.h, unistd.h,
	ctype.h, fcntl.h.
	* winsup.h: #include sys/types.h, sys/strace.h, setjmp.h, signal.h,
	string.h, windows.h.
	* All necessary files updated.

	* winsup.h (class pinfo): Delete member localtime_buf.
	* times.cc (corelocaltime): Use static local for localtime_buf.

	* winsup.h (class pinfo): Rename the_pid to pid.  All uses updated.
	Delete handle_valid_p, unused. Rename __sig_mask to sig_mask.

Thu Jul  4 14:36:01 1996  Doug Evans  <dje@canuck.cygnus.com>

	* shared.h: Deleted.  All files updated.
	* winsup.h: shared.h contents moved here.
	* Makefile.in (WINSUP_H): Update.

	* heap.cc: Renamed from pproc.cc.
	(heap_init): Renamed from per_process::init.
	In forkee initialization, ensure memory being reserved is at same
	address as parent's.  Commit forkee memory in one chunk.
	(_sbrk): Moved here,
	* syscalls.cc (_sbrk): From here.
	* Makefile.in (DLL_OFILES): Update.
	* dcrt0.cc (dll_crt0_1): Call heap_init instead of u->init.
	* winsup.h (class per_process): Delete member `init'.

	* dcrt0.cc (recur): Delete.
	(dos_argv_to_unix_argv): Delete.

	* delqueue.cc: Delete #include of delqueue.h, winerror.h
	* winsup.h: #include delqueue.h.

	* exceptions.cc (ctrl_c_handler): Only require 13 ^c's to quit task.

	* fork.cc (fork_mutex,forkee_stopped,forker_stopped): New static
	globals, were in class_shared info.
	(fork_init,fork_terminate): New functions.
	(prepare_child,cygwin_fork_helper1): Update.
	(cygwin_fork_helper1): If fork disabled, return EAGAIN.
	Delete unnecessary resetting of forkee_stopped event.
	* winsup.h (fork_init,fork_terminate): Declare them.
	* dcrt0.cc (dll_crt0_1): Call fork_init.
	(_exit): Call fork_terminate.
	* shared.c (shared_info::initialize): Delete init of fork stuff.

	* shared.c (h): New static global, was in class shared_info.
	(shared_info::terminate): Delete, move contents into shared_terminate.

	* strace.cc (flush_p): New static global.
	(strace_init): Don't clobber u->strace_mask if _STRACE_INHERIT set.
	(__sys_printf): Only flush buffers if _STRACE_FLUSH.
	* include/sys/strace.h (_STRACE_FLUSH,_STRACE_INHERIT): Define.
	Reorganize bitmasks.

	* utils/ps.cc (main): Make output prettier.

Wed Jul  3 12:30:24 1996  Doug Evans  <dje@canuck.cygnus.com>

	* utils/Makefile.in (mount,umount,ps,kill): Rewrite rules.
	(PROGS): Add cygwin.
	(cygwin): New target.
	(install): Install all of $(PROGS).
	* utils/cygwin.cc: New file.

	* pinfo.cc (pinfo_init_per_process): PID environment variable handling
	moved here.  Delete setting of u->parent.  Set strace_mask_ptr.
	Set invoked_by_cygwin_p appropriately.
	(vfork_init): Delete, unused.
	(pinfo::init_self): Delete setting of root_p.
	(pinfo::terminate): root_p renamed to invoked_by_cygwin_p.
	* winsup.h (class per_process): Delete initial_pid, no longer used.
	(class pinfo): Add strace_mask_ptr.
	* fork.cc (cygwin_fork_helper1): Update.

	* winsup.h (class per_process): Delete trace_file, trace_mutex.
	Rename estrace to strace_mask.
	(system_printf): Declare.
	* strace.cc (strace_init): Renamed from per_process::strace_init.
	Don't open trace file unless strace environment variable set.
	Open trace file with FILE_SHARE_READ so others can read trace file
	while tracing in progress.  Print error if $strace too big.
	(strace_file, strace_mutex): New static globals.
	(__sys_printf): Don't do anything if strace file not opened.
	(system_printf): New function.
	* pproc.cc (per_process::init): Delete call to strace_init.
	* dcrt0 (dll_crt0_1): Call strace_init as soon as possible.
	
	* dcrt0 (dll_crt0_1): Delete local can_glob, use
	u->self->invoked_by_cygwin_p instead.
	Move PID environment variable handling into pinfo_init_per_process.
	Delete setting of u->self->in_bash.
	Delete watching for bash.
	* winsup.h (class pinfo): Delete in_bash.

	* exceptions.cc (*): Call system_printf, not __sys_printf.

	* shared.h (class shared_info): Delete pp, unused.

	* syscalls.cc (isatty): Replace ttyname with is_tty.

	* winsup.h (registry_init_once_only): Delete, unused.
	(stdout_handle,file_handle_from_fd): Likewise.
	(CHILD_P,child_p,ALL_FS,loadup_dll,cygwin_s): Likewise.
	(unmixedcaseify): Prototype moved to path.h.
	* path.h (unmixedcaseify): Declare.

	* fork.cc (FORK_WAIT_TIMEOUT, WAIT_ERROR_RC): Define.
	(find_exec_1): Don't search PATH if directory present (not only if
	absolute path).  Search "." before searching PATH.
	(copy): Return boolean indicating success.  All callers updated.
	(prepare_child): Simplify.  Check return code of WaitForSingleObject.
	Don't wait an infinite amount of time.
	(cygwin_fork_helper1): Simplify.
	Check return code of WaitForSingleObject.
	Don't wait an infinite amount of time.
	Check return code of copy.
	Disable code to Suspend/Resume child thread a second time.

	* winsup.h (class per_process): Make initial_sp a char *.
	* libccrt0.cc (cygwin_crt0): Update.

	* path.cc (path_conv): If name too long, set path to bogus value.

	* include/winkernel.h (WriteProcessMemory): Fix prototype.

	* include/sys/strace.h: Add extern "C" ifdef __cplusplus.
	(_STRACE): Delete.
	* dirsearch.cc (rewinddir): Use syscall_printf.

Tue Jul  2 14:44:18 1996  Doug Evans  <dje@canuck.cygnus.com>

	* wait.cc (WAIT_ERROR_RC): Use it instead of ALL_FS.
	(wait_found): New argument `options'.  If GetExitCodeProcess fails,
	ensure `result' contains something reasonable.
	(wait_for_single): Check whether `c' is NULL before dereferencing it.
	(wait_for_any): Add some comments.  Delete unnecessary gotos.
	(waitpid): Print message if called with intpid == 0.

Sat Jun 29 10:49:28 1996  Doug Evans  <dje@canuck.cygnus.com>

	* dirsearch.cc (readdir): Clean up syscall tracing.
	Mixed case handling temporarily disabled.

Wed Jun 26 11:54:27 1996  Jason Molenda  (crash@godzilla.cygnus.co.jp)

	* Makefile.in (bindir, libdir, datadir, infodir, includedir):
	Use autoconf-set values.
	(docdir): Removed.
	(install-info): Add.
	* configure.in (AC_PREREQ): autoconf 2.5 or higher.
	* configure: Rebuilt.
	* glob/configure.in (AC_PREREQ): autoconf 2.5 or higher.
	* glob/configure: Rebuilt.
	* utils/Makefile.in (bindir, exec_prefix): Use autoconf-set values.
	* utils/configure.in (AC_PREREQ): autoconf 2.5 or higher.
	* utils/configure: Rebuilt.

Tue Jun 25 17:48:56 1996  Doug Evans  <dje@canuck.cygnus.com>

	* include/sys/param.h (PATH_MAX,MAXPATHLEN): Change from 1024 to 259.
	(BIG_ENDIAN,LITTLE_ENDIAN,BYTE_ORDER): Define.

Mon Jun 24 16:35:48 1996  Mark Eichin  <eichin@cygnus.com>

	* fhandler.cc (read): Replace the old broken igncr code (which has
	been disabled for a while anyway) with code that checks for
	ENABLE_LINE_INPUT and replace only \r\n with \n.

Mon Jun 24 00:12:22 1996  Doug Evans  <dje@canuck.cygnus.com>

	* dcrt0.cc (dll_crt0_1): Convert argv[0] to posix style if necessary.

Sun Jun 23 17:21:41 1996  Doug Evans  <dje@canuck.cygnus.com>

	* version.h (CYGWIN_DLL_VERSION_MINOR): Bump up to 2.

	* fork.cc (perhaps_suffix): Simplify.
	(find_exec_1): Likewise.  Always try appending .exe first.
	(cygwin_fork_helper1): Clean up (lots more needed still).
	Test for split heap before calling CreateProcess.
	No longer call find_exec, now done at start up.
	* dcrt0.cc (dll_crt0_1): Call find_exec to expand argv[0].

	* path.cc (conv_path_list_buf_size): New function.
	(cygwin32_{win32,posix}_to_{posix,win32}_path_list_buf_size): Ditto.
	(conv_path_list): Ditto.
	(cygwin32_{win32,posix}_to_{posix,win32}_path_list): Ditto.
	* cygwin.din: Export them.

	* misc.c (small_printf): Delete.
	(vhangup): Set errno.

	* syscalls.cc (isatty): Print syscall trace message even if error.

	* console.cc (*): Check return codes of win32 api calls.

	* syscalls.cc (chmod): Set errno of SetFileAttributes fails.
	Fix call to syscall_printf.

Thu Jun 20 00:43:52 1996  Doug Evans  <dje@canuck.cygnus.com>

	* dcrt0.cc (dll_crt0_1): Save full program name.
	* fork.cc (cygwin_fork_helper1): Always call find_exec.

	* path.cc (normalize_{posix,win32}_path): Fix edge case handling.
	(path_conv::path_conv): Ensure path is \-ified if win32 path rules.

	* spawn.cc (spawn_guts): Set errno if CreateProcess fails.

Wed Jun 19 00:18:03 1996  Doug Evans  <dje@canuck.cygnus.com>

	* path.h (PATH_RULES macros): Delete.  Use ones in unistd.h.
	(enum path_rules_enum): Deleted.  All uses updated.
	(path_conv): Rename member get_native to get_win32.  All uses updated.
	(*win32_path*): Renamed from *native_path*.
	* path.cc (*win32_path*): Renamed from *native_path*.
	(mount_info::posix_path_p): Prepend '_' to PATH_RULES.
	Fix returning of cached value.
	(slash_drive_prefix_p, build_slash_drive_prefix): New functions.
	(mount_info::posix_path_to_win32_path): /.<letter>. is a drive spec.
	(path_conv::path_conv): Likewise.
	(mount_info::win32_path_to_posix_path): Convert unknown drives to
	/.<letter>.  Normalize win32_path.
	(normalize_win32_path): New functions.
	(getcwd_inner): New arg `posix_p'.  All callers updated.
	* shared.cc (shared_info::initialize): Prepend '_' to PATH_RULES.
	_PATH_RULES_NATIVE -> _PATH_RULES_WIN32.
	* spawn.cc (*win32_path*): Renamed from *native_path*.
	* dcrt0.cc: Likewise.
	* cygwin.din: Likewise.

	* Makefile.in (WINSUP_H): Add shared.h

	* smallprint.c (rn): Make static.

	* sysconf.cc: Renamed from sysconf.c.
	(sysconf): Support _SC_PATH_RULES.

	* screen.c: Deleted.
	* Makefile.in (DLL_OFILES): Delete screen.o.

	* fork.cc (cygwin_fork_helper): Don't pass 0 from longjmp to setjmp.

	* path.h (class mount_info): Update posix_path_to_native_path member.
	* path.cc (path_prefix_p): Rewrite.
	New arg `len'.  All callers updated.
	(mount_info::binary_native_path_p): Call path_prefix_p.
	(path_conv::path_conv): Pass full_path to binary_native_path_p.
	(mount_info::posix_path_to_native_path): Delete arg keep_rel_p.
	New arg full_native_path.  All callers updated.  Don't call
	getcwd_inner if unnecessary.  Rewrite relative path handling.
	(mount_info::native_path_to_posix_path): Call path_prefix_p.
	Call slashify on `pathbuf', not original argument.

	* syscalls.cc (chdir): Fix lifetime of converted path.

Tue Jun 18 11:48:51 1996  Doug Evans  <dje@canuck.cygnus.com>

	* configure.in (EXE_LDFLAGS): Explicitly link with newlib if necessary.
	* configure: Regenerated.
	* Makefile.in (EXE_LDFLAGS): Define.
	(FLAGS_TO_PASS): Add EXE_LDFLAGS.
	(config.status): New target.
	(utils-all): Depend on $(LIBNAME).
	* utils/Makefile.in (EXE_LDFLAGS): Define.
	(mount,umount,ps,kill): Link with $(EXE_LDFLAGS).

	* version.h (CYGWIN_DLL_VERSION_MINOR): Bump up to 1.

Mon Jun 17 18:29:54 1996  Doug Evans  <dje@canuck.cygnus.com>

	Improve pathname handling, first pass.
	* path.h (symlink): Renamed from link_cookie.
	(class path_conv): New member error.
	(path_conv::get_native): Renamed from get_dos, all uses updated.
	(path_conv::get_binary): Delete.
	(mount_info::{mangle,reverse_mangle}): Delete.
	(mount_item::posix_path_to_native_path): Renamed from mangle.
	(mount_info::native_path_to_posix_path): Renamed from reverse_mangle.
	(path_rules_enum): Define.
	* path.cc: Temporarily disable mixed-case and symlink handling.
	(mount_info::posix_path_p): New function.
	(mount_info::binary_native_path_p): Renamed from binary_dos_path_p.
	(path_conv::path_conv): Handle native path rules.
	(mount_item::{mangle,reverse_mangle}): Delete.
	(mount_info::posix_path_to_native_path): Renamed from mangle.
	(mount_info::native_path_to_posix_path): Renamed from reverse_mangle.
	(mount_info::from_registry): Set nmounts.  Use MAX_PATH.
	(mount_info::{add,del}_item): Rewrite.
	(slashify): Renamed from flip_slash.
	(getcwd_inner): Make static.  Don't convert to posix path if using
	native path rules.
	(file_exists): Delete.
	(addmntent,hasmntopt): Delete.
	(mount): Only update registry if mount succeeded.
	(umount): Only update registry if umount succeeded.
	(normalize_posix_path): Renamed from normalize_path.  Pass in cwd.
	(cygwin32_{posix,native}_path_to_{native,posix}_path_keep_rel): Renamed
	from ...{unix/dos}....
	* dcrt0.cc (dos_argv_to_unix_argv): #ifdef out.
	(dll_crt0_1): Don't call it.
	* fhandler.cc (fhandler_base::open): Temporarily disable symlinks.
	* shared.cc (open_shared_file_map): New function.
	(shared_init): Call it.
	(shared_info::initialize): Fetch `path_rules' from registry.
	* shared.h (inited): Make private.
	(path_rules): New member.
	* spawn.cc: #include "shared.h".
	(spawn_guts, env var translation): Don't translate path names if
	using native path rules.
	* syscalls.cc (symlink): Delete (moved to path.cc).
	* cygwin.din (dump__5pinfo): Delete.
	(cygwin32_{posix,native}_path_to_{native,posix}_path_keep_rel): Renamed
	from ...{unix/dos}....

	* smallout.cc: Delete.
	* sdata.cc: Delete.
	* shared.cc (u,s,environ): Define here.
	* Makefile.in (glob/libglob.a): Depend on glob/glob.c, glob/fnmatch.c.
	(utils-all): New target.
	(DLL_OFILES): Delete smallout.o, sdata.o.
	(Makefile): Depend on cygwin.din.
	(WINSUP_H): Depend on syscalls.h.

	* configure.in (AC_CONFIG_SUBDIRS): Add bin.
	(AC_PROG_INSTALL): Call.
	* configure: Regenerated.
	* utils/{Makefile.in,configure.in,configure}: New files.
	* utils/{kill.cc,mount.cc,ps.cc,umount.cc,termcap}: New files.
	* Makefile.in (UTILS_ALL): Define.
	(all): Depend on $(UTILS_ALL).
	(utils-all): New target.

	* dcrt0.cc (recur): Make no-op to see what happens.
	(globify): Don't call glob if unnecessary.
	Check return code from glob.
	(api_fatal): New function.
	* fhandler.cc (fhandler_base::read): Dump first few chars read.
	(fhandler_base::get_execable): New function.
	(fhandler_base::fstat): Use it.
	(fhandler_base::fhandler_base): Init execable_p.
	(fhandler_disk_file::fhandler_disk_file): Delete execable_p.
	(fhandler::{get,set}_execable_bit): Delete.
	(fhandler_disk_file::{get,set}_execable_bit): Delete.
	* fhandler.h (class fhandler): Delete {get,set}_execable_bit.
	(class fhandler_base): New member execable_p.
	New member fn get_execable.
	* fork.cc: Simplify/cleanup.
	(cygwin_fork_helper1): Use MAX_PATH, not MAXPATHLEN.
	* pinfo.cc (pinfo::dump): Delete.
	* pproc.cc (per_process::set_envname): Delete.
	* strace.cc (smallout::do_pline): Delete.
	* syscalls.h (readlink): Third arg is an int.
	* winsup.h (class pinfo, member progname): Use MAX_PATH.
	(class pinfo, member dump): Delete.
	(class smallout): Delete.
	(smallout): Delete.
	(class per_process, member set_envname): Delete.
	(file_exists): Delete.
	(api_fatal): Declare.
	* Makefile.in (LIB{C,CXX}FLAGS_FOR_TARGET): Delete, use {C,CXX}FLAGS.
	(FLAGS_TO_PASS): Define.
	(glob/libglob.a): Delete duplicate entry.

	* syscalls.cc (_sbrk): Update u->size when heap is grown.

	* hinfo.cc (hmap_init_per_process): Ensure stdout's handle != stderr's.

Fri Jun 14 06:32:13 1996  Doug Evans  <dje@canuck.cygnus.com>

	* register.h, registry.cc: Whitespace cleanup.

Thu Jun 13 20:57:28 1996  Doug Evans  <dje@canuck.cygnus.com>

	* Makefile.in (install): Install cygwin.dll in $(bindir).

Tue Jun 11 13:46:17 1996  Geoffrey Noer  <noer@cygnus.com>

	* fhandler.cc: lseek is now only binary mode, interpret control
	z characters as EOF when reading from a file.  Reformatted some
	of the code (cleaned up line spacing, etc.)

Tue Jun 11 09:50:09 1996  Jason Molenda  (crash@kyriath.cygnus.com)

	* path.cc (nofinalslash): move it so it is next to its friends
	flip_slash and backslashify.

Mon Jun 10 18:57:03 1996  Jason Molenda  (crash@kyriath.cygnus.com)

	* path.cc (*): Pretty printing.
	(unix_path_to_dos_path_with_rel): use "dosnamein" and "unixnameout"
	instead of "path" & "real_path".
	(dos_path_to_unix_path_keep_rel): delete obsolete code.
	(mount_item::mangle): use "unixnamein" and "dosnameout" instead of
	"unixname" and "dosname".
	(mount_info::mangle): use "unixnamein" and "dosnameout".  Remove
	obsolete code.
	* path.h (mount_item): Update prototypes, add comment.
	(mount_info): Update prototypes.

Mon Jun 10 17:05:23 1996  Jason Molenda  (crash@kyriath.cygnus.com)

	* path.cc (mount_item::reverse_mangle): Pretty printing,
	add a bit to the comment.
	(getcwd_inner): use MAX_PATH not MAXPATHLEN.
	(normalize_path): use MAX_PATH not MAXPATHLEN.
	(link_cookie::follow): use MAX_PATH not MAXPATHLEN.

Mon Jun 10 15:36:32 1996  Geoffrey Noer  <noer@cygnus.com>

	* Makefile.in: changed $(DOC) so it doesn't include html
	files; made a new info-html target that does the html
	versions of the docs.  Since most customers don't have texi2html
	installed, the make shouldn't fail because of this.
	* configure: regenerated with autoconf 2.8

Sun Jun  9 17:10:37 1996  Doug Evans  <dje@canuck.cygnus.com>

	* version.c: Deleted.
	* version.h: New file.
	* winsup.h (VERSION): Deleted.
	(class per_process): Add version_major, version_minor.  Delete version.
	* registry.cc: #include "version.h".
	(reg_session::reg_session): Update.
	* libccrt0.cc: #include "version.h"
	(cygwin_crt0): Delete setting of version, set magic_biscuit to 0.
	Set version_major, version_minor.
	* dcrt0.cc: #include "version.h".
	(cygwin_dll_version_{major,minor}): New static locals.
	(dll_crt0_1): Rewrite app/dll compatibility test.
	* Makefile.in (LIBCOS): Delete version.o.
	(DLL_OFILES): Delete version.o.
	(dcrt0.o,libccrt0.o,registry.o): Depend on version.h.

	* exceptions.h: New file.
	* exceptions.cc: Massive cleanups (still lots more to go).
	#include "exceptions.h".
	(init_exceptions): Renamed from __init_exceptions.  New argument of
	pointer to exception handler list entry.
	(init_exception_handler): Renamed from init_thread_exceptions.
	Rewrite based on info from Onno Hovers <onno@stack.urc.tue.nl>.
	(ppc descriptor_to_{function,gotattr}): Make static.
	(i386 __stack_trace): Fix test for top of stack.
	* dcrt0.cc: #include "exceptions.h".
	(dll_crt0_1): Exception handler list entry must live on stack.
	* winsup.h (class pinfo): Delete member myp.
	* syscalls.h (struct exception_list): Delete.
	(__really_exit, __init_exceptions): Delete.
	* Makefile.in (dcrt0.o,exceptions.o): Depend on exceptions.h.

Fri Jun  7 17:49:28 1996  Jason Molenda  (crash@phydeaux.cygnus.com)

	* dcrt0.cc (conv_path_names): Add GCC_EXEC_PREFIX.

Fri Jun  7 14:38:05 1996  Doug Evans  <dje@canuck.cygnus.com>

	* Makefile.in (CC_FOR_TARGET,LD,DLLTOOL): Define.
	(AR,RANLIB): Set via configure.
	* configure.in (AR,LD,DLLTOOL): Set.
	(AC_PROG_RANLIB): Call.
	* configure: Regenerated.

Thu Jun  6 12:11:23 1996  Kim Knuttila  <krk@cygnus.com>

	* dcrt0.cc (dll_crt0_1): Removed reference to reent_data._next.

Tue Jun  4 15:52:29 1996  Geoffrey Noer  <noer@cygnus.com>

	* include/winkernel.h: fixed typo

Tue May 28 13:08:25 1996  Doug Evans  <dje@canuck.cygnus.com>

	* syscalls.cc (_sbrk): Fix test of return value from VirtualAlloc.
	Delete lincr, make incr signed, and use only it.  Misc. minor cleanup.

Thu May 23 17:31:57 1996  Geoffrey Noer  <noer@cygnus.com>

	sac diffs applied:
	* path.h: change MAXMOUNTS to 30 instead of 20
	* sysdef/i386/rpcndr.def: add "none" to end of file
	* fhandler.cc: fix memset call to say sizeof (*buf) instead
	of sizeof (buf).
	* include/winuser.h: define MDIS_ALLCHILDSTYLES
	* Makefile.in: entry to build glob/libglob.a:

Thu May 23 10:38:43 1996  Doug Evans  <dje@canuck.cygnus.com>

	* fhandler.h (class fhandler_base): Make `name' private and shrink
	to 32 bytes.
	(set_name): Declare.
	* fhandler.cc (fhandler::set_name): New function.
	(fhander_base::open): Call it.
	(fhander_base::init): Call it.
	(fhandler_tty::ttyname): Call get_name instead of accessing `name'
	directly.

	* dcrt0.cc (dll_crt0_1): Call ExitProcess instead of exit if
	DLL and APP are out of sync.

Thu May 16 03:07:18 1996  Mark Eichin  <eichin@cygnus.com>

	* fhandler.cc (FakeReadFile): new function. Interface like
	ReadFile, only called from fhandler_console_in::read, calls
	ReadFile unless we're really reading from STD_INPUT_HANDLE and
	with ENABLE_LINE_INPUT turned off, in which case we use
	ReadConsoleInput instead. When using ReadConsoleInput, always read
	all available events, but only block if we don't get at least one
	actual character. This would be the place to implement FIONBIO on
	the console tty, which doesn't actually exist yet.
	(dbg_input_event): copied from select.cc, debugging code to show
	detail of what events we're actually getting.
	(ioctl): off-by-one on window size.

Wed May 15 18:11:16 1996  Jim Wilson  <wilson@chestnut.cygnus.com>

	* fhandler.h (class fhandler_base): Use MAXPATHLEN not 100 for size
	of array name.

Wed May 15 11:14:46 1996  Doug Evans  <dje@canuck.cygnus.com>

	* fork.cc (cygwin_fork_helper1): More debugging printf's.

	* dcrt0.cc (num_ms_env_vars): Renamed from ms_env_arity.
	(build_argv): Renamed from fill.
	(compute_argc): Renamed from prepare.
	* libccrt0.cc (cygwin_statu): Make static.
	* pproc.cc (per_process::init): Move strace initialization from here,
	* strace.cc (per_process::strace_init): To here.
	Pass FILE_SHARE_WRITE to CreateFileA.  Print error message if open
	of log file fails.  Create mutex for trace messages.
	(__sys_printf): Always write to end of disk files.  Use mutex.
	(d): Delete.
	* winsup.h (class per_process): Add strace_init.  Reorganize.
	`run_ctors' renamed to `run_ctors_p'.  New member `trace_mutex'.
	(d): Delete.
	(PATH_MAX): Delete.

	* Makefile.in: Add header file dependencies.

	* dcrt0.cc (_exit): Add debugging printf.
	* shared.h (class shared_info): Rename member mutex_a to fork_mutex.
	* fork.cc (cygwin_fork_helper1): Update.
	Return with error if process slot unavailable.
	Set errno and release fork_mutex if failed because of split heap.
	* shared.cc (shared_info::terminate): Update.
	(shared_info::initialize): Update.

Tue May 14 14:59:32 1996  Doug Evans  <dje@canuck.cygnus.com>

	* fork.cc (cygwin_fork_helper1): Avoid SIGSEGV if allocate_pid fails.

	* pproc.cc (per_process::init): Fix test.

	* winsup.h (): Rename member `parent' to `ppid'.
	* fork.cc (prepare_child): Update.
	(cygwin_fork_helper1): Likewise.
	* hinfo.cc (hmap_init_per_process): Likewise.
	(hinfo_vec::dup_for_fork): Fix message.
	(hinfo_vec::dup2): Fix args to debug_printf.  Delete extra printf's.
	* pinfo.cc (pinfo_init_per_process): Update.
	(pinfo::dump): Likewise.
	(pinfo::init_self): Likewise.
	* pproc.cc (per_process::init): Open strace file in append mode.
	* smallprintf.c (__small_vsprintf): Support %p.
	* syscalls.cc (getppid): Update.
	* wait.cc (wait_for_any): Likewise.
	
Mon May 13 13:45:36 1996  Mark Eichin  <eichin@cygnus.com>

	* fhandler.cc (ioctl): fix TIOCGWINSZ handling: (1) check the
	error return (2) if we're trying on STD_INPUT_HANDLE, substitute
	STD_OUTPUT_HANDLE since GetConsoleScreenBufferInfo only works on
	console output (3) check srWindow for the *screen* size, instead
	of checking dwSize for the scroll buffer size.

	* include/sys/errno.h (ECONNABORTED): add another errno value.
	* net.cc (errmap): add ECONNABORTED case.

	* fhandler.cc (fstat): clear the *entire* stat buf, not just the
	first four bytes.

Fri May 10 17:59:09 1996  Mark Eichin  <eichin@cygnus.com>

	* select.cc: change most debugging statements to select_printf.
 	(dbg_input_event): new function, prints an INPUT_RECORD via select
 	printf.
	(polled): Don't sleep around WaitForMultipleObjects; let it have a
 	10ms timeout until we have time to test it with 0.  If
 	WaitForMultipleObjects says that STD_INPUT_HANDLE has data, use
 	PeekConsoleInput to scan the available events. If the first one is
 	not a *bKeyDown* with a non-zero *AsciiChar* then use
 	ReadConsoleInput to rip it off the queue, and pretend it wasn't
 	there, so that later calls to read (and thus ReadFile) don't block
 	because they can't find any *real* input. (This could be optimized
	later to check the whole queue, and if there are *no* real input
	events, nuke them all.)

	* include/sys/strace.h (_STRACE_SELECT, select_printf): new printf
	category, because select needs a *lot* of work. STRACE=256 to use it.

	* fhandler.cc (fhandler_console_in::init): IGNCR can't work
 	without major changes to deal with the interaction with select
 	(which shouldn't wake up if IGNCR causes the whole input to be
 	deleted...) so don't make it the default.
	(fhandler_console_out::tcgetattr, fhandler_tty::tcgetattr): don't
 	set IGNCR based on get_r_binary either.

Wed May  8 20:20:05 1996  Mark Eichin  <eichin@cygnus.com>

	* times.cc (__to_clock_t): must cast dwLowDateTime to *unsigned*
	before adding it -- otherwise we may subtract it!
	(to_time_t): same.

Wed May  8 18:21:28 1996  Mark Eichin  <eichin@cygnus.com>

	* times.cc (corelocaltime): new function. Basic localtime from
	newlib, with no conversions.
	(gmtime): just calls corelocaltime.
	(localtime): uses GetTimeZoneInformation, biases to standard time
	first, then uses DaylightDate and StandardDate to figure out if
	we're in DST -- and calls corelocaltime a second time with the
	rebiased seconds, if we are.
	(times): add debug_printf statements which work around apparent
	compiler bug and 7+ minute error.

	* select.cc: revert to <sac>'s changes of 4/20 which were
	accidentally backed out on 4/24.

Tue May  7 05:29:42 1996  Mark Eichin  <eichin@cygnus.com>

	* times.cc (__to_clock_t): subtract out FACTOR, the difference
	between 1601 and 1970, just like to_time_t() does.

Tue May  7 01:55:06 1996  Mark Eichin  <eichin@cygnus.com>

	* times.cc (gmtime): new function. Use GetTimeZoneInformation to
	compensate ahead before calling localtime (since the newlib
	version doesn't know what timezone we're in.)
	(localtime): use SECSPERMIN, not 60, to show that we know what
	we're talking about.

	* net.cc (errmap): add WSAEADDRINUSE, WSAECONNREFUSED mappings.

Sun May  5 00:45:59 1996  Mark Eichin  <eichin@cygnus.com>

	* include/sys/socket.h: add recvfrom macro and cygwin32_recvfrom
	declaration. Remove htons/htonl misdeclarations as they collide
	with the macros in asm/byteorder.h.

	* include/asm/byteorder.h: enable the ntohl/ntohs declarations so
	we at least get the macro versions when we optimize, even if the
	library hooks aren't there.

Wed Apr 24 23:42:49 1996  Steve Chamberlain  <sac@dilithium.transmeta.com>

	* winsup.h (pinfo, pinfo_list): Remove dummy item.	
	* fork.cc (*): Revert changes of Apr 2.

Sun Apr 21 17:00:14 1996  Steve Chamberlain  <sac@slash.cygnus.com>

	* wait.cc (wait_for_any): Fix the wait heuristic.

Sat Apr 20 13:22:03 1996  Steve Chamberlain  <sac@slash.cygnus.com>

	* Makefile.in (.cc.o): Pass -fno-rtti.
	* dcrt0.cc (globify): A single match is ok.
	* exceptions.cc (i386 call_handler): optimize.
	* fhandler.cc (fhandler_console_in::read): Handle ICRNL right.
	(*:get_name *:always_ready): New.
	* select.cc: Understand that console output doesn't signal when it's
	ready.

Fri Apr 12 14:49:34 1996  Doug Evans  <dje@canuck.cygnus.com>

	* Makefile.in (glob/libglob.a): Pass -I so glob.c finds right dirent.h.

Wed Apr 10 16:13:30 1996  steve chamberlain  <sac@slash.cygnus.com>

	* Makefile.in (glob/libglob.a): Call glob makefile correctly.
	* winsup.h (pinfo, pinfo_list): Reorder elements to avoid
	alignment bug in PPC gcc.
	
Tue Apr  9 17:23:57 1996  steve chamberlain  <sac@slash.cygnus.com>

	* dcrt0.cc (globify): Expand command line wildcards if
	run from dos prompt.

	* exceptions.cc (386 call_handler): More fumblings.
	* fhandler.cc (fhandler_base::stat): Initialize ino.
	(fhandler_console::open): Fix test for RDONLY.
	(fhandler_tty::stat): Set ino.
	(fhandler_console_out::vt100 stuff): More.
	* fork.cc: Lint.
	* pinfo.cc (pinfo::init_self): Don't bother to DuplicateHandles
	to get process info.
	* signal.cc (usleep): Get correct order of magnitude.
	* spawn.cc (spawn_guts): Turn of exception handling in 
	parent of thing which execs.
	* syscalls.cc (stat): Look for <file> and <file.exe>.
	* wait.cc (wait_for_any): Keep waiting if WaitForMultipleObject
	returns invalid result.

Tue Apr  2 12:45:35 1996  steve chamberlain  <sac@slash.cygnus.com>

	* dcrt0.cc (conv_path_names): Add HOME.
	(dll_crt0_1): Use u->self->head_sp.
	* exceptions.cc (i386 call_handler): Rewritten, now almost works
	on win95.
	* fhandler.cc (fhandler_base::open): Calculate namehash.
	(fhandler_base::fstat): ^ name hash with file index low.
	* fork.cc (*): forkee/forkerr events moved from sinfo
	into pinfo.

Fri Mar 29 16:35:02 1996  steve chamberlain  <sac@slash.cygnus.com>

	* libcmain.cc: New.
	* winsup.h: restore and myp moved from per_process to pinfo class.
	* dcrt0.cc (dll_crt0_1): Cope with move.
	* exceptions.cc (init_thread_exceptions): Ditto.
	* signal.cc (sigprocmask): Ditto.
	* fork.cc (cygwin_fork_helper1): Don't fork if split_heap_p.
	* pinfo.cc (pinfo::clearout): Zero split_heap_p.
	* syscalls.cc (_sbrk): Cope with not being able to
	allocate contiguous chunks.
	

Tue Mar 26 09:14:32 1996  steve chamberlain  <sac@slash.cygnus.com>

	* exceptions.cc (__cygwin_exception_handler): re-export.

Fri Mar 22 16:49:29 1996  Michael Meissner  <meissner@tiktok.cygnus.com>

	* cygwin.din (__stack_trace): Export.
	(__cygwin_exception_handler): Ditto.

	* exceptions.cc (i386 exception handling): Move under appropriate
	x86 #ifdefs.  Use the macro HAVE_INIT_THREAD_EXCEPTIONS to be
	whatever a machine needs to do to initialize exceptions in this
	thread.  Nop for the PowerPC right now.
	(__stack_trace): Make it a "C" function so there is no name
	mangling, and export it.
	(call_handler): Split by architecture before the function, rather
	than inside it.  First stab at PowerPC exception handling.
	(__cygwin_exception_handler): Rename from ehandler3, and export
	it.  Add more status -> signal mappings.
	(ctrl_c_handler, CTRL_LOGOFF_EVENT): Map to SIGHUP, not SIGQUIT.
	(__stack_trace): Split into separate machine dependent functions,
	rather than #ifdef'ing inside of a common function.  Make the
	PowerPC messages clearer.

Mon Mar 18 13:27:05 1996  Michael Meissner  <meissner@tiktok.cygnus.com>

	* include/winkernel.h (CreateThread): Correctly declare function
	pointer argument.

	* misc.c (wprintf): Convert to use vprintf and fix warnings.
	(tgetent): Declare to return int to fix warnings.
	(vhangup): Declare to return int to fix warnings.  Return -1 also.

	* include/winbase.h (UnhandledExceptionFilter): Declare.

Tue Mar 12 12:56:28 1996  Doug Evans  <dje@charmed.cygnus.com>

	* include/winkernel.h (FlushFileBuffers): Declare.

Tue Mar 12 11:16:32 1996  Michael Meissner  <meissner@tiktok.cygnus.com>

	* exceptions.cc (dump_status): Make columns line up for PowerPC.
	(call_handler): Right now, call exit(255) for the PowerPC.

	* strace.cc (__sys_printf): Call FlushFileBuffers after writing
	out the file to make sure it really gets flushed.

	* include/winkernel.h (PowerPC CONTEXT): Add fields returned if
	CONTEXT_DEBUG_REGISTERS is set.

Sun Mar 10 15:31:17 1996  Steve Chamberlain  <sac@slash.cygnus.com>

	* strerror.cc, syslog.cc, net.cc: New files.
	* cygwin.din: Add new net functions.
	* dcrt0.cc (dll_crt0_1): Fix call to build argv[0].
	* fhandler.cc (fhandler_base::open): Tidy.
	* fhandler.h: Add net classes.
	* hinfo.cc (hinfo_vec::build_fhandler): Add tape stuff.
	* path.cc (*::mangle, *::reverse_mangle): Fix.
	(mount_info::init): No trailing / now.
	* select.cc (*): Rewrite.
	* spawn.cc (spawn_guts): Fix leak.
	* syscalls.cc (_sbrk): Keep working until memory really fills up.

Tue Feb 20 16:53:24 1996  Steve Chamberlain  <sac@slash.cygnus.com>

	* dcrt0.cc (dll_crt0_1): Get version from the header.
	* fhandler.cc (CHUNK_SIZE): New.
	(fhandler_base::read, fhandler_base::write): CRLF conversion
	rewritten.
	path.cc (path_conv::path_conv): Initialize mixed, binary and silent.
	* smallprint.c (__small_vsprintf): Add 'c' option.
	* wait.cc (wait_found): Close child handles.
	
Mon Feb 19 09:11:57 1996  Michael Meissner  <meissner@tiktok.cygnus.com>

	* Makefile.in (real-headers): Eliminate real-headers dependency on
	mspatches/*.patch, since you can't be guaranteed that it exists.

Fri Feb 16 14:24:47 1996  Michael Meissner  <meissner@tiktok.cygnus.com>

	* exceptions.cc (dump_status): On the PowerPC, dump all of the
	integer registers.

	* uname.c (uname): Don't assume that the only two NT systems are
	i386 and PowerPC.
	* exceptions.cc (call_handler): Ditto.
	(dump_status): Ditto.

Thu Feb 15 18:20:33 1996  Steve Chamberlain  <sac@slash.cygnus.com>

	* cygwin.din (__empty): Add.
	* dcrt0.cc (dos_argv_to_unix_argv): New.
	(check, onetimecheck): New.
	* exceptions.cc (ehandler3): Always show backtrace
	if exception failed.
	* fhandler.cc (*::open): Removed dos_path argument.  
	(fhandler_base::fstat): Use nFileIndexLow as the inode
	value.
	* hinfo.cc (init_std_file_from_handle): Don't default
	to binary.
	* paths.cc (*): Use new registry classes.
	* registry.cc (*): Rewritten.
	* syscalls.cc (open): Call fhandler->open without
	the dos filename arg.

Sat Feb 10 08:18:45 1996  Michael Meissner  <meissner@tiktok.cygnus.com>

	* configure.in (ALLOCA for powerpc): Add __allocate_stack.

Wed Feb  7 16:41:18 1996  Steve Chamberlain  <sac@slash.cygnus.com>

	Release-B13

	* malloc.cc (export_*): New.  Changed the way that malloc
	stubs are used.
	* cygwin.din: Export the export_* stuff as malloc, realloc and free.
	* path.cc (link_cookie::create): Keep cookie filenames in unix
	format.
	(reverse_mangle): Clean up.
	(readlink): Ditto.
	(qfunc): Sort by name too.
	* spawn.cc (spawn_guts): Handle zero length arg.
	Only set errno when it's not 0.
	* Makefile.in: Build new doc.
	* fhandler.cc (fhandler_base::fstat): Round up block used.
	* path.cc (escape_char): Now it's ^.
	* syscalls.cc (errmap): ERROR_INVALID_NAME yields ENOENT.
	(chown): Returns 0.
	(sbrk): Clean up.
	(_unlink): Only try and DeleteFile once.
	
Mon Feb  5 19:15:44 1996  Steve Chamberlain  <sac@slash.cygnus.com>

	* dcrt0.cc  (dll_crt0_1): Build env string into static buffer.
	* dirsearch.c (opendir): Stat on unix pathname.
	* paths.cc (*): Support for mixed case filenames.

Sun Feb  4 15:55:58 1996  Steve Chamberlain  <sac@slash.cygnus.com>

	* *.cc: Lint.
	(conv_path_names): New.
	(dll_crt0_1): Use conv_path_names list.
	* fctnl.cc (F_DUPFD): Look from the fd forward.
	* fhandler.cc (fhandler_base::open): Understand binary modes.
	(fhandler_console_in::init): Call tcsetattr with reasonable start
	values.
	* spawn.cc (spawn_guts): Use conv_path_names.
	(queue_file_deletion): Deleted.
	(unlink): Use new queue file stuff.
	* delqueue.cc, delqueue.h: New files.
	* shared.h: New file.

Wed Jan 31 11:12:24 1996  Steve Chamberlain  <sac@slash.cygnus.com>

	* crt0.cc: Hacks to probe out ppc stack.
	* exceptions.cc (ehander3): Don't use 386 context info on the ppc.
	* path.cc (mount_info::mangle): Turn /usi or /usp into /usr.
	* uname.c (uname): Change sysname and get ppc name right.

Fri Jan 26 15:47:31 1996  Steve Chamberlain  <sac@slash.cygnus.com>

	* pproc.cc (per_process::init): Cope when no memory is needed.
	* Makefile.in, configure.in: Cope with config directory.
	* setjmp.c, longjmp.c: Moved into config/i386.
	* config/ppc/setjmp.S, config/ppc/longjmp.S: New.
	
Fri Jan 26 14:57:33 1996  Jason Molenda  (crash@phydeaux.cygnus.com)

	* Makefile.in (DLL_OFILES): removed ppc-stub.o
	ppc-stub.c: Removed.
	configure: regenerated with autoconf 2.7.

Fri Jan 26 11:18:07 1996  Kim Knuttila  <krk@cygnus.com>

	* Makefile.in (DLL_OFILES): added ppc-stub.o

Thu Jan 25 09:33:24 1996  Steve Chamberlain  <sac@slash.cygnus.com>

	* malloc.cc (malloc, free, realloc): Hack for ppc.

Wed Jan 24 20:22:42 1996  Steve Chamberlain  <sac@slash.cygnus.com>

	* cygwin.dll (loadup_dll): Remove.
	* dcrt0.cc: lint.
	* fhandler.* (*): Move to new class structure.
	* hinfo.cc: Use new fhandler glue.
	* libcfork.cc: Cope with ppc naming convention.

Mon Jan 22 10:33:53 1996  Steve Chamberlain  <sac@slash.cygnus.com>

	* fhandler.h, hinfo.h: New files.
	* winsup.h: Split from here.
	* configure.in: Set i386 entry point correctly.
	* fhandler.cc (fhandler_normal:open): .com files
	are executable too.
	* hinfo.cc (init_std_file_from_handle): Inspect
	master_fmode_binary.
	* misc.cc (wcscmp,  wcslen): New.
	* dcrt0.cc (probe): Change way a forkee's stack is allocated.
	* pproc.cc (per_process::init): Initialize using heap chunk.
	* shared.cc (shared_info::initialize): Initialize heap chunk.
	* syscalls.cc (_sbrk): If current chunk is used, allocate another.
	* wait.cc (wait_found): Fix exit code.
	
Thu Jan 18 10:09:45 1996  Steve Chamberlain  <sac@slash.cygnus.com>

	* fhandler.cc (fhandler_normal::open) Don't test a
	com port to see if it's executable.
	* configure.in, cygwin.din: More powerpc configury.

Wed Jan 17 16:25:36 1996  Steve Chamberlain  <sac@slash.cygnus.com>

	* configure.in, Makefile.in: Build powerpc stuff.
	* hinfo.cc (build_fhandler): Use new with placement.
	(fhandler::operator new): New.

Wed Jan  3 18:18:57 1996  steve chamberlain  <sac@slash.cygnus.com>

	* select.cc: New file.
	* Makefile.in: Cope with it.

Tue Jan  2 08:58:58 1996  steve chamberlain  <sac@slash.cygnus.com>

	* version.c: New file.
	* Makefile.in: Cope with it.
	* cygwin.def (setgrent, cuserid, setpgrp, mount, setmntent, endmntent, umount): New.
	* dcrt0.cc:  Remove obsolete vfork stuff.
	(dll_crt0): Change way environ is built.  Check that app is built
	with correct version of dll.
	* dirsearch.cc, exceptions.cc: Lint.
	* fhandler.cc: Lint. Most of termios.c moved into here.
	(fhandler_console:*): New.
	* hinfo.cc (hinfo_vec::init_std_file_from_handle):  Open stdfiles as consoles
	if possible.
	* libccrt0.cc: Lint.
	* malloc.cc: More comments.
	* path.cc (*):  Cope with mount handling.
	* registry.cc: Lint. 
	(reg_session): New.
	* shared.cc: Lint.
	* signal.cc (usleep): New.
	* spawn.cc: Lint.  Removed vfork stuff.
	* stubs.c (getmntent, endgrent): Deleted.
	* syscalls.c (__seterrno): Now takes arguments.
	* termios.c: Much moved info fhandler.c	
	* times.cc (utime, utimes): New.
	* uinfo.c (cuserid): New.
