diff options
author | Paul Jakma <paul.jakma@sun.com> | 2006-07-27 21:59:58 +0200 |
---|---|---|
committer | Paul Jakma <paul.jakma@sun.com> | 2006-07-27 21:59:58 +0200 |
commit | 457eb9af72e6e7aa85c26b65ba4d053f9ecbffac (patch) | |
tree | ca93002285032e0c845749cfd770a446a9fc702b /zebra/ioctl_null.c | |
parent | [bgpd] Potential bug#287 fix, peer_delete should NULL out freed buffers (diff) | |
download | frr-457eb9af72e6e7aa85c26b65ba4d053f9ecbffac.tar.xz frr-457eb9af72e6e7aa85c26b65ba4d053f9ecbffac.zip |
[zebra] Add test rig code, for testing the zebra RIB
2006-07-27 Paul Jakma <paul.jakma@sun.com>
* {ioctl,kernel}_null.c: Dummy/Null kernel method implementations,
useful for testing zebra code that calls such methods.
* {redistribute,misc}_null.c: Dummy/Null methods, as above. But
for zclient, and for various misc functions.
* test_main.c: Test harness for zebra, currently just to test the
RIB.
* Makefile.am: Build testzebra using above.
* zebra_rib.c: Add a global for the workqueue hold time, useful
for testing.
Diffstat (limited to 'zebra/ioctl_null.c')
-rw-r--r-- | zebra/ioctl_null.c | 34 |
1 files changed, 34 insertions, 0 deletions
diff --git a/zebra/ioctl_null.c b/zebra/ioctl_null.c new file mode 100644 index 000000000..d1f3db081 --- /dev/null +++ b/zebra/ioctl_null.c @@ -0,0 +1,34 @@ +#include <zebra.h> + +#include "zebra/rib.h" +#include "zebra/rt.h" +#include "zebra/ioctl.h" + +void ifreq_set_name (struct ifreq *a, struct interface *b) { return; } + +int if_set_prefix (struct interface *a, struct connected *b) { return 0; } +#pragma weak if_unset_prefix = if_set_prefix +#pragma weak if_prefix_add_ipv6 = if_set_prefix +#pragma weak if_prefix_delete_ipv6 = if_set_prefix + +int if_ioctl (u_long a, caddr_t b) { return 0; } + +int if_set_flags (struct interface *a, uint64_t b) { return 0; } +#pragma weak if_unset_flags = if_set_flags + +void if_get_flags (struct interface *a) { return; } +#pragma weak if_get_metric = if_get_flags +#pragma weak if_get_mtu = if_get_flags + +#ifdef SOLARIS_IPV6 +#pragma weak if_ioctl_ipv6 = if_ioctl +struct connected *if_lookup_linklocal(struct interface *a) { return 0; } + +#define AF_IOCTL(af, request, buffer) \ + ((af) == AF_INET? if_ioctl(request, buffer) : \ + if_ioctl_ipv6(request, buffer)) +#else /* SOLARIS_IPV6 */ + +#define AF_IOCTL(af, request, buffer) if_ioctl(request, buffer) + +#endif /* SOLARIS_IPV6 */ |