diff options
-rw-r--r-- | net/ipv4/ip_gre.c | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/net/ipv4/ip_gre.c b/net/ipv4/ip_gre.c index 5c36b6745dbc..90c912307814 100644 --- a/net/ipv4/ip_gre.c +++ b/net/ipv4/ip_gre.c | |||
@@ -313,8 +313,10 @@ static int erspan_rcv(struct sk_buff *skb, struct tnl_ptk_info *tpi, | |||
313 | return PACKET_REJECT; | 313 | return PACKET_REJECT; |
314 | 314 | ||
315 | md = ip_tunnel_info_opts(&tun_dst->u.tun_info); | 315 | md = ip_tunnel_info_opts(&tun_dst->u.tun_info); |
316 | if (!md) | 316 | if (!md) { |
317 | dst_release((struct dst_entry *)tun_dst); | ||
317 | return PACKET_REJECT; | 318 | return PACKET_REJECT; |
319 | } | ||
318 | 320 | ||
319 | memcpy(md, pkt_md, sizeof(*md)); | 321 | memcpy(md, pkt_md, sizeof(*md)); |
320 | md->version = ver; | 322 | md->version = ver; |