mirror of
https://github.com/nodejs/node.git
synced 2026-11-09 15:11:11 -05:00
src: add node_crypto_common and refactor
Two things in one on this commit:
(a) For the QUIC implementation, we need to separate out various bits
from node_crypto.cc to allow them to be reused. That's where this
commit starts.
(b) Quite a bit of the node_crypto.cc code was just messy in terms of
it's organization and lack of error handling and use of Local vs.
MaybeLocal. This cleans that up a bit and hopefully makes certain
parts a bit more manageable also.
Signed-off-by: James M Snell <jasnell@gmail.com>
PR-URL: https://github.com/nodejs/node/pull/32016
Reviewed-By: Anna Henningsen <anna@addaleax.net>
Reviewed-By: Sam Roberts <vieuxtech@gmail.com>
This commit is contained in:
1 parent
96e70c4ce7
commit
dd8183632d
8 files changed
+1313
-611
No files matched your search
+11
-1
@@ -587,7 +587,11 @@ static void force_ascii(const char* src, char* dst, size_t len) {
|
||||
}
|
||||
|
||||
|
||||
static size_t hex_encode(const char* src, size_t slen, char* dst, size_t dlen) {
|
||||
size_t StringBytes::hex_encode(
|
||||
const char* src,
|
||||
size_t slen,
|
||||
char* dst,
|
||||
size_t dlen) {
|
||||
// We know how much we'll write, just make sure that there's space.
|
||||
CHECK(dlen >= slen * 2 &&
|
||||
"not enough space provided for hex encode");
|
||||
@@ -603,6 +607,12 @@ static size_t hex_encode(const char* src, size_t slen, char* dst, size_t dlen) {
|
||||
return dlen;
|
||||
}
|
||||
|
||||
std::string StringBytes::hex_encode(const char* src, size_t slen) {
|
||||
size_t dlen = slen * 2;
|
||||
std::string dst(dlen, '\0');
|
||||
hex_encode(src, slen, &dst[0], dlen);
|
||||
return dst;
|
||||
}
|
||||
|
||||
#define CHECK_BUFLEN_IN_RANGE(len) \
|
||||
do { \
|
||||
|
||||
Reference in new issue
Block a user