From 7d64bb33f8f80521d9bcf0eab0333fdf68c2a9b0 Mon Sep 17 00:00:00 2001 From: Mcat12 Date: Mon, 5 Nov 2018 12:59:52 -0500 Subject: [PATCH] Make sure IPv4 addresses can not contain segments greater than 255 Signed-off-by: Mcat12 --- src/validate.js | 7 +++---- src/validate.test.js | 4 ++++ 2 files changed, 7 insertions(+), 4 deletions(-) diff --git a/src/validate.js b/src/validate.js index c7ad3c3..2bb61ce 100644 --- a/src/validate.js +++ b/src/validate.js @@ -66,10 +66,9 @@ export function isValidIpv4(address) { } // No segment can be longer than 3 characters or be empty - if (segments.some(segment => segment.length > 3 || segment.length === 0)) { - return false; - } // All segments must be numbers (positive) - return segments.every(segment => isPositiveNumber(segment)); + return segments.every( + segment => isPositiveNumber(segment) && parseInt(segment) < 256 + ); } diff --git a/src/validate.test.js b/src/validate.test.js index e94f3a7..17eda8b 100644 --- a/src/validate.test.js +++ b/src/validate.test.js @@ -183,5 +183,9 @@ describe("Testing the validation functions", () => { it("fails 10. 10.1.1", () => { expect(isValidIpv4("10. 10.1.1")).toBe(false); }); + + it("fails 555.666.777.888", () => { + expect(isValidIpv4("555.666.777.888")).toBe(false); + }); }); });