When compiling ClamAV (or any application) to be multi-threaded on
Solaris, it's important to use "-D_REENTRANT" if the source depends on any
(well only certain ones, but just to be safe, "any" is fine) of the stock
Solaris header files. I noticed that a few of the ClamAV source files do
define "_REENTRANT", but clamd seems to be lacking the definition in
general. The tricky part is that you won't get compiler errors or
warnings if you don't define "_REENTRANT", but multi-threaded programs
will likely crash for seemingly no reason if you don't define it. One
prime example of the difference is how "errno" is implemented differently
for a multi-threaded program - see /usr/include/errno.h on Solaris.
If nothing else, food for thought...
Cheers,
Ed
Ed Phillips <[EMAIL PROTECTED]> University of Delaware (302) 831-6082
Systems Programmer III, Network and Systems Services
-------------------------------------------------------
This SF.net email is sponsored by: SF.net Giveback Program.
Does SourceForge.net help you be more productive? Does it
help you create better code? SHARE THE LOVE, and help us help
YOU! Click Here: http://sourceforge.net/donate/
_______________________________________________
Clamav-users mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/clamav-users