Commit Graph
10855 Commits
Author SHA1 Message Date
Vinicius Lourenço badba8ceb6 lib: reduce overhead of blob clone
PR-URL: https://github.com/nodejs/node/pull/50110
Reviewed-By: Yagiz Nizipli <yagiz@nizipli.com>
Reviewed-By: Stephen Belanger <admin@stephenbelanger.com>
Reviewed-By: Rafael Gonzaga <rafael.nunu@hotmail.com>
Reviewed-By: Chengzhong Wu <legendecas@gmail.com>
2023-10-17 06:23:40 +00:00
Alex Yang ef7363e507 stream: allow pass stream class to stream.compose
PR-URL: https://github.com/nodejs/node/pull/50187
Fixes: https://github.com/nodejs/node/issues/50176
Reviewed-By: Moshe Atlow <moshe@atlow.co.il>
Reviewed-By: Robert Nagy <ronagy@icloud.com>
Reviewed-By: Benjamin Gruenbaum <benjamingr@gmail.com>
2023-10-16 17:38:03 -05:00
Raz Luvaton 3907bd18f8 stream: call helper function from push and unshift
PR-URL: https://github.com/nodejs/node/pull/50173
Reviewed-By: Matteo Collina <matteo.collina@gmail.com>
Reviewed-By: Robert Nagy <ronagy@icloud.com>
Reviewed-By: Benjamin Gruenbaum <benjamingr@gmail.com>
2023-10-15 18:31:08 +00:00
Robert Nagy d68d0eacaa http: reduce parts in chunked response when corking
Refs: https://github.com/nodejs/performance/issues/57

PR-URL: https://github.com/nodejs/node/pull/50167
Reviewed-By: Stephen Belanger <admin@stephenbelanger.com>
Reviewed-By: Matteo Collina <matteo.collina@gmail.com>
Reviewed-By: Yagiz Nizipli <yagiz@nizipli.com>
2023-10-15 12:19:48 +00:00
Aras Abbasi 0f0dd1a493 os: cache homedir, remove getCheckedFunction
PR-URL: https://github.com/nodejs/node/pull/50037
Reviewed-By: Yagiz Nizipli <yagiz@nizipli.com>
2023-10-15 06:50:31 +00:00
Robert Nagy aad8002b88 stream: use private symbol for bitmap state
PR-URL: https://github.com/nodejs/node/pull/49993
Reviewed-By: Benjamin Gruenbaum <benjamingr@gmail.com>
Reviewed-By: Matteo Collina <matteo.collina@gmail.com>
Reviewed-By: Yagiz Nizipli <yagiz@nizipli.com>
Reviewed-By: Raz Luvaton <rluvaton@gmail.com>
2023-10-14 14:50:30 -07:00
Yagiz Nizipli 18a818744f fs: improve error performance of readdirSync
PR-URL: https://github.com/nodejs/node/pull/50131
Reviewed-By: Matteo Collina <matteo.collina@gmail.com>
Reviewed-By: Geoffrey Booth <webadmin@geoffreybooth.com>
2023-10-14 19:35:01 +00:00
Antoine du Hamel d1ef6aa2db esm: use import attributes instead of import assertions
The old import assertions proposal has been
renamed to "import attributes" with the follwing major changes:

1. The keyword is now `with` instead of `assert`.
2. Unknown assertions cause an error rather than being ignored,

This commit updates the documentation to encourage folks to use the new
syntax, and add aliases for module customization hooks.

PR-URL: https://github.com/nodejs/node/pull/50140
Fixes: https://github.com/nodejs/node/issues/50134
Refs: https://github.com/v8/v8/commit/159c82c5e6392e78b9bba7161b1bed6e23758984
Reviewed-By: Geoffrey Booth <webadmin@geoffreybooth.com>
Reviewed-By: Jacob Smith <jacob@frende.me>
Reviewed-By: Benjamin Gruenbaum <benjamingr@gmail.com>
2023-10-14 03:52:38 +00:00
Tobias Nießen f447a4611a permission: fix Uint8Array path traversal
Previous security patches addressed path traversal vulnerabilities for
string and Buffer inputs, but ignored Uint8Array inputs. This commit
fixes the existing logic to account for the latter.

