diff options
author | Avneesh Sachdev <avneesh@opensourcerouting.org> | 2012-11-13 23:48:56 +0100 |
---|---|---|
committer | David Lamparter <equinox@opensourcerouting.org> | 2012-11-30 21:41:17 +0100 |
commit | 78deec450cfa5ddcad290c13b36dd1d187da213e (patch) | |
tree | bf6e811b78c726db3fe00b168b35a67e9aa586c1 /zebra/rt_netlink.h | |
parent | zebra: add iterator for walking all tables in RIB (diff) | |
download | frr-78deec450cfa5ddcad290c13b36dd1d187da213e.tar.xz frr-78deec450cfa5ddcad290c13b36dd1d187da213e.zip |
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.h | 46 |
1 files changed, 46 insertions, 0 deletions
diff --git a/zebra/rt_netlink.h b/zebra/rt_netlink.h new file mode 100644 index 000000000..529fa517a --- /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 */ |