I've uploaded my current IPv6 code to /tmp/adi-ipv6/.
The checkin was splitted to ease the review.
What has changed?:
OPAL: (changeset 12308)
The OPAL layer can now detect IPv6 addresses on Linux and
Solaris. The functions in if.c were rewritten to handle
the new address structures.
See that I do not use the kernel index for NIC enumeration,
because there is no 1:1 mapping between the index and
I've also switched to CIDR notation (like 10.0.0.1/8 instead
of 10.0.0.1/255.0.0.0) to be able to use the same code
for IPv6 (which needs /0 .. /128)
mca/rds: (changeset 12309)
This is an extended version of the hostfile parser.
It does support IPv6 addresses, but even invalid onces
like 2001::dead::1 ("::" is only allowed once).
I don't care, they get catched by the lookup functions.
mca/oob/tcp: (changeset 12310)
This is "my" implementation of the oob/tcp component.
It is based on the latest version from the v1.2 branch.
The new thread listener isn't already ported to IPv6,
we could do this once the code is in the trunk/v1.2.
As you can see, I've duplicated the listening sockets
and the corresponding events. That's why I also extended
some functions by a new parameter "sd" in order to know
to which socket (either tcp_listen_sd or tcp6_listen_sd)
the function should be applied.
OMPI: (changeset 12311)
A straight-forward implementation very similar to the
oob/tcp code. I haven't tested the --disable-ipv6 case,
this still has to be done. The address selection code
may need some improvements, I currently use my own
function from oob_tcp_addr.c, but it's probably better
to ask is_ipv4_private than using (!is_ipv4_public).
There are still some changes to be done to port it
to MCA_BTL_BASE_VERSION_1_0_1, I haven't noticed this
until the checkin. I'll do this on Friday.
To sum it up: I believe the code is ready to go into v1.2,
but it should be reviewed, tested, extended...
mail: adi_at_[hidden] http://adi.thur.de PGP: v2-key via keyserver
Bessere Qualitätskontrolle bei Hundefutter! Kinder sollten zweimal
jährlich lebensmittelchemisch untersucht werden. (aus de.talk.jokes)