mirror of git://sourceware.org/git/glibc.git
* nis/nis_call.c (__do_niscall3): Avoid code duplication in error
handling.
This commit is contained in:
parent
101cc59887
commit
1d4f062ab8
|
|
@ -1,5 +1,8 @@
|
||||||
2006-05-19 Ulrich Drepper <drepper@redhat.com>
|
2006-05-19 Ulrich Drepper <drepper@redhat.com>
|
||||||
|
|
||||||
|
* nis/nis_call.c (__do_niscall3): Avoid code duplication in error
|
||||||
|
handling.
|
||||||
|
|
||||||
* nis/nis_callback.c (internal_nis_do_callback): Don't use malloc
|
* nis/nis_callback.c (internal_nis_do_callback): Don't use malloc
|
||||||
to allocate memory for my_pollfd. Better initialization of
|
to allocate memory for my_pollfd. Better initialization of
|
||||||
cb_is_running. Use TEMP_FAILURE_RETRY.
|
cb_is_running. Use TEMP_FAILURE_RETRY.
|
||||||
|
|
|
||||||
|
|
@ -256,6 +256,7 @@ __do_niscall3 (dir_binding *dbp, u_long prog, xdrproc_t xargs, caddr_t req,
|
||||||
|| ((nis_result *)resp)->status == NIS_NOSUCHNAME
|
|| ((nis_result *)resp)->status == NIS_NOSUCHNAME
|
||||||
|| ((nis_result *)resp)->status == NIS_NOT_ME)
|
|| ((nis_result *)resp)->status == NIS_NOT_ME)
|
||||||
{
|
{
|
||||||
|
next_server:
|
||||||
if (__nisbind_next (dbp) == NIS_SUCCESS)
|
if (__nisbind_next (dbp) == NIS_SUCCESS)
|
||||||
{
|
{
|
||||||
while (__nisbind_connect (dbp) != NIS_SUCCESS)
|
while (__nisbind_connect (dbp) != NIS_SUCCESS)
|
||||||
|
|
@ -273,38 +274,14 @@ __do_niscall3 (dir_binding *dbp, u_long prog, xdrproc_t xargs, caddr_t req,
|
||||||
if (((fd_result *)resp)->status == NIS_SYSTEMERROR
|
if (((fd_result *)resp)->status == NIS_SYSTEMERROR
|
||||||
|| ((fd_result *)resp)->status == NIS_NOSUCHNAME
|
|| ((fd_result *)resp)->status == NIS_NOSUCHNAME
|
||||||
|| ((fd_result *)resp)->status == NIS_NOT_ME)
|
|| ((fd_result *)resp)->status == NIS_NOT_ME)
|
||||||
{
|
goto next_server;
|
||||||
if (__nisbind_next (dbp) == NIS_SUCCESS)
|
|
||||||
{
|
|
||||||
while (__nisbind_connect (dbp) != NIS_SUCCESS)
|
|
||||||
{
|
|
||||||
if (__nisbind_next (dbp) != NIS_SUCCESS)
|
|
||||||
return NIS_SUCCESS;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
else
|
|
||||||
break; /* No more servers to search in */
|
|
||||||
goto again;
|
|
||||||
}
|
|
||||||
break;
|
break;
|
||||||
case NIS_DUMPLOG: /* log_result */
|
case NIS_DUMPLOG: /* log_result */
|
||||||
case NIS_DUMP:
|
case NIS_DUMP:
|
||||||
if (((log_result *)resp)->lr_status == NIS_SYSTEMERROR
|
if (((log_result *)resp)->lr_status == NIS_SYSTEMERROR
|
||||||
|| ((log_result *)resp)->lr_status == NIS_NOSUCHNAME
|
|| ((log_result *)resp)->lr_status == NIS_NOSUCHNAME
|
||||||
|| ((log_result *)resp)->lr_status == NIS_NOT_ME)
|
|| ((log_result *)resp)->lr_status == NIS_NOT_ME)
|
||||||
{
|
goto next_server;
|
||||||
if (__nisbind_next (dbp) == NIS_SUCCESS)
|
|
||||||
{
|
|
||||||
while (__nisbind_connect (dbp) != NIS_SUCCESS)
|
|
||||||
{
|
|
||||||
if (__nisbind_next (dbp) != NIS_SUCCESS)
|
|
||||||
return NIS_SUCCESS;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
else
|
|
||||||
break; /* No more servers to search in */
|
|
||||||
goto again;
|
|
||||||
}
|
|
||||||
break;
|
break;
|
||||||
default:
|
default:
|
||||||
break;
|
break;
|
||||||
|
|
@ -425,7 +402,7 @@ rec_dirsearch (const_nis_name name, directory_obj *dir, nis_error *status)
|
||||||
++run;
|
++run;
|
||||||
}
|
}
|
||||||
while (nis_dir_cmp (domain, dir->do_name) != SAME_NAME);
|
while (nis_dir_cmp (domain, dir->do_name) != SAME_NAME);
|
||||||
|
printf("%s: run=%u\n", __func__, run);
|
||||||
if (run == 1)
|
if (run == 1)
|
||||||
{
|
{
|
||||||
/* We have found the directory above. Use it. */
|
/* We have found the directory above. Use it. */
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue