summaryrefslogtreecommitdiff
path: root/net/netfilter/ipvs/ip_vs_proto_udp.c
diff options
context:
space:
mode:
authorAlex Gartrell <agartrell@fb.com>2015-08-26 09:40:37 -0700
committerSimon Horman <horms@verge.net.au>2015-09-01 10:33:55 +0900
commit6044eeffafbe35154c5d3b04b73e8938a62e5d39 (patch)
treef3ed8b842b49cc270e1b52c667183e27fd559403 /net/netfilter/ipvs/ip_vs_proto_udp.c
parent1471f35efa86407fc180ca6d55363c684d166ef6 (diff)
ipvs: attempt to schedule icmp packets
Invoke the try_to_schedule logic from the icmp path and update it to the appropriate ip_vs_conn_put function. The schedule functions have been updated to reject the packets immediately for now. Signed-off-by: Alex Gartrell <agartrell@fb.com> Acked-by: Julian Anastasov <ja@ssi.bg> Signed-off-by: Simon Horman <horms@verge.net.au>
Diffstat (limited to 'net/netfilter/ipvs/ip_vs_proto_udp.c')
-rw-r--r--net/netfilter/ipvs/ip_vs_proto_udp.c6
1 files changed, 6 insertions, 0 deletions
diff --git a/net/netfilter/ipvs/ip_vs_proto_udp.c b/net/netfilter/ipvs/ip_vs_proto_udp.c
index b62a3c0ff9bf..1403be250988 100644
--- a/net/netfilter/ipvs/ip_vs_proto_udp.c
+++ b/net/netfilter/ipvs/ip_vs_proto_udp.c
@@ -37,6 +37,12 @@ udp_conn_schedule(int af, struct sk_buff *skb, struct ip_vs_proto_data *pd,
struct ip_vs_service *svc;
struct udphdr _udph, *uh;
+ if (ip_vs_iph_icmp(iph)) {
+ /* TEMPORARY - do not schedule icmp yet */
+ *verdict = NF_ACCEPT;
+ return 0;
+ }
+
/* IPv6 fragments, only first fragment will hit this */
uh = skb_header_pointer(skb, iph->len, sizeof(_udph), &_udph);
if (uh == NULL) {