return ifindex_;
}
-prefix_ senf::NetdeviceController::~NetdeviceController()
-{
- close( sockfd_->fd);
-}
-
prefix_ void senf::NetdeviceController::ifrName(ifreq& ifr)
const
{
prefix_ senf::NetdeviceController::SockFd::ptr senf::NetdeviceController::sockfd()
{
static boost::weak_ptr<SockFd> sockfd;
-
- if (sockfd.expired()) {
- SockFd::ptr newsockfd (new SockFd());
- sockfd = newsockfd;
- return newsockfd;
- }
- return sockfd.lock();
-
+ SockFd::ptr p (sockfd.lock());
+ if (!p)
+ sockfd = p = SockFd::ptr(new SockFd());
+ return p;
}
///////////////////////////////cc.e////////////////////////////////////////