On 2/6/07, mike caplin <[EMAIL PROTECTED]> wrote:

I am trying to build v0.88.7 on Tru64 5.1B in order to upgrade from an
older version however freshclam fails to compile with the following
error:

<snip>



Hi Mike,
 Sorry for the delay in looking at this. It looks to me like adding
-D_POSIX_PII_SOCKET to the CFLAGS for ClamAV will fix this on Tru64 UNIX.
The code seems to be always assuming that the length argument is of type
"socklen_t". I'm sure that is true for current versions of Linux but not
necessarily always true (as seen here) for the commercial UNIXs that have to
support legacy APIs. For those, various POSIX compatibility macros may need
to be specified to get the api with the expected argument types.

Without that macro definition, the default prototype on Tru64 for the
"connect()" api takes a "size_t" instead of a "socklen_t" . Both are
typedef'ed to "unsigned long" (64 bit unsigned integer). Less picky
compilers would probably just throw a warning.

Mike, for your specific situation, setting

export DEC_CC="-D_POSIX_PII_SOCKET -pthread -verbose"

should fix it since you are using the DEC/Compaq compiler. Long term, it
should be fixed in the configure script to properly define it for Tru64.

Note, the above pertains to Tru64 UNIX V5.1A and later. I don't have access
to anything older at the moment to check the situation on the older releases
(though in all probability, it is probably true as far back as at least
V4.0D).

Hope this helps....
Jeff D
_______________________________________________
Help us build a comprehensive ClamAV guide: visit http://wiki.clamav.net
http://lurker.clamav.net/list/clamav-users.html

Reply via email to