Skip to content

Commit b6832d2

Browse files
committed
test: fix IPv6 checks on IBM i
PR-URL: nodejs/node#46546 Reviewed-By: Luigi Pinca <[email protected]> Reviewed-By: Richard Lau <[email protected]> Reviewed-By: Colin Ihrig <[email protected]> Reviewed-By: James M Snell <[email protected]>
1 parent 0416f50 commit b6832d2

File tree

3 files changed

+16
-1
lines changed

3 files changed

+16
-1
lines changed

graal-nodejs/test/common/index.js

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -949,7 +949,14 @@ const common = {
949949

950950
get hasIPv6() {
951951
const iFaces = require('os').networkInterfaces();
952-
const re = isWindows ? /Loopback Pseudo-Interface/ : /lo/;
952+
let re;
953+
if (isWindows) {
954+
re = /Loopback Pseudo-Interface/;
955+
} else if (this.isIBMi) {
956+
re = /\*LOOPBACK/;
957+
} else {
958+
re = /lo/;
959+
}
953960
return Object.keys(iFaces).some((name) => {
954961
return re.test(name) &&
955962
iFaces[name].some(({ family }) => family === 'IPv6');

graal-nodejs/test/parallel/test-net-autoselectfamily.js

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -282,6 +282,10 @@ if (common.hasIPv6) {
282282
assert.strictEqual(error.message, `connect ECONNREFUSED ::1:${port}`);
283283
} else if (error.code === 'EAFNOSUPPORT') {
284284
assert.strictEqual(error.message, `connect EAFNOSUPPORT ::1:${port} - Local (undefined:undefined)`);
285+
} else if (common.isIBMi) {
286+
// IBMi returns EUNATCH (ERRNO 42) when IPv6 is disabled
287+
// keep this errno assertion until EUNATCH is recognized by libuv
288+
assert.strictEqual(error.errno, -42);
285289
} else {
286290
assert.strictEqual(error.code, 'EADDRNOTAVAIL');
287291
assert.strictEqual(error.message, `connect EADDRNOTAVAIL ::1:${port} - Local (:::0)`);

graal-nodejs/test/parallel/test-net-autoselectfamilydefault.js

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -129,6 +129,10 @@ function createDnsServer(ipv6Addr, ipv4Addr, cb) {
129129
assert.strictEqual(error.message, `connect ECONNREFUSED ::1:${port}`);
130130
} else if (error.code === 'EAFNOSUPPORT') {
131131
assert.strictEqual(error.message, `connect EAFNOSUPPORT ::1:${port} - Local (undefined:undefined)`);
132+
} else if (common.isIBMi) {
133+
// IBMi returns EUNATCH (ERRNO 42) when IPv6 is disabled
134+
// keep this errno assertion until EUNATCH is recognized by libuv
135+
assert.strictEqual(error.errno, -42);
132136
} else {
133137
assert.strictEqual(error.code, 'EADDRNOTAVAIL');
134138
assert.strictEqual(error.message, `connect EADDRNOTAVAIL ::1:${port} - Local (:::0)`);

0 commit comments

Comments
 (0)