/usr/share/gosa/plugins/personal/mail/sieve/class_My_Scanner.inc is in gosa-plugin-mail 2.7.4-4.3~deb7u2.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 | <?php
class My_Scanner extends Scanner
{
function tokenize(&$script)
{
$pos = 0;
$line = 1;
$script_length = mb_strlen($script);
while ($pos < $script_length)
{
foreach ($this->token_match_ as $class => $regex)
{
if (preg_match('/^'. $regex .'/', mb_substr($script, $pos), $match))
{
$length = mb_strlen($match[0]);
if ($class != 'whitespace')
{
array_push($this->tokens_, array(
'class' => $class,
'text' => chop(mb_substr($script, $pos, $length)),
'line' => $line,
));
}
if ($class == 'unknown')
{
return;
}
$pos += $length;
$line += mb_substr_count($match[0], "\n");
break;
}
}
}
array_push($this->tokens_, array(
'class' => 'script-end',
'text' => 'script-end',
'line' => $line,
));
}
var $commentFn_ = null;
var $tokenPos_ = 0;
var $tokens_ = array();
var $token_match_ = array (
'left-bracket' => '\[',
'right-bracket' => '\]',
'block-start' => '\{',
'block-end' => '\}',
'left-parant' => '\(',
'right-parant' => '\)',
'comma' => ',',
'semicolon' => ';',
'whitespace' => '[ \r\n\t]+',
'tag' => ':[[:alpha:]_][[:alnum:]_]*(?=\b)',
'quoted-string' => '"(?:\\[\\"]|[^\x00"])*"',
'number' => '[[:digit:]]+(?:[KMG])?(?=\b)',
'comment' => '(?:\/\*(?:[^\*]|\*(?=[^\/]))*\*\/|#[^\r\n]*\r?\n)',
# 'multi-line' => 'text:[ \t]*(?:#[^\r\n]*)?\r?\n(\.[^\r\n]+\r?\n|[^\.]*\r?\n)*\.\r?\n',
'multi-line' => 'text:[^;]*',
'identifier' => '[[:alpha:]_][[:alnum:]_]*(?=\b)',
'unknown token' => '[^ \r\n\t]+'
);
}
?>
|