404

[ Avaa Bypassed ]




Upload:

Command:

elspacio@3.133.143.118: ~ $
--TEST--
qp comprehensive test
--SKIPIF--
--FILE--
<?php
error_reporting(E_ALL); // ignore E_STRICT

include("Mail/mimePart.php");

/**
 * Convenience function to make qp encoded output easier to verify
 *
 * @param string $text Input text to be encoded and printed
 * @param int $begin Start character to visibly print from
 * @param int $end Stop character to visibly print to
 * @param bool $special_chars Convert character such as linebreaks
 *     etc. to visible replacements.
 * @param int $break Line length before soft break
 *
 */
function debug_print($text, $begin=False, $end=False, $special_chars=True, $break=76) {
    $begin = $begin ? $begin : strlen($text);
    $end = $end ? $end : strlen($text);

    for ($i=$begin; $i <= $end; $i++) {
        $input = substr($text, 0, $i);
        $output = Mail_mimePart::quotedPrintableEncode($input, $break);

        if ($special_chars) {
            $input_vis = str_replace("\t", '\t', str_replace("\n", '\n', str_replace("\r", '\r', $input)));
        } else {
            $input_vis = $input;
        }
        printf("input: %02d: %s\n", strlen($input), $input_vis);

        $lines = explode("\r\n", $output);
        for($j=0; $j < count($lines); $j++) {
            $line = $lines[$j];
            if ($j + 1 < count($lines) && $special_chars) {
                $line_vis = str_replace("\t", '\t', $line).'\r\n';
            } else {
                $line_vis = $line;
            }
            printf("output:%02d: %s\n", strlen($line), $line_vis);
        }
        print("---\n");
    }
}

// Test linebreaks on regular long lines
$text = '12345678901234567890123456789012345678901234567890123456789012345678901234567890';
debug_print($text, 74);

// Test linebreaks on long line with dot at end.
$text = '123456789.12';
debug_print($text, 10, False, False, 10);

$text = "\tHere's\t\na tab.\n";
debug_print($text, False, False, True, 8);

--EXPECT--
input: 74: 12345678901234567890123456789012345678901234567890123456789012345678901234
output:74: 12345678901234567890123456789012345678901234567890123456789012345678901234
---
input: 75: 123456789012345678901234567890123456789012345678901234567890123456789012345
output:75: 123456789012345678901234567890123456789012345678901234567890123456789012345
---
input: 76: 1234567890123456789012345678901234567890123456789012345678901234567890123456
output:76: 1234567890123456789012345678901234567890123456789012345678901234567890123456
---
input: 77: 12345678901234567890123456789012345678901234567890123456789012345678901234567
output:76: 123456789012345678901234567890123456789012345678901234567890123456789012345=\r\n
output:02: 67
---
input: 78: 123456789012345678901234567890123456789012345678901234567890123456789012345678
output:76: 123456789012345678901234567890123456789012345678901234567890123456789012345=\r\n
output:03: 678
---
input: 79: 1234567890123456789012345678901234567890123456789012345678901234567890123456789
output:76: 123456789012345678901234567890123456789012345678901234567890123456789012345=\r\n
output:04: 6789
---
input: 80: 12345678901234567890123456789012345678901234567890123456789012345678901234567890
output:76: 123456789012345678901234567890123456789012345678901234567890123456789012345=\r\n
output:05: 67890
---
input: 10: 123456789.
output:10: 123456789.
---
input: 11: 123456789.1
output:10: 123456789=
output:04: =2E1
---
input: 12: 123456789.12
output:10: 123456789=
output:05: =2E12
---
input: 16: \tHere's\t\na tab.\n
output:08: \tHere's=\r\n
output:03: =09\r\n
output:06: a tab.\r\n
output:00: 
---

Filemanager

Name Type Size Permission Actions
class-filename.phpt File 242 B 0644
content_transfer_encoding.phpt File 924 B 0644
encoding_case.phpt File 244 B 0644
headers_with_mbstring.phpt File 8.65 KB 0644
headers_without_mbstring.phpt File 8.32 KB 0644
qp_encoding_test.phpt File 3.47 KB 0644
sleep_wakeup_EOL-bug3488-part1.phpt File 545 B 0644
sleep_wakeup_EOL-bug3488-part2.phpt File 586 B 0644
test_Bug_10596_1.phpt File 296 B 0644
test_Bug_10816_1.phpt File 570 B 0644
test_Bug_10999_1.phpt File 491 B 0644
test_Bug_11381.phpt File 557 B 0644
test_Bug_11731.phpt File 684 B 0644
test_Bug_12165.phpt File 381 B 0644
test_Bug_12385_1.phpt File 539 B 0644
test_Bug_12411.phpt File 649 B 0644
test_Bug_12466.phpt File 445 B 0644
test_Bug_13032.phpt File 539 B 0644
test_Bug_13444.phpt File 670 B 0644
test_Bug_13962.phpt File 367 B 0644
test_Bug_14529.phpt File 521 B 0644
test_Bug_14779.phpt File 489 B 0644
test_Bug_14780.phpt File 351 B 0644
test_Bug_15320.phpt File 462 B 0644
test_Bug_16539.phpt File 7.34 KB 0644
test_Bug_17025.phpt File 412 B 0644
test_Bug_17175.phpt File 695 B 0644
test_Bug_18083.phpt File 592 B 0644
test_Bug_18772.phpt File 880 B 0644
test_Bug_19497.phpt File 547 B 0644
test_Bug_20226.phpt File 341 B 0644
test_Bug_20273.phpt File 302 B 0644
test_Bug_20563.phpt File 378 B 0644
test_Bug_20564.phpt File 270 B 0644
test_Bug_21027.phpt File 7.12 KB 0644
test_Bug_21098.phpt File 390 B 0644
test_Bug_21205.phpt File 1.28 KB 0644
test_Bug_21206.phpt File 590 B 0644
test_Bug_21255.phpt File 352 B 0644
test_Bug_3513_1.phpt File 475 B 0644
test_Bug_3513_2.phpt File 567 B 0644
test_Bug_3513_3.phpt File 631 B 0644
test_Bug_7561_1.phpt File 645 B 0644
test_Bug_8386_1.phpt File 551 B 0644
test_Bug_8541_1.phpt File 499 B 0644
test_Bug_9722_1.phpt File 360 B 0644
test_Bug_GH16.phpt File 1.56 KB 0644
test_Bug_GH19.phpt File 997 B 0644
test_Bug_GH26.phpt File 755 B 0644
test_linebreak_dot.phpt File 1.65 KB 0644
test_linebreak_larger_76.phpt File 2.25 KB 0644