Bug 26322: ensure that the [[algorithm]] and [[usages]] internal slots have unabiguous WebIDL type
authorMark Watson <watsonm@netflix.com>
Mon, 03 Nov 2014 08:04:54 -0800
changeset 279 34df8cbba360
parent 278 b8f161c372a5
child 280 ed9e5e78966c
Bug 26322: ensure that the [[algorithm]] and [[usages]] internal slots have unabiguous WebIDL type
spec/Overview-WebCryptoAPI.xml
spec/Overview.html
--- a/spec/Overview-WebCryptoAPI.xml	Thu Oct 30 16:15:13 2014 -0700
+++ b/spec/Overview-WebCryptoAPI.xml	Mon Nov 03 08:04:54 2014 -0800
@@ -1156,11 +1156,17 @@
             [[<dfn id="dfn-CryptoKey-slot-type">type</dfn>]],
             [[<dfn id="dfn-CryptoKey-slot-extractable">extractable</dfn>]],
             [[<dfn id="dfn-CryptoKey-slot-algorithm">algorithm</dfn>]],
-            [[<dfn id="dfn-CryptoKey-slot-algorithm">algorithm_cached</dfn>]],
+            [[<dfn id="dfn-CryptoKey-slot-algorithm_cached">algorithm_cached</dfn>]],
             [[<dfn id="dfn-CryptoKey-slot-usages">usages</dfn>]],
-            [[<dfn id="dfn-CryptoKey-slot-usages">usages_cached</dfn>]], and
+            [[<dfn id="dfn-CryptoKey-slot-usages_cached">usages_cached</dfn>]], and
             [[<dfn id="dfn-CryptoKey-slot-handle">handle</dfn>]].
           </p>
+          <p>
+            The contents of the [[<a href="#dfn-CryptoKey-slot-algorithm">algorithm</a>]] internal
+            slot shall be, or be derived from, a <a href="#dfn-KeyAlgorithm">KeyAlgorithm</a>.
+            The contents of the [[<a href="#dfn-CryptoKey-slot-algorithm">usages</a>]] internal
+            slot shall be of type Sequence&lt;KeyUsage&gt;.
+          </p>
           <p class="note">
             The [[<a href="#dfn-CryptoKey-slot-handle">handle</a>]] slot is an opaque type that
             contains whatever data the underlying cryptographic implementation uses to represent a
--- a/spec/Overview.html	Thu Oct 30 16:15:13 2014 -0700
+++ b/spec/Overview.html	Mon Nov 03 08:04:54 2014 -0800
@@ -28,7 +28,7 @@
   <link rel="stylesheet" href="//www.w3.org/StyleSheets/TR/W3C-ED" type="text/css" /></head>
 
   <body>
