From: Derrick Brashear Date: Wed, 14 Jul 2010 06:00:32 +0000 (-0400) Subject: linux rx pmtu fixes X-Git-Tag: openafs-devel-1_5_76~119 X-Git-Url: https://git.michaelhowe.org/gitweb/?a=commitdiff_plain;h=e503fc8b4ab1a37c447f78adcde92b6d84dd8658;p=packages%2Fo%2Fopenafs.git linux rx pmtu fixes failed to get committed in earlier round of pmtu revamping. oops. Change-Id: Ie4b0e2e3c343b62abf9871fd41018d25b09d30d4 Reviewed-on: http://gerrit.openafs.org/2414 Reviewed-by: Derrick Brashear Tested-by: Derrick Brashear --- diff --git a/src/rx/LINUX/rx_knet.c b/src/rx/LINUX/rx_knet.c index 9165cfd41..900595939 100644 --- a/src/rx/LINUX/rx_knet.c +++ b/src/rx/LINUX/rx_knet.c @@ -134,7 +134,7 @@ handle_socket_error(osi_socket so) if (err->ee_origin == SO_EE_ORIGIN_ICMP && err->ee_type == ICMP_DEST_UNREACH && err->ee_code == ICMP_FRAG_NEEDED) { - rxi_SetPeerMtu(ntohl(addr.sin_addr.s_addr), ntohs(addr.sin_port), + rxi_SetPeerMtu(NULL, ntohl(addr.sin_addr.s_addr), ntohs(addr.sin_port), err->ee_info); } /* other DEST_UNREACH's and TIME_EXCEEDED should be dealt with too */ diff --git a/src/rx/LINUX24/rx_knet.c b/src/rx/LINUX24/rx_knet.c index 99484f62a..b6b0839c0 100644 --- a/src/rx/LINUX24/rx_knet.c +++ b/src/rx/LINUX24/rx_knet.c @@ -146,7 +146,7 @@ handle_socket_error(osi_socket so) if (err->ee_origin == SO_EE_ORIGIN_ICMP && err->ee_type == ICMP_DEST_UNREACH && err->ee_code == ICMP_FRAG_NEEDED) { - rxi_SetPeerMtu(ntohl(addr.sin_addr.s_addr), ntohs(addr.sin_port), + rxi_SetPeerMtu(NULL, ntohl(addr.sin_addr.s_addr), ntohs(addr.sin_port), err->ee_info); } /* other DEST_UNREACH's and TIME_EXCEEDED should be dealt with too */ diff --git a/src/rx/rx_user.c b/src/rx/rx_user.c index b4b729db6..5691d719c 100644 --- a/src/rx/rx_user.c +++ b/src/rx/rx_user.c @@ -784,17 +784,18 @@ rx_SetMaxMTU(int mtu) rx_MyMaxSendSize = rx_maxReceiveSizeUser = rx_maxReceiveSize = mtu; } -#if defined(HAVE_LINUX_ERRQUEUE_H) && defined(ADAPT_PMTU) +#if defined(ADAPT_PMTU) int rxi_HandleSocketError(int socket) { + int ret=0; +#if defined(HAVE_LINUX_ERRQUEUE_H) struct msghdr msg; struct cmsghdr *cmsg; struct sock_extended_err *err; struct sockaddr_in addr; struct sockaddr *offender; char controlmsgbuf[256]; - int ret=0; int code; msg.msg_name = &addr; @@ -831,6 +832,7 @@ rxi_HandleSocketError(int socket) /* other DEST_UNREACH's and TIME_EXCEEDED should be dealt with too */ out: +#endif return ret; } #endif