Ejemplo n.º 1
0
 def extop_s(self,extreq,serverctrls=None,clientctrls=None,extop_resp_class=None):
   msgid = self.extop(extreq,serverctrls,clientctrls)
   res = self.extop_result(msgid,all=1,timeout=self.timeout)
   if extop_resp_class:
     respoid,respvalue = res
     if extop_resp_class.responseName!=respoid:
       raise ldap.PROTOCOL_ERROR("Wrong OID in extended response! Expected %s, got %s" % (extop_resp_class.responseName,respoid))
     return extop_resp_class(extop_resp_class.responseName,respvalue)
   else:
     return res
Ejemplo n.º 2
0
  def passwd_s(self, user, oldpw, newpw, serverctrls=None, clientctrls=None, extract_newpw=False):
    msgid = self.passwd(user, oldpw, newpw, serverctrls, clientctrls)
    respoid, respvalue = self.extop_result(msgid, all=1, timeout=self.timeout)

    if respoid != PasswordModifyResponse.responseName:
      raise ldap.PROTOCOL_ERROR("Unexpected OID %s in extended response!" % respoid)
    if extract_newpw and respvalue:
      respvalue = PasswordModifyResponse(PasswordModifyResponse.responseName, respvalue)

    return respoid, respvalue
Ejemplo n.º 3
0
 def compare_ext_s(self,dn,attr,value,serverctrls=None,clientctrls=None):
   msgid = self.compare_ext(dn,attr,value,serverctrls,clientctrls)
   try:
       ldap_res = self.result3(msgid,all=1,timeout=self.timeout)
   except ldap.COMPARE_TRUE:
     return True
   except ldap.COMPARE_FALSE:
     return False
   raise ldap.PROTOCOL_ERROR(
       'Compare operation returned wrong result: %r' % (ldap_res,)
   )