From: noer AT cygnus DOT com (Geoffrey Noer) Subject: New winsup snapshot 4/22/98 22 Apr 1998 16:25:48 -0700 Message-ID: <199804222312.QAA14123.cygnus.cygwin32.developers@skaro.cygnus.com> Content-Type: text To: cygwin32-developers AT cygnus DOT com Cc: noer AT cygnus DOT com (Geoffrey Noer) I've put a new winsup snapshot in the usual place. This one includes more code reorganization changes as well as bug fixes for the readlink problem affecting RCS and some other changes. I'm also pleased to announce that Christopher Faylor has joined Cygnus Solutions and will be working on Cygwin32, among other Win32-related endeavors. ChangeLog entries since the last snapshot follow. -- Geoffrey Noer noer AT cygnus DOT com --------------------------------> snip <----------------------------- Wed Apr 22 15:43:56 1998 Geoffrey Noer * 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 EDT 1998 Christopher Faylor * select.cc (fd_set_map::remove_pair_by_handle): minor optimization * strace.cc (strace_printf): change format for consistency patch from sos AT prospect DOT com DOT 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 EDT 1998 Christopher Faylor * 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 EDT 1998 Christopher Faylor * 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 EDT 1998 Christopher Faylor * 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 * 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 * 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 * 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 AT lava DOT 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 * 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 * 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 * ntea.cc (NTReadEARaw): mark as static, don't check allow_ntea since this is only accessed by functions that have already checked it.