[Bug 26600] New: Text is confused between persistent session vs persistent licenses

https://www.w3.org/Bugs/Public/show_bug.cgi?id=26600

            Bug ID: 26600
           Summary: Text is confused between persistent session vs
                    persistent licenses
           Product: HTML WG
           Version: unspecified
          Hardware: PC
                OS: All
            Status: NEW
          Severity: normal
          Priority: P2
         Component: Encrypted Media Extensions
          Assignee: adrianba@microsoft.com
          Reporter: watsonm@netflix.com
        QA Contact: public-html-bugzilla@w3.org
                CC: mike@w3.org, public-html-media@w3.org

The sessionType parameter to createSession indicates whether the requested
session is persistent or not. This should be independent of whether the license
is persistent or not, which is a decision for the license server.

Presently, attempting to install a persistent license in a non-persistent
session generates an error - this seems unnecessary, since the license can
still be used for playback in the current browsing session.

Text in the createSession procedures is confusing. I suggest the following:

1) createSession

CURRENT TEXT (createSession):

"3. Let request be a request (e.g. a license request) generated based on the
init data, which is interpreteted per initDataType, and sessionType.

If sessionType is "temporary", the request is for a temporary non-persisted
license. If sessionType is "persistent", the request is for a persistable
session, possibly with a persistable license.

If sessionType is not "persistent", the CDM must not store a record of or data
related to the session at any point.

Note: The license server may reject the requested type, but it should not issue
a different type."

NEW TEXT (createSession):

"3. Let request be a request (e.g. a license request) generated based on the
init data, which is interpreteted per initDataType, and sessionType.

If sessionType is "temporary", the request is for a temporary non-persisted
session. If sessionType is "persistent", the request is for a persistable
session.

If sessionType is not "persistent", the CDM must not store a record of or data
related to the session at any point.

Note: The license server may return a license that is either persistent or
non-persistent, independent of the session type. However, a persistent license
obtained in a non-persistent session will be removed when the session is
removed."

2) loadSession

CURRENT TEXT (loadSession):

"Process message, following the stipulation for the first matching condition
from the following list:

If sessionType is "temporary" and message does not specify that session data,
including any license, key(s), or similar session data it contains, should be
stored
- Continue processing message, not storing any session data.
If sessionType is "persistent"
- Continue processing message, storing the license, key(s), or similar session
data contained in message as permitted or instructed by the license.
Otherwise
- Reject promise with a new DOMException whose name is "InvalidAccessError"."

NEW TEXT (loadSession):

"Process message, following the stipulation for the first matching condition
from the following list:

If sessionType is "temporary"
- Continue processing message, not storing any session data.
If sessionType is "persistent"
- Continue processing message, storing the license, key(s), or similar session
data contained in message as permitted or instructed by the license.
Otherwise
- Reject promise with a new DOMException whose name is "InvalidAccessError"."

3) Exceptions

Remove the case "A persistent license was provided for a "temporary" session.".

-- 
You are receiving this mail because:
You are on the CC list for the bug.

Received on Monday, 18 August 2014 17:43:58 UTC