Date: Thu, 09 Jan 1997 04:34:34 +0800 From: Peter Wemm <peter@spinner.DIALix.COM> To: Bill Paul <wpaul@skynet.ctr.columbia.edu> Cc: grog@lemis.de, current@freebsd.org Subject: Re: What's happened to nfsd and mountd? Message-ID: <199701082034.EAA06856@spinner.DIALix.COM> In-Reply-To: Your message of "Wed, 08 Jan 1997 15:06:21 EST." <199701082006.PAA24840@skynet.ctr.columbia.edu>
next in thread | previous in thread | raw e-mail | index | archive | help
Bill Paul wrote:
> Of all the gin joints in all the towns in all the world, Peter Wemm had
> to walk into mine and say:
>
> [nfsd/mountd are fubared]
>
> > > It's most likely something in the RPC library in libc, not in the program
s.
> >
> > The first thing that springs to mind is that it looks like it's happening
> > here in clnt_udp.c:
> > if (sendto(cu->cu_sock, cu->cu_outbuf, outlen, 0,
> > (struct sockaddr *)&(cu->cu_raddr), cu->cu_rlen) != outlen) {
> > cu->cu_error.re_errno = errno;
> > if (fds != &readfds)
> > free(fds);
> > return (cu->cu_error.re_status = RPC_CANTSEND);
> > }
> >
> > In this case, it looks to me like the socket is created and bound
> > correctly, Hmm, I'll dig into it some more.
>
> I would be more inclined to check pmap_set() or get_myaddress(). (I think
> you did frob get_myaddress().)
Yes, but nothing that is likely to cause this problem. Before, it used to
get the address of the first interface, which was a bit non-determinate.
It could either be a loopback or real interface. The change was to make
it return a "real" address always, but if none exist, it falls back to a
loopback address.
get_myaddress() copies the entire sockaddr_in out from the SIOCGIFCONF
data. Perhaps something is getting spammed there? pmap_set() uses that
to create the address for the udp transport.
For what it's worth, nfsd/mountd work for me. I just did a 'make world'
and restarted all my rpc/yp/nfs*/etc and it seems to work fine still. I
have not yet booted a new kernel after the if.h/if_var.h/etc changes from
a little while back.
> It would also help if we knew if these people
> are doing funky things with virtual interfaces or multihomed hosts. (This
> information is important people! When you describe a problem, you should
> go into _excrutiating_ detail. What may seem unimportant to you may speak
> volumes to us.)
Agreed.. an 'ifconfig -a' would be useful.
Cheers,
-Peter
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?199701082034.EAA06856>
