While I like option 4 there are some things that need to be checked out.
For instance, will this option work when there is no set up for IPv6 on
the adapter? So far I have not been able to determine that from anything
I have read. I am sure there are some other things to check out as well.

As to separating rxsock from the release, I am unsure about that one. We
need to determine exactly which .Net version we would require and find
out if that version was installed with Windows Vista. If it was, then
there is really no problem as we would not support any Windows version
prior to that anyway. And there would be no need to separate it for
Linux as the needed functionality has been there since Linux supported
Ipv6.

David Ashley

On Mon, 2014-02-10 at 18:00 -0500, Rick McGuire wrote:
> To me, it sounds like option 4 of using IPV4 mapped to IPV6 is the
> cleanest way to implement this.  I'm wondering if we might want to
> take the approach used with oodialog and separate the rxsock library
> from the interpreter release.  The Windows installer could then check
> the prereqs to ensure it can be installed on that system.  I'd hate
> for somebody to be unable to install the entire interpreter because
> their system didn't have the prereqs for something they might not even
> need. 
> 
> 
> Rick
> 
> 
> On Mon, Feb 10, 2014 at 4:28 PM, David Ashley
> <w.david.ash...@gmail.com> wrote:
>         Time for some discussion about how to implement IPv6 for
>         rxsock. There
>         are some fundamental questions about how to implement this in
>         order to
>         keep the library functions compatible between IPv4 and IPv6.
>         The
>         following are some discussion points.
>         
>         1. As always, the Windows implementation of IPv6 will cause us
>         some
>         pain. We really need to use the latest version of .Net in
>         order to get
>         some order of compatibility between Linux and Unix. Early
>         version of
>         Windows IPv6 used something called "dual mode" in order for
>         IPv6 sockets
>         to communicate to IPv4 sockets. This was dropped in later
>         versions
>         of .Net for functionality which closely maps the Lniux
>         implementation.
>         So I think we need to specify the version of .Net that needs
>         to be
>         installed on the Windows client/server so that we do not have
>         to figure
>         out which version of .Net we have and then program around any
>         limitations.
>         
>         2. The really big question is one rsock library or two? There
>         are good
>         reasons for either answer to this question. A single library
>         actually
>         makes it both easier and harder on the user. On the one hand
>         the changes
>         to their source code are smaller with a single library but it
>         also make
>         it the user's responsibility to manage IPv6 and IPv4 sockets
>         if they use
>         both in their program and this can be very hard and is
>         completely
>         unforgiving by the sockets APIs. Two libraries means two code
>         bases for
>         the developers but also allows for optimized code for each
>         library. On
>         the down side the IPv6 library will need new function names so
>         that both
>         libraries can live together in the same ooRexx function name
>         space.
>         
>         3. There are some sockets APIs in IPv4 that should not be used
>         in IPv6.
>         We can program around this without much trouble so the user's
>         code need
>         not change to accommodate the new replacement APIs.
>         
>         4. This last point may be the biggest. It is possible to
>         completely
>         convert an application in the rxsock to an IPv6 application
>         without the
>         users knowledge no matter what kind of network they reside on.
>         In other
>         words, an IPv4 network can be treated as an IPv6 network by
>         the rxsock
>         library without the user's knowledge. It can do this by using
>         a "mapped"
>         interface for the IPv4 addresses. All we need to do is detect
>         an IPv4
>         network address (an x.x.x.x type address) and convert it to a
>         mapped
>         address for IPv6 (an easy function to write). And DNS
>         name-to-address
>         conversion is supplied by the IPv6 APIs (they can supply an
>         IPv6 mapped
>         address). So it is possible for us to completely convert
>         rxsock to use
>         IPv6 only without impact to the user.
>         
>         I got a little long winded here but I want all these points to
>         be
>         considered before we tackle the rxsock conversion. And there
>         may be more
>         that will come up later, but I think these are the ones we
>         need to make
>         decisions on before we get started.
>         
>         Oh, and I deliberately did not specify what my preferences are
>         so that
>         you are not influenced by my knowledge of IPv6, which is
>         really quite
>         basic at the current time.
>         
>         David Ashley
>         
>         
>         
> ------------------------------------------------------------------------------
>         Android apps run on BlackBerry 10
>         Introducing the new BlackBerry 10.2.1 Runtime for Android
>         apps.
>         Now with support for Jelly Bean, Bluetooth, Mapview and more.
>         Get your Android app in front of a whole new audience.  Start
>         now.
>         
> http://pubads.g.doubleclick.net/gampad/clk?id=124407151&iu=/4140/ostg.clktrk
>         _______________________________________________
>         Oorexx-devel mailing list
>         Oorexx-devel@lists.sourceforge.net
>         https://lists.sourceforge.net/lists/listinfo/oorexx-devel
> 
> 
> ------------------------------------------------------------------------------
> Android apps run on BlackBerry 10
> Introducing the new BlackBerry 10.2.1 Runtime for Android apps.
> Now with support for Jelly Bean, Bluetooth, Mapview and more.
> Get your Android app in front of a whole new audience.  Start now.
> http://pubads.g.doubleclick.net/gampad/clk?id=124407151&iu=/4140/ostg.clktrk
> _______________________________________________
> Oorexx-devel mailing list
> Oorexx-devel@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/oorexx-devel



------------------------------------------------------------------------------
Android apps run on BlackBerry 10
Introducing the new BlackBerry 10.2.1 Runtime for Android apps.
Now with support for Jelly Bean, Bluetooth, Mapview and more.
Get your Android app in front of a whole new audience.  Start now.
http://pubads.g.doubleclick.net/gampad/clk?id=124407151&iu=/4140/ostg.clktrk
_______________________________________________
Oorexx-devel mailing list
Oorexx-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/oorexx-devel

Reply via email to