History log of /PHP-8.0/ext/imap/php_imap.c (Results 1 – 25 of 448)
Revision (<<< Hide revision tags) (Show revision tags >>>) Date Author Comments
# b66168e8 17-Aug-2021 Nikita Popov

Fix maybe-uninitialized warning

Some GCC versions don't like zend_try in loop. Avoid the issue
by pulling it out of the loop, we don't particularly care about
skipping further warnin

Fix maybe-uninitialized warning

Some GCC versions don't like zend_try in loop. Avoid the issue
by pulling it out of the loop, we don't particularly care about
skipping further warnings if a bailout occurs, just that it
does not interrupt shutdown.

Closes GH-7380.

show more ...


# bcc2f070 17-Aug-2021 Nikita Popov

Prevent bailout during imap shutdown error reporting

This is a non-intrusive, minimal fix for bug #81316, which prevents
a bailout during imap RSHUTDOWN and prevents the basic shutdown

Prevent bailout during imap shutdown error reporting

This is a non-intrusive, minimal fix for bug #81316, which prevents
a bailout during imap RSHUTDOWN and prevents the basic shutdown
handler from being skipped.

I wasn't able to make the issue reproduce in a small test.

show more ...


# 310c0561 27-Apr-2021 Nikita Popov

Fix build warning

This causes the build to fail on PHP-8.0 and higher.


# 37962c61 05-Feb-2021 Christoph M. Becker

Fix #80710: imap_mail_compose() header injection

Like `mail()` and `mb_send_mail()`, `imap_mail_compose()` must prevent
header injection. For maximum backward compatibility, we still al

Fix #80710: imap_mail_compose() header injection

Like `mail()` and `mb_send_mail()`, `imap_mail_compose()` must prevent
header injection. For maximum backward compatibility, we still allow
header folding for general headers, and still accept trailing line
breaks for address lists.

show more ...


# 1ee6aad2 26-Feb-2021 George Peter Banyard

Fix Bug #80800 imap_open() fails when the flags parameter includes CL_EXPUNGE

This also affected imap_reopen().
Add a supplementary test that the CL_EXPUNGE flag does have
the intend

Fix Bug #80800 imap_open() fails when the flags parameter includes CL_EXPUNGE

This also affected imap_reopen().
Add a supplementary test that the CL_EXPUNGE flag does have
the intended effect.

Closes GH-6732

show more ...


# 426fe2f2 01-Dec-2020 George Peter Banyard

Standardize behaviour for int message number between functions


# e45cc31c 30-Nov-2020 George Peter Banyard

Add tests for passing a UID instead of a message number


# 0076b473 30-Nov-2020 George Peter Banyard

Fix Bug #80438: imap_msgno() incorrectly warns and return false on valid UIDs in PHP 8.0.0

Checking for a valid Unique ID (UID) cannot use the convenience macro as they might
be larger t

Fix Bug #80438: imap_msgno() incorrectly warns and return false on valid UIDs in PHP 8.0.0

Checking for a valid Unique ID (UID) cannot use the convenience macro as they might
be larger than the message number which has for maximum value the total number of
current messages available in the mailbox.

show more ...


Revision tags: php-8.0.0, php-7.3.25, php-7.4.13, php-8.0.0RC5, php-7.4.13RC1, php-8.0.0RC4, php-7.3.25RC1, php-7.4.12, php-8.0.0RC3, php-7.3.24
# 158d3081 22-Oct-2020 George Peter Banyard

Throw Value/TypeError for invalid $bodies in imap_mail_compose()

Small drive by refactoring to use HashTables

Closes GH-6371


# ba27866a 22-Oct-2020 George Peter Banyard

Fix bug 76618

Apply patch which was attached to the bug in July 2018


# d5e24318 22-Oct-2020 George Peter Banyard

Fix bug 76618

Apply patch which was attached to the bug in July 2018


# 12a09183 22-Oct-2020 George Peter Banyard

Fix bug 76618

Apply patch which was attached to the bug in July 2018


# 8b265fb6 22-Oct-2020 George Peter Banyard

Fix segfaults after conversion from zval to zend_string params


# 315b95b0 20-Oct-2020 Christoph M. Becker

Fix #80242: imap_mail_compose() segfaults for multipart with rfc822

