aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--src/net/java/sip/communicator/plugin/sipaccregwizz/SIPAccountRegistrationForm.java4
-rw-r--r--src/net/java/sip/communicator/plugin/sipaccregwizz/SIPAccountRegistrationWizard.java7
-rw-r--r--src/net/java/sip/communicator/service/protocol/AccountManager.java12
3 files changed, 22 insertions, 1 deletions
diff --git a/src/net/java/sip/communicator/plugin/sipaccregwizz/SIPAccountRegistrationForm.java b/src/net/java/sip/communicator/plugin/sipaccregwizz/SIPAccountRegistrationForm.java
index 902b62e..4c92812 100644
--- a/src/net/java/sip/communicator/plugin/sipaccregwizz/SIPAccountRegistrationForm.java
+++ b/src/net/java/sip/communicator/plugin/sipaccregwizz/SIPAccountRegistrationForm.java
@@ -384,6 +384,10 @@ public class SIPAccountRegistrationForm
accountPanel.setPassword(password);
accountPanel.setRememberPassword(true);
}
+ else
+ {
+ accountPanel.setRememberPassword(false);
+ }
connectionPanel.setServerAddress(serverAddress);
connectionPanel.setServerEnabled(isServerOverridden);
diff --git a/src/net/java/sip/communicator/plugin/sipaccregwizz/SIPAccountRegistrationWizard.java b/src/net/java/sip/communicator/plugin/sipaccregwizz/SIPAccountRegistrationWizard.java
index f16d46f..0846193 100644
--- a/src/net/java/sip/communicator/plugin/sipaccregwizz/SIPAccountRegistrationWizard.java
+++ b/src/net/java/sip/communicator/plugin/sipaccregwizz/SIPAccountRegistrationWizard.java
@@ -365,6 +365,11 @@ public class SIPAccountRegistrationWizard
{
accountProperties.put(ProtocolProviderFactory.PASSWORD, passwd);
}
+ else
+ {
+ // clear password if requested
+ registration.setPassword(null);
+ }
String serverAddress = null;
String serverFromUsername =
@@ -377,7 +382,7 @@ public class SIPAccountRegistrationWizard
&& registration.getDefaultDomain() != null)
{
// we have only a username and we want to add
- // a defautl domain
+ // a default domain
userName = userName + "@" + registration.getDefaultDomain();
if(serverAddress == null)
diff --git a/src/net/java/sip/communicator/service/protocol/AccountManager.java b/src/net/java/sip/communicator/service/protocol/AccountManager.java
index 7a17c05..0a93b7f 100644
--- a/src/net/java/sip/communicator/service/protocol/AccountManager.java
+++ b/src/net/java/sip/communicator/service/protocol/AccountManager.java
@@ -616,6 +616,18 @@ public class AccountManager
}
}
+ // clear the password if missing property, modification can request
+ // password delete
+ if(!accountProperties.containsKey(ProtocolProviderFactory.PASSWORD))
+ {
+ CredentialsStorageService credentialsStorage
+ = ServiceUtils.getService(
+ bundleContext,
+ CredentialsStorageService.class);
+ credentialsStorage.removePassword(
+ factoryPackage + "." + accountNodeName);
+ }
+
if (configurationProperties.size() > 0)
configurationService.setProperties(configurationProperties);