4491 lines
		
	
	
		
			176 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
			
		
		
	
	
			4491 lines
		
	
	
		
			176 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
| Thu Dec 31 16:50:32 1998  DJ Delorie  <dj@cygnus.com>
 | |
| 
 | |
| 	* mmap.cc: replaced all references to libstdc++ templates with
 | |
| 	inline classes to remove build dependency on libstdc++
 | |
| 
 | |
| Thu Dec 31 00:02:40 1998  Geoffrey Noer  <noer@cygnus.com>
 | |
| 
 | |
| 	* sysdef/uuid.def: remove useless stub.
 | |
| 	* sysdef/oldnames.def: ditto.
 | |
| 	* sysdef/largeint.def: ditto.
 | |
| 	* sysdef/rpcndr.def: ditto.
 | |
| 
 | |
| Wed Dec 30 20:33:09 1998  Geoffrey Noer  <noer@cygnus.com>
 | |
| 
 | |
| 	* utils/cygcheck.cc: clean up misc. warnings relating to
 | |
| 	signed vs. unsigned, char * vs. const char *, etc...
 | |
| 
 | |
| Wed Dec 30 21:41:25 1998  Christopher Faylor <cgf@cygnus.com>
 | |
| 
 | |
| 	* dcrt0.cc (do_exit): Remove previous dwProcessId
 | |
| 	change as it presumes too much knowledge about signalling
 | |
| 	in the wrong place in the code.
 | |
| 	* sigproc.cc (sigproc_terminate): Move the dwProcessId
 | |
| 	assignment here but only do it when it is necessary or
 | |
| 	programs will die abnormally.
 | |
| 	* fhandler.h: Add raw_write method to fhandler_serial.
 | |
| 	* fhandler_serial.cc (raw_write): New method.  Accommodates
 | |
| 	overlapped I/O that now must be used with serial.
 | |
| 	* utils/kill.cc (main): Allow `0' signal.  Just checks
 | |
| 	for existence of process.
 | |
| 
 | |
| Wed Dec 30 00:01:18 1998  Geoffrey Noer  <noer@cygnus.com>
 | |
| 
 | |
| 	* include/cygwin/version.h: bump API_MINOR to 8 to mark
 | |
| 	recently exported _ctype_, _sys_errlist, _sys_nerr.  Briefly
 | |
| 	describe all API_MINOR changes to date.
 | |
| 
 | |
| Wed Dec 30 01:31:34 1998  Christopher Faylor <cgf@cygnus.com>
 | |
| 
 | |
| 	* dcrt0.cc (do_exit): Set myself->dwProcessId so that
 | |
| 	some exit routines will not falsely believe that this
 | |
| 	process has been execed.
 | |
| 	* select.cc (peek_serial): Remove debugging statements.
 | |
| 	* sigproc.cc (sigproc_terminate): Detect state where
 | |
| 	myself->dwProcessId == 0 as indicative of not being
 | |
| 	an exec stub.
 | |
| 
 | |
| Tue Dec 29 21:13:33 1998  Christopher Faylor <cgf@cygnus.com>
 | |
| 
 | |
| 	* dcrt0.cc (alloc_stack_hard_way): Fix a couple of thinkos
 | |
| 	in calculating size of the new stack.  Just use the size
 | |
| 	passed from the parent.
 | |
| 	(dll_crt0_1): Set up new frame pointers here, if appropriate.
 | |
| 	* fork.cc (fork): Move frame pointer setup into dll_crt0_1.
 | |
| 
 | |
| Tue Dec 29 12:57:38 1998  Geoffrey Noer  <noer@cygnus.com>
 | |
| 
 | |
| 	* utils/mkpasswd.c: Include wchar.h.
 | |
| 	* utils/mkgroup.c: Ditto.
 | |
| 
 | |
| Tue Dec 29 12:53:23 1998  Geoffrey Noer  <noer@cygnus.com>
 | |
| 
 | |
| 	* Makefile.in: remove dep for libcerr.o
 | |
| 
 | |
| Mon Dec 28 22:02:15 1998  Christopher Faylor <cgf@cygnus.com>
 | |
| 
 | |
| 	* fhandler.h: Make fhandler_serial io_status public since
 | |
| 	select needs it.  Add 'saw_error' field to select_record so
 | |
| 	that select can detect error conditions.
 | |
| 	* fhandler_serial.cc (fhandler_serial::raw_read): Detect
 | |
| 	"operation aborted" error and retry.  This seems to indicate
 | |
| 	an attempt to retry an overlapped operation.
 | |
| 	* select.cc (select_stuff::wait): Honor saw_error field when
 | |
| 	appropriate.
 | |
| 	(peek_serial): Rewrite to operate similarly to
 | |
| 	fhandler_serial::raw_read.
 | |
| 	* include/sys/termios.h: CBAUD mask was still not right.
 | |
| 
 | |
| Mon Dec 28 09:09:27 1998  Christopher Faylor <cgf@cygnus.com>
 | |
| 
 | |
| 	* libcerr.cc: Make obsolete.  Move into errno.cc
 | |
| 	* libctype.c: Make obsolete.  Use newlib table.
 | |
| 	* Makefile.in: Remove obsolete entries from LIBCOS.  Define
 | |
| 	__INSIDE_CYGWIN__ explicitly for .c -> .o compilation.
 | |
| 	* cygwin.din: New exports: _ctype_, _sys_errlist, _sys_nerr.
 | |
| 	* errno.cc: Move _sys_errlist and _sys_nerr here.
 | |
| 	* dlfcn.cc: Reorganize includes to put ctype.h after winsup.h
 | |
| 	so that __INSIDE_CYGWIN__ will be defined for use in ctype.h.
 | |
| 	* fhandler_console.cc: Ditto.
 | |
| 	* fhandler_tty.cc: Ditto.
 | |
| 	* path.cc: Ditto.
 | |
| 	* spawn.cc: Ditto.
 | |
| 
 | |
| Sat Dec 26 00:20:48 1998  Christopher Faylor <cgf@cygnus.com>
 | |
| 
 | |
| 	patch from Corinna Vinschen <corinna.vinschen@cityweb.de>:
 | |
| 	* include/Windows32/CommonFunction.h: Added proto for
 | |
| 	NetUserChangePassword().
 | |
| 
 | |
| Thu Dec 24 16:15:40 1998  Christopher Faylor <cgf@cygnus.com>
 | |
| 
 | |
| 	* dcrt0.cc (dll_crt0_1): Add more debugging output.
 | |
| 	* ioctl.cc (ioctl): Can't use TC[GS]ET ioctls for pty master as
 | |
| 	it conflicts with TIOCPKT.
 | |
| 	* passwd.cc (passwd): Bypass tc[gs]etattr call in favor of appropriate
 | |
| 	method or conversion confusion will result due to attempts to
 | |
| 	appropriately convert to old-style termios structures in tc[gs]etattr.
 | |
| 	* strace.cc (strace_vsprintf): Define t explicitly.
 | |
| 	* termios.cc (tcsetattr): Reorganize to allow meaningful debugging
 | |
| 	output.
 | |
| 	(tcgetattr): Ditto.
 | |
| 
 | |
| Wed Dec 23 15:02:11 1998  Christopher Faylor <cgf@cygnus.com>
 | |
| 
 | |
| 	* winsup.h: Reorganize include order to allow thread-safe build.
 | |
| 
 | |
| Wed Dec 23 11:45:33 1998 DJ Delorie  <dj@cygnus.com>
 | |
| 
 | |
| 	* strace.cc (strace_microseconds): new function; returns elapsed
 | |
| 	time in microseconds, using performance counters if available.
 | |
| 	(strace_vsprintf): print timestamps and deltas as microseconds,
 | |
| 	not seconds.
 | |
| 
 | |
| Wed Dec 23 11:35:02 1998 DJ Delorie  <dj@cygnus.com>
 | |
| 
 | |
| 	* times.cc (__to_clock_t): Change return value to unsigned long
 | |
| 	long to prevent overflow.
 | |
| 
 | |
| Tue Dec 22 19:37:55 1998  Christopher Faylor <cgf@cygnus.com>
 | |
| 
 | |
| 	* fhandler.h: Reflect fhandler_*::init argument reordering.
 | |
| 	Add dup and init methods to fhandler_serial.
 | |
| 	* fhandler.cc (fhandler_base::init): Reorder arguments to mirror
 | |
| 	open().
 | |
| 	* fhandler_console.cc (fhandler_console::init): Ditto.  Initialize
 | |
| 	using fhandler_base rather than fhandler_serial as console is
 | |
| 	now being slowly uncouple from fhandler_serial.
 | |
| 	* fhandler_serial.cc (fhandler_serial::fhandler_serial): Set size
 | |
| 	of data structure or suffer strange behavior on exec().
 | |
| 	(raw_read): Add debugging output.
 | |
| 	(fhandler_serial::init): New method.
 | |
| 	(fhandler_serial::open): Detect call from init method and avoid
 | |
| 	calling fhandler_base::open.  Don't worry about non-blocking reads
 | |
| 	since they are now handled correctly by _read().
 | |
| 	(fhandler_serial::tcsetattr): Honor ICANON in a kludgey sort of way.
 | |
| 	(fhandler_serial::tcgetattr): Ditto.
 | |
| 	(fhandler_serial::dup): New method.  Ensures duplication of all
 | |
| 	elements of fhandler_serial class.
 | |
| 	* fhandler_tty.cc (fhandler_tty_master::init): Reflect init argument
 | |
| 	reordering.
 | |
| 	(fhandler_tty_slave::init): Ditto.
 | |
| 	* hinfo.cc (hinfo::init_std_file_from_handle): Remove unnecessary
 | |
| 	argument.
 | |
| 	(hinfo_init): Reflect change to init_std_file_from_handle.
 | |
| 	(cygwin_attach_handle_to_fd): Use more appropriate types for
 | |
| 	arguments.
 | |
| 	(hinfo::build_fhandler): Add some slop to allocated buffer just
 | |
| 	for paranoia's sake.
 | |
| 	(hinfo::dup2): Avoid dereferencing a NULL pointer when oldfd==newfd.
 | |
| 	* pipe.cc (make_pipe): Reflect init argument change.
 | |
| 	* shared.h: Another immigrant from winsup.h
 | |
| 	* winsup.h: Reflect change to init_std_file_from_handle.  Relocate
 | |
| 	a declaration to shared.h so that it can be used in fhandler.h.
 | |
| 	* include/sys/cygwin.h: Reflect change to cygwin_attach_handle_to_fd.
 | |
| 
 | |
| Mon Dec 21 16:22:48 1998  Christopher Faylor <cgf@cygnus.com>
 | |
| 
 | |
| 	* fhandler.cc (fhandler_base::open): Detect serial device as a special
 | |
| 	case requiring an overlapped open.
 | |
| 	* fhandler.h (fhandler_serial): Add several methods.  Add new 'fixup after
 | |
| 	fork required' field.
 | |
| 	* fhandler_serial.cc (raw_read): Rewrite to come closer to handling VMIN
 | |
| 	VTIME parameters and to allow EINTR.
 | |
| 	(fhandler_serial::open): Initialize overlapped event here.  Make error
 | |
| 	messages more explicit.
 | |
| 	(fhandler_serial::close): Close status event.
 | |
| 	(fhandler_serial::tcsetattr): Store vtime_ as milliseconds.  Attempt to
 | |
| 	handle VMIN > 0, VTIME == 0 better.
 | |
| 	(fhandler_serial::fixup_after_fork): Initialize a new event handle after
 | |
| 	a fork.
 | |
| 	(fhandler_serial::de_linearize): Ditto.
 | |
| 	* hinfo.cc (hinfo::fixup_after_fork): Call fork fixer upper if close_on_exec
 | |
| 	of need_fork_fixup set.
 | |
| 
 | |
| Sun Dec 20 16:05:25 1998  Geoffrey Noer  <noer@cygnus.com>
 | |
| 
 | |
| 	* include/shellapi.h: replace with stub that includes windows.h
 | |
| 	like similar headers already do.
 | |
| 	* scandir.cc (scandir): add parens around assignment used as truth
 | |
| 	value.
 | |
| 
 | |
| Sat Dec 19 00:42:44 1998  Christopher Faylor <cgf@cygnus.com>
 | |
| 
 | |
| 	* thread.cc: Fix copyright info.
 | |
| 	* thread.h: Ditto.
 | |
| 	* libcmain.cc: gcc is now more picky about requiring a type
 | |
| 	for main(), so add one.
 | |
| 	* include/pthread.h: Add attribution for net contributor.
 | |
| 
 | |
| Fri Dec 18 19:21:30 1998  Geoffrey Noer  <noer@cygnus.com>
 | |
| 
 | |
| 	* pthread.cc: fix copyright header.
 | |
| 	* shared.h: ditto.
 | |
| 
 | |
| Fri Dec 18 19:21:30 1998  Geoffrey Noer  <noer@cygnus.com>
 | |
| 
 | |
| 	patch from Corinna Vinschen <corinna.vinschen@cityweb.de>:
 | |
| 	* cygwin.din: export scandir and alphasort.
 | |
| 	* Makefile.in: add scandir.o to deps
 | |
| 	* scandir.cc: New file with scandir and alphasort implementations.
 | |
| 	* include/cygwin/version.h: bump API_MINOR to 7.
 | |
| 
 | |
| Fri Dec 18 16:44:07 1998  Geoffrey Noer  <noer@cygnus.com>
 | |
| 
 | |
| 	* include/pthread.h: clean up, remove C++-style comments,
 | |
| 	remove pthread_getsequence_np proto.
 | |
| 
 | |
| Fri Dec 18 15:26:33 1998  Christopher Faylor <cgf@cygnus.com>
 | |
| 
 | |
| 	Throughout, prepend cygwin_ to functions that are exported
 | |
| 	as cygwin_* which previously needed to be aliased.
 | |
| 
 | |
| 	* path.cc (cygwin_conv_to_win32_path): Resolve symbolic links.
 | |
| 	Return success or failure value.
 | |
| 	(cygwin_conv_to_full_win32_path): Ditto.
 | |
| 	(cygwin_conv_to_posix_path): Return success or failure value.
 | |
| 	(cygwin_win32_to_posix_path_list): Ditto.
 | |
| 	(cygwin_posix_to_win32_path_list): Ditto.
 | |
| 	* shared.h: New include file that incorporates parts of
 | |
| 	winsup.h, fhandler_tty.h, path.h, and delqueue.h.
 | |
| 	* Makefile.in: Remove old include files.
 | |
| 	* cygwin.din: cygwin_* aliases are no longer required.
 | |
| 	* libccrt0.cc: Store api_minor in per_process structure.
 | |
| 	* select.cc: Change meaning of second argument to ready_for_read
 | |
| 	to indicate whether read_ahead should be ignored.
 | |
| 	* fhandler.h: Reflect change in second argument to ready_for_read.
 | |
| 	* syscalls.cc (_read): Ditto.
 | |
| 	* termios.cc: Throughout, detect attempt to use old style termios
 | |
| 	structure and convert as appropriate.
 | |
| 	* ioctl.cc (ioctl): Detect use of ioctl requiring termios field
 | |
| 	and call appropriate tc[gs]et* function to handle it.
 | |
| 	* fhandler_console.cc (fhandler_console::ioctl): Remove TC* calls
 | |
| 	that are now handled in main ioctl.
 | |
| 	* fhandler_tty.cc (fhandler_tty_slave::ioctl): Ditto.
 | |
| 	* include/cygwin/version.h: Added TERMIOS defines.  Bump API_MINOR
 | |
| 	to 6.
 | |
| 	* include/sys/cygwin.h: Reflect change in return value for some
 | |
| 	cygwin_conv_* calls.
 | |
| 	* include/sys/termios.h: Reformat slightly.  Add conversion macros
 | |
| 	for dealing with old style termios structure.
 | |
| 	* include/pthread.h: add
 | |
| 
 | |
| Fri Dec 18 15:03:33 1998  Christopher Faylor <cgf@cygnus.com>
 | |
| 
 | |
| 	* Makefile.in: Cleanup pthread usage.
 | |
| 
 | |
| Fri Dec 18 14:35:59 1998  Christopher Faylor <cgf@cygnus.com>
 | |
| 
 | |
| 	* Makefile.in: Remove obsolete header dependency for
 | |
| 	thread-safe build.
 | |
| 
 | |
| Fri Dec 18 14:16:04 1998  Christopher Faylor <cgf@cygnus.com>
 | |
| 
 | |
| 	* exceptions.cc (sig_handle): Avoid suspending top-level
 | |
| 	processes.
 | |
| 	* trace.cc: Remove unneeded include.
 | |
| 
 | |
| Thu Dec 17 19:19:53 1998  Geoffrey Noer  <noer@cygnus.com>
 | |
| 
 | |
| 	* cygwin.din: remove pthread_getsequence_np, _reent_clib
 | |
| 
 | |
| Thu Dec 17 16:48:15 1998  Geoffrey Noer  <noer@cygnus.com>
 | |
| 
 | |
| 	* include/cygwin/version.h: correct two typos in comments
 | |
| 
 | |
| Thu Dec 17 19:11:31 1998  Christopher Faylor <cgf@cygnus.com>
 | |
| 
 | |
| 	patch from Corinna Vinschen <corinna.vinschen@cityweb.de>:
 | |
| 	* include/Windows32/Defines.h: Add values for using Windows
 | |
| 	function `DeviceIoControl()'.
 | |
| 
 | |
| Thu Dec 17 18:00:34 1998  Christopher Faylor <cgf@cygnus.com>
 | |
| 
 | |
| 	* dcrt0.cc (dll_crt0_1): exception_list is not a struct.
 | |
| 	* debug.cc (thread_stub): Ditto.
 | |
| 
 | |
| Thu Dec 17 08:24:37 1998  Christopher Faylor <cgf@cygnus.com>
 | |
| 
 | |
| 	* cygwin.din: Remove leading underscores from pthread functions.
 | |
| 	* include/cygwin/version.h: Bump DLL major version to 21, DLL minor
 | |
| 	version to 0, and API_MINOR to 5.
 | |
| 
 | |
| Wed Dec 16 22:54:16 1998  Christopher Faylor <cgf@cygnus.com>
 | |
| 
 | |
| 	Merge in thread-safe branch changes.
 | |
| 
 | |
| Wed Dec 16 22:54:16 1998  Christopher Faylor <cgf@cygnus.com>
 | |
| 
 | |
| 	* pthread.cc: Include winsup.h.
 | |
| 
 | |
| Wed Dec 16 22:54:16 1998  Christopher Faylor <cgf@cygnus.com>
 | |
| 
 | |
| 	* thread.cc: Reformat.
 | |
| 	* pthread.cc: New file.
 | |
| 	* cygwin.din: Add pthread interface functions
 | |
| 
 | |
| Wed Dec 16 22:54:16 1998  Christopher Faylor <cgf@cygnus.com>
 | |
| 
 | |
| 	* configure.in: Add some --enable options.
 | |
| 	* configure: Regenerate.
 | |
| 	* Makefile.in: Reorganize CFLAGS to recognize new --enable options.
 | |
| 
 | |
| Wed Dec 16 22:54:16 1998  Christopher Faylor <cgf@cygnus.com>
 | |
| 
 | |
| 	* fork.cc (stack_base): Store slightly different information
 | |
| 	in child_info_fork structure for later use in alloc_stack_hard_way.
 | |
| 	(fork): Set frame pointer information if stack has been reallocated.
 | |
| 	* dcrt0.cc (alloc_stack_hard_way): Reflect change in
 | |
| 	child_info_fork structure.
 | |
| 	(dll_crt0_1): Make thread initializers "static" and NO_COPY or death
 | |
| 	of the main thread causes death of other threads.
 | |
| 	* winsup.h (child_info_fork): Change structure.
 | |
| 
 | |
| Wed Dec 16 22:54:16 1998  Christopher Faylor <cgf@cygnus.com>
 | |
| 
 | |
| 	* thread.h: Remove extraneous declaration.
 | |
| 	* include/sys/strace.h: Make a new thread_printf function
 | |
| 	for use by new thread-safe code.
 | |
| 	* thread.cc: Use thread_printf throughout.
 | |
| 
 | |
| Wed Dec 16 22:54:16 1998  Christopher Faylor <cgf@cygnus.com>
 | |
| 
 | |
| 	patch from Marco Fuykschot (marco@ddi.nl)
 | |
| 	* Throughout sources add locking control for preliminary
 | |
| 	thread-safe cygwin operation.
 | |
| 
 | |
| Wed Dec 16 22:54:16 1998  Christopher Faylor <cgf@cygnus.com>
 | |
| 
 | |
| 	* dcrt0.cc (getprogname): Should be a static.
 | |
| 	(alloc_stack): Extend to allow forking from another
 | |
| 	thread.
 | |
| 	(alloc_stack_hard_way): New function used by alloc_stack.
 | |
| 	(dll_crt0_1); Don't pass parameters since stack may be
 | |
| 	"funny".  Use statics instead.  Move fork/spawn checking
 | |
| 	into dll_crt0.
 | |
| 	(dll_crt0): Do fork spawn checking here.  alloc_stack()
 | |
| 	will call dll_crt0_1 if forked from a non-main thread.
 | |
| 	* fork.cc (stack_base): New function determines base
 | |
| 	(and other values) of this thread's stack.
 | |
| 	(fork): Use new PROC_FORK1 method for forking.  Provides
 | |
| 	more data to forkee.  Use stack_base to set stack
 | |
| 	values.
 | |
| 	* winsup.h (child_info_fork): Changes for PROC_FORK1.
 | |
| 
 | |
| Wed Dec 16 16:15:29 1998  Geoffrey Noer  <noer@cygnus.com>
 | |
| 
 | |
| 	* include/shellapi.h: fix typo in DragQueryPoint proto.
 | |
| 
 | |
| Mon Dec 14 12:37:43 1998  Geoffrey Noer  <noer@cygnus.com>
 | |
| 
 | |
| 	* net.cc: minor respacing
 | |
| 	(get_ifconf): new local function, combines get_winnt_ifconf and
 | |
| 	get_win95_ifconf.
 | |
| 	(get_win95_ifconf): delete
 | |
| 	(get_winnt_ifconf): delete
 | |
| 	(fhandler_socket::ioctl): adjust ifconf calls in light of above,
 | |
| 	check returned value for safety.
 | |
| 	* include/cygwin/version.h: bump CYGWIN_VERSION_API_MINOR to 4
 | |
| 	in honor of newly supported socket ioctls.
 | |
| 
 | |
| 	patch from Corinna Vinschen <corinna.vinschen@cityweb.de>:
 | |
| 	* include/asm/socket.h: Added defines for ioctl() calls
 | |
| 	SIOCGIFADDR, SIOCGIFBRDADDR and SIOCGIFNETMASK.
 | |
| 	* net.cc (get_winnt_ifconf): Check the registry entries
 | |
| 	instead of just calling get_win95_ifconf(). Added what argument
 | |
| 	to support the new ioctl() calls.
 | |
| 	(get_win95_ifconf): Check the Windows 9x registry entries as
 | |
| 	described by Tim Newsham.
 | |
| 	(fhandler_socket::ioctl): Support the ioctl() commands
 | |
| 	SIOCGIFADDR, SIOCGIFBRDADDR and SIOCGIFNETMASK.
 | |
| 	(get_if_flags): Check for a down interface.
 | |
| 
 | |
| Wed Dec  9 18:11:31 1998  Geoffrey Noer  <noer@cygnus.com>
 | |
| 
 | |
| 	* fhandler.cc (fhandler_disk_file::open): check for shell scripts
 | |
| 	regardless of Win32 OS type.
 | |
| 
 | |
| Sun Dec  6 19:38:11 1998  Christopher Faylor <cgf@cygnus.com>
 | |
| 
 | |
| 	patch from Corinna Vinschen <corinna.vinschen@cityweb.de>:
 | |
| 	* fhandler_console.cc (fhandler_console::tcgetattr): Fix typo.
 | |
| 	ISIG should be ored with c_lflag.
 | |
| 
 | |
| Tue Dec  1 16:28:56 1998  Geoffrey Noer  <noer@cygnus.com>
 | |
| 
 | |
| 	* include/utmp.h: delete, moved to newlib/libc/sys/cygwin/sys.
 | |
| 
 | |
| Thu Dec  3 15:41:51 1998  Geoffrey Noer  <noer@cygnus.com>
 | |
| 
 | |
| 	Released 20.1 update.
 | |
| 
 | |
| Thu Dec  3 22:24:18 1998  Christopher Faylor <cgf@cygnus.com>
 | |
| 
 | |
| 	* exceptions.cc (set_process_mask): Add `sync' parameter
 | |
| 	to control whether signals should be synched on exit.
 | |
| 	(handle_sigsuspend): Provide second argument to set_process_mask -
 | |
| 	don't sync.
 | |
| 	(call_handler): Ditto for asm handler.
 | |
| 	* signal.cc (sigprocmask): Ensure that signals are synchronized
 | |
| 	by calling set_process_mask with sync == 1.
 | |
| 	* sigproc.cc (__release_signal_mutex): Third argument is not
 | |
| 	strictly a BOOL, so change it.
 | |
| 	* sigproc.h: Reflect above parameter changes.
 | |
| 
 | |
| Thu Dec  3 15:30:44 1998  Christopher Faylor <cgf@cygnus.com>
 | |
| 
 | |
| 	* select.cc (peek_console): Work around NT bug that
 | |
| 	caused strange behavior with ReadFile after this
 | |
| 	function was invoked.
 | |
| 
 | |
| Tue Dec  1 14:43:35 1998  Christopher Faylor <cgf@cygnus.com>
 | |
| 
 | |
| 	* sigproc.cc (sigproc_init): Set maintid and signal_mutex early
 | |
| 	to avoid races in wait_sig initialization.
 | |
| 	(__get_signal_mutex): Improve debug output.
 | |
| 	(__release_signal_mutex): Ditto.
 | |
| 	* spawn.cc (spawn_guts): Allocate more space for string when building
 | |
| 	up from #! and absolute path is not known.  Otherwise weird stuff
 | |
| 	like infinite recursion or unknown file errors occur.
 | |
| 
 | |
| Tue Dec  1 08:34:18 1998  Christopher Faylor <cgf@cygnus.com>
 | |
| 
 | |
| 	* mkvers.sh: Accommodate lack of timezone in date output so that
 | |
| 	year shows up correctly.
 | |
| 
 | |
| Mon Nov 30 14:30:51 1998  Jeff Johnston  <jjohnstn@cygnus.com>
 | |
| 
 | |
| 	* times.cc (times): Altered function so that on non-Windows-NT systems
 | |
| 	it does not use the GetProcessTimes() API which is not supported.
 | |
| 
 | |
| Mon Nov 30 00:38:54 1998  Christopher Faylor <cgf@cygnus.com>
 | |
| 
 | |
| 	* dcrt0.cc: Fix incorrect use of struct on exception_list
 | |
| 	typedef.
 | |
| 	* debug.cc (thread_stub): Ditto.
 | |
| 	* dll_init.cc: Ditto.
 | |
| 	* include/Windows32/Structures.h: Correct typo where
 | |
| 	typedef SYSTEM_POWER_STATUS was being used as a struct.
 | |
| 
 | |
| Sun Nov 29 22:03:17 1998  Christopher Faylor <cgf@cygnus.com>
 | |
| 
 | |
| 	patch from Corinna Vinschen <corinna.vinschen@cityweb.de>:
 | |
| 	* fhandler_console.cc (fhandler_console::ioctl):
 | |
| 	Added ioctl commands TCGETA, TCSETA, TCSETAW, TCSETAF.
 | |
| 
 | |
| Fri Nov 27 22:30:58 1998  Christopher Faylor <cgf@cygnus.com>
 | |
| 
 | |
| 	* fhandler.h: Set aside NOEINTR bit.  When this is set
 | |
| 	cygwin will not allow the read on this device to be
 | |
| 	interrupted by a signal.
 | |
| 	* pipe (_pipe): Set NOEINTR bit for read end of pipes
 | |
| 	created using this method.  The vague rationale for this
 | |
| 	is that these pipes are supposed to be more like Windows
 | |
| 	pipes than UNIX pipes.
 | |
| 	* syscalls.cc (_pipe): Honor NOEINTR flag.
 | |
| 	* getopt.c: Clean up some gcc warnings.
 | |
| 	* libcerr.c: Ditto.
 | |
| 
 | |
| Fri Nov 27 21:56:03 1998  Christopher Faylor <cgf@cygnus.com>
 | |
| 
 | |
| 	* exceptions.cc (SIG_NONMASKABLE): Update for new signal
 | |
| 	mask method.
 | |
| 	(handle_sigsuspend): Release of signal mutex must be
 | |
| 	synchronous -- the signal must be delivered before the
 | |
| 	function returns.  Otherwise, there will be races in
 | |
| 	the caller code.
 | |
| 	* sigproc.cc (sigproc_terminate): Minor cleanup.
 | |
| 
 | |
| Thu Nov 26 20:26:17 1998  Christopher Faylor <cgf@cygnus.com>
 | |
| 
 | |
| 	* exceptions.cc (call_handler): Attempt to work around
 | |
| 	potential race when setting signal_arrived.  This
 | |
| 	particularly affects sigsuspend.
 | |
| 	(handle_sigsuspend): Reset signal_arrived prior to
 | |
| 	grabbing the mutex.  This should reduce the probability
 | |
| 	of a race.
 | |
| 	* sigproc.cc (sig_send): Don't reset signal_arrived in
 | |
| 	the SIGSUSPEND case since this could introduce a race.
 | |
| 
 | |
| Thu Nov 26 12:19:16 1998  Christopher Faylor <cgf@cygnus.com>
 | |
| 
 | |
| 	patch from sos@prospect.com.ru (Sergey Okhapkin):
 | |
| 	* select.cc (MAKEready): Don't wait for signal prior to
 | |
| 	testing for read.  That introduces an unnecessary delay.
 | |
| 
 | |
| Wed Nov 25 23:03:47 1998  Christopher Faylor <cgf@cygnus.com>
 | |
| 
 | |
| 	* winsup.h: Make `isdirsep' an alias for SLASH_P.
 | |
| 	Implement isabspath convenience macro.
 | |
| 	Change sigprotect to a macro since it appears to
 | |
| 	be impossible to send __FILE__ type macros to a
 | |
| 	constructor.  Change use of sig_protect throughout.
 | |
| 	* dcrt0.cc (dll_crt0_1): Use new path macro.
 | |
| 	* dlfcn.cc (get_full_path_of_dll): Ditto.
 | |
| 	* path.cc (path_conv::path_conv): Ditto.
 | |
| 	(normalize_posix_path): Ditto.
 | |
| 	(slashify): Ditto.
 | |
| 	(backslashify): Ditto.
 | |
| 	* syscalls.cc (num_entries): Ditto.
 | |
| 	* lock.cc: Redefine lock methods to pass debug info to
 | |
| 	{get,release}_signal_mutex.
 | |
| 	* environ.cc (environ_init): Correct strncmp test for
 | |
| 	TERM=, otherwise it's impossible to set TERM.
 | |
| 	* exceptions.cc: Eliminate lock_cs and unlock_cs macros.
 | |
| 	Use {get,release}_signal_mutex throughout.
 | |
| 	(signal_init): Don't initialize signal_mutex here.
 | |
| 	(set_process_mask): Remove vestiges of old mutex code.
 | |
| 	(handle_sigsuspend): Ditto.
 | |
| 	(call_handler): Move signal_arrived SetEvent back here.
 | |
| 	It was being triggered too often before.
 | |
| 	Detect when the signal thread is exiting.
 | |
| 	(sig_handle): Remove inappropriate SetEvent(signal_arrived).
 | |
| 	(events_terminate): Move close of signal_mutex elsewhere.
 | |
| 	* glob.cc: Increase "MAXPATHLEN" size for arguments that
 | |
| 	are not necessarily pathnames.
 | |
| 	* pinfo.cc (lpfu): Lower timeout for reporting possible
 | |
| 	problem with INFINITE wait.
 | |
| 	* sigproc.cc (wake_wait_subproc): Make this a macro with
 | |
| 	no arguments so that its use in the code is a little
 | |
| 	clearer.
 | |
| 	(proc_terminate): Eliminate signal blocking here since
 | |
| 	this should already be handled by the caller.
 | |
| 	(sigproc_init): It makes sense to initialize signal_mutex
 | |
| 	here, so do so.
 | |
| 	(__allow_sig_dispatch): Rename.  Take debugging arguments.
 | |
| 	Pass arguments on to release_signal_mutex.
 | |
| 	(__block_sig_dispatch): Rename.  Take debugging arguments.
 | |
| 	Pass arguments on to get_signal_mutex.  Detect signal
 | |
| 	thread exiting confition.
 | |
| 	(__get_signal_mutex): Take debugging arguments.  Maintain
 | |
| 	a stack of nested mutex calls for later display in
 | |
| 	__release_signal_mutex.  Detect signal thread exit
 | |
| 	condition.  Don't bother with locking if signal thread is
 | |
| 	executing or if just an exec stub.
 | |
| 	(__release_signal_mutex): Don't bother with locking if signal
 | |
| 	thread is executing or if just an exec stub.
 | |
| 	* sigproc.h: Reflect renamed functions above.  Provide
 | |
| 	wrappers to pass in diagnostic information.
 | |
| 	* spawn.cc (spawn_guts): More fixes to deal with nested
 | |
| 	#! and to properly report posix argv[0] when invoked as a
 | |
| 	script.
 | |
| 
 | |
| Wed Nov 25 12:41:12 1998  Christopher Faylor <cgf@cygnus.com>
 | |
| 
 | |
| 	* Makefile.in: Reinstate libwinspool.a/winspool.drv creation.
 | |
| 
 | |
| Tue Nov 24 18:48:56 1998  Geoffrey Noer  <noer@cygnus.com>
 | |
