{
int sock = ::socket(PF_INET, SOCK_RAW, protocol);
if (sock < 0)
- throw SystemException();
+ SENF_THROW_SYSTEM_EXCEPTION("");
fd(sock);
}
{
int sock = ::socket(PF_INET6,SOCK_RAW,protocol);
if (sock < 0)
- throw SystemException();
+ SENF_THROW_SYSTEM_EXCEPTION("");
fd(sock);
}
const
{
init_client(protocol);
- clientHandle().connect(address);
+ if(address.boolean_test()){
+ //only connect if socket is not [::]:0, this results in an irreversible binding to the lo interface (linux 2.6.15)
+ clientHandle().connect(address);
+ }
}
///////////////////////////////cc.e////////////////////////////////////////