libnl 1.1

include/netlink/route/nexthop.h

00001 /*
00002  * netlink/route/nexthop.h      Routing Nexthop
00003  *
00004  *      This library is free software; you can redistribute it and/or
00005  *      modify it under the terms of the GNU Lesser General Public
00006  *      License as published by the Free Software Foundation version 2.1
00007  *      of the License.
00008  *
00009  * Copyright (c) 2003-2006 Thomas Graf <tgraf@suug.ch>
00010  */
00011 
00012 #ifndef NETLINK_ROUTE_NEXTHOP_H_
00013 #define NETLINK_ROUTE_NEXTHOP_H_
00014 
00015 #include <netlink/netlink.h>
00016 #include <netlink/addr.h>
00017 
00018 #ifdef __cplusplus
00019 extern "C" {
00020 #endif
00021 
00022 struct rtnl_nexthop;
00023 
00024 extern struct rtnl_nexthop *    rtnl_route_nh_alloc(void);
00025 extern struct rtnl_nexthop *    rtnl_route_nh_clone(struct rtnl_nexthop *);
00026 extern void             rtnl_route_nh_free(struct rtnl_nexthop *);
00027 extern void             rtnl_route_nh_set_weight(struct rtnl_nexthop *, int);
00028 extern void             rtnl_route_nh_set_ifindex(struct rtnl_nexthop *, int);
00029 extern void             rtnl_route_nh_set_gateway(struct rtnl_nexthop *,
00030                                                   struct nl_addr *);
00031 extern void             rtnl_route_nh_set_flags(struct rtnl_nexthop *,
00032                                                 unsigned int);
00033 extern void             rtnl_route_nh_unset_flags(struct rtnl_nexthop *,
00034                                                   unsigned int);
00035 extern unsigned int     rtnl_route_nh_get_flags(struct rtnl_nexthop *);
00036 
00037 #ifdef __cplusplus
00038 }
00039 #endif
00040 
00041 #endif