4,580 Posts served
11,093 Conversations started
- Academic

- Android

- Art, Music, & Animation

- Embedded Computing

- Events

- Game Development

- Graphics & Media

- Intel SW Partner Program

- Intel® AppUp Developer Program

- Manageability & Security

- Mobility

- Open Source

- Parallel Programming

- Performance and Optimization

- Power Efficiency

- Server

- Site News & Announcements

- Software Tools

- Ultrabook

- Association for Computing Machinery TechNews (ACM)
- Go Parallel! (Dr. Dobbs)
- HPCwire (Tabor Communications, Inc.)
- insideHPC (John West)
- Joe Duffy's Weblog (Microsoft)
- Microsoft Parallel Programming Development Center (Microsoft Germany)
- MultiCoreInfo.com
- scalability.org (Scalable Informatics)
- Software Dev Blog (Intel Germany)
- Soft Talk Blog (Intel United Kingdom)
- The Moth (Microsoft)
UPnP and IPv6
By Ylian Saint-hilaire (Intel) (258 posts) on December 4, 2009 at 9:05 am
After working over 12 hour days on average over the last few days, last night I uploaded the latest version of the Developer Tools for UPnP Technologies on opentools.homeip.net. This new version has lots of little fixes but the major change in the code generator (Device Builder) now generated C stacks that have IPv6 support.
In reality, I just took the IPv6 code I already had for the mesh project and pushed it into the UPnP project. It may seem simple but Device Builder generated code that used "int" as an address. Changing everything to sockaddr_in6 is not sufficient, for link local addresses you also need the scope. In UPnP addresses are often parsed out from XML documents, and none of the XML documents have IPv6 scope in them. So you have to figure out what local network interface your using and that the scope from that.
All in all, I am very happy that Mesh and UPnP project now share a lot of code, this will make everything easier to maintain. People will also notice that Device Builder generates a little nicer looking code. The previous version generated what could only be called ugly code. Blank spaces everywhere and code indentation was all over the place. At least now it's somewhat under control.
I did try the core tools on Ubuntu just a little and they don't currently work correctly. I made it so all of the tools would no throw exceptions on launch, so now they show up on the screen, but there is a few hours of work to make them run cleanly.
Enjoy!
Ylian
opentools.homeip.net
Categories: Graphics & Media, Open Source
Tags: IPv6, Tools, upnp
For more complete information about compiler optimizations, see our Optimization Notice.

