4 files changed, 7 insertions, 0 deletions
diff --git a/noncore/settings/networksettings/interfaces/interface.cpp b/noncore/settings/networksettings/interfaces/interface.cpp index d2b106a..46f3e19 100644 --- a/noncore/settings/networksettings/interfaces/interface.cpp +++ b/noncore/settings/networksettings/interfaces/interface.cpp | |||
@@ -1,70 +1,73 @@ | |||
1 | /** | 1 | /** |
2 | * $Author$ | 2 | * $Author$ |
3 | * $Date$ | 3 | * $Date$ |
4 | */ | 4 | */ |
5 | 5 | ||
6 | #include "interface.h" | 6 | #include "interface.h" |
7 | |||
8 | #include <opie2/odebug.h> | ||
9 | |||
7 | #include <qdatetime.h> | 10 | #include <qdatetime.h> |
8 | #include <qfile.h> | 11 | #include <qfile.h> |
9 | #include <qdir.h> | 12 | #include <qdir.h> |
10 | #include <qfileinfo.h> | 13 | #include <qfileinfo.h> |
11 | #include <qtextstream.h> | 14 | #include <qtextstream.h> |
12 | 15 | ||
13 | #define IFCONFIG "/sbin/ifconfig" | 16 | #define IFCONFIG "/sbin/ifconfig" |
14 | #define DHCP_INFO_DIR "/etc/dhcpc" | 17 | #define DHCP_INFO_DIR "/etc/dhcpc" |
15 | 18 | ||
16 | #include <stdio.h> | 19 | #include <stdio.h> |
17 | #include <stdlib.h> | 20 | #include <stdlib.h> |
18 | 21 | ||
19 | Interface::Interface(QObject * parent, const char * name, bool newSatus): QObject(parent, name), hardwareName("Unknown"), moduleOwner(NULL), status(newSatus), attached(false), dhcp(false), macAddress(""), ip("0.0.0.0"), broadcast(""), subnetMask("0.0.0.0"){ | 22 | Interface::Interface(QObject * parent, const char * name, bool newSatus): QObject(parent, name), hardwareName("Unknown"), moduleOwner(NULL), status(newSatus), attached(false), dhcp(false), macAddress(""), ip("0.0.0.0"), broadcast(""), subnetMask("0.0.0.0"){ |
20 | refresh(); | 23 | refresh(); |
21 | } | 24 | } |
22 | 25 | ||
23 | /** | 26 | /** |
24 | * Set status | 27 | * Set status |
25 | * @param newStatus - the new status | 28 | * @param newStatus - the new status |
26 | * emit updateInterface | 29 | * emit updateInterface |
27 | */ | 30 | */ |
28 | void Interface::setStatus(bool newStatus){ | 31 | void Interface::setStatus(bool newStatus){ |
29 | if(status != newStatus){ | 32 | if(status != newStatus){ |
30 | status = newStatus; | 33 | status = newStatus; |
31 | refresh(); | 34 | refresh(); |
32 | } | 35 | } |
33 | }; | 36 | }; |
34 | 37 | ||
35 | /** | 38 | /** |
36 | * Set if attached or not (802.11 card pulled out for example) | 39 | * Set if attached or not (802.11 card pulled out for example) |
37 | * @param isAttached - if attached | 40 | * @param isAttached - if attached |
38 | * emit updateInterface | 41 | * emit updateInterface |
39 | */ | 42 | */ |
40 | void Interface::setAttached(bool isAttached){ | 43 | void Interface::setAttached(bool isAttached){ |
41 | attached = isAttached; | 44 | attached = isAttached; |
42 | emit(updateInterface(this)); | 45 | emit(updateInterface(this)); |
43 | }; | 46 | }; |
44 | 47 | ||
45 | /** | 48 | /** |
46 | * Set Hardware name | 49 | * Set Hardware name |
47 | * @param name - the new name | 50 | * @param name - the new name |
48 | * emit updateInterface | 51 | * emit updateInterface |
49 | */ | 52 | */ |
50 | void Interface::setHardwareName(const QString &name){ | 53 | void Interface::setHardwareName(const QString &name){ |
51 | hardwareName = name; | 54 | hardwareName = name; |
52 | emit(updateInterface(this)); | 55 | emit(updateInterface(this)); |
53 | }; | 56 | }; |
54 | 57 | ||
55 | /** | 58 | /** |
56 | * Set Module owner | 59 | * Set Module owner |
57 | * @param owner - the new owner | 60 | * @param owner - the new owner |
58 | * emit updateInterface | 61 | * emit updateInterface |
59 | */ | 62 | */ |
60 | void Interface::setModuleOwner(Module *owner){ | 63 | void Interface::setModuleOwner(Module *owner){ |
61 | moduleOwner = owner; | 64 | moduleOwner = owner; |
62 | emit(updateInterface(this)); | 65 | emit(updateInterface(this)); |
63 | }; | 66 | }; |
64 | 67 | ||
65 | 68 | ||
66 | /** | 69 | /** |
67 | * Try to start the interface. | 70 | * Try to start the interface. |
68 | */ | 71 | */ |
69 | void Interface::start(){ | 72 | void Interface::start(){ |
70 | // check to see if we are already running. | 73 | // check to see if we are already running. |
diff --git a/noncore/settings/networksettings/interfaces/interfaces.cpp b/noncore/settings/networksettings/interfaces/interfaces.cpp index e283926..5ce4b58 100644 --- a/noncore/settings/networksettings/interfaces/interfaces.cpp +++ b/noncore/settings/networksettings/interfaces/interfaces.cpp | |||
@@ -1,66 +1,68 @@ | |||
1 | #include "interfaces.h" | 1 | #include "interfaces.h" |
2 | 2 | ||
3 | #include <opie2/odebug.h> | ||
4 | |||
3 | #include <qcheckbox.h> | 5 | #include <qcheckbox.h> |
4 | #include <qfile.h> | 6 | #include <qfile.h> |
5 | #include <qtextstream.h> | 7 | #include <qtextstream.h> |
6 | #include <qregexp.h> | 8 | #include <qregexp.h> |
7 | 9 | ||
8 | // The three stanza's | 10 | // The three stanza's |
9 | #define AUTO "auto" | 11 | #define AUTO "auto" |
10 | #define IFACE "iface" | 12 | #define IFACE "iface" |
11 | #define MAPPING "mapping" | 13 | #define MAPPING "mapping" |
12 | 14 | ||
13 | /** | 15 | /** |
14 | * Constructor. Reads in the interfaces file and then split the file up by | 16 | * Constructor. Reads in the interfaces file and then split the file up by |
15 | * the \n for interfaces variable. | 17 | * the \n for interfaces variable. |
16 | * @param useInterfacesFile if an interface file other then the default is | 18 | * @param useInterfacesFile if an interface file other then the default is |
17 | * desired to be used it should be passed in. | 19 | * desired to be used it should be passed in. |
18 | */ | 20 | */ |
19 | Interfaces::Interfaces(QString useInterfacesFile){ | 21 | Interfaces::Interfaces(QString useInterfacesFile){ |
20 | acceptedFamily.append(INTERFACES_FAMILY_INET); | 22 | acceptedFamily.append(INTERFACES_FAMILY_INET); |
21 | acceptedFamily.append(INTERFACES_FAMILY_IPX); | 23 | acceptedFamily.append(INTERFACES_FAMILY_IPX); |
22 | acceptedFamily.append(INTERFACES_FAMILY_INET6); | 24 | acceptedFamily.append(INTERFACES_FAMILY_INET6); |
23 | 25 | ||
24 | interfacesFile = useInterfacesFile; | 26 | interfacesFile = useInterfacesFile; |
25 | QFile file(interfacesFile); | 27 | QFile file(interfacesFile); |
26 | if (!file.open(IO_ReadOnly)){ | 28 | if (!file.open(IO_ReadOnly)){ |
27 | odebug << "Interfaces: Can't open file: " << interfacesFile.latin1() << " for reading." << oendl; | 29 | odebug << "Interfaces: Can't open file: " << interfacesFile.latin1() << " for reading." << oendl; |
28 | currentIface = interfaces.end(); | 30 | currentIface = interfaces.end(); |
29 | currentMapping = interfaces.end(); | 31 | currentMapping = interfaces.end(); |
30 | return; | 32 | return; |
31 | } | 33 | } |
32 | QTextStream stream( &file ); | 34 | QTextStream stream( &file ); |
33 | QString line; | 35 | QString line; |
34 | while ( !stream.eof() ) { | 36 | while ( !stream.eof() ) { |
35 | line += stream.readLine(); | 37 | line += stream.readLine(); |
36 | line += "\n"; | 38 | line += "\n"; |
37 | } | 39 | } |
38 | file.close(); | 40 | file.close(); |
39 | interfaces = QStringList::split("\n", line, true); | 41 | interfaces = QStringList::split("\n", line, true); |
40 | 42 | ||
41 | currentIface = interfaces.end(); | 43 | currentIface = interfaces.end(); |
42 | currentMapping = interfaces.end(); | 44 | currentMapping = interfaces.end(); |
43 | } | 45 | } |
44 | 46 | ||
45 | 47 | ||
46 | /** | 48 | /** |
47 | * Get a list of all interfaces in the interface file. Useful for | 49 | * Get a list of all interfaces in the interface file. Useful for |
48 | * hardware that is not currently connected such as an 802.11b card | 50 | * hardware that is not currently connected such as an 802.11b card |
49 | * not plugged in, but configured for when it is plugged in. | 51 | * not plugged in, but configured for when it is plugged in. |
50 | * @return Return string list of interfaces. | 52 | * @return Return string list of interfaces. |
51 | **/ | 53 | **/ |
52 | QStringList Interfaces::getInterfaceList(){ | 54 | QStringList Interfaces::getInterfaceList(){ |
53 | QStringList list; | 55 | QStringList list; |
54 | for ( QStringList::Iterator it = interfaces.begin(); it != interfaces.end(); ++it ) { | 56 | for ( QStringList::Iterator it = interfaces.begin(); it != interfaces.end(); ++it ) { |
55 | QString line = (*it).simplifyWhiteSpace(); | 57 | QString line = (*it).simplifyWhiteSpace(); |
56 | if(line.contains(IFACE) && line.at(0) != '#'){ | 58 | if(line.contains(IFACE) && line.at(0) != '#'){ |
57 | line = line.mid(QString(IFACE).length() +1, line.length()); | 59 | line = line.mid(QString(IFACE).length() +1, line.length()); |
58 | line = line.simplifyWhiteSpace(); | 60 | line = line.simplifyWhiteSpace(); |
59 | int findSpace = line.find(" "); | 61 | int findSpace = line.find(" "); |
60 | if( findSpace >= 0){ | 62 | if( findSpace >= 0){ |
61 | line = line.mid(0, findSpace); | 63 | line = line.mid(0, findSpace); |
62 | list.append(line); | 64 | list.append(line); |
63 | } | 65 | } |
64 | } | 66 | } |
65 | } | 67 | } |
66 | return list; | 68 | return list; |
diff --git a/noncore/settings/networksettings/interfaces/interfacesetupimp.cpp b/noncore/settings/networksettings/interfaces/interfacesetupimp.cpp index ec3bad3..8498759 100644 --- a/noncore/settings/networksettings/interfaces/interfacesetupimp.cpp +++ b/noncore/settings/networksettings/interfaces/interfacesetupimp.cpp | |||
@@ -1,79 +1,80 @@ | |||
1 | #include "interfacesetupimp.h" | 1 | #include "interfacesetupimp.h" |
2 | #include "interface.h" | 2 | #include "interface.h" |
3 | 3 | ||
4 | #include <qcheckbox.h> | 4 | #include <qcheckbox.h> |
5 | #include <qlineedit.h> | 5 | #include <qlineedit.h> |
6 | #include <qspinbox.h> | 6 | #include <qspinbox.h> |
7 | #include <qgroupbox.h> | 7 | #include <qgroupbox.h> |
8 | #include <qlabel.h> | 8 | #include <qlabel.h> |
9 | 9 | ||
10 | #include <qmessagebox.h> | 10 | #include <qmessagebox.h> |
11 | 11 | ||
12 | #include <opie2/oprocess.h> | 12 | #include <opie2/oprocess.h> |
13 | 13 | ||
14 | #ifdef QWS | 14 | #ifdef QWS |
15 | #include <opie2/owait.h> | 15 | #include <opie2/owait.h> |
16 | #include <opie2/odebug.h> | ||
16 | #include <qpe/global.h> | 17 | #include <qpe/global.h> |
17 | #include <qapplication.h> | 18 | #include <qapplication.h> |
18 | #endif | 19 | #endif |
19 | 20 | ||
20 | #define DNSSCRIPT "changedns" | 21 | #define DNSSCRIPT "changedns" |
21 | 22 | ||
22 | /** | 23 | /** |
23 | * Constuctor. Set up the connection. A profile must be set. | 24 | * Constuctor. Set up the connection. A profile must be set. |
24 | */ | 25 | */ |
25 | using namespace Opie::Ui; | 26 | using namespace Opie::Ui; |
26 | using namespace Opie::Core; | 27 | using namespace Opie::Core; |
27 | InterfaceSetupImp::InterfaceSetupImp(QWidget* parent, const char* name, Interface *i, Interfaces *j, WFlags fl) : InterfaceSetup(parent, name, fl), interface(i), interfaces(j), delInterfaces(false){ | 28 | InterfaceSetupImp::InterfaceSetupImp(QWidget* parent, const char* name, Interface *i, Interfaces *j, WFlags fl) : InterfaceSetup(parent, name, fl), interface(i), interfaces(j), delInterfaces(false){ |
28 | if (j == 0) { | 29 | if (j == 0) { |
29 | delInterfaces = true; | 30 | delInterfaces = true; |
30 | interfaces = new Interfaces; | 31 | interfaces = new Interfaces; |
31 | } | 32 | } |
32 | } | 33 | } |
33 | 34 | ||
34 | /** | 35 | /** |
35 | * Destructor | 36 | * Destructor |
36 | */ | 37 | */ |
37 | InterfaceSetupImp::~InterfaceSetupImp(){ | 38 | InterfaceSetupImp::~InterfaceSetupImp(){ |
38 | if(delInterfaces) { | 39 | if(delInterfaces) { |
39 | delete interfaces; | 40 | delete interfaces; |
40 | } | 41 | } |
41 | } | 42 | } |
42 | 43 | ||
43 | /** | 44 | /** |
44 | * Save the current settings, then write out the interfaces file and close. | 45 | * Save the current settings, then write out the interfaces file and close. |
45 | */ | 46 | */ |
46 | bool InterfaceSetupImp::saveChanges(){ | 47 | bool InterfaceSetupImp::saveChanges(){ |
47 | bool error; | 48 | bool error; |
48 | QString iface = interfaces->getInterfaceName(error); | 49 | QString iface = interfaces->getInterfaceName(error); |
49 | odebug << "InterfaceSetupImp::saveChanges saves interface " << iface.latin1() << "" << oendl; | 50 | odebug << "InterfaceSetupImp::saveChanges saves interface " << iface.latin1() << "" << oendl; |
50 | if(!saveSettings()) | 51 | if(!saveSettings()) |
51 | return false; | 52 | return false; |
52 | 53 | ||
53 | interfaces->write(); | 54 | interfaces->write(); |
54 | 55 | ||
55 | if (interface->getStatus()) { | 56 | if (interface->getStatus()) { |
56 | QString ifup; | 57 | QString ifup; |
57 | ifup += "ifdown "; | 58 | ifup += "ifdown "; |
58 | ifup += iface; | 59 | ifup += iface; |
59 | ifup += "; ifup "; | 60 | ifup += "; ifup "; |
60 | ifup += iface; | 61 | ifup += iface; |
61 | ifup += ";"; | 62 | ifup += ";"; |
62 | 63 | ||
63 | OProcess restart; | 64 | OProcess restart; |
64 | restart << "sh"; | 65 | restart << "sh"; |
65 | restart << "-c"; | 66 | restart << "-c"; |
66 | restart << ifup; | 67 | restart << ifup; |
67 | 68 | ||
68 | OWait *owait = new OWait(); | 69 | OWait *owait = new OWait(); |
69 | Global::statusMessage( tr( "Restarting interface" ) ); | 70 | Global::statusMessage( tr( "Restarting interface" ) ); |
70 | 71 | ||
71 | owait->show(); | 72 | owait->show(); |
72 | qApp->processEvents(); | 73 | qApp->processEvents(); |
73 | 74 | ||
74 | if (!restart.start(OProcess::Block, OProcess::NoCommunication) ) { | 75 | if (!restart.start(OProcess::Block, OProcess::NoCommunication) ) { |
75 | owarn << "unstable to spawn ifdown/ifup" << oendl; | 76 | owarn << "unstable to spawn ifdown/ifup" << oendl; |
76 | } | 77 | } |
77 | 78 | ||
78 | owait->hide(); | 79 | owait->hide(); |
79 | delete owait; | 80 | delete owait; |
diff --git a/noncore/settings/networksettings/mainwindowimp.cpp b/noncore/settings/networksettings/mainwindowimp.cpp index 3e1a650..5184630 100644 --- a/noncore/settings/networksettings/mainwindowimp.cpp +++ b/noncore/settings/networksettings/mainwindowimp.cpp | |||
@@ -1,73 +1,74 @@ | |||
1 | 1 | ||
2 | #include "mainwindowimp.h" | 2 | #include "mainwindowimp.h" |
3 | #include "addconnectionimp.h" | 3 | #include "addconnectionimp.h" |
4 | #include "interfaceinformationimp.h" | 4 | #include "interfaceinformationimp.h" |
5 | #include "interfacesetupimp.h" | 5 | #include "interfacesetupimp.h" |
6 | #include "interfaces.h" | 6 | #include "interfaces.h" |
7 | #include "module.h" | 7 | #include "module.h" |
8 | 8 | ||
9 | /* OPIE */ | 9 | /* OPIE */ |
10 | #include <opie2/odebug.h> | ||
10 | #include <qpe/qcopenvelope_qws.h> | 11 | #include <qpe/qcopenvelope_qws.h> |
11 | #include <qpe/qpeapplication.h> | 12 | #include <qpe/qpeapplication.h> |
12 | #include <qpe/config.h> | 13 | #include <qpe/config.h> |
13 | #include <qpe/qlibrary.h> | 14 | #include <qpe/qlibrary.h> |
14 | #include <qpe/resource.h> | 15 | #include <qpe/resource.h> |
15 | 16 | ||
16 | /* QT */ | 17 | /* QT */ |
17 | #include <qpushbutton.h> | 18 | #include <qpushbutton.h> |
18 | #include <qlistbox.h> | 19 | #include <qlistbox.h> |
19 | #include <qlineedit.h> | 20 | #include <qlineedit.h> |
20 | #include <qlistview.h> | 21 | #include <qlistview.h> |
21 | #include <qheader.h> | 22 | #include <qheader.h> |
22 | #include <qlabel.h> | 23 | #include <qlabel.h> |
23 | #include <qtabwidget.h> // in order to disable the profiles tab | 24 | #include <qtabwidget.h> // in order to disable the profiles tab |
24 | #include <qmessagebox.h> | 25 | #include <qmessagebox.h> |
25 | 26 | ||
26 | 27 | ||
27 | #if QT_VERSION < 300 | 28 | #if QT_VERSION < 300 |
28 | #include <qlist.h> | 29 | #include <qlist.h> |
29 | #else | 30 | #else |
30 | #include <qptrlist.h> | 31 | #include <qptrlist.h> |
31 | #endif | 32 | #endif |
32 | #include <qdir.h> | 33 | #include <qdir.h> |
33 | #include <qfile.h> | 34 | #include <qfile.h> |
34 | #include <qtextstream.h> | 35 | #include <qtextstream.h> |
35 | #include <qregexp.h> | 36 | #include <qregexp.h> |
36 | 37 | ||
37 | /* STD */ | 38 | /* STD */ |
38 | #include <net/if.h> | 39 | #include <net/if.h> |
39 | #include <sys/ioctl.h> | 40 | #include <sys/ioctl.h> |
40 | #include <sys/socket.h> | 41 | #include <sys/socket.h> |
41 | 42 | ||
42 | #define DEFAULT_SCHEME "/var/lib/pcmcia/scheme" | 43 | #define DEFAULT_SCHEME "/var/lib/pcmcia/scheme" |
43 | #define _PROCNETDEV "/proc/net/dev" | 44 | #define _PROCNETDEV "/proc/net/dev" |
44 | 45 | ||
45 | MainWindowImp::MainWindowImp(QWidget *parent, const char *name, WFlags) : MainWindow(parent, name, Qt::WStyle_ContextHelp), advancedUserMode(true), scheme(DEFAULT_SCHEME) | 46 | MainWindowImp::MainWindowImp(QWidget *parent, const char *name, WFlags) : MainWindow(parent, name, Qt::WStyle_ContextHelp), advancedUserMode(true), scheme(DEFAULT_SCHEME) |
46 | { | 47 | { |
47 | connect(addConnectionButton, SIGNAL(clicked()), this, SLOT(addClicked())); | 48 | connect(addConnectionButton, SIGNAL(clicked()), this, SLOT(addClicked())); |
48 | connect(removeConnectionButton, SIGNAL(clicked()), this, SLOT(removeClicked())); | 49 | connect(removeConnectionButton, SIGNAL(clicked()), this, SLOT(removeClicked())); |
49 | connect(informationConnectionButton, SIGNAL(clicked()), this, SLOT(informationClicked())); | 50 | connect(informationConnectionButton, SIGNAL(clicked()), this, SLOT(informationClicked())); |
50 | connect(configureConnectionButton, SIGNAL(clicked()), this, SLOT(configureClicked())); | 51 | connect(configureConnectionButton, SIGNAL(clicked()), this, SLOT(configureClicked())); |
51 | 52 | ||
52 | connect(newProfileButton, SIGNAL(clicked()), this, SLOT(addProfile())); | 53 | connect(newProfileButton, SIGNAL(clicked()), this, SLOT(addProfile())); |
53 | connect(removeProfileButton, SIGNAL(clicked()), this, SLOT(removeProfile())); | 54 | connect(removeProfileButton, SIGNAL(clicked()), this, SLOT(removeProfile())); |
54 | connect(setCurrentProfileButton, SIGNAL(clicked()), this, SLOT(changeProfile())); | 55 | connect(setCurrentProfileButton, SIGNAL(clicked()), this, SLOT(changeProfile())); |
55 | 56 | ||
56 | connect(newProfile, SIGNAL(textChanged(const QString&)), this, SLOT(newProfileChanged(const QString&))); | 57 | connect(newProfile, SIGNAL(textChanged(const QString&)), this, SLOT(newProfileChanged(const QString&))); |
57 | 58 | ||
58 | //FIXME: disable profiles for the moment: | 59 | //FIXME: disable profiles for the moment: |
59 | tabWidget->setTabEnabled( tab, false ); | 60 | tabWidget->setTabEnabled( tab, false ); |
60 | 61 | ||
61 | // Load connections. | 62 | // Load connections. |
62 | // /usr/local/kde/lib/libinterfaces.la | 63 | // /usr/local/kde/lib/libinterfaces.la |
63 | #ifdef QWS | 64 | #ifdef QWS |
64 | loadModules(QPEApplication::qpeDir() + "plugins/networksettings"); | 65 | loadModules(QPEApplication::qpeDir() + "plugins/networksettings"); |
65 | #else | 66 | #else |
66 | loader = KLibLoader::self(); | 67 | loader = KLibLoader::self(); |
67 | loadModules(QString("/usr/")+KStandardDirs::kde_default("lib")); | 68 | loadModules(QString("/usr/")+KStandardDirs::kde_default("lib")); |
68 | #endif | 69 | #endif |
69 | getAllInterfaces(); | 70 | getAllInterfaces(); |
70 | 71 | ||
71 | Interfaces i; | 72 | Interfaces i; |
72 | QStringList list = i.getInterfaceList(); | 73 | QStringList list = i.getInterfaceList(); |
73 | QMap<QString, Interface*>::Iterator it; | 74 | QMap<QString, Interface*>::Iterator it; |