ip6_route.h (9a64e8e0ace51b309fdcff4b4754b3649250382a) ip6_route.h (81aded24675ebda5de8a68843250ad15584ac38a)
1#ifndef _NET_IP6_ROUTE_H
2#define _NET_IP6_ROUTE_H
3
4#define IP6_RT_PRIO_USER 1024
5#define IP6_RT_PRIO_ADDRCONF 256
6
7struct route_info {
8 __u8 type;

--- 39 unchanged lines hidden (view full) ---

48 return srcprefs << 3;
49}
50
51static inline unsigned int rt6_flags2srcprefs(int flags)
52{
53 return (flags >> 3) & 7;
54}
55
1#ifndef _NET_IP6_ROUTE_H
2#define _NET_IP6_ROUTE_H
3
4#define IP6_RT_PRIO_USER 1024
5#define IP6_RT_PRIO_ADDRCONF 256
6
7struct route_info {
8 __u8 type;

--- 39 unchanged lines hidden (view full) ---

48 return srcprefs << 3;
49}
50
51static inline unsigned int rt6_flags2srcprefs(int flags)
52{
53 return (flags >> 3) & 7;
54}
55
56extern void rt6_bind_peer(struct rt6_info *rt,
57 int create);
56extern void rt6_bind_peer(struct rt6_info *rt, int create);
58
57
58static inline struct inet_peer *__rt6_get_peer(struct rt6_info *rt, int create)
59{
60 if (rt6_has_peer(rt))
61 return rt6_peer_ptr(rt);
62
63 rt6_bind_peer(rt, create);
64 return (rt6_has_peer(rt) ? rt6_peer_ptr(rt) : NULL);
65}
66
59static inline struct inet_peer *rt6_get_peer(struct rt6_info *rt)
60{
67static inline struct inet_peer *rt6_get_peer(struct rt6_info *rt)
68{
61 if (rt->rt6i_peer)
62 return rt->rt6i_peer;
69 return __rt6_get_peer(rt, 0);
70}
63
71
64 rt6_bind_peer(rt, 0);
65 return rt->rt6i_peer;
72static inline struct inet_peer *rt6_get_peer_create(struct rt6_info *rt)
73{
74 return __rt6_get_peer(rt, 1);
66}
67
68extern void ip6_route_input(struct sk_buff *skb);
69
70extern struct dst_entry * ip6_route_output(struct net *net,
71 const struct sock *sk,
72 struct flowi6 *fl6);
73extern struct dst_entry * ip6_route_lookup(struct net *net,

--- 52 unchanged lines hidden (view full) ---

126
127extern void rt6_redirect(const struct in6_addr *dest,
128 const struct in6_addr *src,
129 const struct in6_addr *saddr,
130 struct neighbour *neigh,
131 u8 *lladdr,
132 int on_link);
133
75}
76
77extern void ip6_route_input(struct sk_buff *skb);
78
79extern struct dst_entry * ip6_route_output(struct net *net,
80 const struct sock *sk,
81 struct flowi6 *fl6);
82extern struct dst_entry * ip6_route_lookup(struct net *net,

--- 52 unchanged lines hidden (view full) ---

135
136extern void rt6_redirect(const struct in6_addr *dest,
137 const struct in6_addr *src,
138 const struct in6_addr *saddr,
139 struct neighbour *neigh,
140 u8 *lladdr,
141 int on_link);
142
134extern void rt6_pmtu_discovery(const struct in6_addr *daddr,
135 const struct in6_addr *saddr,
136 struct net_device *dev,
137 u32 pmtu);
143extern void ip6_update_pmtu(struct sk_buff *skb, struct net *net, __be32 mtu,
144 int oif, u32 mark);
145extern void ip6_sk_update_pmtu(struct sk_buff *skb, struct sock *sk,
146 __be32 mtu);
138
139struct netlink_callback;
140
141struct rt6_rtnl_dump_arg {
142 struct sk_buff *skb;
143 struct netlink_callback *cb;
144 struct net *net;
145};

--- 50 unchanged lines hidden ---
147
148struct netlink_callback;
149
150struct rt6_rtnl_dump_arg {
151 struct sk_buff *skb;
152 struct netlink_callback *cb;
153 struct net *net;
154};

--- 50 unchanged lines hidden ---