summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--lib/Net/Ping/t/510_ping_udp.t16
1 files changed, 14 insertions, 2 deletions
diff --git a/lib/Net/Ping/t/510_ping_udp.t b/lib/Net/Ping/t/510_ping_udp.t
index 35f44fdd9c..ce55a7d1fc 100644
--- a/lib/Net/Ping/t/510_ping_udp.t
+++ b/lib/Net/Ping/t/510_ping_udp.t
@@ -1,12 +1,24 @@
# Test to perform udp protocol testing.
+sub isWindowsVista {
+ return unless $^O eq 'MSWin32' or $^O eq "cygwin";
+ return unless eval { require Win32 };
+ return unless defined &Win32::GetOSName;
+ return Win32::GetOSName() eq "WinVista";
+}
+
BEGIN {
unless (eval "require Socket") {
print "1..0 \# Skip: no Socket\n";
exit;
}
- unless (getservbyname('echo', 'tcp')) {
- print "1..0 \# Skip: no echo port\n";
+ unless (getservbyname('echo', 'udp')) {
+ print "1..0 \# Skip: no udp echo port\n";
+ exit;
+ }
+
+ if(isWindowsVista()) {
+ print "1..0 \# Skip: udp ping blocked by Vista's default settings\n";
exit;
}
}