Merge pull request #961 from f0o/issue-951

Rewrite rrdtool_escape
This commit is contained in:
Neil Lathwood
2015-05-11 13:27:18 +01:00
2 changed files with 16 additions and 21 deletions

View File

@@ -73,7 +73,7 @@ foreach ($rrd_list as $rrd)
$rrd_options .= " COMMENT:'\\n'";
$rrd_optionsb .= " AREA:outbits".$i."_neg#" . $colour_out . "::$stack";
$rrd_options .= " HRULE:999999999999999#" . $colour_out . ":'" . substr(str_pad('', 10),0,10) . "Out':";
$rrd_options .= " HRULE:999999999999999#" . $colour_out . ":'" . str_pad('', 11) . "Out':";
$rrd_options .= " GPRINT:outbits".$i.":LAST:%6.2lf%s";
$rrd_options .= " GPRINT:outbits".$i.":AVERAGE:%6.2lf%s";
$rrd_options .= " GPRINT:outbits".$i.":MAX:%6.2lf%s";
@@ -128,21 +128,21 @@ if (!$args['nototal'])
$rrd_options .= " COMMENT:' \\n'";
$rrd_options .= " HRULE:999999999999999#FFFFFF:'" . substr(str_pad('Total', 10),0,10) . "In ':";
$rrd_options .= " HRULE:999999999999999#FFFFFF:'" . str_pad('Total', 11) . "In ':";
$rrd_options .= " GPRINT:inbits:LAST:%6.2lf%s";
$rrd_options .= " GPRINT:inbits:AVERAGE:%6.2lf%s";
$rrd_options .= " GPRINT:inbits:MAX:%6.2lf%s";
$rrd_options .= " GPRINT:totin:%6.2lf%s$total_units";
$rrd_options .= " COMMENT:'\\n'";
$rrd_options .= " HRULE:999999999999990#FFFFFF:'" . substr(str_pad('', 10),0,10) . "Out':";
$rrd_options .= " HRULE:999999999999990#FFFFFF:'" . str_pad('', 11) . "Out':";
$rrd_options .= " GPRINT:outbits:LAST:%6.2lf%s";
$rrd_options .= " GPRINT:outbits:AVERAGE:%6.2lf%s";
$rrd_options .= " GPRINT:outbits:MAX:%6.2lf%s";
$rrd_options .= " GPRINT:totout:%6.2lf%s$total_units";
$rrd_options .= " COMMENT:'\\n'";
$rrd_options .= " HRULE:999999999999990#FFFFFF:'" . substr(str_pad('', 10),0,10) . "Agg':";
$rrd_options .= " HRULE:999999999999990#FFFFFF:'" . str_pad('', 11) . "Agg':";
$rrd_options .= " GPRINT:bits:LAST:%6.2lf%s";
$rrd_options .= " GPRINT:bits:AVERAGE:%6.2lf%s";
$rrd_options .= " GPRINT:bits:MAX:%6.2lf%s";
@@ -157,21 +157,21 @@ if (!$args['nototal'] && $_GET['previous'] == "yes")
$rrd_options .= " VDEF:totX=octetsX,TOTAL";
$rrd_options .= " COMMENT:' \\n'";
$rrd_options .= " HRULE:999999999999999#aaaaaa:'" . substr(str_pad('Total', 10),0,10) . "In ':";
$rrd_options .= " HRULE:999999999999999#aaaaaa:'" . str_pad('Total', 11) . "In ':";
$rrd_options .= " GPRINT:inbitsX:LAST:%6.2lf%s";
$rrd_options .= " GPRINT:inbitsX:AVERAGE:%6.2lf%s";
$rrd_options .= " GPRINT:inbitsX:MAX:%6.2lf%s";
$rrd_options .= " GPRINT:totinX:%6.2lf%s$total_units";
$rrd_options .= " COMMENT:'\\n'";
$rrd_options .= " HRULE:999999999999990#aaaaaa:'" . substr(str_pad('', 10),0,10) . "Out':";
$rrd_options .= " HRULE:999999999999990#aaaaaa:'" . str_pad('', 11) . "Out':";
$rrd_options .= " GPRINT:outbitsX:LAST:%6.2lf%s";
$rrd_options .= " GPRINT:outbitsX:AVERAGE:%6.2lf%s";
$rrd_options .= " GPRINT:outbitsX:MAX:%6.2lf%s";
$rrd_options .= " GPRINT:totoutX:%6.2lf%s$total_units";
$rrd_options .= " COMMENT:'\\n'";
$rrd_options .= " HRULE:999999999999990#aaaaaa:'" . substr(str_pad('', 10),0,10) . "Agg':";
$rrd_options .= " HRULE:999999999999990#aaaaaa:'" . str_pad('', 11) . "Agg':";
$rrd_options .= " GPRINT:bitsX:LAST:%6.2lf%s";
$rrd_options .= " GPRINT:bitsX:AVERAGE:%6.2lf%s";
$rrd_options .= " GPRINT:bitsX:MAX:%6.2lf%s";

View File

@@ -256,21 +256,16 @@ function rrdtool_lastupdate($filename, $options)
function rrdtool_escape($string, $maxlength = NULL)
{
$result = str_replace(':','\:',$string);
$result = str_replace('%','%%',$result);
// FIXME: should maybe also probably escape these? # \ + ? [ ^ ] ( $ ) '
$result = shorten_interface_type($result);
if ($maxlength != NULL)
{
return substr(str_pad($result, $maxlength),0,$maxlength+(strlen($result)-strlen($string)));
}
else
{
return $result;
$result = shorten_interface_type($string);
if ( is_numeric($maxlength) ) {
$extra = substr_count($string,':',0,$maxlength);
$result = substr(str_pad($result, $maxlength),0,$maxlength+$extra);
if( $extra > 0 ) {
$result = substr($result,0,(-1*$extra));
}
}
$result = str_replace(':','\:',$result);
return $result." ";
}
?>