From: Donald Sharp Date: Fri, 10 Feb 2017 20:48:42 +0000 (-0500) Subject: pimd: Remove unnecessary ip header length checks on receipt. X-Git-Tag: frr-3.0-branchpoint~16^2~11 X-Git-Url: https://git.puffer.fish/?a=commitdiff_plain;h=b50fcf3aa8f1fa9db49273de6723c56953868eca;p=mirror%2Ffrr.git pimd: Remove unnecessary ip header length checks on receipt. The kernel will not hand us a malformed packet. Signed-off-by: Donald Sharp --- diff --git a/pimd/pim_igmp.c b/pimd/pim_igmp.c index 24b9e54ea5..74a05b8589 100644 --- a/pimd/pim_igmp.c +++ b/pimd/pim_igmp.c @@ -434,17 +434,6 @@ int pim_igmp_packet(struct igmp_sock *igmp, char *buf, size_t len) return -1; } - if (ip_hlen < PIM_IP_HEADER_MIN_LEN) { - zlog_warn("IP packet header size=%zu shorter than minimum=%d", - ip_hlen, PIM_IP_HEADER_MIN_LEN); - return -1; - } - if (ip_hlen > PIM_IP_HEADER_MAX_LEN) { - zlog_warn("IP packet header size=%zu greater than maximum=%d", - ip_hlen, PIM_IP_HEADER_MAX_LEN); - return -1; - } - igmp_msg = buf + ip_hlen; msg_type = *igmp_msg; igmp_msg_len = len - ip_hlen; diff --git a/pimd/pim_pim.c b/pimd/pim_pim.c index e5d5971ce2..e852a88fee 100644 --- a/pimd/pim_pim.c +++ b/pimd/pim_pim.c @@ -150,19 +150,6 @@ int pim_pim_packet(struct interface *ifp, uint8_t *buf, size_t len) ip_hdr = (struct ip *) buf; ip_hlen = ip_hdr->ip_hl << 2; /* ip_hl gives length in 4-byte words */ - if (ip_hlen < PIM_IP_HEADER_MIN_LEN) { - if (PIM_DEBUG_PIM_PACKETS) - zlog_debug("IP packet header size=%zu shorter than minimum=%d", - ip_hlen, PIM_IP_HEADER_MIN_LEN); - return -1; - } - if (ip_hlen > PIM_IP_HEADER_MAX_LEN) { - if (PIM_DEBUG_PIM_PACKETS) - zlog_debug("IP packet header size=%zu greater than maximum=%d", - ip_hlen, PIM_IP_HEADER_MAX_LEN); - return -1; - } - pim_msg = buf + ip_hlen; pim_msg_len = len - ip_hlen; diff --git a/pimd/pimd.h b/pimd/pimd.h index 2e75eea361..0da8452ab5 100644 --- a/pimd/pimd.h +++ b/pimd/pimd.h @@ -31,8 +31,6 @@ #define PIMD_DEFAULT_CONFIG "pimd.conf" #define PIMD_VTY_PORT 2611 -#define PIM_IP_HEADER_MIN_LEN (20) -#define PIM_IP_HEADER_MAX_LEN (60) #define PIM_IP_PROTO_IGMP (2) #define PIM_IP_PROTO_PIM (103) #define PIM_IGMP_MIN_LEN (8)