On 15 Apr '08, at 5:40 AM, Dominik Wagner tcm wrote:

We here at TheCodingMonkeys like to announce that we published an open-source framework for port mapping today: TCMPortMapper. It's MIT licensed and supports NAT-PMP and UPNP capable routers.

FYI, there's already some support for this built into 10.5. The lowest- level Bonjour API <dns_sd.h> has a new function called DNSServiceNATPortMappingCreate that talks to routers to open ports.

There's a bit of reference documentation, but I don't think anyone's ever specifically pointed out that this exists, so it probably went overlooked among the zillions of other API additions in Leopard.

http://developer.apple.com/documentation/Networking/Reference/DNSServiceDiscovery_CRef/dns_sd/CompositePage.html#/ /apple_ref/c/func/DNSServiceNATPortMappingCreate

By coincidence, just before I left Apple last December I submitted a piece of sample code that's a small Cocoa wrapper around this API; but it never made it to the outside world. I've just pinged ADC to see if they can un-stick it.

Of course the advantages of TheCodingMonkeys' library are
• It supports 10.4
• It allows you to find the identity of the router, for location- awareness
• It comes with full source code
• Cocoa wrapper available today

Conversely, the advantages of using the system API are
• Less code to add to your app
• Implementation will be automatically updated by Apple to fix bugs (always a good thing with networking code!)

I'll notify the list when (if?) the sample code gets released. In the interim I'll gladly offer advice to anyone wanting to work with the Leopard API.

—Jens

Attachment: smime.p7s
Description: S/MIME cryptographic signature

_______________________________________________

Cocoa-dev mailing list ([email protected])

Please do not post admin requests or moderator comments to the list.
Contact the moderators at cocoa-dev-admins(at)lists.apple.com

Help/Unsubscribe/Update your Subscription:
http://lists.apple.com/mailman/options/cocoa-dev/archive%40mail-archive.com

This email sent to [EMAIL PROTECTED]

Reply via email to