Added some additional debug information that help help track down what triggers a particular failure path
This commit is contained in:
parent
5c56cd3a6d
commit
0fd1dc0308
12
src/iface.cc
12
src/iface.cc
@ -314,15 +314,19 @@ ssize_t iface::read(int fd, struct sockaddr* saddr, uint8_t* msg, size_t size)
|
||||
mhdr.msg_namelen = sizeof(struct sockaddr);
|
||||
mhdr.msg_iov =& iov;
|
||||
mhdr.msg_iovlen = 1;
|
||||
|
||||
logger::debug() << "iface::read() ifa=" << name() << ", len=" << len;
|
||||
|
||||
if ((len = recvmsg(fd,& mhdr, 0)) < 0)
|
||||
{
|
||||
int e = errno;
|
||||
logger::error() << "iface::read() failed! errno=" << e << ", ifa=" << name();
|
||||
return -1;
|
||||
}
|
||||
|
||||
if (len < sizeof(struct icmp6_hdr))
|
||||
return -1;
|
||||
|
||||
logger::debug() << "iface::read() len=" << len;
|
||||
|
||||
return len;
|
||||
}
|
||||
|
||||
@ -346,7 +350,7 @@ ssize_t iface::write(int fd, const address& daddr, const uint8_t* msg, size_t si
|
||||
mhdr.msg_iov =& iov;
|
||||
mhdr.msg_iovlen = 1;
|
||||
|
||||
logger::debug() << "iface::write() daddr=" << daddr.to_string() << ", len="
|
||||
logger::debug() << "iface::write() ifa=" << name() << ", daddr=" << daddr.to_string() << ", len="
|
||||
<< size;
|
||||
|
||||
int len;
|
||||
@ -354,7 +358,7 @@ ssize_t iface::write(int fd, const address& daddr, const uint8_t* msg, size_t si
|
||||
if ((len = sendmsg(fd,& mhdr, 0)) < 0)
|
||||
{
|
||||
int e = errno;
|
||||
logger::error() << "iface::write() failed! errno=" << e;
|
||||
logger::error() << "iface::write() failed! errno=" << e << ", ifa=" << name() << ", daddr=" << daddr.to_string();
|
||||
return -1;
|
||||
}
|
||||
|
||||
|
@ -42,9 +42,9 @@ public:
|
||||
|
||||
static int poll_all();
|
||||
|
||||
static ssize_t read(int fd, struct sockaddr* saddr, uint8_t* msg, size_t size);
|
||||
ssize_t read(int fd, struct sockaddr* saddr, uint8_t* msg, size_t size);
|
||||
|
||||
static ssize_t write(int fd, const address& daddr, const uint8_t* msg, size_t size);
|
||||
ssize_t write(int fd, const address& daddr, const uint8_t* msg, size_t size);
|
||||
|
||||
// Writes a NB_NEIGHBOR_SOLICIT message to the _ifd socket.
|
||||
ssize_t write_solicit(const address& taddr);
|
||||
|
@ -65,7 +65,8 @@ void proxy::handle_solicit(const address& saddr, const address& daddr,
|
||||
const address& taddr)
|
||||
{
|
||||
logger::debug()
|
||||
<< "proxy::handle_solicit() saddr=" << saddr.to_string()
|
||||
<< "proxy::handle_solicit() ifa=" << ((_ifa) ? _ifa->name() : "null")
|
||||
<< ", saddr=" << saddr.to_string()
|
||||
<< ", taddr=" << taddr.to_string();
|
||||
|
||||
// Let's check this proxy's list of sessions to see if we can
|
||||
|
@ -52,7 +52,7 @@ ptr<rule> rule::create(const ptr<proxy>& pr, const address& addr, const ptr<ifac
|
||||
if_add_to_list(ifindex, ifa);
|
||||
#endif
|
||||
|
||||
logger::debug() << "rule::create() if=" << pr->ifa()->name() << ", addr=" << addr;
|
||||
logger::debug() << "rule::create() if=" << pr->ifa()->name() << ", slave=" << ifa->name() << ", addr=" << addr;
|
||||
|
||||
return ru;
|
||||
}
|
||||
|
@ -111,7 +111,7 @@ ptr<session> session::create(const ptr<proxy>& pr, const address& saddr,
|
||||
_sessions.push_back(se);
|
||||
|
||||
logger::debug()
|
||||
<< "session::create() pr=" << logger::format("%x", (proxy* )pr) << ", saddr=" << saddr
|
||||
<< "session::create() pr=" << logger::format("%x", (proxy* )pr) << ", slave=" << ((pr->ifa()) ? pr->ifa()->name() : "null") << ", saddr=" << saddr
|
||||
<< ", daddr=" << daddr << ", taddr=" << taddr << ", autowire=" << (auto_wire == true ? "yes" : "no") << " =" << logger::format("%x", (session* )se);
|
||||
|
||||
return se;
|
||||
|
Loading…
x
Reference in New Issue
Block a user