libc-client expects `TYPEMESSAGE` with an explicit subtype of `RFC822`
to have a `nested.msg` (otherwise there will be

Fix #80242: imap_mail_compose() segfaults for multipart with rfc822

libc-client expects `TYPEMESSAGE` with an explicit subtype of `RFC822`
to have a `nested.msg` (otherwise there will be a segfault during
free), but not to have any `contents.text.data` (this will leak
otherwise).

Closes GH-6345.

show more ...


# de58fb34 20-Oct-2020 Christoph M. Becker

Add char* cast to avoid compiler warnings

In libc-client 2007f `data` is declared as `unsigned char *`; there may
be variants which declare it as `void *`, but in any case picky
comp

Add char* cast to avoid compiler warnings

In libc-client 2007f `data` is declared as `unsigned char *`; there may
be variants which declare it as `void *`, but in any case picky
compilers may warn about a pointer type mismatch in the conditional
(and error with `-W-error`), so we're adding a `char *` cast for good
measure.

show more ...


# 7f3bdda2 16-Oct-2020 Christoph M. Becker

Properly fix #80220

The original fix for that bug[1] broke the formerly working composition
of message/rfc822 messages, which results in a segfault when freeing
the message body now.

Properly fix #80220

The original fix for that bug[1] broke the formerly working composition
of message/rfc822 messages, which results in a segfault when freeing
the message body now. While `imap_mail_compose()` does not really
support composition of meaningful message/rfc822 messages (although
libc-client appears to support that), some code may still use this to
compose partial messages, and using string manipulation to create the
final message.

The point is that libc-client expects `TYPEMESSAGE` with an explicit
subtype of `RFC822` to have a `nested.msg` (otherwise there will be a
segfault during free), but not to have any `contents.text.data` (this
will leak otherwise).

[1] <http://git.php.net/?p=php-src.git;a=commit;h=0d022ddf03c5fabaaa22e486d1e4a367ed9170a7>

Closes GH-6343.

show more ...


# 4b9db65f 15-Oct-2020 Christoph M. Becker

Fix broken fix for #80239

No idea why that `git am` failed that badly.


# 5941b30b 15-Oct-2020 Christoph M. Becker

Fix #80239: imap_rfc822_write_address() leaks memory

We have to free the address when we're finished with it.


Revision tags: php-8.0.0RC2
# db8bf0a9 13-Oct-2020 Christoph M. Becker

Fix #64076: imap_sort() does not return FALSE on failure

If unsupported `$search_criteria` are passed to `imap_sort()`, the
function returns an empty array, but there is also an error on

Fix #64076: imap_sort() does not return FALSE on failure

If unsupported `$search_criteria` are passed to `imap_sort()`, the
function returns an empty array, but there is also an error on the
libc-client error stack ("Unknown search criterion: UNSUPPORTED
(errflg=2)"). If, on the other hand, unsupported `$criteria` or
unsupported `$flags` are passed, the function returns `false`. We
solve this inconsistency by returning `false` for unsupported
`$search_criteria` as well.

Closes GH-6332.

show more ...


Revision tags: php-7.4.12RC1, php-7.3.24RC1
# 9c7b6073 12-Oct-2020 Christoph M. Becker

Ignore memory leaks reported for some libc-client functions

At least on Windows, some static variables are lazily initialized
during `mail_open()` and `mail_lsub()`, which are reported a

Ignore memory leaks reported for some libc-client functions

At least on Windows, some static variables are lazily initialized
during `mail_open()` and `mail_lsub()`, which are reported as memory
leaks. We suppress these false positives.

Closes GH-6326.

show more ...


# 8488c34f 12-Oct-2020 Christoph M. Becker

Fix #80226: imap_sort() leaks sortpgm memory

We need to free what we have allocated.

Closes GH-6327.


# 8d4774a2 12-Oct-2020 Christoph M. Becker

Change parameters types from int to bool

These are typical boolean parameters, so we shouldn't advertize them as
integers. For the `$reverse` parameter that even fixes expectations,

Change parameters types from int to bool

These are typical boolean parameters, so we shouldn't advertize them as
integers. For the `$reverse` parameter that even fixes expectations,
because the `reverse` member is a bitfield of 1 bit, so assigning any
even integer would not set it.

Closes GH-6328.

show more ...


# 73e43b6e 12-Oct-2020 Christoph M. Becker

Fix #80216: imap_mail_compose() does not validate types/encodings

We need to check whether the given `type`s and `encoding`s are within
bounds to avoid segfaults and out-of-bound reads.

Fix #80216: imap_mail_compose() does not validate types/encodings

We need to check whether the given `type`s and `encoding`s are within
bounds to avoid segfaults and out-of-bound reads.

Closes GH-6323.

show more ...


# c1962e90 12-Oct-2020 Christoph M. Becker

Fix #80223: imap_mail_compose() leaks envelope on malformed bodies

We have to clean up even on failure.

Closes GH-6322.


# 0d022ddf 12-Oct-2020 Christoph M. Becker

Fix #80220: imap_mail_compose() may leak memory

Unless `topbod` is of `TYPEMULTIPART`, `mail_free_body()` does not free
the `nested.part`; while we could do this ourselves, instead we ju

Fix #80220: imap_mail_compose() may leak memory

Unless `topbod` is of `TYPEMULTIPART`, `mail_free_body()` does not free
the `nested.part`; while we could do this ourselves, instead we just
ignore additional bodies in this case, i.e. we don't attach them in the
first place.

Closes GH-6321.

show more ...


12345678910>>...18