summaryrefslogtreecommitdiff
path: root/zebra/rt_netlink.h
diff options
context:
space:
mode:
authorAvneesh Sachdev <avneesh@opensourcerouting.org>2012-11-13 22:48:56 +0000
committerDavid Lamparter <equinox@opensourcerouting.org>2012-11-30 21:41:17 +0100
commit78deec450cfa5ddcad290c13b36dd1d187da213e (patch)
treebf6e811b78c726db3fe00b168b35a67e9aa586c1 /zebra/rt_netlink.h
parent0915bb0ce2ca6b5fee2cd214be4499eeeaf1c9af (diff)
zebra: extern/extract some functions from rt_netlink.c
* zebra/{rib.h,zebra_rib.c} Add nexthop_type_to_str(), which returns a human-readable string corresponding to a nexthop type. * zebra/rt_netlink.[hc] - Add new header file that exposes some existing and new netlink-related functions from rt_netlink.c to the rest of zebra. addattr32 addattr_l rta_addattr_l nl_msg_type_to_str (new) nl_rtproto_to_str (new) - Use nexthop_type_to_str() instead of the static array 'nexthop_types_desc'. Signed-off-by: Avneesh Sachdev <avneesh@opensourcerouting.org> Signed-off-by: David Lamparter <equinox@opensourcerouting.org>
Diffstat (limited to 'zebra/rt_netlink.h')
-rw-r--r--zebra/rt_netlink.h46
1 files changed, 46 insertions, 0 deletions
diff --git a/zebra/rt_netlink.h b/zebra/rt_netlink.h
new file mode 100644
index 00000000..529fa517
--- /dev/null
+++ b/zebra/rt_netlink.h
@@ -0,0 +1,46 @@
+/* Header file exported by rt_netlink.c to zebra.
+ * Copyright (C) 1997, 98, 99 Kunihiro Ishiguro
+ *
+ * This file is part of GNU Zebra.
+ *
+ * GNU Zebra is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU General Public License as published by the
+ * Free Software Foundation; either version 2, or (at your option) any
+ * later version.
+ *
+ * GNU Zebra is distributed in the hope that it will be useful, but
+ * WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with GNU Zebra; see the file COPYING. If not, write to the Free
+ * Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
+ * 02111-1307, USA.
+ */
+
+#ifndef _ZEBRA_RT_NETLINK_H
+#define _ZEBRA_RT_NETLINK_H
+
+#ifdef HAVE_NETLINK
+
+#define NL_PKT_BUF_SIZE 4096
+
+extern int
+addattr32 (struct nlmsghdr *n, int maxlen, int type, int data);
+extern int
+addattr_l (struct nlmsghdr *n, int maxlen, int type, void *data, int alen);
+
+extern int
+rta_addattr_l (struct rtattr *rta, int maxlen, int type, void *data, int alen);
+
+extern const char *
+nl_msg_type_to_str (uint16_t msg_type);
+
+extern const char *
+nl_rtproto_to_str (u_char rtproto);
+
+
+#endif /* HAVE_NETLINK */
+
+#endif /* _ZEBRA_RT_NETLINK_H */