Sendmail/bind/db port help needed

Mumit Khan khan@NanoTech.Wisc.EDU
Mon May 15 13:39:00 GMT 2000

I'm trying to resurrect my attempts at getting sendmail-8.10.x to work 
reliably on Cygwin (I started out with Sergey's port to older version of
sendmail), and running into some interesting problems.

The codebase includes the following: bind 8.2.2-p5 (quite reliable as 
far as I can tell, at least for the client side), db 3.0.55 (builds,
but don't know how well), and sendmail 8.10.1.

The basic set of problems include the following:

- permission issues: NTSEC can probably work, but there're still some
  issues there. We can always turn off some of the security features
  for now, and so we can table this issue for now.
- locking issues: This is what's been killing the port. I'm using 
  Berkeley db-3.0.55 (SleepyCat version), slighly tweaked to build
  under Cygwin. Can't use GDBM with Sendmail.

  Here's the basic scenario: Sendmail (exclusive) locks the database 
  file, and then calls the dbm routines to open the database. The
  dbm routine opens the database (new fd), then fail trying to read 
  from the file (which should work, since it's the same process).
  The error code is somewhat misleading, but essentially it's a 
  lock violation (or whatever win32 error 33 is, which maps to EACCESS
  in Cygwin).

Does anyone here know enough about Berkeley DB internals and know about
locking to lend a hand?

Note that this is on NT -- on Win9x, Cygwin has to use LockFile instead
of LockFileEx, and I don't know how that's going to play out yet.

Of course, if I stub the locking code, I can use sendmail just fine
(in sending mode, receive mode has some problems still), but that's
just waiting for disaster.


More information about the Cygwin-apps mailing list