[omniORB] What is needed to support IPv6?

Duncan Grisby duncan at grisby.org
Tue Mar 29 17:49:20 BST 2005


On Monday 28 March, "Fox, Charles \(Civ, ARL/CISD\)" wrote:

>   My primary interest is in being able to specify an IPv6 address in a
> corbaloc: URI and of course to have the low-layer ability to
> encode/decode IOR's with IPv6 according to standards and to have
> services that can listen on IPv6 network addresses.  Along with this
> will come extra work in the client/server transport rule filters that
> are part of the ORB.

Thanks for offering to do this.

>   From what I've seen, the src/lib/omniORB/orbcore and
>   src/lib/omniORB/orbcore/tcp seem to have the main files of interest.

Yes, the TCP transport lives in the src/lib/omniORB/orbcore/tcp
directory, so most of the changes you need to do are there.

A very similar version of the code lives in the orbcore/ssl directory
for the ssl transport, which will need to be updated in the same way.

>   From an initial look, it looks like we need a way of turning the
> IPv6 address format into internal representations that work, and from
> some other ORB implementations I've seen the preferred method seems to
> be to enclose the address in [] so the ':' separators are not
> misinterpreted.

The standard way to encode IPv6 addresses in URLs and URIs is with the
[] delimiters. See RFC 2732:

  http://www.ietf.org/rfc/rfc2732.txt

The parser for corbaloc URIs is in src/lib/omniORB/orbcore/uri.cc.  It's
a pretty simple thing, and it shouldn't be too hard to add support for
IPv6 addresses there.

The other thing that will need to be extended is the endpoint
specification syntax that has things like giop:tcp:1.2.3.4:5, to use the
same [] syntax for IPv6.

>   If any of the core developers would like to give advice or are
> interested in this project, feel free to post.  Otherwise I'll start
> plugging at this in my free time and let you know what I can come up
> with.

I'd definitely appreciate any patches you come up with. IPv6 support has
never been asked for before, I guess because it isn't widely used at
all.

Cheers,

Duncan.

-- 
 -- Duncan Grisby         --
  -- duncan at grisby.org     --
   -- http://www.grisby.org --



More information about the omniORB-list mailing list