Mono_Posix_Syscall_setpwent (void)
{
errno = 0;
- setpwent ();
- return errno == 0 ? 0 : -1;
+ do {
+ setpwent ();
+ } while (errno == EINTR);
+ mph_return_if_val_in_list5(errno, EIO, EMFILE, ENFILE, ENOMEM, ERANGE);
+ return 0;
}
int
{
errno = 0;
endpwent ();
- return errno == 0 ? 0 : -1;
+ if (errno == EIO)
+ return -1;
+ return 0;
}
G_END_DECLS