diff --git a/edge.c b/edge.c index c8f729c..c922d7f 100644 --- a/edge.c +++ b/edge.c @@ -737,8 +737,12 @@ int main(int argc, char* argv[]) { mreq.imr_multiaddr.s_addr = inet_addr(N2N_MULTICAST_GROUP); mreq.imr_interface.s_addr = htonl(INADDR_ANY); if (setsockopt(eee.udp_multicast_sock, IPPROTO_IP, IP_ADD_MEMBERSHIP, &mreq, sizeof(mreq)) < 0) { - traceEvent(TRACE_ERROR, "Failed to bind to local multicast group %s:%u", - N2N_MULTICAST_GROUP, N2N_MULTICAST_PORT); + traceEvent(TRACE_ERROR, "Failed to bind to local multicast group %s:%u [errno %u]", + N2N_MULTICAST_GROUP, N2N_MULTICAST_PORT, errno); + +#ifdef WIN32 + traceEvent(TRACE_ERROR, "WSAGetLastError(): %u", WSAGetLastError()); +#endif return(-6); } } diff --git a/edge_utils.c b/edge_utils.c index 4d6f8f4..1a8fb8a 100644 --- a/edge_utils.c +++ b/edge_utils.c @@ -1762,8 +1762,12 @@ int quick_edge_init(char *device_name, char *community_name, mreq.imr_multiaddr.s_addr = inet_addr(N2N_MULTICAST_GROUP); mreq.imr_interface.s_addr = htonl(INADDR_ANY); if (setsockopt(eee.udp_multicast_sock, IPPROTO_IP, IP_ADD_MEMBERSHIP, &mreq, sizeof(mreq)) < 0) { - traceEvent(TRACE_ERROR, "Failed to bind to local multicast group %s:%u", - N2N_MULTICAST_GROUP, N2N_MULTICAST_PORT); + traceEvent(TRACE_ERROR, "Failed to bind to local multicast group %s:%u [errno %u]", + N2N_MULTICAST_GROUP, N2N_MULTICAST_PORT, errno); + +#ifdef WIN32 + traceEvent(TRACE_ERROR, "WSAGetLastError(): %u", WSAGetLastError()); +#endif return(-6); } }