SO_REUSEPORT may not exist in running kernel

When userspace defines SO_REUSEPORT we will attempt to enable socket
port number reuse.  However if the running kernel does not support
this call it will fail preventing daemon startup.  If this call is
present but fails ENOPROTOOPT then we know that actually the kernel
does not support it and we should continue as if we did not have the
call at all.

References:
https://bugs.launchpad.net/bugs/1228204
http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=732009