[1446] in NetBSD-Development

home help back first fref pref prev next nref lref last post

Re: Hesiod

daemon@ATHENA.MIT.EDU (Greg Hudson)
Tue Mar 25 21:20:57 1997

To: Erik Nygren <nygren@MIT.EDU>
Cc: David D Golombek <daveg@MIT.EDU>, bdrosen@MIT.EDU, netbsd-dev@MIT.EDU,
        linux-dev@MIT.EDU
In-Reply-To: Your message of "Tue, 25 Mar 1997 19:14:44 EST."
             <199703260014.TAA17217@zocalo.mit.edu> 
Date: Tue, 25 Mar 1997 21:20:29 EST
From: Greg Hudson <ghudson@MIT.EDU>

> The problem only occurs with people of a group list over a certain
> size, and also only after the second and later lookups.  Does the
> problem happen when you look up bdrosen instead of yourself?  The
> problem exists under Linux as well, although now it just returns
> "hesiod name not found" instead of segfaulting.  I don't remember
> what causes the problem.

The problem comes from DNS reponses longer than 512 bytes, which is
actually a violation of spec by MIT's name servers.  On Linux, this
makes res_send() return a packet size greater than your buffer length.

I've actually pumped up the buffer size (since, in theory, the
resolver could be doing a virtual circuit lookup) to 1K, so this
problem should go away on Linux if everything is rebuilt.

I'm not completely clear on the source of problems under NetBSD, but I
believe that they would go away on a rebuild of the current sources
(there was insufficient length-checking in the sources I built 7.7.2
with).  I haven't yet found the time and energy to rebuild all the
login programs and install them.

home help back first fref pref prev next nref lref last post