mirror of
https://github.com/LadybirdBrowser/ladybird.git
synced 2025-09-01 15:18:06 +00:00
LibCrypto: Make PKSystem
methods return a ByteBuffer
directly
It used to be that the caller would supply a buffer to write the output to. This created an anti-pattern in multiple places where the caller would allocate a `ByteBuffer` and then use `.bytes()` to provide it to the `PKSystem` method. Then the callee would resize the output buffer and reassign it, but because the resize was on `Bytes` and not on `ByteBuffer`, the caller using the latter would cause a bug. Additionally, in pretty much all cases the buffer was pre-allocated shortly before.
This commit is contained in:
parent
81eb66c6eb
commit
0fc02d4d00
Notes:
github-actions[bot]
2025-01-13 16:02:16 +00:00
Author: https://github.com/devgianlu
Commit: 0fc02d4d00
Pull-request: https://github.com/LadybirdBrowser/ladybird/pull/3234
9 changed files with 69 additions and 112 deletions
|
@ -133,11 +133,6 @@ TEST_CASE(test_oaep)
|
|||
auto public_key = Crypto::PK::RSAPublicKey(n, e);
|
||||
auto rsa = Crypto::PK::RSA(public_key, private_key);
|
||||
|
||||
auto maybe_output_buffer = ByteBuffer::create_uninitialized(128);
|
||||
auto output_buffer = maybe_output_buffer.release_value();
|
||||
auto output_span = output_buffer.bytes();
|
||||
|
||||
TRY_OR_FAIL(rsa.encrypt(result, output_span));
|
||||
|
||||
EXPECT_EQ(expected_rsa_value, output_span);
|
||||
auto enc = TRY_OR_FAIL(rsa.encrypt(result));
|
||||
EXPECT_EQ(expected_rsa_value, enc);
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue