use strict; use warnings; use Test::More; use Socket qw( pack_ipv6_mreq unpack_ipv6_mreq ); # Check that pack/unpack_ipv6_mreq either croak with "Not implemented", or # roundtrip as identity my $packed; eval { $packed = pack_ipv6_mreq "ANADDRESSIN16CHR", 123; }; if( !defined $packed ) { plan skip_all => "No pack_ipv6_mreq" if $@ =~ m/ not implemented /; die $@; } plan tests => 2; my @unpacked = unpack_ipv6_mreq $packed; is( $unpacked[0], "ANADDRESSIN16CHR", 'unpack_ipv6_mreq multiaddr' ); is( $unpacked[1], 123, 'unpack_ipv6_mreq ifindex' );