Hi!

This is what I came up with:

@implementation NSNetService (ipv4)

- (NSArray*)ipv4addresses
{
        NSMutableArray * ipv4addresses = [NSMutableArray array];
        NSArray *addresses = [self addresses];
        int aCount = [addresses count];
        char addr[256];
        
        for (int i = 0; i < aCount; i++) {
struct sockaddr *socketAddress = (struct sockaddr *)[[addresses objectAtIndex:i] bytes];
                
                if (socketAddress && socketAddress->sa_family == AF_INET) {
if (inet_ntop(AF_INET, &((struct sockaddr_in *)socketAddress)- >sin_addr, addr, sizeof(addr))) {
                                
uint16_t port = ntohs(((struct sockaddr_in *)socketAddress)- >sin_port);
                                
[ipv4addresses addObject:[NSString stringWithFormat:@"%s:%d", addr, port]];
                        }
                }
        }
        
        return ipv4addresses;
}

@end

Pierre

On 17 Feb 2009, at 21:32, Kyle Sluder wrote:

See the documentation for -[NSNetService addresses].  You can use that
to go from NSNetService -> NSData -> sockaddr_in -> NSURL ->
NSURLConnection.

--Kyle Sluder
_______________________________________________

Cocoa-dev mailing list (Cocoa-dev@lists.apple.com)

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/pierre.bernard%40lists.houdah.com

This email sent to pierre.bern...@lists.houdah.com

- - -
Houdah Software s. à r. l.
http://www.houdah.com

HoudahGeo: One-stop photo geocoding
HoudahSpot: Powerful Spotlight frontend



_______________________________________________

Cocoa-dev mailing list (Cocoa-dev@lists.apple.com)

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 arch...@mail-archive.com

Reply via email to