From 6367cd09b8e9bb8e55a45141b1f72c61645bb344 Mon Sep 17 00:00:00 2001 From: Peter Wemm Date: Tue, 18 Jul 1995 05:07:02 +0000 Subject: When 'w' finds an IP address in the ut_host field, it attempts to do a gethostbyname() on it. That can take a long time... (especially if the reason the IP address is in there in the first place is because login/rlogind/telnetd couldn't find it either....) This patch reduces the gethostbyaddr lookup time to 2 seconds, the idea being that if the local nameserver knows the answer, it'll answer within that time, otherwise we dont care... :-) This change doesn't do anything about whether or not w should do this in the first place, but at least it will make the current behavior less painful. Reviewed by: David Greenman --- usr.bin/w/w.c | 8 ++++++++ 1 file changed, 8 insertions(+) (limited to 'usr.bin/w') diff --git a/usr.bin/w/w.c b/usr.bin/w/w.c index 685057d81e7f9..6e006ad51bc66 100644 --- a/usr.bin/w/w.c +++ b/usr.bin/w/w.c @@ -77,6 +77,9 @@ static char sccsid[] = "@(#)w.c 8.4 (Berkeley) 4/16/94"; #include #include +#include +#include + #include "extern.h" struct timeval boottime; @@ -169,6 +172,11 @@ main(argc, argv) argc -= optind; argv += optind; + if (!(_res.options & RES_INIT)) + res_init(); + _res.retrans = 2; /* resolver timeout to 2 seconds per try */ + _res.retry = 1; /* only try once.. */ + if ((kd = kvm_openfiles(nlistf, memf, NULL, O_RDONLY, errbuf)) == NULL) errx(1, "%s", errbuf); -- cgit v1.3