mirror of
https://github.com/correl/SleekXMPP.git
synced 2024-11-27 11:09:56 +00:00
Allow SASL mechanism to be set when creating a ClientXMPP instance.
Instead of using: ClientXMPP(jid, password, plugin_config={ 'feature_mechanisms': {'use_mech': 'SOME-MECH'}}) You can use: ClientXMPP(jid, password, sasl_mech='SOME-MECH') If you need to change the mechanism after instantiation, use: xmpp['feature_mechanisms'].sasl.mech = 'SCRAM-MD5'
This commit is contained in:
parent
d10f591bf4
commit
e37adace62
2 changed files with 8 additions and 4 deletions
|
@ -59,7 +59,7 @@ class ClientXMPP(BaseXMPP):
|
|||
"""
|
||||
|
||||
def __init__(self, jid, password, ssl=False, plugin_config={},
|
||||
plugin_whitelist=[], escape_quotes=True):
|
||||
plugin_whitelist=[], escape_quotes=True, sasl_mech=None):
|
||||
"""
|
||||
Create a new SleekXMPP client.
|
||||
|
||||
|
@ -114,9 +114,10 @@ class ClientXMPP(BaseXMPP):
|
|||
|
||||
# Setup default stream features
|
||||
self.register_plugin('feature_starttls')
|
||||
self.register_plugin('feature_mechanisms')
|
||||
self.register_plugin('feature_bind')
|
||||
self.register_plugin('feature_session')
|
||||
self.register_plugin('feature_mechanisms',
|
||||
pconfig={'use_mech': sasl_mech} if sasl_mech else None)
|
||||
|
||||
def connect(self, address=tuple(), reattempt=True, use_tls=True):
|
||||
"""
|
||||
|
|
|
@ -293,7 +293,8 @@ class SleekTest(unittest.TestCase):
|
|||
def stream_start(self, mode='client', skip=True, header=None,
|
||||
socket='mock', jid='tester@localhost',
|
||||
password='test', server='localhost',
|
||||
port=5222, plugins=None, plugin_config={}):
|
||||
port=5222, sasl_mech=None,
|
||||
plugins=None, plugin_config={}):
|
||||
"""
|
||||
Initialize an XMPP client or component using a dummy XML stream.
|
||||
|
||||
|
@ -317,7 +318,9 @@ class SleekTest(unittest.TestCase):
|
|||
are loaded.
|
||||
"""
|
||||
if mode == 'client':
|
||||
self.xmpp = ClientXMPP(jid, password, plugin_config=plugin_config)
|
||||
self.xmpp = ClientXMPP(jid, password,
|
||||
sasl_mech=sasl_mech,
|
||||
plugin_config=plugin_config)
|
||||
elif mode == 'component':
|
||||
self.xmpp = ComponentXMPP(jid, password,
|
||||
server, port,
|
||||
|
|
Loading…
Reference in a new issue