Hello community, here is the log from the commit of package NetworkManager-kde checked in at Wed Apr 4 20:34:00 CEST 2007. -------- --- KDE/NetworkManager-kde/NetworkManager-kde.changes 2007-03-26 17:38:35.000000000 +0200 +++ /mounts/work_src_done/STABLE/NetworkManager-kde/NetworkManager-kde.changes 2007-04-04 16:08:10.361064000 +0200 @@ -1,0 +2,6 @@ +Wed Apr 4 15:56:26 CEST 2007 - hschaa@suse.de + +- add patch knetworkmanager-wpaeap_storage-hschaa-01.patch + (fixes b.n.c #253413 and #253414) + +------------------------------------------------------------------- New: ---- knetworkmanager-wpaeap_storage-hschaa-01.patch ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ NetworkManager-kde.spec ++++++ --- /var/tmp/diff_new_pack.YO1744/_old 2007-04-04 20:32:21.000000000 +0200 +++ /var/tmp/diff_new_pack.YO1744/_new 2007-04-04 20:32:21.000000000 +0200 @@ -20,7 +20,7 @@ Group: System/GUI/KDE Autoreqprov: on Version: 0.1r646731 -Release: 1 +Release: 6 Summary: KNetworkManager application for use with NetworkManager BuildRoot: %{_tmppath}/%{name}-%{version}-build Requires: NetworkManager @@ -30,6 +30,7 @@ Patch0: knetworkmanager-kde-networkstatus-wstephenson-01.patch Patch1: knetworkmanager-fallback-thoenig-03.patch Patch2: fix-desktop-icon.diff +Patch3: knetworkmanager-wpaeap_storage-hschaa-01.patch %description KNetworkManager is a system tray applet for controlling network @@ -98,6 +99,7 @@ %patch0 -p0 %patch1 -p0 %patch2 +%patch3 %build . /etc/opt/kde3/common_options @@ -161,6 +163,9 @@ /opt/kde3/share/services/%{appname}_vpnc.desktop %changelog +* Wed Apr 04 2007 - hschaa@suse.de +- add patch knetworkmanager-wpaeap_storage-hschaa-01.patch + (fixes b.n.c #253413 and #253414) * Mon Mar 26 2007 - hschaa@suse.de - update to KDE SVN r646731 (fixes b.n.c #230683, #254352) * Fri Mar 09 2007 - stbinner@suse.de ++++++ knetworkmanager-0.1r646731.tar.bz2 ++++++ ++++ 6580 lines of diff (skipped) ++++++ knetworkmanager-kde-networkstatus-wstephenson-01.patch ++++++ --- /var/tmp/diff_new_pack.YO1744/_old 2007-04-04 20:32:22.000000000 +0200 +++ /var/tmp/diff_new_pack.YO1744/_new 2007-04-04 20:32:22.000000000 +0200 @@ -4,8 +4,8 @@ authentication.ui knetworkmanager-vpnauthenticationdialog.cpp \ unknownservice.ui knetworkmanager-plugin.cpp \ knetworkmanager-pluginmanager.cpp knetworkmanager-connectioninfodialog.cpp \ -- connectioninfowidget.ui -+ connectioninfowidget.ui serviceiface.stub +- connectioninfowidget.ui knetworkmanager-settings.cpp generalsettings.ui ++ connectioninfowidget.ui knetworkmanager-settings.cpp generalsettings.ui serviceiface.stub + +serviceiface_DIR = /opt/kde3/include ++++++ knetworkmanager-wpaeap_storage-hschaa-01.patch ++++++ --- knetworkmanager/src/knetworkmanager-dialogfab.cpp +++ knetworkmanager/src/knetworkmanager-dialogfab.cpp @@ -235,6 +235,24 @@ { updateModel(); + /* + if the network with the entered essid is already in our list + we use the one in our list instead of the newly created one. + But we have to transfer the encryption object. + */ + NetworkList nets = _dev->getNetworkList(); + for (NetworkList::Iterator it = nets.begin(); it != nets.end(); ++it) { + if ((*it)->getEssid() == _net->getEssid()) { + // move encryption object to the network in the list + (*it)->setEncryption(_net->getEncryption()); + _net->setEncryption(NULL); + // next steps should take our list network + delete _net; + _net = (*it); + break; + } + } + _dev->setPendingNetwork (_net); emit activateNetwork (_net, _dev); @@ -512,6 +530,7 @@ SecretMap map = enc->getSecrets(); map.insert( EncryptionWPAEnterprise::IdPasswordKey, identityPassword ); enc->setSecrets (map); + updateModel (); } void @@ -550,6 +569,7 @@ SecretMap map = enc->getSecrets(); map.insert( EncryptionWPAEnterprise::CertPrivatePasswordKey, certPrivatePassword ); enc->setSecrets (map); + updateModel (); } void --- knetworkmanager/src/knetworkmanager-encryption.cpp +++ knetworkmanager/src/knetworkmanager-encryption.cpp @@ -109,7 +109,7 @@ bool Encryption::persistKey (void) const { - if ( !_secret["password"].isEmpty() && _network ) + if ( !_secret.isEmpty() && _network ) _keyStored = KNetworkManagerStorage::getInstance( )->storeCredentials( _network->getEssid( ), _secret); return _keyStored; @@ -599,9 +599,14 @@ int keyType = NM_AUTH_TYPE_WPA_PSK_AUTO; - if (!msg || !essid || !isValid( essid ) ) + if (!msg || !essid ) return false; + if (! (_keyStored && _secret[IdPasswordKey].length() == 0 && _secret[CertPrivatePasswordKey].length() == 0)) { + if (!isValid( essid )) + return false; + } + /* FIXME: If the user denies access to kwallet we'd send NULL over the bus. Avoid that. */ if (!_secret[IdPasswordKey]) _secret[IdPasswordKey] = ""; @@ -671,7 +676,8 @@ bool EncryptionWPAEnterprise::isValid (const QString & essid) { - if (essid.length ()) + bool hasSecret = (_secret[IdPasswordKey].length() > 0) || (_secret[CertPrivatePasswordKey].length() > 0); + if (essid.length () && hasSecret) return true; else return false; @@ -826,7 +832,7 @@ } -void EncryptionWPAEnterprise::persist( KConfigBase * cfg, bool /*withKey*/ ) const +void EncryptionWPAEnterprise::persist( KConfigBase * cfg, bool withKey ) const { kdDebug() << k_funcinfo << endl; @@ -855,11 +861,16 @@ else cfg->writeEntry( "WPAVersion", "WPA2" ); + if ( withKey ) + this->persistKey( ); + + cfg->writeEntry ( "KeyStored", _keyStored ); + cfg->writeEntry ( "Cipher", _we_cipher ); _dirty = false; } -void EncryptionWPAEnterprise::restore( KConfigBase * cfg, double /*version*/, bool /*withKey*/) +void EncryptionWPAEnterprise::restore( KConfigBase * cfg, double /*version*/, bool withKey) { kdDebug() << k_funcinfo << endl; @@ -894,6 +905,10 @@ _certCA = cfg->readEntry( "CertCA" ); // _we_cipher is not used in WPAEnterprise, so no verison check required _we_cipher = cfg->readNumEntry( "Cipher", -1 ); + _keyStored = cfg->readBoolEntry ( "KeyStored", false ); + + if ( withKey && _keyStored ) + this->restoreKey( ); _dirty = false; } ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Remember to have fun... --------------------------------------------------------------------- To unsubscribe, e-mail: opensuse-commit+unsubscribe@opensuse.org For additional commands, e-mail: opensuse-commit+help@opensuse.org
participants (1)
-
root@Hilbert.suse.de