Mail Archives: cygwin-developers/1998/10/20/17:23:02

From: noer AT cygnus DOT com (Geoffrey Noer)
Subject: Winsup snapshot 981020
20 Oct 1998 17:23:02 -0700 :
Message-ID: <>
Mime-Version: 1.0
To: cygwin32-developers AT cygnus DOT com

Here's another winsup snapshot.

I think we're getting ever so close now to b20 state.  There are still
a few bugs that need investigating (e.g. control-C in bash in Win 98
results in a several-second hang).  This snapshot fixes the skipping
every other shell script read command problem, the sed problem during
configures bug, and some other stuff.  Also, mingw is now
built/installed by default and the latest patches have been applied to
the mingw headers.  Finally, updated include/Windows32 headers are

Most importantly though, this snapshot introduces the new Cygwin
versioning system.  This will hopefully eliminate or greatly reduce
Cygwin DLL conflicts as we put out new versions of Cygwin in the

Here's a brief summary of the new Cygwin versions:

    version (currently 19.6).
    * CYGWIN_VERSION_MOUNT_REGISTRY: version associated with registry
    mount table format. (currently 1).
    non-backward-compatible interface changes.  (currently 0.0).
    * CYGWIN_VERSION_SHARED_DATA for tracking non-backward-compatible
    changes to the shared memory areas.  (currently 1).

Although the comments at the top of the file need updating, if you're
curious, take a look at include/cygwin32/version.h.

You will also note that the b20 Cygwin DLL will be named
"cygwin1.dll".  This will only be incremented when incompatible
changes to the API or shared memory areas happen.  Finally some
additional information such as build date will be included in the DLL
to help in debugging but which are not actively checked by anything.

Finally, note that we will probably change the way the mount table
looks in b20, removing that stupid "b15.0" version and putting the
mounts under:

       Cygnus Solutions/Cygwin/mounts/<mount_registry_version>/<here>

The installer will hopefully be capable of moving entries from the old
location to the new one for people.  Note that the mount change isn't
in this snapshot.

As usual, feedback on any of this is welcomed.

ChangeLog entries since the last snapshot follow.

Geoffrey Noer
noer AT cygnus DOT com

----------------------------> snip <-------------------------------

Mon Oct 19 23:45:24 1998  Geoffrey Noer  <noer AT cygnus DOT com>> 

        * include/windows.h: remove Objective-C BOOL ifdef, now taken
        care of within the include/Windows32 header files.
        * 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 AT xraylith DOT wisc DOT edu>, Corinna Vinschen
        <corinna DOT vinschen AT cityweb DOT de>, and me.
        * include/Windows32/CommonFunctions.h: new file, contents from
        * include/Windows32/*.h: Misc updates.

Mon Oct 19 20:26:15 1998  Christopher Faylor <cgf AT cygnus DOT com>

        * Throughout, avoid calling *_printf while lock
        is active.  Previous lock count was not thread-safe.
        * (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 AT cygnus DOT com>

        * Use more portable constructs to allow running
        this with /bin/sh, bash, and ksh.

Mon Oct 19 11:19:58 1998  Christopher Faylor <cgf AT cygnus DOT com>

        * (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 AT cygnus DOT com>

        * Avoid newer GNU make construction when building

Mon Oct 19 00:09:06 1998  Geoffrey Noer  <noer AT cygnus DOT com>

        * invoke with $(SHELL)

Sun Oct 18 15:19:17 1998  Christopher Faylor <cgf AT cygnus DOT com>

        * (set_name): Accept unit argument for generating
        (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::fhandler_serial): Accept
        unit argument for generating win32_name.
        * (hinfo::build_fhandler): Pass unit argument to constructor
        where apropriate.
        * (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 AT cygnus DOT com>

        * (globify): Fix problem with argument corruption
        due to use of pointer freed by realloc.

Sat Oct 17 00:10:53 1998  Christopher Faylor <cgf AT cygnus DOT com>

        Change NOT_OPEN_FD to dtable.not_open throughout.
        * Change .dll name to cygwin1.dll.  Increment
        the '1' when there are API/shared memory changes.  Make file every time .dll is linked.  Remove datestamp
        * New file.  Creates
        * cygwin.din: Export setdtablesize.
        * 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.
        * (regopt): Use new reg_key class constructor
        * (getdomainname): Ditto.
        * (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.
        * (cygwin32_internal): Export version info strings.
        * external.h: Add CW_GETVERSIONINFO.
        * (fhandler_base::write): Eliminate use of MIN macro.
        * (set_dllname): Obsolete function.  Handled in
        (dll_entry): Remove reference to set_dllname.
        * (this_proc): Renamed from cygwin_statu.
        (cygwin_crt0_common): Record api version in this_proc.
        * (recreate_mmaps_after_fork): No need for this to be
        a "C" function.
        * (close_all_files): Ditto.
        * (lock_pinfo_for_update): Eliminate a compiler warning.
        * Eliminate reg_session class. Augment reg_key to handle
        functionality of reg_session.
        * registry.h: Ditto.
        * (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
        * smallprint.c (__small_vsprintf): Accept %P as a format specifier.
        Signifies the program name.
        * (spawn_guts): Quote *all* of the stuff the dcrt0.c considers
        * (tty::inuse_event_exists): Remove debugging printf.  It results
        in too much output to strace log.
        * Add a needed include.
        * (uname): Use new cygwin version structure to fill in utsname
        * 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 AT cygnus DOT com>

        * enable building mingw subdir by default

Thu Oct 15 12:01:08 1998  Christopher Faylor <cgf AT cygnus DOT com>

        * (spawn_guts): Set all security attributes
        for CreateProcess so that sexec will work properly.

Thu Oct 15 08:49:12 1998  Christopher Faylor <cgf AT cygnus DOT com>

        * (hinfo::dup2): Avoid a null pointer dereference
        in a debugging printf.

Wed Oct 14 18:06:51 1998  Geoffrey Noer <noer AT cygnus DOT com>

        patch from Corinna Vinschen <corinna DOT vinschen AT cityweb DOT de>:
        * (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 AT cygnus DOT com>

        * (fcntl): According to the "Single UNIX Specification",
        F_DUPFD should *not* close its argument.  Revert to previous
        * (dup2): Guard against closing target fd too early.
        * Always initialize myself to a dummy value so that
        myself != NULL checks are avoided.
        * include/sys/strace.h (strace): Remove NULL check for myself.
        * (api_fatal): Ditto.
        * (handle_exceptions): Ditto.
        * (sigprocmask): Ditto.
        (_raise): Ditto.
        * (get_strace_mutex): Ditto.

- Raw text -

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