/usr/share/php/Horde/Text/Filter/Environment.php is in php-horde-text-filter 2.3.3-1ubuntu1.
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 | <?php
/**
* Replaces occurences of %VAR% with VAR, if VAR exists in the webserver's
* environment. Ignores all text after a '#' character (shell-style
* comments).
*
* Copyright 2004-2016 Horde LLC (http://www.horde.org/)
*
* See the enclosed file COPYING for license information (LGPL). If you
* did not receive this file, see http://www.horde.org/licenses/lgpl21.
*
* @author Jan Schneider <jan@horde.org>
* @category Horde
* @license http://www.horde.org/licenses/lgpl21 LGPL 2.1
* @package Text_Filter
*/
class Horde_Text_Filter_Environment extends Horde_Text_Filter_Base
{
/**
* Returns a hash with replace patterns.
*
* @return array Patterns hash.
*/
public function getPatterns()
{
$regexp = array(
'/^#.*$\n/m' => '',
'/^([^#]*)#.*$/m' => '$1'
);
$regexp_callback = array(
'/%([A-Za-z_]+)%/' => array($this, 'regexCallback')
);
return array(
'regexp' => $regexp,
'regexp_callback' => $regexp_callback
);
}
/**
* Preg callback.
*
* @param array $matches preg_replace_callback() matches.
*
* @return string The replacement string.
*/
public function regexCallback($matches)
{
return getenv($matches[1]);
}
}
|