diff options
author | cy <cy@FreeBSD.org> | 2013-07-19 05:41:57 +0000 |
---|---|---|
committer | cy <cy@FreeBSD.org> | 2013-07-19 05:41:57 +0000 |
commit | 672af8808c0e7c15f330b401482f9271c2eb3fa6 (patch) | |
tree | 225b5acf68c01bc6a260b386c2b2dbf4fa2839e3 /contrib/ipfilter/perl/Isbgraph | |
parent | 71e82d94e82560b20789833f60056506de34de8b (diff) | |
download | FreeBSD-src-672af8808c0e7c15f330b401482f9271c2eb3fa6.zip FreeBSD-src-672af8808c0e7c15f330b401482f9271c2eb3fa6.tar.gz |
As per the developers handbook (5.3.1 step 1), prepare the vendor trees for
import of new ipfilter vendor sources by flattening them.
To keep the tags consistent with dist, the tags are also flattened.
Approved by: glebius (Mentor)
Diffstat (limited to 'contrib/ipfilter/perl/Isbgraph')
-rw-r--r-- | contrib/ipfilter/perl/Isbgraph | 297 |
1 files changed, 0 insertions, 297 deletions
diff --git a/contrib/ipfilter/perl/Isbgraph b/contrib/ipfilter/perl/Isbgraph deleted file mode 100644 index c68b672..0000000 --- a/contrib/ipfilter/perl/Isbgraph +++ /dev/null @@ -1,297 +0,0 @@ -#!/usr/local/bin/perl - -# isbgraph -# an example in not so hot perl programming.... -# based around GraphMaker from Fabrizio Pivari -# A graph maker perl script - -use GD; -use Getopt::Long; -$hr=0; - -sub main{ - -$opt_conf="./graphmaker.cnf"; - -@elem=("NUMBERYCELLGRIDSIZE","MAXYVALUE","MINYVALUE","XCELLGRIDSIZE","XMAX", - "Data","Graph","Bar","Average","Graphnum","Title","Transparent","Rbgcolour", - "Gbgcolour","Bbgcolour","Rfgcolour","Gfgcolour","Bfgcolour","Rcolour", - "Gcolour","Bcolour","Racolour","Gacolour","Bacolour"); - -%option=( - NUMBERYCELLGRIDSIZE => '8', - MAXYVALUE => '7748', - MINYVALUE => '6500', - XCELLGRIDSIZE => '18', - XMAX => '1000', - Data => './graphmaker.dat', - Graph => './graphmaker.gif', - Bar => '1', - Average => '1', - Graphnum => '1', - Title => 'GraphMaker 2.1', - Transparent => 'yes', - Rbgcolour => '255', - Gbgcolour => '255', - Bbgcolour => '255', - Rfgcolour => '0', - Gfgcolour => '0', - Bfgcolour => '0', - Rcolour => '0', - Gcolour => '0', - Bcolour => '255', - Racolour => '255', - Gacolour => '255', - Bacolour => '0'); - -&GetOptions("conf=s","help") || &printusage ; - - -if ($opt_help) {&printusage}; - -open (CNF, $opt_conf) || die; -while (<CNF>) { -s/\t/ /g; #replace tabs by space -next if /^\s*\#/; #ignore comment lines -next if /^\s*$/; #ignore empty lines -foreach $elem (@elem) - { - if (/\s*$elem\s*:\s*(.*)/) { $option{$elem}=$1; } - } -} -close(CNF); -######################################### -# -# -# -# number datapoints/24 hours is 1440 (minutes) -# -# Split into N graphs where each graph has max of 240 datapoints (4 hours) -# - -$barset=0; -$m=0; -$YGRIDSIZE = 400; -$YCELLGRIDSIZE = $YGRIDSIZE/$option{'NUMBERYCELLGRIDSIZE'}; -$XINIT = 30; -$XEND = 8; -$YINIT =20; -$YEND = 20; -#$XGRIDSIZE = ($option{'XMAX'}*$option{'XCELLGRIDSIZE'}); -#$XGRIDSIZE = (240*$option{'XCELLGRIDSIZE'}); -$XGRIDSIZE = 620; -$XGIF = $XGRIDSIZE + $XINIT + $XEND; -$XGRAPH = $XGRIDSIZE + $XINIT; -$YGIF = $YGRIDSIZE + $YEND + $YINIT; -$YGRAPH = $YGRIDSIZE + $YINIT; -$RANGE=$option{'MAXYVALUE'}-$option{'MINYVALUE'}; -$SCALE=$YGRIDSIZE/$RANGE; - -# NEW IMAGE - $im=new GD::Image($XGIF,$YGIF); - -$white=$im->colorAllocate(255,255,255); -$black=$im->colorAllocate(0,0,0); -$pink=$im->colorAllocate(255,153,153); -$red=$im->colorAllocate(255,0,0); -$blue=$im->colorAllocate(0,0,255); -$green=$im->colorAllocate(0,192,51); -$orange=$im->colorAllocate(255,102,0); -$pink=$im->colorAllocate(255,153,153); -$teal=$im->colorAllocate(51,153,153); -# gif background is $bg - $bg=$white; - $fg=$blue; -# LINE COLOUR HELP BY VAR $colour - $colour=$red; - $acolour=$yellow; - # GRID - if ($option{'Transparent'} eq "yes") {$im->transparent($bg)}; - $im->filledRectangle(0,0,$XGIF,$YGIF,$bg); - -# Dot style -# vertical markers on Y axis grid - $im->setStyle($fg,$bg,$bg,$bg); - for $i (0..$option{'XMAX'}) - { - $xspace= $XINIT+$option{'XCELLGRIDSIZE'}*$i +$i; - # $im->line($xspace,$YINIT,$xspace,$YGRAPH,gdStyled); - $num = $i+1; - - use integer; - { - $posis=$num - ($num/60)*60; - } - if ($posis eq 0) - { - $outhr=0; - $hr=($hr + 1) ; - $outhr=$hr+$option{'Graphnum'}*4; -# shift minutes coords to correct stat hour! - $im->string(gdMediumBoldFont,$xspace-3,$YGRAPH,"$outhr",$fg); - } - - } # end of scan over X values (minutes) - - $YCELLVALUE=($option{'MAXYVALUE'}-$option{'MINYVALUE'})/$option{'NUMBERYCELLGRIDSIZE'}; - for $i (0..$option{'NUMBERYCELLGRIDSIZE'}) - { - $num=$option{'MINYVALUE'}+$YCELLVALUE*($option{'NUMBERYCELLGRIDSIZE'}-$i); - $im->string(gdMediumBoldFont,0,$YINIT+$YCELLGRIDSIZE*$i -6,"$num",$fg); - } - $im->string(gdSmallFont,$XGRIDSIZE/2-80,0,$option{'Title'},$fg); - - $odd_even = $option{'XCELLGRIDSIZE'}%2; - #odd - if ($odd_even eq 1) {$middle = $option{'XCELLGRIDSIZE'}/2 +0.5;} - else {$middle = $option{'XCELLGRIDSIZE'}/2 +0.5;} - -# start reading data -# open (DATA,$option{'Data'}) || die "cant open $option{'Data'}"; -# nextdata becomes Y on reading of second data set.... -$nextdata="N"; -@datafiles=("./in.dat" , "./out.dat" ); - foreach ( @datafiles ) -{ - $m=0; - $count=0; - $i=0; - $fname=$_; - - print "fname $fname\n"; -# change entry for red in colour table to green for packets LEAVING target host - - open (DATA,$_) || die "cant open $_"; - print "$nextdata nextdata\n"; - while (<DATA>) - { - /(.*):(.*)/; - if ($option{'Average'} eq 1) {$m+=$2;$i++;} - if ($count eq 0){$XOLD=$1;$YOLD=$2;$count=1;next} - $X=$1; $Y=$2; -# +($X-1) are the pixel of the line - $xspace= $XINIT+$option{'XCELLGRIDSIZE'}*($X-1) +($X-1); - $xspaceold= $XINIT+$option{'XCELLGRIDSIZE'}*($XOLD-1) +($XOLD-1); - $yspace= $YGRAPH-($Y-$option{'MINYVALUE'})*$SCALE; - $yspaceold= $YGRAPH-($YOLD-$option{'MINYVALUE'})*$SCALE; - $barset=$option{'Bar'}; - if ($barset eq 0) - { - - if($nextdata eq "Y") - { - - #$im->line($XINIT,$YGRAPH,$X,$Y,$orange); - $im->line($xspaceold,$yspaceold,$xspace,$yspace,$green); - } - else - { - $im->line($xspaceold,$yspaceold,$xspace,$yspace,$red); - } - } - else - { - if ($1 eq 2) - { - $im->filledRectangle($xspaceold,$yspaceold, - $xspaceold+$middle,$YGRAPH,$colour); - $im->rectangle($xspaceold,$yspaceold, - $xspaceold+$middle,$YGRAPH,$fg); - } - else - { - $im->filledRectangle($xspaceold-$middle,$yspaceold, - $xspaceold+$middle,$YGRAPH,$colour); - $im->rectangle($xspaceold-$middle,$yspaceold, - $xspaceold+$middle,$YGRAPH,$fg); - } - } - $XOLD=$X; $YOLD=$Y; - - } # end of while DATA loop - - $im->line(500,40,530,40,$red); - $im->line(500,60,530,60,$green); - $im->string(gdSmallFont,535,35,"Packets IN",$fg); - $im->string(gdSmallFont,535,55,"Packets OUT",$fg); - - if ($option{'Bar'} ne 0) - { - if ($X eq $option{'XMAX'}) - { - $im->filledRectangle($xspace-$middle,$yspace, - $xspace,$YGRAPH,$colour); - $im->rectangle($xspace-$middle,$yspace, - $xspace,$YGRAPH,$fg); - } - else - { - $im->filledRectangle($xspace-$middle,$yspace, - $xspace+$middle,$YGRAPH,$colour); - $im->rectangle($xspace-$middle,$yspace, - $xspace+$middle,$YGRAPH,$fg); - } - } - close (DATA); - - - $nextdata="Y"; -# TOP LEFT is 0,0 on GIF (image) -# origin of plot is xinit,yinit - # print "little line\n"; - $im->line($xspace,$yspace,$xspace,$YGRAPH,$blue); - $im->line($xspace,$YGRAPH,$XINIT,$YGRAPH,$blue); -# (0,0) in cartesian space time=0 minutes, rate 0 packets/s - $im->line($XINIT,$YGRAPH,$XINIT,$YGRAPH,$blue); - $im->line($XINIT,$YGRAPH,$XINIT,$YGRAPH,$green); - -} # close foreach loop on data file names - - - - - if ($option{'Average'} eq 1) - { - # Line style - $im->setStyle($acolour,$acolour,$acolour,$acolour,$bg,$bg,$bg,$bg); - $m=$m/$i; - $ym=$YGRAPH-($m-$option{'MINYVALUE'})*$SCALE; - $im->line($XINIT,$ym,$XGRAPH,$ym,gdStyled) - } - $im->line($XINIT,$YINIT,$XINIT,$YGRAPH,$fg); - $im->line($XINIT,$YINIT,$XGRAPH,$YINIT,$fg); - $im->line($XGRAPH,$YINIT,$XGRAPH,$YGRAPH,$fg); - $im->line($XINIT,$YGRAPH,$XGRAPH,$YGRAPH,$fg); - - $im->string(gdSmallFont,$XGIF-335,$YGIF - 12,"Time of Day (hours)",$fg); - open (GRAPH,">$option{'Graph'}") || die "Error: Grafico.gif - $!\n"; - print GRAPH $im -> gif; - close (GRAPH); - - - - -} # end of subroutine main - -main; -exit(0); - -sub printusage { - print <<USAGEDESC; - -usage: - graphmaker [-options ...] - -where options include: - -help print out this message - -conf file the configuration file (default graphmaker.cnf) - -If you want to know more about this tool, you might want -to read the docs. They came together with graphmaker! - -Home: http://www.geocities.com/CapeCanaveral/Lab/3469/graphmaker.html - -USAGEDESC - exit(1); -} - |