if (!parse_res && errno == ERANGE)
if (parse_res == -1)
_nss_nisplus_gethostbyaddr_r (const char *addr, int addrlen, int type,			      struct hostent *host, char *buffer,			      size_t buflen, int *herrnop){  if (tablename_val == NULL)    if (_nss_create_tablename() != NSS_STATUS_SUCCESS)      return NSS_STATUS_UNAVAIL;  if (addr == NULL)    return NSS_STATUS_NOTFOUND;  else    {      nis_result *result;      char buf[255 + tablename_len];      int retval, parse_res;      snprintf(buf, sizeof (buf) -1, "[addr=%s],%s",	       inet_ntoa (*(struct in_addr *)addr), tablename_val);      result = nis_list(buf, FOLLOW_PATH | FOLLOW_LINKS, NULL, NULL);      retval = niserr2nss (result->status);      if (retval != NSS_STATUS_SUCCESS)        {          if (retval == NSS_STATUS_TRYAGAIN)            {              __set_errno (EAGAIN);              *herrnop = NETDB_INTERNAL;            }	  nis_freeresult (result);          return retval;        }      parse_res = _nss_nisplus_parse_hostent (result, type, host,					      buffer, buflen);      nis_freeresult (result);      if (parse_res)	return NSS_STATUS_SUCCESS;      *herrnop = NETDB_INTERNAL;      if (!parse_res && errno == ERANGE)	return NSS_STATUS_TRYAGAIN;      else	return NSS_STATUS_NOTFOUND;    }}