Bug 193321 - [EME] Origin information in the instance session
Summary: [EME] Origin information in the instance session
Status: NEW
Alias: None
Product: WebKit
Classification: Unclassified
Component: WebCore Misc. (show other bugs)
Version: WebKit Nightly Build
Hardware: Unspecified Unspecified
: P2 Normal
Assignee: Nobody
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2019-01-10 07:41 PST by Xabier Rodríguez Calvar
Modified: 2019-01-10 09:28 PST (History)
3 users (show)

See Also:


Attachments
propect patch (2.17 KB, patch)
2019-01-10 07:41 PST, Xabier Rodríguez Calvar
no flags Details | Formatted Diff | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Xabier Rodríguez Calvar 2019-01-10 07:41:04 PST
Created attachment 358791 [details]
propect patch

We're about to begin to implement license persistence and of course to comply with the spec (and common sense) we need to do things per-origin. I crafted this patch to provide origin information to the CDMInstanceSession so that it could communicate with CDMs should they require to perform persistence by themselves.

We are also wondering if we should provide persistence by ourselves and not rely on the CDMs for that so that we can allow users to clear information, without depending on CDMs. We don't even know if these two questions are unrelated and maybe we still need origin info in the CDMInstanceSession if we handle info by ourselves.

Input is appreciated.
Comment 1 Jer Noble 2019-01-10 09:28:01 PST
FYI, the way we handle this with FairPlay is to set the directory which the CDM is allowed to read from and write to on a per-origin basis, without exposing origin information directly to the CDM. I'm not sure if this meets your per-origin goals, but that interface exists in CDMInstance and is implemented in CDMInstanceFairPlayStreamingAVFObjC::setStorageDirectory() if you want to TAL.