[testzebra] stubs should call kernel_address_add on IP address install

2007-04-08 Paul Jakma <paul.jakma@sun.com>

	* {ioctl,kernel}_null.c: Install of IP address should
	  reflect back to zebra via kernel_address_add..., makes
	  testzebra more useful.
diff --git a/zebra/kernel_null.c b/zebra/kernel_null.c
index a84f437..94b7b3c 100644
--- a/zebra/kernel_null.c
+++ b/zebra/kernel_null.c
@@ -1,10 +1,12 @@
 /* NULL kernel methods for testing. */
 
 #include <zebra.h>
+#include <log.h>
 
 #include "zebra/zserv.h"
 #include "zebra/rt.h"
 #include "zebra/redistribute.h"
+#include "zebra/connected.h"
 
 int kernel_add_ipv4 (struct prefix *a, struct rib *b) { return 0; }
 #pragma weak kernel_delete_ipv4 = kernel_add_ipv4
@@ -18,8 +20,21 @@
 { return 0; }
 
 int kernel_address_add_ipv4 (struct interface *a, struct connected *b)
-{ return 0; }
-#pragma weak kernel_address_delete_ipv4 = kernel_address_add_ipv4
+{
+  zlog_debug ("%s", __func__);
+  connected_add_ipv4 (a, 0, &b->address->u.prefix4, b->address->prefixlen, 
+                      (b->destination ? &b->destination->u.prefix4 : NULL), 
+                      NULL);
+  return 0;
+}
+
+int kernel_address_delete_ipv4 (struct interface *a, struct connected *b)
+{
+  zlog_debug ("%s", __func__);
+  connected_delete_ipv4 (a, 0, &b->address->u.prefix4, b->address->prefixlen, 
+                         (b->destination ? &b->destination->u.prefix4 : NULL));
+  return 0;
+}
 
 void kernel_init (void) { return; }
 #pragma weak route_read = kernel_init