19 #include "tdehardwaredevices.h"
20 #include "tdenetworkconnections.h"
26 #include "tdenetworkdevice.h"
31 #ifdef WITH_NETWORK_MANAGER_BACKEND
32 #include "network-manager.h"
33 #endif // WITH_NETWORK_MANAGER_BACKEND
35 #define SET_BIT(x, y) (x |= 1 << y)
36 #define TEST_BIT(x, y) ((x & (1 << y)) >> y)
43 TDENetworkSearchDomain::TDENetworkSearchDomain() {
47 TDENetworkSearchDomain::TDENetworkSearchDomain(TQString domain,
bool ipv6) {
52 TDENetworkSearchDomain::~TDENetworkSearchDomain() {
56 TQString TDENetworkSearchDomain::searchDomain() {
60 void TDENetworkSearchDomain::setSearchDomain(TQString domain,
bool ipv6) {
65 bool TDENetworkSearchDomain::isIPv4() {
69 bool TDENetworkSearchDomain::isIPv6() {
77 TDENetMask::TDENetMask() {
82 TDENetMask::TDENetMask(TQ_UINT32 netmask) {
83 m_ipv4NetMask = netmask;
87 TDENetMask::TDENetMask(TQ_UINT8* netmask) {
88 m_ipv6NetMask = TQHostAddress(netmask);
92 TDENetMask::~TDENetMask() {
96 void TDENetMask::fromCIDRMask(
unsigned char mask,
bool ipv6) {
99 unsigned int internalMask = mask;
102 for (i=32; i>(32-internalMask); ) {
104 SET_BIT(m_ipv4NetMask, i);
109 Q_IPV6ADDR maskarray;
111 unsigned int byteno=0;
112 memset(maskarray.c, 0, 16);
113 for (i=128; i>(128-internalMask); ) {
115 SET_BIT(maskarray.c[byteno], (i-((15-byteno)*8)));
122 m_ipv6NetMask = TQHostAddress(maskarray);
127 unsigned char TDENetMask::toCIDRMask() {
131 for (i=0; i<32; i++) {
132 if (TEST_BIT(m_ipv4NetMask, i)) {
139 Q_IPV6ADDR mask = m_ipv6NetMask.toIPv6Address();
141 for (j=0; j<16; ++j) {
142 for (i=0; i<8; i++) {
143 if (!TEST_BIT(mask.c[j], i)) {
154 void TDENetMask::fromString(TQString mask) {
155 if (mask.contains(
".")) {
158 TQStringList pieces = TQStringList::split(
".", mask);
160 chunk = pieces[0].toUShort();
161 m_ipv4NetMask = m_ipv4NetMask | (chunk << 24);
162 chunk = pieces[1].toUShort();
163 m_ipv4NetMask = m_ipv4NetMask | (chunk << 16);
164 chunk = pieces[2].toUShort();
165 m_ipv4NetMask = m_ipv4NetMask | (chunk << 8);
166 chunk = pieces[3].toUShort();
167 m_ipv4NetMask = m_ipv4NetMask | (chunk << 0);
169 else if (mask.contains(
":")) {
171 m_ipv6NetMask.setAddress(mask);
175 TQString TDENetMask::toString() {
177 return TQString(
"%1.%2.%3.%4").arg((m_ipv4NetMask & 0xff000000) >> 24).arg((m_ipv4NetMask & 0x00ff0000) >> 16).arg((m_ipv4NetMask & 0x0000ff00) >> 8).arg((m_ipv4NetMask & 0x000000ff) >> 0);
180 return m_ipv6NetMask.toString();
184 bool TDENetMask::isIPv4() {
188 bool TDENetMask::isIPv6() {
196 TDEMACAddress::TDEMACAddress() {
197 m_macAddress.clear();
201 TDEMACAddress::TDEMACAddress(TDENetworkByteList address) {
202 m_macAddress = address;
206 TDEMACAddress::~TDEMACAddress() {
210 TDENetworkByteList TDEMACAddress::address() {
214 void TDEMACAddress::setAddress(TDENetworkByteList address) {
215 m_macAddress = address;
219 bool TDEMACAddress::isValid() {
224 if (m_macAddress.count() > 0) {
232 void TDEMACAddress::fromString(TQString address) {
233 TQStringList pieces = TQStringList::split(
":", address);
234 m_macAddress.clear();
235 for (TQStringList::Iterator it = pieces.begin(); it != pieces.end(); ++it) {
236 m_macAddress.append((*it).toUShort(0, 16));
241 TQString TDEMACAddress::toString() {
243 TDENetworkByteList::iterator it;
244 for (it = m_macAddress.begin(); it != m_macAddress.end(); ++it) {
248 ret.append(TQString().sprintf(
"%02x", *it));
253 bool operator==(
const TDEMACAddress &a1,
const TDEMACAddress &a2) {
254 if (a1.m_macAddress.count() != a2.m_macAddress.count()) {
259 for (i=0; i<a1.m_macAddress.count(); i++) {
260 if (a1.m_macAddress[i] != a2.m_macAddress[i]) {
268 bool operator<(
const TDEMACAddress &a1,
const TDEMACAddress &a2) {
269 if (a1.m_macAddress.count() < a2.m_macAddress.count()) {
274 for (i=0; i<a1.m_macAddress.count(); i++) {
275 if (a1.m_macAddress[i] < a2.m_macAddress[i]) {
278 if (a1.m_macAddress[i] > a2.m_macAddress[i]) {
290 TDENetworkSingleIPConfiguration::TDENetworkSingleIPConfiguration() {
294 TDENetworkSingleIPConfiguration::~TDENetworkSingleIPConfiguration() {
298 bool TDENetworkSingleIPConfiguration::isIPv4() {
299 return ipAddress.isIPv4Address() & valid;
302 bool TDENetworkSingleIPConfiguration::isIPv6() {
303 return ipAddress.isIPv6Address() & valid;
310 TDENetworkSingleRouteConfiguration::TDENetworkSingleRouteConfiguration() {
314 TDENetworkSingleRouteConfiguration::~TDENetworkSingleRouteConfiguration() {
318 bool TDENetworkSingleRouteConfiguration::isIPv4() {
319 return ipAddress.isIPv4Address() & valid;
322 bool TDENetworkSingleRouteConfiguration::isIPv6() {
323 return ipAddress.isIPv6Address() & valid;
330 TDENetworkIEEE8021xConfiguration::TDENetworkIEEE8021xConfiguration() {
332 allowedValid =
false;
333 secretsValid =
false;
334 type = TDENetworkIEEE8021xType::None;
335 fastProvisioningFlags = TDENetworkIEEE8021xFastFlags::None;
336 phase2NonEAPAuthMethod = TDENetworkIEEE8021xType::None;
337 phase2EAPAuthMethod = TDENetworkIEEE8021xType::None;
338 passwordFlags = TDENetworkPasswordHandlingFlags::None;
339 binaryPasswordFlags = TDENetworkPasswordHandlingFlags::None;
340 privateKeyPasswordFlags = TDENetworkPasswordHandlingFlags::None;
341 phase2PrivateKeyPasswordFlags = TDENetworkPasswordHandlingFlags::None;
342 forceSystemCaCertificates =
false;
345 TDENetworkIEEE8021xConfiguration::~TDENetworkIEEE8021xConfiguration() {
353 TDENetworkPPPConfiguration::TDENetworkPPPConfiguration() {
355 requireServerAuthentication =
false;
356 flags = TDENetworkPPPFlags::None;
360 lcpEchoPingInterval = 0;
361 lcpEchoFailureThreshold = 0;
364 TDENetworkPPPConfiguration::~TDENetworkPPPConfiguration() {
372 TDENetworkPPPOEConfiguration::TDENetworkPPPOEConfiguration() {
374 secretsValid =
false;
375 passwordFlags = TDENetworkPasswordHandlingFlags::None;
378 TDENetworkPPPOEConfiguration::~TDENetworkPPPOEConfiguration() {
386 TDENetworkSerialConfiguration::TDENetworkSerialConfiguration() {
390 parity = TDENetworkParity::None;
395 TDENetworkSerialConfiguration::~TDENetworkSerialConfiguration() {
403 TDENetworkCDMAConfiguration::TDENetworkCDMAConfiguration() {
405 secretsValid =
false;
406 passwordFlags = TDENetworkPasswordHandlingFlags::None;
409 TDENetworkCDMAConfiguration::~TDENetworkCDMAConfiguration() {
417 TDENetworkGSMConfiguration::TDENetworkGSMConfiguration() {
419 secretsValid =
false;
420 passwordFlags = TDENetworkPasswordHandlingFlags::None;
421 networkType = TDEGSMNetworkType::Any;
422 pinFlags = TDENetworkPasswordHandlingFlags::None;
423 allowRoaming =
false;
426 TDENetworkGSMConfiguration::~TDENetworkGSMConfiguration() {
434 TDENetworkIPConfiguration::TDENetworkIPConfiguration() {
436 connectionFlags = TDENetworkIPConfigurationFlags::IPV4DHCPIP | \
437 TDENetworkIPConfigurationFlags::IPV4DHCPDNS | \
438 TDENetworkIPConfigurationFlags::IPV4DHCPRoutes | \
439 TDENetworkIPConfigurationFlags::IPV4MayUseAsDefaultRoute | \
440 TDENetworkIPConfigurationFlags::IPV6DHCPIP | \
441 TDENetworkIPConfigurationFlags::IPV6DHCPDNS | \
442 TDENetworkIPConfigurationFlags::IPV6DHCPRoutes | \
443 TDENetworkIPConfigurationFlags::IPV6MayUseAsDefaultRoute;
446 TDENetworkIPConfiguration::~TDENetworkIPConfiguration() {
454 TDENetworkWiFiSecurityConfiguration::TDENetworkWiFiSecurityConfiguration() {
456 secretsValid =
false;
457 keyType = TDENetworkWiFiKeyType::Other;
458 authType = TDENetworkWiFiAuthType::Other;
459 wpaVersion = TDENetworkWiFiWPAVersionFlags::Any;
460 cipher = TDENetworkWiFiConnectionCipher::None;
461 wepKeyFlags = TDENetworkPasswordHandlingFlags::None;
463 wepKeyType = TDENetworkWepKeyType::Hexadecimal;
464 pskFlags = TDENetworkPasswordHandlingFlags::None;
465 leapPasswordFlags = TDENetworkPasswordHandlingFlags::None;
468 TDENetworkWiFiSecurityConfiguration::~TDENetworkWiFiSecurityConfiguration() {
476 TDENetworkWiFiDeviceInfo::TDENetworkWiFiDeviceInfo() {
480 TDENetworkWiFiDeviceInfo::~TDENetworkWiFiDeviceInfo() {
488 TDENetworkDeviceInformation::TDENetworkDeviceInformation() {
490 statusFlags = TDENetworkConnectionStatus::Invalid;
491 capabilityFlags = TDENetworkDeviceCapabilityFlags::None;
494 TDENetworkDeviceInformation::~TDENetworkDeviceInformation() {
502 TDENetworkHWNeighbor::TDENetworkHWNeighbor() {
506 TDENetworkHWNeighbor::~TDENetworkHWNeighbor() {
514 TDENetworkWiFiAPInfo::TDENetworkWiFiAPInfo() : TDENetworkHWNeighbor() {
518 TDENetworkWiFiAPInfo::~TDENetworkWiFiAPInfo() {
522 TQString TDENetworkWiFiAPInfo::friendlySSID()
const {
525 ret = TQString(SSID);
527 ret =
"<" +
i18n(
"hidden") +
">";
537 TDENetworkConnection::TDENetworkConnection() {
546 TDENetworkConnection::~TDENetworkConnection() {
550 TDENetworkConnectionType::TDENetworkConnectionType TDENetworkConnection::type() {
551 if (dynamic_cast<TDEWiredEthernetConnection*>(
this)) {
552 return TDENetworkConnectionType::WiredEthernet;
554 else if (dynamic_cast<TDEWiredInfinibandConnection*>(
this)) {
555 return TDENetworkConnectionType::Infiniband;
557 else if (dynamic_cast<TDEVPNConnection*>(
this)) {
558 return TDENetworkConnectionType::VPN;
560 else if (dynamic_cast<TDEWiMaxConnection*>(
this)) {
561 return TDENetworkConnectionType::WiMax;
563 else if (dynamic_cast<TDEVLANConnection*>(
this)) {
564 return TDENetworkConnectionType::VLAN;
566 else if (dynamic_cast<TDEOLPCMeshConnection*>(
this)) {
567 return TDENetworkConnectionType::OLPCMesh;
569 else if (dynamic_cast<TDEBluetoothConnection*>(
this)) {
570 return TDENetworkConnectionType::Bluetooth;
572 else if (dynamic_cast<TDEModemConnection*>(
this)) {
573 return TDENetworkConnectionType::Modem;
575 else if (dynamic_cast<TDEWiFiConnection*>(
this)) {
576 return TDENetworkConnectionType::WiFi;
579 return TDENetworkConnectionType::Other;
587 TDEWiredEthernetConnection::TDEWiredEthernetConnection() : TDENetworkConnection() {
591 TDEWiredEthernetConnection::~TDEWiredEthernetConnection() {
599 TDEWiredInfinibandConnection::TDEWiredInfinibandConnection() : TDENetworkConnection() {
603 TDEWiredInfinibandConnection::~TDEWiredInfinibandConnection() {
611 TDEVPNConnection::TDEVPNConnection() : TDENetworkConnection() {
612 secretsValid =
false;
615 TDEVPNConnection::~TDEVPNConnection() {
623 TDEWiMaxConnection::TDEWiMaxConnection() : TDENetworkConnection() {
627 TDEWiMaxConnection::~TDEWiMaxConnection() {
635 TDEVLANConnection::TDEVLANConnection() : TDENetworkConnection() {
639 TDEVLANConnection::~TDEVLANConnection() {
647 TDEOLPCMeshConnection::TDEOLPCMeshConnection() : TDENetworkConnection() {
651 TDEOLPCMeshConnection::~TDEOLPCMeshConnection() {
659 TDEBluetoothConnection::TDEBluetoothConnection() : TDENetworkConnection() {
660 type = TDEBluetoothConnectionType::Other;
663 TDEBluetoothConnection::~TDEBluetoothConnection() {
671 TDEModemConnection::TDEModemConnection() : TDENetworkConnection() {
672 type = TDEModemConnectionType::Other;
675 TDEModemConnection::~TDEModemConnection() {
683 TDEWiFiConnection::TDEWiFiConnection() : TDENetworkConnection() {
684 operatingMode = TDEWiFiMode::Other;
685 bandRestriction = TDEWiFiFrequencyBand::None;
686 channelRestriction = -1;
687 bitRateRestriction = -1;
688 powerRestriction = -1;
689 isHiddenNetwork =
false;
690 securityRequired =
false;
693 TDEWiFiConnection::~TDEWiFiConnection() {
701 TDENetworkConnectionManager::TDENetworkConnectionManager(TDENetworkDevice *networkDevice) : TQObject(), m_connectionList(NULL), m_hwNeighborList(NULL), m_networkDevice(networkDevice), m_prevConnectionStatus(
TDENetworkGlobalManagerFlags::Unknown) {
702 m_emissionTimer =
new TQTimer();
703 connect(m_emissionTimer, TQT_SIGNAL(timeout()),
this, TQT_SLOT(emitQueuedSignals()));
704 if (!m_emissionTimer->isActive()) m_emissionTimer->start(0, TRUE);
707 TDENetworkConnectionManager::~TDENetworkConnectionManager() {
708 m_emissionTimer->stop();
709 delete m_emissionTimer;
712 TQString TDENetworkConnectionManager::deviceNode() {
713 return m_networkDevice ? m_networkDevice->deviceNode() : TQString();
716 TQString TDENetworkConnectionManager::deviceMACAddress() {
717 return m_networkDevice ? m_networkDevice->macAddress() : TQString();
720 TDENetworkConnectionList* TDENetworkConnectionManager::connections() {
721 return m_connectionList;
724 TDENetworkConnection* TDENetworkConnectionManager::findConnectionByUUID(TQString uuid) {
725 TDENetworkConnection *connection;
726 for (connection = m_connectionList->first(); connection; connection = m_connectionList->next()) {
727 if (connection->UUID == uuid) {
734 TDENetworkDevice* TDENetworkConnectionManager::findDeviceByUUID(TQString uuid) {
735 TDEHardwareDevices *hwdevices = TDEGlobal::hardwareDevices();
736 if (!hwdevices)
return NULL;
738 TDEGenericHardwareList devices = hwdevices->listByDeviceClass(TDEGenericDeviceType::Network);
739 for (TDEGenericHardwareList::iterator it = devices.begin(); it != devices.end(); ++it)
741 TDENetworkDevice* dev =
dynamic_cast<TDENetworkDevice*
>(*it);
743 TDENetworkConnectionManager* deviceConnectionManager = dev->connectionManager();
744 if (deviceConnectionManager) {
745 if (deviceConnectionManager->deviceInformation().UUID == uuid) {
755 TDENetworkWiFiAPInfo* TDENetworkConnectionManager::findAccessPointByBSSID(TDEMACAddress bssid) {
756 if (!bssid.isValid()) {
760 TDENetworkHWNeighbor *neighbor;
761 for (neighbor = m_hwNeighborList->first(); neighbor; neighbor = m_hwNeighborList->next()) {
762 TDENetworkWiFiAPInfo* apInfo =
dynamic_cast<TDENetworkWiFiAPInfo*
>(neighbor);
766 if (apInfo->BSSID == bssid) {
773 TQString TDENetworkConnectionManager::friendlyConnectionTypeName(TDENetworkConnectionType::TDENetworkConnectionType type) {
774 if (type == TDENetworkConnectionType::WiredEthernet) {
775 return i18n(
"Wired Ethernet");
777 else if (type == TDENetworkConnectionType::WiFi) {
778 return i18n(
"802.11 WiFi");
780 else if (type == TDENetworkConnectionType::Bluetooth) {
781 return i18n(
"Bluetooth");
783 else if (type == TDENetworkConnectionType::OLPCMesh) {
784 return i18n(
"OLPC Mesh");
786 else if (type == TDENetworkConnectionType::WiMax) {
787 return i18n(
"WiMax");
789 else if (type == TDENetworkConnectionType::Modem) {
790 return i18n(
"Cellular Modem");
792 else if (type == TDENetworkConnectionType::Infiniband) {
793 return i18n(
"Infiniband");
795 else if (type == TDENetworkConnectionType::Bond) {
798 else if (type == TDENetworkConnectionType::VLAN) {
799 return i18n(
"Virtual LAN");
801 else if (type == TDENetworkConnectionType::ADSL) {
804 else if (type == TDENetworkConnectionType::VPN) {
805 return i18n(
"Virtual Private Network");
807 else if (type == TDENetworkConnectionType::Other) {
808 return i18n(
"Other");
811 return TQString::null;
815 bool TDENetworkConnectionManager::validateIPAddress(TQHostAddress address) {
816 if (address.isIPv4Address()) {
817 TQ_UINT32 rawaddress = address.toIPv4Address();
818 if ((((rawaddress & 0xff000000) >> 24) == 0) || ((rawaddress & 0x000000ff) == 0) || ((rawaddress & 0x000000ff) == 255)) {
822 else if (address.isIPv6Address()) {
823 Q_IPV6ADDR rawaddress = address.toIPv6Address();
824 if (rawaddress.c[0] == 0xff) {
831 bool TDENetworkConnectionManager::validateIPNeworkMask(TQHostAddress netmask) {
836 void TDENetworkConnectionManager::clearTDENetworkConnectionList() {
837 TDENetworkConnection *connection;
838 for (connection = m_connectionList->first(); connection; connection = m_connectionList->next()) {
841 m_connectionList->clear();
844 void TDENetworkConnectionManager::clearTDENetworkHWNeighborList() {
845 TDENetworkHWNeighbor *neighbor;
846 for (neighbor = m_hwNeighborList->first(); neighbor; neighbor = m_hwNeighborList->next()) {
849 m_hwNeighborList->clear();
852 void TDENetworkConnectionManager::internalNetworkConnectionStateChanged(TDENetworkGlobalManagerFlags::TDENetworkGlobalManagerFlags newState) {
854 queuedEvent.eventType = 0;
855 queuedEvent.newState = newState;
856 queuedEvent.previousState = m_prevConnectionStatus;
857 m_globalEventQueueEventList.append(queuedEvent);
858 if (!m_emissionTimer->isActive()) m_emissionTimer->start(0, TRUE);
860 m_prevConnectionStatus = newState;
863 void TDENetworkConnectionManager::internalNetworkDeviceStateChanged(TDENetworkConnectionStatus::TDENetworkConnectionStatus newState, TQString deviceNodeName) {
864 if (!m_prevDeviceStatus.contains(deviceNodeName)) {
865 m_prevDeviceStatus[deviceNodeName] = TDENetworkConnectionStatus::Invalid;
869 queuedEvent.eventType = 1;
870 queuedEvent.newConnStatus = newState;
871 queuedEvent.previousConnStatus = m_prevDeviceStatus[deviceNodeName];
872 queuedEvent.deviceNode = deviceNodeName;
873 m_globalEventQueueEventList.append(queuedEvent);
874 if (!m_emissionTimer->isActive()) m_emissionTimer->start(0, TRUE);
876 m_prevDeviceStatus[deviceNodeName] = newState;
879 void TDENetworkConnectionManager::internalAccessPointStatusChanged(TDEMACAddress BSSID, TDENetworkAPEventType::TDENetworkAPEventType event) {
881 queuedEvent.eventType = 2;
882 queuedEvent.BSSID = BSSID;
883 queuedEvent.apevent = event;
884 m_globalEventQueueEventList.append(queuedEvent);
885 if (!m_emissionTimer->isActive()) m_emissionTimer->start(0, TRUE);
888 void TDENetworkConnectionManager::internalNetworkDeviceEvent(TDENetworkDeviceEventType::TDENetworkDeviceEventType event, TQString message) {
890 queuedEvent.eventType = 3;
891 queuedEvent.ndevent = event;
892 queuedEvent.message = message;
893 m_globalEventQueueEventList.append(queuedEvent);
894 if (!m_emissionTimer->isActive()) m_emissionTimer->start(0, TRUE);
897 void TDENetworkConnectionManager::internalVpnEvent(TDENetworkVPNEventType::TDENetworkVPNEventType event, TQString message) {
899 queuedEvent.eventType = 4;
900 queuedEvent.vpnevent = event;
901 queuedEvent.message = message;
902 m_globalEventQueueEventList.append(queuedEvent);
903 if (!m_emissionTimer->isActive()) m_emissionTimer->start(0, TRUE);
906 void TDENetworkConnectionManager::internalNetworkManagementEvent(TDENetworkGlobalEventType::TDENetworkGlobalEventType event) {
908 queuedEvent.eventType = 5;
909 queuedEvent.globalevent = event;
910 m_globalEventQueueEventList.append(queuedEvent);
911 if (!m_emissionTimer->isActive()) m_emissionTimer->start(0, TRUE);
914 void TDENetworkConnectionManager::emitQueuedSignals() {
915 if (!m_globalEventQueueEventList.isEmpty()) {
916 #ifdef DEBUG_SIGNAL_QUEUE
917 kdDebug() <<
"TDENetworkConnectionManager::emitQueuedSignals: Going to dequeue " << m_globalEventQueueEventList.count() <<
" events..." <<
endl;
918 #endif // DEBUG_SIGNAL_QUEUE
919 TDENetworkEventQueueEvent_PrivateList::Iterator it;
920 it = m_globalEventQueueEventList.begin();
921 while (it != m_globalEventQueueEventList.end()) {
923 it = m_globalEventQueueEventList.remove(it);
924 if (event.eventType == 0) {
925 emit(networkConnectionStateChanged(event.newState, event.previousState));
927 else if (event.eventType == 1) {
928 emit(networkDeviceStateChanged(event.newConnStatus, event.previousConnStatus, event.deviceNode));
930 else if (event.eventType == 2) {
931 emit(accessPointStatusChanged(event.BSSID, event.apevent));
933 else if (event.eventType == 3) {
934 emit(networkDeviceEvent(event.ndevent, event.message));
936 else if (event.eventType == 4) {
937 emit(vpnEvent(event.vpnevent, event.message));
939 else if (event.eventType == 5) {
940 emit(networkManagementEvent(event.globalevent));
943 #ifdef DEBUG_SIGNAL_QUEUE
944 kdDebug() <<
"TDENetworkConnectionManager::emitQueuedSignals: " << m_globalEventQueueEventList.count() <<
" events remain in queue" <<
endl;
945 #endif // DEBUG_SIGNAL_QUEUE
953 TDEGlobalNetworkManager::TDEGlobalNetworkManager() : m_internalConnectionManager(NULL) {
954 #ifdef WITH_NETWORK_MANAGER_BACKEND
955 m_internalConnectionManager =
new TDENetworkConnectionManager_BackendNM(NULL);
956 #endif // WITH_NETWORK_MANAGER_BACKEND
957 if (m_internalConnectionManager) {
958 connect(m_internalConnectionManager, SIGNAL(networkConnectionStateChanged(TDENetworkGlobalManagerFlags::TDENetworkGlobalManagerFlags, TDENetworkGlobalManagerFlags::TDENetworkGlobalManagerFlags)),
this, SIGNAL(networkConnectionStateChanged(TDENetworkGlobalManagerFlags::TDENetworkGlobalManagerFlags, TDENetworkGlobalManagerFlags::TDENetworkGlobalManagerFlags)));
959 connect(m_internalConnectionManager, SIGNAL(vpnEvent(TDENetworkVPNEventType::TDENetworkVPNEventType, TQString)),
this, SIGNAL(vpnEvent(TDENetworkVPNEventType::TDENetworkVPNEventType, TQString)));
960 connect(m_internalConnectionManager, SIGNAL(networkManagementEvent(TDENetworkGlobalEventType::TDENetworkGlobalEventType)),
this, SIGNAL(networkManagementEvent(TDENetworkGlobalEventType::TDENetworkGlobalEventType)));
964 TDEGlobalNetworkManager::~TDEGlobalNetworkManager() {
965 delete m_internalConnectionManager;
968 TQString TDEGlobalNetworkManager::backendName() {
969 if (!m_internalConnectionManager)
return TQString::null;
970 return m_internalConnectionManager->backendName();
973 TDENetworkGlobalManagerFlags::TDENetworkGlobalManagerFlags TDEGlobalNetworkManager::backendStatus() {
974 if (!m_internalConnectionManager)
return TDENetworkGlobalManagerFlags::BackendUnavailable;
975 return m_internalConnectionManager->backendStatus();
978 void TDEGlobalNetworkManager::loadConnectionInformation() {
979 if (!m_internalConnectionManager)
return;
980 return m_internalConnectionManager->loadConnectionInformation();
983 void TDEGlobalNetworkManager::loadConnectionAllowedValues(TDENetworkConnection* connection) {
984 if (!m_internalConnectionManager)
return;
985 return m_internalConnectionManager->loadConnectionAllowedValues(connection);
988 bool TDEGlobalNetworkManager::loadConnectionSecrets(TQString uuid) {
989 if (!m_internalConnectionManager)
return false;
990 return m_internalConnectionManager->loadConnectionSecrets(uuid);
993 bool TDEGlobalNetworkManager::saveConnection(TDENetworkConnection* connection) {
994 if (!m_internalConnectionManager)
return false;
995 return m_internalConnectionManager->saveConnection(connection);
998 bool TDEGlobalNetworkManager::deleteConnection(TQString uuid) {
999 if (!m_internalConnectionManager)
return false;
1000 return m_internalConnectionManager->deleteConnection(uuid);
1003 bool TDEGlobalNetworkManager::verifyConnectionSettings(TDENetworkConnection* connection, TDENetworkConnectionErrorFlags::TDENetworkConnectionErrorFlags* type, TDENetworkErrorStringMap* reason) {
1004 if (!m_internalConnectionManager)
return false;
1005 return m_internalConnectionManager->verifyConnectionSettings(connection, type, reason);
1008 TDENetworkConnectionStatus::TDENetworkConnectionStatus TDEGlobalNetworkManager::initiateConnection(TQString uuid) {
1009 if (!m_internalConnectionManager)
return TDENetworkConnectionStatus::Invalid;
1010 return m_internalConnectionManager->initiateConnection(uuid);
1013 TDENetworkConnectionStatus::TDENetworkConnectionStatus TDEGlobalNetworkManager::checkConnectionStatus(TQString uuid) {
1014 if (!m_internalConnectionManager)
return TDENetworkConnectionStatus::Invalid;
1015 return m_internalConnectionManager->checkConnectionStatus(uuid);
1018 TDENetworkConnectionStatus::TDENetworkConnectionStatus TDEGlobalNetworkManager::deactivateConnection(TQString uuid) {
1019 if (!m_internalConnectionManager)
return TDENetworkConnectionStatus::Invalid;
1020 return m_internalConnectionManager->deactivateConnection(uuid);
1023 TQStringList TDEGlobalNetworkManager::validSettings() {
1024 if (!m_internalConnectionManager)
return TQStringList();
1025 return m_internalConnectionManager->validSettings();
1028 TDENetworkHWNeighborList* TDEGlobalNetworkManager::siteSurvey() {
1029 if (!m_internalConnectionManager)
return NULL;
1030 return m_internalConnectionManager->siteSurvey();
1033 TQStringList TDEGlobalNetworkManager::connectionPhysicalDeviceUUIDs(TQString uuid) {
1034 if (!m_internalConnectionManager)
return TQStringList();
1035 return m_internalConnectionManager->connectionPhysicalDeviceUUIDs(uuid);
1038 TDENetworkVPNTypeList TDEGlobalNetworkManager::availableVPNTypes() {
1039 if (!m_internalConnectionManager)
return TDENetworkVPNTypeList();
1040 return m_internalConnectionManager->availableVPNTypes();
1043 bool TDEGlobalNetworkManager::networkingEnabled() {
1044 if (!m_internalConnectionManager)
return false;
1045 return m_internalConnectionManager->networkingEnabled();
1048 bool TDEGlobalNetworkManager::enableNetworking(
bool enable) {
1049 if (!m_internalConnectionManager)
return false;
1050 return m_internalConnectionManager->enableNetworking(enable);
1053 bool TDEGlobalNetworkManager::wiFiHardwareEnabled() {
1054 if (!m_internalConnectionManager)
return false;
1055 return m_internalConnectionManager->wiFiHardwareEnabled();
1058 bool TDEGlobalNetworkManager::enableWiFi(
bool enable) {
1059 if (!m_internalConnectionManager)
return false;
1060 return m_internalConnectionManager->enableWiFi(enable);
1063 bool TDEGlobalNetworkManager::wiFiEnabled() {
1064 if (!m_internalConnectionManager)
return false;
1065 return m_internalConnectionManager->wiFiEnabled();
1068 TQStringList TDEGlobalNetworkManager::defaultNetworkDevices() {
1069 if (!m_internalConnectionManager)
return TQStringList();
1070 return m_internalConnectionManager->defaultNetworkDevices();
1073 TDENetworkConnectionList* TDEGlobalNetworkManager::connections() {
1074 if (!m_internalConnectionManager)
return NULL;
1075 return m_internalConnectionManager->connections();
1078 TDENetworkConnection* TDEGlobalNetworkManager::findConnectionByUUID(TQString uuid) {
1079 if (!m_internalConnectionManager)
return NULL;
1080 return m_internalConnectionManager->findConnectionByUUID(uuid);
1083 TDENetworkDevice* TDEGlobalNetworkManager::findDeviceByUUID(TQString uuid) {
1084 if (!m_internalConnectionManager)
return NULL;
1085 return m_internalConnectionManager->findDeviceByUUID(uuid);
1088 TDENetworkWiFiAPInfo* TDEGlobalNetworkManager::findAccessPointByBSSID(TDEMACAddress bssid) {
1089 TDEHardwareDevices *hwdevices = TDEGlobal::hardwareDevices();
1094 TDENetworkWiFiAPInfo* ret = NULL;
1095 TDEGenericHardwareList devices = hwdevices->listByDeviceClass(TDEGenericDeviceType::Network);
1096 for (TDEGenericHardwareList::iterator it = devices.begin(); it != devices.end(); ++it) {
1097 TDENetworkDevice* dev =
dynamic_cast<TDENetworkDevice*
>(*it);
1099 TDENetworkConnectionManager* deviceConnMan = dev->connectionManager();
1102 TDENetworkWiFiAPInfo* candidate = deviceConnMan->findAccessPointByBSSID(bssid);
1119 #include "tdenetworkconnections.moc"
kdbgstream kdDebug(int area=0)
TQString i18n(const char *text)
kdbgstream & endl(kdbgstream &s)