From 6e87546b6abf44cccf52d5b90c363963224946e9 Mon Sep 17 00:00:00 2001 From: Jonathan Ho Date: Sun, 23 Nov 2025 10:59:02 -0800 Subject: [PATCH] =?UTF-8?q?=F0=9F=A4=96=20Merge=20PR=20#74124=20[netmask]:?= =?UTF-8?q?=20Fix=20netmask.broadcast=20is=20undefined=20for=20/31=20/32?= =?UTF-8?q?=20route=20by=20@H01001000?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- types/netmask/index.d.ts | 2 +- types/netmask/netmask-tests.ts | 5 +++++ 2 files changed, 6 insertions(+), 1 deletion(-) diff --git a/types/netmask/index.d.ts b/types/netmask/index.d.ts index 10bc2f5c526781..b4bd9777a4f441 100644 --- a/types/netmask/index.d.ts +++ b/types/netmask/index.d.ts @@ -27,7 +27,7 @@ export class Netmask { /** * The blocks broadcast address (eg: 192.168.1.0/24 => 192.168.1.255) */ - broadcast: string; + broadcast: string | undefined; /** * The number of IP addresses in a block (eg: 256). */ diff --git a/types/netmask/netmask-tests.ts b/types/netmask/netmask-tests.ts index 475766dd8b4aae..e0d2a1a4444726 100644 --- a/types/netmask/netmask-tests.ts +++ b/types/netmask/netmask-tests.ts @@ -10,6 +10,11 @@ if (block.contains("10.0.8.10")) { block = new netmask.Netmask("216.240.32.0", "255.255.255.0"); block = new netmask.Netmask("216.240.32.0", 24); +block = new netmask.Netmask("216.240.32.0"); +if (typeof block.broadcast === undefined) { + console.log("no broadcast address for /32 block"); +} + class CustomizedNetmask extends netmask.Netmask { // Test that we can override `next` to return a CustomizedNetmask (as opposed to netmask.Netmask) object next(count: number = 1): CustomizedNetmask {