The previous implementation would silently ignore unexpected inputs,
whereas this commit introduces an explicit assertion to prevent that
unsafe behavior.

PR-URL: https://github.com/nodejs-private/node-private/pull/456
Reviewed-By: Rafael Gonzaga <rafael.nunu@hotmail.com>
CVE-ID: CVE-2023-39332
2023-10-13 18:05:15 -03:00
Tobias Nießen 32bcf4ca27 permission: improve path traversal protection
Always use the original implementation of pathModule.resolve. If the
application overwrites the value of pathModule.resolve with a custom
implementation, it should not have any effect on the permission model.

PR-URL: https://github.com/nodejs-private/node-private/pull/456
Reviewed-By: Rafael Gonzaga <rafael.nunu@hotmail.com>
CVE-ID: CVE-2023-39331
2023-10-13 18:05:10 -03:00
Tobias Nießen 3b23b2ee53 module: fix code injection through export names
createDynamicModule() properly escapes import names, but not export
names. In WebAssembly, any string is a valid export name. Importing a
WebAssembly module that uses a non-identifier export name leads to
either a syntax error in createDynamicModule() or to code injection,
that is, to the evaluation of almost arbitrary JavaScript code outside
of the WebAssembly module.

To address this issue, adopt the same mechanism in createExport() that
createImport() already uses. Add tests for both exports and imports.

PR-URL: https://github.com/nodejs-private/node-private/pull/461
Backport-PR-URL: https://github.com/nodejs-private/node-private/pull/489
Reviewed-By: Rafael Gonzaga <rafael.nunu@hotmail.com>
CVE-ID: CVE-2023-39333
2023-10-13 18:03:52 -03:00
Tobias Nießen e673c03629 policy: use tamper-proof integrity check function
Using the JavaScript Hash class is unsafe because its internals can be
tampered with. In particular, an application can cause
Hash.prototype.digest() to return arbitrary values, thus allowing to
circumvent the integrity verification that policies are supposed to
guarantee.

Add and use a new C++ binding internalVerifyIntegrity() that (hopefully)
cannot be tampered with from JavaScript.

PR-URL: https://github.com/nodejs-private/node-private/pull/462
Reviewed-By: Rafael Gonzaga <rafael.nunu@hotmail.com>
CVE-ID: CVE-2023-38552
2023-10-13 18:03:19 -03:00
CanadaHonk 6bc7fa7906 fs: improve error perf of sync chmod+fchmod
PR-URL: https://github.com/nodejs/node/pull/49859
Refs: https://github.com/nodejs/performance/issues/106
Reviewed-By: Yagiz Nizipli <yagiz@nizipli.com>
Reviewed-By: Darshan Sen <raisinten@gmail.com>
Reviewed-By: Joyee Cheung <joyeec9h3@gmail.com>
2023-10-12 11:14:34 -04:00
CanadaHonk 6bd77db41f fs: improve error perf of sync *times
PR-URL: https://github.com/nodejs/node/pull/49864
Refs: https://github.com/nodejs/performance/issues/106
Reviewed-By: Yagiz Nizipli <yagiz@nizipli.com>
Reviewed-By: Stephen Belanger <admin@stephenbelanger.com>
Reviewed-By: Joyee Cheung <joyeec9h3@gmail.com>
2023-10-12 11:12:19 -04:00
Vinicius Lourenço a85e4186e5 stream: reduce overhead of transfer
PR-URL: https://github.com/nodejs/node/pull/50107
Reviewed-By: Yagiz Nizipli <yagiz@nizipli.com>
Reviewed-By: Matteo Collina <matteo.collina@gmail.com>
Reviewed-By: Stephen Belanger <admin@stephenbelanger.com>
2023-10-12 14:37:41 +00:00
IlyasShabi bf0f0789da fs: improve error performance of writevSync
PR-URL: https://github.com/nodejs/node/pull/50038
Refs: https://github.com/nodejs/performance/issues/106
Reviewed-By: Yagiz Nizipli <yagiz@nizipli.com>
2023-10-12 01:58:40 +00:00
Colin Ihrig 0d8faf2952 test_runner,test: fix flaky test-runner-cli-concurrency.js
This test was flaky on Windows when trying to clean up the
tmp directory, probably because it relied on child processes
timing out and being killed.

