def verify(self): """ Verify that the information gathered from the on-the-wire representation is of the right types. This is supposed to be run before the info is deserialized. """ for param in self.longs: item = getattr(self, param) if not item or isinstance(item, six.integer_types): continue if isinstance(item, bytes): item = item.decode('utf-8') setattr(self, param, item) try: _ = base64url_to_long(item) except Exception: return False else: if [e for e in ['+', '/', '='] if e in item]: return False if self.kid: try: assert isinstance(self.kid, six.string_types) except AssertionError: raise HeaderError("kid of wrong value type") return True
def verify(self): """ Verify that the information gathered from the on-the-wire representation is of the right types. This is supposed to be run before the info is deserialized. """ for param in self.longs: item = getattr(self, param) if not item or isinstance(item, six.integer_types): continue if isinstance(item, bytes): item = str(item) setattr(self, param, item) try: _ = base64url_to_long(item) except Exception: return False else: if [e for e in ['+', '/', '='] if e in item]: return False if self.kid: try: assert isinstance(self.kid, six.string_types) except AssertionError: raise HeaderError("kid of wrong value type") return True