summaryrefslogtreecommitdiff
path: root/zebra/ioctl_null.c
diff options
context:
space:
mode:
Diffstat (limited to 'zebra/ioctl_null.c')
-rw-r--r--zebra/ioctl_null.c34
1 files changed, 34 insertions, 0 deletions
diff --git a/zebra/ioctl_null.c b/zebra/ioctl_null.c
new file mode 100644
index 00000000..d1f3db08
--- /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 */