X-Git-Url: http://g0dil.de/git?a=blobdiff_plain;f=Socket%2FProtocols%2FBSDSocketProtocol.cc;h=543f119a2e6a3baea24e9c1518b7896dac972c36;hb=1ad3873b372da6187b1fbc645bf276287d2efb54;hp=55b9c8826b7b87e44dd8f7b59469aceda39c1268;hpb=2c4c9deecc7491fbfc916aeb41074dcb76e8a2c2;p=senf.git diff --git a/Socket/Protocols/BSDSocketProtocol.cc b/Socket/Protocols/BSDSocketProtocol.cc index 55b9c88..543f119 100644 --- a/Socket/Protocols/BSDSocketProtocol.cc +++ b/Socket/Protocols/BSDSocketProtocol.cc @@ -30,7 +30,7 @@ #include #include #include -#include "Socket/SocketHandle.hh" +#include "../../Socket/SocketHandle.hh" //#include "BSDSocketProtocol.mpp" #define prefix_ @@ -42,8 +42,8 @@ prefix_ std::pair senf::BSDSocketProtocol::linger() struct linger ling; socklen_t len = sizeof(ling); ::memset(&ling,sizeof(ling),0); - if (::getsockopt(body().fd(),SOL_SOCKET,SO_LINGER,&ling,&len) < 0) - throw SystemException(errno); + if (::getsockopt(fd(),SOL_SOCKET,SO_LINGER,&ling,&len) < 0) + throwErrno(); return std::make_pair(ling.l_onoff, ling.l_linger); } @@ -53,16 +53,16 @@ prefix_ void senf::BSDSocketProtocol::linger(bool enable, unsigned timeout) struct linger ling; ling.l_onoff = enable; ling.l_linger = timeout; - if (::setsockopt(body().fd(),SOL_SOCKET,SO_LINGER,&ling,sizeof(ling)) < 0) - throw SystemException(errno); + if (::setsockopt(fd(),SOL_SOCKET,SO_LINGER,&ling,sizeof(ling)) < 0) + throwErrno(); } prefix_ struct timeval senf::BSDSocketProtocol::timestamp() const { struct timeval tv; - if (::ioctl(body().fd(), SIOCGSTAMP, &tv) < 0) - throw SystemException(errno); + if (::ioctl(fd(), SIOCGSTAMP, &tv) < 0) + throwErrno(); return tv; } @@ -73,8 +73,8 @@ prefix_ bool senf::AddressableBSDSocketProtocol::reuseaddr() { int value; socklen_t len (sizeof(value)); - if (::getsockopt(body().fd(),SOL_SOCKET,SO_REUSEADDR,&value,&len) < 0) - throw SystemException(errno); + if (::getsockopt(fd(),SOL_SOCKET,SO_REUSEADDR,&value,&len) < 0) + throwErrno(); return value; } @@ -82,8 +82,8 @@ prefix_ void senf::AddressableBSDSocketProtocol::reuseaddr(bool value) const { int ivalue (value); - if (::setsockopt(body().fd(),SOL_SOCKET,SO_REUSEADDR,&ivalue,sizeof(ivalue)) < 0) - throw SystemException(errno); + if (::setsockopt(fd(),SOL_SOCKET,SO_REUSEADDR,&ivalue,sizeof(ivalue)) < 0) + throwErrno(); } ///////////////////////////////cc.e////////////////////////////////////////