This commit updates the test to check for debug output
from the test runner. This should be adequate because the
original change was effectively:

let concurrency = getOptionValue('--test-concurrency') || true;

The test runner now logs the value of the concurrency variable.

Fixes: https://github.com/nodejs/node/issues/50101
PR-URL: https://github.com/nodejs/node/pull/50108
Reviewed-By: Antoine du Hamel <duhamelantoine1995@gmail.com>
Reviewed-By: Geoffrey Booth <webadmin@geoffreybooth.com>
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
Reviewed-By: Yagiz Nizipli <yagiz@nizipli.com>
2023-10-12 01:37:00 +00:00
Colin Ihrig 8a49735bae fs: add flush option to createWriteStream()
This commit adds a 'flush' option to the createWriteStream()
family of functions.

Refs: https://github.com/nodejs/node/issues/49886
PR-URL: https://github.com/nodejs/node/pull/50093
Reviewed-By: Yagiz Nizipli <yagiz@nizipli.com>
Reviewed-By: Matteo Collina <matteo.collina@gmail.com>
Reviewed-By: Marco Ippolito <marcoippolito54@gmail.com>
2023-10-11 16:25:05 +00:00
André Alves ed49722a8a fs: improve error performance for ftruncateSync
PR-URL: https://github.com/nodejs/node/pull/50032
Refs: https://github.com/nodejs/performance/issues/106
Reviewed-By: Yagiz Nizipli <yagiz@nizipli.com>
2023-10-10 22:24:24 +00:00
Michaël Zasso 8c36168b42 test: update flag to disable SharedArrayBuffer
`--no-harmony-sharedarraybuffer` was removed from V8 but it's still
possible to disable the feature with
`--enable-sharedarraybuffer-per-context`.

PR-URL: https://github.com/nodejs/node/pull/49639
Reviewed-By: Jiawen Geng <technicalcute@gmail.com>
Reviewed-By: Rafael Gonzaga <rafael.nunu@hotmail.com>
Reviewed-By: Antoine du Hamel <duhamelantoine1995@gmail.com>
2023-10-10 08:27:59 +02:00
Michaël Zasso fd21429ef5 lib: update usage of always on Atomics API
PR-URL: https://github.com/nodejs/node/pull/49639
Reviewed-By: Jiawen Geng <technicalcute@gmail.com>
Reviewed-By: Rafael Gonzaga <rafael.nunu@hotmail.com>
Reviewed-By: Antoine du Hamel <duhamelantoine1995@gmail.com>
2023-10-10 08:26:58 +02:00
cjihrig 9f9c58212e test_runner, cli: add --test-concurrency flag
This commit adds a new --test-concurrency CLI flag that controls
the parallelism of the test runner CLI.

PR-URL: https://github.com/nodejs/node/pull/49996
Fixes: https://github.com/nodejs/node/issues/49487
Reviewed-By: Matteo Collina <matteo.collina@gmail.com>
Reviewed-By: Moshe Atlow <moshe@atlow.co.il>
Reviewed-By: Benjamin Gruenbaum <benjamingr@gmail.com>
Reviewed-By: Chemi Atlow <chemi@atlow.co.il>
2023-10-08 16:10:53 -04:00
Antoine du Hamel 4038cf0513 vm: freeze dependencySpecifiers array
PR-URL: https://github.com/nodejs/node/pull/49720
Reviewed-By: Moshe Atlow <moshe@atlow.co.il>
Reviewed-By: Marco Ippolito <marcoippolito54@gmail.com>
Reviewed-By: Chengzhong Wu <legendecas@gmail.com>
2023-10-08 18:50:53 +00:00
Aras Abbasi 54bb691c0b util: lazy parse mime parameters
PR-URL: https://github.com/nodejs/node/pull/49889
Reviewed-By: Antoine du Hamel <duhamelantoine1995@gmail.com>
Reviewed-By: Yagiz Nizipli <yagiz@nizipli.com>
2023-10-08 15:43:16 +00:00
Khafra 6b599a3f4e lib: let deps require node prefixed modules
fixup

fixup

PR-URL: https://github.com/nodejs/node/pull/50047
Reviewed-By: Antoine du Hamel <duhamelantoine1995@gmail.com>
Reviewed-By: Filip Skokan <panva.ip@gmail.com>
Reviewed-By: Michaël Zasso <targos@protonmail.com>
Reviewed-By: Benjamin Gruenbaum <benjamingr@gmail.com>
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
Reviewed-By: Stephen Belanger <admin@stephenbelanger.com>
Reviewed-By: Zeyu "Alex" Yang <himself65@outlook.com>
2023-10-06 21:04:05 +00:00
Raz Luvaton 527589b755 test_runner: disallow array in run options
PR-URL: https://github.com/nodejs/node/pull/49935
Reviewed-By: Benjamin Gruenbaum <benjamingr@gmail.com>
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
Reviewed-By: Moshe Atlow <moshe@atlow.co.il>
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
2023-10-06 20:21:15 +00:00
Jithil P Ponnan d4c5fe488e lib: fix compileFunction throws range error for negative numbers
PR-URL: https://github.com/nodejs/node/pull/49855
Fixes: https://github.com/nodejs/node/issues/49848
Reviewed-By: Yagiz Nizipli <yagiz@nizipli.com>
Reviewed-By: Benjamin Gruenbaum <benjamingr@gmail.com>
2023-10-06 14:33:46 +00:00
Rongjian Zhang b866e38192 http: refactor to make servername option normalization testable
Refs: https://coverage.nodejs.org/coverage-36bb31be5f0b85a0/lib/_http_agent.js.html#L316
PR-URL: https://github.com/nodejs/node/pull/38733
Reviewed-By: Antoine du Hamel <duhamelantoine1995@gmail.com>
2023-10-06 15:31:05 +02:00
Deokjin Kim 2ef170254b tls: use validateNumber for options.minDHSize
If user sets invalid type for options.minDHSize in
tls.connect(), it's not internal issue of Node.js. So
validateNumber() is more proper than assert(). Plus,
set min of validateNumber() as 1 to check minDHSize
is positive.

Refs: https://github.com/nodejs/node/pull/49896
PR-URL: https://github.com/nodejs/node/pull/49973
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
Reviewed-By: Yagiz Nizipli <yagiz@nizipli.com>
Reviewed-By: Benjamin Gruenbaum <benjamingr@gmail.com>
Reviewed-By: Tobias Nießen <tniessen@tnie.de>
2023-10-06 13:18:34 +00:00
Shelley Vohr 136a96722a crypto: account for disabled SharedArrayBuffer
PR-URL: https://github.com/nodejs/node/pull/50034
Reviewed-By: Filip Skokan <panva.ip@gmail.com>
Reviewed-By: Matthew Aitken <maitken033380023@gmail.com>
Reviewed-By: Tobias Nießen <tniessen@tnie.de>
Reviewed-By: Richard Lau <rlau@redhat.com>
Reviewed-By: Yagiz Nizipli <yagiz@nizipli.com>
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
2023-10-06 09:17:04 +00:00
Robert Nagy e9bda11761 stream: lazy allocate back pressure buffer
PR-URL: https://github.com/nodejs/node/pull/50013
Reviewed-By: Matteo Collina <matteo.collina@gmail.com>
Reviewed-By: Benjamin Gruenbaum <benjamingr@gmail.com>
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
2023-10-05 20:27:45 +00:00
Geoffrey Booth 19b470f866 esm: bypass CommonJS loader under --default-type
PR-URL: https://github.com/nodejs/node/pull/49986
Reviewed-By: Jacob Smith <jacob@frende.me>
Reviewed-By: Antoine du Hamel <duhamelantoine1995@gmail.com>
2023-10-05 17:57:32 +00:00
Vinicius Lourenço 0e507d30ac perf_hooks: reduce overhead of new user timings
PR-URL: https://github.com/nodejs/node/pull/49914
Reviewed-By: Yagiz Nizipli <yagiz@nizipli.com>
Reviewed-By: Benjamin Gruenbaum <benjamingr@gmail.com>
Reviewed-By: Stephen Belanger <admin@stephenbelanger.com>
2023-10-05 10:47:49 +00:00
Joyee Cheung 1d220b55ac vm: use default HDO when importModuleDynamically is not set
This makes it possile to hit the in-isolate compilation cache when
host-defined options are not necessary.

