Beispiel #1
0
    def _cbDeleteDone(self, msg):
        assert isinstance(msg, pureldap.LDAPResult)
        if not isinstance(msg, pureldap.LDAPDelResponse):
            raise ldaperrors.get(msg.resultCode, msg.errorMessage)
        assert msg.referral is None  #TODO
        if msg.resultCode != ldaperrors.Success.resultCode:
            raise ldaperrors.get(msg.resultCode, msg.errorMessage)

        assert msg.matchedDN == ''
        return self
Beispiel #2
0
    def _cbStartTLS(self, msg, ctx):
        assert isinstance(msg, pureldap.LDAPExtendedResponse)
        assert msg.referral is None  #TODO
        if msg.resultCode != ldaperrors.Success.resultCode:
            raise ldaperrors.get(msg.resultCode, msg.errorMessage)

        self.transport.startTLS(ctx)
        return self
Beispiel #3
0
    def _cbSetPassword_ExtendedOperation(self, msg):
        assert isinstance(msg, pureldap.LDAPExtendedResponse)
        assert msg.referral is None  #TODO
        if msg.resultCode != ldaperrors.Success.resultCode:
            raise ldaperrors.get(msg.resultCode, msg.errorMessage)

        assert msg.matchedDN == ''
        return self
Beispiel #4
0
    def _cbMoveDone(self, msg, newDN):
        assert isinstance(msg, pureldap.LDAPModifyDNResponse)
        assert msg.referral is None  #TODO
        if msg.resultCode != ldaperrors.Success.resultCode:
            raise ldaperrors.get(msg.resultCode, msg.errorMessage)

        assert msg.matchedDN == ''
        self.dn = newDN
        return self
Beispiel #5
0
    def _cbAddDone(self, msg, dn):
        assert isinstance(msg, pureldap.LDAPAddResponse), \
               "LDAPRequest response was not an LDAPAddResponse: %r" % msg
        assert msg.referral is None  #TODO
        if msg.resultCode != ldaperrors.Success.resultCode:
            raise ldaperrors.get(msg.resultCode, msg.errorMessage)

        assert msg.matchedDN == ''
        e = self.__class__(dn=dn, client=self.client)
        return e
Beispiel #6
0
    def _commit_success(self, msg):
        assert isinstance(msg, pureldap.LDAPModifyResponse)
        assert msg.referral is None  #TODO
        if msg.resultCode != ldaperrors.Success.resultCode:
            raise ldaperrors.get(msg.resultCode, msg.errorMessage)

        assert msg.matchedDN == ''

        self._remoteData = entry.EditableLDAPEntry(self.dn, self)
        self._journal = []
        return self
Beispiel #7
0
 def _cbSearchMsg(self, msg, d, callback, complete, sizeLimitIsNonFatal):
     if isinstance(msg, pureldap.LDAPSearchResultDone):
         assert msg.referral is None  #TODO
         e = ldaperrors.get(msg.resultCode, msg.errorMessage)
         if not isinstance(e, ldaperrors.Success):
             try:
                 raise e
             except ldaperrors.LDAPSizeLimitExceeded, e:
                 if sizeLimitIsNonFatal:
                     pass
             except:
                 d.errback(Failure())
Beispiel #8
0
 def _handle_bind_msg(self, msg):
     assert isinstance(msg, pureldap.LDAPBindResponse)
     assert msg.referral is None  #TODO
     if msg.resultCode != ldaperrors.Success.resultCode:
         raise ldaperrors.get(msg.resultCode, msg.errorMessage)
     return (msg.matchedDN, msg.serverSaslCreds)