summaryrefslogtreecommitdiffstats
path: root/lib/libc/yp/yplib.c
diff options
context:
space:
mode:
Diffstat (limited to 'lib/libc/yp/yplib.c')
-rw-r--r--lib/libc/yp/yplib.c10
1 files changed, 9 insertions, 1 deletions
diff --git a/lib/libc/yp/yplib.c b/lib/libc/yp/yplib.c
index 74a791e..cc0a511 100644
--- a/lib/libc/yp/yplib.c
+++ b/lib/libc/yp/yplib.c
@@ -103,7 +103,7 @@ void *ypresp_data;
static void _yp_unbind(struct dom_binding *);
struct dom_binding *_ypbindlist;
static char _yp_domain[MAXHOSTNAMELEN];
-int _yplib_timeout = 10;
+int _yplib_timeout = 20;
static mutex_t _ypmutex = MUTEX_INITIALIZER;
#define YPLOCK() mutex_lock(&_ypmutex);
@@ -823,6 +823,14 @@ again:
return (YPERR_DOMAIN);
}
+ /*
+ * Set low retry timeout to realistically handle UDP packet
+ * loss for yp_next packet bursts.
+ */
+ tv.tv_sec = 1;
+ tv.tv_usec = 0;
+ clnt_control(ysd->dom_client, CLSET_RETRY_TIMEOUT, (char*)&tv);
+
tv.tv_sec = _yplib_timeout;
tv.tv_usec = 0;
OpenPOWER on IntegriCloud