10914811ea02b4acc7ab1dc5a0ada1b54cdf2203 |
|
29-Oct-2011 |
Elliott Hughes <enh@google.com> |
Improve the documentation of toString methods in the java.net package. A developer wanted to know why their InterfaceAddress string began with a "/", which wasn't obvious from our crappy documentation. This kind of thing should always include examples, so let's include some examples... Change-Id: Ic0a555c880e7f2dd31e4801926523f1aa96461c8
|
a37e971343883bb582a93ffbd9f0ba84f10e55ba |
|
21-Apr-2011 |
Elliott Hughes <enh@google.com> |
Rewrite NetworkInterface. This is part of the POSIX work, but also fixes a bug that asked for down interfaces to be returned. Additionally, I found a few bugs while rewriting this code. Most notably, we used to return a bogus broadcast address for the loopback interface. The only difference I notice between us and the RI when running on the host is that the RI claims that 127.0.0.1 has a prefix length of 0 rather than 8. I believe that we are correct on this issue. Bug: 4082343, 3107501 Change-Id: I677e0698e3a86676b4332b5d56fe514a99c3ddc0
|
fbbae9740d65620b417b85576aa0d6c7daf4ba34 |
|
28-Oct-2010 |
Elliott Hughes <enh@google.com> |
Improve UnknownHostException detail messages. Bug: 2542766 Change-Id: I7de3c8326508294fb5d9f17f65b3f36c8fa856fa
|
162a12c1442641a95fe95859fa4e561b22db049f |
|
25-May-2010 |
Elliott Hughes <enh@google.com> |
Remove @hide from Java 6 API. I've left the two new spi packages @hidden, because I think we shouldn't support them without convincing demand from developers (and I don't believe there could be such a thing --- they just don't make sense, and if we add anything, it should be the ability to provide extra ICU data). Also fix a handful of javadoc syntax errors in Arrays.java and TreeMap.java. Bug: 2497395 Change-Id: I4176b72daff0face4ed6c7ee1d1f4267d52006b4
|
d2af45a6fd008ceb958ac74e5a50e582b8419e9c |
|
05-Mar-2010 |
Elliott Hughes <enh@google.com> |
Implement the Java 6 NetworkInterface/InterfaceAddress functionality. The Java bits are based on harmony's code (though only the bit that pulls out the sub-interfaces is copied verbatim), but the native side is new code, continuing our previous plan of (a) doing the least possible work on the native side and (b) using the BSD getifaddrs(3) interface as our portability layer. This patch also updates our NetworkInterfaceTest to be the latest code from harmony's java6 branch. We pass all the harmony and jtreg tests, and visual inspection shows that the untested (and hard to test) bits -- such as prefix length and hardware address -- are correct.
|
381cd64da7ff16b9252d677197ed52a3e1bb6219 |
|
26-Nov-2009 |
Elliott Hughes <enh@google.com> |
DO NOT MERGE: backport the IPv6 NetworkInterface/multicast fixes. This is a backport of the minimal changes from master (flan) to fix IPv6 multicasting. Specifically, it fixes NetworkInterface to report IPv6 addresses, it fixes GenericIPMreq so we pass the interface indexes down to native code, it replaces our old copy of harmony's MulticastSocketTest with the current upstream version (to avoid bogus failures), and it brings back one small "unrelated" fix to OSNetworkSystem.cpp that's necessary to prevent failures in later parts of tests we used to fail too early to notice secondary problems. This passes all the (fixed) MulticastSocketTest tests, causes no regressions in the whole net.AllTests suite, and fixes the user-submitted application that started the investigation. Bug: 1750581
|
b5fc5ecd3fe5315fc2756c0c25adc458cc8c8d91 |
|
20-Nov-2009 |
Elliott Hughes <enh@google.com> |
Rewrite NetworkInterface's JNI for IPv6. The old ioctl SIOCGIFCONF implementation of getNetworkInterfaces only returns IPv4 addresses. Now we've switched everything over to IPv6, that's not good enough. This change (a) implements glibc/BSD-like getifaddrs(3)/freeifaddrs(3) for Android, and (b) rewrites our getNetworkInterfaces to use that method. Of particular note is that we now do more of the work in Java. The JNI hands back a Java equivalent of getifaddrs(3)'s linked list of ifaddrs structs. The new package-private java.net.InterfaceAddress class serves as Java's "struct ifaddrs". The old implementation was also broken: SIOCGIFCONF doesn't actually return interface indexes from the kernel as the old code believed, so we were pulling the address family out of the IPv4 address it returned, leading us to assign the index 2 to all network interfaces. This caused all kinds of weird behavior later. I also had to fix GenericIPMreq so that its interface index field is actually set. The native code gets passed one of these objects when setNetworkInterface is called, so it's kind of important that the object identify which interface it's supposed to correspond to. I've also added missing copyright headers. This fixes all of the harmony tests on the simulator and on the device. It fixes several but not all of the jtreg MulticastSocket and IPv6 tests.
|