package XML::IODEF::Simple::Plugin::Ipv4; use Regexp::Common qw/net/; sub prepare { my $class = shift; my $info = shift; my $address = $info->{'address'}; return(0) unless($address && $address =~ /^$RE{'net'}{'IPv4'}/); if($address =~ /^$RE{'net'}{'IPv4'}$/){ $info->{'impact'} = $info->{'impact'}.' infrastructure' unless($info->{'impact'} =~ /infrastructure/); } else { $info->{'impact'} = $info->{'impact'}.' network' unless($info->{'impact'} =~ /network/); } return(1); } sub convert { my $class = shift; my $info = shift; my $iodef = shift; my $cat = ($info->{'address'} =~ /^$RE{'net'}{'IPv4'}$/) ? 'ipv4-addr' : 'ipv4-net'; $iodef->add('IncidentEventDataFlowSystemNodeAddresscategory',$cat); $iodef->add('IncidentEventDataFlowSystemNodeAddress',$info->{'address'}); return($iodef); } 1;