From 5aa568daae23daa7ac190e56df469e9566075257 Mon Sep 17 00:00:00 2001 From: Niklas Date: Mon, 10 Oct 2011 17:08:35 +0200 Subject: new veriosn of the fbgui src (same as in fbgui-ng) combined with my networkDiscovery in front. --- src/interfaceconfiguration.cpp | 134 +++++++++++++++++++++++++++++++++++++++++ 1 file changed, 134 insertions(+) create mode 100644 src/interfaceconfiguration.cpp (limited to 'src/interfaceconfiguration.cpp') diff --git a/src/interfaceconfiguration.cpp b/src/interfaceconfiguration.cpp new file mode 100644 index 0000000..e1eb1d8 --- /dev/null +++ b/src/interfaceconfiguration.cpp @@ -0,0 +1,134 @@ +/* + * interfaceconfiguration.cpp + * + * Created on: Sep 2, 2011 + * Author: niklas + */ +#include "interfaceconfiguration.h" + +interfaceconfiguration::interfaceconfiguration() { + _tag = "[nd:InterfaceConfiguration]"; +} + +interfaceconfiguration::~interfaceconfiguration() { + // TODO Auto-generated destructor stub +} + +/** + * This method reads the configuration values out of a file. + * + * This method reads the configuration values out of a file. + * The file has to be created before by the customdhcpcd QProcess. + * (Overwrites the old values if they are already present.) + * + * @param pathToConfig + * contains the path to the configuration file. + */ +bool interfaceconfiguration::readConfigOutOfFile(QString pathToConfig) { + QFile file(pathToConfig); + if (file.exists()) { + if (!file.open(QIODevice::ReadOnly | QIODevice::Text)) { + qDebug() << _tag << "couldn't open file:" << pathToConfig; + return false; + } + qDebug() << _tag << "read config file"; + while (!file.atEnd()) { + QString line(file.readLine()); + QStringList splitedLine = line.split("="); + QString name = splitedLine.first().trimmed(); + splitedLine.removeFirst(); + QString values = splitedLine.first().trimmed(); + values.remove(QChar('\'')); + + if (name.compare("IPADDR") == 0) { + this->ipAddress = values; + } else if (name.compare("NETMASK") == 0) { + this->netmask = values; + } else if (name.compare("NETWORK") == 0) { + this->network = values; + } else if (name.compare("BROADCAST") == 0) { + this->broadcast = values; + } else if (name.compare("ROUTES") == 0) { + this->routes = values; + } else if (name.compare("GATEWAYS") == 0) { + this->gateways = values; + this->gateway = this->gateways.split(" ").first().trimmed(); + } else if (name.compare("HOSTNAME") == 0) { + this->hostname = values; + } else if (name.compare("DNSSEARCH") == 0) { + this->dnssearch = values; + } else if (name.compare("DNSSERVERS") == 0) { + this->dnsservers = values; + } else if (name.compare("DHCPSID") == 0) { + this->dhcpsid = values; + } else if (name.compare("INTERFACE") == 0) { + this->interface = values; + } else if (name.compare("CLIENTID") == 0) { + this->clientid = values; + } else if (name.compare("DHCPCHADDR") == 0) { + this->dhcpchaddr = values; + } else { + qDebug() << _tag << "read unknown name" << name << values; + } + } + } else { + qDebug() << _tag << "file doesn't exist:" << pathToConfig; + return false; + } + return true; +} + +QString interfaceconfiguration::getBroadcast() { + return broadcast; +} + +QString interfaceconfiguration::getClientid() { + return clientid; +} + +QString interfaceconfiguration::getDhcpchaddr() { + return dhcpchaddr; +} + +QString interfaceconfiguration::getDhcpsid() { + return dhcpsid; +} +QString interfaceconfiguration::getDnssearch() { + return dnssearch; +} + +QString interfaceconfiguration::getDnsservers() { + return dnsservers; +} + +QString interfaceconfiguration::getGateways() { + return gateways; +} + +QString interfaceconfiguration::getGateway() { + return gateway; +} + +QString interfaceconfiguration::getHostname() { + return hostname; +} + +QString interfaceconfiguration::getInterface() { + return interface; +} + +QString interfaceconfiguration::getIpAddress() { + return ipAddress; +} + +QString interfaceconfiguration::getNetmask() { + return netmask; +} + +QString interfaceconfiguration::getNetwork() { + return network; +} + +QString interfaceconfiguration::getRoutes() { + return routes; +} -- cgit v1.2.3-55-g7522