aboutsummaryrefslogtreecommitdiffstats
path: root/package/libipfix/extra/append-wprobe-ie.pl
diff options
context:
space:
mode:
Diffstat (limited to 'package/libipfix/extra/append-wprobe-ie.pl')
-rw-r--r--package/libipfix/extra/append-wprobe-ie.pl38
1 files changed, 38 insertions, 0 deletions
diff --git a/package/libipfix/extra/append-wprobe-ie.pl b/package/libipfix/extra/append-wprobe-ie.pl
new file mode 100644
index 000000000..8bb658bbb
--- /dev/null
+++ b/package/libipfix/extra/append-wprobe-ie.pl
@@ -0,0 +1,38 @@
+use strict;
+
+my @fields = (
+ [ "_n", "UINT", " - Number of samples", 4 ],
+ [ "_s", "UINT", " - Sum of samples", 8 ],
+ [ "_ss", "UINT", " - Sum of squared samples", 8 ],
+);
+
+my $file = $ARGV[0] or die "Syntax: $0 <file> <start>\n";
+-f $file or die "File not found\n";
+my $start = $ARGV[1];
+$start =~ /^\d+$/ or die "Invalid start number";
+open FILE, "<$file" or die "Can't open file";
+while (<FILE>) {
+ /^(%?)(\w+),\s*(\w+),\s*(.+)$/ and do {
+ my $counter = $1;
+ my $rfield = $2;
+ my $nfield = $3;
+ my $descr = $4;
+ my @f;
+ if ($counter) {
+ @f = [ "", "UINT", "", 4];
+ } else {
+ @f = @fields;
+ }
+ foreach my $f (@f) {
+ my $nr = $start++;
+ my $n = $f->[0];
+ my $N = uc $n;
+ my $ftype = $f->[1];
+ my $fdesc = $f->[2];
+ my $size = $f->[3];
+ print "$nr, IPFIX_FT_WPROBE_$rfield$N, $size, IPFIX_CODING_$ftype, \"$nfield$n\", \"$descr$fdesc\"\n";
+ }
+ };
+}
+close FILE;
+