On Sat, 23 Aug 2003 20:04:34 -0400
Mark Mielke <[EMAIL PROTECTED]> wrote:
> > > What about the following pseudo-code at startup of clamd (instead
> > > of failing):
> > > if (file exists(UNIX_SOCKET)) {
> > > if (connect(UNIX_SOCKET) != ERROR) {
> > > die ("Socket already exists");
> > > }
> > > warn ("Socket already exists but is not connected - unclean
> > > shutdown?"); unlink (UNIX_SOCKET);
> > > }
> > OK, but this will be an option (something like FixSocket or so) in
> > clamav.conf.
>
> I believe the proper option is to use the properties of bind() as they
> were intended to be used. bind() should only succeed if no other file
> descriptors in the system are bound to the named UNIX socket.
clamd works in this way (see localserver.c).
> Use open(O_CREAT) to create the file, bind() to try to get exclusive
> access to it, and listen() to begin accepting connections.
There's no need for open(), bind() creates the socket file itself.
Best regards,
Tomasz Kojm
--
oo ..... [EMAIL PROTECTED]
(\/)\......... http://www.konarski.edu.pl/~zolw
\..........._ I nie zapomnij kliknac w brzuszek...
//\ /\\ <- C. Amboinensis www.pajacyk.pl
-------------------------------------------------------
This SF.net email is sponsored by: VM Ware
With VMware you can run multiple operating systems on a single machine.
WITHOUT REBOOTING! Mix Linux / Windows / Novell virtual machines
at the same time. Free trial click here:http://www.vmware.com/wl/offer/358/0
_______________________________________________
Clamav-users mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/clamav-users