$NetBSD: patch-ad,v 1.2 2003/01/02 09:12:30 skrll Exp $ --- kppp/pppstats.cpp.orig Mon Dec 16 03:02:45 2002 +++ kppp/pppstats.cpp @@ -218,27 +218,29 @@ bool PPPStats::initStats() { strlcpy(ifr.ifr_name, unitName, sizeof(ifr.ifr_name)); + local_ip_address = ""; if (ioctl(s, SIOCGIFADDR, &ifr) < 0) { - } + kdDebug(5002) << "Cannot get ip address" << endl; + } else { + sinp = (struct sockaddr_in*)&ifr.ifr_addr; - sinp = (struct sockaddr_in*)&ifr.ifr_addr; + if(sinp->sin_addr.s_addr) + local_ip_address = inet_ntoa(sinp->sin_addr); - if(sinp->sin_addr.s_addr) - local_ip_address = inet_ntoa(sinp->sin_addr); - else - local_ip_address = ""; - kdDebug(5002) << "Local IP: " << local_ip_address << endl; + kdDebug(5002) << "Local IP: " << local_ip_address << endl; + } - if (ioctl(s, SIOCGIFDSTADDR, &ifr) < 0) - ; + remote_ip_address = ""; + if (ioctl(s, SIOCGIFDSTADDR, &ifr) < 0) { + kdDebug(5002) << "Cannot get remote ip address" << endl; + } else { + sinp = (struct sockaddr_in*)&ifr.ifr_dstaddr; - sinp = (struct sockaddr_in*)&ifr.ifr_dstaddr; + if(sinp->sin_addr.s_addr) + remote_ip_address = inet_ntoa(sinp->sin_addr); - if(sinp->sin_addr.s_addr) - remote_ip_address = inet_ntoa(sinp->sin_addr); - else - remote_ip_address = ""; - kdDebug(5002) << "Remote IP: " << remote_ip_address << endl; + kdDebug(5002) << "Remote IP: " << remote_ip_address << endl; + } return true;