serve: Provide license type to get_license_challenge as-is

There's no need for serve code to handle parsing of it when the Cdm code will do so better.
This commit is contained in:
rlaphoenix 2022-08-06 09:19:58 +01:00
parent 796cf7ffb0
commit f2ed83205b
1 changed files with 3 additions and 2 deletions

View File

@ -21,7 +21,7 @@ from pywidevine import __version__
from pywidevine.cdm import Cdm
from pywidevine.device import Device
from pywidevine.exceptions import TooManySessions, InvalidSession, SignatureMismatch
from pywidevine.license_protocol_pb2 import LicenseType, License
from pywidevine.license_protocol_pb2 import License
routes = web.RouteTableDef()
@ -181,6 +181,7 @@ async def set_service_certificate(request: web.Request) -> web.Response:
async def get_license_challenge(request: web.Request) -> web.Response:
secret_key = request.headers["X-Secret-Key"]
device_name = request.match_info["device"]
license_type = request.match_info["license_type"]
body = await request.json()
for required_field in ("session_id", "init_data"):
@ -216,7 +217,7 @@ async def get_license_challenge(request: web.Request) -> web.Response:
license_request = cdm.get_license_challenge(
session_id=session_id,
pssh=init_data,
type_=LicenseType.Value(request.match_info["license_type"]),
type_=license_type,
privacy_mode=True
)
except InvalidSession: