Timothy Stack wrote:
Now NetworkInterface uses a vector for keeping network interfaces. So both [I, {A1}] and [I, {A2}] are stored. This is why both [I, {A1}] and [I, {A2}] are returned now.
I think we should somehow create [I, {A1, A2}] from ([I, {A1}], [I, {A2}]).
Sorry, I just can't help myself... The original JanosVM implementation of this did "the right thing", i think. It used a hash table to store each network interface and then added the ip addresses to the vector in the object. Lets not overwrite functioning code with broken stuff, okie... *grumble*
tim
Keep calm. ;) First let's rewrite something solid using HashTable. Then we'll try to push it forward on classpath, hoping that that time they will accept the modification. :)
I've talked about it with Michael Koch on IRC on #kaffe, who's familiar with the gcj side of the networking implementation. It seems that gcj does not support IPv6 at all, and noone else using Classpath apparently does, so the implementation in Classpath has not really been exposed to such an interesting usage case (one NetworkInterface name, two InetAddresses), thus it actually is broken in that respect.
I'll write up some code that 'condenses' the NativeInterfaces that are received from the native method, and I hope that will fix the breakage.
cheers, dalibor topic
_______________________________________________ kaffe mailing list [EMAIL PROTECTED] http://kaffe.org/cgi-bin/mailman/listinfo/kaffe