| 
 | |
| 	* Makefile.in: add CFLAGS_COMMON and CFLAGS_CONFIG to CFLAGS
 | |
| 	and CXXFLAGS in FLAGS_TO_PASS.
 | |
| 
 | |
| 	* include/sys/select.h: new file with select proto.  Avoid
 | |
| 	potential conflict with Winsock inclusion by Cygwin internals.
 | |
| 	* include/sys/socket.h: remove select proto.
 | |
| 	* winsup.h: define __INSIDE_CYGWIN__.  Include windows.h after
 | |
| 	Unix include files.
 | |
| 	* include/mywinsock.h: delete file
 | |
| 	* include/Windows32/Sockets.h: add ndef __INSIDE_CYGWIN__s
 | |
| 	around portions that conflict with Unix definitions.  This
 | |
| 	yields what used to be mywinsock.h which is a blend of Unix
 | |
| 	sockets and Winsock needed by Cygwin internals.
 | |
| 	* exceptions.cc: define Win32_Winsock to include
 | |
| 	Windows32/Sockets.h.  No longer define __INSIDE_CYGWIN__.
 | |
| 	* hinfo.cc: ditto
 | |
| 	* net.cc: ditto
 | |
| 	* select.cc: ditto
 | |
| 
 | |
| 	* include/exceptions.h: change wrapper define to _EXCEPTIONS_H.
 | |
| 	* include/sys/resource.h: move includes outside __cplusplus check.
 | |
| 	* include/sys/wait.h: ditto.
 | |
| 
 | |
| Sun Nov 22 23:33:19 1998  Geoffrey Noer  <noer@cygnus.com>
 | |
| 
 | |
| 	* sigproc.cc (__release_signal_mutex): revert Nov 3d change.
 | |
| 
 | |
| Sun Nov 22 17:04:44 1998  Christopher Faylor <cgf@cygnus.com>
 | |
| 
 | |
| 	patch from sos@prospect.com.ru (Sergey Okhapkin):
 | |
| 	* regexp/Makefile.in: Add additional bits necessary to
 | |
| 	allow correct installation of include file.
 | |
| 
 | |
| Fri Nov 20 17:04:48 1998  Christopher Faylor <cgf@cygnus.com>
 | |
| 
 | |
| 	* Makefile.in: Set "Warn about writable strings" option in CFLAGS.
 | |
| 	* fhandler_tty.h: Fix for writable strings detection.
 | |
| 	* grp.cc (add_grp_line): Ditto.
 | |
| 	* mkvers.sh: Ditto.
 | |
| 	* path.h: Ditto.
 | |
| 	* registry.cc: (reg_key::reg_key): Ditto.
 | |
| 	* smallprint.c (__small_vsprintf): Ditto.
 | |
| 	* tty.cc (tty::get_event): Ditto.
 | |
| 	* winsup.h: Give up on read_ready_thread.  Move sig_protect
 | |
| 	here since it needs to use information set up after the sigproc.h
 | |
| 	include.
 | |
| 	* dcrt0.cc: Ditto.
 | |
| 	* debug.cc (WFSO): New function.  Used to ensure that
 | |
| 	function shows up on stack trace.
 | |
| 	(WFMO): Ditto.
 | |
| 	* debug.h: Define the above.
 | |
| 	* exceptions.cc (ctrl_c_handler): Record last signal
 | |
| 	for signal handler.
 | |
| 	* select.cc (MAKEready): New macro for constructing
 | |
| 	fhandler_*::ready_for_read function.
 | |
| 	(fhandler_*::ready_for_read): Use macro to construct this
 | |
| 	method throughout.
 | |
| 	* sigproc.cc (sig_send): Work around race on process termination
 | |
| 	where the event being waited for may disappear.
 | |
| 	(sigproc_terminate): #ifdef code here that attempted to deal with
 | |
| 	the above condition in sig_send.
 | |
| 	* sigproc.h: Move sig_protect to winsup.h.
 | |
| 	* spawn.cc (perhaps_suffix): Don't return pointer into an
 | |
| 	automatic variable.
 | |
| 	(find_exec): Always point known_suffix to something.
 | |
| 	* syscalls.cc (read_handler): Refine debug output.
 | |
| 	(read_ready_thread): Delete.
 | |
| 	(_read): Eliminate use of read_ready_thread.  Call ready_for_read
 | |
| 	directly as appropriate.
 | |
| 
 | |
| Thu Nov 19 15:26:40 1998  Geoffrey Noer  <noer@cygnus.com>
 | |
| 
 | |
| 	* Makefile.in: remove -Wunused since that's already in -Wall
 | |
| 	* dlfcn.cc (check_path_access): rename winenv arg to mywinenv
 | |
| 	* path.cc (symlink): change save_errno var to saved_errno
 | |
| 	* spawn.cc (find_exec): rename winenv arg to mywinenv
 | |
| 	(spawn_guts): rename sigprotect handle to starting_here
 | |
| 	* winsup.h: remove trailing comma from process_state flags
 | |
| 	enum
 | |
| 	* utils/aclocal.m4: regenerate
 | |
| 	* utils/configure: regenerate
 | |
| 
 | |
| Thu Nov 19 11:16:38 1998  Christopher Faylor <cgf@cygnus.com>
 | |
| 
 | |
| 	* Makefile.in: Use correct libpthread.a target when
 | |
| 	thread-safe is enabled.
 | |
| 
 | |
| Thu Nov 19 10:49:27 1998  Christopher Faylor <cgf@cygnus.com>
 | |
| 
 | |
| 	* path.cc (path_conv): Correct error reporting.
 | |
| 
 | |
| Wed Nov 18 20:07:50 1998  Geoffrey Noer  <noer@cygnus.com>
 | |
| 
 | |
| 	* utils/Makefile.in: remove termcap file install rule
 | |
| 
 | |
| Wed Nov 18 18:14:18 1998  Geoffrey Noer  <noer@cygnus.com>
 | |
| 
 | |
| 	More minor cleanup:
 | |
| 	* environ.cc (winenv): don't define len twice.
 | |
| 	* fork.cc (sync_with_parent): should NOT use rc since
 | |
| 	this is a macro and that could have interfered with rc in
 | |
| 	the calling function.  Renamed to psync_rc.
 | |
| 	* fhandler_serial.cc (fhandler_serial::open): change
 | |
| 	access to myaccess since it shadows global decl.
 | |
| 	* hinfo.cc: ditto throughout
 | |
| 	* path.cc: ditto throughout
 | |
| 	(path_conv::path_conv): change error to err.
 | |
| 
 | |
| Wed Nov 18 16:17:58 1998  Geoffrey Noer  <noer@cygnus.com>
 | |
| 
 | |
| 	* profil.c: include stdio.h
 | |
| 	(print_prof): comment out unused func
 | |
| 	(profile_ctl): should return an int
 | |
| 
 | |
| Wed Nov 18 16:17:58 1998  Geoffrey Noer  <noer@cygnus.com>
 | |
| 
 | |
| 	* utils/ps.cc: include sys/cygwin.h, make pname buf
 | |
| 	MAXPATH in size.
 | |
| 
 | |
| 	patch from Corinna Vinschen <corinna.vinschen@cityweb.de>:
 | |
| 	* utils/ps.cc (main): converting windows paths to posix
 | |
| 	paths in output.
 | |
| 
 | |
| Wed Nov 18 15:34:46 1998  Geoffrey Noer  <noer@cygnus.com>
 | |
| 
 | |
| 	* include/wchar.h: include stddef.h.
 | |
| 
 | |
| Wed Nov 18 17:39:15 1998  Christopher Faylor <cgf@cygnus.com>
 | |
| 
 | |
| 	* environ.cc (environ_init): Fix incorrect TERM= detection.
 | |
| 
 | |
| Tue Nov 17 17:28:09 1998  Geoffrey Noer  <noer@cygnus.com>
 | |
| 
 | |
| 	* gcrt0.c: include stdlib.h, add proto for monstartup.
 | |
| 
 | |
| Tue Nov 17 16:47:42 1998  Geoffrey Noer  <noer@cygnus.com>
 | |
| 
 | |
| 	* include/wchar.h: add protos for wcslen and wcscmp.
 | |
| 	* syscalls.cc: minor reformat.
 | |
| 
 | |
| Tue Nov 17 15:38:45 1998  Christopher Faylor <cgf@cygnus.com>
 | |
| 
 | |
| 	* fhandler.cc (fhandler_base::fhandler_base): Default non-disk
 | |
| 	devices to binary mode.
 | |
| 	* fhandler.h: Reformat slightly.
 | |
| 
 | |
| Tue Nov 17 11:19:23 1998  Christopher Faylor <cgf@cygnus.com>
 | |
| 
 | |
| 	* external.cc (fillout_pinfo): Copy progname using strcpy to
 | |
| 	save on time.
 | |
| 	* path.h: Add new enums for more fine-grained control
 | |
| 	of path_conv.
 | |
| 	* dir.cc (opendir): Use enum argument to path_conv.
 | |
| 	(mkdir): Ditto.
 | |
| 	(rmdir): Ditto.
 | |
| 	* dlfcn.cc (get_full_path_of_dll): Ditto.
 | |
| 	* fhandler.h: Add new set_readahead_valid to set actual
 | |
| 	readahead.
 | |
| 	* fhandler.cc (raw_read): Remove extraneous variable.
 | |
| 	(fhandler_base::read): Rework to allow readahead when
 | |
| 	not text mode.
 | |
| 	(fhandler_disk_file::fstat): get_symlink_p() only returns
 | |
| 	true/false now.
 | |
| 	(fhandler_disk_file::fhandler_disk_file): Use enum argument
 | |
| 	to path_conv.
 | |
| 	(fhandler_disk_file::open): Ditto.
 | |
| 	* spawn.cc (perhaps_suffix): Ditto.
 | |
| 	* syscalls.cc (_unlink): Ditto.
 | |
| 	(_link): Ditto.
 | |
| 	(stat_worker): Ditto.
 | |
| 	(_rename): Ditto.
 | |
| 	* fhandler_serial.cc (fhandler_serial::open): Always reset timeouts.
 | |
| 	* path.cc (path_conv::path_conv): Honor new enum arguments.
 | |
| 	Specifically, use SYMLINK_CONTENTS for readlink interface.
 | |
| 	(readlink): Use SYMLINK_CONTENTS argument to path_conv.
 | |
| 	* select.cc: Rework serial support which has apparently never
 | |
| 	worked.
 | |
| 
 | |
| Mon Nov 16 16:15:20 1998  Geoffrey Noer  <noer@cygnus.com>
 | |
| 
 | |
| 	* Makefile.in: FLAGS_TO_PASS should pass CFLAGS and CXXFLAGS
 | |
| 	not ALL_CFLAGS and ALL_CXXFLAGS.  Rework handling of CFLAGS
 | |
| 	variables to remove duplication and make it possible to
 | |
| 	build mingw directory.
 | |
| 
 | |
| Mon Nov 16 09:40:21 1998  Christopher Faylor <cgf@cygnus.com>
 | |
| 
 | |
| 	* syscalls.cc (_open): Use new macro to check for
 | |
| 	NULL or empty pathname and return appropriate error.
 | |
| 	* path.cc (check_null_empty_path*): Move macro to
 | |
| 	path.h.
 | |
| 	* path.h: Move macros here.
 | |
| 
 | |
| Sun Nov 15 20:23:10 1998  Geoffrey Noer  <noer@cygnus.com>
 | |
| 
 | |
| 	* include/cygwin/version.h: bump API_MINOR to 3 to mark
 | |
| 	addition of dll_noncygwin_dllcrt0 to exports list.
 | |
| 
 | |
| Sun Nov 15 23:05:21 1998  Christopher Faylor <cgf@cygnus.com>
 | |
| 
 | |
| 	* path.cc (check_null_empty_path): New macro.
 | |
| 	(check_null_empty_path_errno): Ditto.
 | |
| 	(path_conv::path_conv): Check for NULL and empty
 | |
| 	path names here and set appropriate error.
 | |
| 	(conv_to_win32_path): Ditto.
 | |
| 	(conv_to_full_win32_path): Ditto.
 | |
| 	(conv_to_posix_path): Ditto.
 | |
| 	(conv_to_full_posix_path): Ditto.
 | |
| 	(mount_info::conv_wo_win32_path): Back out previous
 | |
| 	change.
 | |
| 	(mount_info::conv_to_posix_path): Ditto.
 | |
| 
 | |
| Sun Nov 15 19:29:19 1998  Geoffrey Noer  <noer@cygnus.com>
 | |
| 
 | |
| 	* include/limits.h: define CHILD_MAX to be 63.
 | |
| 	* sysconf.cc (sysconf): return CHILD_MAX when asked for
 | |
| 	instead of _POSIX_CHILD_MAX.
 | |
| 
 | |
| Sun Nov 15 18:25:22 1998  Geoffrey Noer  <noer@cygnus.com>
 | |
| 
 | |
| 	patch from Mumit Khan  <khan@xraylith.wisc.edu>:
 | |
| 	* path.cc (mount_info::conv_to_posix_path): Handle NULL and
 | |
| 	empty pathnames.
 | |
| 	(mount_info::conv_to_win32_path): Likewise.
 | |
| 
 | |
| Sun Nov 15 18:09:06 1998  Geoffrey Noer  <noer@cygnus.com>
 | |
| 
 | |
| 	* cygwin.din: export dll_noncygwin_dllcrt0.
 | |
| 	* {libccrt0.cc, winsup.h}: minor reformat.
 | |
| 
 | |
| Sat Nov 14 22:14:51 1998  Christopher Faylor <cgf@cygnus.com>
 | |
| 
 | |
| 	* environ.cc (environ_init): Use sizeof for string lengths
 | |
| 	rather than hard-coded values.
 | |
| 
 | |
| 	patch from Mumit Khan <khan@xraylith.wisc.edu>:
 | |
| 	* dll_init.cc (dll_foreign_dllcrt0): Rename to
 | |
| 	dll_noncygwin_dllcrt0.
 | |
| 	* winsup.h: Ditto.
 | |
| 	* include/cygwin/cygwin_dll.h: Ditto.
 | |
| 
 | |
| Sat Nov 14 14:09:33 1998  Christopher Faylor <cgf@cygnus.com>
 | |
| 
 | |
| 	* hinfo.cc (hinfo::de_linearize_fd_array): Reset first fd
 | |
| 	for open to zero after an exec.
 | |
| 
 | |
| Sat Nov 14 01:29:23 1998  Christopher Faylor <cgf@cygnus.com>
 | |
| 
 | |
| 	* fork.cc (fork): No need for intermediate jmp_buf variable.
 | |
| 
 | |
| 	patch from Mumit Khan <khan@xraylith.wisc.edu>:
 | |
| 	* libccrt0.cc (cygwin_attach_foreign_dll): New function.
 | |
| 	* dll_init.cc (dll_foreign_dllcrt0): New function to initialize
 | |
| 	DLLs loaded by non-cygwin apps.
 | |
| 	(dll_dllcrt0_1): Initialize process table entry.
 | |
| 	(dll_dllcrt0): Revert last change to do partial initialization.
 | |
| 	* winsup.h (dll_foreign_dllcrt0): Prototype.
 | |
| 	* include/cygwin/cygwin_dll.h (_cygwin_foreign_dll_entry): New
 | |
| 	entry point that does partial initialization for non-cygwin apps.
 | |
| 
 | |
| Fri Nov 13 16:17:28 1998  Geoffrey Noer  <noer@cygnus.com>
 | |
| 
 | |
| 	Assorted -Wall cleanup:
 | |
| 	* utils/mount.cc (show_mounts): remove unused var i.
 | |
| 	* utils/cygcheck.cc (dll_info): comment out unused var ofs.
 | |
| 	(dump_sysinfo): return a void, not an int.  Comment out unused
 | |
| 	var len in two places.  Add parens around assignment used as
 | |
| 	truth value.
 | |
| 	* utils/kill.cc (main): remove unused var i
 | |
| 	* utils/mkpasswd: include <ctype.h> and <stdlib.h>.
 | |
| 	(enum_users): remove unused var rc.
 | |
| 	(enum_local_groups): ditto.
 | |
| 	* utils/ps.cc (main): Add parens around assignments used as
 | |
| 	truth values.
 | |
| 	* utils/mkgroup.c: include <ctype.h> and <stdlib.h>.
 | |
| 	(enum_groups): return void, not int.  Remove unused var rc.
 | |
| 	* gmon.c: include <stdio.h> and <unistd.h>.
 | |
| 	(_mcleanup): remove unused vars buf and profdir.
 | |
| 
 | |
| Fri Nov 13 16:17:28 1998  Geoffrey Noer  <noer@cygnus.com>
 | |
| 
 | |
| 	patch from Corinna Vinschen <corinna.vinschen@cityweb.de>:
 | |
| 	* include/sys/sysmacros.h: new file, define major, minor, makedev
 | |
| 
 | |
| Fri Nov 13 17:03:52 1998  Christopher Faylor <cgf@cygnus.com>
 | |
| 
 | |
| 	* dcrt0.cc: Reflect a variable name change.
 | |
| 	* fhandler.h: *::ready_for read takes an additional argument.
 | |
| 	* fhandler_console.cc (get_non_ascii_key): New function derived
 | |
| 	from fhandler_console::read1.
 | |
| 	(fhandler_console::read1): Use new function.
 | |
| 	* select.cc (*::ready_for_read): Add new "nonblocking" argument.
 | |
| 	(peek_console): Be more diligent in detecting when a usable
 | |
| 	character has been entered or false positives will be returned.
 | |
| 	(fhandler_tty_common::ready_for_read): Detect attempt to perform
 | |
| 	a "background" read.
 | |
| 	* syscalls.cc (read_handler): Remove code for dealing with slow
 | |
| 	devices.  Just deal with non-blocking here.
 | |
| 	(read_ready_thread): Renamed function.  Rewritten to only detect
 | |
| 	when an fd has data ready to be read.  Actual reads happen in
 | |
| 	the main thread.
 | |
| 	(_read): Rely on read_handler to read data for everything.  Use
 | |
| 	the read_ready_thread to indicate when data is ready to be read.
 | |
| 	Gut the read_thread_info class since it no longer needs to return
 | |
| 	much information.
 | |
| 	* winsup.h: Reflect above changes to read_thread_info.  Rename
 | |
| 	to read_ready_thread_info.
 | |
| 
 | |
| Fri Nov 13 15:09:26 1998  Christopher Faylor <cgf@cygnus.com>
 | |
| 
 | |
| 	patch from Corinna Vinschen <corinna.vinschen@cityweb.de> and
 | |
| 	Ron Parker <rdparker@butlermfg.org>:
 | |
| 	* path.cc (mount_info::conv_to_win32_path): Refined recognition of
 | |
| 	UNC devices.
 | |
| 
 | |
| Fri Nov 13 12:37:00 1998  Christopher Faylor <cgf@cygnus.com>
 | |
| 
 | |
| 	* Makefile.in: Fix a typo.
 | |
| 
 | |
| Fri Nov 13 10:59:43 1998  DJ Delorie  <dj@cygnus.com>
 | |
| 
 | |
| 	* Makefile.in: "make" uses new "ld -shared" by default internally.
 | |
| 
 | |
| Fri Nov 13 00:58:38 1998  Christopher Faylor <cgf@cygnus.com>
 | |
| 
 | |
| 	* spawn.cc (find_exec): Make sure that return value is correct
 | |
| 	in all cases.  Document.
 | |
| 	* fhandler.h (fhandler_tty_common): Give unit number to constructor.
 | |
| 	* fhandler_tty.cc (fhandler_tty_slave::fhandler_tty_slave): Give
 | |
| 	unit number to descriptor.  Create correct UNIX path name for
 | |
| 	tty so that ttyname() will work correctly.
 | |
| 	* select.cc (fhandler_tty_common::ready_for_read): Don't worry
 | |
| 	about read_for_read since the tty read routines are already
 | |
| 	interruptible.
 | |
| 	* syscalls.cc (_read): Reset read thread events on signal.
 | |
| 
 | |
| 	patch from Mumit Khan <khan@xraylith.wisc.edu>:
 | |
| 	* dlfcn.cc (ctype.h): Include.
 | |
| 	(check_access): Document.
 | |
| 	(check_path_access): Document.
 | |
| 	(get_full_path_to_dll): Rework to handle general filenames and
 | |
| 	symlinks.
 | |
| 
 | |
| Thu Nov 12 17:01:52 1998  DJ Delorie  <dj@cygnus.com>
 | |
| 
 | |
| 	* Makefile.in (shared): "make shared" uses the new "ld -shared"
 | |
| 	* cygwin.din: add LIBRARY and BASE tags for "ld -shared"
 | |
| 
 | |
| Wed Nov 11 17:16:17 1998  Christopher Faylor <cgf@cygnus.com>
 | |
| 
 | |
| 	* configure.in: Add --enable options for various cygwin defines
 | |
| 	including preliminary thread-safe defines.
 | |
| 	* configure: Regenerate
 | |
| 	* Makefile.in: Honor new --enable options.
 | |
| 	* glob.h: Move BSD defines to sys/cdefs.h.
 | |
| 	* include/sys/cdefs.h: Move __P definition here.
 | |
| 
 | |
| Wed Nov 11 14:00:45 1998  DJ Delorie  <dj@cygnus.com>
 | |
| 
 | |
| 	* cygwin.din (getpwnam): remove duplicates
 | |
| 
 | |
| Tue Nov 10 18:27:09 1998  Geoffrey Noer  <noer@cygnus.com>
 | |
| 
 | |
| 	* utils/aclocal.m4: regenerate with aclocal
 | |
| 	* utils/configure.in: don't call AM_CYGWIN32
 | |
| 	* utils/configure: regenerate
 | |
| 
 | |
| Tue Nov 10 15:56:03 1998  Geoffrey Noer  <noer@cygnus.com>
 | |
| 
 | |
| 	patch from Gary V. Vaughan <gvaughan@oranda.demon.co.uk>:
 | |
| 	* dlfcn.cc (dlopen): return an introspective handle to the
 | |
| 	current module if name arg is NULL.  The Single UNIX
 | |
| 	Specification, Version 2 has this as a requirement.
 | |
| 
 | |
| Mon Nov  9 16:29:27 1998  Geoffrey Noer  <noer@cygnus.com>
 | |
| 
 | |
| 	* errno.cc (strerror): all errnos in
 | |
| 	newlib/libc/include/sys/errno.h are now listed here.
 | |
| 
 | |
| Mon Nov  9 16:29:27 1998  Geoffrey Noer  <noer@cygnus.com>
 | |
| 
 | |
| 	* include/cygwin/version.h: up DLL version, bump API_MINOR to 2
 | |
| 	to mark following change.
 | |
| 
 | |
| 	patch from Mumit Khan <khan@xraylith.wisc.edu>:
 | |
| 	* cygwin.din: add exports for some of the newlib bessel
 | |
| 	functions (j1, jn, y1, yn).
 | |
| 
 | |
| Mon Nov  9 15:10:06 1998  Geoffrey Noer  <noer@cygnus.com>
 | |
| 
 | |
| 	* syscalls.cc (_link): rewrite FIXME.
 | |
| 
 | |
| Mon Nov  9 14:51:03 1998  Geoffrey Noer  <noer@cygnus.com>
 | |
| 
 | |
| 	* errno.cc (strerror): add string for EDEADLOCK.
 | |
| 
 | |
| 	patch from Corinna Vinschen <corinna.vinschen@cityweb.de>:
 | |
| 	* errno.cc (errmap[]): add END_OF_MEDIA and additional Win32
 | |
| 	error codes.
 | |
| 
 | |
| Sun Nov  8 21:28:01 1998  Christopher Faylor <cgf@cygnus.com>
 | |
| 
 | |
| 	* fhandler.h: fhandler_pipe cannot be is_slow under
 | |
| 	Windows9[58].  There is no way to check for EOF on a pipe
 | |
| 	without performing a read on that system.
 | |
| 	* syscalls.cc (read_handler): Don't check for ready_for_read
 | |
| 	unless this is a "slow" device.
 | |
| 	* winsup.h: Reorganize to accomdate fhandler.h requirement
 | |
| 	for os_type.
 | |
| 
 | |
| Sat Nov  7 23:27:05 1998  Christopher Faylor <cgf@cygnus.com>
 | |
| 
 | |
| 	* fhandler.h (fhandler_console): Add a new function declaration.
 | |
| 	* fhandler_console.cc (fhandler_console::read1): New function
 | |
| 	renamed from console_read to allow use of class fields.
 | |
| 	Detect readahead situation when doing line buffering and
 | |
| 	buffer does not contain \n.
 | |
| 	(fhandler_console::read): Reflect function name change.
 | |
| 	* select.cc (cygwin_select): Changes for better handling
 | |
| 	of < 1000 usec timeouts.
 | |
| 	(select_stuff::wait): Perform a poll on timeout to
 | |
| 	set any fd's that may have become active.
 | |
| 	(peek_pipe): More debugging.  Honor write_ready if set.
 | |
| 	(peek_console): Can't always use WaitForSingleObject.
 | |
| 	Detect readahead conditions set in fhandler_console::read1.
 | |
| 	Honor write_ready if set.
 | |
| 	(peek_windows): Honor write_ready if set.
 | |
| 	* times.cc (__to_clock_t): Return clock_t value.
 | |
| 	(times): Add some debugging printfs.
 | |
| 
 | |
| Fri Nov  6 20:15:20 1998  Christopher Faylor <cgf@cygnus.com>
 | |
| 
 | |
| 	patch from Corinna Vinschen <corinna.vinschen@cityweb.de>:
 | |
| 	* spawn.cc (spawn_guts): find_exec() argument mismatch
 | |
| 	resulted in inability to run !# scripts which did not
 | |
| 	begin with '/'.
 | |
| 
 | |
| Tue Nov  3 16:12:59 1998  Christopher Faylor <cgf@cygnus.com>
 | |
| 
 | |
| 	* exceptions.cc (handle_exceptions): Don't wait for signal
 | |
| 	completion.
 | |
| 	(ctrl_c_handler): Ditto.
 | |
| 	* fhandler.h (fhandler_*): Declare new ready_for_read functions.
 | |
| 	* select.cc: Reorganize all methods into a peek_*, a poll_*,
 | |
| 	and a fhandler_*::ready_for_read.  This is to allow the _read
 | |
| 	function to query the state of an fd without starting a thread.
 | |
| 	* signal.cc (kill_worker): If sending a signal from a non-main thread
 | |
| 	don't wait for completion.
 | |
| 	* sigproc.h (myself_nowait_nonmain): New define for use by sig_send.
 | |
| 	* sigproc.cc (sig_send): Honor myself_nowait_nonmain.  Don't wait
 | |
| 	if not in main thread.
 | |
| 	(__release_signal_mutex): Revert to calling ReleaseMutex only
 | |
| 	once or mutex is released prematurely.
 | |
| 	* syscalls.cc (read_handler): Use new ready_for_read method to
 | |
| 	determine if an fd has data for reading.  This function optionally
 | |
| 	blocks until there is data to read.
 | |
| 	(read_helper): Add debugging statement.
 | |
| 	(_read): Move signal_arrived reset to before sig_protect to avoid
 | |
| 	a race.  Force read_handler thread to longjmp back to read_handler
 | |
| 	function on signal.
 | |
| 
 | |
| Tue Nov  3 12:18:31 1998  DJ Delorie  <dj@cygnus.com>
 | |
| 
 | |
| 	* utils/cygcheck.cc (dump_sysinfo): Note when not finding a
 | |
| 	program (like cpp) on the path is a good thing.
 | |
| 
 | |
| Tue Nov  3 01:26:08 1998  Geoffrey Noer  <noer@cygnus.com>
 | |
| 
 | |
| 	patch from Kazuhiro Fujieda <fujieda@jaist.ac.jp>:
 | |
| 	* environ.cc (environ_init): correct size arg to parse_options
 | |
| 
 | |
| Mon Nov  2 21:40:32 1998  Christopher Faylor <cgf@cygnus.com>
 | |
| 
 | |
| 	* regexp/regexp.c (regatom): Respond to compiler warning.
 | |
| 
 | |
| Mon Nov  2 21:36:48 1998  Christopher Faylor <cgf@cygnus.com>
 | |
| 
 | |
| 	* exceptions.cc (handle_exceptions): cygwin should not
 | |
| 	print exception information if the exception is trapped
 | |
| 	via signal().
 | |
| 	Also use consistent timings for lock_cs() throughout.
 | |
| 
 | |
| Mon Nov  2 16:46:28 1998  Geoffrey Noer  <noer@cygnus.com>
 | |
| 
 | |
| 	* Makefile.in: For now, also include newlib/libc/sys/cygwin.
 | |
| 	Eventually will stop including newlib/libc/sys/cygwin32.
 | |
| 
 | |
| Mon Nov  2 19:38:30 1998  Christopher Faylor <cgf@cygnus.com>
 | |
| 
 | |
| 	patch from Corinna Vinschen <corinna.vinschen@cityweb.de>:
 | |
| 	* syscall.cc (gethostname): function deleted
 | |
| 	* net.cc (gethostname): new function 'gethostname' which
 | |
| 	first calls wsock32::gethostname and only if it fails,
 | |
| 	calls GetComputerNameA.
 | |
| 
 | |
| Wed Oct 28 17:57:53 1998  Geoffrey Noer  <noer@cygnus.com>
 | |
| 
 | |
| 	* include/cygwin/version.h: up DLL version to 20.0 in honor
 | |
| 	of new Net release.
 | |
| 
 | |
| Wed Oct 28 17:57:53 1998  Geoffrey Noer  <noer@cygnus.com>
 | |
| 
 | |
| 	patch from Mumit Khan <khan@xraylith.wisc.edu>:
 | |
| 	* dll_init.cc (doGlobalCTORS): Fix invocation order.
 | |
| 	(doGlobalDTORS): Likewise.
 | |
| 
 | |
| Wed Oct 28 17:57:53 1998  Geoffrey Noer  <noer@cygnus.com>
 | |
| 
 | |
| 	* Makefile.in: add include/exceptions.h to dll_init.cc deps.
 | |
| 
 | |
| 	patch from Mumit Khan <khan@xraylith.wisc.edu>:
 | |
| 	* dll_init.cc (exceptions.h): Include.
 | |
| 	(dll_dllcrt0_1): New function to initialize Cygwin DLL guts
 | |
| 	properly when a non-Cygwin app uses the Cygwin DLL.
 | |
| 	(dll_dllcrt0): Call dll_dllcrt0_1 when user_data is NULL.
 | |
| 
 | |
| Tue Oct 27 17:35:00 1998  Geoffrey Noer  <noer@cygnus.com>
 | |
| 
 | |
| 	* syslog.cc: drop "32" from CYGWIN32_LOG_NAME
 | |
| 
 | |
| Tue Oct 27 16:09:09 1998  DJ Delorie  <dj@cygnus.com>
 | |
| 
 | |
| 	* utils/cygcheck.cc (usage): cygwhich->cygcheck
 | |
| 
 | |
| Mon Oct 26 17:47:10 1998  Geoffrey Noer  <noer@cygnus.com>
 | |
| 
 | |
| 	* Makefile.in: fix deps for dll_entry.o and dll_main.o,
 | |
| 	add dep for glob.o.
 | |
| 
 | |
| 	patch from Mumit Khan <khan@xraylith.wisc.edu>:
 | |
| 	* dll_entry.cc: New file for user DLL entry point.
 | |
| 	* dll_main.cc: New file for user DLL main.
 | |
| 	* Makefile.in (LIBCOS): Add dll_entry.o and dll_main.o.
 | |
| 
 | |
| Mon Oct 26 13:47:10 1998  Geoffrey Noer  <noer@cygnus.com>
 | |
| 
 | |
| 	* Makefile.in: add back install of include/net which was
 | |
| 	removed by accident.
 | |
| 
 | |
| Mon Oct 26 15:25:22 1998  Christopher Faylor <cgf@cygnus.com>
 | |
| 
 | |
| 	* strace.cc (get_strace_mutex): Don't reset last windows
 | |
| 	error.
 | |
| 	(strace_printf): Preserve last windows error.
 | |
| 
 | |
| Mon Oct 26 11:01:46 1998  Christopher Faylor <cgf@cygnus.com>
 | |
| 
 | |
| 	* uname.cc (uname): Remove slash from system name.
 | |
| 
 | |
| Mon Oct 26 02:11:44 1998  Geoffrey Noer  <noer@cygnus.com>
 | |
| 
 | |
| 	* include/asm/byteorder.h: add missing __cplusplus wrapper.
 | |
| 
 | |
| Mon Oct 26 00:46:33 1998  Christopher Faylor <cgf@cygnus.com>
 | |
| 
 | |
| 	* uname.cc (uname): Remove space from the system name.
 | |
| 
 | |
| Sun Oct 25 23:47:56 1998  Christopher Faylor <cgf@cygnus.com>
 | |
| 
 | |
| 	* fhandler_console.cc (console_read): Several typos caused flaky
 | |
| 	behavior when \r or \n detected under ENABLE_LINE_INPUT.  Also ignore
 | |
| 	first \n detected under ENABLE_LINE_INPUT if it isn't preceded by a \r.
 | |
| 	This avoids problems when switching from "raw" mode into "cooked mode.
 | |
| 
 | |
| Sun Oct 25 12:28:21 1998  Geoffrey Noer  <noer@cygnus.com>
 | |
| 
 | |
| 	* cygwin.din: remove unnecessary __cygwin32_stack_trace and
 | |
| 	__cygwin_stack_trace exports.
 | |
| 
 | |
| Sat Oct 24 21:18:46 1998  Christopher Faylor <cgf@cygnus.com>
 | |
| 
 | |
| 	patch from Corinna Vinschen <corinna.vinschen@cityweb.de>:
 | |
