From 9270b33cfd64662a7762621f9ea720c50575c632 Mon Sep 17 00:00:00 2001
From: Nathan Gass
Date: Thu, 11 Aug 2022 11:01:04 +0200
Subject: be conservative and block unknown ip formats

---
 test/it.t | 7 +++++++
 1 file changed, 7 insertions(+)

(limited to 'test')

diff --git a/test/it.t b/test/it.t
index 69b46b6..19f445f 100755
--- a/test/it.t
+++ b/test/it.t
@@ -349,6 +349,13 @@ is(it::is_private_ip('cname.gna.ch'),                   true,  "is_private_ip cn
 is(it::is_private_ip('pub4.gna.ch'),                    true,  "is_private_ip pub4.gna.ch has public ipv4 but private ipv6");
 is(it::is_private_ip('pub6.gna.ch'),                    true,  "is_private_ip pub6.gna.ch has private ipv6 and public ipv6");
 
+# Stuff which is interpreted by curl
+is(it::is_private_ip('127.1'),                          true,  "is_private_ip loopback ipv4 (zeroes omitted)");
+is(it::is_private_ip('127.0.0.01'),                     true,  "is_private_ip loopback ipv4 (octal)");
+is(it::is_private_ip('127.0.0.0x1'),                    true,  "is_private_ip loopback ipv4 (hexadecimal)");
+is(it::is_private_ip('127.01.0x1'),                     true,  "is_private_ip private with omissions, octal and hexadecimal");
+is(it::is_private_ip('128.01.0x1'),                     false, "TODO: is_private_ip non-private with omissions, octal and hexadecimal");
+
 # it::filter_keys tests
 
 $data = ['a' => 1, 'b' => 2, 'c' => 3];
-- 
cgit v1.2.3