www.delorie.com/archives/browse.cgi   search  
Mail Archives: cygwin-developers/1998/12/23/12:05:36

From: cgf AT cygnus DOT com (Christopher Faylor)
Subject: New snapshot, binary available
23 Dec 1998 12:05:36 -0800 :
Message-ID: <19981223145156.A18932.cygnus.cygwin32.developers@cygnus.com>
Mime-Version: 1.0
To: cygwin32-developers AT cygnus DOT com

I've put up a new winsup snapshot in Geoff's winsup-snapshot directory:

ftp://ftp.cygnus.com/pub/noer/winsup-snapshot/

There's also a cygwin1.dll.bz2 there which is based on this snapshot.

The noticeable differences are:

1) Much reworking of serial handling.

2) gettimeofday works again.

3) configure --enable-threadsafe now will produce a threadsafe version
   of cygwin.  Thanks to Data Distilleries for providing the bulk of
   the work for this.

A caveat for the serial rehandling stuff:  There was a problem in
include/sys/termios.h where some constants for c_cflags overlapped
each other.  Rectifying this required renumbering some of the constants
and changing the sizes of some of the fields in termios.

Old programs should still work, but to avail yourselves of this fix
you'll need to recompile using the new include/sys/termios.h found in
the winsup snapshot.

The ChangeLog is below.

-Chris Faylor
-Cygnus Solutions

P.S. Best wishes to everyone on this holiday season!

Wed Dec 23 11:45:33 1998    <dj AT cygnus DOT 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 AT cygnus DOT 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 AT cygnus DOT 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 AT cygnus DOT 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 AT cygnus DOT 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 AT cygnus DOT 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 AT cygnus DOT com>

	* pthread.cc: fix copyright header.
	* shared.h: ditto.
	
Fri Dec 18 19:21:30 1998  Geoffrey Noer  <noer AT cygnus DOT com>

	patch from Corinna Vinschen <corinna DOT vinschen AT cityweb DOT 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: Up API_MINOR.

Fri Dec 18 16:44:07 1998  Geoffrey Noer  <noer AT cygnus DOT 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 AT cygnus DOT 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.  Bumped API_MINOR.
	* 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 AT cygnus DOT com>

	* Makefile.in: Cleanup pthread usage.

Fri Dec 18 14:35:59 1998  Christopher Faylor <cgf AT cygnus DOT com>

	* Makefile.in: Remove obsolete header dependency for
	thread-safe build.

Fri Dec 18 14:16:04 1998  Christopher Faylor <cgf AT cygnus DOT 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 AT cygnus DOT com>

	* cygwin.din: remove pthread_getsequence_np, _reent_clib

Thu Dec 17 16:48:15 1998  Geoffrey Noer  <noer AT cygnus DOT com>

	* include/cygwin/version.h: correct two typos in comments

Thu Dec 17 19:11:31 1998  Christopher Faylor <cgf AT cygnus DOT com>

	patch from Corinna Vinschen <corinna DOT vinschen AT cityweb DOT de>:
	* include/Windows32/Defines.h: Add values for using Windows
	function `DeviceIoControl()'.

Thu Dec 17 18:00:34 1998  Christopher Faylor <cgf AT cygnus DOT 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 AT cygnus DOT 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 AT cygnus DOT com>

	Merge in thread-safe branch changes.

Wed Dec 16 22:54:16 1998  Christopher Faylor <cgf AT cygnus DOT com>

	* pthread.cc: Include winsup.h.

Wed Dec 16 22:54:16 1998  Christopher Faylor <cgf AT cygnus DOT com>

	* thread.cc: Reformat.
	* pthread.cc: New file.
	* cygwin.din: Add pthread interface functions

Wed Dec 16 22:54:16 1998  Christopher Faylor <cgf AT cygnus DOT 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 AT cygnus DOT 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 AT cygnus DOT 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 AT cygnus DOT com>

	patch from Marco Fuykschot (marco AT ddi DOT nl)
	* Throughout sources add locking control for preliminary
	thread-safe cygwin operation.

Wed Dec 16 22:54:16 1998  Christopher Faylor <cgf AT cygnus DOT 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 AT cygnus DOT com>

	* include/shellapi.h: fix typo in DragQueryPoint proto.

Mon Dec 14 12:37:43 1998  Geoffrey Noer  <noer AT cygnus DOT 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 DOT vinschen AT cityweb DOT 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.

- Raw text -


  webmaster     delorie software   privacy  
  Copyright © 2019   by DJ Delorie     Updated Jul 2019