summaryrefslogtreecommitdiffstats
path: root/libc/docs/CHANGES.TXT
diff options
context:
space:
mode:
authorSteinar H. Gunderson <sesse@google.com>2010-02-11 15:44:55 +0100
committerSteinar H. Gunderson <sesse@google.com>2010-02-24 11:49:17 +0100
commit9ab75d4cc803e91b7f1b656ffbe2ad32c52a86f9 (patch)
tree7f0451638ba549b39cb81ae45e570e7a0534de9e /libc/docs/CHANGES.TXT
parentb55462328f7f7468bb8c0cb44ad1069af30415a3 (diff)
downloadbionic-9ab75d4cc803e91b7f1b656ffbe2ad32c52a86f9.zip
bionic-9ab75d4cc803e91b7f1b656ffbe2ad32c52a86f9.tar.gz
bionic-9ab75d4cc803e91b7f1b656ffbe2ad32c52a86f9.tar.bz2
Implement support for RFC 3484 (address selection/sorting) in bionic. (The
Java changes required not to mess up the ordering from bionic will arrive in a later commit.) In particular, this will give us more correct behavior when on a 6to4 network, in that IPv4 will usually be preferred over 6to4. Most of RFC 3484 is implemented -- what's not is rule 3 (avoid deprecated addresses), 4 (prefer home addresses) and 7 (prefer native transport) as they require low-level access to the kernel routing table via netlink. (glibc also started out this way, and these rules are primarily useful in pretty obscure circumstances, so we should be fine for the time being.) Also, rule 9 (use longest matching prefix) has been modified so it does not try to sort IPv4 addresses; given current IPv4 addressing practice these rules are pretty much meaningless. Finally, I've added support for Teredo as a separate label, with slightly lower preference than 6to4. (Vista puts the preference below IPv4 by default. glibc puts the preference together with non-tunneled IPv6.) Note that this patch removes support for the "sortlist" directive in resolv.conf; I've never seen it in actual use, it's irrelevant for Android (since we don't use resolv.conf anyway), and it's not clear how it would be implemented alongside RFC 3484.
Diffstat (limited to 'libc/docs/CHANGES.TXT')
-rw-r--r--libc/docs/CHANGES.TXT6
1 files changed, 6 insertions, 0 deletions
diff --git a/libc/docs/CHANGES.TXT b/libc/docs/CHANGES.TXT
index f59cfab..e818df3 100644
--- a/libc/docs/CHANGES.TXT
+++ b/libc/docs/CHANGES.TXT
@@ -58,6 +58,12 @@ Differences between current and Android 2.1:
- fix sem_post() to wake up multiple threads when called rapidly in
succession.
+- DNS: partial implementation of RFC3484 (rule 1, 2, 5, 6, 8, 10 and
+ modified rule 9), for better address selection/sorting.
+ In the process, removed code that was previously used for "sortlist"
+ in /etc/resolv.conf. (resolv.conf is already ignored, so the latter
+ is a no-op for actual functionality.)
+
-------------------------------------------------------------------------------
Differences between Android 2.1 and 2.0.1: