Fix some bugs in dyn_gw plugin (thanks Teco Boot)
authorHenning Rogge <henning.rogge@fkie.fraunhofer.de>
Wed, 3 Feb 2010 11:36:13 +0000 (12:36 +0100)
committerHenning Rogge <henning.rogge@fkie.fraunhofer.de>
Wed, 3 Feb 2010 11:36:13 +0000 (12:36 +0100)
lib/dyn_gw/src/olsrd_dyn_gw.c

index 60b0ef4..b910fa7 100644 (file)
@@ -168,14 +168,15 @@ set_plugin_hna(const char *value, void *data __attribute__ ((unused)), set_plugi
     return 1;
   }
   //printf("GOT: %s(%08x)",inet_ntoa(foo_addr),foo_addr.s_addr);
-  if (inet_pton(olsr_cnf->ip_version, s_netaddr, &temp_netmask) <= 0) {
-    OLSR_PRINTF(0, "Illegal netmask \"%s\"", s_netaddr);
+  if (inet_pton(olsr_cnf->ip_version, s_mask, &temp_netmask) <= 0) {
+    OLSR_PRINTF(0, "Illegal netmask \"%s\"", s_mask);
     return 1;
   }
   //printf("/%s(%08x)\n",inet_ntoa(foo_addr),foo_addr.s_addr);
   //printf("%s():got->%s/%s\n",__func__,olsr_ip_to_string((union olsr_ip_addr *)&));
   the_hna_list = add_to_hna_list(the_hna_list, &temp_net, olsr_netmask_to_prefix(&temp_netmask));
-  if (the_hna_list != NULL) {
+  if (the_hna_list == NULL) {
+    OLSR_PRINTF(0, "Error adding HNA in HNA-list");
     return 1;
   }
   return 0;