cfgfile_gen: improve printing of MainIp
authorFerry Huberts <ferry.huberts@pelagic.nl>
Thu, 30 Apr 2015 09:24:26 +0000 (11:24 +0200)
committerFerry Huberts <ferry.huberts@pelagic.nl>
Fri, 1 May 2015 07:38:56 +0000 (09:38 +0200)
Signed-off-by: Ferry Huberts <ferry.huberts@pelagic.nl>
src/cfgparser/cfgfile_gen.c

index 546ac43..d454683 100644 (file)
@@ -834,8 +834,14 @@ void olsrd_write_cnf_autobuf(struct autobuf *out, struct olsrd_config *cnf) {
     "# change during the uptime of olsrd.\n"
     "# (default is 0.0.0.0, which triggers usage of the IP of the first interface)\n"
     "\n");
-  abuf_appendf(out, "MainIp %s\n",
-      olsr_ip_to_string(&ipbuf, &cnf->main_addr));
+  {
+    union olsr_ip_addr main_addr;
+    memset(&main_addr, 0, sizeof(main_addr));
+
+    abuf_appendf(out, "%sMainIp %s\n",
+        !memcmp(&main_addr, &cnf->main_addr, (cnf->ip_version == AF_INET) ? sizeof(main_addr.v4) : sizeof(main_addr.v6)) ? "# " : "",
+        olsr_ip_to_string(&ipbuf, &cnf->main_addr));
+  }
   abuf_appendf(out,
     "\n"
     "# The fixed willingness to use (0-7)\n"