At 04:01 PM 3/26/2003, Andre Schild wrote: >But currently we are at the stage that the SSLMutex passes a NULL >filename in for the mutexname and assumes the apr will generate >"something". > >server/mpm/winnt/mpm_winnt.c however does pass in a NULL filename >and wishes to get NULL-filename mutex (ie. a private mutex). >So a autogenerated filename from apr will probably break this >behaviour.
Right - a "PRIVATE" mutex has no name, it's an unnamed object. The problem (to I'm addressing with Apache 2.2 Winnt MPM) is that Win32 needs a way to pass handles to worker processes. The very same discussion on this list about inherited pipes and files on win32 applies to these mutexes. Once the handle is inherited, we are fine. Right now, we are doing several odd things in the mutex setup that should be fixed. But the apr default mutex type is unnamed. We need to expose that Win32 can have file-based mutexes (a white lie- in that they aren't actually backed by a file but a kernel object.) I'm working up several small corrections and Jim is working on the bigger issues (we seem to create all mutexes with the older APR_MUTEX_DEFAULT flag instead of the explicit nMutexMech flag we don't). We are also making assumptions that we want some mutex if we don't set SSLMutex, and it's a good question what we want to do. My guess is that we want unset mutexes to be the same as no mutex, IMHO. Bill
