mirror of
https://git.proxmox.com/git/mirror_frr
synced 2025-08-14 00:56:19 +00:00
Merge pull request #14302 from donaldsharp/pim_pim_pim_pim
pimd: When receiving a packet be more careful with length in pim_pim_…
This commit is contained in:
commit
c4f606a9b3
@ -155,7 +155,7 @@ int pim_pim_packet(struct interface *ifp, uint8_t *buf, size_t len,
|
|||||||
bool no_fwd;
|
bool no_fwd;
|
||||||
|
|
||||||
#if PIM_IPV == 4
|
#if PIM_IPV == 4
|
||||||
if (len < sizeof(*ip_hdr)) {
|
if (len <= sizeof(*ip_hdr)) {
|
||||||
if (PIM_DEBUG_PIM_PACKETS)
|
if (PIM_DEBUG_PIM_PACKETS)
|
||||||
zlog_debug(
|
zlog_debug(
|
||||||
"PIM packet size=%zu shorter than minimum=%zu",
|
"PIM packet size=%zu shorter than minimum=%zu",
|
||||||
@ -189,7 +189,6 @@ int pim_pim_packet(struct interface *ifp, uint8_t *buf, size_t len,
|
|||||||
iovp->iov_len = pim_msg_len;
|
iovp->iov_len = pim_msg_len;
|
||||||
iovp++;
|
iovp++;
|
||||||
|
|
||||||
header = (struct pim_msg_header *)pim_msg;
|
|
||||||
if (pim_msg_len < PIM_PIM_MIN_LEN) {
|
if (pim_msg_len < PIM_PIM_MIN_LEN) {
|
||||||
if (PIM_DEBUG_PIM_PACKETS)
|
if (PIM_DEBUG_PIM_PACKETS)
|
||||||
zlog_debug(
|
zlog_debug(
|
||||||
@ -197,6 +196,7 @@ int pim_pim_packet(struct interface *ifp, uint8_t *buf, size_t len,
|
|||||||
pim_msg_len, PIM_PIM_MIN_LEN);
|
pim_msg_len, PIM_PIM_MIN_LEN);
|
||||||
return -1;
|
return -1;
|
||||||
}
|
}
|
||||||
|
header = (struct pim_msg_header *)pim_msg;
|
||||||
|
|
||||||
if (header->ver != PIM_PROTO_VERSION) {
|
if (header->ver != PIM_PROTO_VERSION) {
|
||||||
if (PIM_DEBUG_PIM_PACKETS)
|
if (PIM_DEBUG_PIM_PACKETS)
|
||||||
|
Loading…
Reference in New Issue
Block a user