-    <div class="head"><div><a href="http://www.w3.org/"><img src="//www.w3.org/Icons/w3c_home" width="72" height="48" alt="W3C" /></a></div><h1>Web Cryptography API</h1><h2>W3C Editor’s Draft <em>30 October 2014</em></h2><dl><dt>Latest Editor’s Draft:</dt><dd><a href="http://dvcs.w3.org/hg/webcrypto-api/raw-file/tip/spec/Overview.html">http://dvcs.w3.org/hg/webcrypto-api/raw-file/tip/spec/Overview.html</a></dd><dt>Latest Published Version:</dt><dd><a href="http://www.w3.org/TR/WebCryptoAPI/">http://www.w3.org/TR/WebCryptoAPI/</a></dd><dt>Previous Version(s):</dt><dd><a href="https://dvcs.w3.org/hg/webcrypto-api/raw-file/0fe9b34c13fb/spec/Overview.html">https://dvcs.w3.org/hg/webcrypto-api/raw-file/0fe9b34c13fb/spec/Overview.html</a></dd><dt>Editors:</dt><dd><a href="http://www.google.com/">Ryan Sleevi</a>, Google, Inc. &lt;[email protected]&gt;</dd><dd><a href="http://www.netflix.com/">Mark Watson</a>, Netflix &lt;[email protected]&gt;</dd><dt>Participate:</dt><dd><p>Send feedback to <a href="mailto:[email protected]?subject=%5BWebCryptoAPI%5D">[email protected]</a> (<a href="http://lists.w3.org/Archives/Public/public-webcrypto/">archives</a>), or <a href="https://www.w3.org/Bugs/Public/enter_bug.cgi?product=Web%20Cryptography&amp;component=Web%20Cryptography%20API%20Document">file a bug</a> 
+    <div class="head"><div><a href="http://www.w3.org/"><img src="//www.w3.org/Icons/w3c_home" width="72" height="48" alt="W3C" /></a></div><h1>Web Cryptography API</h1><h2>W3C Editor’s Draft <em>3 November 2014</em></h2><dl><dt>Latest Editor’s Draft:</dt><dd><a href="http://dvcs.w3.org/hg/webcrypto-api/raw-file/tip/spec/Overview.html">http://dvcs.w3.org/hg/webcrypto-api/raw-file/tip/spec/Overview.html</a></dd><dt>Latest Published Version:</dt><dd><a href="http://www.w3.org/TR/WebCryptoAPI/">http://www.w3.org/TR/WebCryptoAPI/</a></dd><dt>Previous Version(s):</dt><dd><a href="https://dvcs.w3.org/hg/webcrypto-api/raw-file/0fe9b34c13fb/spec/Overview.html">https://dvcs.w3.org/hg/webcrypto-api/raw-file/0fe9b34c13fb/spec/Overview.html</a></dd><dt>Editors:</dt><dd><a href="http://www.google.com/">Ryan Sleevi</a>, Google, Inc. &lt;[email protected]&gt;</dd><dd><a href="http://www.netflix.com/">Mark Watson</a>, Netflix &lt;[email protected]&gt;</dd><dt>Participate:</dt><dd><p>Send feedback to <a href="mailto:[email protected]?subject=%5BWebCryptoAPI%5D">[email protected]</a> (<a href="http://lists.w3.org/Archives/Public/public-webcrypto/">archives</a>), or <a href="https://www.w3.org/Bugs/Public/enter_bug.cgi?product=Web%20Cryptography&amp;component=Web%20Cryptography%20API%20Document">file a bug</a> 
     (see <a href="https://www.w3.org/Bugs/Public/buglist.cgi?product=Web%20Cryptography&amp;component=Web%20Cryptography%20API%20Document&amp;resolution=---">existing bugs</a>).</p></dd></dl><p class="copyright"><a href="http://www.w3.org/Consortium/Legal/ipr-notice#Copyright">Copyright</a> &copy; view <a href="http://www.w3.org/"><abbr title="World Wide Web Consortium">W3C</abbr></a><sup>&reg;</sup> (<a href="http://www.csail.mit.edu/"><abbr title="Massachusetts Institute of Technology">MIT</abbr></a>, <a href="http://www.ercim.org/"><abbr title="European Research Consortium for Informatics and Mathematics">ERCIM</abbr></a>, <a href="http://www.keio.ac.jp/">Keio</a>), All Rights Reserved. W3C <a href="http://www.w3.org/Consortium/Legal/ipr-notice#Legal_Disclaimer">liability</a>, <a href="http://www.w3.org/Consortium/Legal/ipr-notice#W3C_Trademarks">trademark</a> and <a href="http://www.w3.org/Consortium/Legal/copyright-documents">document use</a> rules apply.</p></div><hr />
 
     <div class="section">
@@ -56,7 +56,7 @@
         report can be found in the <a href="http://www.w3.org/TR/">W3C technical
           reports index</a> at http://www.w3.org/TR/.
       </em></p><p>
-        This document is the 30 October 2014 <b>Editor’s Draft</b> of the
+        This document is the 3 November 2014 <b>Editor’s Draft</b> of the
         <cite>Web Cryptography API</cite> specification.
       
       Please send comments about this document to
@@ -1161,11 +1161,17 @@
             [[<dfn id="dfn-CryptoKey-slot-type">type</dfn>]],
             [[<dfn id="dfn-CryptoKey-slot-extractable">extractable</dfn>]],
             [[<dfn id="dfn-CryptoKey-slot-algorithm">algorithm</dfn>]],
-            [[<dfn id="dfn-CryptoKey-slot-algorithm">algorithm_cached</dfn>]],
+            [[<dfn id="dfn-CryptoKey-slot-algorithm_cached">algorithm_cached</dfn>]],
             [[<dfn id="dfn-CryptoKey-slot-usages">usages</dfn>]],
-            [[<dfn id="dfn-CryptoKey-slot-usages">usages_cached</dfn>]], and
+            [[<dfn id="dfn-CryptoKey-slot-usages_cached">usages_cached</dfn>]], and
             [[<dfn id="dfn-CryptoKey-slot-handle">handle</dfn>]].
           </p>
+          <p>
+            The contents of the [[<a href="#dfn-CryptoKey-slot-algorithm">algorithm</a>]] internal
+            slot shall be, or be derived from, a <a href="#dfn-KeyAlgorithm">KeyAlgorithm</a>.
+            The contents of the [[<a href="#dfn-CryptoKey-slot-algorithm">usages</a>]] internal
+            slot shall be of type Sequence&lt;KeyUsage&gt;.
+          </p>
           <p class="note">
             The [[<a href="#dfn-CryptoKey-slot-handle">handle</a>]] slot is an opaque type that
             contains whatever data the underlying cryptographic implementation uses to represent a