/*************************************************
Function: get_ipaddr
Description: get ip addr
Input: net_dev ipaddr
Output:
Return: 0 sucess -1 failed
Others:
*************************************************/
int get_ipaddr(const char *net_dev, char* ipaddr)
{
struct ifreq ifr;
int fd = 0;
int ret = -1;
struct sockaddr_in *pAddr;
if((NULL == net_dev) || (NULL == ipaddr))
{
dbg_log_print(LOG_ERR, "illegal call function SetGeneralIP!");
return -1;
}
if ((fd = socket(AF_INET,SOCK_DGRAM,0)) < 0)
{
dbg_log_print(LOG_ERR,"open socket failed");
return -1;
}
memset(&ifr,0,sizeof(ifr));
strcpy(ifr.ifr_name, net_dev);
if (ioctl(fd, SIOCGIFADDR, &ifr) < 0)
{
//dbg_log_print(LOG_ERR,"SIOCGIFADDR socket failed %s ", strerror( errno ));
close(fd);
return -1;
}
pAddr =
C函数获取IP地址
最新推荐文章于 2021-05-20 01:45:04 发布