PR-URL: https://github.com/nodejs/node/pull/49950
Refs: https://github.com/nodejs/node/issues/35375
Reviewed-By: Benjamin Gruenbaum <benjamingr@gmail.com>
Reviewed-By: Chengzhong Wu <legendecas@gmail.com>
Reviewed-By: Stephen Belanger <admin@stephenbelanger.com>
2023-10-05 00:11:04 +00:00
Luigi Pinca b1ada0ad55 tls: handle cases where the raw socket is destroyed
Ensure that the `'close'` event is emitted on a `TLSSocket` when it is
created from an existing raw `net.Socket` and the raw socket is not
closed cleanly (destroyed).

Refs: https://github.com/nodejs/node/commit/048e0bec5147
Refs: https://github.com/nodejs/node/issues/49902#issuecomment-1741203813
Fixes: https://github.com/nodejs/node/issues/49902
PR-URL: https://github.com/nodejs/node/pull/49980
Reviewed-By: Benjamin Gruenbaum <benjamingr@gmail.com>
Reviewed-By: Joyee Cheung <joyeec9h3@gmail.com>
2023-10-04 14:19:42 +00:00
Colin Ihrig e01c1d700d fs: add flush option to writeFile() functions
This commit adds a 'flush' option to the fs.writeFile family of
functions.

Refs: https://github.com/nodejs/node/issues/49886
PR-URL: https://github.com/nodejs/node/pull/50009
Reviewed-By: Matteo Collina <matteo.collina@gmail.com>
Reviewed-By: Michaël Zasso <targos@protonmail.com>
Reviewed-By: LiviaMedeiros <livia@cirno.name>
Reviewed-By: Daijiro Wachi <daijiro.wachi@gmail.com>
2023-10-04 13:10:30 +00:00
Robert Nagy 557044af40 stream: avoid unnecessary drain for sync stream
PR-URL: https://github.com/nodejs/node/pull/50014
Reviewed-By: Matteo Collina <matteo.collina@gmail.com>
Reviewed-By: Benjamin Gruenbaum <benjamingr@gmail.com>
2023-10-04 12:45:40 +00:00
Robert Nagy 95b8f5dcab stream: optimize Writable
PR-URL: https://github.com/nodejs/node/pull/50012
Reviewed-By: Matteo Collina <matteo.collina@gmail.com>
Reviewed-By: Benjamin Gruenbaum <benjamingr@gmail.com>
Reviewed-By: Yagiz Nizipli <yagiz@nizipli.com>
2023-10-04 10:13:06 +00:00
Chemi Atlow fae1af0a75 tls: ciphers allow bang syntax
Fixes: https://github.com/nodejs/node/issues/49699
PR-URL: https://github.com/nodejs/node/pull/49712
Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl>
Reviewed-By: Moshe Atlow <moshe@atlow.co.il>
2023-10-04 07:17:35 +00:00
Vinícius Lourenço 589ac5004c lib: faster internal createBlob
PR-URL: https://github.com/nodejs/node/pull/49730
Reviewed-By: Yagiz Nizipli <yagiz@nizipli.com>
Reviewed-By: Zeyu "Alex" Yang <himself65@outlook.com>
Reviewed-By: Matthew Aitken <maitken033380023@gmail.com>
Reviewed-By: Benjamin Gruenbaum <benjamingr@gmail.com>
Reviewed-By: Rafael Gonzaga <rafael.nunu@hotmail.com>
Reviewed-By: Stephen Belanger <admin@stephenbelanger.com>
2023-10-04 01:05:41 +00:00
Vinicius Lourenço 328bdac7f0 perf_hooks: reducing overhead of performance observer entry list
PR-URL: https://github.com/nodejs/node/pull/50008
Reviewed-By: Stephen Belanger <admin@stephenbelanger.com>
Reviewed-By: Yagiz Nizipli <yagiz@nizipli.com>
2023-10-04 00:38:32 +00:00
Jungku Lee f7a160d5b4 fs: improve error performance for fdatasyncSync
PR-URL: https://github.com/nodejs/node/pull/49898
Refs: https://github.com/nodejs/performance/issues/106
Reviewed-By: Yagiz Nizipli <yagiz@nizipli.com>
Reviewed-By: Joyee Cheung <joyeec9h3@gmail.com>
2023-10-04 00:19:13 +00:00
Colin Ihrig 4b35a9cfda test_runner: add test location for FileTests
This commit adds the previously missing test location for
FileTest tests.

