Commit Graph
100 Commits
Author SHA1 Message Date
Daniel Bevenius 4e2fa8b0dc build: extract common code from NODE_EXE/_G_EXE
This commit extracts common parts of the NODE_EXE, and NODE_G_EXE
recipes into a canned reciepe to reduce some code duplication.

PR-URL: https://github.com/nodejs/node/pull/22310
Reviewed-By: Jon Moss <me@jonathanmoss.me>
Reviewed-By: Minwoo Jung <minwoo@nodesource.com>
Reviewed-By: Refael Ackermann <refack@gmail.com>
Reviewed-By: Joyee Cheung <joyeec9h3@gmail.com>
Reviewed-By: Richard Lau <riclau@uk.ibm.com>
2018-08-22 06:32:47 +02:00
Daniel Bevenius 28675b66d2 build: move available-node variable to top
Currently node_use_openssl uses the available-node variable before it is
defined causing the conditions that use it before that point to
evaluate incorrectly. As an example running the target
test/addons/.docbuildstamp will currently be skipped:

$ make test/addons/.docbuildstamp
Skipping .docbuildstamp (no crypto)

With this commit the target will only be skipped if configured --without-ssl.

PR-URL: https://github.com/nodejs/node/pull/22356
Reviewed-By: Richard Lau <riclau@uk.ibm.com>
Reviewed-By: Tobias Nießen <tniessen@tnie.de>
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
Reviewed-By: Ruben Bridgewater <ruben@bridgewater.de>
Reviewed-By: James M Snell <jasnell@gmail.com>
2018-08-20 18:51:47 +02:00
Daniel Bevenius 104492bd83 build: touch tools/doc/node_modules after run
Currently, tools/doc/node_modules is not touched after running npm
install resulting in npm install being run every time. I missed this
while testing commit 88bff82624 ("build:
make tools/doc/node_modules non-phony").

PR-URL: https://github.com/nodejs/node/pull/22350
Reviewed-By: Richard Lau <riclau@uk.ibm.com>
Reviewed-By: James M Snell <jasnell@gmail.com>
Reviewed-By: Joyee Cheung <joyeec9h3@gmail.com>
2018-08-20 16:08:12 +02:00
Daniel Bevenius 95b0e2c133 build: add test-doc to test target
This commit adds the test-doc target to the test recipe so that docs are
built and linters run. This used to happen but was removed at some
point.

PR-URL: https://github.com/nodejs/node/pull/22294
Reviewed-By: Jon Moss <me@jonathanmoss.me>
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
Reviewed-By: James M Snell <jasnell@gmail.com>
Reviewed-By: Richard Lau <riclau@uk.ibm.com>
2018-08-20 13:20:24 +02:00
Daniel Bevenius 6bc43aeea7 build: use echo command instead of shell comments
Currently, there are a few recipes where comments are indented
and being passed to the shell.

This commit updates these comments to use the echo command instead,
which is the more common approach used in other recipes in the
makefile.

PR-URL: https://github.com/nodejs/node/pull/22293
Reviewed-By: James M Snell <jasnell@gmail.com>
Reviewed-By: Jon Moss <me@jonathanmoss.me>
2018-08-20 11:05:45 +02:00
Daniel Bevenius ec8f31dace build: add CONFIG_FLAGS to with-code-cache target
This commit adds CONFIG_FLAGS to allow the with-code-cache target to be
used with a debug build. The motivation for this is to make it easier to
debug a build with the code cache enabled.

The suggested usage:
$ make BUILDTYPE=Debug with-code-cache

The BUILDTYPE option is not needed if ./configure was already
configured with --debug.

PR-URL: https://github.com/nodejs/node/pull/22207
Reviewed-By: Richard Lau <riclau@uk.ibm.com>
Reviewed-By: Joyee Cheung <joyeec9h3@gmail.com>
Reviewed-By: Refael Ackermann <refack@gmail.com>
Reviewed-By: Jon Moss <me@jonathanmoss.me>
2018-08-11 20:30:23 -04:00
Daniel Bevenius 88bff82624 build: make tools/doc/node_modules non-phony
This commit makes the target tools/doc/node_modules a non-phony target
and also adds tools/doc/package.json as a prerequisite to it to avoid
running it unnecessary. This is currently causing the target
test/addons/.docbuildstamp to be always be executed as it has
tools/doc/node_modules as a prerequisite.

PR-URL: https://github.com/nodejs/node/pull/22189
Reviewed-By: Richard Lau <riclau@uk.ibm.com>
Reviewed-By: Franziska Hinkelmann <franziska.hinkelmann@gmail.com>
Reviewed-By: Sam Ruby <rubys@intertwingly.net>
Reviewed-By: Joyee Cheung <joyeec9h3@gmail.com>
Reviewed-By: Refael Ackermann <refack@gmail.com>
2018-08-10 15:38:23 +02:00
Daniel Bevenius 346f2a7bec test: move require of https to after crypto check
Currently when configured without-ssl test-request-arguments.js will
fail with a missing crypto message.
This commit moves the require of https to after the crypto check.

PR-URL: https://github.com/nodejs/node/pull/22148
Reviewed-By: James M Snell <jasnell@gmail.com>
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
Reviewed-By: Michael Dawson <michael_dawson@ca.ibm.com>
Reviewed-By: Richard Lau <riclau@uk.ibm.com>
2018-08-10 07:15:38 +02:00
Daniel Bevenius 94840fdb9d test: move require of http2 to after crypto check
Currently when configured without-ssl test-heapdump-http2.js will fail
with a missing crypto message.
This commit moves the require of http2 to after the crypto check.

PR-URL: https://github.com/nodejs/node/pull/22148
Reviewed-By: James M Snell <jasnell@gmail.com>
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
Reviewed-By: Michael Dawson <michael_dawson@ca.ibm.com>
Reviewed-By: Richard Lau <riclau@uk.ibm.com>
2018-08-10 07:15:34 +02:00
Daniel Bevenius 77da6d9e8c build: add crypto check to build targets
Currently when configured without-ssl the build will fail when trying
to run the tools/doc/node_modules, and .docbuildstamp make targets:

internal/util.js:97
    throw new ERR_NO_CRYPTO();
    ^
Error [ERR_NO_CRYPTO]: Node.js is not compiled with OpenSSL crypto
                       support
    at assertCrypto (internal/util.js:97:11)
    at crypto.js:31:1
    ...
    at Object.<anonymous>
       (/node/deps/npm/node_modules/uuid/lib/rng.js:4:14)
    at Module._compile (internal/modules/cjs/loader.js:689:30)
    ...
make[1]: *** [tools/doc/node_modules] Error 1

This commit adds crypto check to these targets to allow the build to
pass.

PR-URL: https://github.com/nodejs/node/pull/22148
Reviewed-By: James M Snell <jasnell@gmail.com>
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
Reviewed-By: Michael Dawson <michael_dawson@ca.ibm.com>
Reviewed-By: Richard Lau <riclau@uk.ibm.com>
2018-08-10 07:15:33 +02:00
Daniel Bevenius d3d54aa8ef build: extract common parts from addon .buildstamp
This commit extracts common parts from the targets
test/addons/.buildstamp, and test/addons-napi/.buildstamp to reduce some
duplication.

PR-URL: https://github.com/nodejs/node/pull/22171
Reviewed-By: Jon Moss <me@jonathanmoss.me>
2018-08-10 05:38:29 +02:00
Daniel Bevenius e021ca28ea src: remove using directives from spawn_sync.h
I noticed that there were a few using declarations what were unused and
instead of just removing them, this commit removes all of them and uses
qualified names instead since they are in a header.

PR-URL: https://github.com/nodejs/node/pull/21634
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
2018-07-05 06:12:35 +02:00
Daniel Bevenius 8326bea6c2 test: use aliases for smart pointers in fixture
PR-URL: https://github.com/nodejs/node/pull/21419
Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl>
2018-06-27 05:19:56 +02:00
Daniel Bevenius d6f7a32570 test: make cctest fixture use node::NewIsolate
This commit updates the gtest fixture to use node::NewIsolate instead of
creating a new V8 Isolate using v8::Isolate::New.

The motivation for this is that without calling node::NewIsolate the
various callbacks set on the isolate, for example AddMessageListener,
SetFatalErrorHandler etc, would not get set. I don't think this is the
expected behaviour and I ran into this when writing a new cctest.

PR-URL: https://github.com/nodejs/node/pull/21419
Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl>
2018-06-27 05:19:30 +02:00
Daniel Bevenius 6ced651b6c build: add crypto check to markdown lint target
Currently, if configured --without-ssl the following error will be
repored by remark-cli:

Running Markdown linter on misc docs...
internal/util.js:100
    throw new ERR_NO_CRYPTO();
    ^

Error [ERR_NO_CRYPTO]: Node.js is not compiled with OpenSSL crypto support
    at assertCrypto (internal/util.js:100:11)
    at crypto.js:31:1
    at NativeModule.compile (internal/bootstrap/loaders.js:235:7)
    at Function.NativeModule.require
      (internal/bootstrap/loaders.js:155:18)
    at Function.Module._load (internal/modules/cjs/loader.js:530:25)
    at Module.require (internal/modules/cjs/loader.js:650:17)
    at require (internal/modules/cjs/helpers.js:20:18)
    at Object.<anonymous>
      (/node/tools/remark-cli/node_modules/math-random/node.js:1:76)
    at Module._compile (internal/modules/cjs/loader.js:702:30)
    at Object.Module._extensions..js
      (internal/modules/cjs/loader.js:713:10)
make[1]: *** [tools/.miscmdlintstamp] Error 1
make: *** [lint] Error 2

This commit adds a check for crypto to avoid this error when node has
been configured without crypto support. The alternative was to try to
fix this in randomatic but that lead to another dependency failing
(uuid) and felt like this might be simpler.

PR-URL: https://github.com/nodejs/node/pull/21326
Reviewed-By: Ujjwal Sharma <usharma1998@gmail.com>
Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl>
Reviewed-By: Tobias Nießen <tniessen@tnie.de>
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
Reviewed-By: Richard Lau <riclau@uk.ibm.com>
Reviewed-By: Refael Ackermann <refack@gmail.com>
Reviewed-By: James M Snell <jasnell@gmail.com>
2018-06-24 06:47:37 +02:00
Daniel Bevenius 9ca41e9642 src: introduce inspect-brk-node
This commit is a suggestion to add a new option to the node executable
to allow for breaking in node's javascript bootstrapper code.

Previously I've been able to set breakpoints in node bootstrapper code
and then restart the debugging session and those breakpoints would be
hit, but I don't seem to be able to do so anymore. Having this option
would allow me to use this option and then step through or add more
break points as needed.

PR-URL: https://github.com/nodejs/node/pull/20819
Reviewed-By: Joyee Cheung <joyeec9h3@gmail.com>
Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl>
Reviewed-By: James M Snell <jasnell@gmail.com>
2018-06-22 05:20:49 +02:00
Daniel Bevenius b56f65e28c doc: add example of using filter with cctest
This commit adds examples of specifying filters when running cctest.
This can be useful when debugging and limiting the test cases run to
the test cases of interest and I think worth documenting.

PR-URL: https://github.com/nodejs/node/pull/21401
Reviewed-By: Ruben Bridgewater <ruben@bridgewater.de>
2018-06-21 13:30:40 +02:00
Daniel Bevenius a71d5fc725 src: remove .h if -inl.h is already included
This commit removes the normal header file include if an internal one
is specified as per the CPP_STYLE_GUIDE.

PR-URL: https://github.com/nodejs/node/pull/21381
Reviewed-By: Matheus Marchini <matheus@sthima.com>
Reviewed-By: Gus Caplan <me@gus.host>
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
Reviewed-By: Ruben Bridgewater <ruben@bridgewater.de>
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl>
Reviewed-By: Tiancheng "Timothy" Gu <timothygu99@gmail.com>
Reviewed-By: Ujjwal Sharma <usharma1998@gmail.com>
2018-06-20 05:42:39 +02:00
Daniel Bevenius 54ee8cb5dd src: remove unused argc var in node_stat_watcher
Currently the following compiler warning is reported:
../src/node_stat_watcher.cc:113:13: warning:
unused variable 'argc' [-Wunused-variable]
  const int argc = args.Length();
            ^
1 warning generated.

This commit removes the unused argc variable.

PR-URL: https://github.com/nodejs/node/pull/21337
Reviewed-By: Richard Lau <riclau@uk.ibm.com>
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
Reviewed-By: Michaël Zasso <targos@protonmail.com>
Reviewed-By: Anna Henningsen <anna@addaleax.net>
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
Reviewed-By: James M Snell <jasnell@gmail.com>
2018-06-17 06:57:39 +02:00
Daniel Bevenius f86a181d47 test: add crypto check to test-http2-debug
This commit adds a crypto check to test-http2-debug.js as it currently
will error if configured --without-ssl.

The issue here is that the while the test spawns a child process that
runs test-http2-ping.js, which does have a crypto check, it will just
print '1..0 # Skipped: missing crypto' to stdout, and nothing to stderr
which is what this test is trying to assert and hence failing.

PR-URL: https://github.com/nodejs/node/pull/21205
Reviewed-By: Daijiro Wachi <daijiro.wachi@gmail.com>
Reviewed-By: Ujjwal Sharma <usharma1998@gmail.com>
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
Reviewed-By: Richard Lau <riclau@uk.ibm.com>
Reviewed-By: James M Snell <jasnell@gmail.com>
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
2018-06-11 05:34:36 +02:00
Daniel Bevenius cbc3dd997e src, tools: add check for left leaning pointers
This commit adds a rule to cpplint to check that pointers in the code
base lean to the left and not right, and also fixes the violations
reported.

PR-URL: https://github.com/nodejs/node/pull/21010
Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl>
Reviewed-By: Anna Henningsen <anna@addaleax.net>
Reviewed-By: Ruben Bridgewater <ruben@bridgewater.de>
Reviewed-By: James M Snell <jasnell@gmail.com>
2018-06-07 05:46:51 +02:00
Daniel Bevenius 19dae6bd19 src: remove unused fields msg_ and env_
Currently the following compiler warnings are generated:

../src/node_messaging.cc:74:16:
warning: private field 'env_' is not used [-Wunused-private-field]
  Environment* env_;
               ^
../src/node_messaging.cc:75:12:
warning: private field 'msg_' is not used [-Wunused-private-field]
  Message* msg_;
           ^
2 warnings generated.

This commit removes these unused private members.

PR-URL: https://github.com/nodejs/node/pull/20876
Reviewed-By: Gireesh Punathil <gpunathi@in.ibm.com>
Reviewed-By: Benjamin Gruenbaum <benjamingr@gmail.com>
Reviewed-By: Shingo Inoue <leko.noor@gmail.com>
Reviewed-By: Matteo Collina <matteo.collina@gmail.com>
Reviewed-By: Tiancheng "Timothy" Gu <timothygu99@gmail.com>
Reviewed-By: John-David Dalton <john.david.dalton@gmail.com>
Reviewed-By: Gus Caplan <me@gus.host>
2018-06-06 19:43:47 +02:00
Daniel Bevenius ef25e095e5 src: remove unused fields isolate_
Currently the following compiler warnings are generated:

In file included from ../src/node_platform.cc:1:
../src/node_platform.h:83:16:
warning: private field 'isolate_' is not used [-Wunused-private-field]
  v8::Isolate* isolate_;
               ^
1 warning generated.

This commit removes these unused private member.

PR-URL: https://github.com/nodejs/node/pull/20876
Reviewed-By: Gireesh Punathil <gpunathi@in.ibm.com>
Reviewed-By: Benjamin Gruenbaum <benjamingr@gmail.com>
Reviewed-By: Shingo Inoue <leko.noor@gmail.com>
Reviewed-By: Matteo Collina <matteo.collina@gmail.com>
Reviewed-By: Tiancheng "Timothy" Gu <timothygu99@gmail.com>
Reviewed-By: John-David Dalton <john.david.dalton@gmail.com>
Reviewed-By: Gus Caplan <me@gus.host>
2018-06-06 19:43:40 +02:00
Daniel Bevenius 898609e3b7 test: add source for test.wasm
The original commit 74e7a4a041
("test: add basic WebAssembly test") references the source for
test.wasm and while there are tools to go from wasm to wat but
having the source viewable is helpful I think.

PR-URL: https://github.com/nodejs/node/pull/21082
Reviewed-By: James M Snell <jasnell@gmail.com>
Reviewed-By: Tiancheng "Timothy" Gu <timothygu99@gmail.com>
Reviewed-By: Lance Ball <lball@redhat.com>
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
Reviewed-By: Gus Caplan <me@gus.host>
Reviewed-By: Trivikram Kamat <trivikr.dev@gmail.com>
Reviewed-By: John-David Dalton <john.david.dalton@gmail.com>
2018-06-04 08:18:07 +02:00
Daniel Bevenius c1a87a30e7 src: remove unused req_wrap-inl.h
This commit removes the inclusion of req_wrap-inl.h from
udp_wrap.h, and tty_wrap.cc as they are not used.

PR-URL: https://github.com/nodejs/node/pull/20996
Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl>
Reviewed-By: Ruben Bridgewater <ruben@bridgewater.de>
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
Reviewed-By: Trivikram Kamat <trivikr.dev@gmail.com>
Reviewed-By: James M Snell <jasnell@gmail.com>
2018-05-30 05:19:13 +02:00
Daniel Bevenius ed2a110f91 lib: use object destructuring for ContextifyScript
PR-URL: https://github.com/nodejs/node/pull/20934
Reviewed-By: Anna Henningsen <anna@addaleax.net>
Reviewed-By: Michaël Zasso <targos@protonmail.com>
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
Reviewed-By: Gus Caplan <me@gus.host>
Reviewed-By: Richard Lau <riclau@uk.ibm.com>
Reviewed-By: Ruben Bridgewater <ruben@bridgewater.de>
Reviewed-By: James M Snell <jasnell@gmail.com>
Reviewed-By: Trivikram Kamat <trivikr.dev@gmail.com>
Reviewed-By: Weijia Wang <starkwang@126.com>
2018-05-27 17:33:08 +08:00
Daniel Bevenius 03043e290a lib: remove unnecessary string interpolation
PR-URL: https://github.com/nodejs/node/pull/20890
Reviewed-By: Anatoli Papirovski <apapirovski@mac.com>
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
Reviewed-By: Michaël Zasso <targos@protonmail.com>
Reviewed-By: Jackson Tian <shyvo1987@gmail.com>
Reviewed-By: Trivikram Kamat <trivikr.dev@gmail.com>
Reviewed-By: James M Snell <jasnell@gmail.com>
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
Reviewed-By: Tobias Nießen <tniessen@tnie.de>
Reviewed-By: Benjamin Gruenbaum <benjamingr@gmail.com>
2018-05-24 09:17:39 +02:00
Daniel Bevenius 3294d1bf62 src: remove --expose-http2 option
This commit removes the --expose-http2 option. In the code comment it
states that this should should be noop through v9.x, and it sounds like
it can be removed for 10.x and above.

PR-URL: https://github.com/nodejs/node/pull/20887
Reviewed-By: Anna Henningsen <anna@addaleax.net>
Reviewed-By: Michaël Zasso <targos@protonmail.com>
Reviewed-By: Benjamin Gruenbaum <benjamingr@gmail.com>
Reviewed-By: Richard Lau <riclau@uk.ibm.com>
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
Reviewed-By: Trivikram Kamat <trivikr.dev@gmail.com>
Reviewed-By: James M Snell <jasnell@gmail.com>
2018-05-24 08:28:02 +02:00
Daniel Bevenius a0eb1e4119 src: make pointers lean left in node_crypto.cc
PR-URL: https://github.com/nodejs/node/pull/20799
Reviewed-By: James M Snell <jasnell@gmail.com>
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
Reviewed-By: Tobias Nießen <tniessen@tnie.de>
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
Reviewed-By: Trivikram Kamat <trivikr.dev@gmail.com>
2018-05-20 20:17:35 +02:00
Daniel Bevenius 6f3405679f src: use unqualified names in node_crypto.cc
This commit removes the usage of qualified names for consistency.

PR-URL: https://github.com/nodejs/node/pull/20799
Reviewed-By: James M Snell <jasnell@gmail.com>
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
Reviewed-By: Tobias Nießen <tniessen@tnie.de>
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
Reviewed-By: Trivikram Kamat <trivikr.dev@gmail.com>
2018-05-20 20:17:35 +02:00
Daniel Bevenius 9b24be1340 stream: refactor getHighWaterMark in state.js
This commit aims to reduce some code duplication in state.js

PR-URL: https://github.com/nodejs/node/pull/20415
Reviewed-By: Anatoli Papirovski <apapirovski@mac.com>
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
Reviewed-By: James M Snell <jasnell@gmail.com>
Reviewed-By: Trivikram Kamat <trivikr.dev@gmail.com>
2018-05-18 15:22:42 +02:00
Daniel Bevenius 0419adc771 src: add override to ThreadPool methods in zlib
Currently the following compiler warnings are generated:
../src/node_zlib.cc:222:8:
warning: 'DoThreadPoolWork' overrides a member function but is not marked
      'override' [-Winconsistent-missing-override]
  void DoThreadPoolWork() {
       ^
../src/node_internals.h:509:16: note: overridden virtual function is here
  virtual void DoThreadPoolWork() = 0;
               ^
../src/node_zlib.cc:357:8: warning:
'AfterThreadPoolWork' overrides a member function but is not marked
      'override' [-Winconsistent-missing-override]
  void AfterThreadPoolWork(int status) {
       ^
../src/node_internals.h:510:16:
note: overridden virtual function is here
  virtual void AfterThreadPoolWork(int status) = 0;
               ^

This commit adds the override specifier to the methods to silence the
warnings.

PR-URL: https://github.com/nodejs/node/pull/20769
Reviewed-By: Joyee Cheung <joyeec9h3@gmail.com>
Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl>
Reviewed-By: Anna Henningsen <anna@addaleax.net>
Reviewed-By: James M Snell <jasnell@gmail.com>
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
2018-05-18 06:17:16 +02:00
Daniel Bevenius ea01d305f6 module: introduce defaultModuleName in module.js
This commit adds a constant named defaultModuleName to avoid duplicating
it in the Module constructor function.

PR-URL: https://github.com/nodejs/node/pull/20709
Reviewed-By: Yuta Hiroto <hello@hiroppy.me>
Reviewed-By: Trivikram Kamat <trivikr.dev@gmail.com>
Reviewed-By: Gus Caplan <me@gus.host>
Reviewed-By: James M Snell <jasnell@gmail.com>
2018-05-16 07:47:24 +02:00
Daniel Bevenius fcf2e4207e src: make env_ and context_ private
This commit makes the currently protected members env_ and context_
private in node_contextify.h.

PR-URL: https://github.com/nodejs/node/pull/20671
Reviewed-By: Tiancheng "Timothy" Gu <timothygu99@gmail.com>
Reviewed-By: Anna Henningsen <anna@addaleax.net>
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
Reviewed-By: Tobias Nießen <tniessen@tnie.de>
Reviewed-By: James M Snell <jasnell@gmail.com>
2018-05-14 05:51:16 +02:00
Daniel Bevenius a9b399f581 src: remove unused includes from node_contextify.h
PR-URL: https://github.com/nodejs/node/pull/20670
Reviewed-By: Michaël Zasso <targos@protonmail.com>
Reviewed-By: Anna Henningsen <anna@addaleax.net>
Reviewed-By: Tiancheng "Timothy" Gu <timothygu99@gmail.com>
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
Reviewed-By: James M Snell <jasnell@gmail.com>
2018-05-13 17:04:54 +02:00
Daniel Bevenius f9c6fd0a02 src: use unqualified names in node_contextify.cc
This commit removes the usage of qualified names for consistency.

PR-URL: https://github.com/nodejs/node/pull/20669
Reviewed-By: Michaël Zasso <targos@protonmail.com>
Reviewed-By: Anna Henningsen <anna@addaleax.net>
Reviewed-By: Tiancheng "Timothy" Gu <timothygu99@gmail.com>
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
Reviewed-By: Tobias Nießen <tniessen@tnie.de>
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
Reviewed-By: James M Snell <jasnell@gmail.com>
2018-05-13 16:57:02 +02:00
Daniel Bevenius 778f248914 src: add missing override to ThreadPoolWork funcs
Currently the following warnings are displayed when compiling:

../src/node_api.cc:3380:8:
warning: 'AfterThreadPoolWork' overrides a member function but is not
marked 'override' [-Winconsistent-missing-override]
  void AfterThreadPoolWork(int status) {
       ^
../src/node_internals.h:513:16: note: overridden virtual function is
here
  virtual void AfterThreadPoolWork(int status) = 0;
               ^
1 warning generated.

../src/node_zlib.cc:220:8:
warning: 'DoThreadPoolWork' overrides a member function but is not
marked 'override' [-Winconsistent-missing-override]
  void DoThreadPoolWork() {
       ^
../src/node_internals.h:512:16: note: overridden virtual function is
here
  virtual void DoThreadPoolWork() = 0;
               ^
../src/node_zlib.cc:224:8:
warning: 'AfterThreadPoolWork' overrides a member function but is
not marked 'override' [-Winconsistent-missing-override]
  void AfterThreadPoolWork(int status) {
       ^
../src/node_internals.h:513:16: note: overridden virtual function is
here
  virtual void AfterThreadPoolWork(int status) = 0;
               ^
2 warnings generated.

This commit adds override to the functions.

PR-URL: https://github.com/nodejs/node/pull/20663
Reviewed-By: Anna Henningsen <anna@addaleax.net>
Reviewed-By: Michael Dawson <michael_dawson@ca.ibm.com>
2018-05-10 23:37:44 +02:00
Daniel Bevenius b267d2aae6 src: use unqualified names in module_wrap.cc
This commit removes the usage of qualified names for consistency.

PR-URL: https://github.com/nodejs/node/pull/20594
Reviewed-By: Gus Caplan <me@gus.host>
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
Reviewed-By: James M Snell <jasnell@gmail.com>
Reviewed-By: Tiancheng "Timothy" Gu <timothygu99@gmail.com>
Reviewed-By: Anna Henningsen <anna@addaleax.net>
Reviewed-By: Tobias Nießen <tniessen@tnie.de>
2018-05-10 05:30:26 +02:00
Daniel Bevenius 6446510066 lib: return directly from packageMainCache
This commit updates readPackage to return directly when calling
packageMainCache instead of storing the result in a local var
and returning later.

PR-URL: https://github.com/nodejs/node/pull/20591
Reviewed-By: Michaël Zasso <targos@protonmail.com>
Reviewed-By: Gus Caplan <me@gus.host>
Reviewed-By: Trivikram Kamat <trivikr.dev@gmail.com>
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
Reviewed-By: Ruben Bridgewater <ruben@bridgewater.de>
Reviewed-By: James M Snell <jasnell@gmail.com>
Reviewed-By: Tobias Nießen <tniessen@tnie.de>
2018-05-10 04:57:19 +02:00
Daniel Bevenius facb2c53c2 vm: move emitExperimentalWarning
This commit moves emitExperimentalWarning into the second object
destructoring of require internal/util.

PR-URL: https://github.com/nodejs/node/pull/20593
Reviewed-By: Michaël Zasso <targos@protonmail.com>
Reviewed-By: Сковорода Никита Андреевич <chalkerx@gmail.com>
Reviewed-By: Gus Caplan <me@gus.host>
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
Reviewed-By: Ruben Bridgewater <ruben@bridgewater.de>
Reviewed-By: James M Snell <jasnell@gmail.com>
Reviewed-By: Jon Moss <me@jonathanmoss.me>
Reviewed-By: Tiancheng "Timothy" Gu <timothygu99@gmail.com>
Reviewed-By: Anna Henningsen <anna@addaleax.net>
2018-05-09 19:10:01 +02:00
Daniel Bevenius 3f6450b638 net: remove typo in setTimeout comment
This commit removes `lear` from the code comment in setTimeout. I'm not
100% sure this is a typo but I've struggled to think what it could mean.
Hopefully someone else might be able to shed some light on this.

PR-URL: https://github.com/nodejs/node/pull/20576
Reviewed-By: James M Snell <jasnell@gmail.com>
Reviewed-By: Jeremiah Senkpiel <fishrock123@rocketmail.com>
Reviewed-By: Ruben Bridgewater <ruben@bridgewater.de>
Reviewed-By: Tobias Nießen <tniessen@tnie.de>
Reviewed-By: Anna Henningsen <anna@addaleax.net>
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
2018-05-09 10:26:05 +02:00
Daniel Bevenius 5c9572d9d1 doc: update VM section text
This commit updates the VM section with suggestion for a minor
improvement (hopefully) of the text.

PR-URL: https://github.com/nodejs/node/pull/20595
Reviewed-By: Vse Mozhet Byt <vsemozhetbyt@gmail.com>
Reviewed-By: Gus Caplan <me@gus.host>
Reviewed-By: James M Snell <jasnell@gmail.com>
Reviewed-By: Rich Trott <rtrott@gmail.com>
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
2018-05-09 10:23:21 +02:00
Daniel Bevenius 590769bb96 src: don't create Undefined if not needed
This commit moves the creation of argv and only creates an undefined
value if the passed in status was not 0.

The variable name client_handle was already used in this function but
I've change that usage so that this variable name matches the
onconnection callback functions parameter name clientHandle.

PR-URL: https://github.com/nodejs/node/pull/20573
Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl>
Reviewed-By: James M Snell <jasnell@gmail.com>
Reviewed-By: Tiancheng "Timothy" Gu <timothygu99@gmail.com>
Reviewed-By: Gus Caplan <me@gus.host>
Reviewed-By: Anna Henningsen <anna@addaleax.net>
2018-05-09 10:15:06 +02:00
Daniel Bevenius 36793b8c65 src: rename handle parameter object
This commit renames the handle parameter for the BaseObject constructor
to object instead of handle.

The motivation for doing this is that when stepping through an
inheritance chain it can sometimes be a little confusing when
HandleWrap is in involved. HandleWrap has a handle parameter
but calls the object that is passed to AsyncWrap object, but
then when you end up in BaseObject it is named handle.

PR-URL: https://github.com/nodejs/node/pull/20570
Reviewed-By: Anna Henningsen <anna@addaleax.net>
Reviewed-By: James M Snell <jasnell@gmail.com>
2018-05-09 10:05:23 +02:00
Daniel Bevenius c8f8847120 doc: add snake_case section for C-like structs
This commit adds a section mentioning that for C-like structs it is
alright to use snake_case.

PR-URL: https://github.com/nodejs/node/pull/20423
Reviewed-By: Anna Henningsen <anna@addaleax.net>
2018-05-06 21:38:00 +02:00
Daniel Bevenius 2c5b94f390 http2: rename http2_state class to Http2State
This commit renames the http2_state class to follow the guidelines in
CPP_STYLE_GUIDE.md.

PR-URL: https://github.com/nodejs/node/pull/20423
Reviewed-By: Anna Henningsen <anna@addaleax.net>
2018-05-06 21:37:55 +02:00
Daniel Bevenius 161182ec05 tls: remove sharedCreds in Server constructor
This commit removes the var sharedCreds which is just reassigned to
this._sharedCreds in the following line.

PR-URL: https://github.com/nodejs/node/pull/20491
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
Reviewed-By: James M Snell <jasnell@gmail.com>
Reviewed-By: Anna Henningsen <anna@addaleax.net>
Reviewed-By: Ruben Bridgewater <ruben@bridgewater.de>
2018-05-06 21:13:31 +02:00
Daniel Bevenius 557f5702ec http2: reduce require calls in http2/core
This commit removes unnecesary requires of http and internal/util in
http2/core.js

PR-URL: https://github.com/nodejs/node/pull/20422
Reviewed-By: Anatoli Papirovski <apapirovski@mac.com>
Reviewed-By: Tiancheng "Timothy" Gu <timothygu99@gmail.com>
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
Reviewed-By: Trivikram Kamat <trivikr.dev@gmail.com>
2018-05-02 08:37:05 +02:00
Daniel Bevenius 04f180122c http2: remove unnecessary v8 qualified names
This commit removes v8 qualified identifiers that have using directives
to be consistent with the rest of the code in node_http2.cc.

PR-URL: https://github.com/nodejs/node/pull/20420
Reviewed-By: Anatoli Papirovski <apapirovski@mac.com>
Reviewed-By: Tiancheng "Timothy" Gu <timothygu99@gmail.com>
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
2018-05-02 08:26:25 +02:00
Daniel Bevenius 091f999507 http2: remove unused using declarations node_http2
PR-URL: https://github.com/nodejs/node/pull/20420
Reviewed-By: Anatoli Papirovski <apapirovski@mac.com>
Reviewed-By: Tiancheng "Timothy" Gu <timothygu99@gmail.com>
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
2018-05-02 08:26:12 +02:00
Daniel Bevenius bdf0d9b364 fs: point isFd to isUint32
This commit updates the isFd function to call isUint32 instead of
doing the same thing.

PR-URL: https://github.com/nodejs/node/pull/20330
Reviewed-By: Benjamin Gruenbaum <benjamingr@gmail.com>
Reviewed-By: Tobias Nießen <tniessen@tnie.de>
Reviewed-By: Tiancheng "Timothy" Gu <timothygu99@gmail.com>
Reviewed-By: Richard Lau <riclau@uk.ibm.com>
Reviewed-By: Joyee Cheung <joyeec9h3@gmail.com>
Reviewed-By: Ruben Bridgewater <ruben@bridgewater.de>
Reviewed-By: James M Snell <jasnell@gmail.com>
2018-04-28 17:15:39 +02:00
Daniel Bevenius 65021c5632 stream: only check options once in Duplex ctor
This commit updates the Duplex constructor adding an if statement
checking if options is undefined, and removes the check from the
following three if statements.

PR-URL: https://github.com/nodejs/node/pull/20353
Reviewed-By: Ruben Bridgewater <ruben@bridgewater.de>
Reviewed-By: James M Snell <jasnell@gmail.com>
Reviewed-By: Anna Henningsen <anna@addaleax.net>
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
2018-04-28 17:13:55 +02:00
Daniel Bevenius e10cb7fdda tls: specify options.name in validateKeyCert
This commit addresses a TODO added by Ruben Bridgewater in commit
c6b6c92185 ("lib: always show
ERR_INVALID_ARG_TYPE received part") which was to prefix the name of
the invalid argument with 'options.'.

This commit also switches the order of the parameters to validateKeyCert
to be consistent with other validators.

PR-URL: https://github.com/nodejs/node/pull/20284
Reviewed-By: Ruben Bridgewater <ruben@bridgewater.de>
Reviewed-By: Anna Henningsen <anna@addaleax.net>
Reviewed-By: Trivikram Kamat <trivikr.dev@gmail.com>
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
2018-04-27 07:12:26 +02:00
Daniel Bevenius 6606a2604a n-api: remove unused Test function
Currently when building the following warning is emitted:

../test_symbol.c:4:19:
warning: unused function 'Test' [-Wunused-function]
static napi_value Test(napi_env env, napi_callback_info info) {
                  ^
1 warning generated.

This commit removes this unused function.

PR-URL: https://github.com/nodejs/node/pull/20320
Reviewed-By: Joyee Cheung <joyeec9h3@gmail.com>
Reviewed-By: Trivikram Kamat <trivikr.dev@gmail.com>
Reviewed-By: Michael Dawson <michael_dawson@ca.ibm.com>
Reviewed-By: Ruben Bridgewater <ruben@bridgewater.de>
2018-04-26 20:02:10 +02:00
Daniel Bevenius 20612486d9 crypto: make pbkdf2 use checkIsArrayBufferView
This commit updates pbkdf2 to use checkIsArrayBufferView from
internal/crypto/util.

PR-URL: https://github.com/nodejs/node/pull/20251
Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl>
Reviewed-By: Joyee Cheung <joyeec9h3@gmail.com>
Reviewed-By: Tobias Nießen <tniessen@tnie.de>
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
Reviewed-By: Trivikram Kamat <trivikr.dev@gmail.com>
Reviewed-By: James M Snell <jasnell@gmail.com>
Reviewed-By: Tiancheng "Timothy" Gu <timothygu99@gmail.com>
2018-04-26 07:48:56 +02:00
Daniel Bevenius fe70af9072 crypto: add checkIsArrayBufferView
This commit adds a checkIsArrayBufferView function to avoid some code
duplication in sig.js

PR-URL: https://github.com/nodejs/node/pull/20251
Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl>
Reviewed-By: Joyee Cheung <joyeec9h3@gmail.com>
Reviewed-By: Tobias Nießen <tniessen@tnie.de>
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
Reviewed-By: Trivikram Kamat <trivikr.dev@gmail.com>
Reviewed-By: James M Snell <jasnell@gmail.com>
Reviewed-By: Tiancheng "Timothy" Gu <timothygu99@gmail.com>
2018-04-26 07:48:56 +02:00
Daniel Bevenius d4726d2f3f crypto: add getIntOption function to reduce dupl
This commit adds a getIntOption function to reduce the code duplicated
for getting the padding, and saltLength options.

PR-URL: https://github.com/nodejs/node/pull/20247
Reviewed-By: Anna Henningsen <anna@addaleax.net>
Reviewed-By: Tobias Nießen <tniessen@tnie.de>
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
Reviewed-By: Trivikram Kamat <trivikr.dev@gmail.com>
Reviewed-By: James M Snell <jasnell@gmail.com>
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
2018-04-26 07:36:03 +02:00
Daniel Bevenius 3b8ab2ac7f crypto: simplify diffiehellman getFormat function
This commit aims to simplify the getFormat function in
diffiehellman.js.

PR-URL: https://github.com/nodejs/node/pull/20246
Reviewed-By: Tobias Nießen <tniessen@tnie.de>
Reviewed-By: Trivikram Kamat <trivikr.dev@gmail.com>
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
Reviewed-By: James M Snell <jasnell@gmail.com>
2018-04-26 07:23:15 +02:00
Daniel Bevenius 95197ed2b0 test: add checkMethods function for Certificate
This commit adds a checkMethods function so that it can be reused to
avoid duplicating the same code for instance methods, and static
methods of the Certificate object.

PR-URL: https://github.com/nodejs/node/pull/20224
Reviewed-By: Ruben Bridgewater <ruben@bridgewater.de>
Reviewed-By: James M Snell <jasnell@gmail.com>
Reviewed-By: Trivikram Kamat <trivikr.dev@gmail.com>
2018-04-25 06:21:29 +02:00
Daniel Bevenius c521a20f43 test: remove crypto.DEFAULT_ENCODING usage
This commit removes the usage of the deprectated
crypto.DEFAULT_ENCODING.

PR-URL: https://github.com/nodejs/node/pull/20221
Reviewed-By: Ruben Bridgewater <ruben@bridgewater.de>
Reviewed-By: James M Snell <jasnell@gmail.com>
Reviewed-By: Trivikram Kamat <trivikr.dev@gmail.com>
2018-04-25 06:09:21 +02:00
Daniel Bevenius 15fd0d95f8 src: fix node_crypto.cc compiler warnings
Currently the following compiler warnings are issued by clang:

../src/node_crypto.cc:2801:56:
warning: '&&' within '||' [-Wlogical-op-parentheses]
return tag_len == 4 || tag_len == 8 || tag_len >= 12 && tag_len <= 16;
                                    ~~ ~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~
../src/node_crypto.cc:2801:56:
note: place parentheses around the '&&' expression to silence this
warning
return tag_len == 4 || tag_len == 8 || tag_len >= 12 && tag_len <= 16;
                                                     ^
../src/node_crypto.cc:2925:51:
warning: '&&' within '||' [-Wlogical-op-parentheses]
    if (cipher->auth_tag_len_ != kNoAuthTagLength &&
        ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~
../src/node_crypto.cc:2925:51:
note: place parentheses around the '&&' expression to silence this
warning
    if (cipher->auth_tag_len_ != kNoAuthTagLength &&
                                                  ^

This commit adds parenthesis around these expressions to silence the
warnings.

PR-URL: https://github.com/nodejs/node/pull/20216
Reviewed-By: Richard Lau <riclau@uk.ibm.com>
Reviewed-By: Joyee Cheung <joyeec9h3@gmail.com>
Reviewed-By: Ruben Bridgewater <ruben@bridgewater.de>
Reviewed-By: Anna Henningsen <anna@addaleax.net>
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
Reviewed-By: James M Snell <jasnell@gmail.com>
2018-04-24 00:39:25 +02:00
Daniel Bevenius c07c73ced7 src: rename return var in VerifySpkac functions
This commit renames the verification result variable, that is currently
named i, to verify_result.

PR-URL: https://github.com/nodejs/node/pull/20218
Reviewed-By: Anna Henningsen <anna@addaleax.net>
Reviewed-By: Joyee Cheung <joyeec9h3@gmail.com>
Reviewed-By: Richard Lau <riclau@uk.ibm.com>
Reviewed-By: Michaël Zasso <targos@protonmail.com>
Reviewed-By: Minwoo Jung <minwoo@nodesource.com>
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
Reviewed-By: James M Snell <jasnell@gmail.com>
2018-04-24 00:38:44 +02:00
Daniel Bevenius e3b0fb0603 src: prefer false instead of bool zero
This commit updates node_crypto.cc VerifySpkac function to use false
instead of 0 for its return bool value i.

PR-URL: https://github.com/nodejs/node/pull/20218
Reviewed-By: Anna Henningsen <anna@addaleax.net>
Reviewed-By: Joyee Cheung <joyeec9h3@gmail.com>
Reviewed-By: Richard Lau <riclau@uk.ibm.com>
Reviewed-By: Michaël Zasso <targos@protonmail.com>
Reviewed-By: Minwoo Jung <minwoo@nodesource.com>
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
Reviewed-By: James M Snell <jasnell@gmail.com>
2018-04-24 00:38:43 +02:00
Daniel Bevenius 9f97f1044b crypto: remove rsaPrivate and rename rsaPublic
This commit renames rsaPublic and removes the rsaPrivate function as the
code in these two functions are identical.

PR-URL: https://github.com/nodejs/node/pull/20164
Reviewed-By: James M Snell <jasnell@gmail.com>
Reviewed-By: Tobias Nießen <tniessen@tnie.de>
Reviewed-By: Trivikram Kamat <trivikr.dev@gmail.com>
Reviewed-By: Ruben Bridgewater <ruben@bridgewater.de>
2018-04-23 05:40:13 +02:00
Daniel Bevenius d024c2cda1 crypto: add addCipherPrototypeFunctions function
This commit adds a function named addCipherPrototypeFunctions to avoid
code duplication.

PR-URL: https://github.com/nodejs/node/pull/20164
Reviewed-By: James M Snell <jasnell@gmail.com>
Reviewed-By: Tobias Nießen <tniessen@tnie.de>
Reviewed-By: Trivikram Kamat <trivikr.dev@gmail.com>
Reviewed-By: Ruben Bridgewater <ruben@bridgewater.de>
2018-04-23 05:40:09 +02:00
Daniel Bevenius c851263023 crypto: add createCipher/WithIV functions
This commit extracts the common code from the Cipher/Cipheriv and
Decipher/Decipheriv constructors into a separate function to avoid
code duplication.

PR-URL: https://github.com/nodejs/node/pull/20164
Reviewed-By: James M Snell <jasnell@gmail.com>
Reviewed-By: Tobias Nießen <tniessen@tnie.de>
Reviewed-By: Trivikram Kamat <trivikr.dev@gmail.com>
Reviewed-By: Ruben Bridgewater <ruben@bridgewater.de>
2018-04-23 05:39:57 +02:00
Daniel Bevenius f31fc9398d lib: remove unnecessary assignment of exports
This commit removes the assignment of exports since it is not used
in these files and there is no harm re-assigning module.exports.

PR-URL: https://github.com/nodejs/node/pull/20143
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
Reviewed-By: Jackson Tian <shyvo1987@gmail.com>
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
Reviewed-By: James M Snell <jasnell@gmail.com>
Reviewed-By: Trivikram Kamat <trivikr.dev@gmail.com>
Reviewed-By: Tobias Nießen <tniessen@tnie.de>
2018-04-22 11:39:16 +02:00
Daniel Bevenius aaea70693e lib: remove unused binding const
This commit removes the binding const as it is only used in one place
which is in the following line.

PR-URL: https://github.com/nodejs/node/pull/20144
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
Reviewed-By: James M Snell <jasnell@gmail.com>
Reviewed-By: Richard Lau <riclau@uk.ibm.com>
Reviewed-By: Tiancheng "Timothy" Gu <timothygu99@gmail.com>
Reviewed-By: Yuta Hiroto <hello@hiroppy.me>
Reviewed-By: Trivikram Kamat <trivikr.dev@gmail.com>
Reviewed-By: Tobias Nießen <tniessen@tnie.de>
2018-04-22 11:21:04 +02:00
Daniel Bevenius bbdb4af0bd lib: remove duplicate require calls in tls.js
This commit removes the duplicate require calls of the _tls_common and
_tls_wrap modules. The motivation for this being that even though the
modules are cached the additional calls are unnecessary.

PR-URL: https://github.com/nodejs/node/pull/20099
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
Reviewed-By: James M Snell <jasnell@gmail.com>
Reviewed-By: Richard Lau <riclau@uk.ibm.com>
Reviewed-By: Tobias Nießen <tniessen@tnie.de>
Reviewed-By: Ruben Bridgewater <ruben@bridgewater.de>
Reviewed-By: Khaidi Chu <i@2333.moe>
Reviewed-By: Trivikram Kamat <trivikr.dev@gmail.com>
2018-04-19 07:18:14 +02:00
Daniel Bevenius 188ed074a9 lib: make c, ca and certs const in _tls_common
PR-URL: https://github.com/nodejs/node/pull/20073
Reviewed-By: Trivikram Kamat <trivikr.dev@gmail.com>
Reviewed-By: James M Snell <jasnell@gmail.com>
2018-04-19 05:35:35 +02:00
Daniel Bevenius 72d15866ac lib: use object destructuring tls.js
This commit updates canonicalizeIP and Buffer to use object
destructuring which is done for other functions in lib/tls.js

PR-URL: https://github.com/nodejs/node/pull/20070
Reviewed-By: Tobias Nießen <tniessen@tnie.de>
Reviewed-By: Anna Henningsen <anna@addaleax.net>
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
Reviewed-By: Ruben Bridgewater <ruben@bridgewater.de>
Reviewed-By: James M Snell <jasnell@gmail.com>
Reviewed-By: Trivikram Kamat <trivikr.dev@gmail.com>
2018-04-19 05:33:16 +02:00
Daniel Bevenius d864f63611 src: remove req_wrap-inl.h from stream_base.h
This commit removes the inclusion of req_wrap-inl.h in stream_base.h
as ReqWrap is not used. This removal required stream_base.h to include
async_wrap-inl.h so there is an implementation of BaseObject::object.

The above change also affected connect_wrap, which needs to include
req_wrap-inl.h to get an implementation of ReqWrap::Dispatched.

PR-URL: https://github.com/nodejs/node/pull/20063
Reviewed-By: James M Snell <jasnell@gmail.com>
Reviewed-By: Anna Henningsen <anna@addaleax.net>
Reviewed-By: Tiancheng "Timothy" Gu <timothygu99@gmail.com>
2018-04-18 11:44:15 +02:00
Daniel Bevenius 8384b07996 src: use v8:: namepace consistently in node_file
Currently node_file.cc has a number of using declarations but in a few
places still uses the qualified names. This commit changes this for
consistency.

PR-URL: https://github.com/nodejs/node/pull/20059
Reviewed-By: Tobias Nießen <tniessen@tnie.de>
Reviewed-By: Anna Henningsen <anna@addaleax.net>
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
Reviewed-By: James M Snell <jasnell@gmail.com>
2018-04-18 11:35:30 +02:00
Daniel Bevenius 1d72434c8b test: remove test case 0 from tls-cnnic-whitelist
I looks like this test has not worked as expected since commit
2bc7841d0f ("test: use random ports
where possible"). The test in that commit checked for `CERT_REVOKED`
which was returned by CheckWhitelistedServerCert.

CheckWhitelistedServerCert was later removed in commit
dc875438a3 ("src: drop CNNIC+StartCom
certificate whitelisting").

I'm suggesting that this test case be removed as I don't think it is
valid anymore.

PR-URL: https://github.com/nodejs/node/pull/19767
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
Reviewed-By: James M Snell <jasnell@gmail.com>
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
2018-04-14 11:45:59 -07:00
Daniel Bevenius 7a33c2cc7c test: set clientOpts.port property
Currently this test will overwrite the clientOpts object with the port,
instead of setting the port property on the clientOpts object which
looks like the original intent.

Doing this the test fails reporting that the fake-cnnic-root-cert has
expired. This is indeed true:
$ openssl x509 -in test/fixtures/keys/fake-cnnic-root-cert.pem \
-text -noout
Certificate:
        ...
        Validity
            Not Before: Jun  9 17:15:16 2015 GMT
            Not After : Mar 29 17:15:16 2018 GMT

This commit sets the errorCode to CERT_HAS_EXPIRED. I tried updating the
certificate using test/fixtures/keys/Makefile but then no error is
thrown and I'm currently looking into this.

PR-URL: https://github.com/nodejs/node/pull/19767
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
Reviewed-By: James M Snell <jasnell@gmail.com>
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
2018-04-14 11:45:47 -07:00
Daniel Bevenius 5879f480b1 test: update keys/Makefile to clean and build all
Currently when running make clean, followed by make not all certificates
get genenerated. In addition there are also the following error messages
related to the startdate in agent8-cert.pem, and agent9-cert.pem:
start date is invalid, it should be YYMMDDHHMMSSZ

After this commit it is possible to perform the following commands:
$ make clean
$ make
$ make test

PR-URL: https://github.com/nodejs/node/pull/19975
Reviewed-By: Rich Trott <rtrott@gmail.com>
Reviewed-By: James M Snell <jasnell@gmail.com>
2018-04-14 11:38:41 -07:00
Daniel Bevenius 89cd74908e build: check without_ssl in warn openssl_no_asm
Currently when configuring --without-ssl  the following warning is
displayed:
WARNING: openssl_no_asm is enabled due to missed or old assembler.
            Please refer BUILDING.md

This commit adds a check of options.without_ssl to avoid this warning
when --without-ssl is used.

PR-URL: https://github.com/nodejs/node/pull/19934
Reviewed-By: Ruben Bridgewater <ruben@bridgewater.de>
2018-04-14 13:39:43 +02:00
Daniel Bevenius bd0a690632 test: fix warning in dlopen-ping-pong/binding.cc
Currently, the following compiler warning is issued:
../binding.cc:26:27:
warning: 'Utf8Value' is deprecated [-Wdeprecated-declarations]
  const String::Utf8Value filename(args[0]);
                          ^

This commit updates the code to use the Isolate version.

PR-URL: https://github.com/nodejs/node/pull/19966
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
Reviewed-By: James M Snell <jasnell@gmail.com>
2018-04-14 13:22:31 +02:00
Daniel Bevenius 0e811173b1 src: add node_internal.h includes for arraysize
This commit adds includes for node_internal.h in source files that use
arraysize but don't include this header. The motivation for this is to
make refactoring easier (and is the reason I noticed this).

PR-URL: https://github.com/nodejs/node/pull/19916
Reviewed-By: James M Snell <jasnell@gmail.com>
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
Reviewed-By: Gibson Fahnestock <gibfahn@gmail.com>
2018-04-12 15:28:11 +02:00
Daniel Bevenius 4ac7753e4d test: move require('http2') after crypto check
This test currently fails when configured --without-ssl:
Error [ERR_NO_CRYPTO]:
Node.js is not compiled with OpenSSL crypto support

This commit moves the require of http2 to come after the crypto check to
avoid the error.

PR-URL: https://github.com/nodejs/node/pull/19907
Reviewed-By: Richard Lau <riclau@uk.ibm.com>
Reviewed-By: Trivikram Kamat <trivikr.dev@gmail.com>
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
Reviewed-By: Tobias Nießen <tniessen@tnie.de>
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
Reviewed-By: James M Snell <jasnell@gmail.com>
2018-04-11 08:23:08 +02:00
Daniel Bevenius 398968297a test: add check for root user
Currently this test fails if run as the root user:
Mismatched innerFn function calls. Expected exactly 62, actual 42.

The motivation for this is that when building node in a docker
container it is convenient to be able to build as root.

PR-URL: https://github.com/nodejs/node/pull/19850
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
Reviewed-By: James M Snell <jasnell@gmail.com>
Reviewed-By: Ruben Bridgewater <ruben@bridgewater.de>
Reviewed-By: Richard Lau <riclau@uk.ibm.com>
2018-04-11 08:15:14 +02:00
Daniel Bevenius 3650972bfb src: remove unused util.h from tls_wrap.h
This commit removes util.h from tls_wrap.h and adds util-inl.h to
tls_wrap.cc which does use it.

PR-URL: https://github.com/nodejs/node/pull/19849
Reviewed-By: James M Snell <jasnell@gmail.com>
2018-04-09 16:37:12 +02:00
Daniel Bevenius 682b85036e test: fix multiple expectedWarnings bug
Commit 8fb4ea9f75 ("test: add deprecation code to expectWarning") did
not take into account that the same warning could be expected multiple
times. This bug was discovered in
https://github.com/nodejs/node/pull/18138 and this commit adds a fix for
this issue.

PR-URL: https://github.com/nodejs/node/pull/19766
Refs: https://github.com/nodejs/node/pull/18138
Reviewed-By: Tobias Nießen <tniessen@tnie.de>
Reviewed-By: James M Snell <jasnell@gmail.com>
2018-04-06 03:14:08 +02:00
Daniel Bevenius b22a189b43 deps: fix typo in openssl upgrading doc
PR-URL: https://github.com/nodejs/node/pull/19789
Reviewed-By: Tobias Nießen <tniessen@tnie.de>
Reviewed-By: Gibson Fahnestock <gibfahn@gmail.com>
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
Reviewed-By: Trivikram Kamat <trivikr.dev@gmail.com>
2018-04-04 19:42:18 +02:00
Daniel Bevenius ed86cc570e src: rename req_wrap with -async/-sync suffix
This commit renames the req_wrap variable to use an -async/-sync
suffix to avoid cases where the variables were being shadowed.

PR-URL: https://github.com/nodejs/node/pull/19628
Refs: https://github.com/nodejs/node/pull/19614
Reviewed-By: Joyee Cheung <joyeec9h3@gmail.com>
Reviewed-By: James M Snell <jasnell@gmail.com>
2018-04-03 12:54:25 +02:00
Daniel Bevenius aec019030d test: use createReadStream instead of ReadStream
This commit updates test-fs-read-stream to use fs.createReadStream
instead of using fs.ReadStream. All other places in this test use
the former.

PR-URL: https://github.com/nodejs/node/pull/19636
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
Reviewed-By: Trivikram Kamat <trivikr.dev@gmail.com>
Reviewed-By: Weijia Wang <starkwang@126.com>
Reviewed-By: James M Snell <jasnell@gmail.com>
2018-03-29 17:31:00 +02:00
Daniel Bevenius a34f1e3245 test: fix typo in test-tls-cnnic-whitelist
PR-URL: https://github.com/nodejs/node/pull/19662
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
Reviewed-By: Rich Trott <rtrott@gmail.com>
Reviewed-By: Trivikram Kamat <trivikr.dev@gmail.com>
Reviewed-By: Richard Lau <riclau@uk.ibm.com>
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
2018-03-29 12:05:30 +02:00
Daniel Bevenius 852ba3a0f9 src: sort ENVIRONMENT_STRONG_PERSISTENT_PROPERTIES
PR-URL: https://github.com/nodejs/node/pull/19627
Reviewed-By: Gibson Fahnestock <gibfahn@gmail.com>
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
Reviewed-By: Tiancheng "Timothy" Gu <timothygu99@gmail.com>
Reviewed-By: James M Snell <jasnell@gmail.com>
2018-03-29 07:55:54 +02:00
Daniel Bevenius 376f949510 src: rename fs_req_wrap -> FSReqWrapSync
This commit renames fs_req_wrap to FSReqWrapSync to make it consistent
with most of the other classes in the code base.

PR-URL: https://github.com/nodejs/node/pull/19614
Reviewed-By: Joyee Cheung <joyeec9h3@gmail.com>
Reviewed-By: Trivikram Kamat <trivikr.dev@gmail.com>
Reviewed-By: Sakthipriyan Vairamani <thechargingvolcano@gmail.com>
Reviewed-By: Anna Henningsen <anna@addaleax.net>
Reviewed-By: James M Snell <jasnell@gmail.com>
2018-03-29 07:45:10 +02:00
Daniel Bevenius e88cd882f5 lib: move Pipe/TCPConnectWrap to obj destructuring
This commit moves PipeConnectWrap and TCPConnectWrap into the object
destructuring assigments that already exist for pipe_wrap and tcp_wrap.

PR-URL: https://github.com/nodejs/node/pull/19611
Reviewed-By: Anna Henningsen <anna@addaleax.net>
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
Reviewed-By: Weijia Wang <starkwang@126.com>
Reviewed-By: Trivikram Kamat <trivikr.dev@gmail.com>
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
Reviewed-By: James M Snell <jasnell@gmail.com>
2018-03-29 07:31:33 +02:00
Daniel Bevenius f2b10799ef lib: rename js source to lower snake_case
This commit renames all JavaScript source files in lib to lower
snake_case.

PR-URL: https://github.com/nodejs/node/pull/19556
Reviewed-By: Anna Henningsen <anna@addaleax.net>
Reviewed-By: Trivikram Kamat <trivikr.dev@gmail.com>
Reviewed-By: James M Snell <jasnell@gmail.com>
Reviewed-By: Tiancheng "Timothy" Gu <timothygu99@gmail.com>
2018-03-28 08:09:16 +02:00
Daniel Bevenius 8fb4ea9f75 test: add deprecation code to expectWarning
This commit adds a deprecation code to expectWarning and updates the
function to check the passed code against the code property on the
warning object.

Not all warnings have a deprecation code so for those that don't an
explicit code of common.noWarnCode is required. Passing this skips the
assertion of the code.

PR-URL: https://github.com/nodejs/node/pull/19474
Reviewed-By: Michaël Zasso <targos@protonmail.com>
Reviewed-By: James M Snell <jasnell@gmail.com>
Reviewed-By: Tobias Nießen <tniessen@tnie.de>
2018-03-26 10:29:34 +02:00
Daniel Bevenius ebbf393600 src: name all builtin init functions Initialize
This commit renames a few of the builtin modules init functions to
Initialize for consistency.

PR-URL: https://github.com/nodejs/node/pull/19550
Reviewed-By: Anna Henningsen <anna@addaleax.net>
Reviewed-By: Tiancheng "Timothy" Gu <timothygu99@gmail.com>
Reviewed-By: James M Snell <jasnell@gmail.com>
2018-03-26 08:23:49 +02:00
Daniel Bevenius 5a4a1cba24 async_hooks: add copyHooks function
This commit introduces a copyHooks function that can be used by
storeActiveHooks and restoreActiveHooks to remove some code duplication.

PR-URL: https://github.com/nodejs/node/pull/19391
Reviewed-By: Anna Henningsen <anna@addaleax.net>
Reviewed-By: Anatoli Papirovski <apapirovski@mac.com>
2018-03-20 07:42:00 +01:00
Daniel Bevenius 489b916c7d src: remove unused stdlib.h include
Commit 870229e665 ("src: Add ABORT
macro") replaced the abort call with the abort macro in util-inl.h.
This commit removes the include as it is not needed anymore.

PR-URL: https://github.com/nodejs/node/pull/19427
Reviewed-By: Anna Henningsen <anna@addaleax.net>
Reviewed-By: Tobias Nießen <tniessen@tnie.de>
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
2018-03-20 07:33:45 +01:00
Daniel Bevenius 18abca7b49 src: fix minor typo in comment stream_base.h
PR-URL: https://github.com/nodejs/node/pull/19429
Reviewed-By: Anna Henningsen <anna@addaleax.net>
Reviewed-By: Richard Lau <riclau@uk.ibm.com>
Reviewed-By: Tobias Nießen <tniessen@tnie.de>
Reviewed-By: James M Snell <jasnell@gmail.com>
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
2018-03-18 20:54:20 +01:00
Daniel Bevenius 6050add95e src: fix indentation of params in env-inl.h
PR-URL: https://github.com/nodejs/node/pull/19390
Reviewed-By: James M Snell <jasnell@gmail.com>
Reviewed-By: Michaël Zasso <targos@protonmail.com>
Reviewed-By: Anna Henningsen <anna@addaleax.net>
2018-03-18 12:17:22 +01:00
Daniel Bevenius 8c46fa6903 async_hooks: remove async_wrap from async_hooks.js
This commit removes the builtin async_wrap module from
lib/async_hooks.js.

The motivation for this is that lib/async_hooks.js requires
lib/internal/async_hooks which also binds async_wrap. Instead of
lib/async_hooks.js also binding async_wrap it now only has to require
the internal async_hooks and access it's exports.

There might be a very good reason for doing it the current way but the
reason is not obvious to me. Hopefully someone can shed some light on
this.

PR-URL: https://github.com/nodejs/node/pull/19368
Reviewed-By: James M Snell <jasnell@gmail.com>
Reviewed-By: Anatoli Papirovski <apapirovski@mac.com>
Reviewed-By: Andreas Madsen <amwebdk@gmail.com>
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
Reviewed-By: Anna Henningsen <anna@addaleax.net>
Reviewed-By: Ali Ijaz Sheikh <ofrobots@google.com>
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
2018-03-18 12:08:38 +01:00
Daniel Bevenius 75ff301ae0 src: make AsyncWrap constructors delegate
Currently, there is an AsyncWrap constructor that is only used by
PromiseWrap. This constructor has a body which is very similar
to the other AsyncWrap constructor.

This commit suggests updating the private constructor that is used
by PromiseWrap and also have the second constructor delegate to this
one to avoid the code duplication.

PR-URL: https://github.com/nodejs/node/pull/19366
Reviewed-By: James M Snell <jasnell@gmail.com>
Reviewed-By: Minwoo Jung <minwoo@nodesource.com>
Reviewed-By: Anna Henningsen <anna@addaleax.net>
2018-03-18 11:56:45 +01:00
Daniel Bevenius 9f3e5a0941 src: remove unused uv.h include from async_wrap.cc
PR-URL: https://github.com/nodejs/node/pull/19342
Reviewed-By: Michaël Zasso <targos@protonmail.com>
Reviewed-By: James M Snell <jasnell@gmail.com>
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
Reviewed-By: Richard Lau <riclau@uk.ibm.com>
Reviewed-By: Tobias Nießen <tniessen@tnie.de>
Reviewed-By: Khaidi Chu <i@2333.moe>
2018-03-16 08:11:07 +01:00