[ Index ]

PHP Cross Reference of Unnamed Project

title

Body

[close]

/se3master/var/www/se3/includes/library/HTMLPurifier/URIFilter/ -> HostBlacklist.php (source)

   1  <?php
   2  
   3  // It's not clear to me whether or not Punycode means that hostnames
   4  // do not have canonical forms anymore. As far as I can tell, it's
   5  // not a problem (punycoding should be identity when no Unicode
   6  // points are involved), but I'm not 100% sure
   7  class HTMLPurifier_URIFilter_HostBlacklist extends HTMLPurifier_URIFilter
   8  {
   9      /**
  10       * @type string
  11       */
  12      public $name = 'HostBlacklist';
  13  
  14      /**
  15       * @type array
  16       */
  17      protected $blacklist = array();
  18  
  19      /**
  20       * @param HTMLPurifier_Config $config
  21       * @return bool
  22       */
  23      public function prepare($config)
  24      {
  25          $this->blacklist = $config->get('URI.HostBlacklist');
  26          return true;
  27      }
  28  
  29      /**
  30       * @param HTMLPurifier_URI $uri
  31       * @param HTMLPurifier_Config $config
  32       * @param HTMLPurifier_Context $context
  33       * @return bool
  34       */
  35      public function filter(&$uri, $config, $context)
  36      {
  37          foreach ($this->blacklist as $blacklisted_host_fragment) {
  38              if (strpos($uri->host, $blacklisted_host_fragment) !== false) {
  39                  return false;
  40              }
  41          }
  42          return true;
  43      }
  44  }
  45  
  46  // vim: et sw=4 sts=4


Generated: Tue Mar 17 22:47:18 2015 Cross-referenced by PHPXref 0.7.1