2
2
// All changes you do to this file will be lost.
4
4
#include "802-11-wireless-security.h"
5
#include "802-11-wireless-securitysecrets.h"
9
WirelessSecuritySetting::WirelessSecuritySetting() : Setting(Setting::WirelessSecurity)
10
, mSecurityType(WirelessSecuritySetting::EnumSecurityType::None), mKeymgmt(0), mWeptxkeyindex(0), mAuthalg(0), mWepKeyType(None)
8
WirelessSecuritySetting::WirelessSecuritySetting()
9
: Setting(Setting::WirelessSecurity), mSecurityType(WirelessSecuritySetting::EnumSecurityType::None), mKeymgmt(0),
10
mWeptxkeyindex(0), mAuthalg(0), mWepKeyType(None), mWepkeyflags(Setting::AgentOwned), mPskflags(Setting::AgentOwned), mLeappasswordflags(Setting::AgentOwned)
12
m_secretsObject = new WirelessSecuritySecrets(this);
15
14
WirelessSecuritySetting::WirelessSecuritySetting(WirelessSecuritySetting *setting) : Setting(setting)
17
m_secretsObject = new WirelessSecuritySecrets(static_cast<WirelessSecuritySecrets*>(setting->getSecretsObject()), this);
18
16
setSecurityType(setting->securityType());
19
17
setKeymgmt(setting->keymgmt());
20
18
setWeptxkeyindex(setting->weptxkeyindex());
44
42
return QLatin1String("802-11-wireless-security");
46
bool WirelessSecuritySetting::hasSecrets() const
50
switch (mSecurityType)
52
case EnumSecurityType::None:
53
case EnumSecurityType::DynamicWep:
54
case EnumSecurityType::WpaEap:
55
case EnumSecurityType::Wpa2Eap:
57
case EnumSecurityType::StaticWep:
58
case EnumSecurityType::Leap:
59
case EnumSecurityType::WpaPsk:
60
case EnumSecurityType::Wpa2Psk:
66
45
void WirelessSecuritySetting::reset()
84
63
mWepKeyType = None;
87
void WirelessSecuritySetting::setSecrets(Setting::secretsTypes types)
89
switch (mSecurityType)
91
case EnumSecurityType::StaticWep:
92
setWepkeyflags(types);
94
case EnumSecurityType::WpaPsk:
97
case EnumSecurityType::Leap:
98
setLeappasswordflags(types);
66
QMap<QString,QString> WirelessSecuritySetting::secretsToMap() const
68
QMap<QString,QString> map;
69
if (wepkeyflags().testFlag(Setting::AgentOwned)) {
70
map.insert(QLatin1String("wepkey0"), wepkey0());
71
map.insert(QLatin1String("wepkey1"), wepkey1());
72
map.insert(QLatin1String("wepkey2"), wepkey2());
73
map.insert(QLatin1String("wepkey3"), wepkey3());
75
if (pskflags().testFlag(Setting::AgentOwned)) {
76
map.insert(QLatin1String("psk"), psk());
78
if (leappasswordflags().testFlag(Setting::AgentOwned)) {
79
map.insert(QLatin1String("leappassword"), leappassword());
84
void WirelessSecuritySetting::secretsFromMap(QMap<QString,QString> secrets)
86
setWepkey0(secrets.value("wepkey0"));
87
setWepkey1(secrets.value("wepkey1"));
88
setWepkey2(secrets.value("wepkey2"));
89
setWepkey3(secrets.value("wepkey3"));
90
setPsk(secrets.value("psk"));
91
setLeappassword(secrets.value("leappassword"));
92
setSecretsAvailable(true);
95
QStringList WirelessSecuritySetting::needSecrets() const
98
switch (securityType())
100
case WirelessSecuritySetting::EnumSecurityType::None:
101
case WirelessSecuritySetting::EnumSecurityType::DynamicWep:
103
case WirelessSecuritySetting::EnumSecurityType::StaticWep:
104
if (!wepkeyflags().testFlag(Setting::NotRequired)) {
105
switch (weptxkeyindex())
108
if (wepkey0().isEmpty())
109
list.append("wepkey0");
112
if (wepkey1().isEmpty())
113
list.append("wepkey1");
116
if (wepkey2().isEmpty())
117
list.append("wepkey2");
120
if (wepkey3().isEmpty())
121
list.append("wepkey3");
127
case WirelessSecuritySetting::EnumSecurityType::WpaPsk:
128
case WirelessSecuritySetting::EnumSecurityType::Wpa2Psk:
129
if (psk().isEmpty() && !pskflags().testFlag(Setting::NotRequired))
132
case WirelessSecuritySetting::EnumSecurityType::Leap:
133
if (leappassword().isEmpty() && !leappasswordflags().testFlag(Setting::NotRequired))
134
list.append("leappassword");
140
bool WirelessSecuritySetting::hasPersistentSecrets() const
142
bool hasSecrets = false;
143
switch (securityType())
145
case WirelessSecuritySetting::EnumSecurityType::None:
146
case WirelessSecuritySetting::EnumSecurityType::DynamicWep:
148
case WirelessSecuritySetting::EnumSecurityType::StaticWep:
149
if (wepkeyflags().testFlag(Setting::None) || wepkeyflags().testFlag(Setting::AgentOwned))
152
case WirelessSecuritySetting::EnumSecurityType::WpaPsk:
153
case WirelessSecuritySetting::EnumSecurityType::Wpa2Psk:
154
if (pskflags().testFlag(Setting::None) || pskflags().testFlag(Setting::AgentOwned))
157
case WirelessSecuritySetting::EnumSecurityType::Leap:
158
if (leappasswordflags().testFlag(Setting::None) || leappasswordflags().testFlag(Setting::AgentOwned))