fix error cases in gethostbyaddr_r

EAI_MEMORY is not possible (but would not provide errno if it were)
and EAI_FAIL does not provide errno. treat the latter as EBADMSG to
match how it's handled in gethostbyname2_r (it indicates erroneous or
failure response from the nameserver).
This commit is contained in:
Rich Felker 2022-09-19 19:12:09 -04:00
parent f9827fc7da
commit dc9285ad1d

View File

@ -54,9 +54,10 @@ int gethostbyaddr_r(const void *a, socklen_t l, int af,
case EAI_OVERFLOW:
return ERANGE;
default:
case EAI_MEMORY:
case EAI_SYSTEM:
case EAI_FAIL:
*err = NO_RECOVERY;
return EBADMSG;
case EAI_SYSTEM:
*err = NO_RECOVERY;
return errno;
case 0: