Page MenuHomeFreeBSD

D37008.id111819.diff
No OneTemporary

D37008.id111819.diff

diff --git a/sys/fs/nfsclient/nfs_clport.c.myip b/sys/fs/nfsclient/nfs_clport.c
--- a/sys/fs/nfsclient/nfs_clport.c.myip
+++ b/sys/fs/nfsclient/nfs_clport.c
@@ -1014,18 +1014,18 @@
NET_EPOCH_ENTER(et);
CURVNET_SET(CRED_TO_VNET(nmp->nm_sockreq.nr_cred));
nh = fib4_lookup(fibnum, sin->sin_addr, 0, NHR_NONE, 0);
- CURVNET_RESTORE();
- if (nh != NULL)
+ if (nh != NULL) {
addr = IA_SIN(ifatoia(nh->nh_ifa))->sin_addr;
+ if (IN_LOOPBACK(ntohl(addr.s_addr))) {
+ /* Ignore loopback addresses */
+ nh = NULL;
+ }
+ }
+ CURVNET_RESTORE();
NET_EPOCH_EXIT(et);
+
if (nh == NULL)
return (NULL);
-
- if (IN_LOOPBACK(ntohl(addr.s_addr))) {
- /* Ignore loopback addresses */
- return (NULL);
- }
-
*isinet6p = 0;
*((struct in_addr *)paddr) = addr;

File Metadata

Mime Type
text/plain
Expires
Fri, Aug 14, 8:27 PM (3 h, 29 m)
Storage Engine
blob
Storage Format
Raw Data
Storage Handle
36758711
Default Alt Text
D37008.id111819.diff (789 B)

Event Timeline