| 	* path.cc (symlink): Standard protection for symlink should
 | |
| 	be 0777.
 | |
| 	* syscalls.cc (num_entries): Calculated links for directory
 | |
| 	entry should only include directories.
 | |
| 
 | |
| Sat Oct 24 20:51:08 1998  Christopher Faylor <cgf@cygnus.com>
 | |
| 
 | |
| 	* mkvers.sh: Modify check for CVS/Tag to work around ash bug.
 | |
| 	* sigproc.cc (wait_sig): Fix detection of non-blockable signals.
 | |
| 
 | |
| Fri Oct 23 18:24:43 1998  Geoffrey Noer  <noer@cygnus.com>
 | |
| 
 | |
| 	* environ.cc: CYGWIN32 environment variable is now called CYGWIN
 | |
| 	* window.cc: lose "32" in Cygwin32WndClass
 | |
| 	* syslog.cc: lose "32" in WIN95_EVENT_LOG_PATH and
 | |
| 	CYGWIN32_LOG_NAME.
 | |
| 
 | |
| Fri Oct 23 16:32:59 1998  Geoffrey Noer  <noer@cygnus.com>
 | |
| 
 | |
| 	* utils/cygcheck.cc: reformat, add copyright notice
 | |
| 
 | |
| Fri Oct 23 18:15:28 1998  DJ Delorie  <dj@cygnus.com>
 | |
| 
 | |
| 	* utils/cygcheck.cc: new file
 | |
| 	* utils/Makefile.in: build cygcheck.exe
 | |
| 
 | |
| Fri Oct 23 16:48:41 1998  Christopher Faylor <cgf@cygnus.com>
 | |
| 
 | |
| 	* exceptions.cc (signals_init): Add error to api_fatal.
 | |
| 	(events_init): Ditto.  Collapse printfs into one.
 | |
| 	(winsock_init): Ditto.
 | |
| 	* net.cc (winsock_init): Remove "Cygwin" from error message.
 | |
| 
 | |
| Fri Oct 23 13:48:10 1998  Geoffrey Noer  <noer@cygnus.com>
 | |
| 
 | |
| 	* Makefile.in: install include/cygwin headers, losing the "32".
 | |
| 	* include/cygwin32: remove
 | |
| 
 | |
| Fri Oct 23 14:36:31 1998  Christopher Faylor <cgf@cygnus.com>
 | |
| 
 | |
| 	* environ.cc (environ_init): Avoid reallocating environ array.
 | |
| 	* exec.cc: Increase number of arguments to 1024 throughout.
 | |
| 	* fhandler.cc (fhandler_disk_file::open): Revert to checking
 | |
| 	a file for '#!' to find out if it is executable but add
 | |
| 	extra check for NTEA which, if set, eliminates the need for
 | |
| 	the read.
 | |
| 	* sigproc.cc (sigproc_terminate): Close hwait_sig and set it
 | |
| 	to NULL prior to closing other handles since this flags some
 | |
| 	routines that the process is going down.
 | |
| 
 | |
| Fri Oct 23 00:31:27 1998  Geoffrey Noer  <noer@cygnus.com>
 | |
| 
 | |
