[EME] Bug 25434 - Clarify the previously-added text around individualization.
--- a/encrypted-media/encrypted-media-respec.html Fri Oct 17 12:21:26 2014 -0700
+++ b/encrypted-media/encrypted-media-respec.html Mon Oct 20 10:58:19 2014 -0700
@@ -146,14 +146,16 @@
<p>All messages and communication to and from the CDM, such as between the CDM and a license server, MUST be passed through the user agent.
The CDM MUST NOT make direct out-of band network requests.
All messages and communication other than those covered in the following paragraph MUST be passed through the application via the APIs defined in this specification.
- </p>
- <p>Messages related to "one-time" application-independent initialization that are sent to a pre-defined URL MAY be handled by the user agent and not passed to the application via the APIs.
- The related operations MUST be performed by the user agent, and such messages MUST still be transmitted via the user agent's network stack.
+ Specifically, all communication that contains application-, origin-, or content-specific information or is sent to a URL specified by the application or based on its origin, MUST pass through the APIs.
+ This includes all license exchange messages.
</p>
- <p class="note">For example, an initialization or provisioning process for a client device that involves communicating with a server hosted by the user agent or CDM vendor could be performed by the user agent without involving the application.
- The same applies to reinitialization or reprovisioning. Application- or content provider-specific initialization and other operations must be passed be passed through the application via the APIs.
+ <p>Application- and origin-independent messages related to per-client initialization (or reinitialization) that are sent to a fixed non-application-dependent URL MUST be handled by the user agent and MUST NOT be passed to the application via the APIs.
+ The related message exchange and operations MUST be performed by the user agent via the user agent's network stack.
</p>
-
+ <p class="note">For example, an initialization, provisioning, or individualization process for a client device that involves communicating with a server hosted by the user agent or CDM vendor and does not contain application- or origin-specific information MUST be performed by the user agent without involving the application.
+ The same applies to reinitialization, reprovisioning, or reindividualization.
+ </p>
+ <p>For implementations that support per-origin initialization, such messages MUST be passed to the application via the APIs.</p>
</dd>
<dt id="key-system">Key System</dt>
--- a/encrypted-media/encrypted-media.html Fri Oct 17 12:21:26 2014 -0700
+++ b/encrypted-media/encrypted-media.html Mon Oct 20 10:58:19 2014 -0700
@@ -445,7 +445,7 @@
</p>
<h1 class="title p-name" id="title" property="dcterms:title">Encrypted Media Extensions</h1>
- <h2 property="dcterms:issued" datatype="xsd:dateTime" content="2014-10-17T19:16:27.000Z" id="w3c-editor-s-draft-17-october-2014"><abbr title="World Wide Web Consortium">W3C</abbr> Editor's Draft <time class="dt-published" datetime="2014-10-17">17 October 2014</time></h2>
+ <h2 property="dcterms:issued" datatype="xsd:dateTime" content="2014-10-20T17:56:29.000Z" id="w3c-editor-s-draft-20-october-2014"><abbr title="World Wide Web Consortium">W3C</abbr> Editor's Draft <time class="dt-published" datetime="2014-10-20">20 October 2014</time></h2>
<dl>
<dt>This version:</dt>
@@ -627,14 +627,16 @@
<p>All messages and communication to and from the CDM, such as between the CDM and a license server, <em class="rfc2119" title="MUST">MUST</em> be passed through the user agent.
The CDM <em class="rfc2119" title="MUST NOT">MUST NOT</em> make direct out-of band network requests.
All messages and communication other than those covered in the following paragraph <em class="rfc2119" title="MUST">MUST</em> be passed through the application via the APIs defined in this specification.
- </p>
- <p>Messages related to "one-time" application-independent initialization that are sent to a pre-defined URL <em class="rfc2119" title="MAY">MAY</em> be handled by the user agent and not passed to the application via the APIs.
- The related operations <em class="rfc2119" title="MUST">MUST</em> be performed by the user agent, and such messages <em class="rfc2119" title="MUST">MUST</em> still be transmitted via the user agent's network stack.
+ Specifically, all communication that contains application-, origin-, or content-specific information or is sent to a URL specified by the application or based on its origin, <em class="rfc2119" title="MUST">MUST</em> pass through the APIs.
+ This includes all license exchange messages.
</p>
- <div class="note"><div class="note-title" aria-level="2" role="heading" id="h_note_2"><span>Note</span></div><p class="">For example, an initialization or provisioning process for a client device that involves communicating with a server hosted by the user agent or CDM vendor could be performed by the user agent without involving the application.
- The same applies to reinitialization or reprovisioning. Application- or content provider-specific initialization and other operations must be passed be passed through the application via the APIs.
+ <p>Application- and origin-independent messages related to per-client initialization (or reinitialization) that are sent to a fixed non-application-dependent URL <em class="rfc2119" title="MUST">MUST</em> be handled by the user agent and <em class="rfc2119" title="MUST NOT">MUST NOT</em> be passed to the application via the APIs.
+ The related message exchange and operations <em class="rfc2119" title="MUST">MUST</em> be performed by the user agent via the user agent's network stack.
+ </p>
+ <div class="note"><div class="note-title" aria-level="2" role="heading" id="h_note_2"><span>Note</span></div><p class="">For example, an initialization, provisioning, or individualization process for a client device that involves communicating with a server hosted by the user agent or CDM vendor and does not contain application- or origin-specific information <em class="rfc2119" title="MUST">MUST</em> be performed by the user agent without involving the application.
+ The same applies to reinitialization, reprovisioning, or reindividualization.
</p></div>
-
+ <p>For implementations that support per-origin initialization, such messages <em class="rfc2119" title="MUST">MUST</em> be passed to the application via the APIs.</p>
</dd>
<dt id="key-system">Key System</dt>