From: Donald Sharp Date: Mon, 3 Oct 2016 22:42:59 +0000 (-0400) Subject: pimd: Allow bigger packet sizes when receiving callbacks. X-Git-Tag: frr-3.0-branchpoint~64^2~10^2~185 X-Git-Url: https://git.puffer.fish/?a=commitdiff_plain;h=19e550954bfdddf304c36fee4b24f85cf3180f5b;p=mirror%2Ffrr.git pimd: Allow bigger packet sizes when receiving callbacks. When receiving callbacks from the kernel allow bigger packet sizes than 3k to be handled appropriately. Signed-off-by: Donald Sharp --- diff --git a/pimd/pim_pim.c b/pimd/pim_pim.c index 991bac8a2e..b10528536e 100644 --- a/pimd/pim_pim.c +++ b/pimd/pim_pim.c @@ -538,11 +538,11 @@ pim_msg_send(int fd, struct in_addr src, { struct sockaddr_in to; socklen_t tolen; - unsigned char buffer[3000]; + unsigned char buffer[10000]; unsigned char *msg_start; struct ip *ip; - memset (buffer, 0, 3000); + memset (buffer, 0, 10000); int sendlen = sizeof (struct ip) + pim_msg_size; msg_start = buffer + sizeof (struct ip); diff --git a/pimd/pim_register.c b/pimd/pim_register.c index c2e666f17b..6fb42bcd6a 100644 --- a/pimd/pim_register.c +++ b/pimd/pim_register.c @@ -51,7 +51,7 @@ pim_register_stop_send (struct interface *ifp, struct prefix_sg *sg, struct in_addr src, struct in_addr originator) { struct pim_interface *pinfo; - unsigned char buffer[3000]; + unsigned char buffer[10000]; unsigned int b1length = 0; unsigned int length; uint8_t *b1; @@ -63,7 +63,7 @@ pim_register_stop_send (struct interface *ifp, struct prefix_sg *sg, pim_str_sg_dump (sg), inet_ntoa(originator), ifp->name); } - memset (buffer, 0, 3000); + memset (buffer, 0, 10000); b1 = (uint8_t *)buffer + PIM_MSG_REGISTER_STOP_LEN; length = pim_encode_addr_group (b1, AFI_IP, 0, 0, sg->grp); @@ -149,7 +149,7 @@ pim_register_stop_recv (uint8_t *buf, int buf_size) void pim_register_send (const uint8_t *buf, int buf_size, struct in_addr src, struct pim_rpf *rpg, int null_register) { - unsigned char buffer[3000]; + unsigned char buffer[10000]; unsigned char *b1; struct pim_interface *pinfo; struct interface *ifp; @@ -175,7 +175,7 @@ pim_register_send (const uint8_t *buf, int buf_size, struct in_addr src, struct return; } - memset(buffer, 0, 3000); + memset(buffer, 0, 10000); b1 = buffer + PIM_MSG_HEADER_LEN; *b1 |= null_register << 6; b1 = buffer + PIM_MSG_REGISTER_LEN;