From d93ab475e46fb6147cb3e7b23dc82d6016bfcc4c Mon Sep 17 00:00:00 2001 From: Efe Karasakal Date: Wed, 31 Dec 2025 11:25:37 +0100 Subject: [PATCH 1/3] fs: validate statfs path --- lib/internal/fs/promises.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lib/internal/fs/promises.js b/lib/internal/fs/promises.js index 5184a28d326f3e..c5fef35005f30b 100644 --- a/lib/internal/fs/promises.js +++ b/lib/internal/fs/promises.js @@ -1047,7 +1047,7 @@ async function stat(path, options = { bigint: false }) { async function statfs(path, options = { bigint: false }) { const result = await PromisePrototypeThen( - binding.statfs(path, options.bigint, kUsePromises), + binding.statfs(getValidatedPath(path), options.bigint, kUsePromises), undefined, handleErrorFromBinding, ); From 9bdcb06228806502822e1ed59dd3988a59be94ba Mon Sep 17 00:00:00 2001 From: Efe Karasakal Date: Wed, 31 Dec 2025 18:23:56 +0100 Subject: [PATCH 2/3] fs: add test for statfs validate path --- .../test-fs-promises-statfs-validate-path.js | 15 +++++++++++++++ 1 file changed, 15 insertions(+) create mode 100644 test/parallel/test-fs-promises-statfs-validate-path.js diff --git a/test/parallel/test-fs-promises-statfs-validate-path.js b/test/parallel/test-fs-promises-statfs-validate-path.js new file mode 100644 index 00000000000000..47871859bcd964 --- /dev/null +++ b/test/parallel/test-fs-promises-statfs-validate-path.js @@ -0,0 +1,15 @@ +'use strict'; + +const common = require('../common'); +const fs = require('fs'); +const assert = require('assert'); + +(async () => { + await assert.rejects( + fs.promises.statfs(), + (err) => { + assert.strictEqual(err.code, 'ERR_INVALID_ARG_TYPE'); + return true; + } + ); +})().then(common.mustCall()); From 4d65e94f0261b2006eb40cc86bec5f71deb82b9a Mon Sep 17 00:00:00 2001 From: Efe Date: Fri, 2 Jan 2026 17:34:19 +0100 Subject: [PATCH 3/3] test: update test Co-authored-by: Livia Medeiros --- test/parallel/test-fs-promises-statfs-validate-path.js | 5 +---- 1 file changed, 1 insertion(+), 4 deletions(-) diff --git a/test/parallel/test-fs-promises-statfs-validate-path.js b/test/parallel/test-fs-promises-statfs-validate-path.js index 47871859bcd964..64928521f504c4 100644 --- a/test/parallel/test-fs-promises-statfs-validate-path.js +++ b/test/parallel/test-fs-promises-statfs-validate-path.js @@ -7,9 +7,6 @@ const assert = require('assert'); (async () => { await assert.rejects( fs.promises.statfs(), - (err) => { - assert.strictEqual(err.code, 'ERR_INVALID_ARG_TYPE'); - return true; - } + { code: 'ERR_INVALID_ARG_TYPE' }, ); })().then(common.mustCall());