Hello, what this beautifull mesage which is messing me whole day means : *python: error <type 'instance'>, ('No module named py',), No module named py*
as a result of class pdg.py which is called from nnrpd_auth.py. To be detailed ... news server inn is calling that when doing autentification , it calls nnrpd_auth.py where instance of my class is hooked into inn , when authentification begins it calls method authenticate(arguments) from pdg. I will provide as many information as needed to solve this mistery, becouse i really need to solve it. Thanks! #!/usr/bin/env python import ldap from nnrpd import syslog class news: server = 'ldap://dev01.net.hlacik.eu' user_dn = 'cn=pdg,ou=Operators,o=Polarion' user_pw = 'Pdg1' connectcodes = { 'READPOST':200, 'READ':201, 'AUTHNEEDED':480, 'PERMDENIED':502 } authcodes = { 'ALLOWED':281, 'DENIED':502 } def newsauth(self,match_username,match_password): base_dn = 'ou=Users,o=Polarion' filter = "(uid=" + match_username + ")" attrs = ['userPassword'] try : l = ldap.initialize(self.server) l.bind_s(self.user_dn, self.user_pw) raw_res = l.search_s( base_dn, ldap.SCOPE_SUBTREE, filter, attrs ) l.unbind() except ldap.SERVER_DOWN: print "Error, server down" return 2 except ldap.INVALID_CREDENTIALS: print "Error, invalid credentials" return 2 except ldap.LDAPError, e: print "Error, %s" % e for results in raw_res: (cn,search) = results for password in search["userPassword"]: if password == match_password: return 1 return 0 def authenticate(self, attributes): # just for debugging purposes syslog('notice', 'nnrpd_auth authenticate() invoked: hostname %s, ipaddress %s, interface %s, user %s' % (\ attributes['hostname'], \ attributes['ipaddress'], \ attributes['interface'], \ attributes['user'])) try: syslog('notice', "result %s" % self.newsauth('boss','bbbb')) except Exception, msg: syslog('notice', "error %s, %s, %s" % (type(msg),msg.args,msg)) # do username passworld authentication #if self.newsauth(attributes['user'], str(attributes['pass'])): # syslog('notice', 'authentication by username succeeded') # return ( self.authcodes['ALLOWED'], 'No error' ) #else: # syslog('notice', 'authentication by username failed') # return ( self.authcodes['DENIED'], 'Access Denied!') ------------------- nnrpd_auth_py : # # Sample authentication and authorization class. It defines all methods known # to nnrpd. # # Import functions exposed by nnrpd. This import must succeed, or nothing # will work! from nnrpd import * from pdg import * myauth = news() # ...and try to hook up on nnrpd. This would make auth object methods visible # to nnrpd. try: set_auth_hook(myauth) syslog('notice', "authentication module successfully hooked into nnrpd") except Exception, errmsg: syslog('error', "Cannot obtain nnrpd hook for authentication method: %s" % errmsg[0])
-- http://mail.python.org/mailman/listinfo/python-list