Fixes: https://github.com/nodejs/node/issues/49926
Fixes: https://github.com/nodejs/node/issues/49927
PR-URL: https://github.com/nodejs/node/pull/49999
Reviewed-By: Moshe Atlow <moshe@atlow.co.il>
Reviewed-By: Chemi Atlow <chemi@atlow.co.il>
Reviewed-By: Benjamin Gruenbaum <benjamingr@gmail.com>
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
2023-10-03 18:19:51 +00:00
Geoffrey Booth 9c683204db esm: unflag extensionless javascript and wasm in module scope
PR-URL: https://github.com/nodejs/node/pull/49974
Reviewed-By: Benjamin Gruenbaum <benjamingr@gmail.com>
Reviewed-By: Guy Bedford <guybedford@gmail.com>
Reviewed-By: Michaël Zasso <targos@protonmail.com>
2023-10-03 12:31:21 +08:00
Vinicius Lourenço 952cf0d17a lib: reduce overhead of validateObject
PR-URL: https://github.com/nodejs/node/pull/49928
Reviewed-By: Yagiz Nizipli <yagiz@nizipli.com>
Reviewed-By: Benjamin Gruenbaum <benjamingr@gmail.com>
Reviewed-By: Antoine du Hamel <duhamelantoine1995@gmail.com>
2023-10-02 12:56:39 +00:00
Robert Nagy 5de25deeb9 stream: avoid tick in writable hot path
PR-URL: https://github.com/nodejs/node/pull/49966
Reviewed-By: Benjamin Gruenbaum <benjamingr@gmail.com>
Reviewed-By: Yagiz Nizipli <yagiz@nizipli.com>
Reviewed-By: Matteo Collina <matteo.collina@gmail.com>
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
2023-10-01 20:07:12 +00:00
Yagiz Nizipli 05be31d5de esm: improve getFormatOfExtensionlessFile speed
PR-URL: https://github.com/nodejs/node/pull/49965
Reviewed-By: Geoffrey Booth <webadmin@geoffreybooth.com>
Reviewed-By: Stephen Belanger <admin@stephenbelanger.com>
Reviewed-By: Matteo Collina <matteo.collina@gmail.com>
Reviewed-By: Benjamin Gruenbaum <benjamingr@gmail.com>
2023-10-01 18:32:07 +00:00
Antoine du HamelandGeoffrey Booth aadfea4979 esm: improve JSDoc annotation of internal functions
Co-authored-by: Geoffrey Booth <webadmin@geoffreybooth.com>
PR-URL: https://github.com/nodejs/node/pull/49959
Reviewed-By: Geoffrey Booth <webadmin@geoffreybooth.com>
Reviewed-By: Chemi Atlow <chemi@atlow.co.il>
2023-10-01 09:26:56 +02:00
Deokjin Kim 092fb9f541 tls: use validateFunction for options.checkServerIdentity
If user uses invalid type for `options.checkServerIdentity`
in tls.connect(), it's not internal issue of Node.js. So
validateFunction() is more proper than assert().

Fixes: https://github.com/nodejs/node/issues/49839
PR-URL: https://github.com/nodejs/node/pull/49896
Reviewed-By: Antoine du Hamel <duhamelantoine1995@gmail.com>
Reviewed-By: Tobias Nießen <tniessen@tnie.de>
2023-09-30 22:38:10 +00:00
Vinicius Lourenço e6e320ecc7 perf_hooks: reduce overhead of new resource timings
PR-URL: https://github.com/nodejs/node/pull/49837
Reviewed-By: Stephen Belanger <admin@stephenbelanger.com>
Reviewed-By: Yagiz Nizipli <yagiz@nizipli.com>
2023-09-30 21:44:02 +00:00