From 27107d5b960fbc8b9c8e900ec17350d3826990fa Mon Sep 17 00:00:00 2001 From: Wolfgang Bumiller Date: Mon, 6 Jul 2015 10:03:38 +0200 Subject: [PATCH] add ProcFSTools::read_proc_net_ipv6_route --- src/PVE/ProcFSTools.pm | 25 +++++++++++++++++++++++++ 1 file changed, 25 insertions(+) diff --git a/src/PVE/ProcFSTools.pm b/src/PVE/ProcFSTools.pm index 8bb0d72..2d3123b 100644 --- a/src/PVE/ProcFSTools.pm +++ b/src/PVE/ProcFSTools.pm @@ -284,4 +284,29 @@ sub read_proc_net_route { return $res; } +sub read_proc_net_ipv6_route { + my $filename = "/proc/net/ipv6_route"; + + my $res = []; + + my $fh = IO::File->new ($filename, "r"); + return $res if !$fh; + + my $read_v6addr = sub { s/....(?!$)/$&:/g }; + + # ipv6_route has no header + while (defined(my $line = <$fh>)) { + my ($dest, $prefix, $nexthop, $metric, $iface) = (split(/\s+/, $line))[0,1,4,5,9]; + push @$res, { + dest => &$read_v6addr($dest), + prefix => $prefix, + gateway => &$read_v6addr($nexthop), + metric => $metric, + iface => $iface + }; + } + + return $res; +} + 1; -- 2.39.2