/usr/share/php/Horde/Imap/Client/Data/Format/Mailbox/Utf8.php is in php-horde-imap-client 2.25.2-1.
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 | <?php
/**
* Copyright 2014 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.
*
* @category Horde
* @copyright 2014 Horde LLC
* @license http://www.horde.org/licenses/lgpl21 LGPL 2.1
* @package Imap_Client
*/
/**
* Object representation of an IMAP mailbox string allowed when UTF8=ACCEPT
* is supported/enabled on the server (RFC 6855 [3]).
*
* @author Michael Slusarz <slusarz@horde.org>
* @category Horde
* @copyright 2014 Horde LLC
* @license http://www.horde.org/licenses/lgpl21 LGPL 2.1
* @package Imap_Client
*/
class Horde_Imap_Client_Data_Format_Mailbox_Utf8
extends Horde_Imap_Client_Data_Format_Mailbox
implements Horde_Imap_Client_Data_Format_String_Support_Nonascii
{
/**
*/
protected $_encoding = 'utf8';
/**
*/
public function __construct($data)
{
parent::__construct($data);
/* RFC 3501 allows any US-ASCII character, except null (\0), in
* mailbox data.
* RFC 6855 [3] institutes additional limitations on valid mailbox
* characters, to comply with RFC 5198 [2] (Net-Unicode Definition):
* "MUST NOT contain control characters (U+0000-U+001F and
* U+0080-U+009F), a delete character (U+007F), a line separator
* (U+2028), or a paragraph separator (U+2029)." */
if ($this->quoted() &&
preg_match('/[\x00-\x1f\x7f\x80-\x9f\x{2028}\x{2029}]/u', strval($this))) {
throw new Horde_Imap_Client_Data_Format_Exception(
'Invalid character found in mailbox data.'
);
}
if ($this->literal()) {
$this->forceQuoted();
}
}
}
|