| 	* utils/*: remove "32"s from cygwin32_foo function calls
 | |
| 
 | |
| Fri Oct 23 00:24:27 1998  Geoffrey Noer  <noer@cygnus.com>
 | |
| 
 | |
| 	* include/cygwin/version.h: increment CYGWIN_VERSION_DLL_MINOR
 | |
| 	and CYGWIN_VERSION_API_MINOR since I'm changing the API in a
 | |
| 	meaningful but backwards-compatible fashion.
 | |
| 
 | |
| 	* exceptions.cc: strip "32" from cygwin32_exception_handler
 | |
| 	debug printfs
 | |
| 
 | |
| 	* net.cc: strip "32" from all net functions
 | |
| 	* select.cc, syscalls.cc, winsup.h: lose "32" from cygwin32_select
 | |
| 	* cygwin.din: adjust for these changes (no backwards
 | |
| 	compatability issues here).
 | |
| 
 | |
| 	* cygwin.din: rename all cygwin32_foo functions, aliasing as
 | |
| 	cygwin_foo for backwards compat. for now but intend to lose them
 | |
| 	at a later date.
 | |
| 	* include/sys/cygwin.h: copy all cygwin32_ protos and make them
 | |
| 	usable without the "32".  We will remove the cygwin32_ ones at a
 | |
| 	later date.
 | |
| 	* external.cc, external.h: lose "32" from cygwin32_internal
 | |
| 	* shared.cc, winsup.h: lose "32" in cygwin32_getshared
 | |
| 	* path.cc, path.h: lose "32" in cygwin32_foo comments
 | |
| 	* dll_init.cc: lose "32" in cygwin32_detach_dll
 | |
| 	* hinfo.cc: lose "32" in cygwin32_attach_handle_to_fd
 | |
| 	* libccrt0.cc: lose "32" in refs to cygwin32_attach_dll
 | |
| 	* pinfo.cc: lose "32" in cygwin32_winpid_to_pid
 | |
| 
 | |
| 	* include/cygwin32: remove all files except cygwin32_dll.h which
 | |
| 	some people may already be including.  Aim to remove this
 | |
| 	remaining file at a later date.
 | |
| 	* include/cygwin: move all include/cygwin32 files here.
 | |
| 	* cygwin/cygwin_dll.h: change protos to reflect loss of "32"s
 | |
| 	* include/net/if.h, include/netinet/in.h, include/netinet/ip.h,
 | |
| 	include/netinet/ip_icmp.h, include/asm/socket.h:
 | |
| 	include/sys/socket.h: include the headers in include/cygwin
 | |
| 	* Makefile.in, winsup.h: fix references to
 | |
| 	include/cygwin32/version.h
 | |
| 
 | |
| 	* libcctype.c, smallprint.c, test.c: lose "32" in Cygwin32 refs in
 | |
| 	comments
 | |
| 	* include/dlfcn.h, include/exceptions.h, include/mapi.h,
 | |
| 	include/winsock.h, include/mywinsock.h: ditto
 | |
| 	* config/*: ditto
 | |
| 	* profil.c: ditto, and respace
 | |
| 
 | |
| Thu Oct 22 22:52:40 1998  Geoffrey Noer  <noer@cygnus.com>
 | |
| 
 | |
| 	* net.cc, exceptions.cc, hinfo.cc, select.cc,
 | |
| 	include/mywinsock.h: rename __INSIDE_CYGWIN32__ to
 | |
| 	__INSIDE_CYGWIN__
 | |
| 
 | |
| Thu Oct 22 17:39:06 1998  Geoffrey Noer  <noer@cygnus.com>
 | |
| 
 | |
| 	First round of Cygwin32 -> Cygwin renaming.  In all files,
 | |
| 	rename Cygwin32 to Cygwin in comments.
 | |
| 	* CYGWIN32_LICENSE: delete and
 | |
| 	* CYGWIN_LICENSE: add it back under this name
 | |
| 
 | |
| Thu Oct 22 20:10:24 1998  Christopher Faylor <cgf@cygnus.com>
 | |
| 
 | |
| 	* exceptions.cc:  Eliminate cs mutex.  Just use signal_mutex
 | |
| 	throughout.  Rename sig_dispatch_mutex to signal_mutex throughout.
 | |
| 	(lock_cs): Rewrite to be a front-end for get_signal_mutex.
 | |
| 	(unlock_cs): Rewrite to be a front-end for release_signal_mutex.
 | |
| 	(set_process_mask): Synchronize signals after resetting mask.
 | |
| 	* sigproc.cc (release_signal_mutex): Report on success or
 | |
| 	failure of signal_mutex release.
 | |
| 	* include/Windows32/Defines.h (FILE_FLAG_WRITE_THROUGH): Make
 | |
| 	unsigned to avoid a compiler warning.
 | |
| 
 | |
| Thu Oct 22 14:23:49 1998  Geoffrey Noer  <noer@cygnus.com>
 | |
| 
 | |
| 	* utils/Makefile.in: disable building cygwin.exe.
 | |
| 
 | |
| Thu Oct 22 14:16:10 1998  Christopher Faylor <cgf@cygnus.com>
 | |
| 
 | |
| 	* exceptions.cc (sig_handle): Minimize life of cs lock during
 | |
| 	handling of signals to reduce the potential for a race.
 | |
| 
 | |
| Thu Oct 22 10:23:19 1998  Christopher Faylor <cgf@cygnus.com>
 | |
| 
 | |
| 	* include/sys/strace.h: Minor addition from threadsafe-branch.
 | |
| 
 | |
| Thu Oct 22 09:03:18 1998  Christopher Faylor <cgf@cygnus.com>
 | |
| 
 | |
| 	* debug.cc (close_handle): Error condition needs a return value.
 | |
| 	* environ.cc (parse_thing): char pointers should all be constant.
 | |
| 	(add): Ditto.
 | |
| 	* heap.cc (heap_init): Provide a little more information in
 | |
| 	fatal printf.  Use api_fatal to print errors.
 | |
| 	* sigproc.cc (sigproc_terminate): Move code executed on
 | |
| 	thread termination here from wait_sig since this function
 | |
| 	may actually be executing in the signal thread.
 | |
| 	* strace.cc (strace_open): Argument should be const.
 | |
| 	(strace_init): Ditto.
 | |
| 	* winsup.h: Ditto.
 | |
| 	* include/cygwin32/version.h: Note that original shared memory
 | |
| 	version was 0 for 98r2.
 | |
| 
 | |
| Wed Oct 21 08:41:39 1998  Christopher Faylor <cgf@cygnus.com>
 | |
| 
 | |
| 	* dcrt0.cc (__api_fatal): Remove "cygwin" identifier.
 | |
| 	* fhandler.cc (fhandler_disk_file::open): Set symlink flag
 | |
| 	appropriately for previous change.
 | |
| 	* shared.cc (shared_name): Initialize static buffer to
 | |
| 	(hopefully) force it into NO_COPY segment.
 | |
| 	* mkvers.sh: Reorganize, add cvs tag detection, and output
 | |
| 	cygwin "info" defines.
 | |
| 
 | |
| Tue Oct 20 18:42:50 1998  Geoffrey Noer  <noer@cygnus.com>
 | |
| 
 | |
| 	* include/cygwin32/version.h: rewrite versioning comments,
 | |
| 	updating for new scheme but keeping historical information.
 | |
| 
 | |
| Mon Oct 19 23:45:24 1998  Geoffrey Noer  <noer@cygnus.com>
 | |
| 
 | |
| 	* include/windows.h: remove Objective-C BOOL ifdef, now taken
 | |
| 	care of within the include/Windows32 header files.
 | |
| 	* fhandler_console.cc: fix KeyEvent references in light of
 | |
| 	changes to the KeyEvent struct in the Windows32 headers.
 | |
| 
 | |
| 	Update include/Windows32 header files.  Changes from
 | |
| 	Mumit Khan <khan@xraylith.wisc.edu>, Corinna Vinschen
 | |
| 	<corinna.vinschen@cityweb.de>, and me.
 | |
| 	* include/Windows32/CommonFunctions.h: new file, contents from
 | |
| 	Functions.h.
 | |
| 	* include/Windows32/*.h: Misc updates.
 | |
| 
 | |
| Mon Oct 19 20:26:15 1998  Christopher Faylor <cgf@cygnus.com>
 | |
| 
 | |
| 	* debug.cc: Throughout, avoid calling *_printf while lock
 | |
| 	is active.  Previous lock count was not thread-safe.
 | |
| 	* fhandler_console.cc (console_read): Avoid sending a
 | |
| 	\r to caller if ENABLE_LINE_INPUT.
 | |
| 	(fhandler_console::read): Rely on console_read to handle
 | |
| 	\r\n conversion.
 | |
| 
 | |
| Mon Oct 19 12:10:09 1998  Christopher Faylor <cgf@cygnus.com>
 | |
| 
 | |
| 	* mkvers.sh: Use more portable constructs to allow running
 | |
| 	this with /bin/sh, bash, and ksh.
 | |
| 
 | |
| Mon Oct 19 11:19:58 1998  Christopher Faylor <cgf@cygnus.com>
 | |
| 
 | |
| 	* path.cc (mount_info::from_registry): Missed "b15.0" part
 | |
| 	for writing mount information back to registry.
 | |
| 	(mount_info::init): Remove obsolete stuff.
 | |
| 
 | |
| Mon Oct 19 10:42:17 1998  Christopher Faylor <cgf@cygnus.com>
 | |
| 
 | |
| 	* Makefile.in: Avoid newer GNU make construction when building
 | |
| 	version.cc.
 | |
| 
 | |
| Mon Oct 19 00:09:06 1998  Geoffrey Noer  <noer@cygnus.com>
 | |
| 
 | |
| 	* Makefile.in: invoke mkvers.sh with $(SHELL)
 | |
| 
 | |
| Sun Oct 18 15:19:17 1998  Christopher Faylor <cgf@cygnus.com>
 | |
| 
 | |
| 	* fhandler.cc (set_name): Accept unit argument for generating
 | |
| 	win32_name.
 | |
| 	(fhandler_base::fhandler_base): Ditto.
 | |
| 	(fhandler_dev_floppy::fhandler_dev_floppy): Ditto.
 | |
| 	(fhandler_dev_tape::fhandler_dev_tape): Ditto.
 | |
| 	(fstat): Set symlink bit only if symlink_p is positive.
 | |
| 	* fhandler.h: Reflect unit argument changes.
 | |
| 	* fhandler_serial.cc (fhandler_serial::fhandler_serial): Accept
 | |
| 	unit argument for generating win32_name.
 | |
| 	* hinfo.cc (hinfo::build_fhandler): Pass unit argument to constructor
 | |
| 	where apropriate.
 | |
| 	* path.cc (path_conv::path_conv): Set symlink_p to a positive
 | |
| 	value if !nofollow, negative otherwise.
 | |
| 	(windows_device_names): Can't default to \dev\comx.  \dev part
 | |
| 	doesn't work.
 | |
| 	(get_device_number): Accept just "comN" for backwards compatibility.
 | |
| 
 | |
| Sat Oct 17 01:58:15 1998  Christopher Faylor <cgf@cygnus.com>
 | |
| 
 | |
| 	* dcrt0.cc (globify): Fix problem with argument corruption
 | |
| 	due to use of pointer freed by realloc.
 | |
| 
 | |
| Sat Oct 17 00:10:53 1998  Christopher Faylor <cgf@cygnus.com>
 | |
| 
 | |
| 	Change NOT_OPEN_FD to dtable.not_open throughout.
 | |
| 	* Makefile.in: Change .dll name to cygwin1.dll.  Increment
 | |
| 	the '1' when there are API/shared memory changes.  Make
 | |
| 	version.cc file every time .dll is linked.  Remove datestamp
 | |
| 	stuff.
 | |
| 	* mkvers.sh: New file.  Creates version.cc.
 | |
| 	* cygwin.din: Export setdtablesize.
 | |
| 	* dcrt0.cc: Remove obsolete version variables.
 | |
| 	(build_argv): Use issep() macro rather than isspace since
 | |
| 	isspace includes whitespace that the shell does not consider
 | |
| 	a command separator.
 | |
| 	(check_sanity_and_sync): Use new cygwin version defines and
 | |
| 	structures for compatibility checking.
 | |
| 	(dll_crt0_1): Ditto.
 | |
| 	(__api_fatal): Renamed from api_fatal.  Now always called from
 | |
| 	macro which tacks program name to beginning of fmt.  Increase
 | |
| 	size of buffer.
 | |
| 	* environ.cc (regopt): Use new reg_key class constructor
 | |
| 	functionality.
 | |
| 	* net.cc (getdomainname): Ditto.
 | |
| 	* path.cc (read_mounts): Ditto.
 | |
| 	(mount_info::from_registry): Ditto.
 | |
| 	(mount_info::to_registry): Ditto.
 | |
| 	(hash_path_name): No need for this to be a "C" function.
 | |
| 	* external.cc (cygwin32_internal): Export version info strings.
 | |
| 	* external.h: Add CW_GETVERSIONINFO.
 | |
| 	* fhandler.cc (fhandler_base::write): Eliminate use of MIN macro.
 | |
| 	* init.cc (set_dllname): Obsolete function.  Handled in version.cc.
 | |
| 	(dll_entry): Remove reference to set_dllname.
 | |
| 	* libccrt0.cc (this_proc): Renamed from cygwin_statu.
 | |
| 	(cygwin_crt0_common): Record api version in this_proc.
 | |
| 	* mmap.cc (recreate_mmaps_after_fork): No need for this to be
 | |
| 	a "C" function.
 | |
| 	* syscalls.cc (close_all_files): Ditto.
 | |
| 	* pinfo.cc (lock_pinfo_for_update): Eliminate a compiler warning.
 | |
| 	* registry.cc: Eliminate reg_session class. Augment reg_key to handle
 | |
| 	functionality of reg_session.
 | |
| 	* registry.h: Ditto.
 | |
| 	* shared.cc (shared_name): No need for this to be a "C" function.
 | |
| 	Use new cygwin version structure.
 | |
| 	(shared_info::initialize): Use new reg_key class constructor
 | |
| 	functionality.
 | |
| 	* smallprint.c (__small_vsprintf): Accept %P as a format specifier.
 | |
| 	Signifies the program name.
 | |
| 	* spawn.cc (spawn_guts): Quote *all* of the stuff the dcrt0.c considers
 | |
| 	special.
 | |
| 	* tty.cc (tty::inuse_event_exists): Remove debugging printf.  It results
 | |
| 	in too much output to strace log.
 | |
| 	* uinfo.cc: Add a needed include.
 | |
| 	* uname.cc (uname): Use new cygwin version structure to fill in utsname
 | |
| 	fields.
 | |
| 	* winsup.h: Regroup into sections.  Add new version structure.
 | |
| 	* include/utmp.h: Move login/logout function declarations here.
 | |
| 	* include/cygwin32/version.h: Define new CYGWIN version/info
 | |
| 	stuff here.
 | |
| 
 | |
| Fri Oct 16 00:13:35 1998  Geoffrey Noer <noer@cygnus.com>
 | |
| 
 | |
| 	* Makefile.in: enable building mingw subdir by default
 | |
| 
 | |
| Thu Oct 15 12:01:08 1998  Christopher Faylor <cgf@cygnus.com>
 | |
| 
 | |
| 	* spawn.cc (spawn_guts): Set all security attributes
 | |
| 	for CreateProcess so that sexec will work properly.
 | |
| 
 | |
| Thu Oct 15 08:49:12 1998  Christopher Faylor <cgf@cygnus.com>
 | |
| 
 | |
| 	* hinfo.cc (hinfo::dup2): Avoid a null pointer dereference
 | |
| 	in a debugging printf.
 | |
| 
 | |
| Wed Oct 14 18:06:51 1998  Geoffrey Noer <noer@cygnus.com>
 | |
| 
 | |
| 	patch from Corinna Vinschen <corinna.vinschen@cityweb.de>:
 | |
| 	* fhandler_console.cc (fhandler_console::dup): reset
 | |
| 	default_color since the console fhandler forgets its default
 | |
| 	colorizing when it's `dup'ed.
 | |
| 	(fhandler_console::fhandler_console): remove unnecessary
 | |
| 	erasing in constructor of fhandler_console.
 | |
| 
 | |
| Mon Oct 12 22:20:59 1998  Christopher Faylor <cgf@cygnus.com>
 | |
| 
 | |
| 	* fcntl.cc (fcntl): According to the "Single UNIX Specification",
 | |
| 	F_DUPFD should *not* close its argument.  Revert to previous
 | |
| 	behavior.
 | |
| 	* hinfo.cc (dup2): Guard against closing target fd too early.
 | |
| 	* pinfo.cc: Always initialize myself to a dummy value so that
 | |
| 	myself != NULL checks are avoided.
 | |
| 	* include/sys/strace.h (strace): Remove NULL check for myself.
 | |
| 	* dcrt0.cc (api_fatal): Ditto.
 | |
| 	* exceptions.cc (handle_exceptions): Ditto.
 | |
| 	* signal.cc (sigprocmask): Ditto.
 | |
| 	(_raise): Ditto.
 | |
| 	* strace.cc (get_strace_mutex): Ditto.
 | |
| 
 | |
| Mon Oct 12 15:19:47 1998  DJ Delorie  <dj@cygnus.com>
 | |
| 
 | |
| 	* utils/ps.cc (main): use const char *pname
 | |
| 
 | |
| Fri Oct  9 12:32:23 1998  Christopher Faylor <cgf@cygnus.com>
 | |
| 
 | |
| 	* syscalls.cc (getw): Simplify.
 | |
| 
 | |
| Thu Oct  8 23:09:34 1998  Geoffrey Noer <noer@cygnus.com>
 | |
| 
 | |
| 	* times.cc: add missing syscall_printfs to time functions,
 | |
| 	slight reformatting.
 | |
| 
 | |
| Thu Oct  8 21:56:37 1998 DJ Delorie <dj@cygnus.com>
 | |
| 
 | |
| 	* hinfo.cc (cygwin32_attach_handle_to_fd): allow to pass -1
 | |
| 	for dup() simulation; return allocated fd.
 | |
| 	* pinfo.cc (lock_pinfo_for_update): if the mutex is broken,
 | |
| 	fail instead of looping.  If you do loop, don't use 100% CPU.
 | |
| 
 | |
| Thu Oct  8 18:33:02 1998  Christopher Faylor <cgf@cygnus.com>
 | |
| 
 | |
| 	* dcrt0.cc: Add another per-thread object for strace.
 | |
| 	(quoted): Fix misconception of method used to quote
 | |
| 	quotes.
 | |
| 	(globify): Optionally output arguments.
 | |
| 	(build_argv): Ditto.
 | |
| 	(dll_crt0_1): Fix typo in line reassignment.
 | |
| 	* debug.cc (class locker): Avoid calling lock multiple times.
 | |
| 	* exceptions.cc (call_handler): Set strace recursion flag
 | |
| 	to zero when invoking a signal handler.
 | |
| 	* fcntl.cc (_fcntl): F_DUPFD should close its argument.
 | |
| 	* fork.cc (fork): Move determination of parent process to
 | |
| 	a safer place.
 | |
| 	* sigproc.cc (get_sig_dispatch_mutex):  Rename.  Use macro
 | |
| 	interface to provide the name of the caller for strace output.
 | |
| 	(release_sig_dispatch_mutex): Ditto.
 | |
| 	* sigproc.h: Define *_dispatch_mutex wrappers.
 | |
| 	* strace.cc (strace_printf): Use new per-thread object to
 | |
| 	guard against recursion.
 | |
| 	* winsup.h: Define per_thread_strace_protect.  Redo per_thread
 | |
| 	base class for a little more clarity.
 | |
| 
 | |
| Wed Oct  7 22:30:43 1998  Geoffrey Noer <noer@cygnus.com>
 | |
| 
 | |
| 	* fhandler_tty.h: up NTTYs from 16 to 128
 | |
| 
 | |
| Wed Oct  7 09:15:55 1998  Christopher Faylor <cgf@cygnus.com>
 | |
| 
 | |
| 	* fhandler_console.cc (console_read): Distinguish between
 | |
| 	0 byte return from CTRL-C and EOF condition.
 | |
| 
 | |
| Tue Oct  6 22:31:44 1998  Christopher Faylor <cgf@cygnus.com>
 | |
| 
 | |
| 	* dcrt0.cc (build_argv): Rewrite. Now: 1) allocates argv on
 | |
| 	the fly, 2) inserts '@' files as they are found, 3) uses
 | |
| 	sh-style quoting using either " or ' which may be embedded
 | |
| 	in an argument.
 | |
| 	(insert_file): Don't scan command line.  Accept already
 | |
| 	parsed arguments from build_argv.
 | |
| 	(quoted): New function for parsing quoted strings.
 | |
| 	(globify): Don't scan argv list.  Accept element from
 | |
| 	build_argv which will be tacked to end of argv as it
 | |
| 	is being built.  Extend quoting options to allow
 | |
| 	tilde, braces, and quotes.
 | |
| 	(dcrt0_dll_1): Simplify argv processing.  Just call
 | |
| 	build_argv, which handles everything.
 | |
| 
 | |
| Tue Oct  6 11:04:43 1998  Christopher Faylor <cgf@cygnus.com>
 | |
| 
 | |
| 	Change Create[A-Z]* calls throughout to use sec_none_nih
 | |
| 	to avoid subprocesses accidentally inheriting handles.
 | |
| 	* grp.cc: Hold group structures in group_buf rather than
 | |
| 	an image of the /etc/group file.
 | |
| 	(parse_grp): New function to parse a group line into a
 | |
| 	struct group.
 | |
| 	(add_grp_line): Use parse_grp to add line from /etc/group
 | |
| 	into internal cache.
 | |
| 	(read_etc_group): Avoid redundant feof call.  Set up
 | |
| 	default group.
 | |
| 	(getgrgid): Just return appropriate entry from group_buf
 | |
| 	rather than reparsing internal representation.
 | |
| 	(getgrnam): Ditto.
 | |
| 	(getgrent): Ditto.
 | |
| 	* hinfo.cc (hinfo::select_*): Set errno value when attempt
 | |
| 	is made to use an unopened fd.
 | |
| 	* passwd.cc: Hold passwd structures in passwd_buf rather than
 | |
| 	an image of the /etc/passwd file.
 | |
| 	(parse_pw): New function to parse a passwd line into a
 | |
| 	struct passwd.
 | |
| 	(add_pw_line): Use parse_pw to add line from /etc/passwd
 | |
| 	into internal cache.
 | |
| 	(read_etc_passwd): Avoid redundant feof call.
 | |
| 	(search_for): Just scan passwd_buf for matching entries.
 | |
| 	(getpwent): Just return appropriate entry from passwd_buf
 | |
| 	rather than reparsing internal representation.
 | |
| 
 | |
| Mon Oct  5 18:06:31 1998  Geoffrey Noer  <noer@cygnus.com>
 | |
| 
 | |
| 	patch from Corinna Vinschen <corinna.vinschen@cityweb.de>:
 | |
| 	* sysdef/kernel32.def: add missing GetDiskFreeSpaceEx lines
 | |
| 
 | |
| Sat Oct  3 23:52:23 1998  Christopher Faylor <cgf@cygnus.com>
 | |
| 
 | |
| 	* dcrt0.cc (si): Initialize so that NO_COPY will work.
 | |
| 	* debug.cc (class locker): Fix previous change.  Critical
 | |
| 	sections are still required, so protect them if operating
 | |
| 	in main thread to avoid signal problems.
 | |
| 	Make any previously static use of locker global since that
 | |
| 	appears to be the only foolproof way of marking the variable
 | |
| 	NO_COPY.  Rename these variables to something that is not
 | |
| 	likely to be collided with.
 | |
| 	* exceptions.cc (call_handler): Signal arrival of a dispatched
 | |
| 	signal here and wait a long time for the mutex before giving
 | |
| 	up.  Should increase performance slightly.
 | |
| 	* sigproc.cc (maintid): New external symbol.
 | |
| 	* sigproc.cc (maintid): Make this global since it is used
 | |
| 	in other places now.
 | |
| 	(sig_dispatch_pending): Don't wait for wait_sig to complete
 | |
| 	if there are no pending signals.  Avoids a race and should
 | |
| 	be faster.
 | |
| 	(wait_sig): Don't set signal_arrived event here.  Do it in
 | |
| 	call_handler.
 | |
| 	* strace.cc (strace_printf): Remove previous recursion check
 | |
| 	since it is not signal safe.
 | |
| 	* syscalls.cc (_read): Remove duplicate CreateEvent typo.
 | |
| 
 | |
| Fri Oct  2 09:54:42 1998  DJ Delorie  <dj@cygnus.com>
 | |
| 
 | |
| 	* strace.cc (strace_printf): protect against recursion
 | |
| 
 | |
| Thu Oct  1 17:08:47 1998  Geoffrey Noer  <noer@cygnus.com>
 | |
| 
 | |
| 	* utils/ps.cc (main): add more detailed usage printfs
 | |
| 
 | |
| Thu Oct  1 11:05:16 1998  Christopher Faylor <cgf@cygnus.com>
 | |
| 
 | |
| 	* Makefile.in: Fix typo in debug.o dependency.
 | |
| 	* debug.cc (class locker): Give up on using critical sections
 | |
| 	since they are not safe to use in the main thread due to signals.
 | |
| 
 | |
| Wed Sep 30 22:34:42 1998  Christopher Faylor <cgf@cygnus.com>
 | |
| 
 | |
| 	* fork.cc (fork): Close parent's parent_alive handle
 | |
| 	if there is one or suffer a handle leak.
 | |
| 	* syscalls.cc (_read): Make all events no access and
 | |
| 	non-inheritable or suffer potential handle leak.
 | |
| 	* windows.cc (gethwnd): Ditto.
 | |
| 
 | |
| Wed Sep 30 17:22:29 1998  Geoffrey Noer  <noer@cygnus.com>
 | |
| 
 | |
| 	* include/io.h: add missing setmode proto
 | |
| 
 | |
| Tue Sep 29 23:33:11 1998  Christopher Faylor <cgf@cygnus.com>
 | |
| 
 | |
| 	* fhandler_tty.cc (fhandler_pty_master::close): Make sure
 | |
| 	both sides of both pipes associated with a tty master are
 | |
| 	closed or suffer handle leaks.
 | |
| 
 | |
| Tue Sep 29 16:55:00 1998  Geoffrey Noer  <noer@cygnus.com>
 | |
| 
 | |
| 	* path.cc (mount_info::init): remove default mounts for
 | |
| 	raw devices.
 | |
| 	* utils/mount.cc (reset_mounts): ditto
 | |
| 	(main, usage): new -f flag disables warning messages about
 | |
| 	missing mount point directories.  Two new flags, disabled for
 | |
| 	now: -c will create missing mount point directory, -g will
 | |
| 	select adding the mount point to the global registry location.
 | |
| 	* include/sys/mount.h: add MOUNT_GLOBAL define, for future use.
 | |
| 
 | |
| Tue Sep 29 14:20:30 1998  Christopher Faylor <cgf@cygnus.com>
 | |
| 
 | |
| 	* exceptions.cc (exception): Use %p to denote some hex
 | |
| 	values.
 | |
| 	* winsup.h (read_info): Add jmp_buf to structure.  Required
 | |
| 	for syscalls.cc change below.
 | |
| 
 | |
| Mon Sep 28 19:36:41 1998  Syd Polk  <spolk@cygnus.com>
 | |
| 
 | |
| 	* include/{tchar.h, direct.h}: Added so that
 | |
| 	tcl8.1a2 can be compiled with cygwin.
 | |
| 
 | |
| Mon Sep 28 19:36:41 1998  Christopher Faylor <cgf@cygnus.com>
 | |
| 
 | |
| 	* syscalls.cc (thread_reset): Yet another method for
 | |
| 	handling interruptible reads.
 | |
| 	(_read): Use thread_reset to reset reads after a signal.
 | |
| 
 | |
| Sun Sep 27 21:11:46 1998  Christopher Faylor <cgf@cygnus.com>
 | |
| 
 | |
| 	* cygwin.din: New alias for __cygwin32_stack_trace.
 | |
| 	* debug.cc (find_handle): Avoid leaving function without
 | |
| 	unlocking.
 | |
| 	(newh): Ditto.
 | |
| 	* exceptions.cc (__cygwin32_stack_trace): Rename to just
 | |
| 	`stack'.  Shortens stack trace output.
 | |
| 	(exception): Use %p to distinguish register values.
 | |
| 	* fhandler_console.cc (fhandler_console::init): Remove
 | |
| 	debugging sig_protect.
 | |
| 	* init.cc (dll_entry): Move definition to avoid a
 | |
| 	compiler warning.
 | |
| 	* path.cc (mount_info::conv_to_win32_path): Detect
 | |
| 	case of root directory when setting win32 relative
 | |
| 	path.
 | |
| 	(mount): Remove obsolete label.
 | |
| 	* syscalls.cc (thread_sync): New function for exiting
 | |
| 	the read helper thread.
 | |
| 	(_read): Use new method for exiting the read helper
 | |
| 	thread.
 | |
| 
 | |
| Sun Sep 27 11:25:06 1998  Christopher Faylor <cgf@cygnus.com>
 | |
| 
 | |
| 	patch from sos@prospect.com.ru (Sergey Okhapkin):
 | |
| 	* delqueue.cc (delqueue_list::process_queue): Clear queue
 | |
| 	entry if file cannot be deleted for a reason other than
 | |
| 	sharing violation.
 | |
| 
 | |
| Fri Sep 25 08:52:50 1998  Christopher Faylor <cgf@cygnus.com>
 | |
| 
 | |
| 	* debug.cc: locker variables should all be static.
 | |
| 	* syscalls.cc (_read): Call ForceCloseHandle on
 | |
| 	thread handle since it is protected.
 | |
| 
 | |
| Thu Sep 24 18:59:25 1998  Geoffrey Noer  <noer@cygnus.com>
 | |
| 
 | |
| 	* path.cc (mount): don't verify that path is an existing
 | |
| 	directory.  Instead
 | |
| 	* utils/mount.cc: verify that path is an existing directory
 | |
| 	and print warning if it's not.  Still do the mount.
 | |
| 
 | |
| Thu Sep 24 11:45:04 1998  Christopher Faylor <cgf@cygnus.com>
 | |
| 
 | |
| 	* debug.cc: locker class variables must be NO_COPY since
 | |
| 	they contain data that should not be precisely duplicated
 | |
| 	after a fork.  This hopefully fixes a "SIGSEGV" problem.
 | |
| 	* select.cc (peek_pipe): Pipes apparently should set both
 | |
| 	"read" and "exception" flags on EOF.
 | |
| 
 | |
| Wed Sep 23 18:26:31 1998  DJ Delorie  <dj@cygnus.com>
 | |
| 
 | |
| 	* doc/doctool.c (main): typo checking for --help
 | |
| 
 | |
| Wed Sep 23 17:46:06 1998  Christopher Faylor <cgf@cygnus.com>
 | |
| 
 | |
| 	* path.cc (symlink_check_one):  Try much harder to ensure that
 | |
| 	CloseHandle is called on the file which was opened to check
 | |
| 	for a symlink.  Avoid obsolete check for NULL buf.
 | |
| 
 | |
| Wed Sep 23 17:11:50 1998  Christopher Faylor <cgf@cygnus.com>
 | |
| 
 | |
| 	* syscalls.cc (_read): Close thread handle or suffer a leak.
 | |
| 	* dir.cc (opendir): Simplify logic.
 | |
| 	(readdir): Ditto.  Close handle explicitly when hit end
 | |
| 	of files.
 | |
| 	(rewinddir): Close directory handle or suffer leak.
 | |
| 	(closedir): Simplify logic.
 | |
| 
 | |
| Wed Sep 23 14:42:12 1998  Christopher Faylor <cgf@cygnus.com>
 | |
| 
 | |
| 	patch from DJ Delorie <dj@cygnus.com>:
 | |
| 	* path.cc (symlink_check_one):  Don't re-define res or symlinks
 | |
| 	will be undetectable.
 | |
| 
 | |
| Wed Sep 23 12:02:39 1998  Christopher Faylor <cgf@cygnus.com>
 | |
| 
 | |
| 	* Change calls to api_fatal throughout to avoid need for \n
 | |
| 	(see below).
 | |
| 	Adapt some *_printf()/ExitProcess combinations to use api_fatal.
 | |
| 	* winsup.h (SIGTOMASK): Generate signal mask correctly for
 | |
| 	programs linked with newer cygwins.
 | |
| 	* dcrt0.cc (check_sanity_and_check): Set subtract constant for
 | |
| 	signal mask calculation based on whether binary was linked with
 | |
| 	"older" or "newer" cygwin.
 | |
| 	(do_global_ctors): Accept a second argument indicating whether
 | |
| 	the ctors should always be run.  Necessary in forked processes
 | |
| 	for cygwin constructors which may do more than just allocate memory.
 | |
| 	(checkout): Remove obsolete function.
 | |
| 	(dll_crt0_1): Remove obsolete function call.  Call do_global_ctors
 | |
| 	with second argument TRUE.
 | |
| 	(api_fatal): Change to a print-style function, allowing arguments.
 | |
| 	Always emit a "\n" after a message.
 | |
| 	(__main): Do not force running of constructors in forked processes.
 | |
| 	* exceptions.cc (call_handler): Simplify arguments passed to this
 | |
| 	function.  Eliminate potential race by setting signal masks here.
 | |
| 	(sig_handle): Just calculate current sigaction pointer once.
 | |
| 	Change call_handler arguments.
 | |
| 	* fhandler_console.cc (fhandler_console::write_normal): Output
 | |
| 	unknown characters to screen.
 | |
| 	(fhandler_console::write): Make signal protection synchronous.
 | |
| 	* fork.cc (fork): Reorganize slightly to eliminate a compiler warning.
 | |
| 	* init.cc (dll_entry): Temporarily remove freeing of waitq_storage
 | |
| 	on thread detach until a more robust scheme is developed.
 | |
| 	* signal.cc (signal): Make signal protection synchronous.
 | |
| 	(sigaction): Ditto.
 | |
| 	* sigproc.cc (get_sig_dispatch_mutex): More debug info.
 | |
| 	(release_sig_dispatch_mutex): Work around potential bug in windows
 | |
| 	with double allocation of a mutex when WaitForSingleObject is
 | |
| 	interrupted.  Save errno here only if about to call sig_send
 | |
| 	where it may be changed.
 | |
| 	(wait_sig): Remove unnecessary sig_sign stuff.  Add some debugging
 | |
| 	output.
 | |
| 	* termios.cc (tcflow): Signal protection.
 | |
| 	(tcgetattr): Ditto.
 | |
| 	(tcsetattr): Make signal protection synchronous.
 | |
| 	* winsup.h: Add new extern for SIGTOMASK macro.  Use it in SIGTOMASK
 | |
| 	macro.  Move errno stuff to end so that it can benefit from previous
 | |
| 	declarations.
 | |
| 	* configure.in: Move AC_CANONICAL_SYSTEM up a little to avoid having
 | |
| 	configure generate some code (like the check for host type) twice.
 | |
| 	* configure: Regenerate.
 | |
| 
 | |
| Wed Sep 23 11:49:55 1998  Christopher Faylor <cgf@cygnus.com>
 | |
| 
 | |
| 	* path.cc (symlink_check_one): Fix handle leak resulting
 | |
| 	from open of file to check for symlink magic.  Suggested
 | |
| 	by Corinna Vinschen <corinna.vinschen@cityweb.de> .
 | |
| 
 | |
| Wed Sep 23 08:33:26 1998  Christopher Faylor <cgf@cygnus.com>
 | |
| 
 | |
| 	patch from sos@prospect.com.ru (Sergey Okhapkin):
 | |
| 	* fhandler_tty.cc (process_ioctl): Use console handle
 | |
| 	for ioctl operations.
 | |
| 
 | |
| Tue Sep 22 23:58:20 1998  Geoffrey Noer  <noer@cygnus.com>
 | |
| 
 | |
| 	based on patch from sos@prospect.com.ru (Sergey Okhapkin):
 | |
| 	* utils/ps.cc (main): rewrite ps to give it more options,
 | |
| 	including a, e, f, l, and u.
 | |
| 
 | |
| Tue Sep 22 15:18:41 1998  Geoffrey Noer  <noer@cygnus.com>
 | |
| 
 | |
| 	* path.cc (umount): remove initial system_printf
 | |
| 	(mount): stat path, verify that it's an existing directory,
 | |
| 	otherwise fail.
 | |
| 	(strncasematch, strcasematch): return 0 instead of FALSE
 | |
| 	* utils/mount.cc (reset_mounts): reset / to System drive,
 | |
| 	not C: as was done in the old days.
 | |
| 
 | |
| Mon Sep 21 18:18:18 1998  Geoffrey Noer  <noer@cygnus.com>
 | |
| 
 | |
| 	* path.cc (mount, umount, setmntent, getmntent, endmntent):
 | |
| 	make extern "C"
 | |
| 
 | |
| Mon Sep 21 20:37:16 1998  DJ Delorie  <dj@cygnus.com>
 | |
| 
 | |
| 	* doc/configure.in: don't try to find cc until we can correctly
 | |
| 	configure it for a native cc in a cross build.
 | |
| 
 | |
| Mon Sep 21 17:17:14 1998  Geoffrey Noer  <noer@cygnus.com>
 | |
| 
 | |
| 	* fhandler.cc (fhandler_disk_file::check_execable_p):
 | |
| 	don't check for .shc since that's non-standard.  Check for
 | |
| 	.exe first.
 | |
| 
 | |
| Mon Sep 21 14:57:50 1998  Geoffrey Noer  <noer@cygnus.com>
 | |
| 
 | |
| 	* doc/Makefile.in: reference -db2html in case docbook
 | |
| 	tools aren't installed.
 | |
| 
 | |
| Mon Sep 21 14:43:40 1998  Geoffrey Noer  <noer@cygnus.com>
 | |
| 
 | |
| 	patch from DJ Delorie <dj@cygnus.com>:
 | |
| 	* doc/doctool.c (scan_file): correct off by one error in
 | |
| 	malloc
 | |
| 
 | |
| Mon Sep 21 14:28:38 1998  Christopher Faylor <cgf@cygnus.com>
 | |
| 
 | |
| 	* fhandler.h (select_record): Clear memory in constructor.
 | |
| 
 | |
| Mon Sep 21 08:49:22 1998  Christopher Faylor <cgf@cygnus.com>
 | |
| 
 | |
| 	patch from sos@prospect.com.ru (Sergey Okhapkin):
 | |
| 	* select.h: Use unsigned int to hold count in fd_set
 | |
| 	structure or suffer alignment problems.
 | |
| 	(WINSOCK_FD_ZERO): Back out previous change as it
 | |
| 	is no longer needed due to the above.
 | |
| 
 | |
| Sat Sep 19 22:58:18 1998  Christopher Faylor <cgf@cygnus.com>
 | |
| 
 | |
| 	* fhandler_console.cc (console_read): Keep looping in
 | |
| 	ENABLE_LINE_INPUT mode when no characters are read.
 | |
| 	This apparently means that a CTRL-C has been hit.
 | |
| 	* select.cc (select_record::operator new): Remove.
 | |
| 	(setlect_stuff::~select_stuff): Use delete to remove
 | |
| 	record.
 | |
| 	(pipe_cleanup): Remove unneeded statement.
 | |
| 	(poll_socket): Add debugging statement.
 | |
| 	(start_thread_socket): Add debugging statements.
 | |
| 	* fhandler.h: Remove new operator from select_record.
 | |
| 	* select.h: Make WINSOCK_FD_ZERO more aggressive.
 | |
| 	* sigproc.cc (allow_sig_dispatch): Use new errno
 | |
| 	saving method.
 | |
| 	* syscalls.cc (_read): Reorganize stack freeing
 | |
| 	code to avoid overhead when it's not needed and
 | |
| 	to actually decommit stack memory.
 | |
| 
 | |
| Sat Sep 19 19:16:32 1998  Christopher Faylor <cgf@cygnus.com>
 | |
| 
 | |
| 	patch from sos@prospect.com.ru (Sergey Okhapkin):
 | |
| 	* select.cc (socket_cleanup): Avoid using a pointer
 | |
| 	after it has been deleted.
 | |
| 
 | |
| Fri Sep 18 13:57:37 1998  Christopher Faylor <cgf@cygnus.com>
 | |
| 
 | |
| 	patch from sos@prospect.com.ru (Sergey Okhapkin):
 | |
| 	* Makefile.in: Really remove extra slash in INCLUDES.
 | |
| 	Previous change didn't work.
 | |
| 	pipe.cc (make_pipe): set close-on-exec flag for non-inheritable
 | |
| 	pipes.
 | |
| 
 | |
| Thu Sep 17 15:26:14 1998  Christopher Faylor <cgf@cygnus.com>
 | |
| 
 | |
| 	* doc/Makefile.in: Add dummy install target.
 | |
| 
 | |
| Thu Sep 17 12:30:49 1998  Christopher Faylor <cgf@cygnus.com>
 | |
| 
 | |
| 	* winsup.h (per_thread*): New classes for storing and
 | |
| 	manipulating per_thread information.
 | |
| 	(threadstuff): New array of per_thread objects which are
 | |
| 	manipulated after a fork.
 | |
| 	(read_helper_thread_info): read() thread local storage.
 | |
| 	(waitq_storage): wait() thread local storage.
 | |
| 	* debug.cc (class locker): New class for generic locking
 | |
| 	of debug table manipulation.  Use this throughout for
 | |
| 	locking access to thread/debug tables.
 | |
| 	(debug_init): Remove in favor of automatic constructor.
 | |
| 	* debug.h: Ditto.
 | |
| 	* fork.cc (fork): Iterate through threadstuff looking
 | |
| 	for thread information to clear out.  Should solve some
 | |
| 	problems for Windows 95/98.
 | |
| 	* init.cc (dll_entry): Remove thread storage initialization.
 | |
| 	Use per_thread class for DLL_THREAD_DETEACH.
 | |
| 	* sigproc.cc:  Use system_printf rather than alert_printf
 | |
| 	throughout since system_printf now has the same functionality.
 | |
| 	(sigproc_init): Use method to initialize per-thread storage.
 | |
| 	* sigproc.h: Remove waitq_storage declaration.
 | |
| 	* syscalls.cc (_read): Use per_thread class to manipulate
 | |
| 	per-thread information.
 | |
| 	* wait.cc (wait4): Ditto.
 | |
| 
 | |
| Wed Sep 16 12:58:49 1998  Christopher Faylor <cgf@cygnus.com>
 | |
| 
 | |
| 	* syscalls.c (_read): Lower timeout for signal detection after
 | |
| 	EOF on device.  Should fix recent configure performance problems.
 | |
| 	* Makefile.in: Extend clean target into regexp directory.
 | |
| 
 | |
| Wed Sep 16 11:44:14 1998  Christopher Faylor <cgf@cygnus.com>
 | |
| 
 | |
| 	* fhandler.cc (fhandler_base::set_name): Honor no_free_names().
 | |
| 	(fhandler_base::linearize): Remove unneeded check for NULL
 | |
| 	get_win32_name().
 | |
| 	(fhandler_disk_file::fhandler_disk_file): Set path names
 | |
| 	to a standard constant.  They should eventually be filled
 | |
| 	out by fhandler_disk_file::open.
 | |
| 	(fhandler_disk_file::open): Detect if win32_path_name_ is
 | |
| 	a dummy path.  Fill it out from real_path, if so.
 | |
| 	* hinfo.cc (hinfo::init_std_file_from_handle): Improve debugging
 | |
| 	statement.
 | |
| 	(hinfo::linearize_fd_array): Remove unneeded check for NULL
 | |
| 	get*_name ().
 | |
| 	* path.cc (path_conv::path_conv): Correct problem with
 | |
| 	symlinks found at places like E:\.
 | |
| 
 | |
| Wed Sep 16 02:25:33 1998  Geoffrey Noer  <noer@cygnus.com>
 | |
| 
 | |
| 	patch from sos@prospect.com.ru (Sergey Okhapkin):
 | |
| 	* fhandler.cc (fhandler_disk_file::open): fix typo.
 | |
| 
 | |
| Tue Sep 15 23:52:44 1998  Christopher Faylor <cgf@cygnus.com>
 | |
| 
 | |
| 	* winsup.h: Remove side effects from SLASH_P.
 | |
| 
 | |
| Tue Sep 15 18:36:08 1998  Ben Elliston  <bje@cygnus.com>
 | |
| 
 | |
| 	* sysdef/kernel32.def: Add definition for the Win32 API function
 | |
| 	`TryEnterCriticalSection'.
 | |
| 
 | |
| Tue Sep 15 12:26:48 1998  Christopher Faylor <cgf@cygnus.com>
 | |
| 
 | |
| 	* Makefile.in: Remove extra slash in INCLUDES.
 | |
| 	* hinfo.cc (hinfo::dup2): Always clear close-on-exec
 | |
| 	flag for duplicated handle (problem and fix determined
 | |
| 	by Sergey Okhapkin, sos@prospect.com.ru).
 | |
| 	* fhandler.cc (fhandler_base::set_name): Avoid use of empty
 | |
| 	path names.
 | |
| 	(fhandler_base::raw_read): Show error code on failure.
 | |
| 	(fhandler_base::linearize): Avoid copying NULL names.
 | |
| 	(fhandler_base::open): Use NULL detection in small_printf.
 | |
| 	(fhandler_base::dup): Move set_close_on_exec_flag to dup2
 | |
| 	so it is caught in all cases.
 | |
| 	(fhandler_disk_file::fhandler_disk_file): Set "no free names"
 | |
| 	flag.
 | |
| 	(fhandler_disk_file::open): Clear "no free names" flag since
 | |
| 	names have been allocated to the fhandler structure at this point.
 | |
| 	* fhandler.h (set_no_free_names): Newconditional "no free names"
 | |
| 	function.
 | |
| 	* hinfo.cc (hinfo::dup2): Clear close on exec here.
 | |
| 	(hinfo::linearize_fd_array): Avoid copying NULL names.
 | |
| 	* path.cc (normalize_posix_path): Avoid copying trailing slash
 | |
| 	if root.
 | |
| 	(nofinalslash): Rename variable.
 | |
| 	* path.h: Add flag for future use.
 | |
| 	* regexp/regerror.c: Avoid including RCS strings in product.
 | |
| 	* regexp/regsub.c: Ditto.
 | |
| 
 | |
| 	patch from sos@prospect.com.ru (Sergey Okhapkin):
 | |
| 	* select.cc (thread_pipe): Sleep for 10ms on every iteration.
 | |
| 	(start_thread_pipe): Set the handle in the select structure
 | |
| 	so that it will be properly identified in select_stuff::wait.
 | |
| 
 | |
| Tue Sep 15 12:28:30 1998  DJ Delorie  <dj@cygnus.com>
 | |
| 
 | |
| 	* added documentation and doctool.c
 | |
| 
 | |
| Tue Sep 15 08:37:26 1998  Christopher Faylor <cgf@cygnus.com>
 | |
| 
 | |
| 	* Makefile.in: Fix LIBGCC definition for native builds.
 | |
| 	Remove CFCOMMON in favor of configure solution.
 | |
| 	* configure.in: Default CXXFLAGS to be == CFLAGS.
 | |
| 	* configure: regenerate.
 | |
| 
 | |
| Sun Sep 13 19:52:04 1998  Geoffrey Noer  <noer@cygnus.com>
 | |
| 
 | |
| 	* Makefile.in: include ../libio when building
 | |
| 
 | |
| Sun Sep 13 19:30:58 1998  Geoffrey Noer  <noer@cygnus.com>
 | |
| 
 | |
| 	* include/cygwin32/version.h: bump version minor now that
 | |
| 	we've merged in all that new code...
 | |
| 
 | |
| Sun Sep 13 21:34:33 1998  Christopher Faylor <cgf@cygnus.com>
 | |
| 
 | |
| 	* dcrt0.cc (do_global_ctors): Reverse call order
 | |
| 	of constructors thanks to insight from Mumit Khan
 | |
| 	(hkan@xraylith.wisc.edu).
 | |
| 	(do_global_dtors): Reflect above change: invoke destructors
 | |
| 	in the proper order.
 | |
| 	* smallprint.c (__small_vsprintf): Gracefully detect a
 | |
| 	null pointer for '%s' format.
 | |
| 	* syscalls.cc (_read): Set correct flags to retrieve stack
 | |
| 	information or suffer sporadic failures due to uninitialized
 | |
| 	flag.
 | |
| 	* regexp/regexp.c: Comment out RCS string.  This provides
 | |
| 	no useful information in the .dll.
 | |
| 
 | |
| Thu Sep 10 21:09:51 1998  Christopher Faylor <cgf@cygnus.com>
 | |
| 
 | |
| 	Merge in experimental-980602 branch changes.
 | |
| 
 | |
| Thu Sep 10 21:09:51 1998  Christopher Faylor <cgf@cygnus.com>
 | |
| 
 | |
| 	* path.cc (symlink_check_one): known_suffix needs to be
 | |
| 	determined here in some cases, so deal with it here.
 | |
| 	(path_conv::path_conv): More effort needed to propagate
 | |
| 	the known_suffix back to caller in every case.
 | |
| 	(has_suffix): Return suffix found.
 | |
| 	(readlink): Avoid two passes through symlink_check_one.
 | |
| 	* spawn.cc (find_exec): Propagate known_suffix from
 | |
| 	perhaps_suffix back to caller, if appropriate.
 | |
| 	(spawn_guts): Use suffix returned from find_exec to
 | |
| 	determine if file should be scanned as a script when
 | |
| 	a #! file is found.  Avoids a duplicate call to
 | |
| 	perhaps_suffix.
 | |
| 
 | |
| Thu Sep 10 21:09:51 1998  Christopher Faylor <cgf@cygnus.com>
 | |
| 
 | |
| 	* path.h (suffix_info): New struct for dealing with standard
 | |
| 	suffix (.exe, .bat, etc.) information.
 | |
| 	(path_conv): Constructor now takes a suffix_info argument.
 | |
| 	(std_suffixes) Standard array of suffixes to consider "special".
 | |
| 	* path.cc (path_conv): Constructor now takes a suffix_info
 | |
| 	argument.  Record any known suffix in path_conv known_suffix
 | |
| 	field.
 | |
| 	(has_suffix): New function for determining if a path already
 | |
| 	has a known suffix.
 | |
| 	(next_suffix): New function for returning the next suffix from
 | |
| 	a list of suffixes.
 | |
| 	(symlink_check_one): Take an optional suffix_info argument
 | |
| 	for suffixes to consider or tack on.
 | |
| 	* spawn.cc (std_suffixes): Standard list of executable suffixes.
 | |
| 	(perhaps_suffix): Pass std_suffixes to path_conv.  Use
 | |
| 	new known_suffix field in path_conv to determine if a
 | |
| 	suffix has been detected.
 | |
| 
 | |
| Thu Sep 10 21:09:51 1998  Christopher Faylor <cgf@cygnus.com>
 | |
| 
 | |
| 	Substitute new str{,n}casematch for strcasecmp throughout.
 | |
| 	This implementation is faster since it only tests equality.
 | |
| 
 | |
| 	Change fhandler*::open throughout to return true/false
 | |
| 	since the pointer returned was never used for anything.
 | |
| 
 | |
| 	* Use strcasestr throughout for case insensitive matches for
 | |
| 	filenames.
 | |
| 	* Makefile.in: Use GNU make construct for determining gcc lib.
 | |
| 	* dcrt0.cc (check_sanity_and_sync): Make error message more
 | |
| 	explicit.
 | |
| 	* debug.h: Better defines for dummy functions when !DEBUGGING.
 | |
| 	* fhandler.cc (fhandler_base::fstat): Don't bother zeroing buf
 | |
| 	here since it is always done in the caller.
 | |
| 	(fhandler_base::~fhandler_base): Recognize cases where *_path_name_
 | |
| 	should not be freed.
 | |
| 	(fhandler_disk_file::open): Split into two functions.  First
 | |
| 	function performs a path_conv and does testing on same.  This
 | |
| 	calls new fhandler_disk_file::open with path_conv data.  New
 | |
| 	function is called by stat_worker to avoid extra path tests and
 | |
| 	mallocs.
 | |
| 	Also, fix long standing off-by-one typo looking for #! magic.
 | |
| 	Also, reapply test for != WinNT when checking files for magic.
 | |
| 	Otherwise there is a tremendous slowdown in file opening, especially
 | |
| 	for stat().
 | |
| 	* fhandler.h: Add support for setting/detecting when *_path_name
 | |
| 	should not be freed.
 | |
| 	Add new fhandler_disk_file::open declaration.
 | |
| 	* hinfo.cc (digits): Remove obsolete function.
 | |
| 	(hinfo::build_fhandler): Add default name for FH_DISK.
 | |
| 	* path.cc (path_prefix_p_): Don't check beyond len1 for leading
 | |
| 	slash.  Responsible for reported performance problems?
 | |
| 	(path_conv::path_conv): Ensure that fileattr is filled out
 | |
| 	correctly in all cases.  Return immediately when a file
 | |
| 	is detected in !follow_mode.
 | |
| 	(nofinalslash): Simplify.
 | |
| 	(strncasematch): New function similar to strncasecmp except
 | |
| 	that it only checks for =/!= and benchmarks faster than same.
 | |
| 	(strcasematch): Ditto, re. strcasecmp.
 | |
| 	(strcasestr): New function which does a case-insensitive strstr.
 | |
| 	Needed for filename matching.
 | |
| 	* smallprint.c (__small_vsprintf): Fix off-by-one in %.ns processing.
 | |
| 	* spawn.cc (exe_exts): Make global for eventual use by other modules.
 | |
| 	* syscalls.cc (_fstat): Zero buf prior to use.
 | |
| 	(stat_worker): Rename from _stat_worker. Reorganize to minimize
 | |
| 	mallocs and path name conversions.  Should now perform only one
 | |
| 	path conversion and 0 malloc/frees.
 | |
| 	* winsup.h: Declare new functions.
 | |
| 
 | |
| Thu Sep 10 21:09:51 1998  Christopher Faylor <cgf@cygnus.com>
 | |
| 
 | |
| 	Clean up error messages throughout using new strace_printf
 | |
| 	options.
 | |
| 	* smallprint.c (__small_vsprintf): Add %E option for printing
 | |
| 	error code.  Understand %.n syntax.
 | |
| 	* strace.cc (strace_vsprintf): Common routine for formatting
 | |
| 	strace output.  Default to always ending with \n unless
 | |
| 	string ends with \b.
 | |
| 	(strace_write): Common routine for writing to strace output.
 | |
| 	(strace_printf): Use above two routines.
 | |
| 	(system_printf): Ditto.
 | |
| 	* path.cc (path_conv): Scan path to be converted from right
 | |
| 	to left for efficiency.  Implement extension searching
 | |
| 	which is passed from spawn to symlink_check_one to minimize
 | |
| 	overhead.
 | |
| 	(symlink_check_one): Check extensions for existence for use
 | |
| 	with spawn.
 | |
| 	(readlink): Accommodate changes to symlink_check_one.
 | |
| 	* spawn.cc (perhaps_suffix): Use new extension checking
 | |
| 	capabilities of path_conv.
 | |
| 	(find_exec_1): Delete.
 | |
| 	(find_exec): Generalize to allow searching on any PATH like
 | |
| 	environment variable.
 | |
| 	* dllfcn.cc (check_path_access): Use find_exec to find a path.
 | |
| 	This also ensures that paths are in Windows format which was
 | |
| 	not the case before.
 | |
| 	* environ.cc (conv_envvars): Add LD_LIBRARY_PATH.
 | |
| 	* fork.cc (fork): Clean up dll loading slightly.
 | |
| 	* Makefile.in: Turn on compiler warnings.
 | |
| 	* winsup.h (save_errno): New class for saving errno from
 | |
| 	being clobbered.
 | |
| 	* include/sys/strace.h: Make system_printf a macro similar
 | |
| 	to strace_printf_wrapper.
 | |
| 
 | |
| Thu Sep 10 21:09:51 1998  Christopher Faylor <cgf@cygnus.com>
 | |
| 
 | |
| 	* sigproc.cc (sig_send): Attempt to work around Windows strangeness
 | |
| 	when thread interrupted while waiting for completion event.
 | |
| 
 | |
| Thu Sep 10 21:09:51 1998  Christopher Faylor <cgf@cygnus.com>
 | |
| 
 | |
| 	* dcrt0.cc: Remove debugging function DELETEME ().
 | |
| 	* fhandler.cc (fhandler_base::fstat): Respond to compiler warning.
 | |
| 	* signal.cc (sleep): Reset signal_arrived event before using it or
 | |
| 	we could wake up immediately.
 | |
| 	(usleep): Ditto.
 | |
| 	(pause): Ditto.
 | |
| 	* spawn.cc (spawn_guts): Ditto.  Respond to compiler warning.
 | |
| 	* sigproc.cc (sig_send): More debugging info.
 | |
| 	(sig_dispatch_mutex): Only ping wait_sig when needed.
 | |
| 
 | |
| Thu Sep 10 21:09:51 1998  Christopher Faylor <cgf@cygnus.com>
 | |
| 
 | |
| 	* select.cc (socket_cleanup): Close thread handle or suffer
 | |
| 	handle leak.
 | |
| 
 | |
| Thu Sep 10 21:09:51 1998  Christopher Faylor <cgf@cygnus.com>
 | |
| 
 | |
| 	* select.cc (verify_true): New function.
 | |
| 	(fhandler_socket::select_*): Use verify_true for verification
 | |
| 	function to avoid multiple calls to socket select.
 | |
| 
 | |
| Thu Sep 10 21:09:51 1998  Christopher Faylor <cgf@cygnus.com>
 | |
| 
 | |
| 	* select.cc (select_stuff::wait): Scan entire list of fds
 | |
| 	when WFMO wakes up.
 | |
| 	(set_bits): Add some strace debugging output.
 | |
| 	(thread_socket): Ditto.
 | |
| 	(verify_ok): Return result of set_bits rather than always 1.
 | |
| 	(start_thread_socket): Set the handle in the select structure
 | |
| 	so that it will be properly identified in select_stuff::wait.
 | |
| 	(fhandler_windows::select_read): Verification routine should
 | |
| 	be `poll_windows'.
 | |
| 
 | |
| Thu Sep 10 21:09:51 1998  Christopher Faylor <cgf@cygnus.com>
 | |
| 
 | |
| 	* sigproc.cc: Change some sigproc_printfs to only occur when
 | |
| 	#ifdef DEBUGGING.
 | |
| 	* spawn.cc (perhaps_suffix): Search for (PROG is the pathname to
 | |
| 	the executable file)  PROG.exe, PROG.com, PROG.bat, PROG.cmd, and
 | |
| 	PROG and return extension found or NULL if no matching file.
 | |
| 	(spawn_guts): If the file name of the executable ends in either
 | |
| 	.exe, .com, .bat, or .cmd we assume that it is not a script file
 | |
| 	and therefore do not open the file to determine if it is.
 | |
| 	Fix "wait_failed" error when exec() called and non-cygwin parent.
 | |
| 
 | |
| Thu Sep 10 21:09:51 1998  Christopher Faylor <cgf@cygnus.com>
 | |
| 
 | |
| 	* dir.cc (rmdir): Set correct errno when non-empty directory and
 | |
| 	Windows9x.
 | |
| 	* pipe.cc (pipe): Use binary mode by default for pipes.
 | |
| 	* syscalls.cc (_read): Wait for terminated thread to exit before
 | |
| 	clearing its stack memory.
 | |
| 
 | |
| Thu Sep 10 21:09:51 1998  Christopher Faylor <cgf@cygnus.com>
 | |
| 
 | |
| 	* hinfo.cc (hinfo::fixup_after_fork): Start initial fd search
 | |
| 	to zero forked processes so that a close(0)/dup(fd) will work.
 | |
| 
 | |
| Thu Sep 10 21:09:51 1998  Christopher Faylor <cgf@cygnus.com>
 | |
| 
 | |
| 	* fhandler_windows::set_close_on_exec: Deal with possible
 | |
| 	NULL handle.
 | |
| 	(fhandler_windows::fixup_after_fork): Ditto.
 | |
| 	* select.cc (select_stuff:wait): Handle return from
 | |
| 	MsgWaitForMultipleObjects correctly for windows case.
 | |
| 	* sigproc.cc (sig_send): Reset completion event for main thread.
 | |
| 	* syscalls.cc (_read): Better handling of stack free condition.
 | |
| 
 | |
| Thu Sep 10 21:09:51 1998  Christopher Faylor <cgf@cygnus.com>
 | |
| 
 | |
| 	* exceptions.cc (call_handler): Exit earlier if just running
 | |
| 	in an exec'ed stub since the stub may own the sig_dispatch mutex,
 | |
| 	but we still want to exit.
 | |
| 	* select.cc (select_stuff::wait): Fix check for window activity
 | |
| 	from MsgWaitForMultipleObjects.  Handle infinite wait correctly.
 | |
| 	(poll_windows): Add debugging output.
 | |
| 	* spawn.cc (spawn_guts): Protect against signals interrupting
 | |
| 	at an inopportune moment.
 | |
| 
 | |
| Thu Sep 10 21:09:51 1998  Christopher Faylor <cgf@cygnus.com>
 | |
| 
 | |
| 	* select.cc (select_stuff:test_and_set): Take appropriate action
 | |
| 	when a select record uses a window_handle.
 | |
| 	(fhandler_windows::select_read): Set handle and windows_handle
 | |
| 	appropriately.
 | |
| 	(fhandler_windows::select_write): Ditto.
 | |
| 	(fhandler_windows::select_except): Ditto.
 | |
| 
 | |
| Thu Sep 10 21:09:51 1998  Christopher Faylor <cgf@cygnus.com>
 | |
| 
 | |
| 	* select.cc (cygwin32_select): Need to reset signal_arrived before
 | |
| 	testing it or suffer loop.
 | |
| 
 | |
| Thu Sep 10 21:09:51 1998  Christopher Faylor <cgf@cygnus.com>
 | |
| 
 | |
| 	* fork.cc (resume_child): Give up on SuspendThread synchronization
 | |
| 	and use subproc_ready/forker_finished events.
 | |
| 	(sync_with_parent): Ditto.
 | |
| 	* sigproc.cc (wait_sig): Make sigcomplete_main manual reset to
 | |
| 	allow handling of nested interrupts.
 | |
| 	(wait_sig): Fix stupid typo on exit that would cause a
 | |
| 	loop to run for a long time.  Are exits faster now?
 | |
| 
 | |
| Thu Sep 10 21:09:51 1998  Christopher Faylor <cgf@cygnus.com>
 | |
| 
 | |
| 	* exceptions.cc (unlock_cs): Leave decision to release
 | |
| 	sig_dispatch_mutex to the caller.
 | |
| 	(set_process_mask): Call release_sig_dispatch_mutex explicitly
 | |
| 	if needed.
 | |
| 	(handle_sigsuspend): unlock_cs no longer takes an argument.
 | |
| 	(call_handler): Try to acquire the strace mutex prior to
 | |
| 	suspending the main thread to ensure that the mutex is always
 | |
| 	released.
 | |
| 	(sig_handle): Call release_sig_dispatch_mutex explicitly.
 | |
| 	* fhandler_console.cc (fhandler_console::write): Protect against
 | |
| 	signals while writing.
 | |
| 	* signal.cc (signal): Protect against signal dispatch.
 | |
| 	(sigaction): Ditto.
 | |
| 	* sigproc.cc (sig_dispatch_pending): Return status no longer needed.
 | |
| 	(sig_send): Assume pending_signals if sending signal to self.
 | |
| 	(allow_sig_dispatch): Accept synchronize argument to control whether
 | |
| 	to wait for wait_sig to do its thing.
 | |
| 	(release_sig_dispatch_mutex): Just awaken wait_sig loop and wait
 | |
| 	for acknowledgement if waitfor is TRUE.
 | |
| 	(wait_sig): Don't ever zero pending_signals to avoid a possible race.
 | |
| 	Set pending_signals for blocked signals, too.
 | |
| 	* sigproc.h: Add __SIGFLUSH signal.
 | |
| 	(class sig_protect): Allow destructor to wait for signal dispatch,
 | |
| 	or not given constructor argument.
 | |
| 	* strace.cc (get_strace_mutex): Renamed from waitfor_strace_mutex.
 | |
| 	(release_strace_mutex): External function for use by call_handler.
 | |
| 	This replaces raw calls to ReleaseMutex throughout.
 | |
| 	* syscalls.cc (_read): Use sig_protect to protect against signals.
 | |
| 	Other cosmetic cleanups.
 | |
| 	(_close): Protect function with sig_protect.
 | |
| 	* termios.cc (tcsetattr): Protect function with sig_protect.
 | |
| 
 | |
| Thu Sep 10 21:09:51 1998  DJ Delorie  <dj@cygnus.com>
 | |
| 
 | |
| 	* syscalls.cc (_read): typo in matching printf format to args.
 | |
| 
 | |
| 	* fhandler.cc (write): Switch to the Microsoft/DJGPP way of
 | |
| 	writing out text files: pass \r but prepend \r to \n.
 | |
| 	(read): Don't collapse multiple \r's.
 | |
| 
 | |
| 	* delqueue.cc: rewritten for speed.  Don't check *every* entry in
 | |
| 	the list if we know the list is empty, plus check for duplicates.
 | |
| 	* delqueue.h: ditto.
 | |
| 	* path.cc (path_conv): If a path component is missing, short-
 | |
| 	circuit the symlink check.
 | |
| 
 | |
| Thu Sep 10 21:09:51 1998  Christopher Faylor <cgf@cygnus.com>
 | |
| 
 | |
| 	* fhandler.h: Reorder fhandler status field so that device is
 | |
| 	in lower bits.  This allows gcc to optimize access to the device.
 | |
| 	* hinfo.cc: Inline not_open().
 | |
| 	* winsup.h: Inline hinfo::not_open().  Make hinfo::[] operator a
 | |
| 	simple array reference.
 | |
| 	* strace.cc: Change strace() to a macro.
 | |
| 	* include/sys/strace.h: Ditto.
 | |
| 	* syscalls.cc (read_handler): New function.  Called directly from
 | |
| 	_read for "non-slow" devices or via read_handler for slow devices.
 | |
| 	(_read): Use read_handler for reading.
 | |
| 	(read_helper): Ditto.
 | |
| 
 | |
| Thu Sep 10 21:09:51 1998  Christopher Faylor <cgf@cygnus.com>
 | |
| 
 | |
| 	* dcrt0.cc (do_exit): Don't ignore signals if reparenting.
 | |
| 	Besides being a race, this screws up the process which is
 | |
| 	actually executing.
 | |
| 	* fork.cc (fork): Don't create a new process group when
 | |
| 	forking or subprocesses won't respond to CTRL-C.
 | |
| 	* syscalls.cc (_read): Ensure correct setting of EINTR errno.
 | |
| 
 | |
| Thu Sep 10 21:09:51 1998  Christopher Faylor <cgf@cygnus.com>
 | |
| 
 | |
| 	* fork.cc (sync_with_child): Consider it a success if the child
 | |
| 	has set the subproc_ready signal regardless of whether it has
 | |
| 	exited or not.
 | |
| 	* init.cc (dll_entry): Set read_helper_thread_info stuff to 0
 | |
| 	on dll initialization.  Windows 95 seems to keep garbage here,
 | |
| 	despite documentation to the contrary.
 | |
| 	* syscalls.cc (_read): Report on errors to create read_helper
 | |
| 	events.
 | |
| 
 | |
| Thu Sep 10 21:09:51 1998  Christopher Faylor <cgf@cygnus.com>
 | |
| 
 | |
| 	* dcrt0.cc (compute_argc): Limit debug_printf string argument size
 | |
| 	or suffer a buffer overrun.
 | |
| 	(do_exit): Add debugging statement.
 | |
| 	* exceptions.cc (call_handler): Remove extraneous sigproc_printf.
 | |
| 	Consolidate signal_arrived event with sig_was_dispatched.
 | |
| 	(events_terminate): Consolidate signal_arrived event with
 | |
| 	sig_was_dispatched.
 | |
| 	* fhandler.h: Rename a field to something more mnemonic.
 | |
| 	* fhandler_tty.cc: Throughout: Only set up fhandler_tty_master when
 | |
| 	actually using ttys.  Change tty_master `f' field to `console'.
 | |
| 	* tty.cc: Ditto.
 | |
| 	* fork.cc (sync_with_child): Add more information to "child died"
 | |
| 	error.
 | |
| 	* hinfo.cc (hinfo::build_fhandler): Call tty master constructor
 | |
| 	when appropriate.
 | |
| 	* select.cc (select_stuff::wait): Consolidate signal_arrived event
 | |
| 	with sig_was_dispatched.
 | |
| 	* sigproc.h: Ditto.
 | |
| 	* syscalls.cc (_read): Ditto.
 | |
| 	* winsup.h: Ditto.
 | |
| 	* sigproc.cc:  Ditto, throughout.
 | |
| 	(block_sig_dispatch): Don't reset signal_arrived.  Causes races.
 | |
| 	* spawn.cc (spawn_guts): Limit debug_printf string argument size
 | |
| 	or suffer a buffer overrun.
 | |
| 	* include/sys/strace.h:  Implement strace_minimal for very minimal
 | |
| 	output which, hopefully, will not affect the behavior of traced
 | |
| 	programs as much.
 | |
| 
 | |
| Thu Sep 10 21:09:51 1998  Geoffrey Noer  <noer@cygnus.com>
 | |
| 
 | |
| 	* Makefile.in: build libwinspool.a with the dll name winspool.drv
 | |
| 
 | |
| Thu Sep 10 21:09:51 1998  Christopher Faylor <cgf@cygnus.com>
 | |
| 
 | |
| 	* dcrt0.cc (build_argv):  Remove verbose debug_printf.
 | |
| 	(dll_crt0_1): Use shared data handle passed in from parent process
 | |
| 	when appropriate.  Remove extraneous debug_printf.
 | |
| 	* environ.cc (getwinenv): New function.  Returns (possibly cached)
 | |
| 	native version of an environment variable.
 | |
| 	(win_env::add_cache): Add cached version of posix and win env
 | |
| 	variables to local table.
 | |
| 	(posify): Modify for use with native caching.
 | |
| 	(setenv): Convert special environment variables to native here,
 | |
| 	when they are set.
 | |
| 	(struct parse_thing): Simplify struct.
 | |
| 	(struct parse_things): Extend table to accommodate "envcache"
 | |
| 	setting.
 | |
| 	(parse_options): Add "envcache" option to control whether special
 | |
| 	environment variables are cached.  Simplify handling of remembered
 | |
| 	parameters.
 | |
| 	(winenv): Modify for use with getwinenv.
 | |
| 	* exceptions.cc (unlock_cs): release_sig_dispatch takes an argument
 | |
| 	now.
 | |
| 	(set_process_mask): unlock_cs now wakens wait_sig when appropriate.
 | |
| 	(handle_sigsuspend): Reorganize to take advantage of new behavior
 | |
| 	of release_sig_dispatch_mutex and hopefully avoid a race.
 | |
| 	(handle_sig): Avoid waking wait_sig if we couldn't get the dispatch
 | |
| 	mutex.
 | |
| 	* exec.cc (strccpy): Change to modify second argument to point
 | |
| 	to position where "parse" stopped so that it doesn't have to be
 | |
| 	recalculated by the caller.
 | |
| 	(sexecvpe): Use find_exec () to find program to run.  If you've
 | |
| 	got a function for this, you might as well use it.
 | |
| 	* fhandler_tty.cc (fhandler_pty_master::process_input_to_slave):
 | |
| 	Report on signal being sent in termios_printf.  Use kill_pgrp
 | |
| 	interface.
 | |
| 	* fork.cc (fork_copy): Just copy everything at once rather than
 | |
| 	in individual pieces.
 | |
| 	(fork): Potentially move up sbrk() when DEBUGGING so that parent
 | |
| 	and child heaps are in sync.  Pass cygwin_shared_h to child.
 | |
| 	* path.cc (path_conv::path_conv): Make sure that a file is not
 | |
| 	a symlink when returning immediately.
 | |
| 	* sigproc.cc (sig_dispatch_pending): Return TRUE if signals were
 | |
| 	pending.
 | |
| 	(sigproc_init): Move sig_was_dispatched initialization here so
 | |
| 	that it will always be available to other functions which rely
 | |
| 	on it.  Otherwise these functions would have to wait for wait_sig
 | |
| 	to complete its initialization.
 | |
| 	(sig_send): Rework SIGSUSPEND handling.
 | |
| 	(release_sig_dispatch_mutex): Wait for signal to be dispatched
 | |
| 	after releasing mutex if argument is TRUE.
 | |
| 	(wait_sig): Remove sig_was_dispatched initialization from here.
 | |
| 	* sigproc.h: release_sig_dispatch takes an argument.
 | |
| 	* spawn.cc (perhaps_suffix): Take an optional argument indicating
 | |
| 	whether the path has already been converted to win32.
 | |
| 	(find_exec_1): Use getwinenv to get windows version of PATH.  Use
 | |
| 	windows version of individual directories to avoid posix lookups.
 | |
| 	(spawn_guts): Call strace_dump here to cause strace output to
 | |
| 	be slightly more synced when using strace caching.
 | |
| 	(spawnvpe): Use find_exec () to find program to run.  If you've
 | |
| 	got a function for this, you might as well use it.
 | |
| 	* syscalls.cc (_read): Only block signals for "slow" devices.
 | |
| 	* winsup.h: Changes needed for previous checkin and getwinenv.
 | |
| 
 | |
| Thu Sep 10 21:09:51 1998  DJ Delorie  <dj@cygnus.com>
 | |
| 
 | |
| 	* path.cc (path_conv): bug fix when path ends in slash
 | |
| 
 | |
| Thu Sep 10 21:09:51 1998  Christopher Faylor <cgf@cygnus.com>
 | |
| 
 | |
| 	* fhandler.cc (fhandler_base::set_name): Use fhandler
 | |
| 	method for determining native name.  Avoid path_conv
 | |
| 	when possible.
 | |
| 	(fhandler_disk_file::get_native): New function, returns
 | |
| 	windows name of disk file.
 | |
| 	* fhandler.h: Add get_native() method to fhandler_*
 | |
| 	classes.
 | |
| 	* fhandler_serial.cc (fhandler_serial::get_native): Return
 | |
| 	windows name of serial port.
 | |
| 	* fhandler_tty.cc (fhandler_tty_master::init): Use consistent
 | |
| 	name for tty master.
 | |
| 	* fork.cc (fork_copy): Experimental change to avoid loop.
 | |
| 	* grp.cc (add_grp_line): Use realloc to extend group buffer.
 | |
| 	* hinfo.cc (hinfo::release): fd object should be deleted,
 | |
| 	not freed or suffer a memory leak.
 | |
| 	(init_std_file_from_handle): Reset first_fd_for_open to
 | |
| 	signal that std* locations have been opened.  Avoids use
 | |
| 	of these locations prior to full dtable setup.
 | |
| 	* passwd.cc (add_pwd_line): Use realloc to extend passwd buffer.
 | |
| 	* path.cc (path_conv::path_conv): Avoid checking for symlinks on
 | |
| 	network shares.  Check for existence of file prior to taking
 | |
| 	it apart for symlink checking (this needs more work).
 | |
| 	(windows_device_names): Make global.
 | |
| 	(get_device_number): Detect tty master.
 | |
| 	* sigproc.cc (wait_sig): Maintain a flag which indicates when
 | |
| 	signals are queued due to the wait_sig's inability to get a
 | |
| 	sig_dispatch mutex.
 | |
| 	(sig_dispatch_pending): Don't wake up the wait_sig thread if
 | |
| 	unless there are signals queued (see above) or force argument.
 | |
| 	(allow_sig_dispatch): Only wait for signal dispatch if something
 | |
| 	is queued.
 | |
| 	* sigproc.h: allow_sig_dispatch takes a (defaulted) argument now.
 | |
| 	* syscalls.cc (_open): Use default hinfo::find_unused_handle call.
 | |
| 	* net.cc:  Ditto, throughout.
 | |
| 	* pipe.cc: Ditto.
 | |
| 
 | |
| Thu Sep 10 21:09:51 1998  Christopher Faylor <cgf@cygnus.com>
 | |
| 
 | |
| 	* dcrt0.cc (do_exit): Ignore user initiated signals here.
 | |
| 	* fhandler.cc (fhandler_disk_file::open): Detect error condition
 | |
| 	on fhandler_base::open.
 | |
| 	* fhandler_console.cc (undo_input): Respond to compiler warnings.
 | |
| 	* grp.cc (getgrgid): Ditto.
 | |
| 	* times.cc (_tzname): Ditto.
 | |
| 	* fhandler_tty.cc (fhandler_Tty_slave::open): Cosmetic changes.
 | |
| 	* fork.cc: Clean up debugging output.
 | |
| 	* pinfo.cc (pinfo_init): Set pgid and sid to different values
 | |
| 	initially.  Let user program set sid appropriately if it is
 | |
| 	to be the owner of a tty.
 | |
| 	* sigproc.cc (allow_sig_dispatch): Try harder to detect when we
 | |
| 	should wait for a signal dispatch.
 | |
| 	* strace.cc (strace_open): Revert to previous mutex behavior.
 | |
| 	* include/sys/strace.h: Ditto.
 | |
| 	* syscalls.cc (_open): Detect error from fhandler open.
 | |
| 
 | |
| Thu Sep 10 21:09:51 1998  Christopher Faylor <cgf@cygnus.com>
 | |
| 
 | |
| 	Global changes:
 | |
| 	Store win32 name in fhandler structure to avoid multiple translations.
 | |
| 	Support close_on_exec at the Win32 level for all but sockets.
 | |
| 	Respond to gcc warnings.
 | |
| 	Use single fstat() call for devices.
 | |
| 	*::set_close_on_exec modified.
 | |
| 	* dir.cc (opendir): Use win32 name in stat to speed things
 | |
| 	up a little.
 | |
| 	* debug.cc: New file.  Provides routines for extra debugging
 | |
| 	when -DDEBUGGING is specified.
 | |
| 	* debug.h: New file. Definitions for debug.cc.
 | |
| 	* exceptions.cc (signals_init): Break out signal initialization
 | |
| 	from exceptions.
 | |
| 	(dump_status): Add thread name to stack dump output.
 | |
| 	(handle_exceptions): Renamed.
 | |
| 	(set_process_mask): Don't ever mask non-maskable signals.
 | |
| 	(ctrl_c_handler): Preliminary change to allow propagation of
 | |
| 	cygwin signals back to gdb.
 | |
| 	(sig_handle): Call do_exit directly from signal thread rather than
 | |
| 	attempting to redirect the main thread.
 | |
| 	* fhandler.cc (set_name): Store win32 name in fhandler structure.
 | |
| 	(*::open) name field is extraneous now. Use get_win32_name () to
 | |
| 	retrieve stored win32 name.
 | |
| 	(fhandler_base::fstat): Default to performing fstat on a device.
 | |
| 	(fhandler_disk_file::fstat): Renamed from fhandler_base::fstat.
 | |
| 	Operate only on disk files.
 | |
| 	(fhandler_base::set_close_on_exec_flag): New function sets flag
 | |
| 	without touching the handle.
 | |
| 	(fhandler_base::~fhandler_base): Free unix/win32 path names.
 | |
| 	(fhandler_disk_file::close): Only call delqueue.process_queue from
 | |
| 	this function since disk files are the only things that can
 | |
| 	be unlinked, currently.
 | |
| 	(fhandler_dev_null::open): Delete.
 | |
| 	(set_inheritence): New function.  Set handle inheritence.
 | |
| 	(fhandler_*::fork_fixup): New functions.  Inherit fhandler data
 | |
| 	after a fork.
 | |
| 	fhandler.h: *::set_output_handle - new method.
 | |
| 	Setup methods for use by select().
 | |
| 	fork.cc (fork): Call fixup_after_fork in child to inherit
 | |
| 	handles marked as non-inheritable on CreateProcess.
 | |
| 	hinfo.cc (hinfo::build_fhandler): Use new function to detect
 | |
| 	devices.
 | |
| 	(dup_for_exec): Delete obsolete function.
 | |
| 	(hinfo::dup2): Remove extraneous tests.
 | |
| 	(hinfo::select_*): Interfaces into select().
 | |
| 	(hinfo::release): Free fd in dtable.
 | |
| 	(hinfo::fixup_after_fork): New function.  Inherit close-on-exec
 | |
| 	handles from parent after fork.
 | |
| 	path.cc (mount_info::posix_path_p): Make inline.
 | |
| 	(path_conv::path_conv): Short circuit when path resolves to a device.
 | |
| 	(digits): Move here from hinfo.cc.
 | |
| 	(windows_device_names): Win32 names for Cygwin devices.
 | |
| 	(get_device_number): New function.  Return devie number given device
 | |
| 	name.
 | |
| 	(win32_device_name): New function.  Decode a windows device name
 | |
| 	and an optional "unit".
 | |
| 	(mount_info::conv_to_win32_path): Short circuit when path resolves to
 | |
| 	a device.
 | |
| 	* path.h: add device and unit fields to path_conv class.
 | |
| 	* select.cc: Rewrite for more structure, more OO.
 | |
| 	* sigproc.cc: (get_sig_dispatch_mutex): New function.
 | |
| 	(release_sig_dispatch_mutex): New function.
 | |
| 	* sigproc.h: sig_protect class.  Automatic protection from signals
 | |
| 	when used.
 | |
| 	* syscalls.cc (stat_dev): New function.
 | |
| 	(stat_worker): Short-circuit when a cygwin device is detected.
 | |
| 	* utils/ps.cc: Don't lock_pinfo when -f.  Compress format to fit
 | |
| 	more on a line.
 | |
| 
 | |
| Thu Sep 10 21:09:51 1998  Christopher Faylor <cgf@cygnus.com>
 | |
| 
 | |
| 	* dcrt0.cc (dll_crt0_1): Register name for main thread.
 | |
| 	* exceptions.cc (dump_status): Add thread name to diagnostic output.
 | |
| 	(__cygwin32_exception_handler): Rename to handle_exceptions.  Avoid
 | |
| 	creating a .core file.
 | |
| 	* exec.cc (sexecve): Reflect spawn_guts argument change.
 | |
| 	* fhandler_tty.cc (fhandler_tty_master::init): Use makethread to
 | |
| 	create a new thread.
 | |
| 	* select.cc: Create pipe/socket threads each time select is called.
 | |
| 	Use thread termination as indication of fd readiness.
 | |
| 	* sigproc.cc (sigproc_init): Use makethread to create a new thread.
 | |
| 	(wait_sig): Simplify default signal call slightly.
 | |
| 	* spawn.cc (spawn_guts): Accept child pinfo pointer rather than
 | |
| 	pid.  Reorganize so that common initialization is handled once.
 | |
| 	* strace.cc: Set strace_mutex to NULL initially to catch CreateMutex
 | |
| 	errors.
 | |
| 	* window.cc (gethwnd): Use makethread to create a new thread.
 | |
| 
 | |
| Thu Sep 10 21:09:51 1998  Christopher Faylor <cgf@cygnus.com>
 | |
| 
 | |
| 	* Makefile.in: Add debug.o target.
 | |
| 	* cygwin.din: Separate pipe from _pipe.
 | |
| 	* dcrt0.cc (alloc_stack):  New, more precise method for allocating
 | |
| 	stack space after a fork.
 | |
| 	(dll_crt0_1): Use new child_proc_info class to retrieve information
 | |
| 	from possible parent process.  Remove #ifdef erroneously checked in.
 | |
| 	Remove extraneous syscall_printf.
 | |
| 	* exceptions.cc (signals_init): New function.
 | |
| 	* fhandler.cc (fhandler_make_pipe): Move to pipe.cc.
 | |
| 	* fhandler.h (fhandler_base): New = operator preserves unix_path_name_.
 | |
| 	* fhandler_tty.cc: Strip some tty functions from here into tty.cc.
 | |
| 	* fork.cc: Remove obsolete ifdefs.  Reorganize, streamline with new
 | |
| 	fork.
 | |
| 	* hinfo.cc: Speed up build_fhandler.
 | |
| 	* libccrt0.cc: Remove obsolete ifdefs.
 | |
| 	* pinfo.cc (pinfo_init): Simplified by new fork/spawn info passing
 | |
| 	method.
 | |
| 	* pipe.cc (make_pipe): Moved from fhandler.cc.  Handles MS-style
 | |
| 	_pipe.
 | |
| 	(pipe): Use new arguments to make_pipe.
 | |
| 	(_pipe): New MS-compatible function.
 | |
| 	* shared.cc: cygwin_shared_h make global so that it can be inherited
 | |
| 	via new fork/spawn info passing method.
 | |
| 	(open_shared_file_map): Detect if shared info is already set up from
 | |
| 	fork/spawn.
 | |
| 	* sigproc.cc (sigproc_init): Initialize signals with signals_init here.
 | |
| 	Use new fork/spawn info passing method.
 | |
| 	* spawn.cc (spawn_guts): Pass information in a structure to spawned
 | |
| 	process.  Identify structure type with a "magic number".
 | |
| 	* strace.cc (strace_printf): Only print program full path spec once
 | |
| 	to save space and clutter.  Preserve any windows error.
 | |
| 	* syscalls.cc (_open): Detect and avoid error return from
 | |
| 	build_fhandler.
 | |
| 	* tty.cc: Accept some non-fhandler functions formerly found in
 | |
| 	fhandler_tty.cc
 | |
| 	* winsup.h (pinfo): Remove some fields obsoleted by new fork/spawn
 | |
| 	info passing method.
 | |
| 	(child_info*): New classes for passing information to forked/spawned
 | |
| 	process.
 | |
| 
 | |
| Thu Sep 10 21:09:51 1998  Christopher Faylor <cgf@cygnus.com>
 | |
| 
 | |
| 	* Makefile.in: Add debug.o target.
 | |
| 	* console.cc (fhandler_console::char_command): Fix failed merge.
 | |
| 	* dcrt0.cc (alloc_stack):  New, more precise method for allocating
 | |
| 	stack space after a fork.
 | |
| 	(dll_crt0_1): Use new child_proc_info class to retrieve information
 | |
| 	from possible parent process.  Remove #ifdef erroneously checked in.
 | |
| 	Remove extraneous syscall_printf.
 | |
| 
 | |
| Thu Sep 10 21:09:51 1998  Christopher Faylor <cgf@cygnus.com>
 | |
| 
 | |
| 	Global changes:
 | |
| 	Replace pinfo hmap entry with "dtable" reference.
 | |
| 	Replace cygwin_shared .t field with '.tty' and allow indexing via
 | |
| 	tty into this array.
 | |
| 	Make fhandler_ constructors set the size of the structure into any
 | |
| 	created class.
 | |
| 	Change fhandler settings into a bit mask.  Use methods to access.
 | |
| 	Record device type in fhandler class.
 | |
| 	Remove old linearize/de_linearize code in favor of newer method
 | |
| 	uses more bullet-proof method for determing device type of inherited
 | |
| 	files.
 | |
| 	Protect various important handles from closing when operating
 | |
| 	under -DDEBUGGING.
 | |
| 	* dcrt0.cc (do_global_ctors): Renamed, made static and reused
 | |
| 	for calling from dll_crt0_1 to initialize cygwin.dll constructors.
 | |
| 	(do_global_dtors): Renamed.
 | |
| 	(dll_crt0_1): mark noreturn.  Use new do_global_ctors function.
 | |
| 	Call debug_init to initialize features turned on by -DDEBUGGING.
 | |
| 	Call dtable_init to initialize dtable, hinfo_init to initialize
 | |
| 	standard fds.
 | |
| 	(dll_crt0): Mark noreturn.  Move constructor calls to dll_crt0_1.
 | |
| 	(__main): Use new do_global_ctors ().
 | |
| 	Remove OLDWAY and _PPC_ conditionals.
 | |
| 	* environ.cc (environ_init): Use appropriate strace printf.
 | |
| 	* exceptions.cc (set_process_mask): Don't ever mask out unmaskable
 | |
| 	signals.
 | |
| 	* init.cc (dll_entry): Initialize storage for read_helper.
 | |
| 	* pinfo.cc (init_from_exec): Delete obsolete function.
 | |
| 	* sigproc.cc (sig_send): Implement myself_nowait to allow
 | |
| 	sending a signal to myself without waiting for synchronization.
 | |
| 	(wait_sig): Change method for determining whether signal should
 | |
| 	be examined slightly.
 | |
| 	* strace.cc (strace_printf):  Add ability to report on thread from
 | |
| 	which message originated.
 | |
| 	(threadname): New function
 | |
| 	* syscalls.cc (read_helper): New function.  Invoked in separate thread
 | |
| 	from _read.
 | |
| 	(_read): Use a separate thread for reads that can be interrupted
 | |
| 	with a TerminateThread().  Allows EINTR.
 | |
| 	(setdtablesize): Use new method for extending the size.  Callable
 | |
| 	from anywhere.
 | |
| 	(getdtablesize): Use new method for getting the current dtable size.
 | |
| 	* tty.cc: Remove use count in favor of a method which checks tty
 | |
| 	availability via an event.  Some code cleanup.
 | |
| 	(tty::inuse): New function for determining if a tty is
 | |
| 	in use by any process.
 | |
| 	(tty_list::terminate): Use new method for determining if a tty is in
 | |
| 	use.  Should avoid hangs waiting for non-existent processes to
 | |
| 	free up a tty.
 | |
| 	(tty::common_init): Common initialization for tty/pty master.
 | |
| 	(fhandler_tty_master::init): New function.
 | |
| 	(do_output): Use new method for determining if a tty is in use.
 | |
| 	(fhandler_pty_master::open): Use comon initialization code.
 | |
| 	(fhandler_pty_master::ptsname): static buffer is ok now.
 | |
| 	* tty.h: Reflect inuse changes and tty.cc cleanup.
 | |
| 	* winsup.h: Include debug.h for use when -DDEBUGGING.  Remove
 | |
| 	stuff previously here which was conditionally compiled with -DDEBUGGING.
 | |
| 	(hinfo_vec): Rename to hinfo.  Maintain argv style list of pointers
 | |
| 	to open fds.  Add methods to deal with above changes.
 | |
| 	(pinfo): Removals due to above changes.
 | |
| 	(shared_info): Rename t to tty.
 | |
| 	Add common defines to extern "C" section.
 | |
| 
 | |
| Wed Sep  9 22:24:50 1998  Christopher Faylor <cgf@cygnus.com>
 | |
| 
 | |
| 	* path.cc (path_prefix_p_): Rewrite to avoid false match
 | |
| 	against root when remote path or \\x style disk device.
 | |
| 	* include/sys/strace.h: Implement new macro for use by
 | |
| 	malloc_printf which does not default to "on" if STRACE=1.
 | |
| 	This avoids massive strace logs.
 | |
| 
 | |
| Tue Sep  8 11:31:42 1998  Christopher Faylor <cgf@cygnus.com>
 | |
| 
 | |
| 	* dcrt0.cc (dll_crt0_1): Remove ill-advised ifdef NEEDOEM.
 | |
| 
 | |
| Thu Sep  3 17:54:18 1998  Christopher Faylor <cgf@cygnus.com>
 | |
| 
 | |
| 	* Makefile.in: Speed up dll links.
 | |
| 	* path.cc (chdir): Fix previous change.
 | |
| 
 | |
| Mon Aug 31 12:23:33 1998  Christopher Faylor <cgf@cygnus.com>
 | |
| 
 | |
| 	* path.cc (chdir): Protect free from potential signal race.
 | |
| 
 | |
| Fri Aug 28 15:59:27 1998  Geoffrey Noer  <noer@cygnus.com>
 | |
| 
 | |
| 	* dlfcn.h: delete, move it
 | |
| 	* include/dlfcn.h: here
 | |
| 
 | |
| Thu Aug 27 14:20:38 1998  Christopher Faylor <cgf@cygnus.com>
 | |
| 
 | |
| 	patch from sos@prospect.com.ru (Sergey Okhapkin):
 | |
| 	* path.cc (path_conv::path_conv): remove trailing backslash from
 | |
| 	full win32 name, otherwise the last component of the path isn't
 | |
| 	checked for symlink.
 | |
| 
 | |
| Wed Aug 26 14:15:22 1998  Christopher Faylor <cgf@cygnus.com>
 | |
| 
 | |
| 	* fhandler.h (fhandler_base): Make set_name() public and implement
 | |
| 	clear_name() to accommodate dup2.
 | |
| 	* hinfo.cc (dup2): Previous change exposed problem with dup2.
 | |
| 	Same unix_path_name_ ptr was being used in two separate fds.
 | |
| 	Fix this.
 | |
| 
 | |
| Wed Aug 26 12:10:27 1998  Christopher Faylor <cgf@cygnus.com>
 | |
| 
 | |
| 	patch from sos@prospect.com.ru (Sergey Okhapkin):
 | |
| 	* malloc.cc: Use malloc_printf throughout.
 | |
| 	* path.cc (getcwd_inner): Allocate buffer with realloc to
 | |
| 	avoid a memory leak.
 | |
| 	* syscalls.cc (_close): delete unix_path_name_ explicitly since
 | |
| 	destructor is never called.
 | |
| 	* include/sys/strace.h: Add strace_malloc stuff.
 | |
| 
 | |
| Mon Aug 24 15:45:59 1998  Geoffrey Noer  <noer@cygnus.com>
 | |
| 
 | |
| 	* include/sys/ioctl.h: variable names in protos should start
 | |
| 	with two leading underscores.
 | |
| 	* include/sys/mman.h: ditto.
 | |
| 	* include/sys/mount.h: ditto.
 | |
| 	* include/sys/resource.h: ditto.
 | |
| 	* include/sys/smallprint.h: ditto.
 | |
| 	* include/sys/socket.h: ditto.
 | |
| 	* include/sys/strace.h: ditto.
 | |
| 	* include/sys/vfs.h: ditto.
 | |
| 	* include/sys/wait.h: ditto.
 | |
| 	* include/mntent.h: ditto.
 | |
| 
 | |
| Tue Aug 18 17:00:20 1998  Geoffrey Noer  <noer@cygnus.com>
 | |
| 
 | |
| 	patch from Trevor Yann (TYann@vet.com.au):
 | |
| 	* uname.cc (uname): report processor type for win98
 | |
| 
 | |
| Tue Aug 18 16:09:13 1998  Christopher Faylor <cgf@cygnus.com>
 | |
| 
 | |
| 	* fork.cc (cygwin_fork_helper1): Start initial fd search
 | |
| 	to zero forked processes so that a close(0)/dup(fd) will work.
 | |
| 
 | |
| Mon Aug 17 16:58:09 1998  Christopher Faylor <cgf@cygnus.com>
 | |
| 
 | |
| 	* winsup.h (hinfo): Remember initial fd to start searching
 | |
| 	for new fds.  This avoid assigning std/in/out/err to
 | |
| 	files opened early in initialization.
 | |
| 	(hinfo_vec::find_unused_handle): New default way to search
 | |
| 	for a new handle.  Avoids using std/in/out/err until the
 | |
| 	proper time in the initialization.
 | |
| 	* fhandler.cc (fhandler_make_pipe): Use default method for
 | |
| 	finding unused handle.
 | |
| 	* net.cc:  Ditto throughout.
 | |
| 	* pipe.cc (dup): Ditto.
 | |
| 	* syscalls.cc (_open): Ditto.
 | |
| 	* hinfo.cc (hinfo_vec::init_std_file): Set initial fd for open
 | |
| 	search to include std/in/out/err.
 | |
| 
 | |
| 	patch from sos@prospect.com.ru (Sergey Okhapkin):
 | |
| 	* spawn.cc (perhaps_suffix): Use translated win32 path when
 | |
| 	determining if a .exe extension should be added or suffer adding
 | |
| 	a .exe extension twice.
 | |
| 
 | |
| Mon Aug 10 15:08:49 1998  Geoffrey Noer  <noer@cygnus.com>
 | |
| 
 | |
| 	* include/cygwin32/version.h: up minor version number
 | |
| 
 | |
| Mon Aug 10 07:04:13 1998  DJ Delorie  <dj@cygnus.com>
 | |
| 
 | |
| 	* delqueue.cc: rewritten for speed.  Don't check *every* entry in
 | |
| 	the list if we know the list is empty, plus check for duplicates.
 | |
| 	* delqueue.h: ditto.
 | |
| 
 | |
| Sat Aug  8 14:03:52 1998  Eric Bachalo  <ebachalo@cygnus.com>
 | |
| 
 | |
| 	* spawn.cc (perhaps_suffix): If report_failure_p is non-zero this
 | |
| 	function will search for (PROG is the pathname to the executable
 | |
| 	file)  PROG.exe, PROG, PROG.com, PROG.bat, and PROG.cmd and return
 | |
| 	either the full path name if found or NULL if not.
 | |
| 	(spawn_guts): If the file name of the executable end in either
 | |
| 	.exe, .com, .bat, or .cmd we assume that it is not a script file
 | |
| 	and therefore do not open the file to determine if it is.
 | |
| 
 | |
| Thu Aug  6 22:25:38 1998  Christopher Faylor <cgf@cygnus.com>
 | |
| 
 | |
| 	* path.cc (path_conv): If a path component is missing, short-
 | |
| 	circuit the symlink check.  Bug fix for case where path ends
 | |
| 	in a slash.
 | |
| 	(path_conv::path_conv): Make sure that a file is not
 | |
| 	a symlink when returning immediately.  Avoid checking for
 | |
| 	symlinks on network shares.  Check for existence of file prior
 | |
| 	to taking it apart for symlink checking (this needs more work).
 | |
| 
 | |
| Sun Aug  2 19:17:59 1998  Christopher Faylor <cgf@cygnus.com>
 | |
| 
 | |
| 	* select.cc (cleanup_pipe_thread): Cleanup thread handle or suffer
 | |
| 	handle leak.
 | |
| 	(cleanup_socket_thread): Ditto.
 | |
| 	* sigproc.cc (proc_subproc): Make wait thread manual reset to
 | |
| 	solve problem with nested waits not waiting correctly.
 | |
| 	* fhandler_tty (fhandler_tty_slave::open): Don't create the output
 | |
| 	mutex, just open it.  If it can't be opened, its an error.
 | |
| 
 | |
| Wed Jul 29 12:08:19 1998  Eric Bachalo  <ebachalo@loony.cygnus.com>
 | |
| 
 | |
| 	* include/Windows32/Defines.h: Added Virtual-Key Code defines
 | |
| 	for the Win95 keys - VK_LWIN, VK_RWIN, and VK_APPS.
 | |
| 
 | |
| Tue Jul 21 14:47:59 1998  DJ Delorie  <dj@cygnus.com>
 | |
| 
 | |
| 	* path.cc (path_prefix_p): optimize calls by comparing first
 | |
| 	characters inline.
 | |
| 	(path_conv): optimize by not checking both foo and foo/ for
 | |
| 	symbolic links.
 | |
| 
 | |
| Tue Jul 21 14:39:03 1998  Christopher Faylor <cgf@cygnus.com>
 | |
| 
 | |
| 	* pinfo.cc (pinfo_init): Set myself->sid to 1 so that
 | |
| 	a program started up outside of cygwin will not trump
 | |
| 	other opens of ttys.  Fixes problem with pgid change below.
 | |
| 
 | |
| Tue Jul 21 12:59:21 1998  Christopher Faylor <cgf@cygnus.com>
 | |
| 
 | |
| 	* path.cc (chdir): Force chdir to disk device to go to the root
 | |
| 	directory.
 | |
| 
 | |
| Tue Jul 21 09:32:23 1998  Christopher Faylor <cgf@cygnus.com>
 | |
| 
 | |
| 	* pinfo.cc (pinfo_init): 0 is a very bad value for a default pgid.
 | |
| 
 | |
| Fri Jul 16 15:09:50 1998  Stan Cox  <scox@cygnus.com>
 | |
| 
 | |
| 	* (gcrt0.c, gmon.c, profil.c, mcount.c, gmon.h, profil.h,
 | |
| 	   config/i386/profile.h): New files for gprof cygwin support.
 | |
| 	  Some code contributed by Tim Newsham for Secure Networks, Inc.
 | |
| 	* Makefile.in (LIBGMON_A, GMON_START, GMON_OFILES): New for gprof.
 | |
| 
 | |
| Mon Jul 13 19:29:00 1998  Eric Bachalo  <ebachalo@loony.cygnus.com>
 | |
| 
 | |
| 	* dcrt0.cc (insert_files): Now both -@file and @file work as
 | |
| 	command line file insertion options.
 | |
| 	* fhandler_serial.cc (fhandler_serial::open): Enabled RTS Control
 | |
| 	Line by default to make full handshaking cables work for the
 | |
| 	D10V board. (CDB.fRtsControl)
 | |
| 	(fhandler_serial::tcsetattr): same as above
 | |
| 
 | |
| Wed Jul  8 15:53:35 1998  Christopher Faylor <cgf@cygnus.com>
 | |
| 
 | |
| 	* dcrt0.cc (dll_crt0_1): Avoid redundant strace_printf.
 | |
| 
 | |
| Wed Jul  8 15:05:10 1998  DJ Delorie  <dj@cygnus.com>
 | |
| 
 | |
| 	* fhandler.cc (fhandler_base::lseek): Note lseek so that next
 | |
| 	write() can check for the Win95 "gap" bug.
 | |
| 	(fhandler_base::write): If Win95 and lseek past eof
 | |
| 	followed by write, use WriteFile to force the "gap" to be filled
 | |
| 	with zeros rather than left to the "undefined" data Win32 specifies.
 | |
| 	(fhandler_base::fhandler_base): initialize check_win95_lseek_bug_.
 | |
| 	* fhandler.h (class fhandler_base): Add check_win95_lseek_bug_
 | |
| 	for bug: when seek past EOF and write, win95 fills with random
 | |
| 	data (security hole).
 | |
| 
 | |
| Thu Jul  2 10:45:15 1998  Christopher Faylor <cgf@cygnus.com>
 | |
| 
 | |
| 	* environ.cc (winenv): Be more paranoid when restoring special
 | |
| 	win32 environment variables beginning with '='.
 | |
| 
 | |
| Thu Jul  2 09:19:32 1998  Christopher Faylor <cgf@cygnus.com>
 | |
| 
 | |
| 	* environ.cc:  Previous change was not rigorous enough.
 | |
| 	Track environment variables to convert in a structure which
 | |
| 	records the correct function for converting the environment
 | |
| 	variable from/to POSIX format.
 | |
| 	(isspecial): New function.
 | |
| 	(parse_options): Use template to initialize parse array.
 | |
| 	(posify): Use new conversion function.
 | |
| 	(winenv): Ditto.  Also restore special win32 environment variables
 | |
| 	beginning with '='.
 | |
| 	* path.cc (conv_path_list): Source argument should be const.
 | |
| 	(win32_to_posix_path_list): Ditto.
 | |
| 	(posix_to_win32_path_list): Ditto.
 | |
| 	* path.h: Reflect changes to path.cc.
 | |
| 
 | |
| Tue Jun 30 14:00:32 1998  Christopher Faylor <cgf@cygnus.com>
 | |
| 
 | |
| 	* environ.cc (winenv): Avoid converting environment variables to
 | |
| 	windows style if they begin with something like a 'C:'.
 | |
| 
 | |
| Sun Jun 28 20:59:16 1998  Christopher Faylor <cgf@cygnus.com>
 | |
| 
 | |
| 	* include/Windows32/Structures.h (MINMAXINFO): Add a missing
 | |
| 	*LP...
 | |
| 
 | |
| Thu Jun 25 10:45:38 1998  Christopher Faylor <cgf@cygnus.com>
 | |
| 
 | |
| 	* signal.cc (sigpending): Stop from always reporting pending signals
 | |
| 	when no signals are actually pending.
 | |
| 
 | |
| Tue Jun 23 15:38:45 1998  Christopher Faylor <cgf@cygnus.com>
 | |
| 
 | |
| 	* Makefile.in:  Add a new target.
 | |
| 	* cygwin.din: Add cygwin32_internal interface.
 | |
| 	* dcrt0.cc (dll_crt0_1): Don't call main if no main set.  Allows
 | |
| 	initialization from a .dll.
 | |
| 	* utils/ps.cc: Use new internal/external interface to cygwin to
 | |
| 	provide an unchanging interface to some cygwin internals.
 | |
| 	* external.h: Preliminary stab at an interface to cygwin32 for
 | |
| 	getting at the "naughty bits".
 | |
| 	* external.cc: External interfaces to some cygwin internal stuff.
 | |
| 
 | |
| 	patch from sos@prospect.com.ru (Sergey Okhapkin):
 | |
| 	* exceptions.cc (sig_handle): When abnormally terminating,
 | |
| 	close_all_files in signal thread context to prevent socket hangs.
 | |
| 
 | |
| Thu Jun 18 15:17:06 1998  Christopher Faylor <cgf@cygnus.com>
 | |
| 
 | |
| 	* pinfo.cc (pinfo_list::allocate_pid): Wrap pids at SHRT_MAX
 | |
| 	or ash complains.
 | |
| 
 | |
| 	patch from sos@prospect.com.ru (Sergey Okhapkin):
 | |
| 	* window.cc (WndProc): Always kill timer before starting up
 | |
| 	a new one or eventually suffer a timer proliferation.
 | |
| 
 | |
| Mon Jun 15 09:40:30 1998  Christopher Faylor <cgf@cygnus.com>
 | |
| 
 | |
| 	* exceptions.cc: Cosmetic change.
 | |
| 
 | |
| 	patch from sos@prospect.com.ru (Sergey Okhapkin):
 | |
| 	* syscalls.cc (system): Ignore SIGINT, SIGQUIT and SIGCHLD while
 | |
| 	in a system() call.
 | |
| 
 | |
| Thu Jun 11 18:37:02 1998  Geoffrey Noer  <noer@cygnus.com>
 | |
| 
 | |
| 	* include/sys/syslog.h: add missing LOG_LOCALn bits
 | |
| 
 | |
| Tue Jun  9 22:29:26 1998  Christopher Faylor <cgf@cygnus.com>
 | |
| 
 | |
| 	* dll_init.cc (DllNameIterator::operator const char* ()): Add
 | |
| 	a missing \n to a *_printf.
 | |
| 	* fhandler_tty.cc (fhandler_tty_slave::dup): Ditto.
 | |
| 	(fhandler_tty_slave::ioctl): Ditto.
 | |
| 	* errno.cc (errmap): Add an unrepresented windows error.
 | |
| 	Simplify table.
 | |
| 
 | |
| Tue Jun  9 17:21:44 1998  Christopher Faylor <cgf@cygnus.com>
 | |
| 
 | |
| 	* errno.cc (errmap): Make sure that errmap array is
 | |
| 	terminated with a NULL or suffer a SIGSEGV.
 | |
| 
 | |
| Tue Jun  9 10:30:02 1998  Christopher Faylor <cgf@cygnus.com>
 | |
| 
 | |
| 	Change `sprintf' to `__small_sprintf' throughout cygwin.
 | |
| 	* cygwin.din: Don't export exception handler.
 | |
| 	* exceptions.cc (__cygwin32_exception_handler): Rename to
 | |
| 	handle_exceptions.  Make static.  Redo core file generation
 | |
| 	slightly so that __small_sprintf can be used.
 | |
| 	(call_handler): Remove use of `rethere' in asm code.  Don't
 | |
| 	probe stack as this is potentially dangerous unless done
 | |
| 	meticulously.
 | |
| 	* select.cc (select): Redo to create thread whenever needed
 | |
| 	for pipe/socket.  Thread termination denotes fd readiness.
 | |
| 
 | |
| Mon Jun  8 14:31:11 1998  Christopher Faylor <cgf@cygnus.com>
 | |
| 
 | |
| 	* hinfo.cc (set_std_handle): New function to set windows
 | |
| 	"standard" handles from cygwin handles.
 | |
| 	(hinfo_vec::dup2): Set windows standard handle if appropriate.
 | |
| 	* syscalls.cc (_open): Set windows standard handle if appropriate.
 | |
| 
 | |
| Sun Jun  7 16:34:00 1998  Christopher Faylor <cgf@cygnus.com>
 | |
| 
 | |
| 	patch from sos@prospect.com.ru (Sergey Okhapkin):
 | |
| 	* fhandler_console.cc (fhandler_console::scroll_screen): Add a
 | |
| 	workaround for Win95 ScrollConsoleScreenBuffer bug which allowed
 | |
| 	scrolling to work correctly in both directions.
 | |
| 	(fhandler_console::char_command): Simulate underscore with cyan
 | |
| 	instead of magenta like on a real linux console.
 | |
| 
 | |
| Sat Jun  6 00:01:18 1998  Christopher Faylor <cgf@cygnus.com>
 | |
| 
 | |
| 	* dcrt0.cc: Remove obsolete PPC and OLDWAY defines.
 | |
| 	* exceptions.cc: Remove obsolete PPC defines.
 | |
| 
 | |
| Fri Jun  5 22:18:01 1998  Christopher Faylor <cgf@cygnus.com>
 | |
| 
 | |
| 	* utils/Makefile.in: install should build products if necessary.
 | |
| 
 | |
| Fri Jun  5 17:47:11 1998  Geoffrey Noer  <noer@cygnus.com>
 | |
| 
 | |
| 	* errno.cc (seterrno): shouldn't & against 0xff since there
 | |
| 	are error codes above 255.
 | |
| 
 | |
| Fri Jun  5 14:35:36 1998  Christopher Faylor <cgf@cygnus.com>
 | |
| 
 | |
| 	* exceptions.cc (ctrl_c_handler): Ignore CTRL_LOGOFF_EVENT or
 | |
| 	everybody gets signalled when a user logs off.  Allow program
 | |
| 	to clean up when receiving a CTRL_CLOSE_EVENT or CTRL_SHUTDOWN_EVENT.
 | |
| 	* spawn.cc (_spawnve): Delete hmap.vec from created child since
 | |
| 	it just gets overwritten in the child anyway.
 | |
| 	* pinfo.cc (lpfu): u -> user_data.
 | |
| 
 | |
| Thu Jun  4 22:45:12 1998  Geoffrey Noer  <noer@cygnus.com>
 | |
| 
 | |
| 	* mmap.cc (mprotect): 3rd arg to VirtualProtect call should
 | |
| 	be new_prot, not prot.  Also, fix check for PROT_NONE (==,
 | |
| 	not &).
 | |
| 
 | |
| Wed Jun  3 16:37:43 1998  Geoffrey Noer  <noer@cygnus.com>
 | |
| 
 | |
| 	* exceptions.cc: Fix typo in comment
 | |
| 	(ctrl_c_handler): Add comments, return FALSE on CTRL_CLOSE_EVENT,
 | |
| 	CTRL_LOGOFF_EVENT, and CTRL_SHUTDOWN_EVENT events.  Otherwise,
 | |
| 	we handle the console event ourselves, send a SIGINT, and return
 | |
| 	TRUE.
 | |
| 
 | |
| Wed Jun  3 14:36:08 1998  Geoffrey Noer  <noer@cygnus.com>
 | |
| 
 | |
| 	patch from sos@prospect.com.ru (Sergey Okhapkin):
 | |
| 	* path.cc (conv_to_win32_path, conv_to_full_win32_path): resolve
 | |
| 	symlinks before converting.
 | |
| 
 | |
| Wed Jun  3 02:11:23 1998  Geoffrey Noer  <noer@cygnus.com>
 | |
| 
 | |
| 	* exceptions.cc (ctrl_c_handler): return zero when a
 | |
| 	CTRL_LOGOFF_EVENT occurs.
 | |
| 
 | |
| Wed Jun  3 01:01:17 1998  Geoffrey Noer  <noer@cygnus.com>
 | |
| 
 | |
| 	Reorganize fhandler-related file layout.
 | |
| 	* Makefile.in: Remove console.o, add fhandler_console.o.  Add
 | |
| 	fhandler_serial.o.  Remove tty.o, add fhandler_tty.o.
 | |
| 	* fhandler_console.cc: Was console.cc.
 | |
| 	* console.cc: Delete.
 | |
| 	* fhandler_serial.cc: Was code in fhandler.cc.
 | |
| 	* fhandler.cc: Delete fhandler_serial routines.
 | |
| 	* fhandler.h: Fix comments describing fhandler file layout.
 | |
| 	* fhandler_tty.cc: Was code in tty.cc.
 | |
| 	* tty.h: Delete.
 | |
| 	* fhandler_tty.h: Was tty.h.
 | |
| 	* tty.cc: Delete code moved to fhandler_tty.cc.
 | |
| 	* winsup.h: Include fhandler_tty.h instead of tty.h.
 | |
| 
 | |
| Tue Jun  2 23:34:42 1998  Geoffrey Noer  <noer@cygnus.com>
 | |
| 
 | |
| 	Don't need processor-specific sysdef directories:
 | |
| 	* sysdef/powerpc: remove all files
 | |
| 	* sysdef/i386: move all files to top of sysdef directory
 | |
| 	* configure.in: stop setting processor-specific sysdef variable
 | |
| 	* configure: regenerate
 | |
| 	* Makefile.in: build .a files from top-level sysdef files.
 | |
| 
 | |
| Tue Jun  2 16:52:18 1998  Geoffrey Noer  <noer@cygnus.com>
 | |
| 
 | |
| 	patch from lhall@rfk.com (Larry Hall):
 | |
| 	* console.cc (fhandler_console::fhandler_console): call
 | |
| 	fillin_info() to check if console attributes have already been
 | |
| 	set.  If so, set the default foreground color to be the default
 | |
| 	for the console, otherwise set it to white.
 | |
| 	(fhandler_console::char_command): use the default color to set fg,
 | |
| 	bg, and bold for all cases.
 | |
| 
 | |
| Mon Jun  1 14:05:01 1998  Christopher Faylor <cgf@cygnus.com>
 | |
| 
 | |
| 	* dir.cc (writable_directory):  Avoid a malloc.
 | |
| 	(opendir): Convert to fully qualified path spec.  Use inode from
 | |
| 	stat as hash instead of recalculating.
 | |
| 	(readdir): Try hard to generate the same inode for filenames
 | |
| 	as inodes returned from stat().  Handle '.' and '..' inodes
 | |
| 	differently than normal files.  Note that '..' will still fail
 | |
| 	in certain pathological conditions.
 | |
| 	* fhandler.cc (fstat): Preserve errno around path conversion.
 | |
| 	* path.cc (path_conf::path_conv): Add an extra argument signifying
 | |
| 	whether caller wants a fully qualified Windows spec.
 | |
| 	(get_current_directory_name): New function.  Retrieves current
 | |
| 	directory name into internal buffer.
 | |
| 	(getcwd_inner): Reorganize.  Use get_current_directory_name()
 | |
| 	to retrieve a (possibly cached) directory name.
 | |
| 	(hash_path_name): Move function here from syscalls.cc.  Rewrite to
 | |
| 	deal (simplistically) with non-absolute path specs.  Use
 | |
| 	get_current_directory_name to absolutize path.
 | |
| 	* path.h: Reflect additional argument for path_conv.
 | |
| 	* select.cc (cygwin32_select): Remove newline from select_printf().
 | |
| 	* syscalls.cc (hash_path_name): Move to path.cc.
 | |
| 	(stat_worker): Always use full path spec so that inodes are
 | |
| 	calculated correctly.
 | |
| 	* uinfo.cc (getlogin): Make extern "C".
 | |
| 	* include/sys/resource.h: Put extern "C" around this file.
 | |
| 
 | |
| Mon Jun  1 13:16:03 1998  Christopher Faylor <cgf@cygnus.com>
 | |
| 
 | |
| 	* console.cc: Comment out small_printfs which issue errors
 | |
| 	on things like invalid escape sequences.  This is very much
 | |
| 	unlike a normal terminal, or even like linux which console.cc
 | |
| 	purports to emulate.
 | |
| 	(console_read): Renamed from FakeReadConsole.  Streamline
 | |
| 	slightly.
 | |
| 	(fhandler_console::read): Ditto.
 | |
| 
 | |
| Fri May 29 22:41:18 1998  Geoffrey Noer  <noer@cygnus.com>
 | |
| 
 | |
| 	* hinfo.cc: Include unistd.h, not fcntl.h.
 | |
| 
 | |
| Fri May 29 21:38:10 1998  Christopher Faylor <cgf@cygnus.com>
 | |
| 
 | |
| 	* path.cc (mount_info::binary_win32_path_p): Don't allow
 | |
| 	the root mount to replace a //drive or //host specification.
 | |
| 
 | |
| Fri May 29 08:20:28 1998  Geoffrey Noer  <noer@cygnus.com>
 | |
| 
 | |
| 	* winsup.h: Remove exports section in favor of external
 | |
| 	include files.  Fix some comments.
 | |
| 	* {console.cc, fcntl.cc, pipe.cc}: Include unistd.h.
 | |
| 	* dcrt0.cc (__main): Make extern "C".
 | |
| 	* strace.cc: Include time.h.
 | |
| 	* wait.cc (_wait): Make extern "C".
 | |
| 	* version.h: Bump minor version to 3 in honor of /dev/windows
 | |
| 	support.
 | |
| 
 | |
| Fri May 29 03:11:28 1998  Geoffrey Noer  <noer@cygnus.com>
 | |
| 
 | |
| 	patch from sos@prospect.com.ru (Sergey Okhapkin):
 | |
| 	* Makefile.in: Add fhandler_windows.o target
 | |
| 	* fhandler.h: Include <sys/ioctl.h>.  fhandler_windows: new
 | |
| 	fhandler class that handles access to Windows message queue.
 | |
| 	(fhandler_base::is_windows): new virtual member function
 | |
| 	* fhandler_windows.cc: New file, fhandler_windows class
 | |
| 	implementation.
 | |
| 	* hinfo.cc (hinfo_vec::build_fhandler): build fhandler_windows
 | |
| 	class for "/dev/windows".  Include <sys/ioctl.h>.
 | |
| 	* select.cc: New fd_windows_map class
 | |
| 	(fd_windows_map::convert_to_unix_fdset): New, check for Windows
 | |
| 	messages in a queue.
 | |
| 	(cygwin32_select): check for windows fd is passed to select call,
 | |
| 	increase size of harray by one to support windows pseudo-handle,
 | |
| 	do MsgWaitForMultipleObjects if windows fd passed to select call.
 | |
| 
 | |
| Thu May 28 18:22:24 1998  Ian Lance Taylor  <ian@cygnus.com>
 | |
| 
 | |
| 	* utils/cygpath.cc: New file.
 | |
| 	* utils/Makefile.in (PROGS): Add cygpath$(EXEEXT).
 | |
| 	(cygpath$(EXEEXT)): Ne target.
 | |
| 
 | |
| 	* include/sys/cygwin.h: Declare more path conversion functions.
 | |
| 
 | |
| Thu May 28 15:56:26 1998  Geoffrey Noer  <noer@cygnus.com>
 | |
| 
 | |
| 	* include/sys/ioctl.h: need to include <sys/cdefs.h>
 | |
| 	* syscalls.h: remove ioctl proto
 | |
| 
 | |
| Wed May 27 01:34:06 1998  Geoffrey Noer  <noer@cygnus.com>
 | |
| 
 | |
| 	* cygwin.din: add sethostent/endhostent exports
 | |
| 	* net.cc (sethostent, endhostent): new stubs
 | |
| 
 | |
| Fri May 22 17:31:50 1998  Geoffrey Noer  <noer@cygnus.com>
 | |
| 
 | |
| 	* include/cygwin32/in.h: correct typo in IPPORT_WHOIS define
 | |
| 
 | |
| Fri May 22 17:00:48 1998  Geoffrey Noer  <noer@cygnus.com>
 | |
| 
 | |
| 	* include/sys/ioctl.h: add ioctl proto
 | |
| 
 | |
| Wed May 20 18:52:31 1998  Geoffrey Noer  <noer@cygnus.com>
 | |
| 
 | |
| 	* include/sys/param.h: delete, file overlaps with newlib's.
 | |
| 	Move it to newlib/libc/sys/cygwin32/sys where such files
 | |
| 	are supposed to go.
 | |
| 
 | |
| Wed May 20 18:20:35 1998  Geoffrey Noer  <noer@cygnus.com>
 | |
| 
 | |
| 	* select.cc (auto_del_fd_set_map::auto_del_fd_set_map): correct
 | |
| 	C++ problem -- can't use parens in call to new.
 | |
| 
 | |
| Wed May 20 17:03:25 1998  Geoffrey Noer  <noer@cygnus.com>
 | |
| 
 | |
| 	based on patch from newsham@lava.net (Tim Newsham):
 | |
| 	* select.cc: FIXMEs added/adjusted
 | |
| 	(select_sleep): new static select helper function
 | |
| 	(cleanup_sockthread): ditto
 | |
| 	(cleanup_pipethread): ditto
 | |
| 	(cygwin32_select): remove degenerate goto in favor of calling
 | |
| 	select_sleep, call cleanup_sockthread and cleanup_pipethread
 | |
| 	instead of previously duplicated code.
 | |
| 
 | |
| Wed May 20 02:21:37 1998  Geoffrey Noer <noer@cygnus.com>
 | |
| 
 | |
| 	patch from Christopher Faylor <cgf@cygnus.com>
 | |
| 	* fhandler.cc (fhandler_serial::raw_read): When
 | |
| 	vmin_ == 0, vtime_ > 0, don't force only one char at a time
 | |
| 	to be read.
 | |
| 	(fhandler_serial::tcsetattr): set to.ReadIntervalTimeout
 | |
| 	and to.ReadTotalTimeoutMultiplier appropriately so reads
 | |
| 	will time out properly when vmin_ == 0, vtime_ > 0.
 | |
| 
 | |
| Tue May 19 09:05:46 1998  Christopher Faylor <cgf@cygnus.com>
 | |
| 
 | |
| 	* init.cc (set_dllname): Use consistent "cygwin32" name for dll
 | |
| 	if the name of the dll is actually cygwin.  This will allow
 | |
| 	better interoperability between dlls which have been renamed,
 | |
| 	i.e., cygwindevo.dll -> cygwin98r1.dll.
 | |
| 
 | |
| Mon May 18 22:39:35 1998  Christopher Faylor <cgf@cygnus.com>
 | |
| 
 | |
| 	* winsup.h: Remove sig* undefs since this is now done in newlib.
 | |
| 	Define SIGTOMASK define for use by signal mask operations.
 | |
| 	* exceptions.cc (__cygwin32_exception_handler): Use SIGTOMASK.
 | |
| 	(sig_handle): Ditto
 | |
| 	* signal.cc (sigpending): Ditto.
 | |
| 	(sigaddset):  Use SIGTOMASK.  Disallow signal 0.
 | |
| 	(sigdelset): Ditto.
 | |
| 	(sigismember): Ditto.
 | |
| 	* strace.cc (strace_printf):  It is possible for strace_mutex to
 | |
| 	be an invalid handle.  Open the mutex if so.  Call ReleaseMutex
 | |
| 	until exhausted since a signal may have interrupted an strace_printf.
 | |
| 	(strace_dump):  Call ReleaseMutex until exhausted.
 | |
| 	* tty.cc (do_output): Remove strace printf to avoid filling up strace
 | |
| 	output.
 | |
| 	(fhandler_tty_slave::read): Use SIGTOMASK.
 | |
| 
 | |
| Mon May 18 09:11:38 1998  Christopher Faylor <cgf@cygnus.com>
 | |
| 
 | |
| 	* dcrt0.cc (dll_crt0_1): Clear errno before calling main.
 | |
| 
 | |
| Thu May 14 00:37:01 1998  Geoffrey Noer  <noer@cygnus.com>
 | |
| 
 | |
| 	* dcrt0.cc: add comments, reformatting
 | |
| 
 | |
| Wed May 13 17:47:23 1998  Geoffrey Noer  <noer@cygnus.com>
 | |
| 
 | |
| 	patch from sos@prospect.com.ru (Sergey Okhapkin):
 | |
| 	* times.cc (to_time_t): prevent stat from returning incorrect
 | |
| 	file modification time (one second less) on fat partitions due
 | |
| 	to round-up error.
 | |
| 
 | |
| Wed May 13 16:03:07 1998  Geoffrey Noer  <noer@cygnus.com>
 | |
| 
 | |
| 	* select.cc: add comments, FIXMEs, respace, delete old
 | |
| 	sockets-only case that was previously commented out.
 | |
| 	(cygwin32_select): in case where handles and sockets are
 | |
| 	set, don't check that always_ready_used is zero (that case is
 | |
| 	covered before).
 | |
| 	* syscalls.cc: delete unused file_queue struct.
 | |
| 
 | |
| Tue May 12 18:36:25 1998  Geoffrey Noer <noer@cygnus.com>
 | |
| 
 | |
| 	* syscalls.cc (get_os_type): add FIXME
 | |
| 
 | |
| Tue May  5 14:02:12 1998  Christopher Faylor <cgf@cygnus.com>
 | |
| 
 | |
| 	Throughout Cygwin replace use of "sa" SECURITY_ATTRIBUTE variables
 | |
| 	with appropriate global variables.
 | |
| 	* shared.cc (shared_init): Initialize global security attribute
 | |
| 	variables for use in various places around cygwin.
 | |
| 	* fork.cc (fork_init): Remove. Functionality replaced by above.
 | |
| 	* dcrt0.cc (dll_crt0_1): Remove obsolete fork_init() call.
 | |
| 
 | |
| Sat May  2 17:40:51 1998  Christopher Faylor <cgf@cygnus.com>
 | |
| 
 | |
| 	patch from sos@prospect.com.ru (Sergey Okhapkin):
 | |
| 	* tty.cc (create_tty_master): Fill in ut_host utmp field with
 | |
| 	local host name instead of "local" to avoid "who" command timeouts.
 | |
| 
 | |
| Fri May  1 22:38:20 1998  Christopher Faylor <cgf@cygnus.com>
 | |
| 
 | |
| 	* environ.cc:  Add a global to control com port reset behavior.
 | |
| 	(parse_options): Recognize "reset_com" as a CYGWIN32 option.
 | |
| 	* fhandler.cc (fhandler_serial::raw_read): Handle vmin and vtime
 | |
| 	more like UNIX.
 | |
| 	(fhandler_serial::open): Revive code to reset com port on open.
 | |
| 	Only reset the port if reset_com global is not set and if this
 | |
| 	function is being called explicitly by open.
 | |
| 	(fhandler_serial::tcsetattr): Make CRTSCTS flow control more
 | |
| 	like UNIX -- it should turn on hardware handshaking in both
 | |
| 	directions.  Handle vmin and vtime in a manner more consistent
 | |
| 	with UNIX.
 | |
| 	(fhandler_serial::tcgetattr): Reflect CRTSCTS changes above when
 | |
| 	reporting this state.
 | |
| 	* include/sys/termios.h: Move CRTSCTS and CRTSXOFF (sic) into
 | |
| 	16 bits or they will never be capable of being set.
 | |
| 
 | |
| Thu Apr 30 15:05:45 1998  Christopher Faylor <cgf@cygnus.com>
 | |
| 
 | |
| 	* console.cc (fhandler_console::init): If resetting stdin,
 | |
| 	make sure to reset the ConsoleCtrlHandler.
 | |
| 	* exceptions.cc (set_console_handler): New function broken out
 | |
| 	of init_exceptions().  Sets the function responsible for handling
 | |
| 	CTRL-C.
 | |
| 	(init_exceptions): Snipped out set_console_handler.
 | |
| 
 | |
| Thu Apr 30 14:11:30 1998  Christopher Faylor <cgf@cygnus.com>
 | |
| 
 | |
| 	* include/sys/cygwin.h: Remove cygnus-specific declaration.
 | |
| 	* winsup.h: Move cygnus-specific cygwin32_attach_handle_to_fd
 | |
| 	declaration here.  This function may eventually be replaced by
 | |
| 	an osf_* function.
 | |
| 
 | |
| Tue Apr 28 17:07:46 1998  Geoffrey Noer <noer@cygnus.com>
 | |
| 
 | |
| 	* passwd.cc (parse, getpass): remove unneeded uses of NO_COPY
 | |
| 	* grp.cc (getgrgid, getgrnam): ditto
 | |
| 
 | |
| Tue Apr 28 16:18:03 1998  Geoffrey Noer <noer@cygnus.com>
 | |
| 
 | |
| 	* version.h: bump minor version to 2
 | |
| 	* errno.cc: add FIXME
 | |
| 
 | |
| Wed Apr 22 15:43:56 1998  Geoffrey Noer <noer@cygnus.com>
 | |
| 
 | |
| 	* syscalls.cc (cygname): delete
 | |
| 	* shared.cc (shared_name): new, was cygname
 | |
| 	* strace.cc, exceptions.cc, sigproc.cc, shared.cc: fix
 | |
| 	cygname references in light of above
 | |
| 
 | |
| Wed Apr 22 14:12:09 1998  Christopher Faylor <cgf@cygnus.com>
 | |
| 
 | |
| 	* select.cc (fd_set_map::remove_pair_by_handle): minor optimization
 | |
| 	* strace.cc (strace_printf): change format for consistency
 | |
| 
 | |
| 	patch from sos@prospect.com.ru (Sergey Okhapkin):
 | |
| 	* dcrt0.cc (dll_crt0): Call global constructors explicitly
 | |
| 	* tty.cc (create_tty_master): Remove code which attempted to
 | |
| 	invoke tty constructor
 | |
| 
 | |
| Tue Apr 21 16:18:27 1998  Christopher Faylor <cgf@cygnus.com>
 | |
| 
 | |
| 	* environ.cc (ucenv): inline
 | |
| 	(posify): Ditto
 | |
| 	(environ_init): remove obsolete function use
 | |
| 	* path.cc (symlink_check_one): Set errno here where appropriate.
 | |
| 	(readlink): Rely on errno set by symlink_check_one rather than
 | |
| 	defaulting to EINVAL.  Should fix problems with RCS.
 | |
| 
 | |
| Tue Apr 21 15:36:41 1998  Christopher Faylor <cgf@cygnus.com>
 | |
| 
 | |
| 	* Implement a NOSTRACE preprocessor define to allow building
 | |
| 	Cygwin32 without any STRACE code.
 | |
| 	* configure.in: Add entries for architecture specific programs
 | |
| 	to allow easier cross-compile builds
 | |
| 	* configure: Ditto
 | |
| 	* Makefile.in: Ditto
 | |
| 	* console.cc (fhandler_console::char_command): Fix two problems
 | |
| 	with cursor position report:  1) it reported position relative
 | |
| 	to beginning of buffer rather than beginning of screen,  2) it
 | |
| 	reported y, x in reversed order
 | |
| 	* dcrt0.cc: Remove NO_COPY from variables that don't need it.
 | |
| 	Remove variables obsoleted by NO_COPY.
 | |
| 	(dll_crt0_1): strace settings are now inherited.  Don't try
 | |
| 	to initialize strace early.  Remove initialization of variables
 | |
| 	which are now handled automatically by NO_COPY.  Set error mode
 | |
| 	for Cygwin32 to fail on critical errors rather than popping up
 | |
| 	a dialog box.
 | |
| 	* spawn.cc (spawn_guts): Always use default error mode when
 | |
| 	spawning a new process.  Move error message to more generally
 | |
| 	useful location.  Terminate signal handling in a cygwin parent
 | |
| 	process or two processes will be handling signals.
 | |
| 	(_spawnve): Inherit strace stuff
 | |
| 	* exceptions.cc (events_init): Provide more information on
 | |
| 	"Catastrophic failure".  Change error message wording slightly.
 | |
| 	* fork.cc: Remove obsolete structure
 | |
| 	(cygwin_fork_helper1): Remove use of obsolete structure.  Inherit
 | |
| 	strace settings in child processes.
 | |
| 	* sigproc.cc (sigproc_init): Set wait_sig priority immediately
 | |
| 	after thread creation.
 | |
| 	* smallprint.c: Remove unneeded include
 | |
| 	* strace.cc: Reorganize to handle NOSTRACE
 | |
| 	(strace_open): Use strace entries in pinfo structure which are
 | |
| 	now inherited
 | |
| 	(strace_dump): ditto
 | |
| 	(strace_init): preprocessor define STRACE_HHMMSS causes strace
 | |
| 	output to use alternate log file format.
 | |
| 	(strace_printf): ditto
 | |
| 	* syscalls.cc (access): Remove SetErrorMode in favor of global
 | |
| 	cygwin32 setting in dll_crt0_1.
 | |
| 	* fhandler.cc: Handle NOSTRACE
 | |
| 	* tty.cc: Ditto
 | |
| 	* window.cc: Ditto
 | |
| 	* include/sys/strace.h: Ditto
 | |
| 	* winsup.h: Move strace_file handle from per_process to pinfo so
 | |
| 	that it can be inherited.  Remove obsolete pinfo entry.
 | |
| 
 | |
| Tue Apr 21 14:30:52 1998  Christopher Faylor <cgf@cygnus.com>
 | |
| 
 | |
| 	* hinfo.cc (cygwin32_attach_handle_to_fd): New function
 | |
| 	* include/sys/cygwin.h: Ditto.
 | |
| 	* cygwin.din: Export new cygwin-specific function
 | |
| 
 | |
| Tue Apr 21 02:32:08 1998  Geoffrey Noer  <noer@cygnus.com>
 | |
| 
 | |
| 	* syscalls.cc: comment out file_queue struct that doesn't
 | |
| 	seem to be used for anything anymore.  Don't need to include
 | |
| 	stdarg.h or sys/socket.h.  Include utmp.h.  Minor respacing.
 | |
| 	Move all functions from misc.cc here.
 | |
| 	(_read): change strace debug printf function name to _read
 | |
| 	(logout): rename success to res
 | |
| 	* misc.cc: delete file
 | |
| 	* Makefile.in: adjust for above change
 | |
| 
 | |
| Tue Apr 21 01:45:05 1998  Geoffrey Noer  <noer@cygnus.com>
 | |
| 
 | |
| 	* dir.cc: new file for directory-related functions, was
 | |
| 	dirsearch.cc.
 | |
| 	(mkdir, rmdir, writable_directory): move here from syscalls.cc,
 | |
| 	writable_directory no longer static
 | |
| 	* dirsearch.cc: delete file
 | |
| 	* winsup.h: add proto for writable_directory.
 | |
| 	* errno.cc: new file for errno-related functions, move errmap
 | |
| 	struct here from syscalls.cc
 | |
| 	(seterrno): move from syscalls.cc
 | |
| 	(strerror): move from strerror.cc
 | |
| 	* strerror.cc: delete file
 | |
| 	* syscalls.cc: delete everything moved to any of the above files
 | |
| 	* Makefile.in: adjustments for above
 | |
| 
 | |
| Thu Apr 17 16:43:23 1998  Geoffrey Noer  <noer@cygnus.com>
 | |
| 
 | |
| 	* termios.cc: add comments, add extern "C" in front of exported
 | |
| 	calls, move debugging local functions to end of file
 | |
| 	* winsup.h: remove fork_terminate proto for function that is no
 | |
| 	longer with us.  Add strccpy proto.
 | |
| 	* spawn.cc (_spawnve): make static
 | |
| 	(strccpy): remove in favor of identical function in exec.cc
 | |
| 	* exec.cc (strccpy): no longer static
 | |
| 
 | |
| 	patch from newsham@lava.net (Tim Newsham):
 | |
| 	* select.cc (cygwin32_select): fix off by one error, stop
 | |
| 	using memcpy to copy memory over itself
 | |
| 
 | |
| Thu Apr 16 16:23:00 1998  Geoffrey Noer  <noer@cygnus.com>
 | |
| 
 | |
| 	* net.cc: respace, put all fhandler_socket functions together
 | |
| 	(getsockopt): fix case statement bug resulting in faulty strace
 | |
| 	output
 | |
| 	(setsockopt): ditto
 | |
| 	* shared.cc: throughout, rename global h to cygwin_shared_h
 | |
| 	* strerror.cc: make error global a local variable
 | |
| 	* fhandler.h: add comments, add virtual function always_read_ready
 | |
| 	to fhandler_serial which should return zero to allow non-blocking
 | |
| 	serial I/O.
 | |
| 	* Makefile.in: select.cc should depend on select.h
 | |
| 
 | |
| Wed Apr 15 16:14:01 1998  Geoffrey Noer  <noer@cygnus.com>
 | |
| 
 | |
| 	* select.h: new file, containing macros used by select.cc.
 | |
| 	* select.cc: remove them from here, include select.h
 | |
| 
 | |
| Wed Apr 15 15:23:55 1998  Geoffrey Noer  <noer@cygnus.com>
 | |
| 
 | |
| 	* ntea.cc (NTReadEARaw): mark as static, don't check allow_ntea
 | |
| 	since this is only accessed by functions that have already checked
 | |
| 	it.
 | |
| 
 | |
| Tue Apr 14 14:07:54 1998  Geoffrey Noer  <noer@cygnus.com>
 | |
| 
 | |
| 	* cygwin.din: export truncate call
 | |
| 
 | |
| Mon Apr 13 23:15:13 1998  Geoffrey Noer  <noer@cygnus.com>
 | |
| 
 | |
| 	Throughout Cygwin32, rename *u for per_process data *user_data.
 | |
| 	Likewise, rename *s for shared memory data *cygwin_shared.
 | |
| 	Respace where necessary.
 | |
| 	* registry.cc: minor respace
 | |
| 	* registry.h: ditto
 | |
| 	* net.cc: ditto
 | |
| 	* fhandler.cc (fhandler_base::read): don't redeclare int len
 | |
| 	* syslog.cc: add FIXME, reformatting, remove extern "C" around
 | |
| 	whole file, add before exported functions
 | |
| 	(syslog): rename second cp char pointer cp2
 | |
| 	(setlogmask): comment out unused function
 | |
| 
 | |
| Mon Apr 13 17:55:43 1998  Geoffrey Noer  <noer@cygnus.com>
 | |
| 
 | |
| 	* environ.cc (parse_options): add "ntea" setting to CYGWIN32
 | |
| 	env variable.  Setting determines whether NTEA is used or not.
 | |
| 	* ntea.cc: Add allow_ntea global which is inited to FALSE.
 | |
| 	Now instead of immediately returning FALSE, make all
 | |
| 	functions check allow_ntea variable and use or not use NTEA
 | |
| 	based on its value.
 | |
| 	* ps.cc (main): widen Win32_pid field by one to better handle
 | |
| 	Win 95 pids.
 | |
| 
 | |
| 	patch from sos@prospect.com.ru (Sergey Okhapkin):
 | |
| 	* shared.cc (shared_info::initialize): increase default
 | |
| 	heap_chunk_size to 128 mb to get around the problem that
 | |
| 	Cygwin32 still can't cope with a split heap properly.
 | |
| 
 | |
| Wed Apr  8 18:04:07 1998  Geoffrey Noer  <noer@cygnus.com>
 | |
| 
 | |
| 	* net.cc (cygwin32_bind, cygwin32_getsockname, cygwin32_listen,
 | |
| 	cygwin32_shutdown): if should check sock, not s.
 | |
| 
 | |
| Wed Apr  8 15:00:46 1998  Geoffrey Noer  <noer@cygnus.com>
 | |
| 
 | |
| 	Eliminate warnings revealed by -Wshadow -Wall:
 | |
| 	* console.cc (FakeReadFile): fix aggregate with partly bracketed
 | |
| 	initializer (add missing brackets).
 | |
| 	* tty.cc (fhandler_tty_slave::close): remove unused variable tty
 | |
| 	(fhandler_tty_slave::dup): ditto
 | |
| 	(fhandler_tty_slave::send_ioctl_request): ditto
 | |
| 
 | |
| Wed Apr  8 03:04:11 1998  Geoffrey Noer  <noer@cygnus.com>
 | |
| 
 | |
| 	Eliminate warnings revealed by -Wshadow -Wall:
 | |
| 	* console.cc (FakeReadFile): change variable name index to
 | |
| 	modifier_index.
 | |
| 	(fhandler_console::read): remove second definition of flags
 | |
| 	* dcrt0.cc (build_argv): rename s to start, e to end
 | |
| 	(insert_files): reformat, add parens around assign used as truth
 | |
| 	value, make i a DWORD, remove dup def of i.
 | |
| 	* dlfcn.cc (set_dl_error): rename s to str
 | |
| 	(checkAccess): rename to check_access
 | |
| 	(checkPathAccess): rename to check_path_access
 | |
| 	(getFullPathOfDll): rename to get_full_path_of_dll, don't
 | |
| 	redeclare len
 | |
| 	* dll_init.cc (DllList::detachDll): rename index to dll_index
 | |
| 	* fork.cc (cygwin_fork_helper1): rename index to dll_index,
 | |
| 	reformat slightly, rename res in dll load section to loadres,
 | |
| 	don't redeclare rc two additional times
 | |
| 	(dump_jmp_buf): rename s to sbuf
 | |
| 	* grp.cc (initgroups): rename group arg to grp
 | |
| 	* hinfo.cc (digits): rename s to str
 | |
| 	(hinfo_vec::build_fhandler): rename first buf variable to
 | |
| 	buf_info, the second to buff.
 | |
| 	(hinfo_vec::linearize_fd_array): cast sizeof return to int,
 | |
| 	declare i in for loop
 | |
| 	(hinfo_vec::de_linearize_fd_array): declare i in for loop
 | |
| 	* misc.cc (nice): rename pri to priority, index to curr
 | |
| 	(cygname): rename s to str
 | |
| 	(login): rename tty to currtty
 | |
| 	(logout) put missing parens around arg to sizeof calls
 | |
| 	* net.cc (DuplicateSocket): rename function to duplicate_socket,
 | |
| 	rename s arg to sock
 | |
| 	(fhandler_socket::fhandler_socket): rename s arg to sock
 | |
| 	(socketpair): rename sin to sock_in
 | |
| 	(cygwin32_rexec): rename passwd arg to password
 | |
| 	* passwd.cc (parse): rename stat array to tmpbuf
 | |
| 	* resource.cc (fill_rusage): rename creation to creation_time,
 | |
| 	exit to exit_time, kernel to kernel_time, user to user_time
 | |
| 	(getrusage): rename rusage arg to rusage_in
 | |
| 	* sigproc.cc (proc_terminate): move i declaration outside of
 | |
| 	loop, get rid of extra declaration
 | |
| 	(getsem): rename s to str
 | |
| 	(proc_strace): declare i at top of function, remove extra two
 | |
| 	declarations of it later
 | |
| 	* smallprint.c: include ctype.h for isalnum proto
 | |
| 	(__small_vsprintf): put parens around assign used as truth value
 | |
| 	* spawn.cc (spawn_guts): rename both s variables to str, remove
 | |
| 	redeclarations of i
 | |
| 	* strace.cc (mark): rename s arg to str
 | |
| 	* syscalls.cc (chown): remove unused vars group, passwd
 | |
| 	(access): rename s to st
 | |
| 	(ctermid): rename s to str
 | |
| 	* termios.cc (cfsetospeed, cfsetispeed): rename s to speed
 | |
| 	* times.cc (times): rename creation to creation_time,
 | |
| 	exit to exit_time, kernel to kernel_time, user to user_time
 | |
| 	(time_t_to_filetime, timeval_to_filetime): rename time to time_in
 | |
| 	* tty.cc (create_tty_master): rename utmp variable our_utmp
 | |
| 	(fhandler_tty_master::init): rename ttynum arg ttynum_in
 | |
| 
 | |
| Tue Apr  7 17:18:05 1998  Geoffrey Noer  <noer@cygnus.com>
 | |
| 
 | |
| 	* syscalls.cc (seterrno): add FIXME
 | |
| 	* path.cc (symlink_check_one): change comment wording
 | |
| 
 | |
| 	patch from Tom Tromey (tromey@cygnus.com)
 | |
| 	* syscalls.cc (access): Call SetErrorMode to turn off critical
 | |
| 	errors dialog.
 | |
| 
 | |
| 	patch from Mikey (jeffdb@netzone.com):
 | |
| 	* fhandler.cc (fhandler_disk_file::open): under Win95, set
 | |
| 	S_IXOTH|S_IXGRP|S_IXGRP if the first two bytes of a file contain
 | |
| 	a '#!'.
 | |
| 	(fhandler_disk_file::check_execable_p): consider shell scripts
 | |
| 	execable
 | |
| 
 | |
| Mon Apr  6 20:55:06 1998  Geoffrey Noer  <noer@cygnus.com>
 | |
| 
 | |
| 	* include/sys/cygwin.h: add protos for cygwin32 path conversion
 | |
| 	functions.
 | |
| 
 | |
| Wed Apr  1 16:12:58 1998  Geoffrey Noer  <noer@cygnus.com>
 | |
| 
 | |
| 	* {fhandler.cc, fhandler.h, hinfo.cc, console.cc}: Rename
 | |
| 	fhandler_tty class to fhandler_serial
 | |
| 
 | |
| Tue Mar 31 16:27:36 1998  Geoffrey Noer  <noer@cygnus.com>
 | |
| 
 | |
| 	* ntea.cc: temporarily disable reading/writing NTEA information
 | |
| 	due to the large penalty incurred on NT fat partitions.
 | |
| 
 | |
| Fri Mar 27 13:35:30 1998  Geoffrey Noer  <noer@cygnus.com>
 | |
| 
 | |
| 	* environ.cc (parse_options): change struct to union to avoid
 | |
| 	references to uninitialized fields.
 | |
| 
 | |
| Thu Mar 26 19:03:00 1998  Eric Bachalo  <ebachalo@cygnus.com>
 | |
| 
 | |
| 	* dcrt0.cc (insert_files): added this function to replace
 | |
| 	-@file in the command line with the contents of the file
 | |
| 	(dll_crt0_1): calls insert_files before building argv
 | |
| 
 | |
| Wed Mar 25 15:25:26 1998  Geoffrey Noer  <noer@cygnus.com>
 | |
| 
 | |
| 	And more:
 | |
| 	* {fhandler.cc, fhandler.h, tty.cc, net.cc, console.cc}: make
 | |
| 	ioctl calls' cmd arg unsigned, ditto for access arg of init calls.
 | |
| 	* console.cc (fhandler_console::fillin_info): add parens around
 | |
| 	assignment used as truth value.
 | |
| 	(FakeReadFile): make copied_chars a size_t
 | |
| 	(fhandler_console::read): make i in loop unsigned
 | |
| 	* environ.cc (setenv): make l_value unsigned, add parens around
 | |
| 	assignments used as truth values.
 | |
| 	* exceptions.cc (call_handler): supposed to return an int and
 | |
| 	wasn't at the end of control flow.  Now returns 1 there.
 | |
| 	* fhandler.h (~fhandler_base): destructor should be marked virtual
 | |
| 	* misc.cc (login): add parens around assignment used as truth
 | |
| 	value.
 | |
| 	* net.cc: cast INVALID_SOCKET to int in comparisons
 | |
| 	(fhandler_socket::ioctl): remove int cast to FIONBIO since cmd
 | |
| 	is now unsigned
 | |
| 	(get_win95_ifconf): add cast to signed vs unsigned int comparison.
 | |
| 	* ntea.cc (NTReadEA): add cast to signed vs unsigned int
 | |
| 	comparison.
 | |
| 	* path.cc (getcwd_inner): make len a size_t
 | |
| 	* pinfo.cc (cygwin32_winpid_to_pid): add comment
 | |
| 	* select.cc (cygwin32_select): make wait_ret an int
 | |
| 	* signal.cc (kill_worker): add parens around assignments used as
 | |
| 	truth values.
 | |
| 	* sigproc.cc (wait_sig): make rc a DWORD
 | |
| 	(sig_send): add parens around assignment used as truth value.
 | |
| 	* strace.cc: make inqueue global a static DWORD
 | |
| 	* tty.cc (do_output): add cast to signed vs unsigned int
 | |
| 	comparison.
 | |
| 	(fhandler_pty_master::open): remove unused handle nh
 | |
| 
 | |
| Tue Mar 24 18:03:59 1998  Geoffrey Noer  <noer@cygnus.com>
 | |
| 
 | |
| 	More spring cleaning:
 | |
| 	* net.cc: move LOAD macro definition out of winsock_init,
 | |
| 	correction to make it valid ANSI C++.
 | |
| 	* grp.cc (read_etc_group): pass default line directly to
 | |
| 	add_grp_line call
 | |
| 
 | |
| Mon Mar 23 19:21:00 1998  Geoffrey Noer  <noer@cygnus.com>
 | |
| 
 | |
| 	patch from cgf@bbc.com (Christopher Faylor):
 | |
| 	* spawn.cc (spawn_guts): Don't call close_all_files if a cygwin
 | |
| 	process has been spawned.  Otherwise, we close tty handles twice.
 | |
| 
 | |
| Fri Mar 20 23:01:24 1998  Geoffrey Noer  <noer@cygnus.com>
 | |
| 
 | |
| 	* pinfo.cc (pinfo_list::init): Initialize next_pid to PBASE.
 | |
| 	(pinfo_list::operator []): Now index is given by pid mod size().
 | |
| 	(pinfo_list::allocate_pid): Allow more pid numbers than spaces in
 | |
| 	the process table.  Pids now can range from PBASE (1000) to
 | |
| 	INT_MAX.  At that point they wrap to 1000 again.  For speed, use
 | |
| 	modular arithmetic to map pids into table.
 | |
| 	* winsup.h: move PBASE to pinfo.cc, rename next_pid_index to
 | |
| 	next_pid
 | |
| 	* utils/ps.cc (main): reorg of what's printed where, listing pid
 | |
| 	first.
 | |
| 
 | |
| Thu Mar 19 15:05:07 1998  Geoffrey Noer  <noer@cygnus.com>
 | |
| 
 | |
| 	* winsup.h: Change section name in NO_COPY definition.  We were
 | |
| 	using a .data$nocopy section to avoid copying certain data on
 | |
| 	fork.  The linker used to include this between __data_start__ and
 | |
| 	__data_end__, but that broke building the cygwin32 dll.  The fix
 | |
| 	is to rename the section ".data_cygwin_nocopy" and explictly
 | |
| 	include it after __data_end__.
 | |
| 
 | |
| Wed Mar 18 15:03:51 1998  Geoffrey Noer  <noer@cygnus.com>
 | |
| 
 | |
| 	* tty.h: fix ttyslot proto; it returns an int
 | |
| 	* glob.h: fix glob proto; it returns an int
 | |
| 
 | |
| Mon Mar 16 16:16:40 1998  Geoffrey Noer  <noer@cygnus.com>
 | |
| 
 | |
| 	* Makefile.in: stop installing the dll in the lib directory as
 | |
| 	well as the bindir.
 | |
| 	* environ.cc (parse_options): don't need to call malloc
 | |
| 
 | |
| Mon Mar 16 11:56:23 1998  Geoffrey Noer  <noer@cygnus.com>
 | |
| 
 | |
| 	patch from cgf@bbc.com (Christopher Faylor):
 | |
| 	* tty.cc (fhandler_tty_slave::dup): Don't set flags to 0.  Flags
 | |
| 	have already been set in wrapper.
 | |
| 	* net.cc: Rename `s' variable which shadows global `s'.
 | |
| 	* termios.cc: ditto
 | |
| 	* time.cc: ditto
 | |
| 
 | |
| Tue Mar 10 15:54:04 1998  Geoffrey Noer  <noer@cygnus.com>
 | |
| 
 | |
| 	* version.h: up CYGWIN_DLL_VERSION_MINOR
 | |
| 
 | |
| Tue Mar 10 15:41:29 1998  Geoffrey Noer  <noer@cygnus.com>
 | |
| 
 | |
| 	patch from cgf@bbc.com (Christopher Faylor):
 | |
| 	* spawn.cc (spawn_guts):  Make argument handling after `#! pgm'
 | |
| 	handle spaces similarly to UNIX.  Close "linearized" file handles
 | |
| 	when a non-cygwin32 binary is executed or suffer hangs on exit.
 | |
| 	Reorganize lpReserved2 buffer to avoid conflicts with Microsoft
 | |
| 	usage which resulted in incorrect stdin/stdout operation with
 | |
| 	programs compiled using MSVC.
 | |
| 	* pinfo.cc (pinfo_init):  Accommodate change to lpReserved2
 | |
| 	organization.
 | |
| 
 | |
| Mon Mar  9 19:27:17 1998  Geoffrey Noer  <noer@cygnus.com>
 | |
| 
 | |
| 	* syscalls.cc (_open): modify to take a variable number of
 | |
| 	arguments to match newlib's fcntl.h.
 | |
| 	* environ.cc (parse_options): rewrite struct known to conform
 | |
| 	to ANSI standards.  Can't statically initialize, so do so
 | |
| 	dynamically at the beginning of the function instead.
 | |
| 
 | |
| 	patch from jeffdb@netzone.com (Mikey):
 | |
| 	* dcrt0.cc (build_argv, compute_argc): need to escape quotes
 | |
| 
 | |
| Sat Feb 28 16:41:54 1998  Geoffrey Noer  <noer@cygnus.com>
 | |
| 
 | |
| 	patch from sos@prospect.com.ru (Sergey Okhapkin):
 | |
| 	* fhandler.cc (fhandler_base::init): call set_flags based on
 | |
| 	access arg.
 | |
| 	* net.cc: include fcntl.h
 | |
| 	(fhandler_socket::fhandler_socket): made sockets O_RDWR
 | |
| 
 | |
| Thu Feb 26 23:41:54 1998  Geoffrey Noer  <noer@cygnus.com>
 | |
| 
 | |
| 	Beta 19 release made.
 | |
| 
 | |
| Sun Feb 22 23:46:31 1998  Geoffrey Noer  <noer@cygnus.com>
 | |
| 
 | |
| 	patch from sos@prospect.com.ru (Sergey Okhapkin):
 | |
| 	* Makefile.in: Do not link cygwinb19.dll with libwsock32.a
 | |
| 	* exceptions.cc: add proto for i_WSACleanup.
 | |
| 	(sig_handle): call *i_WSACleanup if winsock was inited.
 | |
| 	* hinfo.cc: add proto for i_getpeername.
 | |
| 	(hinfo_vec::build_fhandler): call *i_getpeername if winsock
 | |
| 	was inited
 | |
| 	* net.cc: wsock32, i_wsockimports - new globals.  Throughout
 | |
| 	file, call winsock functions via indirect pointers.
 | |
| 	(winsock_init): dynamically load wsock32.dll and resolve addresses
 | |
| 	of exports.
 | |
| 	(cygwin32_rcmd, cygwin32_rexec, cygwin32_rresvport): resolve
 | |
| 	addresses of exports.
 | |
| 	* select.cc: add protos for i___WSAFDIsSet, i_WSAGetLastError,
 | |
| 	i_select, i_socket, i_closesocket.  WINSOCK_FD_ISSET changed to
 | |
| 	use indirect pointer.  Direct winsock calls changed to indirect.
 | |
| 	(cygwin32_select): initialize winsock before calling select in
 | |
| 	degenerate case.
 | |
| 	* winsup.h: remove protos for ScreenRows, ScreenCols,
 | |
| 	ScreenGetCursor, ScreenSetCursor.
 | |
| 
 | |
| Sun Feb 22 17:44:55 1998  Geoffrey Noer  <noer@cygnus.com>
 | |
| 
 | |
| 	* environ.cc (parse_options): comment out -- no longer
 | |
| 	compiles with egcs.  Will rewrite/enable later.
 | |
| 
 | |
| Sun Feb 22 13:49:10 1998  Geoffrey Noer  <noer@cygnus.com>
 | |
| 
 | |
| 	* syscalls.h: remove protos for _open, _read, _write since
 | |
| 	they are in newlib headers that are already included
 | |
| 	* syscalls.cc (_read): return int, not ssize_t
 | |
| 	(_write): ditto
 | |
| 
 | |
| Sat Feb 21 14:21:17 1998  Geoffrey Noer  <noer@cygnus.com>
 | |
| 
 | |
| 	* Makefile.in: rename dll to cygwindevo.dll
 | |
| 
 | |
| Sat Feb 21 01:33:56 1998  Geoffrey Noer  <noer@cygnus.com>
 | |
| 
 | |
| 	* cygwin.din: remove dup definition of endpwent
 | |
| 
 | |
| Thu Feb 19 14:20:21 1998  Geoffrey Noer  <noer@cygnus.com>
 | |
| 
 | |
| 	* include/cygwin32/cygwin_dll.h: Correct protection wrapper
 | |
| 
 | |
| Tue Feb 17 20:21:24 1998  Geoffrey Noer  <noer@cygnus.com>
 | |
| 
 | |
| 	* include/Windows32/Structures.h: tagBITMAPFILEHEADER should
 | |
| 	be packed.
 | |
| 
 | |
| Tue Feb 17 19:34:41 1998  Geoffrey Noer  <noer@cygnus.com>
 | |
| 
 | |
| 	patch from cgf@bbc.com (Christopher Faylor):
 | |
| 	* cygwin.din: export sigpause
 | |
| 	* signal.cc (sigpause): New "compatibility interface" to
 | |
| 	sigsuspend function.  Used currently by inetutils.
 | |
| 
 | |
| Tue Feb 17 11:43:27 1998  Ian Lance Taylor  <ian@cygnus.com>
 | |
| 
 | |
| 	* tty.h (class tty): Add slave_opened field.
 | |
| 	* tty.cc (fhandler_tty_master::init): Initialize slave_opened.
 | |
| 	(do_output): Only return with EOF if the slave has been opened.
 | |
| 	(fhandler_tty_slave::open): Set slave_opened.
 | |
| 	(fhandler_pty_master::open): Initialize slave_opened.
 | |
| 
 | |
| 	* tty.cc (fhandler_pty_master::read): Change type of n to DWORD.
 | |
| 	If there are no characters to read, and the descriptor is in
 | |
| 	nonblocking mode, just return EGAIN.
 | |
| 
 | |
| Mon Feb 16 15:11:25 1998  Ian Lance Taylor  <ian@cygnus.com>
 | |
| 
 | |
| 	* tty.h (class tty): Remove handle_pid and slave_handles fields.
 | |
| 	(class tty_list): Add getcount method.
 | |
| 	* tty.cc (tty::init): Initialize input_handle and output_handle.
 | |
| 	(tty_list::free_tty): If we just freed the last reference to this
 | |
| 	tty, close input_handle and output_handle.
 | |
| 	(fhandler_tty_master::init): Don't initialize handle_pid and
 | |
| 	slave_handles.
 | |
| 	(do_output): Instead of just calling ReadFile, loop using
 | |
| 	PeekNamedPipe and check whether the tty has been closed.  Return 0
 | |
| 	on EOF and -1 on error.
 | |
| 	(process_output): Only print debugging error message if error
 | |
| 	occurs in do_output.
 | |
| 	(fhandler_tty_slave::open): Always duplicate handles from master.
 | |
| 	Never close handles in source.  Don't change slave_handles.
 | |
| 	(fhandler_tty_slave::close): Don't change slave_handles, and don't
 | |
| 	close tty handles.
 | |
| 	(fhandler_tty_slave::linearize): Call attach_tty.
 | |
| 	(fhandler_tty_slave::de_linearize): Don't call attach_tty.
 | |
| 	(fhandler_tty_slave::dup): Don't increment slave handles.
 | |
| 	(fhandler_pty_master::open): Don't initialize handle_pid and
 | |
| 	slave_handles.
 | |
| 	(fhandler_pty_master::close): Don't check slave_handles, and don't
 | |
| 	close tty handles.
 | |
| 	(fhandler_pty_master::read): Handle EOF return value from
 | |
| 	do_output.
 | |
| 	(fhandler_pty_master::linearize): Call attach_tty.
 | |
| 	(fhandler_pty_master::de_linearize): Don't call attach_tty.
 | |
| 
 | |
| 	* fork.cc (cygwin_fork_helper1): Copy strace_mask from parent to
 | |
| 	child.
 | |
| 
 | |
| Thu Feb 12 20:33:57 1998  Geoffrey Noer  <noer@cygnus.com>
 | |
| 
 | |
| 	patch from cgf@bbc.com (Christopher Faylor):
 | |
| 	* utils/cygwin.cc: Modify -s option to use new strace_mask entry
 | |
| 	in pinfo.  Prepare for future ability to specify an strace file.
 | |
| 
 | |
| Thu Feb 12 11:57:26 1998  Geoffrey Noer  <noer@cygnus.com>
 | |
| 
 | |
| 	* grp.cc (read_etc_group): add a default /etc/group in memory
 | |
| 	if /etc/group isn't found
 | |
| 	(getgrnam): return NULL if requested group isn't found instead
 | |
| 	of returning a default group
 | |
| 
 | |
| Wed Feb 11 15:59:10 1998  Geoffrey Noer  <noer@cygnus.com>
 | |
| 
 | |
| 	patch from sos@prospect.com.ru (Sergey Okhapkin):
 | |
| 	* strace.cc (strace_open): do not close u->strace_file if it
 | |
| 	points to stderr.
 | |
| 	* malloc.cc (malloc_init): do not check for application's malloc
 | |
| 	in a forkee, this breaks memory coherency in a forkee and forker.
 | |
| 	use_internal_malloc flag now copies on fork.
 | |
| 
 | |
| Tue Feb 10 18:11:30 1998  Geoffrey Noer  <noer@cygnus.com>
 | |
| 
 | |
| 	patch from cgf@bbc.com (Christopher Faylor)
 | |
| 	Throughout sources, mark statics and globals as NO_COPY where
 | |
| 	appropriate.
 | |
| 	* fork.cc (cygwin_fork_helper1): Remove #if 0 around fork_copy of
 | |
| 	cygwin data/bss.  Remove __malloc_copy since it is no longer
 | |
| 	necessary.
 | |
| 
 | |
| Tue Feb 10 15:30:19 1998  Geoffrey Noer  <noer@cygnus.com>
 | |
| 
 | |
| 	patch from cgf@bbc.com (Christopher Faylor)
 | |
| 	* console.cc (fhandler_console::write): Implement xterm style
 | |
| 	escape sequences for setting title in the console title bar.
 | |
| 	* fhandler.h: Define constants for console title escape sequence.
 | |
| 
 | |
| Tue Feb 10 14:16:17 1998  Geoffrey Noer  <noer@cygnus.com>
 | |
| 
 | |
| 	* include/a.out.h: remove junk chars introduced by mailer
 | |
| 	when this header was sent to us
 | |
| 
 | |
| 	patch from sos@prospect.com.ru (Sergey Okhapkin):
 | |
| 	* libccrt0.cc: rename cygwin_attach_dll to cygwin32_attach_dll
 | |
| 
 | |
| 	patch from cgf@bbc.com (Christopher Faylor):
 | |
| 	* environ.cc: fix off by one problem
 | |
| 
 | |
| Mon Feb  9 14:56:00 1998  Geoffrey Noer  <noer@cygnus.com>
 | |
| 
 | |
| 	* Makefile.in: add registry.h to environ.o deps
 | |
| 
 | |
| Mon Feb  9 14:42:24 1998  Ian Lance Taylor  <ian@cygnus.com>
 | |
| 
 | |
| 	* Makefile.in (DLL_OFILES): Rename dllinit.o to dll_init.o.
 | |
| 
 | |
| 	* tty.cc (fhandler_tty_slave::close): Don't close the tty handles
 | |
| 	if the slave and the master are the same process.
 | |
| 
 | |
| 	* path.cc (read_mounts): Change key parameter to reference, to
 | |
| 	avoiding running the destructor.
 | |
| 
 | |
| Mon Feb  9 13:53:50 1998  Geoffrey Noer  <noer@cygnus.com>
 | |
| 
 | |
| 	patch from cgf@bbc.com (Christopher Faylor):
 | |
| 	Moves all environment manipulation into environ.cc.
 | |
| 	Switches to CYGWIN32 for settings:
 | |
| 	  set CYGWIN32=[no]title [no]strip_title [no]binmode [no]glob
 | |
| 		       strace=mask:cache,file [no]tty
 | |
| 	(set STRACE=whatever is still honored).
 | |
| 	Propagates tty settings to all subprocesses regardless of
 | |
| 	unsetting of environment variable.
 | |
| 	Moves strace mask into pinfo structure for easier future
 | |
| 	manipulation by external program.  Moves strace_file into the
 | |
| 	vacated position for automatic use in forked processes.
 | |
| 	Propagates old title to execed processes so that they can
 | |
| 	correctly restore the correct title when they exit.
 | |
| 	* console.cc:  Use PID_USETTY setting in process_state so that
 | |
| 	tty state can be easily inherited.
 | |
| 	(set_console_title):  New function to set console title.
 | |
| 	* syscalls.cc:  Use PID_USETTY setting in process_state so that
 | |
| 	tty state can be easily inherited.
 | |
| 	* tty.cc: Ditto.
 | |
| 	* hinfo.cc: Ditto.
 | |
| 	(hinfo_vec::de_linearize_fd_array): Return last location in buffer
 | |
| 	for further potential processing.
 | |
| 	* dcrt0.cc:  Add global variables for control of glob and title,
 | |
| 	set by environ_init.  Mark some variables as NO_COPY.
 | |
| 	Remove routines and variables for dealing with environment.
 | |
| 	(dll_crt0_1): Move environment initialization into separate
 | |
| 	function.  Honor 'noglob' CYGWIN32 setting.
 | |
| 	* environ.cc (environ_init): New function to initialize the
 | |
| 	environ table.  Also scans for CYGWIN32 environment variable,
 | |
| 	setting appropriate values.
 | |
| 	(ucenv): New function.  Upper cases an environment variable.
 | |
| 	(parse_options): New function.  Parse CYGWIN_* environment
 | |
| 	variable.
 | |
| 	(posify): New function.  Convert a Windows env path spec to
 | |
| 	cygwin.
 | |
| 	(env_sort): New function.  Sort an environ block.
 | |
| 	(winenv): New function.  Returns a windows style environment
 | |
| 	block.
 | |
| 	* fhandler.cc (fhandler_base::read): Reflect change to location of
 | |
| 	strace_mask.
 | |
| 	* fork.cc (cygwin_fork_helper1): Remove save/restore of some
 | |
| 	settings since this is automatic now with new dll data copy.  Save
 | |
| 	PID_USETTY setting in child process_state.
 | |
| 	* strace.h: Cosmetic change.
 | |
| 	* pinfo.cc (pinfo_init):  Call environ_init here since it may
 | |
| 	affect further processing in this function.  Use old console title
 | |
| 	from "parent" process if execed process.  Reflect change to
 | |
| 	location of strace_mask.
 | |
| 	* spawn.cc (spawn_guts): Remove environment manipulation code.
 | |
| 	Use new winenv function call instead.  Save old title in block of
 | |
| 	memory copied to newly execed process if title is being displayed.
 | |
| 	* strace.cc:  Changes to reflect new location for strace_mask and
 | |
| 	strace_file.  These are now automatically inherited on fork.
 | |
| 	* winsup.h:  Move strace_mask into pinfo to allow possible
 | |
| 	manipulation by other processes.  Put u->strace_file in uptr
 | |
| 	structure so that it will be automatically duplicated on fork,
 | |
| 	removing the necessity of initializing strace in a forked
 | |
| 	process.  Add functions/variables associated with environment
 | |
| 	manipulation and console title setting.
 | |
| 
 | |
| Mon Feb  9 03:06:56 1998  Geoffrey Noer  <noer@cygnus.com>
 | |
| 
 | |
| 	Extensive reformatting in new files from next patch.
 | |
| 	Rename dllinit.h file to dll_init.h and likewise for dll_init.cc.
 | |
| 	Rename cygwin_detach_dll to cygwin32_detach_dll throughout.
 | |
| 	Similarly, rename cygwin_attach_dll and _cygwin_dll_entry.
 | |
| 	And rename sanityAndSyncCheck to check_sanity_and_sync.
 | |
| 	Also:
 | |
| 	* dll_init.h: don't include winsup.h
 | |
| 	* dll_init.cc: include winsup.h here instead
 | |
| 	* dlfcn.cc: include winsup.h, don't include windows.h
 | |
| 	* cygwin.din: rename cygwin_detach_dll to cygwin32_detach_dll.
 | |
| 
 | |
| 	patch from giac@dalim.de (Philippe Giacinti):
 | |
| 	Copy data areas of cygwin-compiled dlls on fork(),
 | |
| 	implement dlopen/dlsym/dlclose/dlerror calls.
 | |
| 	* Makefile.in: add dlfcn.o and dllinit.o to DLL_OFILES, add
 | |
| 	dllinit.h dependencies
 | |
| 	* cygwin.din: dll_dllcrt0, cygwin_detach_dll, dlopen, dlclose,
 | |
| 	dlsym, dlerror, dlfork -- new exports.
 | |
| 	* dcrt0.cc: include dllinit.h, mark u pointer as NO_COPY.
 | |
| 	(sanityAndSyncCheck): new, code moved from dll_crt0_1.
 | |
| 	Initialize all linked dlls before calling main().
 | |
| 	* dlfcn.cc: new file.
 | |
| 	* dllinit.cc: new file.
 | |
| 	* dllinit.h: new file.
 | |
| 	* exceptions.cc: mark some variables with NO_COPY.
 | |
| 	* fork.cc: include dllinit.h; declare cygwin.dll data/bss
 | |
| 	start/end.
 | |
| 	(cygwin_fork_helper1): copy data/bss of cygwin.dll itself to child
 | |
| 	process (the code is disabled now); copy data areas of
 | |
| 	linked/loaded dlls (if any); free loaded dll list on cleanup.
 | |
| 	* include/cygwin32/cygwin_dll.h: new file.
 | |
| 	* include/dlfcn.h: new file.
 | |
| 	* libccrt0.cc (cygwin_crt0_common): new, code derived from
 | |
| 	cygwin_crt0, MainFunc parameter added.
 | |
| 	(cygwin_crt0): call cygwin_crt0_common.
 | |
| 	(cygwin_attach_dll): new.
 | |
| 	* shared.cc: mark some data as NO_COPY
 | |
| 	* strace.cc: mark some data as NO_COPY
 | |
| 	* winsup.h: add dll_dllcrt0 proto, NO_COPY macro.
 | |
| 
 | |
| Sun Feb  8 17:51:26 1998  Geoffrey Noer  <noer@cygnus.com>
 | |
| 
 | |
| 	* getopt.c: new.  Import Berkeley getopt code modified for use
 | |
| 	in Cygnus' kerberos implementation (including the writing of
 | |
| 	getopt_long by Chris Provenzano (proven@cygnus.com)) then modified
 | |
| 	a bit more to get it working in Cygwin32.  Although we were
 | |
| 	going to remove getopt, it appears that too many programs would
 | |
| 	need fixing to remove it completely.  Whether getopt should be
 | |
| 	included in Cygwin32 should be decided at a later time.
 | |
| 	* include/getopt.h: new.  Import Berkeley getopt.h.
 | |
| 	* Makefile.in: add getopt.o to LIBCOS
 | |
| 	* utils/Makefile.in: remove include of ../../include since
 | |
| 	getopt.h is now in winsup/include, also revert recent change
 | |
| 	of addition of GETOPT_OBJS.
 | |
| 
 | |
| Fri Feb  6 16:28:19 1998  Geoffrey Noer  <noer@cygnus.com>
 | |
| 
 | |
| 	* cygwin.din: remove set_new_handler and cygwin_set_attributes
 | |
| 	exports
 | |
| 	* version.h: up major version number
 | |
| 	* Makefile.in: rename dll to cygwinb19.dll
 | |
| 	* syscalls.cc (cygwin_set_attributes): axe
 | |
| 
 | |
| Thu Feb  5 18:28:37 1998  Geoffrey Noer  <noer@cygnus.com>
 | |
| 
 | |
| 	* include/Windows32/Functions.h: add protos for
 | |
| 	DdeCmpStringHandles and DdeCreateDataHandle
 | |
| 	* Makefile.in: stop including ../libiberty/getopt* since
 | |
| 	we aren't exporting or using them
 | |
| 	* utils/Makefile.in: add new variable for libiberty getopt objs
 | |
| 	which is linked in for cygwin.exe
 | |
| 
 | |
| Thu Feb  5 17:59:12 1998  Geoffrey Noer  <noer@cygnus.com>
 | |
| 
 | |
| 	syscalls.cc: move ppc dll_entry asm code to...
 | |
| 	dcrt0.cc: ...here
 | |
| 
 | |
| 	Import new globbing code from NetBSD 1.3
 | |
| 	* glob: delete subdirectory
 | |
| 	* glob.c: new file
 | |
| 	* glob.h: new file
 | |
| 	* Makefile.in: remove glob from submakes, remove glob/libglob.a
 | |
| 	from DLL_IMPORTS, fix dcrt0 glob.h dependency
 | |
| 	* configure.in: don't configure glob subdirectory
 | |
| 	* configure: regenerate
 | |
| 	* dcrt0.cc: include glob.h, not glob/glob.h.
 | |
| 	(globify): don't call glob with GLOB_NOESCAPE which isn't a valid
 | |
| 	flag with this glob
 | |
| 
 | |
| Wed Feb  4 16:14:13 1998  Geoffrey Noer  <noer@cygnus.com>
 | |
| 
 | |
| 	patch from sos@prospect.com.ru (Sergey Okhapkin):
 | |
| 	Allow system administrator to enter into the HKLM registry tree
 | |
| 	a predefined mount table inherittable by all cygwin users.  The
 | |
| 	predefined mounts are non-mandatory so the user's mount table has
 | |
| 	a higher priority than the default one.  Cygwin reads HKLM tree
 | |
| 	in read-only mode.
 | |
| 	* path.cc (read_mounts): new, code derived from
 | |
| 	mount_info::from_registry().
 | |
| 	(mount_info::from_registry): call read_mounts from user's table,
 | |
| 	then from system-wide mount table.
 | |
| 	* registry.cc (reg_session::reg_session): key and access arguments
 | |
| 	added.
 | |
| 	(reg_key::init): access argument added.
 | |
| 	(reg_key::reg_key): access argument added.
 | |
| 	* registry.h (class reg_key): init prototype changed, default
 | |
| 	argument of reg_key added.
 | |
| 	(class reg_session): default arguments of constructor added.
 | |
| 
 | |
| Wed Feb  4 15:38:59 1998  Geoffrey Noer  <noer@cygnus.com>
 | |
| 
 | |
| 	* include/a.out.h: new coff header file
 | |
| 
 | |
| Wed Feb  4 01:55:18 1998  Geoffrey Noer  <noer@cygnus.com>
 | |
| 
 | |
| 	* uinfo.cc: define DEFAULT_UID/GID here
 | |
| 	* winsup.h: removed DEFAULT_UID/GID defs and unused
 | |
| 	set_console_title proto.  Did some major reorganizing,
 | |
| 	and a little reformatting, commenting.
 | |
| 
 | |
| Tue Feb  3 23:59:23 1998  Geoffrey Noer  <noer@cygnus.com>
 | |
| 
 | |
| 	patch from cgf@bbc.com (Chris Faylor):
 | |
| 	Replace u->self and this_procinfo () with new `myself' pointer
 | |
| 	wherever appropriate.  Also replace get_pid() calls with a
 | |
| 	simple ->pid reference.
 | |
| 
 | |
| Mon Feb  2 12:34:49 1998  Geoffrey Noer  <noer@cygnus.com>
 | |
| 
 | |
| 	patch from sos@prospect.com.ru (Sergey Okhapkin):
 | |
| 	* console.cc (FakeReadFile): limit bytes to read to 30000 due to
 | |
| 	Win NT 4.0 SP3 bug.  Kill foreground process group with SIGWINCH
 | |
| 	on console buffer size change if tty support enabled.
 | |
| 	* include/sys/termios.h: define more constants.
 | |
| 	* tty.cc (fhandler_pty_master::ioctl): kill foreground process
 | |
| 	group with SIGWINCH on window resizing.
 | |
| 
 | |
| Mon Feb  2 12:14:49 1998  Geoffrey Noer  <noer@cygnus.com>
 | |
| 
 | |
| 	patch from cgf@bbc.com (Chris Faylor):
 | |
| 	* dcrt0.cc (dll_crt0_1):  Initialize u->self here, early in a
 | |
| 	forked process so the correct pid is used in strace output and so
 | |
| 	signals do not end up being erroneously sent to the parent.
 | |
| 	* exceptions.cc:  Make a global variable static.  Some minor
 | |
| 	optimizations.
 | |
| 	(call_handler): Make sure that the signal mask is restored when
 | |
| 	sig_dispatch mutex is unavailable.
 | |
| 	Reorder asm statements to prevent clobbering of flags register by
 | |
| 	preceding ors or risk random inexplicable behavior when returning
 | |
| 	from a signal handler.
 | |
| 	* fork.cc (cygwin_fork_helper1): Put setjmp restore in child's
 | |
| 	pinfo.  Have the child figure out its pid earlier in the
 | |
| 	initialization process.  Don't print a "child failed" error if the
 | |
| 	child failed during initialization due to a CTRL-C.  This is still
 | |
| 	not quite right (see comment).
 | |
| 	* sigproc.cc (sig_send): Remove unlock/lock_pinfo or suffer
 | |
| 	consistent hangs in zsh.  Make {allow,block}_sig_dispatch globally
 | |
| 	available.
 | |
| 	(wait_sig): Fix problem where blocked signals would still be
 | |
| 	processed if queued.  Add debugging SIGNOQUEUE conditional to turn
 | |
| 	off signal queueing, making cygwin more like traditional UNIX.
 | |
| 	* sigproc.h:  Add {allow,block}_sig_dispatch functions.
 | |
| 
 | |
| Mon Jan 26 17:33:57 1998  Geoffrey Noer  <noer@cygnus.com>
 | |
| 
 | |
| 	* path.cc (mount_info::init): don't hardcode C: as the default
 | |
| 	slash mount.  Instead, use the drive letter that the OS is loaded
 | |
| 	on.
 | |
| 
 | |
| Mon Jan 26 13:33:57 1998  Geoffrey Noer  <noer@cygnus.com>
 | |
| 
 | |
| 	patch from cgf@bbc.com (Chris Faylor):
 | |
| 	* fork.cc (cygwin_fork_helper): Move setting PID_INITIALIZING
 | |
| 	process_state here to avoid erroneously setting it permanently
 | |
| 	via proc_register().
 | |
| 	* pinfo.cc (pinfo_init): Delay notifying "parent" when execing
 | |
| 	until this process is ready to receive signals or risk a race
 | |
| 	condition if exec parent calls sigproc_terminate prior to
 | |
| 	the child exec.
 | |
| 	* sigproc.cc (proc_subproc): Don't set PID_INITIALIZING here.
 | |
| 	It is too late in the process creation.
 | |
| 	(sig_send): Reset sigsuspend mutex prior to use to avoid a race.
 | |
| 	(wait_sig): Create sigsuspend mutex as an auto reset to attempt
 | |
| 	to avoid a race condition.  Notify parent that this process is
 | |
| 	ready if we were execed (code moved from pinfo_init).  Change
 | |
| 	PulseEvents to SetEvents to avoid races
 | |
| 	* spawn.cc (spawn_guts): Move setting PID_INITIALIZING
 | |
| 	process_state here to help avoid race.
 | |
| 
 | |
| Fri Jan 23 12:31:37 1998  Ian Lance Taylor  <ian@cygnus.com>
 | |
| 
 | |
| 	* malloc.cc (malloc_critical_section): New static variable.
 | |
| 	(malloc_init): New function.
 | |
| 	(__malloc_lock, __malloc_unlock): New functions.
 | |
| 	* winsup.h (malloc_init): Declare.
 | |
| 	* heap.cc (heap_init): Call malloc_init.
 | |
| 
 | |
| Thu Jan 22 18:46:40 1998  Ian Lance Taylor  <ian@cygnus.com>
 | |
| 
 | |
| 	* tty.h (class tty): Change slave_handles to int.
 | |
| 	* tty.cc (fhandler_tty_slave::open): Check for invalid tty
 | |
| 	handles.  If this is the first slave, set slave_handles to 2;
 | |
| 	otherwise, increment slave_handles.
 | |
| 	(fhandler_tty_slave::close): Only close the tty handles if the
 | |
| 	slave_handles field drops to 1.
 | |
| 	(fhandler_tty_slave::write): Add a debugging message if WriteFile
 | |
| 	fails.
 | |
| 	(fhandler_tty_slave::dup): Set ttynum of new fhandler.  Increment
 | |
| 	slave_handles if appropriate.
 | |
| 	(fhandler_pty_master::close): Only close the tty handles if the
 | |
| 	tty is no longer allocated.
 | |
| 
 | |
| 	* tty.h (class tty): Add handle_pid and slave_handles fields.
 | |
| 	* tty.cc (attach_tty): Call connect_tty even if use_tty is not
 | |
| 	set.
 | |
| 	(detach_tty): Don't check use_tty.
 | |
| 	(fhandler_tty_master::init): Initialize handle_pid and
 | |
| 	slave_handles of tty.
 | |
| 	(do_input): Treat \r as end of line character.
 | |
| 	(do_output): Only set output_done_event if it is not NULL.
 | |
| 	(fhandler_tty_slave::open): Don't worry if we can't open
 | |
| 	output_done_event.  Check slave_handles field of tty to decide
 | |
| 	from where to duplicate the handles.  Call detach_tty on error.
 | |
| 	If we are now the owner of the slave handles, mark the tty
 | |
| 	appropriately.
 | |
| 	(fhandler_tty_slave::close): Only close output_done_event if it is
 | |
| 	not NULL.  Check for errors from CloseHandle.  Close the tty
 | |
| 	handles if we own them.
 | |
| 	(fhandler_tty_slave::write): Only wait for output_done_event if it
 | |
| 	is not NULL.
 | |
| 	(fhandler_tty_slave::read): If nobody owns the tty, return EOF.
 | |
| 	(fhandler_tty_slave::dup): Attach the tty.  Don't duplicate
 | |
| 	output_done_event if it is NULL.  Detach the tty on error.
 | |
| 	(fhandler_pty_master::open): Initialize handle_pid and
 | |
| 	slave_handles of tty.  Don't create output_done_event.
 | |
| 	(fhandler_pty_master::close): Only close output_done_event if it
 | |
| 	is not NULL.  Check for errors from CloseHandle.  Only close the
 | |
| 	tty handles if we own them.
 | |
| 	(fhandler_pty_master::read): Only set output_done_event if it is
 | |
| 	not NULL.
 | |
| 	* hinfo.cc (de_linearize_fd_array): Don't set use_tty just because
 | |
| 	we find a tty to delinearize.
 | |
| 
 | |
| Wed Jan 21 21:58:27 1998  Geoffrey Noer  <noer@cygnus.com>
 | |
| 
 | |
| 	patch from cgf@bbc.com (Chris Faylor):
 | |
| 	* sigproc.cc: Changes in wait_sig/sig_send semaphore/event
 | |
| 	signaling to attempt to eliminate races.
 | |
| 
 | |
| Tue Jan 20 16:11:05 1998  Geoffrey Noer  <noer@cygnus.com>
 | |
| 
 | |
| 	Remove last remnants of the mixed case handling support.
 | |
| 	* path.cc (path_conv::path_conv): remove mixed_p init
 | |
| 	(mount_info::from_registry): don't check for fmixed
 | |
| 	(mount_info::to_registry): ditto
 | |
| 	(mount_item::getmntent): when setting ret.mnt_opts, only consider
 | |
| 	text vs binary flag
 | |
| 	(mount_item::init): remove init of mixed
 | |
| 	* path.h: remove mixed_p, mixed from path_conv class.  Remove
 | |
| 	unmixedcaseify proto.
 | |
| 	* include/sys/mount.h: comment out MOUNT_MIXED define, protect
 | |
| 	header against multiple inclusion
 | |
| 
 | |
| 	A little header file cleanup.  Mostly to protect headers against
 | |
| 	multiple inclusion.  Some aren't strictly speaking necessary but...
 | |
| 	* include/sys/cygwin.h: protect header against multiple inclusion
 | |
| 	* include/sys/smallprint.h: ditto, also add cplusplus wrapper
 | |
| 	* include/sys/strace.h: comment last endif
 | |
| 	* include/cygwin32/in.h: change _LINUX_IN_H protect defines
 | |
| 	to _CYGWIN32_IN_H
 | |
| 	* include/arpa/inet.h: protect header against multiple inclusion
 | |
| 	* include/asm/types.h: ditto
 | |
| 	* include/net/if.h: ditto
 | |
| 	* include/netinet/ip.h: ditto
 | |
| 	* include/netinet/ip_icmp.h: ditto
 | |
| 	* include/netinet/in.h: ditto, remove commented out real header
 | |
| 	file
 | |
| 	* include/fcntl.h: protect header against multiple inclusion
 | |
| 	* include/memory.h: ditto
 | |
| 	* include/mntent.h: ditto
 | |
| 	* include/strings.h: ditto
 | |
| 	* include/syslog.h: ditto
 | |
| 	* include/termio.h: ditto
 | |
| 
 | |
| Tue Jan 20 12:51:59 1998  Ian Lance Taylor  <ian@cygnus.com>
 | |
| 
 | |
| 	* strace.cc (strace_stderr): New static variable.
 | |
| 	(strace_init): Set strace_stderr.
 | |
| 	(system_printf): If not strace_stderr, use debug_printf to put the
 | |
| 	message in a trace file.
 | |
| 
 | |
| 	* fhandler.h (fhandler_pty_master): Add neednl_ field.
 | |
| 	* tty.h (RESTART_OUTPUT_EVENT): Change to be different from
 | |
| 	IOCTL_DONE_EVENT.
 | |
| 	* tty.cc (fhandler_tty_master::init): Initialize neednl_.
 | |
| 	(do_output): Handle a length of one by using neednl_ to record an
 | |
| 	expansion of \n to \r\n which doesn't fit.  Never expand \r to
 | |
| 	\r\n.  Correct order of \r\n.
 | |
| 	(fhandler_tty_slave::open): Improve error handling.  Use
 | |
| 	DUPLICATE_CLOSE_SOURCE to close the pipes in the master process.
 | |
| 	(fhandler_tty_slave::dup): Duplicate the handles, rather than
 | |
| 	calling fhandler_tty_slave::open.
 | |
| 	(fhandler_pty_master::open): Initialize neednl_.
 | |
| 	(fhandler_pty_master::read): Return EOF for ERROR_BROKEN_PIPE,
 | |
| 	rather than error.  Set errno correctly.
 | |
| 	* hinfo.cc (digits): New static function.
 | |
| 	(build_fhandler): Always accept /dev/ptmx and /dev/ttyDDD, even if
 | |
| 	use_tty is not set.  use_tty now only controls the interpretation
 | |
| 	of /dev/tty.
 | |
| 
 | |
| Mon Jan 19 14:49:45 1998  Geoffrey Noer  <noer@cygnus.com>
 | |
| 
 | |
| 	* sigproc.cc (sig_send): lock_pinfo_for_update during this
 | |
| 	function
 | |
| 
 | |
| Fri Jan 16 18:09:59 1998  Geoffrey Noer  <noer@cygnus.com>
 | |
| 
 | |
| 	* sigproc.cc (sigproc_init): if we can't create a signal
 | |
| 	thread or can't create sync_proc_subproc mutex, fail with
 | |
| 	an api_fatal call rather than just returning
 | |
| 
 | |
| Fri Jan 16 18:08:49 1998  Geoffrey Noer  <noer@cygnus.com>
 | |
| 
 | |
| 	patch from cgf@bbc.com (Chris Faylor):
 | |
| 	Changed signal handling to use one semaphore and one shared
 | |
| 	memory array which is manipulated via Interlocked*() functions.
 | |
| 	* exceptions.cc (lock_cs): Comment.  Report on error.
 | |
| 	(unlock_cs): Add debugging statement.
 | |
| 	(sig_dispatch_pending): Remove obsolete function.
 | |
| 	(set_process_mask): Adapt to new signal method.
 | |
| 	(call_handler): Clear wait()ing threads here while main thread is
 | |
| 	suspended to avoid timing screwups.  Avoid calling the handler if
 | |
| 	can't get dispatch mutex (code moved from sig_handle).  Return
 | |
| 	status of acquiring the sig_dispatch mutex.
 | |
| 	(sighandle): Adapt to new signal method.  Reorganize to *always*
 | |
| 	honor sig_dispatch mutex or suffer deadlock on fatal signals when
 | |
| 	someone else has the mutex and we're attempting to cleanup.
 | |
| 	(events_init): Reflect change in cygname() arguments.
 | |
| 	* fork.cc (stack_dummy): New function.  Returns address of
 | |
| 	argument to determine bounds for eventual stack copy.
 | |
| 	(cygwin_fork_helper1): Call subproc_init to start up subproc
 | |
| 	thread if it is not alreay started.  Ensure that signals are
 | |
| 	blocked while forked process is initializing.  Change method of
 | |
| 	calculation for lower stack bounds to slightly more foolproof
 | |
| 	method.  Preserve some global settings in forked process.
 | |
| 	* misc.cc (cygname): Remove an unused argument.
 | |
| 	* pinfo.cc (pinfo_list::allocate_pid): Add a useful debugging
 | |
| 	statement.
 | |
| 	* shared.cc (open_shared_file_map): Reflect change in cygname()
 | |
| 	arguments.
 | |
| 	* signal.cc (kill_pgrp): Avoid killing dead processes.  Don't
 | |
| 	kill processes in my pgrp if not also in my ctty.
 | |
| 	(sigaction): Adapt to new signal method.
 | |
| 	(sigpending): Adapt to new signal method.
 | |
| 	* sigproc.cc: Many changes to adapt to new signal method.  Also
 | |
| 	delay waits for thread initialization until the thread needs to be
 | |
| 	contacted.
 | |
| 	* sigproc.h: Ditto.
 | |
| 	* spawn.cc (spawn_guts): Fix potential off-by-one error(?) in
 | |
| 	transcribing the argument list and add paranoid code to detect
 | |
| 	future overruns.  Change priority to highest so that waiting
 | |
| 	process will clear out quickly.
 | |
| 	(_spawnve): Call subproc_init() to start up subproc thread if is
 | |
| 	not already started.
 | |
| 	* strace.cc (strace_printf): Increase size of internal buffer so
 | |
| 	that long argument lists printed from spawn_guts do not overrun it
 | |
| 	so easily.
 | |
| 	* wait.cc (wait4): Set status flag to -1 prior to exit.  This will
 | |
| 	cause previous wait that was interrupted by a signal which
 | |
| 	dispatched to another wait to return the correct error value.
 | |
| 	* winsup.h (pinfo): Add _sigtodo array for new signal method.
 | |
| 	Remove obsolete field.  Reflect change in cygname arguments.
 | |
| 
 | |
| Thu Jan 15 13:07:07 1998  Ian Lance Taylor  <ian@cygnus.com>
 | |
| 
 | |
| 	* syscalls.cc (mkdir): Don't permit the directory to be created if
 | |
| 	the parent directory is not writable.
 | |
| 
 | |
| 	* syscalls.cc (fchmod): Call chmod with the path name, rather than
 | |
| 	just returning zero.
 | |
| 
 | |
| 	* syscalls.cc (writable_directory): New static function.
 | |
| 	(_unlink): Don't permit the file to be removed if the directory is
 | |
| 	not writable.
 | |
| 	(rename): Don't permit the rename if either the source or
 | |
| 	destination directory is not writable.
 | |
| 
 | |
| 	* syscalls.cc (chown): Set username and groupname lengths to UNLEN
 | |
| 	+ 1, rather than 100.  If getpwuid fails, try to look up the real
 | |
| 	user name to see if it is the same.  Don't report an error if
 | |
| 	there is no security mapping.
 | |
| 
 | |
| Wed Jan 14 15:34:20 1998  Ian Lance Taylor  <ian@cygnus.com>
 | |
| 
 | |
| 	* syscalls.cc (setegid): New function which just returns ENOSYS.
 | |
| 	(chroot): Likewise.
 | |
| 	* cygwin.din: Export setegid, _setegid, chroot, and _chroot.
 | |
| 
 | |
| 	* syscalls.cc (setmode): Rename from _setmode.  Change to return
 | |
| 	the old mode.  Remove old setmode function.
 | |
| 	* cygwin.din: Make _setmode an alias for setmode.
 | |
| 
 | |
| Wed Jan 14 14:46:00 1998  Geoffrey Noer  <noer@cygnus.com>
 | |
| 
 | |
| 	* Makefile.in: don't strip cygwin.dll by default
 | |
| 	* winsup.h: minor reformatting, removed/reworded some comments
 | |
| 
 | |
| Mon Jan 12 13:53:03 1998  Geoffrey Noer  <noer@cygnus.com>
 | |
| 
 | |
| 	patch from cgf@bbc.com (Chris Faylor):
 | |
| 	Speed up cygwin pid calculation by staying in the range
 | |
| 	1000 through (1000 + PSIZE - 1).
 | |
| 	* pinfo.cc (pinfo_list::init): Change to reflect new pid
 | |
| 	calculation method.
 | |
| 	(pinfo_list::operator []): Ditto.
 | |
| 	(pinfo_list::allocate_pid): Ditto.
 | |
| 	* winsup.h (pinfo): Move pid and ppid into non-zeroed region since
 | |
| 	they are always set by allocate_pid.
 | |
| 	(pinfo_list): Change pid_base to next_pid_index to reflect new pid
 | |
| 	calculation method.
 | |
| 	(PBASE): New constant for new pid calcuation method.
 | |
| 
 | |
| Sat Jan 10 12:06:38 1998  Geoffrey Noer  <noer@cygnus.com>
 | |
| 
 | |
| 	* syscalls.cc (process_deletion_queue): remove wrapper function
 | |
| 	(close_all_files): call s->delqueue.process_queue instead of
 | |
| 	going through wrapper.
 | |
| 	* fhandler.cc (fhandler_base::close): call
 | |
| 	s->delqueue.process_queue instead of using above wrapper.
 | |
| 	* winsup.h: remove process_deletion_queue proto
 | |
| 	* delqueue.h: up MAX_DELQUEUES_PENDING to 100 for now.  Rename
 | |
| 	v to dqueue for clarity.
 | |
| 	* delqueue.cc: v renamed to dqueue throughout.  Add FIXME
 | |
| 	describing why this whole delqueue system needs rewriting.
 | |
| 
 | |
| Fri Jan  9 13:18:44 1998  Geoffrey Noer  <noer@cygnus.com>
 | |
| 
 | |
| 	Remove some historical baggage:
 | |
| 	* syscalls.cc (cygwin_set_attributes): remove commented-out code,
 | |
| 	add FIXME since this function should go away next time an
 | |
| 	incompatible change to cygwin.din is made.  Stop including
 | |
| 	include/sys/cygwin.h.
 | |
| 	* include/sys/cygwin.h: remove cygwin_set_attributes proto.
 | |
| 	Remove CYGWIN_FMODE_ALL_BINARY define.
 | |
| 	* hinfo (hinfo_vec::init_std_file_from_handle): remove old
 | |
| 	commented-out code
 | |
| 	* path.cc (unmixedcaseify): delete commented-out function
 | |
| 	(mixedcaseify): ditto
 | |
| 	* strerror.cc (strerror): delete commented-out code section
 | |
| 
 | |
| Tue Jan  6 18:51:40 1998  Geoffrey Noer  <noer@cygnus.com>
 | |
| 
 | |
| 	patch from cgf@bbc.com (Chris Faylor):
 | |
| 	Conform to POSIX method for sending SIGHUP to stopped processes.
 | |
| 	* dcrt0.cc (do_exit): Use new kill_pgrp function to kill orphaned
 | |
| 	children on group leader exit iff the children are stopped (per
 | |
| 	POSIX).
 | |
| 	* signal.cc (kill_worker): Negative signal now means to send
 | |
| 	a SIGCONT after the signal, to wake up the target process.
 | |
| 	(_kill): Break out pgrp handling into separate function.
 | |
| 	(kill_pgrp): New function pulled from _kill to send signals
 | |
| 	to processes in a given pgrp.
 | |
| 
 | |
| Tue Jan  6 14:37:43 1998  Geoffrey Noer  <noer@cygnus.com>
 | |
| 
 | |
| 	patch from cgf@bbc.com (Chris Faylor):
 | |
| 	* fhandler.cc (fhandler_base::open): include
 | |
| 	FILE_FLAG_BACKUP_SEMANTICS in file_attributes when file is
 | |
| 	a directory.  Allows opening of directory as a file.  Allows
 | |
| 	use of handle to perform some operations on both directories and
 | |
| 	files.
 | |
| 	(fhandler_base::fstat): Loop when attempting to get volume serial
 | |
| 	number.  Works around an apparent Windows NT 3.51 bug.
 | |
| 	* times.cc (utimes): use FILE_FLAG_BACKUP_SEMANTICS flag
 | |
| 	to allow accessing directory times (may only work under NT;
 | |
| 	until now it didn't work under either OS).
 | |
| 	* winsup.h: Add O_DIROPEN constant.
 | |
| 
 | |
| Mon Jan  5 19:18:01 1998  Geoffrey Noer  <noer@cygnus.com>
 | |
| 
 | |
| 	* Makefile.in: make winsup.h depend on winsup.h in accordance
 | |
| 	with below
 | |
| 
 | |
| 	patch from cgf@bbc.com (Chris Faylor):
 | |
| 	* {*.cc, *.h}: Remove include files already present in winsup.h.
 | |
| 	Change empty function parameter	lists to (void) where appropriate.
 | |
| 
 | |
| 	* fork.cc: Clean up include files.  Minor change to CreateProcess
 | |
| 	parameter list.
 | |
| 	* signal.cc: Remove ifdef'ed stuff.
 | |
| 	* smallprint.c: Add a necessary include file.
 | |
| 	* winsup.h: Add a common include file.  Add a function declaration
 | |
| 	for kill_pgrp.
 | |
| 
 | |
| Mon Jan  5 18:30:37 1998  Geoffrey Noer  <noer@cygnus.com>
 | |
| 
 | |
| 	Fix spoofing of directory inodes.
 | |
| 	* syscalls.cc (hash_path_name): instead of initializing the
 | |
| 	hash to zero, take the value of the initial hash as a new
 | |
| 	argument.
 | |
| 	(_stat_worker): fix up hash_path_name reference in light of above
 | |
| 	* dirsearch.cc (opendir): initialize dir->__d_dirhash to the
 | |
| 	hash of the full directory name so readdir can make use of it.
 | |
| 	(readdir): compute d_ino by combining the directory hash
 | |
| 	calculated by opendir with the hash of the filename.
 | |
| 	* fhandler.cc: fix up hash_path_name reference in light of above
 | |
| 
 | |
| 	* winsup.h: remove unnecessary protos for getkey, kbhit.  Adjust
 | |
| 	hash_path_name proto.
 |