From 21c0775c51da1ca3d4ef6506fca82bce5b334c79 Mon Sep 17 00:00:00 2001 From: Daniil Baturin Date: Tue, 13 Nov 2018 20:14:24 +0100 Subject: T816: disallow duplicate double semicolons. --- src/ipaddrcheck.c | 8 ++++++++ 1 file changed, 8 insertions(+) (limited to 'src/ipaddrcheck.c') diff --git a/src/ipaddrcheck.c b/src/ipaddrcheck.c index 5e3243e..1bf889e 100644 --- a/src/ipaddrcheck.c +++ b/src/ipaddrcheck.c @@ -256,6 +256,14 @@ int main(int argc, char* argv[]) } return(EXIT_FAILURE); } + + /* FIXUP: libcidr allows more than one double semicolon, but the RFC does not! */ + if( duplicate_double_semicolons(address_str) ) { + if( verbose ) { + printf("More than one \"::\" is not allowed in IPv6 addresses\n"); + } + return(EXIT_FAILURE); + } /* no else needed, the rest is one big else */ while( (action_count >= 0) && (result == RESULT_SUCCESS) ) -- cgit v1.2.3