Re: com php-src: Fix handling of session user module custom handlers.: NEWS ext/session/mod_user.c
| From: | Ferenc Kovacs | Date: | Mon, 07 Jul 2014 20:55:07 +0000 |
| Subject: | Re: com php-src: Fix handling of session user module custom handlers.: NEWS ext/session/mod_user.c | ||
| References: | 1 2 3 4 5 6 7 | Groups: | php.cvs |
| Request: | Send a blank email to php-cvs+get-79308@lists.php.net to get a copy of this message | ||
we still have one session related test failure:
https://travis-ci.org/php/php-src/jobs/29353070
ext/session/tests/session_set_save_handler_class_017.phpt
On Mon, Jul 7, 2014 at 10:29 PM, Ferenc Kovacs <tyra3l@gmail.com> wrote:
> thanks, no problem!
>
>
>
> On Mon, Jul 7, 2014 at 10:04 PM, Sara Golemon <pollita@php.net> wrote:
>
>>
>>
>> https://github.com/php/php-src/commit/7c2489751cc48961487edd69b49083d4ca6b4828
>> should do it.
>>
>> Sorry about that!
>>
>> On Mon, Jul 7, 2014 at 12:03 PM, Sara Golemon <pollita@php.net> wrote:
>> > Yeah, I know what the problem is and am working on a diff. An hour or
>> > two, maybe?
>> >
>> > On Mon, Jul 7, 2014 at 10:34 AM, Ferenc Kovacs <tyra3l@gmail.com>
>> wrote:
>> >> Hi Sara,
>> >>
>> >> do you have any eta when you can look at this?
>> >>
>> >>
>> >> On Mon, Jul 7, 2014 at 2:45 AM, Sara Golemon <php@golemon.com> wrote:
>> >>>
>> >>> Yikes! These all passed locally. I'll take a look at Travis when I
>> get
>> >>> home.
>> >>>
>> >>> -Sara
>> >>>
>> >>> > On Jul 6, 2014, at 14:29, Nikita Popov <nikita.ppv@gmail.com>
>> wrote:
>> >>> >
>> >>> >> On Sun, Jul 6, 2014 at 6:40 PM, Sara Golemon <pollita@php.net>
>> wrote:
>> >>> >> Commit: 2d9885c8cbbc2199bac4801eaef7c18c76f28033
>> >>> >> Author: Sara Golemon <pollita@php.net> Thu, 15 May
>> >>> >> 2014
>> >>> >> 14:00:15 -0700
>> >>> >> Parents: 5b925824edf3edc951fc41608d5cbd07a0baab08
>> >>> >> Branches: master
>> >>> >>
>> >>> >> Link:
>> >>> >>
>>
>> http://git.php.net/?p=php-src.git;a=commitdiff;h=2d9885c8cbbc2199bac4801eaef7c18c76f28033
>> >>> >>
>> >>> >> Log:
>> >>> >> Fix handling of session user module custom handlers.
>> >>> >>
>> >>> >> According to the documentation, returning TRUE from
>> >>> >> user based session handlers should indicate success,
>> >>> >> while returning FALSE should indicate failure.
>> >>> >>
>> >>> >> The existing logic relied on casting the return value
>> >>> >> to an integer and returning that from the function.
>> >>> >> However, the internal handlers use SUCCESS/FAILURE
>> >>> >> where SUCCESS == 0, and FAILURE == -1, so the following
>> >>> >> behavior map occurs:
>> >>> >>
>> >>> >> return false; => return 0; => return SUCCESS
>> >>> >> return true; => return 1; => return <undefined>
>> >>> >>
>> >>> >> Since the session API checks against FAILURE,
>> >>> >> both boolean responses wind up appearing like "not
>> >>> >> FAILURE".
>> >>> >>
>> >>> >> This diff reasserts boolean responses to behave as
>> >>> >> documented and introduces some special handling
>> >>> >> for integer responses of 0 and -1 so that code can be
>> >>> >> written for older and newer versions of PHP.
>> >>> >
>> >>> > After this changeset, the following tests fail on Travis
>> >>> > (https://travis-ci.org/php/php-src/builds/29257323):
>> >>> >
>> >>> > Bug #60634 (Segmentation fault when trying to die() in
>> >>> > SessionHandler::write()) - fatal error in write during exec
>> >>> > [ext/session/tests/bug60634_error_1.phpt]
>> >>> > Bug #60634 (Segmentation fault when trying to die() in
>> >>> > SessionHandler::write()) - exception in write during exec
>> >>> > [ext/session/tests/bug60634_error_2.phpt]
>> >>> > Test session_module_name() function : variation
>> >>> > [ext/session/tests/session_module_name_variation3.phpt]
>> >>> > Test session_set_save_handler() function : basic functionality
>> >>> > [ext/session/tests/session_set_save_handler_basic.phpt]
>> >>> > Test session_set_save_handler() : full handler implementation
>> >>> > [ext/session/tests/session_set_save_handler_class_002.phpt]
>> >>> > Test session_set_save_handler() : incomplete implementation
>> >>> > [ext/session/tests/session_set_save_handler_class_005.phpt]
>> >>> > Test session_set_save_handler() : incorrect arguments for existing
>> >>> > handler open
>> [ext/session/tests/session_set_save_handler_class_012.phpt]
>> >>> > Test session_set_save_handler() function: class with create_sid
>> >>> > [ext/session/tests/session_set_save_handler_class_016.phpt]
>> >>> > Test session_set_save_handler() function: class with create_sid
>> >>> > [ext/session/tests/session_set_save_handler_class_017.phpt]
>> >>> > Test session_set_save_handler() function : using closures as
>> callbacks
>> >>> > [ext/session/tests/session_set_save_handler_closures.phpt]
>> >>> > Test session_set_save_handler() function : error functionality
>> >>> > [ext/session/tests/session_set_save_handler_error3.phpt]
>> >>> > Test session_set_save_handler() function : error functionality
>> >>> > [ext/session/tests/session_set_save_handler_error4.phpt]
>> >>> > Test session_set_save_handler() function: interface
>> >>> > [ext/session/tests/session_set_save_handler_iface_001.phpt]
>> >>> > Test session_set_save_handler() function : variation
>> >>> > [ext/session/tests/session_set_save_handler_variation4.phpt]
>> >>> > Test session_set_save_handler() function : test write short circuit
>> >>> >
>> [ext/session/tests/session_set_save_handler_write_short_circuit.phpt]
>> >>> >
>> >>> > Could you please take a look?
>> >>> >
>> >>> > Nikita
>> >>> >
>> >>
>> >>
>> >>
>> >>
>> >> --
>> >> Ferenc Kovács
>> >> @Tyr43l - http://tyrael.hu
>>
>
>
>
> --
> Ferenc Kovács
> @Tyr43l - http://tyrael.hu
>
--
Ferenc Kovács
@Tyr43l - http://tyrael.hu