summaryrefslogtreecommitdiff
path: root/noncore/net/networksetup/interface.cpp
Side-by-side diff
Diffstat (limited to 'noncore/net/networksetup/interface.cpp') (more/less context) (ignore whitespace changes)
-rw-r--r--noncore/net/networksetup/interface.cpp16
1 files changed, 11 insertions, 5 deletions
diff --git a/noncore/net/networksetup/interface.cpp b/noncore/net/networksetup/interface.cpp
index 5b21364..1f32093 100644
--- a/noncore/net/networksetup/interface.cpp
+++ b/noncore/net/networksetup/interface.cpp
@@ -2,4 +2,5 @@
#include <qdatetime.h>
#include <qfile.h>
+#include <qdir.h>
#include <qfileinfo.h>
#include <qtextstream.h>
@@ -128,7 +129,12 @@ bool Interface::refresh(){
leaseExpires = "";
dhcp = false;
-
+
+ QString dhcpDirectory(HDCP_INFO_DIR);
+ QDir d(dhcpDirectory);
+ if(!d.exists(dhcpDirectory))
+ dhcpDirectory = "/var/run";
+
// See if we have
- QString dhcpFile(QString(HDCP_INFO_DIR "/dhcpcd-%1.info").arg(interfaceName));
+ QString dhcpFile(QString(dhcpDirectory+"/dhcpcd-%1.info").arg(interfaceName));
// If there is no DHCP information then exit now with no errors.
if(!QFile::exists(dhcpFile)){
@@ -149,6 +155,6 @@ bool Interface::refresh(){
while ( !stream.eof() ) {
line = stream.readLine();
- if(line.contains("DHCPSID="))
- dhcpServerIp = line.mid(8, line.length());
+ if(line.contains("DHCPSIADDR="))
+ dhcpServerIp = line.mid(11, line.length());
if(line.contains("LEASETIME="))
leaseTime = line.mid(10, line.length()).toInt();
@@ -161,5 +167,5 @@ bool Interface::refresh(){
// Get the pid of the deamond
- dhcpFile = (QString(HDCP_INFO_DIR "/dhcpcd-%1.pid").arg(interfaceName));
+ dhcpFile = (QString(dhcpDirectory+"/dhcpcd-%1.pid").arg(interfaceName));
file.setName(dhcpFile);
if (!file.open(IO_ReadOnly)){