parse_res = _nss_nisplus_parse_etherent (result, ether, buffer, buflen);
if ((parse_res = _nss_nisplus_parse_etherent (result, ether, buffer, buflen)) == -1) { nis_freeresult (result); result = saved_result; return NSS_STATUS_TRYAGAIN; } else { if (saved_result != NULL) nis_freeresult (saved_result); }
internal_nisplus_getetherent_r (struct etherent *ether, char *buffer,				size_t buflen){  int parse_res;  if (tablename_val == NULL)    if (_nss_create_tablename () != NSS_STATUS_SUCCESS)      return NSS_STATUS_UNAVAIL;  /* Get the next entry until we found a correct one. */  do    {      if (result == NULL)	{	  result = nis_first_entry(tablename_val);	  if (niserr2nss (result->status) != NSS_STATUS_SUCCESS)	    return niserr2nss (result->status);	}      else	{	  nis_result *res2;	  res2 = nis_next_entry(tablename_val, &result->cookie);	  nis_freeresult (result);	  result = res2;	  if (niserr2nss (result->status) != NSS_STATUS_SUCCESS)	    return niserr2nss (result->status);	}      parse_res = _nss_nisplus_parse_etherent (result, ether, buffer, buflen);    } while (!parse_res);  return NSS_STATUS_SUCCESS;}