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
to allocate memory for my_pollfd. Better initialization of
cb_is_running. Use TEMP_FAILURE_RETRY.
|| ((nis_result *)resp)->status == NIS_NOSUCHNAME
|| ((nis_result *)resp)->status == NIS_NOT_ME)
{
+ next_server:
if (__nisbind_next (dbp) == NIS_SUCCESS)
{
while (__nisbind_connect (dbp) != NIS_SUCCESS)
if (((fd_result *)resp)->status == NIS_SYSTEMERROR
|| ((fd_result *)resp)->status == NIS_NOSUCHNAME
|| ((fd_result *)resp)->status == NIS_NOT_ME)
- {
- 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;
- }
+ goto next_server;
break;
case NIS_DUMPLOG: /* log_result */
case NIS_DUMP:
if (((log_result *)resp)->lr_status == NIS_SYSTEMERROR
|| ((log_result *)resp)->lr_status == NIS_NOSUCHNAME
|| ((log_result *)resp)->lr_status == NIS_NOT_ME)
- {
- 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;
- }
+ goto next_server;
break;
default:
break;
++run;
}
while (nis_dir_cmp (domain, dir->do_name) != SAME_NAME);
-
+ printf("%s: run=%u\n", __func__, run);
if (run == 1)
{
/* We have found the directory above. Use it. */