home *** CD-ROM | disk | FTP | other *** search
/ Maximum CD 2009 June / maximum-cd-2009-06.iso / DiscContents / digsby_setup.exe / lib / pyxmpp / sasl / core.pyo (.txt) < prev    next >
Encoding:
Python Compiled Bytecode  |  2009-02-26  |  6.3 KB  |  177 lines

  1. # Source Generated with Decompyle++
  2. # File: in.pyo (Python 2.5)
  3.  
  4. __revision__ = '$Id: core.py 647 2006-08-26 18:27:39Z jajcus $'
  5. __docformat__ = 'restructuredtext en'
  6. import random
  7. import logging
  8. from binascii import b2a_base64
  9.  
  10. class PasswordManager:
  11.     
  12.     def __init__(self):
  13.         pass
  14.  
  15.     
  16.     def get_password(self, username, realm = None, acceptable_formats = ('plain',)):
  17.         _unused = username
  18.         _unused = realm
  19.         _unused = acceptable_formats
  20.         return (None, None)
  21.  
  22.     
  23.     def check_password(self, username, password, realm = None):
  24.         (_password, format) = self.get_password(username, realm, ('plain',))
  25.         if _password and format == 'plain' and _password == password:
  26.             return True
  27.         
  28.         return False
  29.  
  30.     
  31.     def get_realms(self):
  32.         return []
  33.  
  34.     
  35.     def choose_realm(self, realm_list):
  36.         if realm_list:
  37.             return realm_list[0]
  38.         else:
  39.             return None
  40.  
  41.     
  42.     def check_authzid(self, authzid, extra_info = None):
  43.         if not extra_info:
  44.             extra_info = { }
  45.         
  46.         if not authzid and extra_info.has_key('username'):
  47.             pass
  48.         return extra_info['username'] == authzid
  49.  
  50.     
  51.     def get_serv_type(self):
  52.         return 'unknown'
  53.  
  54.     
  55.     def get_serv_host(self):
  56.         return 'unknown'
  57.  
  58.     
  59.     def get_serv_name(self):
  60.         pass
  61.  
  62.     
  63.     def generate_nonce(self):
  64.         r1 = str(random.random())[2:]
  65.         r2 = str(random.random())[2:]
  66.         return r1 + r2
  67.  
  68.  
  69.  
  70. class Reply:
  71.     
  72.     def __init__(self, data = ''):
  73.         self.data = data
  74.  
  75.     
  76.     def base64(self):
  77.         if self.data is not None:
  78.             ret = b2a_base64(self.data)
  79.             if ret[-1] == '\n':
  80.                 ret = ret[:-1]
  81.             
  82.             return ret
  83.         else:
  84.             return None
  85.  
  86.  
  87.  
  88. class Challenge(Reply):
  89.     
  90.     def __init__(self, data):
  91.         Reply.__init__(self, data)
  92.  
  93.     
  94.     def __repr__(self):
  95.         return '<sasl.Challenge: %r>' % (self.data,)
  96.  
  97.  
  98.  
  99. class Response(Reply):
  100.     
  101.     def __init__(self, data = ''):
  102.         Reply.__init__(self, data)
  103.  
  104.     
  105.     def __repr__(self):
  106.         return '<sasl.Response: %r>' % (self.data,)
  107.  
  108.  
  109.  
  110. class Failure(Reply):
  111.     
  112.     def __init__(self, reason):
  113.         Reply.__init__(self, '')
  114.         self.reason = reason
  115.  
  116.     
  117.     def __repr__(self):
  118.         return '<sasl.Failure: %r>' % (self.reason,)
  119.  
  120.  
  121.  
  122. class Success(Reply):
  123.     
  124.     def __init__(self, username, realm = None, authzid = None, data = None):
  125.         Reply.__init__(self, data)
  126.         self.username = username
  127.         self.realm = realm
  128.         self.authzid = authzid
  129.  
  130.     
  131.     def __repr__(self):
  132.         return '<sasl.Success: authzid: %r data: %r>' % (self.authzid, self.data)
  133.  
  134.  
  135.  
  136. class ClientAuthenticator:
  137.     
  138.     def __init__(self, password_manager):
  139.         self.password_manager = password_manager
  140.         self._ClientAuthenticator__logger = logging.getLogger('pyxmpp.sasl.ClientAuthenticator')
  141.  
  142.     
  143.     def start(self, username, authzid):
  144.         _unused = username
  145.         _unused = authzid
  146.         return Failure('Not implemented')
  147.  
  148.     
  149.     def challenge(self, challenge):
  150.         _unused = challenge
  151.         return Failure('Not implemented')
  152.  
  153.     
  154.     def finish(self, data):
  155.         _unused = data
  156.         return Failure('Not implemented')
  157.  
  158.  
  159.  
  160. class ServerAuthenticator:
  161.     
  162.     def __init__(self, password_manager):
  163.         self.password_manager = password_manager
  164.         self._ServerAuthenticator__logger = logging.getLogger('pyxmpp.sasl.ServerAuthenticator')
  165.  
  166.     
  167.     def start(self, initial_response):
  168.         _unused = initial_response
  169.         return Failure('not-authorized')
  170.  
  171.     
  172.     def response(self, response):
  173.         _unused = response
  174.         return Failure('not-authorized')
  175.  
  176.  
  177.