[horde] horde 3.0.5, postgresql session handler fails
Chris Stromsoe
cbs at cts.ucla.edu
Mon Oct 10 12:48:20 PDT 2005
On Sun, 9 Oct 2005, Chris Stromsoe wrote:
> Anyway, the patch is attached to bug #2749. It also includes some
> whitespace cleanup to make lines not wrap on an 80-column terminal, and
> removes some bogus calls to pg_free_result() that were inside of if
> (!$result) {} blocks.
I updated the patch to try to replicate the way that read() and write()
are done in mysql.php.
I have pgsql sessions working fine with turba, kronolith, nag, and gollem,
but I can't get imp to work.
I have imp set as the default application. After authenticating, imp
displays the INBOX. Selecting any message or trying to select an
alternate mailbox results in imp re-displaying the INBOX. If I use files
or mysql to store sessions imp works fine.
It looks like _SESSION['imp'] is being overwritten with an empty array
when using files. The following edit to imp/lib/base.php always triggers
with pgsql for me, but never with none/files.
if ($authentication !== 'none') {
// If we've gotten to this point and have valid login credentials
// but don't actually have an IMP session, then we need to go
// through redirect.php to ensure that everything gets set up
// properly. Single-signon and transparent authentication setups
// are likely to trigger this case.
if (empty($_SESSION['imp'])) {
if (strstr($_SERVER['PHP_SELF'], 'compose.php')) {
require IMP_BASE . '/recompose.php';
} else {
print "<pre>_SESSION['imp'] is empty\n";
print_r($_SESSION['imp']);
print "</pre>";
exit;
require IMP_BASE . '/redirect.php';
}
exit;
}
if (strstr($_SERVER['PHP_SELF'], 'compose.php')) {
if (!IMP::checkAuthentication($authentication, true)) {
require IMP_BASE . '/recompose.php';
exit;
}
} else {
IMP::checkAuthentication($authentication);
}
}
Inserting
print "<pre>"; print_r($_SESSION['imp']); print "</pre>";
before the footer is printed in mailboxes.php always shows data, so the
data is being re-generated at some point in the redirects.
I haven't had time to look into it very deeply, but maybe somebody else
has some ideas.
-Chris
More information about the horde
mailing list