diff options
Diffstat (limited to 'src/bun.js/bindings/ScriptExecutionContext.h')
-rw-r--r-- | src/bun.js/bindings/ScriptExecutionContext.h | 15 |
1 files changed, 15 insertions, 0 deletions
diff --git a/src/bun.js/bindings/ScriptExecutionContext.h b/src/bun.js/bindings/ScriptExecutionContext.h index aed7977a5..fcf65f477 100644 --- a/src/bun.js/bindings/ScriptExecutionContext.h +++ b/src/bun.js/bindings/ScriptExecutionContext.h @@ -115,6 +115,18 @@ public: // { // } +#if ENABLE(WEB_CRYPTO) + // These two methods are used when CryptoKeys are serialized into IndexedDB. As a side effect, it is also + // used for things that utilize the same structure clone algorithm, for example, message passing between + // worker and document. + + // For now these will return false. In the future, we will want to implement these similar to how WorkerGlobalScope.cpp does. + // virtual bool wrapCryptoKey(const Vector<uint8_t>& key, Vector<uint8_t>& wrappedKey) = 0; + // virtual bool unwrapCryptoKey(const Vector<uint8_t>& wrappedKey, Vector<uint8_t>& key) = 0; + bool wrapCryptoKey(const Vector<uint8_t>& key, Vector<uint8_t>& wrappedKey) { return false; } + bool unwrapCryptoKey(const Vector<uint8_t>& wrappedKey, Vector<uint8_t>& key) { return false; } +#endif + static bool postTaskTo(ScriptExecutionContextIdentifier identifier, Function<void(ScriptExecutionContext&)>&& task); void regenerateIdentifier(); @@ -194,4 +206,7 @@ public: } } }; + +ScriptExecutionContext* executionContext(JSC::JSGlobalObject*); + }
\ No newline at end of file |