From 8ce8052bb8024b12bc3a50830eaf45d863b0a050 Mon Sep 17 00:00:00 2001 From: Mark Andrews Date: Fri, 12 Apr 2013 09:32:41 +1000 Subject: [PATCH] handle both cmsg types IP_TOS and IP_RECVTOS being used to return IP_TOS --- lib/isc/unix/socket.c | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/lib/isc/unix/socket.c b/lib/isc/unix/socket.c index 2eebf0acb5..668fbcd1ba 100644 --- a/lib/isc/unix/socket.c +++ b/lib/isc/unix/socket.c @@ -1339,7 +1339,11 @@ process_cmsg(isc__socket_t *sock, struct msghdr *msg, isc_socketevent_t *dev) { #ifdef IP_TOS if (cmsgp->cmsg_level == IPPROTO_IP - && cmsgp->cmsg_type == IP_TOS) { + && (cmsgp->cmsg_type == IP_TOS +#ifdef IP_RECVTOS + || cmsgp->cmsg_type == IP_RECVTOS +#endif + )) { dev->dscp = (int) *(uint8_t *)CMSG_DATA(cmsgp); dev->dscp >>= 2; dev->attributes |= ISC_SOCKEVENTATTR_DSCP;