aboutsummaryrefslogtreecommitdiffstats
path: root/src/net/java/sip/communicator/impl/protocol/irc
diff options
context:
space:
mode:
authorDanny van Heumen <danny@dannyvanheumen.nl>2015-01-20 19:28:31 +0100
committerDanny van Heumen <danny@dannyvanheumen.nl>2015-04-03 21:37:01 +0200
commit89e35bf75c3420553ebbf6efbbff3c4d6f55ee05 (patch)
tree844d6189f0e044808c251de967ca8953ff643926 /src/net/java/sip/communicator/impl/protocol/irc
parent71d61592c32789006d31c297ddf35d95c973924c (diff)
downloadjitsi-89e35bf75c3420553ebbf6efbbff3c4d6f55ee05.zip
jitsi-89e35bf75c3420553ebbf6efbbff3c4d6f55ee05.tar.gz
jitsi-89e35bf75c3420553ebbf6efbbff3c4d6f55ee05.tar.bz2
Started work on SASL authentication panel in IRC account configuration.
Diffstat (limited to 'src/net/java/sip/communicator/impl/protocol/irc')
-rw-r--r--src/net/java/sip/communicator/impl/protocol/irc/IrcConnection.java23
-rw-r--r--src/net/java/sip/communicator/impl/protocol/irc/ProtocolProviderFactoryIrcImpl.java20
-rw-r--r--src/net/java/sip/communicator/impl/protocol/irc/ProtocolProviderServiceIrcImpl.java12
-rw-r--r--src/net/java/sip/communicator/impl/protocol/irc/irc.provider.manifest.mf1
4 files changed, 55 insertions, 1 deletions
diff --git a/src/net/java/sip/communicator/impl/protocol/irc/IrcConnection.java b/src/net/java/sip/communicator/impl/protocol/irc/IrcConnection.java
index 09b7f83..5c56e6e 100644
--- a/src/net/java/sip/communicator/impl/protocol/irc/IrcConnection.java
+++ b/src/net/java/sip/communicator/impl/protocol/irc/IrcConnection.java
@@ -218,8 +218,31 @@ public class IrcConnection
}
else
{
+ // FIXME correctly determine capabilities and SASL authentication
+ // enabled
return new SaslNegotiator(user, password, null);
}
+ // FIXME DEBUG CODE remove
+// final ArrayList<Capability> caps = new ArrayList<Capability>();
+// caps.add(new SimpleCapability("away-notify"));
+// if (password != null)
+// {
+// caps.add(new SaslCapability(true, null, user, password));
+// }
+// return new CompositeNegotiator(caps, new CompositeNegotiator.Host()
+// {
+// @Override
+// public void reject(Capability cap)
+// {
+// LOGGER.warn("REJECTED: " + cap.getId());
+// }
+//
+// @Override
+// public void acknowledge(Capability cap)
+// {
+// LOGGER.warn("ACKED: " + cap.getId());
+// }
+// });
}
/**
diff --git a/src/net/java/sip/communicator/impl/protocol/irc/ProtocolProviderFactoryIrcImpl.java b/src/net/java/sip/communicator/impl/protocol/irc/ProtocolProviderFactoryIrcImpl.java
index fb8e0ef..e599440 100644
--- a/src/net/java/sip/communicator/impl/protocol/irc/ProtocolProviderFactoryIrcImpl.java
+++ b/src/net/java/sip/communicator/impl/protocol/irc/ProtocolProviderFactoryIrcImpl.java
@@ -37,6 +37,26 @@ public class ProtocolProviderFactoryIrcImpl
public static final String CONTACT_PRESENCE_TASK = "CONTACT_PRESENCE_TASK";
/**
+ * Property indicating SASL is enabled.
+ */
+ public static final String SASL_ENABLED = "SASL_ENABLED";
+
+ /**
+ * Property for SASL user name.
+ */
+ public static final String SASL_USERNAME = "SASL_USERNAME";
+
+ /**
+ * Property for SASL password.
+ */
+ public static final String SASL_PASSWORD = "SASL_PASSWORD";
+
+ /**
+ * Property for SASL authorization role.
+ */
+ public static final String SASL_ROLE = "SASL_ROLE";
+
+ /**
* Constructor.
*/
public ProtocolProviderFactoryIrcImpl()
diff --git a/src/net/java/sip/communicator/impl/protocol/irc/ProtocolProviderServiceIrcImpl.java b/src/net/java/sip/communicator/impl/protocol/irc/ProtocolProviderServiceIrcImpl.java
index cc2261c..78eb485 100644
--- a/src/net/java/sip/communicator/impl/protocol/irc/ProtocolProviderServiceIrcImpl.java
+++ b/src/net/java/sip/communicator/impl/protocol/irc/ProtocolProviderServiceIrcImpl.java
@@ -264,6 +264,15 @@ public class ProtocolProviderServiceIrcImpl
accountID.getAccountPropertyBoolean(
ProtocolProviderFactoryIrcImpl.CONTACT_PRESENCE_TASK, true);
+ boolean saslEnabled = accountID.getAccountPropertyBoolean(
+ ProtocolProviderFactoryIrcImpl.SASL_ENABLED, false);
+ String saslUser = accountID.getAccountPropertyString(
+ ProtocolProviderFactoryIrcImpl.SASL_USERNAME);
+ String saslPass = accountID.getAccountPropertyString(
+ ProtocolProviderFactoryIrcImpl.SASL_PASSWORD);
+ String saslRole = accountID.getAccountPropertyString(
+ ProtocolProviderFactoryIrcImpl.SASL_ROLE);
+
//if we don't - retrieve it from the user through the security authority
if (serverPassword == null && passwordRequired)
{
@@ -388,7 +397,8 @@ public class ProtocolProviderServiceIrcImpl
IrcActivator.getConfigurationService();
if (configSvc == null)
{
- return false;
+ // Assuming maximum use of configured proxy server is desirable.
+ return true;
}
// FIXME implement support for option to enable SOCKS5 DNS resolving
return true;
diff --git a/src/net/java/sip/communicator/impl/protocol/irc/irc.provider.manifest.mf b/src/net/java/sip/communicator/impl/protocol/irc/irc.provider.manifest.mf
index 8ae471e..88c1bce 100644
--- a/src/net/java/sip/communicator/impl/protocol/irc/irc.provider.manifest.mf
+++ b/src/net/java/sip/communicator/impl/protocol/irc/irc.provider.manifest.mf
@@ -25,5 +25,6 @@ Import-Package: org.osgi.framework,
com.ircclouds.irc.api.state,
com.ircclouds.irc.api.commands,
com.ircclouds.irc.api.negotiators,
+ com.ircclouds.irc.api.negotiators.capabilities,
org.apache.commons.lang3,
org.apache.commons.codec.binary