incorrect sizeof() in strlcpy only copies first 4 or 8 bytes
do not assume sa_family_t is u16

Make some linux-specific sa_family_t checks conditional so we don't
check truncated values on other platforms, e.g. BSD/OS X.

Remove some unused variables.