NEW: cygipc-2.01-2 [Requires cygwin-1.5.3+]

Charles Wilson
Wed Sep 3 07:34:00 GMT 2003

Yes, it's finally happened.  I've made CygIPC into an official package.

          This version is SUBSTANTIALLY different from
          the 1.14 version distributed from


CygIPC provides Inter-Process Communications services for cygwin, using 
a daemon and library for client applications.

This release is built against the cygwin-1.5.x kernel; it will not work 
with 1.3.22.


Some notable differences between THIS release and the older 1.14 version:

   MOST IMPORTANTLY, it is NOT compatible with 1.14 AT ALL.

Projects compiled against libcygipc(1.14) will NOT work with the daemon 
from 2.01, nor vice versa.  HOWEVER, the two daemons CAN both be 
installed -- and run -- on the same machine simultaneously.  Updating an 
existing application to use the new CygIPC distribution should be as 
simple as recompiling the application, linking against the new library, 
and ensuring that the new daemon is running.

If you already have ipc-daemon.exe installed as a service on your 
machine, you will STILL need to install ipc-daemon2.exe as a service as 
well.  At a later date, you might consider uninstalling the older daemon.

You might also consider upgrading cygutils to version 1.2.1 or newer; 
some of the utility programs that were previously distributed with 
cygipc-1.14 are NOT distributed in this new package; they have been 
moved over to cygutils.

* Compiled against cygwin-1.5.2

* documentation moved to /usr/share/*

* installs into /usr/* instead of /usr/local/*

* Built library as DLL 'cygcygipc-2.dll'; provide import and
   static libraries

* Link daemon dynamically

* daemon is now called "ipc-daemon2.exe".  It uses a different
   namespace for its /tmp files, and a different namespace for its
   global objects.  (therefore, it can coexist with the older daemon;
   both can be installed on your system together, until the older one
   is no longer needed for anything)

* Use 64 bit key_t

* Use the ftok() exported by cygwin-1.5.x; don't provide private

* remove ipck, ipcs, and ipcrm from the distro (now provided by

* remove semtool, shmtool, and msgtool (have been in cygutils for a

* Much improvement in the shm code (Michael Haubenwallne)
     a. shm handles forks
     b. shm works better with multiprocess (the whole point, after

* General bugfixes (Joe Buehler, MH)

* semctl(SETALL) now conforms to the standard (MH)

* semctl(GETALL) implemented (MH)

* semaphores now persistent until explicitly removed, or system
   reboot/ipc-daemon shutdown. (JB)

* Automatic removal of /tmp/MultiFileXXX files on [normal] daemon
   shutdown (MH)


This is a lot of changes; I expect growing pains.  But, it's a .01
release, so what did you expect?  However, it's been in test, and used 
by test-python users for almost a month, so...

Oh, and one other thing: I STILL expect that eventually, cygipc will
become obsolete, and that cygserver will replace it.  I am fully
committed to helping make cygipc obsolete...

Charles Wilson
cygipc volunteer maintainer for cygwin

To update your installation, click on the "Install Cygwin now" link on
the web page.  This downloads setup.exe to your
system.  Then, run setup and answer all of the questions.


If you want to unsubscribe from the cygwin-announce mailing list, look
at the "List-Unsubscribe: " tag in the email header of this message.
Send email to the address specified there.  It will be in the format:

If you need more information on unsubscribing, start reading here:

Please read *all* of the information on unsubscribing that is available
starting at the above URL.

More information about the Cygwin-announce mailing list