This is the mail archive of the cygwin-apps@sourceware.cygnus.com mailing list for the Cygwin project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]

Sendmail/bind/db port help needed



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.

Regards,
Mumit




Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]