qnx设置ip出现的问题。

使用

ioctl(sock_set_ip,SIOCSIFADDR ,&ifr_set_ip)

以上是借鉴linux设置ip的代码,但在qnx系统中程序会卡死。。。,什么问题?

#include <sys/socket.h> 
#include <sys/ioctl.h> 
#include <stdlib.h> 
#include <stdio.h> 
#include <net/if.h> 
#include <netinet/in.h> 
#include <arpa/inet.h> 


int 
main(void) 
{ 
int s; 
struct ifreq ifreq; 
struct sockaddr_in *sa_in; 

if ((s = socket(AF_INET, SOCK_DGRAM, 0)) == -1) { 
perror("socket"); 
return EXIT_FAILURE; 
} 

memset(&ifreq, 0x00, sizeof(ifreq)); 

strcpy(ifreq.ifr_name, "en0"); 

sa_in = (struct sockaddr_in *)&ifreq.ifr_addr; 

sa_in->sin_family = AF_INET; 
sa_in->sin_len = sizeof(*sa_in); 
sa_in->sin_addr.s_addr = htonl(0x0a000001); 

if (ioctl(s, SIOCSIFADDR, &ifreq) == -1) { 
perror("ioctl"); 
return EXIT_FAILURE; 
} 

return EXIT_SUCCESS; 
}

以上是从英文论坛上找到的,测试可用