summaryrefslogtreecommitdiff
authorbenmeyer <benmeyer>2002-10-17 16:44:30 (UTC)
committer benmeyer <benmeyer>2002-10-17 16:44:30 (UTC)
commit8511273d7122d50ffea27f78ba13ab72af60326d (patch) (unidiff)
treeab7fae876ce1af5665a882b1a53b5f3e240cf4ab
parent18cc7321db186865629a5c4702074211e42b92fd (diff)
downloadopie-8511273d7122d50ffea27f78ba13ab72af60326d.zip
opie-8511273d7122d50ffea27f78ba13ab72af60326d.tar.gz
opie-8511273d7122d50ffea27f78ba13ab72af60326d.tar.bz2
fix interface name bug
Diffstat (more/less context) (ignore whitespace changes)
-rw-r--r--noncore/net/networksetup/interface.cpp16
-rw-r--r--noncore/net/networksetup/interface.h4
-rw-r--r--noncore/net/networksetup/mainwindowimp.cpp7
-rw-r--r--noncore/settings/networksettings/interface.cpp16
-rw-r--r--noncore/settings/networksettings/interface.h4
-rw-r--r--noncore/settings/networksettings/mainwindowimp.cpp7
6 files changed, 26 insertions, 28 deletions
diff --git a/noncore/net/networksetup/interface.cpp b/noncore/net/networksetup/interface.cpp
index 1e01da4..a84b91f 100644
--- a/noncore/net/networksetup/interface.cpp
+++ b/noncore/net/networksetup/interface.cpp
@@ -2,25 +2,25 @@
2#include <qdatetime.h> 2#include <qdatetime.h>
3#include <qfile.h> 3#include <qfile.h>
4#include <qdir.h> 4#include <qdir.h>
5#include <qfileinfo.h> 5#include <qfileinfo.h>
6#include <qtextstream.h> 6#include <qtextstream.h>
7 7
8#define IFCONFIG "/sbin/ifconfig" 8#define IFCONFIG "/sbin/ifconfig"
9#define HDCP_INFO_DIR "/etc/dhcpc" 9#define HDCP_INFO_DIR "/etc/dhcpc"
10 10
11#include <stdio.h> 11#include <stdio.h>
12#include <stdlib.h> 12#include <stdlib.h>
13 13
14Interface::Interface(QObject * parent, const char * name, bool newSatus): QObject(parent, name), status(newSatus), attached(false), hardareName("Unknown"), moduleOwner(NULL), macAddress(""), ip("0.0.0.0"), broadcast(""), subnetMask("0.0.0.0"), dhcp(false){ 14Interface::Interface(QObject * parent, const char * name, bool newSatus): QObject(parent, name), status(newSatus), attached(false), hardwareName("Unknown"), moduleOwner(NULL), macAddress(""), ip("0.0.0.0"), broadcast(""), subnetMask("0.0.0.0"), dhcp(false){
15 refresh(); 15 refresh();
16} 16}
17 17
18/** 18/**
19 * Set status 19 * Set status
20 * @param newStatus - the new status 20 * @param newStatus - the new status
21 * emit updateInterface 21 * emit updateInterface
22 */ 22 */
23void Interface::setStatus(bool newStatus){ 23void Interface::setStatus(bool newStatus){
24 if(status != newStatus){ 24 if(status != newStatus){
25 status = newStatus; 25 status = newStatus;
26 refresh(); 26 refresh();
@@ -34,65 +34,65 @@ void Interface::setStatus(bool newStatus){
34 */ 34 */
35void Interface::setAttached(bool isAttached){ 35void Interface::setAttached(bool isAttached){
36 attached = isAttached; 36 attached = isAttached;
37 emit(updateInterface(this)); 37 emit(updateInterface(this));
38}; 38};
39 39
40/** 40/**
41 * Set Hardware name 41 * Set Hardware name
42 * @param name - the new name 42 * @param name - the new name
43 * emit updateInterface 43 * emit updateInterface
44 */ 44 */
45void Interface::setHardwareName(QString name){ 45void Interface::setHardwareName(QString name){
46 hardareName = name; 46 hardwareName = name;
47 emit(updateInterface(this)); 47 emit(updateInterface(this));
48}; 48};
49 49
50/** 50/**
51 * Set Module owner 51 * Set Module owner
52 * @param owner - the new owner 52 * @param owner - the new owner
53 * emit updateInterface 53 * emit updateInterface
54 */ 54 */
55void Interface::setModuleOwner(Module *owner){ 55void Interface::setModuleOwner(Module *owner){
56 moduleOwner = owner; 56 moduleOwner = owner;
57 emit(updateInterface(this)); 57 emit(updateInterface(this));
58}; 58};
59 59
60 60
61/** 61/**
62 * Try to start the interface. 62 * Try to start the interface.
63 */ 63 */
64void Interface::start(){ 64void Interface::start(){
65 // check to see if we are already running. 65 // check to see if we are already running.
66 if(true == status) 66 if(true == status)
67 return; 67 return;
68 68
69 int ret = system(QString("%1 %2 up").arg(IFCONFIG).arg(interfaceName).latin1()); 69 int ret = system(QString("%1 %2 up").arg(IFCONFIG).arg(this->name()).latin1());
70 // See if it was successfull... 70 // See if it was successfull...
71 if(ret != 0) 71 if(ret != 0)
72 return; 72 return;
73 73
74 status = true; 74 status = true;
75 refresh(); 75 refresh();
76} 76}
77 77
78/** 78/**
79 * Try to stop the interface. 79 * Try to stop the interface.
80 */ 80 */
81void Interface::stop(){ 81void Interface::stop(){
82 // check to see if we are already stopped. 82 // check to see if we are already stopped.
83 if(false == status) 83 if(false == status)
84 return; 84 return;
85 85
86 int ret = system(QString("%1 %2 down").arg(IFCONFIG).arg(interfaceName).latin1()); 86 int ret = system(QString("%1 %2 down").arg(IFCONFIG).arg(this->name()).latin1());
87 if(ret != 0) 87 if(ret != 0)
88 return; 88 return;
89 89
90 status = true; 90 status = true;
91 refresh(); 91 refresh();
92} 92}
93 93
94/** 94/**
95 * Try to restart the interface. 95 * Try to restart the interface.
96 */ 96 */
97void Interface::restart(){ 97void Interface::restart(){
98 stop(); 98 stop();
@@ -110,26 +110,26 @@ bool Interface::refresh(){
110 macAddress = ""; 110 macAddress = "";
111 ip = "0.0.0.0"; 111 ip = "0.0.0.0";
112 subnetMask = "0.0.0.0"; 112 subnetMask = "0.0.0.0";
113 broadcast = ""; 113 broadcast = "";
114 dhcp = false; 114 dhcp = false;
115 dhcpServerIp = ""; 115 dhcpServerIp = "";
116 leaseObtained = ""; 116 leaseObtained = "";
117 leaseExpires = ""; 117 leaseExpires = "";
118 emit(updateInterface(this)); 118 emit(updateInterface(this));
119 return true; 119 return true;
120 } 120 }
121 121
122 QString fileName = QString("/tmp/%1_ifconfig_info").arg(interfaceName); 122 QString fileName = QString("/tmp/%1_ifconfig_info").arg(this->name());
123 int ret = system(QString("%1 %2 > %3").arg(IFCONFIG).arg(interfaceName).arg(fileName).latin1()); 123 int ret = system(QString("%1 %2 > %3").arg(IFCONFIG).arg(this->name()).arg(fileName).latin1());
124 if(ret != 0){ 124 if(ret != 0){
125 qDebug(QString("Interface: Ifconfig return value: %1, is not 0").arg(ret).latin1()); 125 qDebug(QString("Interface: Ifconfig return value: %1, is not 0").arg(ret).latin1());
126 return false; 126 return false;
127 } 127 }
128 128
129 QFile file(fileName); 129 QFile file(fileName);
130 if (!file.open(IO_ReadOnly)){ 130 if (!file.open(IO_ReadOnly)){
131 qDebug(QString("Interface: Can't open file: %1").arg(fileName).latin1()); 131 qDebug(QString("Interface: Can't open file: %1").arg(fileName).latin1());
132 return false; 132 return false;
133 } 133 }
134 134
135 // Set to the defaults 135 // Set to the defaults
@@ -168,25 +168,25 @@ bool Interface::refresh(){
168 // reset DHCP info 168 // reset DHCP info
169 dhcpServerIp = ""; 169 dhcpServerIp = "";
170 leaseObtained = ""; 170 leaseObtained = "";
171 leaseExpires = ""; 171 leaseExpires = "";
172 dhcp = false; 172 dhcp = false;
173 173
174 QString dhcpDirectory(HDCP_INFO_DIR); 174 QString dhcpDirectory(HDCP_INFO_DIR);
175 QDir d(dhcpDirectory); 175 QDir d(dhcpDirectory);
176 if(!d.exists(dhcpDirectory)) 176 if(!d.exists(dhcpDirectory))
177 dhcpDirectory = "/var/run"; 177 dhcpDirectory = "/var/run";
178 178
179 // See if we have 179 // See if we have
180 QString dhcpFile(QString(dhcpDirectory+"/dhcpcd-%1.info").arg(interfaceName)); 180 QString dhcpFile(QString(dhcpDirectory+"/dhcpcd-%1.info").arg(this->name()));
181 // If there is no DHCP information then exit now with no errors. 181 // If there is no DHCP information then exit now with no errors.
182 if(!QFile::exists(dhcpFile)){ 182 if(!QFile::exists(dhcpFile)){
183 emit(updateInterface(this)); 183 emit(updateInterface(this));
184 return true; 184 return true;
185 } 185 }
186 186
187 file.setName(dhcpFile); 187 file.setName(dhcpFile);
188 if (!file.open(IO_ReadOnly)){ 188 if (!file.open(IO_ReadOnly)){
189 qDebug(QString("Interface: Can't open file: %1").arg(dhcpFile).latin1()); 189 qDebug(QString("Interface: Can't open file: %1").arg(dhcpFile).latin1());
190 return false; 190 return false;
191 } 191 }
192 192
@@ -200,25 +200,25 @@ bool Interface::refresh(){
200 if(line.contains("DHCPSIADDR=")) 200 if(line.contains("DHCPSIADDR="))
201 dhcpServerIp = line.mid(11, line.length()); 201 dhcpServerIp = line.mid(11, line.length());
202 if(line.contains("LEASETIME=")) 202 if(line.contains("LEASETIME="))
203 leaseTime = line.mid(10, line.length()).toInt(); 203 leaseTime = line.mid(10, line.length()).toInt();
204 if(line.contains("RENEWALTIME=")) 204 if(line.contains("RENEWALTIME="))
205 renewalTime = line.mid(12, line.length()).toInt(); 205 renewalTime = line.mid(12, line.length()).toInt();
206 } 206 }
207 file.close(); 207 file.close();
208 //qDebug(QString("Interface: leaseTime: %1").arg(leaseTime).latin1()); 208 //qDebug(QString("Interface: leaseTime: %1").arg(leaseTime).latin1());
209 //qDebug(QString("Interface: renewalTime: %1").arg(renewalTime).latin1()); 209 //qDebug(QString("Interface: renewalTime: %1").arg(renewalTime).latin1());
210 210
211 // Get the pid of the deamond 211 // Get the pid of the deamond
212 dhcpFile = (QString(dhcpDirectory+"/dhcpcd-%1.pid").arg(interfaceName)); 212 dhcpFile = (QString(dhcpDirectory+"/dhcpcd-%1.pid").arg(this->name()));
213 file.setName(dhcpFile); 213 file.setName(dhcpFile);
214 if (!file.open(IO_ReadOnly)){ 214 if (!file.open(IO_ReadOnly)){
215 qDebug(QString("Interface: Can't open file: %1").arg(dhcpFile).latin1()); 215 qDebug(QString("Interface: Can't open file: %1").arg(dhcpFile).latin1());
216 return false; 216 return false;
217 } 217 }
218 218
219 int pid = -1; 219 int pid = -1;
220 stream.setDevice( &file ); 220 stream.setDevice( &file );
221 while ( !stream.eof() ) { 221 while ( !stream.eof() ) {
222 line = stream.readLine(); 222 line = stream.readLine();
223 pid = line.toInt(); 223 pid = line.toInt();
224 } 224 }
diff --git a/noncore/net/networksetup/interface.h b/noncore/net/networksetup/interface.h
index 980171a..7943fd6 100644
--- a/noncore/net/networksetup/interface.h
+++ b/noncore/net/networksetup/interface.h
@@ -15,25 +15,25 @@ signals:
15public: 15public:
16 Interface(QObject * parent=0, const char * name= "unknown", bool status = false); 16 Interface(QObject * parent=0, const char * name= "unknown", bool status = false);
17 virtual ~Interface(){}; 17 virtual ~Interface(){};
18 18
19 virtual QString getInterfaceName(){ QString n(this->name()); return n; }; 19 virtual QString getInterfaceName(){ QString n(this->name()); return n; };
20 20
21 virtual bool getStatus(){ return status; }; 21 virtual bool getStatus(){ return status; };
22 virtual void setStatus(bool newStatus); 22 virtual void setStatus(bool newStatus);
23 23
24 virtual bool isAttached(){ return attached; }; 24 virtual bool isAttached(){ return attached; };
25 virtual void setAttached(bool isAttached=false); 25 virtual void setAttached(bool isAttached=false);
26 26
27 virtual QString getHardwareName(){ return hardareName; }; 27 virtual QString getHardwareName(){ return hardwareName; };
28 virtual void setHardwareName(QString name="Unknown"); 28 virtual void setHardwareName(QString name="Unknown");
29 29
30 virtual Module* getModuleOwner(){ return moduleOwner; }; 30 virtual Module* getModuleOwner(){ return moduleOwner; };
31 virtual void setModuleOwner(Module *owner=NULL); 31 virtual void setModuleOwner(Module *owner=NULL);
32 32
33 // inet information. 33 // inet information.
34 QString getMacAddress(){ return macAddress; }; 34 QString getMacAddress(){ return macAddress; };
35 QString getIp(){ return ip; }; 35 QString getIp(){ return ip; };
36 QString getSubnetMask(){ return subnetMask; }; 36 QString getSubnetMask(){ return subnetMask; };
37 QString getBroadcast(){ return broadcast; }; 37 QString getBroadcast(){ return broadcast; };
38 bool isDhcp(){ return dhcp; }; 38 bool isDhcp(){ return dhcp; };
39 QString getDhcpServerIp(){ return dhcpServerIp; }; 39 QString getDhcpServerIp(){ return dhcpServerIp; };
@@ -42,25 +42,25 @@ public:
42 42
43public slots: 43public slots:
44 bool refresh(); 44 bool refresh();
45 void start(); 45 void start();
46 void stop(); 46 void stop();
47 void restart(); 47 void restart();
48 48
49private: 49private:
50 // Interface information 50 // Interface information
51 bool status; 51 bool status;
52 bool attached; 52 bool attached;
53 QString interfaceName; 53 QString interfaceName;
54 QString hardareName; 54 QString hardwareName;
55 Module *moduleOwner; 55 Module *moduleOwner;
56 56
57 // Network information 57 // Network information
58 QString macAddress; 58 QString macAddress;
59 QString ip; 59 QString ip;
60 QString broadcast; 60 QString broadcast;
61 QString subnetMask; 61 QString subnetMask;
62 bool dhcp; 62 bool dhcp;
63 QString dhcpServerIp; 63 QString dhcpServerIp;
64 QString leaseObtained; 64 QString leaseObtained;
65 QString leaseExpires; 65 QString leaseExpires;
66 66
diff --git a/noncore/net/networksetup/mainwindowimp.cpp b/noncore/net/networksetup/mainwindowimp.cpp
index 117bac1..a446d29 100644
--- a/noncore/net/networksetup/mainwindowimp.cpp
+++ b/noncore/net/networksetup/mainwindowimp.cpp
@@ -299,47 +299,46 @@ void MainWindowImp::jobDone(KProcess *process){
299 QString line; 299 QString line;
300 while ( !stream.eof() ) { 300 while ( !stream.eof() ) {
301 line = stream.readLine(); 301 line = stream.readLine();
302 int space = line.find(" "); 302 int space = line.find(" ");
303 if(space > 1){ 303 if(space > 1){
304 // We have found an interface 304 // We have found an interface
305 QString interfaceName = line.mid(0, space); 305 QString interfaceName = line.mid(0, space);
306 Interface *i; 306 Interface *i;
307 // We have found an interface 307 // We have found an interface
308 //qDebug(QString("MainWindowImp: Found Interface: %1").arg(line).latin1()); 308 //qDebug(QString("MainWindowImp: Found Interface: %1").arg(line).latin1());
309 // See if we already have it 309 // See if we already have it
310 if(interfaceNames.find(interfaceName) == interfaceNames.end()){ 310 if(interfaceNames.find(interfaceName) == interfaceNames.end()){
311 if(fileName == TEMP_ALL) 311 if(fileName == TEMP_ALL)
312 i = new Interface(this, interfaceName, false); 312 i = new Interface(this, interfaceName, false);
313 else 313 else
314 i = new Interface(this, interfaceName, true); 314 i = new Interface(this, interfaceName, true);
315 i->setAttached(true); 315 i->setAttached(true);
316 316
317 QString hardName = "Ethernet"; 317 QString hardName = "Ethernet";
318 int hardwareName = line.find("Link encap:"); 318 int hardwareName = line.find("Link encap:");
319 int macAddress = line.find("HWaddr"); 319 int macAddress = line.find("HWaddr");
320 if(macAddress == -1) 320 if(macAddress == -1)
321 macAddress = line.length(); 321 macAddress = line.length();
322 if(hardwareName != -1) 322 if(hardwareName != -1)
323 i->setHardwareName(line.mid(hardwareName+11, macAddress-(hardwareName+11)) + QString(" (%1)").arg(i->getInterfaceName())); 323 i->setHardwareName(line.mid(hardwareName+11, macAddress-(hardwareName+11)) + QString(" (%1)").arg(i->getInterfaceName()));
324 324
325 interfaceNames.insert(i->getInterfaceName(), i); 325 interfaceNames.insert(i->getInterfaceName(), i);
326 updateInterface(i); 326 updateInterface(i);
327 connect(i, SIGNAL(updateInterface(Interface *)), this, SLOT(updateInterface(Interface *))); 327 connect(i, SIGNAL(updateInterface(Interface *)), this, SLOT(updateInterface(Interface *)));
328 } 328 }
329 // It was an interface we already had. 329 // It was an interface we already had.
330 else{ 330 else{
331 i = interfaceNames[interfaceName];
332 if(fileName != TEMP_ALL) 331 if(fileName != TEMP_ALL)
333 i->setStatus(true); 332 (interfaceNames[interfaceName])->setStatus(true);
334 } 333 }
335 } 334 }
336 } 335 }
337 file.close(); 336 file.close();
338 QFile::remove(fileName); 337 QFile::remove(fileName);
339 338
340 if(threads.count() == 0){ 339 if(threads.count() == 0){
341 Interfaces i; 340 Interfaces i;
342 QStringList list = i.getInterfaceList(); 341 QStringList list = i.getInterfaceList();
343 QMap<QString, Interface*>::Iterator it; 342 QMap<QString, Interface*>::Iterator it;
344 for ( QStringList::Iterator ni = list.begin(); ni != list.end(); ++ni ) { 343 for ( QStringList::Iterator ni = list.begin(); ni != list.end(); ++ni ) {
345 bool found = false; 344 bool found = false;
@@ -389,25 +388,25 @@ void MainWindowImp::updateInterface(Interface *i){
389 // Update the icons and information 388 // Update the icons and information
390 item->setPixmap(0, (Resource::loadPixmap(i->getStatus() ? "up": "down"))); 389 item->setPixmap(0, (Resource::loadPixmap(i->getStatus() ? "up": "down")));
391 390
392 QString typeName = "lan"; 391 QString typeName = "lan";
393 if(i->getHardwareName().contains("Local Loopback")) 392 if(i->getHardwareName().contains("Local Loopback"))
394 typeName = "lo"; 393 typeName = "lo";
395 if(i->getInterfaceName().contains("irda")) 394 if(i->getInterfaceName().contains("irda"))
396 typeName = "irda"; 395 typeName = "irda";
397 if(i->getInterfaceName().contains("wlan")) 396 if(i->getInterfaceName().contains("wlan"))
398 typeName = "wlan"; 397 typeName = "wlan";
399 if(i->getInterfaceName().contains("usb")) 398 if(i->getInterfaceName().contains("usb"))
400 typeName = "usb"; 399 typeName = "usb";
401 400
402 if(!i->isAttached()) 401 if(!i->isAttached())
403 typeName = "connect_no"; 402 typeName = "connect_no";
404 // Actually try to use the Module 403 // Actually try to use the Module
405 if(i->getModuleOwner() != NULL) 404 if(i->getModuleOwner() != NULL)
406 typeName = i->getModuleOwner()->getPixmapName(i); 405 typeName = i->getModuleOwner()->getPixmapName(i);
407 406
408 item->setPixmap(1, (Resource::loadPixmap(typeName))); 407 item->setPixmap(1, (Resource::loadPixmap(typeName)));
409 item->setText(2, i->getHardwareName()); 408 item->setText(2, i->getHardwareName());
410 item->setText(3, (i->getStatus()) ? i->getIp() : QString("")); 409 item->setText(3, (i->getStatus()) ? i->getIp() : QString(""));
411} 410}
412 411
413void MainWindowImp::newProfileChanged(const QString& newText){ 412void MainWindowImp::newProfileChanged(const QString& newText){
diff --git a/noncore/settings/networksettings/interface.cpp b/noncore/settings/networksettings/interface.cpp
index 1e01da4..a84b91f 100644
--- a/noncore/settings/networksettings/interface.cpp
+++ b/noncore/settings/networksettings/interface.cpp
@@ -2,25 +2,25 @@
2#include <qdatetime.h> 2#include <qdatetime.h>
3#include <qfile.h> 3#include <qfile.h>
4#include <qdir.h> 4#include <qdir.h>
5#include <qfileinfo.h> 5#include <qfileinfo.h>
6#include <qtextstream.h> 6#include <qtextstream.h>
7 7
8#define IFCONFIG "/sbin/ifconfig" 8#define IFCONFIG "/sbin/ifconfig"
9#define HDCP_INFO_DIR "/etc/dhcpc" 9#define HDCP_INFO_DIR "/etc/dhcpc"
10 10
11#include <stdio.h> 11#include <stdio.h>
12#include <stdlib.h> 12#include <stdlib.h>
13 13
14Interface::Interface(QObject * parent, const char * name, bool newSatus): QObject(parent, name), status(newSatus), attached(false), hardareName("Unknown"), moduleOwner(NULL), macAddress(""), ip("0.0.0.0"), broadcast(""), subnetMask("0.0.0.0"), dhcp(false){ 14Interface::Interface(QObject * parent, const char * name, bool newSatus): QObject(parent, name), status(newSatus), attached(false), hardwareName("Unknown"), moduleOwner(NULL), macAddress(""), ip("0.0.0.0"), broadcast(""), subnetMask("0.0.0.0"), dhcp(false){
15 refresh(); 15 refresh();
16} 16}
17 17
18/** 18/**
19 * Set status 19 * Set status
20 * @param newStatus - the new status 20 * @param newStatus - the new status
21 * emit updateInterface 21 * emit updateInterface
22 */ 22 */
23void Interface::setStatus(bool newStatus){ 23void Interface::setStatus(bool newStatus){
24 if(status != newStatus){ 24 if(status != newStatus){
25 status = newStatus; 25 status = newStatus;
26 refresh(); 26 refresh();
@@ -34,65 +34,65 @@ void Interface::setStatus(bool newStatus){
34 */ 34 */
35void Interface::setAttached(bool isAttached){ 35void Interface::setAttached(bool isAttached){
36 attached = isAttached; 36 attached = isAttached;
37 emit(updateInterface(this)); 37 emit(updateInterface(this));
38}; 38};
39 39
40/** 40/**
41 * Set Hardware name 41 * Set Hardware name
42 * @param name - the new name 42 * @param name - the new name
43 * emit updateInterface 43 * emit updateInterface
44 */ 44 */
45void Interface::setHardwareName(QString name){ 45void Interface::setHardwareName(QString name){
46 hardareName = name; 46 hardwareName = name;
47 emit(updateInterface(this)); 47 emit(updateInterface(this));
48}; 48};
49 49
50/** 50/**
51 * Set Module owner 51 * Set Module owner
52 * @param owner - the new owner 52 * @param owner - the new owner
53 * emit updateInterface 53 * emit updateInterface
54 */ 54 */
55void Interface::setModuleOwner(Module *owner){ 55void Interface::setModuleOwner(Module *owner){
56 moduleOwner = owner; 56 moduleOwner = owner;
57 emit(updateInterface(this)); 57 emit(updateInterface(this));
58}; 58};
59 59
60 60
61/** 61/**
62 * Try to start the interface. 62 * Try to start the interface.
63 */ 63 */
64void Interface::start(){ 64void Interface::start(){
65 // check to see if we are already running. 65 // check to see if we are already running.
66 if(true == status) 66 if(true == status)
67 return; 67 return;
68 68
69 int ret = system(QString("%1 %2 up").arg(IFCONFIG).arg(interfaceName).latin1()); 69 int ret = system(QString("%1 %2 up").arg(IFCONFIG).arg(this->name()).latin1());
70 // See if it was successfull... 70 // See if it was successfull...
71 if(ret != 0) 71 if(ret != 0)
72 return; 72 return;
73 73
74 status = true; 74 status = true;
75 refresh(); 75 refresh();
76} 76}
77 77
78/** 78/**
79 * Try to stop the interface. 79 * Try to stop the interface.
80 */ 80 */
81void Interface::stop(){ 81void Interface::stop(){
82 // check to see if we are already stopped. 82 // check to see if we are already stopped.
83 if(false == status) 83 if(false == status)
84 return; 84 return;
85 85
86 int ret = system(QString("%1 %2 down").arg(IFCONFIG).arg(interfaceName).latin1()); 86 int ret = system(QString("%1 %2 down").arg(IFCONFIG).arg(this->name()).latin1());
87 if(ret != 0) 87 if(ret != 0)
88 return; 88 return;
89 89
90 status = true; 90 status = true;
91 refresh(); 91 refresh();
92} 92}
93 93
94/** 94/**
95 * Try to restart the interface. 95 * Try to restart the interface.
96 */ 96 */
97void Interface::restart(){ 97void Interface::restart(){
98 stop(); 98 stop();
@@ -110,26 +110,26 @@ bool Interface::refresh(){
110 macAddress = ""; 110 macAddress = "";
111 ip = "0.0.0.0"; 111 ip = "0.0.0.0";
112 subnetMask = "0.0.0.0"; 112 subnetMask = "0.0.0.0";
113 broadcast = ""; 113 broadcast = "";
114 dhcp = false; 114 dhcp = false;
115 dhcpServerIp = ""; 115 dhcpServerIp = "";
116 leaseObtained = ""; 116 leaseObtained = "";
117 leaseExpires = ""; 117 leaseExpires = "";
118 emit(updateInterface(this)); 118 emit(updateInterface(this));
119 return true; 119 return true;
120 } 120 }
121 121
122 QString fileName = QString("/tmp/%1_ifconfig_info").arg(interfaceName); 122 QString fileName = QString("/tmp/%1_ifconfig_info").arg(this->name());
123 int ret = system(QString("%1 %2 > %3").arg(IFCONFIG).arg(interfaceName).arg(fileName).latin1()); 123 int ret = system(QString("%1 %2 > %3").arg(IFCONFIG).arg(this->name()).arg(fileName).latin1());
124 if(ret != 0){ 124 if(ret != 0){
125 qDebug(QString("Interface: Ifconfig return value: %1, is not 0").arg(ret).latin1()); 125 qDebug(QString("Interface: Ifconfig return value: %1, is not 0").arg(ret).latin1());
126 return false; 126 return false;
127 } 127 }
128 128
129 QFile file(fileName); 129 QFile file(fileName);
130 if (!file.open(IO_ReadOnly)){ 130 if (!file.open(IO_ReadOnly)){
131 qDebug(QString("Interface: Can't open file: %1").arg(fileName).latin1()); 131 qDebug(QString("Interface: Can't open file: %1").arg(fileName).latin1());
132 return false; 132 return false;
133 } 133 }
134 134
135 // Set to the defaults 135 // Set to the defaults
@@ -168,25 +168,25 @@ bool Interface::refresh(){
168 // reset DHCP info 168 // reset DHCP info
169 dhcpServerIp = ""; 169 dhcpServerIp = "";
170 leaseObtained = ""; 170 leaseObtained = "";
171 leaseExpires = ""; 171 leaseExpires = "";
172 dhcp = false; 172 dhcp = false;
173 173
174 QString dhcpDirectory(HDCP_INFO_DIR); 174 QString dhcpDirectory(HDCP_INFO_DIR);
175 QDir d(dhcpDirectory); 175 QDir d(dhcpDirectory);
176 if(!d.exists(dhcpDirectory)) 176 if(!d.exists(dhcpDirectory))
177 dhcpDirectory = "/var/run"; 177 dhcpDirectory = "/var/run";
178 178
179 // See if we have 179 // See if we have
180 QString dhcpFile(QString(dhcpDirectory+"/dhcpcd-%1.info").arg(interfaceName)); 180 QString dhcpFile(QString(dhcpDirectory+"/dhcpcd-%1.info").arg(this->name()));
181 // If there is no DHCP information then exit now with no errors. 181 // If there is no DHCP information then exit now with no errors.
182 if(!QFile::exists(dhcpFile)){ 182 if(!QFile::exists(dhcpFile)){
183 emit(updateInterface(this)); 183 emit(updateInterface(this));
184 return true; 184 return true;
185 } 185 }
186 186
187 file.setName(dhcpFile); 187 file.setName(dhcpFile);
188 if (!file.open(IO_ReadOnly)){ 188 if (!file.open(IO_ReadOnly)){
189 qDebug(QString("Interface: Can't open file: %1").arg(dhcpFile).latin1()); 189 qDebug(QString("Interface: Can't open file: %1").arg(dhcpFile).latin1());
190 return false; 190 return false;
191 } 191 }
192 192
@@ -200,25 +200,25 @@ bool Interface::refresh(){
200 if(line.contains("DHCPSIADDR=")) 200 if(line.contains("DHCPSIADDR="))
201 dhcpServerIp = line.mid(11, line.length()); 201 dhcpServerIp = line.mid(11, line.length());
202 if(line.contains("LEASETIME=")) 202 if(line.contains("LEASETIME="))
203 leaseTime = line.mid(10, line.length()).toInt(); 203 leaseTime = line.mid(10, line.length()).toInt();
204 if(line.contains("RENEWALTIME=")) 204 if(line.contains("RENEWALTIME="))
205 renewalTime = line.mid(12, line.length()).toInt(); 205 renewalTime = line.mid(12, line.length()).toInt();
206 } 206 }
207 file.close(); 207 file.close();
208 //qDebug(QString("Interface: leaseTime: %1").arg(leaseTime).latin1()); 208 //qDebug(QString("Interface: leaseTime: %1").arg(leaseTime).latin1());
209 //qDebug(QString("Interface: renewalTime: %1").arg(renewalTime).latin1()); 209 //qDebug(QString("Interface: renewalTime: %1").arg(renewalTime).latin1());
210 210
211 // Get the pid of the deamond 211 // Get the pid of the deamond
212 dhcpFile = (QString(dhcpDirectory+"/dhcpcd-%1.pid").arg(interfaceName)); 212 dhcpFile = (QString(dhcpDirectory+"/dhcpcd-%1.pid").arg(this->name()));
213 file.setName(dhcpFile); 213 file.setName(dhcpFile);
214 if (!file.open(IO_ReadOnly)){ 214 if (!file.open(IO_ReadOnly)){
215 qDebug(QString("Interface: Can't open file: %1").arg(dhcpFile).latin1()); 215 qDebug(QString("Interface: Can't open file: %1").arg(dhcpFile).latin1());
216 return false; 216 return false;
217 } 217 }
218 218
219 int pid = -1; 219 int pid = -1;
220 stream.setDevice( &file ); 220 stream.setDevice( &file );
221 while ( !stream.eof() ) { 221 while ( !stream.eof() ) {
222 line = stream.readLine(); 222 line = stream.readLine();
223 pid = line.toInt(); 223 pid = line.toInt();
224 } 224 }
diff --git a/noncore/settings/networksettings/interface.h b/noncore/settings/networksettings/interface.h
index 980171a..7943fd6 100644
--- a/noncore/settings/networksettings/interface.h
+++ b/noncore/settings/networksettings/interface.h
@@ -15,25 +15,25 @@ signals:
15public: 15public:
16 Interface(QObject * parent=0, const char * name= "unknown", bool status = false); 16 Interface(QObject * parent=0, const char * name= "unknown", bool status = false);
17 virtual ~Interface(){}; 17 virtual ~Interface(){};
18 18
19 virtual QString getInterfaceName(){ QString n(this->name()); return n; }; 19 virtual QString getInterfaceName(){ QString n(this->name()); return n; };
20 20
21 virtual bool getStatus(){ return status; }; 21 virtual bool getStatus(){ return status; };
22 virtual void setStatus(bool newStatus); 22 virtual void setStatus(bool newStatus);
23 23
24 virtual bool isAttached(){ return attached; }; 24 virtual bool isAttached(){ return attached; };
25 virtual void setAttached(bool isAttached=false); 25 virtual void setAttached(bool isAttached=false);
26 26
27 virtual QString getHardwareName(){ return hardareName; }; 27 virtual QString getHardwareName(){ return hardwareName; };
28 virtual void setHardwareName(QString name="Unknown"); 28 virtual void setHardwareName(QString name="Unknown");
29 29
30 virtual Module* getModuleOwner(){ return moduleOwner; }; 30 virtual Module* getModuleOwner(){ return moduleOwner; };
31 virtual void setModuleOwner(Module *owner=NULL); 31 virtual void setModuleOwner(Module *owner=NULL);
32 32
33 // inet information. 33 // inet information.
34 QString getMacAddress(){ return macAddress; }; 34 QString getMacAddress(){ return macAddress; };
35 QString getIp(){ return ip; }; 35 QString getIp(){ return ip; };
36 QString getSubnetMask(){ return subnetMask; }; 36 QString getSubnetMask(){ return subnetMask; };
37 QString getBroadcast(){ return broadcast; }; 37 QString getBroadcast(){ return broadcast; };
38 bool isDhcp(){ return dhcp; }; 38 bool isDhcp(){ return dhcp; };
39 QString getDhcpServerIp(){ return dhcpServerIp; }; 39 QString getDhcpServerIp(){ return dhcpServerIp; };
@@ -42,25 +42,25 @@ public:
42 42
43public slots: 43public slots:
44 bool refresh(); 44 bool refresh();
45 void start(); 45 void start();
46 void stop(); 46 void stop();
47 void restart(); 47 void restart();
48 48
49private: 49private:
50 // Interface information 50 // Interface information
51 bool status; 51 bool status;
52 bool attached; 52 bool attached;
53 QString interfaceName; 53 QString interfaceName;
54 QString hardareName; 54 QString hardwareName;
55 Module *moduleOwner; 55 Module *moduleOwner;
56 56
57 // Network information 57 // Network information
58 QString macAddress; 58 QString macAddress;
59 QString ip; 59 QString ip;
60 QString broadcast; 60 QString broadcast;
61 QString subnetMask; 61 QString subnetMask;
62 bool dhcp; 62 bool dhcp;
63 QString dhcpServerIp; 63 QString dhcpServerIp;
64 QString leaseObtained; 64 QString leaseObtained;
65 QString leaseExpires; 65 QString leaseExpires;
66 66
diff --git a/noncore/settings/networksettings/mainwindowimp.cpp b/noncore/settings/networksettings/mainwindowimp.cpp
index 117bac1..a446d29 100644
--- a/noncore/settings/networksettings/mainwindowimp.cpp
+++ b/noncore/settings/networksettings/mainwindowimp.cpp
@@ -299,47 +299,46 @@ void MainWindowImp::jobDone(KProcess *process){
299 QString line; 299 QString line;
300 while ( !stream.eof() ) { 300 while ( !stream.eof() ) {
301 line = stream.readLine(); 301 line = stream.readLine();
302 int space = line.find(" "); 302 int space = line.find(" ");
303 if(space > 1){ 303 if(space > 1){
304 // We have found an interface 304 // We have found an interface
305 QString interfaceName = line.mid(0, space); 305 QString interfaceName = line.mid(0, space);
306 Interface *i; 306 Interface *i;
307 // We have found an interface 307 // We have found an interface
308 //qDebug(QString("MainWindowImp: Found Interface: %1").arg(line).latin1()); 308 //qDebug(QString("MainWindowImp: Found Interface: %1").arg(line).latin1());
309 // See if we already have it 309 // See if we already have it
310 if(interfaceNames.find(interfaceName) == interfaceNames.end()){ 310 if(interfaceNames.find(interfaceName) == interfaceNames.end()){
311 if(fileName == TEMP_ALL) 311 if(fileName == TEMP_ALL)
312 i = new Interface(this, interfaceName, false); 312 i = new Interface(this, interfaceName, false);
313 else 313 else
314 i = new Interface(this, interfaceName, true); 314 i = new Interface(this, interfaceName, true);
315 i->setAttached(true); 315 i->setAttached(true);
316 316
317 QString hardName = "Ethernet"; 317 QString hardName = "Ethernet";
318 int hardwareName = line.find("Link encap:"); 318 int hardwareName = line.find("Link encap:");
319 int macAddress = line.find("HWaddr"); 319 int macAddress = line.find("HWaddr");
320 if(macAddress == -1) 320 if(macAddress == -1)
321 macAddress = line.length(); 321 macAddress = line.length();
322 if(hardwareName != -1) 322 if(hardwareName != -1)
323 i->setHardwareName(line.mid(hardwareName+11, macAddress-(hardwareName+11)) + QString(" (%1)").arg(i->getInterfaceName())); 323 i->setHardwareName(line.mid(hardwareName+11, macAddress-(hardwareName+11)) + QString(" (%1)").arg(i->getInterfaceName()));
324 324
325 interfaceNames.insert(i->getInterfaceName(), i); 325 interfaceNames.insert(i->getInterfaceName(), i);
326 updateInterface(i); 326 updateInterface(i);
327 connect(i, SIGNAL(updateInterface(Interface *)), this, SLOT(updateInterface(Interface *))); 327 connect(i, SIGNAL(updateInterface(Interface *)), this, SLOT(updateInterface(Interface *)));
328 } 328 }
329 // It was an interface we already had. 329 // It was an interface we already had.
330 else{ 330 else{
331 i = interfaceNames[interfaceName];
332 if(fileName != TEMP_ALL) 331 if(fileName != TEMP_ALL)
333 i->setStatus(true); 332 (interfaceNames[interfaceName])->setStatus(true);
334 } 333 }
335 } 334 }
336 } 335 }
337 file.close(); 336 file.close();
338 QFile::remove(fileName); 337 QFile::remove(fileName);
339 338
340 if(threads.count() == 0){ 339 if(threads.count() == 0){
341 Interfaces i; 340 Interfaces i;
342 QStringList list = i.getInterfaceList(); 341 QStringList list = i.getInterfaceList();
343 QMap<QString, Interface*>::Iterator it; 342 QMap<QString, Interface*>::Iterator it;
344 for ( QStringList::Iterator ni = list.begin(); ni != list.end(); ++ni ) { 343 for ( QStringList::Iterator ni = list.begin(); ni != list.end(); ++ni ) {
345 bool found = false; 344 bool found = false;
@@ -389,25 +388,25 @@ void MainWindowImp::updateInterface(Interface *i){
389 // Update the icons and information 388 // Update the icons and information
390 item->setPixmap(0, (Resource::loadPixmap(i->getStatus() ? "up": "down"))); 389 item->setPixmap(0, (Resource::loadPixmap(i->getStatus() ? "up": "down")));
391 390
392 QString typeName = "lan"; 391 QString typeName = "lan";
393 if(i->getHardwareName().contains("Local Loopback")) 392 if(i->getHardwareName().contains("Local Loopback"))
394 typeName = "lo"; 393 typeName = "lo";
395 if(i->getInterfaceName().contains("irda")) 394 if(i->getInterfaceName().contains("irda"))
396 typeName = "irda"; 395 typeName = "irda";
397 if(i->getInterfaceName().contains("wlan")) 396 if(i->getInterfaceName().contains("wlan"))
398 typeName = "wlan"; 397 typeName = "wlan";
399 if(i->getInterfaceName().contains("usb")) 398 if(i->getInterfaceName().contains("usb"))
400 typeName = "usb"; 399 typeName = "usb";
401 400
402 if(!i->isAttached()) 401 if(!i->isAttached())
403 typeName = "connect_no"; 402 typeName = "connect_no";
404 // Actually try to use the Module 403 // Actually try to use the Module
405 if(i->getModuleOwner() != NULL) 404 if(i->getModuleOwner() != NULL)
406 typeName = i->getModuleOwner()->getPixmapName(i); 405 typeName = i->getModuleOwner()->getPixmapName(i);
407 406
408 item->setPixmap(1, (Resource::loadPixmap(typeName))); 407 item->setPixmap(1, (Resource::loadPixmap(typeName)));
409 item->setText(2, i->getHardwareName()); 408 item->setText(2, i->getHardwareName());
410 item->setText(3, (i->getStatus()) ? i->getIp() : QString("")); 409 item->setText(3, (i->getStatus()) ? i->getIp() : QString(""));
411} 410}
412 411
413void MainWindowImp::newProfileChanged(const QString& newText){ 412void MainWindowImp::newProfileChanged(const QString& newText){