[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: glibc problem in nis/nss_nisplus/nisplus-ethers.c



On Mon, Jan 29, 2001 at 07:54:09AM +0100, Laurent Constantin wrote:
> [our firewall forbids the access to
> http://www-gnats.gnu.org:8080/cgi-bin/wwwgnats.pl, so I sent you an
> email]
> 
> 
> Hi,
> 
> In glibc-2.1.3, I found an error in nis/nss_nisplus/nisplus-ethers.c,
> line 234 : 
> 
>   _nss_nisplus_gethostton_r (const char *name, struct etherent *eth,
>                              char *buffer, size_t buflen, int *errnop)
>   { ...
>     if (tablename_val == NULL)
>       { ...
>       }
>     if (name != NULL)  <<--- the error is here
>       {
>         *errnop = EINVAL;
>         return NSS_STATUS_UNAVAIL;
>       }
>    ...
> 
> There is "if (name != NULL)" instead of "if (name == NULL)"

Wow, this is in glibc 2.2.1 aswell. I'll get woody patched in a day or
two and send this upstream. I'll also see about getting 2.1.3 patched
for a potato fix, although the RM might not consider it critical enough.

> Moreover, but I'am not sure, the function 
> "_nss_nisplus_gethostton_r" has 5 parameters, but the function 
> ether_hostton (inet/ether_hton.c, line 76) seems to call it
> with only 4 parameters (as fct) :
> 
>   while (no_more == 0)
>     {
>       char buffer[1024];
>       status = (*fct) (hostname, &etherent, buffer, sizeof buffer);
>       no_more = __nss_next (&nip, "gethostton_r", (void **) &fct,
> status, 0);
>     }

I'll check into this one.

-- 
 -----------=======-=-======-=========-----------=====------------=-=------
/  Ben Collins  --  ...on that fantastic voyage...  --  Debian GNU/Linux   \
`  bcollins@debian.org  --  bcollins@openldap.org  --  bcollins@linux.com  '
 `---=========------=======-------------=-=-----=-===-======-------=--=---'



Reply to: