def checkTroveSignatures(self, trv, callback):
        assert(hasattr(callback, 'verifyTroveSignatures'))
        if callback.keyCache is None:
            callback.keyCache = openpgpkey.getKeyCache()
        for fingerprint, timestamp, sig in trv.troveInfo.sigs.digitalSigs.iter():
            try:
                pubKey = callback.keyCache.getPublicKey(fingerprint)
                if pubKey.isRevoked():
                    raise openpgpfile.IncompatibleKey('Key %s is revoked'
                                                      %pubKey.getFingerprint())
                expirationTime = pubKey.getTimestamp()
                if expirationTime and timestamp < expirationTime:
                    raise openpgpfile.IncompatibleKey('Key %s is expired'
                                                      %pubKey.getFingerprint())
            except openpgpfile.KeyNotFound:
                # missing keys could be okay; that depends on the threshold
                # we've set. it's the callbacks problem in any case.
                pass

        res = ChangeSetJob.checkTroveSignatures(self, trv, callback)
        if len(res[1]) and self.requireSigs:
            raise openpgpfile.KeyNotFound('Repository does not recognize '
                                          'key: %s'% res[1][0])
dataset/ETHPy150Open sassoftware/conary/conary/repository/netrepos/fsrepos.py/FilesystemChangeSetJob.checkTroveSignatures/swapped operands of `<`