summaryrefslogtreecommitdiff
path: root/sysdep/bsd-netlink
diff options
context:
space:
mode:
Diffstat (limited to 'sysdep/bsd-netlink')
-rw-r--r--sysdep/bsd-netlink/Makefile6
-rw-r--r--sysdep/bsd-netlink/netlink-sys.h29
l---------sysdep/bsd-netlink/netlink.Y1
l---------sysdep/bsd-netlink/netlink.c1
4 files changed, 37 insertions, 0 deletions
diff --git a/sysdep/bsd-netlink/Makefile b/sysdep/bsd-netlink/Makefile
new file mode 100644
index 00000000..188ac8de
--- /dev/null
+++ b/sysdep/bsd-netlink/Makefile
@@ -0,0 +1,6 @@
+src := netlink.c
+obj := $(src-o-files)
+$(all-daemon)
+$(conf-y-targets): $(s)netlink.Y
+
+tests_objs := $(tests_objs) $(src-o-files)
diff --git a/sysdep/bsd-netlink/netlink-sys.h b/sysdep/bsd-netlink/netlink-sys.h
new file mode 100644
index 00000000..a6e5052b
--- /dev/null
+++ b/sysdep/bsd-netlink/netlink-sys.h
@@ -0,0 +1,29 @@
+/*
+ * Netlink FreeBSD-specific functions
+ *
+ * (c) 2022 Alexander Chernikov <melifaro@FreeBSD.org>
+ *
+ * Can be freely distributed and used under the terms of the GNU GPL.
+ */
+
+#ifndef _BIRD_NETLINK_SYS_H_
+#define _BIRD_NETLINK_SYS_H_
+
+#include <netlink/netlink.h>
+#include <netlink/netlink_route.h>
+
+#ifndef AF_MPLS
+#define AF_MPLS 39
+#endif
+
+#ifndef SO_RCVBUFFORCE
+#define SO_RCVBUFFORCE SO_RCVBUF
+#endif
+
+static inline int
+netlink_error_to_os(int error)
+{
+ return (error);
+}
+
+#endif
diff --git a/sysdep/bsd-netlink/netlink.Y b/sysdep/bsd-netlink/netlink.Y
new file mode 120000
index 00000000..cde7f012
--- /dev/null
+++ b/sysdep/bsd-netlink/netlink.Y
@@ -0,0 +1 @@
+../linux/netlink.Y \ No newline at end of file
diff --git a/sysdep/bsd-netlink/netlink.c b/sysdep/bsd-netlink/netlink.c
new file mode 120000
index 00000000..d9257568
--- /dev/null
+++ b/sysdep/bsd-netlink/netlink.c
@@ -0,0 +1 @@
+../linux/netlink.c \ No newline at end of file