Merge pull request #8297 from adrianomarto/msdp-dscp-cs6

pimd: marking MSDP traffic as DSCP CS6
This commit is contained in:
Donald Sharp 2021-03-21 19:43:01 -04:00 committed by GitHub
commit 6b78d4c9f0
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -35,6 +35,8 @@
#include "pim_msdp.h"
#include "pim_msdp_socket.h"
#include "sockopt.h"
/* increase socket send buffer size */
static void pim_msdp_update_sock_send_buffer_size(int fd)
{
@ -194,6 +196,12 @@ int pim_msdp_sock_listen(struct pim_instance *pim)
return rc;
}
/* Set socket DSCP byte */
if (setsockopt_ipv4_tos(sock, IPTOS_PREC_INTERNETCONTROL)) {
zlog_warn("can't set sockopt IP_TOS to MSDP socket %d: %s",
sock, safe_strerror(errno));
}
/* add accept thread */
listener->fd = sock;
memcpy(&listener->su, &sin, socklen);
@ -272,6 +280,12 @@ int pim_msdp_sock_connect(struct pim_msdp_peer *mp)
return rc;
}
/* Set socket DSCP byte */
if (setsockopt_ipv4_tos(mp->fd, IPTOS_PREC_INTERNETCONTROL)) {
zlog_warn("can't set sockopt IP_TOS to MSDP socket %d: %s",
mp->fd, safe_strerror(errno));
}
/* Connect to the remote mp. */
return (sockunion_connect(mp->fd, &mp->su_peer,
htons(PIM_MSDP_TCP_PORT), 0));