Implement DNS prefetch mechanism à la Google Chrome.
commitff9f0de3bebd9a718743920d91a63f1f49ab898f
authorggarand <ggarand@283d02a7-25f6-0310-bc7c-ecb5cbfe19da>
Sun, 16 Nov 2008 06:10:42 +0000 (16 06:10 +0000)
committerggarand <ggarand@283d02a7-25f6-0310-bc7c-ecb5cbfe19da>
Sun, 16 Nov 2008 06:10:42 +0000 (16 06:10 +0000)
tree309f1bdc30dd5eff0aa3e1b14cdfb9c54340275a
parent6e735484af79e80ae1e04ec31b7baa73655dfefd
Implement DNS prefetch mechanism à la Google Chrome.

The point is to speed up page access by resolving host names early.

Host names (up to 42 per page) found in links' hrefs are queued for early
resolution at a moderate pace (one every 200ms) using KIO's DNS cache.

When TTL interval of DNS cache is reached and the page still exists, the
anticipated resolution is performed again.

This mechanism can be restricted to resolution of only bare SLDs and
www sub-domain, or may be entirely disabled using either the 'DNSPrefetch'
configuration option or KHTMLPart's setDNSPrefetch() override.

It is also automatically disabled when setOnlyLocalReferences() has been
set on the part (aka. "mail reader mode").

git-svn-id: svn://anonsvn.kde.org/home/kde/trunk/KDE/kdelibs@884886 283d02a7-25f6-0310-bc7c-ecb5cbfe19da
khtml/html/html_inlineimpl.cpp
khtml/khtml_part.cpp
khtml/khtml_part.h
khtml/khtml_settings.cpp
khtml/khtml_settings.h
khtml/khtmlpart_p.h
kio/kio/hostinfo.cpp
kio/kio/hostinfo_p.h