4.2.0 SID set login reversed, SID broken
| From: | Michael Sisolak | Date: | Tue, 23 Apr 2002 17:44:59 +0000 |
| Subject: | 4.2.0 SID set login reversed, SID broken | ||
| Groups: | php.dev | ||
| Request: | Send a blank email to php-dev+get-83223@lists.php.net to get a copy of this message | ||
The logic in 4.2.0 to decide when to set the SID constant (which should
be only when the cookie hasn't been set) is reversed. In
ext\session\session.c on line 933:
/* define SID always, if the client did not send a cookie */
if (send_cookie) {
smart_str var = {0};
smart_str_appends(&var, PS(session_name));
smart_str_appendc(&var, '=');
smart_str_appends(&var, PS(id));
smart_str_0(&var);
REGISTER_STRING_CONSTANT("SID", var.c, 0);
} else {
REGISTER_STRING_CONSTANT("SID", empty_string, 0);
}
The if statement should be if "!send_cookie". The 4.2.0 release sets
the SID when it shouldn't, and doesn't set it when it's needed. :-(
Michael
__________________________________________________
Do You Yahoo!?
Yahoo! Games - play chess, backgammon, pool and more
http://games.yahoo.com/