Skip to content

iconv memory leak #17399

Open
Open
@YuanchengJiang

Description

@YuanchengJiang

Description

The following code:

<?php
$options = array(
'line-length' => PHP_INT_MAX,
);
echo iconv_mime_encode('Subject', $text, $options);

Resulted in this output:

==965243==ERROR: LeakSanitizer: detected memory leaks

Direct leak of 112 byte(s) in 1 object(s) allocated from:
    #0 0x6807ed in malloc (/home/phpfuzz/WorkSpace/flowfusion/php-src/sapi/cli/php+0x6807ed)
    #1 0x7f9ba81b276c in __gconv_open iconv/./iconv/gconv_open.c:77:28
    #2 0x7f9ba81b22b7 in iconv_open iconv/./iconv/iconv_open.c:39:13
    #3 0x60200001994f  (<unknown module>)

Direct leak of 112 byte(s) in 1 object(s) allocated from:
    #0 0x6807ed in malloc (/home/phpfuzz/WorkSpace/flowfusion/php-src/sapi/cli/php+0x6807ed)
    #1 0x7f9ba81b276c in __gconv_open iconv/./iconv/gconv_open.c:77:28
    #2 0x7f9ba81b22b7 in iconv_open iconv/./iconv/iconv_open.c:39:13
    #3 0x6020000198cf  (<unknown module>)

Indirect leak of 32640 byte(s) in 1 object(s) allocated from:
    #0 0x6807ed in malloc (/home/phpfuzz/WorkSpace/flowfusion/php-src/sapi/cli/php+0x6807ed)
    #1 0x7f9ba81b27e6 in __gconv_open iconv/./iconv/gconv_open.c:127:36
    #2 0x7f9ba81b22b7 in iconv_open iconv/./iconv/iconv_open.c:39:13
    #3 0x6020000198cf  (<unknown module>)

Indirect leak of 32640 byte(s) in 1 object(s) allocated from:
    #0 0x6807ed in malloc (/home/phpfuzz/WorkSpace/flowfusion/php-src/sapi/cli/php+0x6807ed)
    #1 0x7f9ba81b27e6 in __gconv_open iconv/./iconv/gconv_open.c:127:36
    #2 0x7f9ba81b22b7 in iconv_open iconv/./iconv/iconv_open.c:39:13
    #3 0x60200001994f  (<unknown module>)

Indirect leak of 416 byte(s) in 2 object(s) allocated from:
    #0 0x6807ed in malloc (/home/phpfuzz/WorkSpace/flowfusion/php-src/sapi/cli/php+0x6807ed)
    #1 0x7f9ba81bd9d6 in __gconv_lookup_cache iconv/./iconv/gconv_cache.c:365:36

SUMMARY: AddressSanitizer: 65920 byte(s) leaked in 6 allocation(s).

PHP Version

nightly

Operating System

No response

Metadata

Metadata

Assignees

No one assigned

    Type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions