summaryrefslogtreecommitdiff
path: root/src/node_crypto.h
diff options
context:
space:
mode:
authorAnna Henningsen <anna@addaleax.net>2018-06-10 16:40:13 +0200
committerAnna Henningsen <anna@addaleax.net>2018-07-13 19:53:15 +0200
commit57e301539bff2599974b7269a56377330c9b730e (patch)
tree6f5c866728f22bbacb8dadb89a2c8a12e5b66508 /src/node_crypto.h
parent36cc5f5caf52af895079d153a9131fe2b0c6b8f9 (diff)
downloadandroid-node-v8-57e301539bff2599974b7269a56377330c9b730e.tar.gz
android-node-v8-57e301539bff2599974b7269a56377330c9b730e.tar.bz2
android-node-v8-57e301539bff2599974b7269a56377330c9b730e.zip
src: enable more detailed memory tracking
This will enable more detailed heap snapshots based on a newer V8 API. This commit itself is not tied to that API and could be backported. PR-URL: https://github.com/nodejs/node/pull/21742 Reviewed-By: James M Snell <jasnell@gmail.com>
Diffstat (limited to 'src/node_crypto.h')
-rw-r--r--src/node_crypto.h28
1 files changed, 28 insertions, 0 deletions
diff --git a/src/node_crypto.h b/src/node_crypto.h
index 4587a96e72..7df2660c77 100644
--- a/src/node_crypto.h
+++ b/src/node_crypto.h
@@ -105,6 +105,10 @@ class SecureContext : public BaseObject {
static void Initialize(Environment* env, v8::Local<v8::Object> target);
+ void MemoryInfo(MemoryTracker* tracker) const override {
+ tracker->TrackThis(this);
+ }
+
SSLCtxPointer ctx_;
X509Pointer cert_;
X509Pointer issuer_;
@@ -337,6 +341,10 @@ class CipherBase : public BaseObject {
public:
static void Initialize(Environment* env, v8::Local<v8::Object> target);
+ void MemoryInfo(MemoryTracker* tracker) const override {
+ tracker->TrackThis(this);
+ }
+
protected:
enum CipherKind {
kCipher,
@@ -407,6 +415,10 @@ class Hmac : public BaseObject {
public:
static void Initialize(Environment* env, v8::Local<v8::Object> target);
+ void MemoryInfo(MemoryTracker* tracker) const override {
+ tracker->TrackThis(this);
+ }
+
protected:
void HmacInit(const char* hash_type, const char* key, int key_len);
bool HmacUpdate(const char* data, int len);
@@ -430,6 +442,10 @@ class Hash : public BaseObject {
public:
static void Initialize(Environment* env, v8::Local<v8::Object> target);
+ void MemoryInfo(MemoryTracker* tracker) const override {
+ tracker->TrackThis(this);
+ }
+
bool HashInit(const char* hash_type);
bool HashUpdate(const char* data, int len);
@@ -469,6 +485,10 @@ class SignBase : public BaseObject {
Error Init(const char* sign_type);
Error Update(const char* data, int len);
+ void MemoryInfo(MemoryTracker* tracker) const override {
+ tracker->TrackThis(this);
+ }
+
protected:
void CheckThrow(Error error);
@@ -581,6 +601,10 @@ class DiffieHellman : public BaseObject {
MakeWeak();
}
+ void MemoryInfo(MemoryTracker* tracker) const override {
+ tracker->TrackThis(this);
+ }
+
private:
static void GetField(const v8::FunctionCallbackInfo<v8::Value>& args,
const BIGNUM* (*get_field)(const DH*),
@@ -606,6 +630,10 @@ class ECDH : public BaseObject {
char* data,
size_t len);
+ void MemoryInfo(MemoryTracker* tracker) const override {
+ tracker->TrackThis(this);
+ }
+
protected:
ECDH(Environment* env, v8::Local<v8::Object> wrap, ECKeyPointer&& key)
: BaseObject(env, wrap),