18 #ifndef _TDENETWORKCONNECTIONS_H
19 #define _TDENETWORKCONNECTIONS_H
24 #include <tqptrlist.h>
25 #include <tqdatetime.h>
26 #include <tqstringlist.h>
27 #include <tqhostaddress.h>
28 #include "kiconloader.h"
29 #include "tdelibs_export.h"
31 #define CREATE_FLAG_BITWISE_MANIPULATION_FUNCTIONS(x) \
32 inline x operator|(x a, x b) \
34 return static_cast<x>(static_cast<int>(a) | static_cast<int>(b)); \
37 inline x operator&(x a, x b) \
39 return static_cast<x>(static_cast<int>(a) & static_cast<int>(b)); \
42 inline x operator~(x a) \
44 return static_cast<x>(~static_cast<int>(a)); \
47 inline x &operator|=(x& a, const x& b) \
49 a = static_cast<x>(static_cast<int>(a) | static_cast<int>(b)); \
53 inline x &operator&=(x& a, const x& b) \
55 a = static_cast<x>(static_cast<int>(a) & static_cast<int>(b)); \
59 class TDENetworkDevice;
61 typedef TQValueList<TQ_UINT8> TDENetworkByteList;
62 typedef TQValueList<TQHostAddress> TDENetworkAddressList;
63 typedef TQMap<TQString, TQString> TDENetworkSettingsMap;
64 typedef TQMap<TQ_UINT32, TQ_UINT32> TDENetworkPriorityMap;
66 namespace TDENetworkDeviceType {
67 enum TDENetworkDeviceType {
84 namespace TDENetworkConnectionType {
85 enum TDENetworkConnectionType {
102 namespace TDENetworkConnectionErrorFlags {
103 enum TDENetworkConnectionErrorFlags {
105 InvalidConnectionSetting = 0x00000001,
106 InvalidIPv4Setting = 0x00000002,
107 InvalidIPv6Setting = 0x00000004,
108 InvalidEAPSetting = 0x00000008,
109 InvalidEAPKey = 0x00000010,
110 InvalidWirelessSetting = 0x00000020,
111 InvalidWirelessKey = 0x00000040
114 CREATE_FLAG_BITWISE_MANIPULATION_FUNCTIONS(TDENetworkConnectionErrorFlags)
117 typedef TQMap<TDENetworkConnectionErrorFlags::TDENetworkConnectionErrorFlags, TQString> TDENetworkErrorStringMap;
119 namespace TDENetworkInfinibandTransportMode {
120 enum TDENetworkInfinibandTransportMode {
128 namespace TDEWiFiMode {
137 namespace TDEWiFiFrequencyBand {
138 enum TDEWiFiFrequencyBand {
147 namespace TDEBluetoothConnectionType {
148 enum TDEBluetoothConnectionType {
156 namespace TDEModemConnectionType {
157 enum TDEModemConnectionType {
165 namespace TDEGSMNetworkType {
166 enum TDEGSMNetworkType {
177 namespace TDENetworkParity {
178 enum TDENetworkParity {
187 namespace TDENetworkSlaveDeviceType {
188 enum TDENetworkSlaveDeviceType {
196 namespace TDENetworkGlobalEventType {
197 enum TDENetworkGlobalEventType {
198 ConnectionListChanged,
204 namespace TDENetworkVPNEventType {
205 enum TDENetworkVPNEventType {
213 namespace TDENetworkDeviceEventType {
214 enum TDENetworkDeviceEventType {
222 namespace TDENetworkAPEventType {
223 enum TDENetworkAPEventType {
226 SignalStrengthChanged,
233 namespace TDENetworkGlobalManagerFlags {
234 enum TDENetworkGlobalManagerFlags {
235 Unknown = 0x00000000,
236 Disconnected = 0x00000001,
237 Connected = 0x00000002,
238 EstablishingLink = 0x00000004,
239 DeactivatingLink = 0x00000008,
240 LinkLocalAccess = 0x00000010,
241 SiteLocalAccess = 0x00000020,
242 GlobalAccess = 0x00000040,
243 Sleeping = 0x00000080,
244 BackendUnavailable = 0x00000100,
245 VPNUnknown = 0x00000200,
246 VPNEstablishingLink = 0x00000400,
247 VPNNeedAuthorization = 0x00000800,
248 VPNConfiguringProtocols = 0x00001000,
249 VPNVerifyingProtocols = 0x00002000,
250 VPNConnected = 0x00004000,
251 VPNFailed = 0x00008000,
252 VPNDisconnected = 0x00010000,
253 GlobalMask = 0x000001ff,
257 CREATE_FLAG_BITWISE_MANIPULATION_FUNCTIONS(TDENetworkGlobalManagerFlags)
260 namespace TDENetworkDeviceCapabilityFlags {
261 enum TDENetworkDeviceCapabilityFlags {
263 Supported = 0x00000001,
264 CanDetectLink = 0x00000002
267 CREATE_FLAG_BITWISE_MANIPULATION_FUNCTIONS(TDENetworkDeviceCapabilityFlags)
270 namespace TDENetworkPPPFlags {
271 enum TDENetworkPPPFlags {
273 DisableEAP = 0x00000001,
274 DisablePAP = 0x00000002,
275 DisableCHAP = 0x00000004,
276 DisableMSCHAP = 0x00000008,
277 DisableMSCHAPv2 = 0x00000010,
278 AllowBSDCompression = 0x00000020,
279 AllowDeflateCompression = 0x00000040,
280 AllowVJCompression = 0x00000080,
281 RequireMPPE = 0x00000100,
282 RequireMPPE128 = 0x00000200,
283 StatefulMPPE = 0x00000400,
284 UseHardwareFlowControl = 0x00000800
287 CREATE_FLAG_BITWISE_MANIPULATION_FUNCTIONS(TDENetworkPPPFlags)
290 namespace TDENetworkWiFiAPFlags {
291 enum TDENetworkWiFiAPFlags {
293 PrivacySupport = 0x00000001,
294 PairWEP40 = 0x00000002,
295 PairWEP104 = 0x00000004,
296 PairTKIP = 0x00000008,
297 PairCCMP = 0x00000010,
298 GroupWEP40 = 0x00000020,
299 GroupWEP104 = 0x00000040,
300 GroupTKIP = 0x00000080,
301 GroupCCMP = 0x00000100,
302 KeyManagementPSK = 0x00000200,
303 KeyManagement80211 = 0x00000400,
304 GeneralFlagsMask = 0x00000001,
305 EncryptionFlagsMask = 0xfffffffe
308 CREATE_FLAG_BITWISE_MANIPULATION_FUNCTIONS(TDENetworkWiFiAPFlags)
311 namespace TDENetworkWiFiClientFlags {
312 enum TDENetworkWiFiClientFlags {
314 CipherWEP40 = 0x00000002,
315 CipherWEP104 = 0x00000004,
316 CipherTKIP = 0x00000008,
317 CipherCCMP = 0x00000010,
318 CipherWPA = 0x00000020,
319 CipherRSN = 0x00000040
322 CREATE_FLAG_BITWISE_MANIPULATION_FUNCTIONS(TDENetworkWiFiClientFlags)
325 namespace TDENetworkVPNType {
326 enum TDENetworkVPNType {
336 typedef TQValueList<TDENetworkVPNType::TDENetworkVPNType> TDENetworkVPNTypeList;
338 namespace TDENetworkWiFiConnectionCipher {
339 enum TDENetworkWiFiConnectionCipher {
351 typedef TQValueList<TDENetworkWiFiConnectionCipher::TDENetworkWiFiConnectionCipher> TDENetworkWiFiConnectionCipherList;
353 namespace TDENetworkWepKeyType {
354 enum TDENetworkWepKeyType {
361 namespace TDENetworkVLANFlags {
362 enum TDENetworkVLANFlags {
364 ReorderPacketHeaders = 0x00000001,
365 UseGVRP = 0x00000002,
366 LooseBinding = 0x00000004
369 CREATE_FLAG_BITWISE_MANIPULATION_FUNCTIONS(TDENetworkVLANFlags)
372 namespace TDENetworkWiFiKeyType {
373 enum TDENetworkWiFiKeyType {
384 namespace TDENetworkWiFiAuthType {
385 enum TDENetworkWiFiAuthType {
394 namespace TDENetworkIEEE8021xType {
395 enum TDENetworkIEEE8021xType {
417 typedef TQValueList<TDENetworkIEEE8021xType::TDENetworkIEEE8021xType> TDENetworkIEEE8021xTypeList;
419 namespace TDENetworkIEEE8021xFastFlags {
420 enum TDENetworkIEEE8021xFastFlags {
422 AllowUnauthenticated = 0x00000001,
423 AllowAuthenticated = 0x00000002
426 CREATE_FLAG_BITWISE_MANIPULATION_FUNCTIONS(TDENetworkIEEE8021xFastFlags)
429 namespace TDENetworkWiFiWPAVersionFlags {
430 enum TDENetworkWiFiWPAVersionFlags {
437 CREATE_FLAG_BITWISE_MANIPULATION_FUNCTIONS(TDENetworkWiFiWPAVersionFlags)
440 namespace TDENetworkPasswordHandlingFlags {
441 enum TDENetworkPasswordHandlingFlags {
444 NoPrompt = 0x00000002,
445 ExternalStorage = 0x00000004
448 CREATE_FLAG_BITWISE_MANIPULATION_FUNCTIONS(TDENetworkPasswordHandlingFlags)
451 namespace TDENetworkConnectionStatus {
452 enum TDENetworkConnectionStatus {
454 Invalid = 0x00000001,
455 Disconnected = 0x00000002,
456 Connected = 0x00000004,
457 LinkUnavailable = 0x00000008,
458 EstablishingLink = 0x00000010,
459 DeactivatingLink = 0x00000020,
460 ConfiguringProtocols = 0x00000040,
461 Reconnecting = 0x00000080,
462 LinkLost = 0x00000100,
463 LinkLocalAccess = 0x00000200,
464 SiteLocalAccess = 0x00000400,
465 GlobalAccess = 0x00000800,
466 UnManaged = 0x00001000,
467 NeedAuthorization = 0x00002000,
469 VerifyingProtocols = 0x00008000,
470 DependencyWait = 0x00010000
473 CREATE_FLAG_BITWISE_MANIPULATION_FUNCTIONS(TDENetworkConnectionStatus)
476 namespace TDENetworkIPConfigurationFlags {
477 enum TDENetworkIPConfigurationFlags {
479 IPV4DHCPIP = 0x00000001,
480 IPV4DHCPDNS = 0x00000002,
481 IPV4DHCPRoutes = 0x00000004,
482 IPV4LocalOnly = 0x00000008,
483 IPV4StartConnectionSharingServer = 0x00000010,
484 IPV4Disabled = 0x00000020,
485 IPV4MayUseAsDefaultRoute = 0x00000040,
486 IPV6DHCPIP = 0x00000080,
487 IPV6DHCPDNS = 0x00000100,
488 IPV6DHCPRoutes = 0x00000200,
489 IPV6LocalOnly = 0x00000400,
490 IPV6StartConnectionSharingServer = 0x00000800,
491 IPV6Disabled = 0x00001000,
492 IPV6MayUseAsDefaultRoute = 0x00002000
495 CREATE_FLAG_BITWISE_MANIPULATION_FUNCTIONS(TDENetworkIPConfigurationFlags)
498 class TDECORE_EXPORT TDENetworkSearchDomain
501 TDENetworkSearchDomain();
502 TDENetworkSearchDomain(TQString domain,
bool ipv6=
false);
503 ~TDENetworkSearchDomain();
505 TQString searchDomain();
506 void setSearchDomain(TQString domain,
bool ipv6=
false);
516 typedef TQValueList<TDENetworkSearchDomain> TDENetworkSearchDomainList;
518 class TDECORE_EXPORT TDENetMask
522 TDENetMask(TQ_UINT32 netmask);
523 TDENetMask(TQ_UINT8* netmask);
526 void fromCIDRMask(
unsigned char mask,
bool ipv6=
false);
527 unsigned char toCIDRMask();
528 void fromString(TQString mask);
535 TQ_UINT32 m_ipv4NetMask;
536 TQHostAddress m_ipv6NetMask;
540 class TDECORE_EXPORT TDEMACAddress
544 TDEMACAddress(TDENetworkByteList address);
547 TDENetworkByteList address();
548 void setAddress(TDENetworkByteList address);
550 void fromString(TQString address);
555 TDENetworkByteList m_macAddress;
557 friend bool operator==(
const TDEMACAddress &a1,
const TDEMACAddress &a2);
558 friend bool operator<(
const TDEMACAddress &a1,
const TDEMACAddress &a2);
561 TDECORE_EXPORT
bool operator==(
const TDEMACAddress &a1,
const TDEMACAddress &a2);
562 TDECORE_EXPORT
bool operator<(
const TDEMACAddress &a1,
const TDEMACAddress &a2);
564 typedef TQValueList<TDEMACAddress> TDEMACAddressList;
566 class TDECORE_EXPORT TDENetworkSingleIPConfiguration
569 TDENetworkSingleIPConfiguration();
570 ~TDENetworkSingleIPConfiguration();
577 TQHostAddress ipAddress;
578 TDENetMask networkMask;
579 TQHostAddress gateway;
582 typedef TQValueList<TDENetworkSingleIPConfiguration> TDENetworkSingleIPConfigurationList;
584 class TDECORE_EXPORT TDENetworkSingleRouteConfiguration
587 TDENetworkSingleRouteConfiguration();
588 ~TDENetworkSingleRouteConfiguration();
595 TQHostAddress ipAddress;
596 TDENetMask networkMask;
597 TQHostAddress gateway;
601 typedef TQValueList<TDENetworkSingleRouteConfiguration> TDENetworkSingleRouteConfigurationList;
603 class TDECORE_EXPORT TDENetworkIEEE8021xConfiguration
606 TDENetworkIEEE8021xConfiguration();
607 ~TDENetworkIEEE8021xConfiguration();
613 TDENetworkIEEE8021xType::TDENetworkIEEE8021xType type;
615 TQString anonymousUserName;
616 TQString pacFileName;
617 TQByteArray caCertificate;
618 TQString additionalCAFilesPath;
619 TQString authServerCertSubjectMatch;
620 TQStringList alternateAuthServerCertSubjectMatch;
621 TQByteArray clientCertificate;
622 TQString forcePEAPVersion;
623 TQString forcePEAPLabel;
624 TDENetworkIEEE8021xFastFlags::TDENetworkIEEE8021xFastFlags fastProvisioningFlags;
625 TDENetworkIEEE8021xType::TDENetworkIEEE8021xType phase2NonEAPAuthMethod;
626 TDENetworkIEEE8021xType::TDENetworkIEEE8021xType phase2EAPAuthMethod;
627 TDENetworkIEEE8021xTypeList allowedPhase2NonEAPMethods;
628 TDENetworkIEEE8021xTypeList allowedPhase2EAPMethods;
629 TQByteArray phase2CaCertificate;
630 TQString phase2CaFilesPath;
631 TQString phase2AuthServerCertSubjectMatch;
632 TQStringList phase2AlternateAuthServerCertSubjectMatch;
633 TQByteArray phase2ClientCertificate;
635 TDENetworkPasswordHandlingFlags::TDENetworkPasswordHandlingFlags passwordFlags;
636 TQByteArray binaryPassword;
637 TDENetworkPasswordHandlingFlags::TDENetworkPasswordHandlingFlags binaryPasswordFlags;
638 TQByteArray privateKey;
639 TQString privateKeyPassword;
640 TDENetworkPasswordHandlingFlags::TDENetworkPasswordHandlingFlags privateKeyPasswordFlags;
641 TQByteArray phase2PrivateKey;
642 TQString phase2PrivateKeyPassword;
643 TDENetworkPasswordHandlingFlags::TDENetworkPasswordHandlingFlags phase2PrivateKeyPasswordFlags;
644 bool forceSystemCaCertificates;
647 class TDECORE_EXPORT TDENetworkPPPConfiguration
650 TDENetworkPPPConfiguration();
651 virtual ~TDENetworkPPPConfiguration();
655 bool requireServerAuthentication;
656 TDENetworkPPPFlags::TDENetworkPPPFlags flags;
660 TQ_UINT32 lcpEchoPingInterval;
661 TQ_UINT32 lcpEchoFailureThreshold;
664 class TDECORE_EXPORT TDENetworkPPPOEConfiguration
667 TDENetworkPPPOEConfiguration();
668 virtual ~TDENetworkPPPOEConfiguration();
673 TQString networkServiceProvider;
676 TDENetworkPasswordHandlingFlags::TDENetworkPasswordHandlingFlags passwordFlags;
679 class TDECORE_EXPORT TDENetworkSerialConfiguration
682 TDENetworkSerialConfiguration();
683 virtual ~TDENetworkSerialConfiguration();
689 TDENetworkParity::TDENetworkParity parity;
694 class TDECORE_EXPORT TDENetworkCDMAConfiguration
697 TDENetworkCDMAConfiguration();
698 virtual ~TDENetworkCDMAConfiguration();
703 TQString providerDataNumber;
706 TDENetworkPasswordHandlingFlags::TDENetworkPasswordHandlingFlags passwordFlags;
709 class TDECORE_EXPORT TDENetworkGSMConfiguration
712 TDENetworkGSMConfiguration();
713 virtual ~TDENetworkGSMConfiguration();
718 TQString providerDataNumber;
721 TDENetworkPasswordHandlingFlags::TDENetworkPasswordHandlingFlags passwordFlags;
722 TQString accessPointName;
724 TDEGSMNetworkType::TDEGSMNetworkType networkType;
726 TDENetworkPasswordHandlingFlags::TDENetworkPasswordHandlingFlags pinFlags;
727 TQ_UINT32 allowedFrequencyBands;
732 class TDENetworkWiFiSecurityConfiguration
735 TDENetworkWiFiSecurityConfiguration();
736 ~TDENetworkWiFiSecurityConfiguration();
741 TDENetworkWiFiKeyType::TDENetworkWiFiKeyType keyType;
742 TDENetworkWiFiAuthType::TDENetworkWiFiAuthType authType;
743 TDENetworkWiFiWPAVersionFlags::TDENetworkWiFiWPAVersionFlags wpaVersion;
744 TDENetworkWiFiConnectionCipher::TDENetworkWiFiConnectionCipher cipher;
749 TDENetworkPasswordHandlingFlags::TDENetworkPasswordHandlingFlags wepKeyFlags;
750 TQ_UINT32 wepKeyIndex;
751 TDENetworkWepKeyType::TDENetworkWepKeyType wepKeyType;
752 TDENetworkWiFiConnectionCipherList allowedPairWiseCiphers;
753 TDENetworkWiFiConnectionCipherList allowedGroupWiseCiphers;
755 TDENetworkPasswordHandlingFlags::TDENetworkPasswordHandlingFlags pskFlags;
756 TQString leapUsername;
757 TQString leapPassword;
758 TDENetworkPasswordHandlingFlags::TDENetworkPasswordHandlingFlags leapPasswordFlags;
761 class TDECORE_EXPORT TDENetworkIPConfiguration
764 TDENetworkIPConfiguration();
765 ~TDENetworkIPConfiguration();
769 TDENetworkIPConfigurationFlags::TDENetworkIPConfigurationFlags connectionFlags;
770 TDENetworkSingleIPConfigurationList ipConfigurations;
771 TDENetworkSingleRouteConfigurationList routeConfigurations;
772 TQHostAddress broadcast;
773 TQHostAddress destination;
774 TDENetworkAddressList resolvers;
775 TDENetworkSearchDomainList searchDomains;
776 TQString dhcpClientIdentifier;
779 class TDECORE_EXPORT TDENetworkWiFiDeviceInfo
782 TDENetworkWiFiDeviceInfo();
783 ~TDENetworkWiFiDeviceInfo();
787 TDEMACAddress hwAddress;
788 TDEMACAddress permanentHWAddress;
789 TDEWiFiMode::TDEWiFiMode operatingMode;
790 unsigned int bitrate;
791 TDEMACAddress activeAccessPointBSSID;
792 TDENetworkWiFiClientFlags::TDENetworkWiFiClientFlags wirelessFlags;
795 class TDECORE_EXPORT TDENetworkDeviceInformation
798 TDENetworkDeviceInformation();
799 ~TDENetworkDeviceInformation();
803 TDENetworkConnectionStatus::TDENetworkConnectionStatus statusFlags;
805 TQString backendDriver;
806 TQString backendDriverVersion;
807 TQString firmwareVersion;
808 TDENetworkDeviceCapabilityFlags::TDENetworkDeviceCapabilityFlags capabilityFlags;
809 TDENetworkIPConfiguration ipConfiguration;
812 bool firmwareMissing;
813 TDENetworkDeviceType::TDENetworkDeviceType deviceType;
814 TQString activeConnectionUUID;
815 TDENetworkWiFiDeviceInfo wiFiInfo;
818 class TDECORE_EXPORT TDENetworkHWNeighbor
821 TDENetworkHWNeighbor();
822 virtual ~TDENetworkHWNeighbor();
828 class TDECORE_EXPORT TDENetworkWiFiAPInfo :
public TDENetworkHWNeighbor
831 TDENetworkWiFiAPInfo();
832 virtual ~TDENetworkWiFiAPInfo();
835 TQString friendlySSID()
const;
839 TDENetworkWiFiAPFlags::TDENetworkWiFiAPFlags wpaFlags;
840 TDENetworkWiFiAPFlags::TDENetworkWiFiAPFlags rsnFlags;
841 unsigned int frequency;
843 unsigned int maxBitrate;
844 double signalQuality;
847 typedef TQPtrList< TDENetworkHWNeighbor > TDENetworkHWNeighborList;
849 class TDECORE_EXPORT TDENetworkConnection
852 TDENetworkConnection();
853 virtual ~TDENetworkConnection();
856 TDENetworkConnectionType::TDENetworkConnectionType type();
860 TQString friendlyName;
861 TDENetworkIPConfiguration ipConfig;
862 TDEMACAddress lockedHWAddress;
863 TDEMACAddress manualHWAddress;
870 TDENetworkIEEE8021xConfiguration eapConfig;
871 TDENetworkPPPConfiguration pppConfig;
872 TDENetworkPPPOEConfiguration pppoeConfig;
873 TDENetworkSerialConfiguration serialConfig;
874 TQStringList authorizedUsers;
875 TQString masterConnectionUUID;
876 TDENetworkSlaveDeviceType::TDENetworkSlaveDeviceType slaveType;
877 TQDateTime lastKnownConnection;
880 class TDECORE_EXPORT TDEWiredEthernetConnection :
public TDENetworkConnection
883 TDEWiredEthernetConnection();
884 virtual ~TDEWiredEthernetConnection();
887 class TDECORE_EXPORT TDEWiFiConnection :
public TDENetworkConnection
891 virtual ~TDEWiFiConnection();
895 TDEWiFiMode::TDEWiFiMode operatingMode;
896 TDEWiFiFrequencyBand::TDEWiFiFrequencyBand bandRestriction;
897 TQ_INT32 channelRestriction;
898 TQ_INT32 bitRateRestriction;
899 TQ_INT32 powerRestriction;
900 TDEMACAddress accessPointRestriction;
901 TDEMACAddressList blacklistedBSSIDs;
902 TDEMACAddressList heardBSSIDs;
903 bool isHiddenNetwork;
904 bool securityRequired;
905 TDENetworkWiFiSecurityConfiguration securitySettings;
908 class TDECORE_EXPORT TDEWiredInfinibandConnection :
public TDENetworkConnection
911 TDEWiredInfinibandConnection();
912 virtual ~TDEWiredInfinibandConnection();
915 TDENetworkInfinibandTransportMode::TDENetworkInfinibandTransportMode transportMode;
918 class TDECORE_EXPORT TDEVPNConnection :
public TDENetworkConnection
922 virtual ~TDEVPNConnection();
925 TQString vpnPluginID;
926 TQString lockedUserName;
927 TDENetworkSettingsMap pluginData;
929 TDENetworkSettingsMap pluginSecrets;
932 class TDECORE_EXPORT TDEWiMaxConnection :
public TDENetworkConnection
935 TDEWiMaxConnection();
936 virtual ~TDEWiMaxConnection();
939 TQString networkServiceProvider;
942 class TDECORE_EXPORT TDEVLANConnection :
public TDENetworkConnection
946 virtual ~TDEVLANConnection();
950 TQString parentConnectionUUID;
952 TDENetworkVLANFlags::TDENetworkVLANFlags vlanFlags;
953 TDENetworkPriorityMap ingressPriorityMap;
954 TDENetworkPriorityMap egressPriorityMap;
957 class TDECORE_EXPORT TDEOLPCMeshConnection :
public TDENetworkConnection
960 TDEOLPCMeshConnection();
961 virtual ~TDEOLPCMeshConnection();
966 TQByteArray anycastDHCPHWAddress;
969 class TDECORE_EXPORT TDEBluetoothConnection :
public TDENetworkConnection
972 TDEBluetoothConnection();
973 virtual ~TDEBluetoothConnection();
976 TDEBluetoothConnectionType::TDEBluetoothConnectionType type;
979 class TDECORE_EXPORT TDEModemConnection :
public TDENetworkConnection
982 TDEModemConnection();
983 virtual ~TDEModemConnection();
986 TDEModemConnectionType::TDEModemConnectionType type;
987 TDENetworkCDMAConfiguration cdmaConfig;
988 TDENetworkGSMConfiguration gsmConfig;
991 typedef TQPtrList< TDENetworkConnection > TDENetworkConnectionList;
1000 TDENetworkGlobalManagerFlags::TDENetworkGlobalManagerFlags newState;
1001 TDENetworkGlobalManagerFlags::TDENetworkGlobalManagerFlags previousState;
1002 TDENetworkConnectionStatus::TDENetworkConnectionStatus newConnStatus;
1003 TDENetworkConnectionStatus::TDENetworkConnectionStatus previousConnStatus;
1004 TDEMACAddress BSSID;
1006 TQString deviceNode;
1007 TDENetworkAPEventType::TDENetworkAPEventType apevent;
1008 TDENetworkDeviceEventType::TDENetworkDeviceEventType ndevent;
1009 TDENetworkVPNEventType::TDENetworkVPNEventType vpnevent;
1010 TDENetworkGlobalEventType::TDENetworkGlobalEventType globalevent;
1012 typedef TQValueList<TDENetworkEventQueueEvent_Private> TDENetworkEventQueueEvent_PrivateList;
1016 class TDECORE_EXPORT TDENetworkConnectionManager :
public TQObject
1027 TDENetworkConnectionManager(TDENetworkDevice *networkDevice);
1032 ~TDENetworkConnectionManager();
1037 virtual TQString backendName() = 0;
1042 virtual TDENetworkDeviceType::TDENetworkDeviceType deviceType() = 0;
1047 virtual TDENetworkGlobalManagerFlags::TDENetworkGlobalManagerFlags backendStatus() = 0;
1052 virtual TDENetworkDeviceInformation deviceInformation() = 0;
1062 virtual TDENetworkDeviceInformation deviceStatus() = 0;
1070 virtual void loadConnectionInformation() = 0;
1078 virtual void loadConnectionAllowedValues(TDENetworkConnection* connection) = 0;
1085 virtual bool loadConnectionSecrets(TQString uuid) = 0;
1092 virtual bool saveConnection(TDENetworkConnection* connection) = 0;
1099 virtual bool deleteConnection(TQString uuid) = 0;
1110 virtual bool verifyConnectionSettings(TDENetworkConnection* connection, TDENetworkConnectionErrorFlags::TDENetworkConnectionErrorFlags* type=NULL, TDENetworkErrorStringMap* reason=NULL) = 0;
1119 virtual TDENetworkConnectionStatus::TDENetworkConnectionStatus initiateConnection(TQString uuid) = 0;
1125 virtual TDENetworkConnectionStatus::TDENetworkConnectionStatus checkConnectionStatus(TQString uuid) = 0;
1132 virtual TDENetworkConnectionStatus::TDENetworkConnectionStatus deactivateConnection(TQString uuid) = 0;
1139 virtual TQStringList validSettings() = 0;
1150 virtual TDENetworkHWNeighborList* siteSurvey() = 0;
1158 virtual TQStringList connectionPhysicalDeviceUUIDs(TQString uuid) = 0;
1164 virtual TDENetworkVPNTypeList availableVPNTypes() = 0;
1169 virtual bool networkingEnabled() = 0;
1175 virtual bool enableNetworking(
bool enable) = 0;
1180 virtual bool wiFiHardwareEnabled() = 0;
1186 virtual bool enableWiFi(
bool enable) = 0;
1191 virtual bool wiFiEnabled() = 0;
1197 virtual TQStringList defaultNetworkDevices() = 0;
1204 void networkConnectionStateChanged(TDENetworkGlobalManagerFlags::TDENetworkGlobalManagerFlags newState, TDENetworkGlobalManagerFlags::TDENetworkGlobalManagerFlags previousState);
1212 void networkDeviceStateChanged(TDENetworkConnectionStatus::TDENetworkConnectionStatus newState, TDENetworkConnectionStatus::TDENetworkConnectionStatus previousState, TQString deviceNode);
1218 void accessPointStatusChanged(TDEMACAddress BSSID, TDENetworkAPEventType::TDENetworkAPEventType event);
1225 void networkDeviceEvent(TDENetworkDeviceEventType::TDENetworkDeviceEventType event, TQString message);
1232 void vpnEvent(TDENetworkVPNEventType::TDENetworkVPNEventType event, TQString message);
1238 void networkManagementEvent(TDENetworkGlobalEventType::TDENetworkGlobalEventType event);
1254 virtual TDENetworkConnectionList* connections();
1259 TQString deviceNode();
1264 TQString deviceMACAddress();
1272 TDENetworkConnection* findConnectionByUUID(TQString uuid);
1280 TDENetworkDevice* findDeviceByUUID(TQString uuid);
1288 TDENetworkWiFiAPInfo* findAccessPointByBSSID(TDEMACAddress bssid);
1293 static TQString friendlyConnectionTypeName(TDENetworkConnectionType::TDENetworkConnectionType type);
1298 static bool validateIPAddress(TQHostAddress address);
1303 static bool validateIPNeworkMask(TQHostAddress netmask);
1309 void clearTDENetworkConnectionList();
1314 void clearTDENetworkHWNeighborList();
1320 void internalNetworkConnectionStateChanged(TDENetworkGlobalManagerFlags::TDENetworkGlobalManagerFlags newState);
1326 void internalNetworkDeviceStateChanged(TDENetworkConnectionStatus::TDENetworkConnectionStatus newState, TQString deviceNode=TQString::null);
1332 void internalAccessPointStatusChanged(TDEMACAddress BSSID, TDENetworkAPEventType::TDENetworkAPEventType event);
1338 void internalNetworkDeviceEvent(TDENetworkDeviceEventType::TDENetworkDeviceEventType event, TQString message);
1344 void internalVpnEvent(TDENetworkVPNEventType::TDENetworkVPNEventType event, TQString message);
1350 void internalNetworkManagementEvent(TDENetworkGlobalEventType::TDENetworkGlobalEventType event);
1353 void emitQueuedSignals();
1356 TDENetworkConnectionList* m_connectionList;
1357 TDENetworkHWNeighborList* m_hwNeighborList;
1358 TDENetworkDevice* m_networkDevice;
1359 TDENetworkGlobalManagerFlags::TDENetworkGlobalManagerFlags m_prevConnectionStatus;
1360 TQMap<TQString, TDENetworkConnectionStatus::TDENetworkConnectionStatus> m_prevDeviceStatus;
1361 TQTimer* m_emissionTimer;
1362 TDENetworkEventQueueEvent_PrivateList m_globalEventQueueEventList;
1365 class TDECORE_EXPORT TDEGlobalNetworkManager :
public TQObject
1373 TDEGlobalNetworkManager();
1378 ~TDEGlobalNetworkManager();
1383 virtual TQString backendName();
1388 virtual TDENetworkGlobalManagerFlags::TDENetworkGlobalManagerFlags backendStatus();
1396 virtual void loadConnectionInformation();
1404 virtual void loadConnectionAllowedValues(TDENetworkConnection* connection);
1411 virtual bool loadConnectionSecrets(TQString uuid);
1418 virtual bool saveConnection(TDENetworkConnection* connection);
1425 virtual bool deleteConnection(TQString uuid);
1436 virtual bool verifyConnectionSettings(TDENetworkConnection* connection, TDENetworkConnectionErrorFlags::TDENetworkConnectionErrorFlags* type=NULL, TDENetworkErrorStringMap* reason=NULL);
1443 virtual TDENetworkConnectionStatus::TDENetworkConnectionStatus initiateConnection(TQString uuid);
1449 virtual TDENetworkConnectionStatus::TDENetworkConnectionStatus checkConnectionStatus(TQString uuid);
1456 virtual TDENetworkConnectionStatus::TDENetworkConnectionStatus deactivateConnection(TQString uuid);
1463 virtual TQStringList validSettings();
1474 virtual TDENetworkHWNeighborList* siteSurvey();
1482 virtual TQStringList connectionPhysicalDeviceUUIDs(TQString uuid);
1488 virtual TDENetworkVPNTypeList availableVPNTypes();
1493 virtual bool networkingEnabled();
1499 virtual bool enableNetworking(
bool enable);
1504 virtual bool wiFiHardwareEnabled();
1510 virtual bool enableWiFi(
bool enable);
1515 virtual bool wiFiEnabled();
1521 virtual TQStringList defaultNetworkDevices();
1528 void networkConnectionStateChanged(TDENetworkGlobalManagerFlags::TDENetworkGlobalManagerFlags newState, TDENetworkGlobalManagerFlags::TDENetworkGlobalManagerFlags previousState);
1536 void networkDeviceStateChanged(TDENetworkConnectionStatus::TDENetworkConnectionStatus newState, TDENetworkConnectionStatus::TDENetworkConnectionStatus previousState, TQString deviceNode);
1542 void accessPointStatusChanged(TDEMACAddress BSSID, TDENetworkAPEventType::TDENetworkAPEventType event);
1549 void vpnEvent(TDENetworkVPNEventType::TDENetworkVPNEventType event, TQString message);
1555 void networkManagementEvent(TDENetworkGlobalEventType::TDENetworkGlobalEventType event);
1571 virtual TDENetworkConnectionList* connections();
1579 TDENetworkConnection* findConnectionByUUID(TQString uuid);
1587 TDENetworkDevice* findDeviceByUUID(TQString uuid);
1595 TDENetworkWiFiAPInfo* findAccessPointByBSSID(TDEMACAddress bssid);
1598 TDENetworkConnectionManager* m_internalConnectionManager;