1. ToolTalk timeouts with DNS (was: answerbook times out with dns)
This could be a ToolTalk bug (feature?). We're running YP with DNS
enabled for host information and experienced long timeouts (~3min)
with serveral deskset tools now and then (since OW 3.0, SunOS 4.1.x
and SunOS 5.x).
The ToolTalk library is obviously written in C++ and deals with IP
addresses either in ascii (e.g. "192.76.135.71") or binary form
(e.g. 0xc04c8747), both forms are stored in Tt_string objects.
In Tt_global::find_host, such an IP address is converted into a
hostname by trying to interpret the Tt_string IP address first as a
binary string (using gethostbyaddr directly on the Tt_string's data)
and, if this fails, an a ascii string (converting the string with
inet_addr into binary form, then gethostbyaddr). Unfortunatelly, the
actual data contained in the string object is in ascii form, so the
first try results in a call to gethostbyaddr("192.76..."). With DNS
enabled, this results in a DNS query for the hostname of 49.57.50.46!
Now, if your PPP link is down for some reason, DNS can't reach other
nameservers and you're experiencing a 3 min timeout.
Currently I've solved the problem by patching SunOS 5.3's
/usr/openwin/lib/libtt.so.1 file: I've changed Tt_global::find_host to
first try the conversion from ascii and, if it fails, retry with the
conversion from binary:
48# adb -w /usr/openwin/lib/libtt.so.1
3c640?i
find_host__10_Tt_globalF10_Tt_stringR12_Tt_host_ptri+0x80: call 0xa0a00
3c684?i
find_host__10_Tt_globalF10_Tt_stringR12_Tt_host_ptri+0xc4: call 0xa0508
3c640?W 40018fb2
find_host__10_Tt_globalF10_Tt_stringR12_Tt_host_ptri+0x80: 0x400190f0 = 0x40018fb2
3c684?W 400190df
find_host__10_Tt_globalF10_Tt_stringR12_Tt_host_ptri+0xc4: 0x40018fa1 = 0x400190df
3c640?i
find_host__10_Tt_globalF10_Tt_stringR12_Tt_host_ptri+0x80: call 0xa0508
3c684?i
find_host__10_Tt_globalF10_Tt_stringR12_Tt_host_ptri+0xc4: call 0xa0a00
$q
--
2. Setting up Mandrake Linux 8 on @home network
3. dns wierdness
4. /etc/passwd
5. DNS Wierdness
6. starting vinum automaticallly HELP!
7. Strange timeout-like problem using linux-jdk-1.3.1 and xerces-1.4.0
8. Thomas Conrad TC-3045 ArcNet NIC supported?
9. Strange, strange, strange...
10. Strange network timeouts on iptables-firewall
11. Strange install timeouts
12. Very strange network timeout problem.....
13. strange behaviour of ftpd's timeout