pyplayready/pyplayready/misc/exceptions.py
larley fa01639834 + Improved certificate chain validation
+ Added CLI function for creating v2 devices
+ Added CLI function for inspecting certificate chains
2025-08-20 21:32:47 +02:00

45 lines
1.2 KiB
Python

from pyplayready.misc.drmresults import DrmResult
class PyPlayreadyException(Exception):
"""Exceptions used by pyplayready."""
class TooManySessions(PyPlayreadyException):
"""Too many Sessions are open."""
class InvalidSession(PyPlayreadyException):
"""No Session is open with the specified identifier."""
class InvalidPssh(PyPlayreadyException):
"""The Playready PSSH is invalid or empty."""
class InvalidInitData(PyPlayreadyException):
"""The Playready Cenc Header Data is invalid or empty."""
class DeviceMismatch(PyPlayreadyException):
"""The Remote CDMs Device information and the APIs Device information did not match."""
class InvalidLicense(PyPlayreadyException):
"""Unable to parse XMR License."""
class InvalidCertificate(PyPlayreadyException):
"""The BCert is not correctly formatted."""
class InvalidCertificateChain(PyPlayreadyException):
"""The BCertChain is not correctly formatted."""
class OutdatedDevice(PyPlayreadyException):
"""The PlayReady Device is outdated and does not support a specific operation."""
class ServerException(PyPlayreadyException):
"""Recasted on the client if found in license response."""