Fix the handling of neighbor IPs in dlep radio.
[oonf.git] / src / libcommon / netaddr.c
index b5fc72b..47fc936 100644 (file)
@@ -722,6 +722,7 @@ netaddr_from_string(struct netaddr *dst, const char *src) {
 const char *
 netaddr_socket_to_string(struct netaddr_str *dst, const union netaddr_socket *src) {
   struct netaddr_str buf;
+  static const char NONE[] = "-";
 
   if (src->std.sa_family == AF_INET) {
     snprintf(dst->buf, sizeof(*dst), "%s:%d", inet_ntop(AF_INET, &src->v4.sin_addr, buf.buf, sizeof(buf)),
@@ -739,6 +740,9 @@ netaddr_socket_to_string(struct netaddr_str *dst, const union netaddr_socket *sr
         ntohs(src->v6.sin6_port));
     }
   }
+  else if (src->std.sa_family == 0) {
+    strscpy(dst->buf, NONE, sizeof(*dst));
+  }
   else {
     snprintf(dst->buf, sizeof(*dst), "\"Unknown socket type: %d\"", src->std.sa_family);
   }