mirror of git://sourceware.org/git/glibc.git
Update.
* nis/ypclnt.c (do_ypcall): Add one missing unlock. Simplify the code a bit.
This commit is contained in:
parent
43ca813d87
commit
9435d38cb1
|
@ -1,5 +1,8 @@
|
||||||
2004-09-24 Ulrich Drepper <drepper@redhat.com>
|
2004-09-24 Ulrich Drepper <drepper@redhat.com>
|
||||||
|
|
||||||
|
* nis/ypclnt.c (do_ypcall): Add one missing unlock. Simplify the
|
||||||
|
code a bit.
|
||||||
|
|
||||||
* misc/daemon.c (daemon): Define errno in case /dev/null is not
|
* misc/daemon.c (daemon): Define errno in case /dev/null is not
|
||||||
the correct device.
|
the correct device.
|
||||||
|
|
||||||
|
|
10
nis/ypclnt.c
10
nis/ypclnt.c
|
@ -304,16 +304,10 @@ do_ypcall (const char *domain, u_long prog, xdrproc_t xargs,
|
||||||
status = YPERR_YPERR;
|
status = YPERR_YPERR;
|
||||||
|
|
||||||
__libc_lock_lock (ypbindlist_lock);
|
__libc_lock_lock (ypbindlist_lock);
|
||||||
if (__ypbindlist != NULL)
|
|
||||||
{
|
|
||||||
ydb = __ypbindlist;
|
ydb = __ypbindlist;
|
||||||
while (ydb != NULL)
|
while (ydb != NULL)
|
||||||
{
|
{
|
||||||
if (strcmp (domain, ydb->dom_domain) == 0)
|
if (strcmp (domain, ydb->dom_domain) == 0)
|
||||||
break;
|
|
||||||
ydb = ydb->dom_pnext;
|
|
||||||
}
|
|
||||||
if (ydb != NULL)
|
|
||||||
{
|
{
|
||||||
if (__yp_bind (domain, &ydb) == 0)
|
if (__yp_bind (domain, &ydb) == 0)
|
||||||
{
|
{
|
||||||
|
@ -322,6 +316,7 @@ do_ypcall (const char *domain, u_long prog, xdrproc_t xargs,
|
||||||
resp, &ydb, 0);
|
resp, &ydb, 0);
|
||||||
if (status == YPERR_SUCCESS)
|
if (status == YPERR_SUCCESS)
|
||||||
{
|
{
|
||||||
|
__libc_lock_unlock (ypbindlist_lock);
|
||||||
__set_errno (saved_errno);
|
__set_errno (saved_errno);
|
||||||
return status;
|
return status;
|
||||||
}
|
}
|
||||||
|
@ -329,7 +324,10 @@ do_ypcall (const char *domain, u_long prog, xdrproc_t xargs,
|
||||||
/* We use ypbindlist, and the old cached data is
|
/* We use ypbindlist, and the old cached data is
|
||||||
invalid. unbind now and create a new binding */
|
invalid. unbind now and create a new binding */
|
||||||
yp_unbind_locked (domain);
|
yp_unbind_locked (domain);
|
||||||
|
|
||||||
|
break;
|
||||||
}
|
}
|
||||||
|
ydb = ydb->dom_pnext;
|
||||||
}
|
}
|
||||||
__libc_lock_unlock (ypbindlist_lock);
|
__libc_lock_unlock (ypbindlist_lock);
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue