在iOS中,'sysctlbyname("net.inet.tcp.pcblist", buf, &len, 0, 0)'返回的buf类型是什么?

4
我想要在我的iPhone上获取TCP连接列表。我在以下链接中找到了相关代码:
如何通过Objective-C在iPhone上获取TCP / UDP打开端口列表?
如何列出iOS 4中的TCP / UDP连接
size_t len = 0;
if (sysctlbyname("net.inet.tcp.pcblist", 0, &len, 0, 0) < 0) {
    perror("sysctlbyname");
} else {
    char *buf = malloc(len);
    sysctlbyname("net.inet.tcp.pcblist", buf, &len, 0, 0);
    NSData *data = [NSData dataWithBytesNoCopy:buf length:len];
    NSLog(@"data = %@", data);
}

但是我无法将变量'buf'解释为字符串,因为它指向某个结构体而不是字符串。 buf的类型可能是什么? 有人可以帮助我吗...

提前感谢!!

1个回答

3

这里的buf是一个结构体类型xinpgen。定义了两个指向xinpgen结构体的指针oxig和xig,并将它们都指向buf所在的内存地址。


@Tanu 你需要将这个答案标记为最佳答案,因为它是正确的答案 (: - frankish
在构建 iOS 设备时,似乎无法使用此类型。 - user102008

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接