> From: Colm MacCarthaigh <[EMAIL PROTECTED]> > Really the only remaining portability issue is the default behaviour of > bind(::) (without any specific options set).
In Symbian OS API, see http://www.symbian.com/developer/techlib/v70docs/SDL_v7.0/doc_source/reference/cpp/Tcpip/ Bind to "any" (for incoming) has 3 choices 1) Bind(::) - accept only IPv6 2) Bind(0.0.0.0) - accept only IPv6 3) Bind() - accept both IPv4 and IPv6 The case (3) may need some explanation: in Symbian the adddress and port stored in class named TInetAddr (see the above link). This class contains the address family, which can be (1) KAFInet6 (~ AF_INET6) (2) KAFInet (~ AF_INET) (3) 0 ( unspecified) In Symbian environment, application has really no need to explicitly specify IPv4 or IPv6, and (3) is the best way to code. But, if someone insists on doing things the "hard way", they can limit their applications using either (1) or (2). Above really has nothing to do with IPv4 mapped addresses. In symbian, IPv4 address can be stored into TInetAddr either "traditionally" or as IPv4 mapped format. They are *totally* equivalent, there is no semantic difference at all. They are just two different formats for the same thing. However, IPV4 mapped format is important tool to make it possible to share code between IPv4 and IPv6. Using IP4 Mapped addresses allows to write single version of code that works as is for both IPv4 and IPv6. The Symbian stack is full hybrid IPv4/IPv6 stack. As installed base, the number of devices is rather large. But, then, they are small and light. Perhaps it's not as large as kame+unix/linux if you compute installed base in kilograms.. :-) -------------------------------------------------------------------- IETF IPv6 working group mailing list ipv6@ietf.org Administrative Requests: https://www1.ietf.org/mailman/listinfo/ipv6 --------------------------------------------------------------------