Subversion Repositories tpanel

Rev

Rev 465 | Go to most recent revision | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 465 Rev 472
Line 580... Line 580...
580
 
580
 
581
    memset (&hints, 0, sizeof (hints));
581
    memset (&hints, 0, sizeof (hints));
582
    hints.ai_family = AF_INET;
582
    hints.ai_family = AF_INET;
583
    hints.ai_protocol = IPPROTO_TCP;
583
    hints.ai_protocol = IPPROTO_TCP;
584
    hints.ai_socktype = SOCK_STREAM;
584
    hints.ai_socktype = SOCK_STREAM;
-
 
585
#ifdef __POSIX__
585
    hints.ai_flags = AI_CANONNAME | AI_CANONIDN;
586
    hints.ai_flags = AI_CANONNAME | AI_CANONIDN;
-
 
587
#else
-
 
588
    hints.ai_flags = AI_CANONNAME;
-
 
589
#endif
586
    snprintf(sport, sizeof(sport), "%d", port);
590
    snprintf(sport, sizeof(sport), "%d", port);
587
    int ret = 0;
591
    int ret = 0;
588
 
592
 
589
    if ((ret = getaddrinfo (host.c_str(), sport, &hints, &res)) != 0)
593
    if ((ret = getaddrinfo (host.c_str(), sport, &hints, &res)) != 0)
590
    {
594
    {
Line 641... Line 645...
641
        {
645
        {
642
            struct ifreq ninfo;
646
            struct ifreq ninfo;
643
 
647
 
644
            MSG_DEBUG("Device: " << ifa->ifa_name);
648
            MSG_DEBUG("Device: " << ifa->ifa_name);
645
            memset(&ninfo, 0, sizeof(ninfo));
649
            memset(&ninfo, 0, sizeof(ninfo));
-
 
650
#ifdef __POSIX__
646
            strncpy(ninfo.ifr_ifrn.ifrn_name, ifa->ifa_name, IFNAMSIZ);
651
            strncpy(ninfo.ifr_ifrn.ifrn_name, ifa->ifa_name, IFNAMSIZ);
647
            ninfo.ifr_ifrn.ifrn_name[IFNAMSIZ-1] = 0;
652
            ninfo.ifr_ifrn.ifrn_name[IFNAMSIZ-1] = 0;
648
 
653
#else
-
 
654
            strncpy(ninfo.ifr_name, ifa->ifa_name, IFNAMSIZ);
-
 
655
            ninfo.ifr_name[IFNAMSIZ-1] = 0;
-
 
656
#endif
649
            if (ioctl(socket, SIOCGIFNETMASK, &ninfo))
657
            if (ioctl(socket, SIOCGIFNETMASK, &ninfo))
650
            {
658
            {
651
                MSG_ERROR("Error getting netmask: " << strerror(errno));
659
                MSG_ERROR("Error getting netmask: " << strerror(errno));
652
                freeifaddrs(ifaddr);
660
                freeifaddrs(ifaddr);
653
                return false;
661
                return false;