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:
James M Snell committed 2020-03-02 16:27:19 -08:00
1 parent 96e70c4ce7
commit dd8183632d
8 files changed
+1313 -611

No files matched your search

+9
View File
@@ -29,6 +29,8 @@
#include "v8.h"
#include "env-inl.h"
#include <string>
namespace node {
class StringBytes {
@@ -97,6 +99,13 @@ class StringBytes {
enum encoding encoding,
v8::Local<v8::Value>* error);
static size_t hex_encode(const char* src,
size_t slen,
char* dst,
size_t dlen);
static std::string hex_encode(const char* src, size_t slen);
private:
static size_t WriteUCS2(v8::Isolate* isolate,
char* buf,