提交 b587ee3b 编写于 作者: D David S. Miller

net: Add dummy dst_ops->redirect method where needed.

Signed-off-by: NDavid S. Miller <davem@davemloft.net>
上级 b94f1c09
...@@ -115,6 +115,10 @@ static void fake_update_pmtu(struct dst_entry *dst, u32 mtu) ...@@ -115,6 +115,10 @@ static void fake_update_pmtu(struct dst_entry *dst, u32 mtu)
{ {
} }
static void fake_redirect(struct dst_entry *dst, struct sk_buff *skb)
{
}
static u32 *fake_cow_metrics(struct dst_entry *dst, unsigned long old) static u32 *fake_cow_metrics(struct dst_entry *dst, unsigned long old)
{ {
return NULL; return NULL;
...@@ -136,6 +140,7 @@ static struct dst_ops fake_dst_ops = { ...@@ -136,6 +140,7 @@ static struct dst_ops fake_dst_ops = {
.family = AF_INET, .family = AF_INET,
.protocol = cpu_to_be16(ETH_P_IP), .protocol = cpu_to_be16(ETH_P_IP),
.update_pmtu = fake_update_pmtu, .update_pmtu = fake_update_pmtu,
.redirect = fake_redirect,
.cow_metrics = fake_cow_metrics, .cow_metrics = fake_cow_metrics,
.neigh_lookup = fake_neigh_lookup, .neigh_lookup = fake_neigh_lookup,
.mtu = fake_mtu, .mtu = fake_mtu,
......
...@@ -118,6 +118,7 @@ static void dn_dst_ifdown(struct dst_entry *, struct net_device *dev, int how); ...@@ -118,6 +118,7 @@ static void dn_dst_ifdown(struct dst_entry *, struct net_device *dev, int how);
static struct dst_entry *dn_dst_negative_advice(struct dst_entry *); static struct dst_entry *dn_dst_negative_advice(struct dst_entry *);
static void dn_dst_link_failure(struct sk_buff *); static void dn_dst_link_failure(struct sk_buff *);
static void dn_dst_update_pmtu(struct dst_entry *dst, u32 mtu); static void dn_dst_update_pmtu(struct dst_entry *dst, u32 mtu);
static void dn_dst_redirect(struct dst_entry *dst, struct sk_buff *skb);
static struct neighbour *dn_dst_neigh_lookup(const struct dst_entry *dst, static struct neighbour *dn_dst_neigh_lookup(const struct dst_entry *dst,
struct sk_buff *skb, struct sk_buff *skb,
const void *daddr); const void *daddr);
...@@ -145,6 +146,7 @@ static struct dst_ops dn_dst_ops = { ...@@ -145,6 +146,7 @@ static struct dst_ops dn_dst_ops = {
.negative_advice = dn_dst_negative_advice, .negative_advice = dn_dst_negative_advice,
.link_failure = dn_dst_link_failure, .link_failure = dn_dst_link_failure,
.update_pmtu = dn_dst_update_pmtu, .update_pmtu = dn_dst_update_pmtu,
.redirect = dn_dst_redirect,
.neigh_lookup = dn_dst_neigh_lookup, .neigh_lookup = dn_dst_neigh_lookup,
}; };
...@@ -292,6 +294,10 @@ static void dn_dst_update_pmtu(struct dst_entry *dst, u32 mtu) ...@@ -292,6 +294,10 @@ static void dn_dst_update_pmtu(struct dst_entry *dst, u32 mtu)
} }
} }
static void dn_dst_redirect(struct dst_entry *dst, struct sk_buff *skb)
{
}
/* /*
* When a route has been marked obsolete. (e.g. routing cache flush) * When a route has been marked obsolete. (e.g. routing cache flush)
*/ */
......
...@@ -2591,6 +2591,10 @@ static void ipv4_rt_blackhole_update_pmtu(struct dst_entry *dst, u32 mtu) ...@@ -2591,6 +2591,10 @@ static void ipv4_rt_blackhole_update_pmtu(struct dst_entry *dst, u32 mtu)
{ {
} }
static void ipv4_rt_blackhole_redirect(struct dst_entry *dst, struct sk_buff *skb)
{
}
static u32 *ipv4_rt_blackhole_cow_metrics(struct dst_entry *dst, static u32 *ipv4_rt_blackhole_cow_metrics(struct dst_entry *dst,
unsigned long old) unsigned long old)
{ {
...@@ -2605,6 +2609,7 @@ static struct dst_ops ipv4_dst_blackhole_ops = { ...@@ -2605,6 +2609,7 @@ static struct dst_ops ipv4_dst_blackhole_ops = {
.mtu = ipv4_blackhole_mtu, .mtu = ipv4_blackhole_mtu,
.default_advmss = ipv4_default_advmss, .default_advmss = ipv4_default_advmss,
.update_pmtu = ipv4_rt_blackhole_update_pmtu, .update_pmtu = ipv4_rt_blackhole_update_pmtu,
.redirect = ipv4_rt_blackhole_redirect,
.cow_metrics = ipv4_rt_blackhole_cow_metrics, .cow_metrics = ipv4_rt_blackhole_cow_metrics,
.neigh_lookup = ipv4_neigh_lookup, .neigh_lookup = ipv4_neigh_lookup,
}; };
......
...@@ -191,6 +191,10 @@ static void ip6_rt_blackhole_update_pmtu(struct dst_entry *dst, u32 mtu) ...@@ -191,6 +191,10 @@ static void ip6_rt_blackhole_update_pmtu(struct dst_entry *dst, u32 mtu)
{ {
} }
static void ip6_rt_blackhole_redirect(struct dst_entry *dst, struct sk_buff *skb)
{
}
static u32 *ip6_rt_blackhole_cow_metrics(struct dst_entry *dst, static u32 *ip6_rt_blackhole_cow_metrics(struct dst_entry *dst,
unsigned long old) unsigned long old)
{ {
...@@ -205,6 +209,7 @@ static struct dst_ops ip6_dst_blackhole_ops = { ...@@ -205,6 +209,7 @@ static struct dst_ops ip6_dst_blackhole_ops = {
.mtu = ip6_blackhole_mtu, .mtu = ip6_blackhole_mtu,
.default_advmss = ip6_default_advmss, .default_advmss = ip6_default_advmss,
.update_pmtu = ip6_rt_blackhole_update_pmtu, .update_pmtu = ip6_rt_blackhole_update_pmtu,
.redirect = ip6_rt_blackhole_redirect,
.cow_metrics = ip6_rt_blackhole_cow_metrics, .cow_metrics = ip6_rt_blackhole_cow_metrics,
.neigh_lookup = ip6_neigh_lookup, .neigh_lookup = ip6_neigh_lookup,
}; };
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册