From f70ea3f8a2ece812faefd7fc11d98bee23c18ba6 Mon Sep 17 00:00:00 2001 From: "Alvar C.H. Freude" Date: Sun, 3 Apr 2016 17:31:01 +0200 Subject: [PATCH 1/4] Skip 127.0.0.1 test in FreeBSD Jail --- t/basic.t | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/t/basic.t b/t/basic.t index e5bed0d..4c515b5 100644 --- a/t/basic.t +++ b/t/basic.t @@ -33,8 +33,11 @@ foreach (@if) { } print @loopback ? 'ok ':'not ok ',4,"\n"; + +my $SKIPPED = ( $^O eq "freebsd" and qx(sysctl security.jail.jailed) =~ m{1} ) ? " # skip FreeBSD jail has no 127.0.0.1" : ""; + my @local = grep {$s->if_addr($_) eq '127.0.0.1'} @loopback; -print @local ? 'ok ': 'not ok ',5,"\n"; +print @local ? 'ok ': 'not ok ',5,"$SKIPPED\n"; From cd19cf0b44b3780420682ebb379202d3b0492784 Mon Sep 17 00:00:00 2001 From: "Alvar C.H. Freude" Date: Sun, 3 Apr 2016 17:33:54 +0200 Subject: [PATCH 2/4] Skip 127.0.0.1 test in FreeBSD Jail the sysctl check is a little bit hacky, but should work ;) --- t/simple.t | 1 + 1 file changed, 1 insertion(+) diff --git a/t/simple.t b/t/simple.t index e8e1c3e..5ac38a3 100644 --- a/t/simple.t +++ b/t/simple.t @@ -28,6 +28,7 @@ ok($loopback->netmask eq '255.0.0.0','loopback netmask'); SKIP: { my $index = $loopback->index; skip ('index not implemented on this platform',3) unless defined $index; + skip ('FreeBSD jail has no 127.0.0.1') if ( $^O eq "freebsd" and qx(sysctl security.jail.jailed) =~ m{1} ); ok(defined $index,'loopback index'); From 7f4ad41b10a03c341da5af479b42e7714b29864c Mon Sep 17 00:00:00 2001 From: "Alvar C.H. Freude" Date: Sun, 3 Apr 2016 17:40:47 +0200 Subject: [PATCH 3/4] Skipping more loopback checks if no loopback index this tests fail in FreeBSD jails --- t/simple.t | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/t/simple.t b/t/simple.t index 5ac38a3..adb50f6 100644 --- a/t/simple.t +++ b/t/simple.t @@ -22,13 +22,14 @@ foreach (@if) { } ok($loopback,"loopback device"); -ok($loopback->address eq '127.0.0.1','loopback address'); -ok($loopback->netmask eq '255.0.0.0','loopback netmask'); + +# skip ('FreeBSD jail has no 127.0.0.1') if ( $^O eq "freebsd" and qx(sysctl security.jail.jailed) =~ m{1} ); SKIP: { my $index = $loopback->index; skip ('index not implemented on this platform',3) unless defined $index; - skip ('FreeBSD jail has no 127.0.0.1') if ( $^O eq "freebsd" and qx(sysctl security.jail.jailed) =~ m{1} ); + ok($loopback->address eq '127.0.0.1','loopback address'); + ok($loopback->netmask eq '255.0.0.0','loopback netmask'); ok(defined $index,'loopback index'); From ac0fbabba27610109209a21cfc037b9b7045e422 Mon Sep 17 00:00:00 2001 From: "Alvar C.H. Freude" Date: Sun, 3 Apr 2016 17:41:41 +0200 Subject: [PATCH 4/4] Update simple.t --- t/simple.t | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/t/simple.t b/t/simple.t index adb50f6..f682342 100644 --- a/t/simple.t +++ b/t/simple.t @@ -27,7 +27,7 @@ ok($loopback,"loopback device"); SKIP: { my $index = $loopback->index; - skip ('index not implemented on this platform',3) unless defined $index; + skip ('index not implemented on this platform',5) unless defined $index; ok($loopback->address eq '127.0.0.1','loopback address'); ok($loopback->netmask eq '255.0.0.0','loopback netmask');