crypto: Begin SubtleCrypto implementation (#33628)

* Update IDLs and Bindings conf

Signed-off-by: Daniel Adams <msub2official@gmail.com>

* Add AES crate

Signed-off-by: Daniel Adams <msub2official@gmail.com>

* Implement DOM interfaces

Signed-off-by: Daniel Adams <msub2official@gmail.com>

* IDL tidy

Signed-off-by: Daniel Adams <msub2official@gmail.com>

* Remove deriveKey from inRealms for now until implemented

Signed-off-by: Daniel Adams <msub2official@gmail.com>

* Fix CryptoKey rustdoc comments

Signed-off-by: Daniel Adams <msub2official@gmail.com>

* Move string constants to top of file

Signed-off-by: Daniel Adams <msub2official@gmail.com>

* Use properly rooted CryptoKey

Signed-off-by: Daniel Adams <msub2official@gmail.com>

* Code clarity

Signed-off-by: Daniel Adams <msub2official@gmail.com>

* Rework NormalizedAlgorithm to not hold a DOMString

Signed-off-by: Daniel Adams <msub2official@gmail.com>

* Add Rustdoc for CryptoKey interface

Signed-off-by: Daniel Adams <msub2official@gmail.com>

* Move ignore mallocsizeof to rand crate, remove from crypto

Signed-off-by: Daniel Adams <msub2official@gmail.com>

* Update cargo lock

Signed-off-by: Daniel Adams <msub2official@gmail.com>

* Fix key handling, implement exportKey with JWK TODO

Signed-off-by: Daniel Adams <msub2official@gmail.com>

* Add missing spec link

Signed-off-by: Daniel Adams <msub2official@gmail.com>

* Use create_buffer_source, remove aes dep from libservo

Signed-off-by: Daniel Adams <msub2official@gmail.com>

* Fix crash when running in worker

Signed-off-by: Daniel Adams <msub2official@gmail.com>

* Update expectations

Signed-off-by: Daniel Adams <msub2official@gmail.com>

* fmt

Signed-off-by: Daniel Adams <msub2official@gmail.com>

* Move CryptoKey and SubtleCrypto behind pref for now

Signed-off-by: Daniel Adams <msub2official@gmail.com>

* Update expectations

Signed-off-by: Daniel Adams <msub2official@gmail.com>

* Readd timeout expectation

Signed-off-by: Daniel Adams <msub2official@gmail.com>

---------

Signed-off-by: Daniel Adams <msub2official@gmail.com>
This commit is contained in:
Daniel Adams 2024-10-08 03:51:08 +00:00 committed by GitHub
parent 66bc430b24
commit fc0d4d8157
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
82 changed files with 39536 additions and 557 deletions

View file

@ -1,5 +1,98 @@
[successes_X25519.https.any.html]
expected: ERROR
[Success: generateKey({name: X25519}, false, [deriveKey\])]
expected: FAIL
[Success: generateKey({name: X25519}, true, [deriveKey\])]
expected: FAIL
[Success: generateKey({name: X25519}, false, [deriveBits, deriveKey\])]
expected: FAIL
[Success: generateKey({name: X25519}, true, [deriveBits, deriveKey\])]
expected: FAIL
[Success: generateKey({name: X25519}, false, [deriveBits\])]
expected: FAIL
[Success: generateKey({name: X25519}, true, [deriveBits\])]
expected: FAIL
[Success: generateKey({name: X25519}, false, [deriveKey, deriveBits, deriveKey, deriveBits, deriveKey, deriveBits\])]
expected: FAIL
[Success: generateKey({name: X25519}, true, [deriveKey, deriveBits, deriveKey, deriveBits, deriveKey, deriveBits\])]
expected: FAIL
[Success: generateKey({name: x25519}, false, [deriveKey\])]
expected: FAIL
[Success: generateKey({name: x25519}, true, [deriveKey\])]
expected: FAIL
[Success: generateKey({name: x25519}, false, [deriveBits, deriveKey\])]
expected: FAIL
[Success: generateKey({name: x25519}, true, [deriveBits, deriveKey\])]
expected: FAIL
[Success: generateKey({name: x25519}, false, [deriveBits\])]
expected: FAIL
[Success: generateKey({name: x25519}, true, [deriveBits\])]
expected: FAIL
[Success: generateKey({name: x25519}, false, [deriveKey, deriveBits, deriveKey, deriveBits, deriveKey, deriveBits\])]
expected: FAIL
[Success: generateKey({name: x25519}, true, [deriveKey, deriveBits, deriveKey, deriveBits, deriveKey, deriveBits\])]
expected: FAIL
[successes_X25519.https.any.worker.html]
expected: ERROR
[Success: generateKey({name: X25519}, false, [deriveKey\])]
expected: FAIL
[Success: generateKey({name: X25519}, true, [deriveKey\])]
expected: FAIL
[Success: generateKey({name: X25519}, false, [deriveBits, deriveKey\])]
expected: FAIL
[Success: generateKey({name: X25519}, true, [deriveBits, deriveKey\])]
expected: FAIL
[Success: generateKey({name: X25519}, false, [deriveBits\])]
expected: FAIL
[Success: generateKey({name: X25519}, true, [deriveBits\])]
expected: FAIL
[Success: generateKey({name: X25519}, false, [deriveKey, deriveBits, deriveKey, deriveBits, deriveKey, deriveBits\])]
expected: FAIL
[Success: generateKey({name: X25519}, true, [deriveKey, deriveBits, deriveKey, deriveBits, deriveKey, deriveBits\])]
expected: FAIL
[Success: generateKey({name: x25519}, false, [deriveKey\])]
expected: FAIL
[Success: generateKey({name: x25519}, true, [deriveKey\])]
expected: FAIL
[Success: generateKey({name: x25519}, false, [deriveBits, deriveKey\])]
expected: FAIL
[Success: generateKey({name: x25519}, true, [deriveBits, deriveKey\])]
expected: FAIL
[Success: generateKey({name: x25519}, false, [deriveBits\])]
expected: FAIL
[Success: generateKey({name: x25519}, true, [deriveBits\])]
expected: FAIL
[Success: generateKey({name: x25519}, false, [deriveKey, deriveBits, deriveKey, deriveBits, deriveKey, deriveBits\])]
expected: FAIL
[Success: generateKey({name: x25519}, true, [deriveKey, deriveBits, deriveKey, deriveBits, deriveKey, deriveBits\])]
expected: FAIL