Hello. My team uses Citrix MetaFrame on Windows NT Server
4.0, Terminal Server Edition, to support multi-user concurrent
development on a single computer (gee, what a concept). I
wanted each developer to be able to run their own postmaster
to prevent interference from others. However, when a second
person ran their ipc-daemon and a postmaster, the postmaster
would bomb with ENOMEM on the shmget() call.
I was able to trace this to the cygipc library and ipc-daemon
utilizing fixed files in /tmp. That is, "/tmp" is hardcoded
in several places in the ipc-daemon and the object files that
make up libcygipc.a. When many users try to use the exact same
file in /tmp, the first one wins and subsequent users bomb. I
then hacked the ipc code to allow adjustment of the temporary
directory based on an environment variable.
Does this solution make sense? Anyone else run in a Citrix or
NT Terminal Server environment? I'm wondering if there are any
more land mines waiting to be stepped on...
======================================================================
Mirga Jazbutis VARCOM Corporation
mjazbutis@varcom.com http://www.varcom.com
Phone: 703-591-2805 x115 3251 Old Lee Highway, Suite 407
Fax: 703-591-2807 Fairfax, Virginia 22030
======================================================================