diff options
author | Jason Carey <jcarey@argv.me> | 2015-09-14 16:19:11 -0400 |
---|---|---|
committer | Jason Carey <jcarey@argv.me> | 2015-09-17 20:13:11 -0400 |
commit | 041e4fe737342bf40a6aedb7a04d8d99ba20e213 (patch) | |
tree | 148c21a538fd93bddf8a1982d463400d73984060 /src/mongo/scripting/mozjs/valuewriter.h | |
parent | 8291bbb3a6ec192d177076b1fb0cd28995e48440 (diff) | |
download | mongo-041e4fe737342bf40a6aedb7a04d8d99ba20e213.tar.gz |
SERVER-20375 Constrain JS method thisv
This constrains universal access to wraptype methods by providing a
JS_ATTACH_JS_CONSTRAINED_METHOD() macro which allows for a list of types
that are allowed to call said method.
In this way we can lock down all methods without having to add uasserts
to each individual method body.
Diffstat (limited to 'src/mongo/scripting/mozjs/valuewriter.h')
-rw-r--r-- | src/mongo/scripting/mozjs/valuewriter.h | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/src/mongo/scripting/mozjs/valuewriter.h b/src/mongo/scripting/mozjs/valuewriter.h index dd0eb98af92..1945303867b 100644 --- a/src/mongo/scripting/mozjs/valuewriter.h +++ b/src/mongo/scripting/mozjs/valuewriter.h @@ -63,6 +63,11 @@ public: bool toBoolean(); /** + * Provides the type of the value. For objects, it fetches the class name if possible. + */ + std::string typeAsString(); + + /** * Writes the value into a bsonobjbuilder under the name in sd. */ void writeThis(BSONObjBuilder* b, StringData sd); |