inet: Remove strdupa from nrl_domainname()

We can use the already in place scratch_buffer.

Checked on x86_64-linux-gnu.

Reviewed-by: DJ Delorie <dj@redhat.com>
This commit is contained in:
Adhemerval Zanella 2021-11-10 15:26:52 -03:00
parent c54d689269
commit b3c68b10af

View File

@ -118,15 +118,15 @@ nrl_domainname_core (struct scratch_buffer *tmpbuf)
else
{
/* We need to preserve the hostname. */
const char *hstname = strdupa (tmpbuf->data);
while (__gethostbyname_r (hstname, &th,
tmpbuf->data,
tmpbuf->length,
size_t hstnamelen = strlen (tmpbuf->data) + 1;
while (__gethostbyname_r (tmpbuf->data, &th,
tmpbuf->data + hstnamelen,
tmpbuf->length - hstnamelen,
&h, &herror))
{
if (herror == NETDB_INTERNAL && errno == ERANGE)
{
if (!scratch_buffer_grow (tmpbuf))
if (!scratch_buffer_grow_preserve (tmpbuf))
return;
}
else