Package: radiusd-livingston
Severity: important

../radiusd.c:690: warning: dereferencing type-punned pointer will break 
strict-aliasing rules
../acct.c:124: warning: dereferencing type-punned pointer will break 
strict-aliasing rules
../proxy.c:160: warning: dereferencing type-punned pointer will break 
strict-aliasing rules
../util.c:689: warning: dereferencing type-punned pointer will break 
strict-aliasing rules

The problem is caused by:

 size_t a;

 a = sizeof(x);
 recvfrom(...., (socklen_t *) &a);

On a 64-bit system, size_t will probably be uint64 (the native word 
length), whereas socklen_t is always uint32. On a big-endian 64-bit 
system this is a bug.

A fix would be to change the code to:

 socklen_t a;

 a = (socklen_t) sizeof(x);
 recvfrom(...., &a);



-- 
To UNSUBSCRIBE, email to [EMAIL PROTECTED]
with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]

Reply via email to