[AOLSERVER] Again, Segfault with Aolserver, PHP, SquirrelMail

2001-11-26 Thread Sean Redmond

Hello,

No one seems to want to touch this, not on the Aolserver list, not on the
PHP list, not on the SquirrelMail list. However, I'm going to try again.

On a server running RedHat Linux 7.2, I've got Aolserver 3.4.2 compiled and
working fine, and PHP 4.0.6 compiled as a module and working fine except
when it segfaults. It occurs consistently when loading SquirrelMail's
(1.2.0-rc2) src/right_main.php, though I think the problem is really in the
called function sqi_mailbox_list from functions/imap_mailbox.php. Exactly
what the server is trying to do when it crashes I haven't yet figured out.

The PHP source distribution warns about trouble with multi-threaded
servers, but the suggested workaround, removing a line of code, refers to a
line that no longer appears to be in the code anyway.

Has anyone had a similar problem? Can anyone help me solve this problem or
debug it more accurately? I currently have Aolserver 3.0, SquirrelMail
1.0.6, and PHP 4.0.6 running with no problems on another server under
RedHat 6.2 (I'm trying to migrate our webmail onto a new machine) so this
is very frustrating.

Thanks.

Sean Redmond
Brooklyn Museum of Art



Re: [AOLSERVER] Again, Segfault with Aolserver, PHP, SquirrelMail

2001-11-26 Thread Sean Redmond

At 03:27 PM 11/26/2001 -0500, you wrote:
>Hi Sean,
>
>have you run AOLserver under GDB yet to find out where it is segfaulting?
>Here's an example of how to do that.

Thanks. It is happening when in the PHP statement

 include "../src/load_prefs.php";

The relative path is expanded to

 
/usr/local/aolserver-3.4.2/servers/webmail/pages/squirrelmail-1.2.0-rc2/src/../src/load_prefs.php

instead of:

 
/usr/local/aolserver-3.4.2/servers/webmail/pages/squirrelmail-1.2.0-rc2/src/load_prefs.php

I.e the ".." is not treated correctly. It seems to be PHP's fault.

here is the relevant output of gdb:

[New Thread 6151 (LWP 26839)]

Program received signal SIGSEGV, Segmentation fault.
[Switching to Thread 6151 (LWP 26839)]
0x400afdd3 in canonicalize (
 name=0x4083b278
"/usr/local/aolserver-3.4.2/servers/webmail/pages/squirrelmail-1.2.0-rc2/src/../src/load_prefs.php",
resolved=0x4053414c "")
 at canonicalize.c:88
88  canonicalize.c: No such file or directory.
 in canonicalize.c
(gdb) bt
#0  0x400afdd3 in canonicalize (
 name=0x4083b278
"/usr/local/aolserver-3.4.2/servers/webmail/pages/squirrelmail-1.2.0-rc2/src/../src/load_prefs.php",
resolved=0x4053414c "")
 at canonicalize.c:88
#1  0x402be679 in virtual_file_ex (state=0x40535184,
 path=0x40665cd4 "../src/load_prefs.php", verify_path=0)
 at tsrm_virtual_cwd.c:299
#2  0x402423cc in expand_filepath (
 filepath=0x40665cd4 "../src/load_prefs.php", real_path=0x0)
 at fopen_wrappers.c:531
#3  0x40241a3f in php_fopen_and_set_opened_path (
 path=0x40665cd4 "../src/load_prefs.php", mode=0x402d2627 "rb",
 opened_path=0x405373b4) at fopen_wrappers.c:237
#4  0x40242059 in php_fopen_with_path (
 filename=0x40665cd4 "../src/load_prefs.php", mode=0x402d2627 "rb",
 path=0x8178b38
".:/usr/local/lib/php:/home/aol30/webmail/pages/webmail/src",
opened_path=0x405373b4) at fopen_wrappers.c:391
#5  0x40242288 in php_fopen_url_wrapper (
 path=0x40665cd4 "../src/load_prefs.php", mode=0x402d2627 "rb",
 options=1, issock=0x405372d0, socketd=0x405372d4, opened_path=0x405373b4)
 at fopen_wrappers.c:470
#6  0x4023fc81 in php_fopen_wrapper_for_zend (
 filename=0x40665cd4 "../src/load_prefs.php", opened_path=0x405373b4)
 at main.c:477
#7  0x40239074 in open_file_for_scanning (file_handle=0x405373ac,
 compiler_globals=0x40630900) at zend_language_scanner_cc.cc:2899
#8  0x402394ee in compile_file (file_handle=0x405373ac, type=2,
 compiler_globals=0x40630900) at zend_language_scanner_cc.cc:2966
#9  0x4023966b in compile_filename (type=2, filename=0x406d92bc,
 compiler_globals=0x40630900, executor_globals=0x4061f440)
 at zend_language_scanner_cc.cc:3022
#10 0x40224016 in execute (op_array=0x406be8d0, executor_globals=0x4061f440)
 at ./zend_execute.c:2028
#11 0x40221da3 in execute (op_array=0x40774028, executor_globals=0x4061f440)
 at ./zend_execute.c:1544
#12 0x40221da3 in execute (op_array=0x407721a0, executor_globals=0x4061f440)
 at ./zend_execute.c:1544
#13 0x40221da3 in execute (op_array=0x4075b340, executor_globals=0x4061f440)
 at ./zend_execute.c:1544
#14 0x40221da3 in execute (op_array=0x40643c3c, executor_globals=0x4061f440)
 at ./zend_execute.c:1544
#15 0x4023016d in zend_execute_scripts (type=8, compiler_globals=0x40630900,
 executor_globals=0x4061f440, file_count=3) at zend.c:752
#16 0x40241167 in php_execute_script (primary_file=0x405436cc,
 compiler_globals=0x40630900, executor_globals=0x4061f440,
 core_globals=0x4061f740) at main.c:1206
#17 0x4023ef32 in php_ns_module_main (ns_context=0x40625bb0,
 sapi_globals=0x40632968) at aolserver.c:434
#18 0x4023f17f in php_ns_request_handler (context=0x8187c08, conn=0x819dc60)
 at aolserver.c:519
#19 0x08077bb7 in Ns_ConnRunRequest (conn=0x819dc60) at op.c:196
#20 0x0807e2c2 in ConnRun (connPtr=0x819dc60) at serv.c:882
#21 0x0807dc10 in NsConnThread (arg=0x40604300) at serv.c:671
#22 0x0811833b in NsThreadMain (arg=0x40604310) at thread.c:228
#23 0x4002ec6f in pthread_start_thread (arg=0x40543be0) at manager.c:284
#24 0x4002ed5f in pthread_start_thread_event (arg=0x40543be0)
 at manager.c:308


Sean Redmond
Brooklyn Museum of Art



Re: [AOLSERVER] Again, Segfault with Aolserver, PHP, SquirrelMail

2001-11-27 Thread Sean Redmond

Scott,

I've been using this Aolserver 3.0 + PHP 4.0.6 for over a year with no
problem -- this is new (mis)behavior. In what I'm trying to setup now, the
PHP version is the same, but I'm trying to use new versions of Aolserver
(3.4.2) and RedHat (7.2, old server has 6.2). I cannot think of any way
that Aolserver is causing this problem for PHP, though.

At 06:59 PM 11/26/2001 -0600, you wrote:
>Hi Sean,
>
>Is this something you can fix on your own? It's possible that the PHP module
>for AOLserver is doing this (i.e. it's building a path without checking for
>relative paths); I'm not sure as I've never used the module or PHP.
>
>/s.

Sean Redmond
Brooklyn Museum of Art



Re: [AOLSERVER] Again, Segfault with Aolserver, PHP, SquirrelMail

2001-11-27 Thread Sean Redmond

At 11:24 AM 11/27/2001 -0500, Scott Goodwin wrote:
>I hate to say it, but drop back to 3.0 and test on RH 7.2. If it breaks,
>then there's something different in the combo between AOLserver and RedHat
>7.2.


Actually, I tried that and ran into the same problem.


Sean Redmond
Brooklyn Museum of Art



Re: [AOLSERVER] Again, Segfault with Aolserver, PHP, SquirrelMail

2001-11-27 Thread Sean Redmond
linux/lxstat64.c:52
#1  0x400afb7c in canonicalize (
 name=0x8280b90
"/usr/local/aolserver-3.4.2/servers/webmail/pages/squirrelmail-1.2.0-rc2/src/../src/load_prefs.php",
resolved=0x403ce10c "")
 at canonicalize.c:150
#2  0x402cd659 in virtual_file_ex (state=0x403cf13c,
 path=0x83d3704 "../src/load_prefs.php", verify_path=0)
 at tsrm_virtual_cwd.c:299
#3  0x402cdc1f in virtual_fopen (path=0x83d3704 "../src/load_prefs.php",
 mode=0x402e1c47 "rb") at tsrm_virtual_cwd.c:497
#4  0x40246224 in php_fopen_and_set_opened_path (
 path=0x83d3704 "../src/load_prefs.php", mode=0x402e1c47 "rb",
 opened_path=0x403d03b4) at fopen_wrappers.c:235
#5  0x40246859 in php_fopen_with_path (
 filename=0x83d3704 "../src/load_prefs.php", mode=0x402e1c47 "rb",
 path=0x402e307b ".:/usr/local/lib/php", opened_path=0x403d03b4)
 at fopen_wrappers.c:391
#6  0x40246a88 in php_fopen_url_wrapper (
 path=0x83d3704 "../src/load_prefs.php", mode=0x402e1c47 "rb", options=1,
 issock=0x403d0280, socketd=0x403d0284, opened_path=0x403d03b4)
 at fopen_wrappers.c:470
#7  0x40244481 in php_fopen_wrapper_for_zend (
 filename=0x83d3704 "../src/load_prefs.php", opened_path=0x403d03b4)
 at main.c:477
#8  0x4023bd7e in open_file_for_scanning ()
from /usr/local/aolserver/bin/libphp4.so
#9  0x4023c124 in compile_file () from /usr/local/aolserver/bin/libphp4.so
#10 0x4023c2c4 in compile_filename () from /usr/local/aolserver/bin/libphp4.so
#11 0x40226c66 in execute (op_array=0x8393538, executor_globals=0x821b490)
 at ./zend_execute.c:2028
#12 0x402249f3 in execute (op_array=0x8223780, executor_globals=0x821b490)
 at ./zend_execute.c:1544
#13 0x402249f3 in execute (op_array=0x827dfa0, executor_globals=0x821b490)
 at ./zend_execute.c:1544
#14 0x402249f3 in execute (op_array=0x8364b08, executor_globals=0x821b490)
 at ./zend_execute.c:1544
#15 0x402249f3 in execute (op_array=0x8254224, executor_globals=0x821b490)
 at ./zend_execute.c:1544
#16 0x40232dbd in zend_execute_scripts (type=8, compiler_globals=0x82301e0,
 executor_globals=0x821b490, file_count=3) at zend.c:752
#17 0x40245967 in php_execute_script (primary_file=0x403dc6cc,
 compiler_globals=0x82301e0, executor_globals=0x821b490,
 core_globals=0x828dac0) at main.c:1206
#18 0x40243732 in php_ns_module_main (ns_context=0x828e950,
 sapi_globals=0x826fc50) at aolserver.c:434
#19 0x4024397f in php_ns_request_handler (context=0x817a638, conn=0x8192118)
 at aolserver.c:519
#20 0x08077bb7 in Ns_ConnRunRequest (conn=0x8192118) at op.c:196
#21 0x0807e2c2 in ConnRun (connPtr=0x8192118) at serv.c:882
#22 0x0807dc10 in NsConnThread (arg=0x8261fb8) at serv.c:671
#23 0x0811833b in NsThreadMain (arg=0x8261fc8) at thread.c:228
#24 0x4002ec6f in pthread_start_thread (arg=0x403dcbe0) at manager.c:284
#25 0x4002ed5f in pthread_start_thread_event (arg=0x403dcbe0) at manager.c:308



Sean Redmond
Brooklyn Museum of Art



Re: [AOLSERVER] Again, Segfault with Aolserver, PHP, SquirrelMail

2001-11-27 Thread Sean Redmond

At 01:22 PM 11/27/2001 -0500, you wrote:
>Could you add the directory containing the PHP source to your
>gdb init, as well, and send that backtrace?  I'm guessing that's
>where canonicalize.c lives, and it'd be interesting to see what
>line 88 is actually doing that causes the segfault ...

I did (tsrm_virtual_cwd.c, for instance, is part of PHP) but but there is
no file called canonicalize.c on my system. Is it built into gcc or
something? It seems to be part of stdlib.

BTW, if I build PHP with --enable-debug Aolserver crashes on startup:

[27/Nov/2001:12:12:42][14963.1024][-main-] Warning: modload: failed to load
'/usr/local/aolserver/bin/libphp4.so':
'/usr/local/aolserver/bin/libphp4.so: undefined symbol: tsrm_error'
[27/Nov/2001:12:12:42][14963.1024][-main-] Fatal: modload: failed to load
module '/usr/local/aolserver/bin/libphp4.so'



Sean Redmond
Brooklyn Museum of Art



Re: [AOLSERVER] Again, Segfault with Aolserver, PHP, SquirrelMail

2001-11-27 Thread Sean Redmond

(gdb) up
#1  0x40291659 in virtual_file_ex (state=0x403ac164,
 path=0x833a694 "../src/load_prefs.php", verify_path=0)
 at tsrm_virtual_cwd.c:299
299 if (realpath(tmp, resolved_path)) {
(gdb) list
294 ptr += state->cwd_length;
295 *ptr++ = DEFAULT_SLASH;
296 memcpy(ptr, path, path_length);
297 ptr += path_length;
298 *ptr = '\0';
299 if (realpath(tmp, resolved_path)) {
300 path = resolved_path;
301 path_length = strlen(path);
302 }
303 free(tmp);


At 02:10 PM 11/27/2001 -0500, Dossy wrote:
>Against your AOLserver 3.0 and RH7 setup, could you re-run gdb
>and produce the crash, then type "up" then "list" as commands
>to gdb once it segfaults?
>
>Send that output.  It may help us.
>
>-- Dossy

Sean Redmond
Brooklyn Museum of Art



Re: [AOLSERVER] Again, Segfault with Aolserver, PHP, SquirrelMail

2001-11-27 Thread Sean Redmond
}
 ptr = tsrm_strtok_r(NULL, TOKENIZER_STRING, &tok);
 }

 if (state->cwd_length == COPY_WHEN_ABSOLUTE) {
 state->cwd = (char *) realloc(state->cwd,
state->cwd_length+1+1);
 state->cwd[state->cwd_length] = DEFAULT_SLASH;
 state->cwd[state->cwd_length+1] = '\0';
 state->cwd_length++;
 }

 if (verify_path && verify_path(state)) {
 CWD_STATE_FREE(state);

 *state = *old_state;

 ret = 1;
 } else {
 CWD_STATE_FREE(old_state);
 ret = 0;
 }

 free(old_state);

 free(free_path);
#if VIRTUAL_CWD_DEBUG
 fprintf (stderr, "virtual_file_ex() = %s\n",state->cwd);
#endif
 return (ret);
}


At 04:18 PM 11/27/2001 -0500, you wrote:
>Okay.  Could you provide the source for the entire virtual_file_ex()
>function from tsrm_virtual_cwd.c file?
>
>-- Dossy
>
>On 2001.11.27, Sean Redmond <[EMAIL PROTECTED]> wrote:
> > (gdb) up
> > #1  0x40291659 in virtual_file_ex (state=0x403ac164,
> > path=0x833a694 "../src/load_prefs.php", verify_path=0)
> > at tsrm_virtual_cwd.c:299
> > 299 if (realpath(tmp, resolved_path)) {
> > (gdb) list
> > 294 ptr += state->cwd_length;
> > 295 *ptr++ = DEFAULT_SLASH;
> > 296 memcpy(ptr, path, path_length);
> > 297 ptr += path_length;
> > 298 *ptr = '\0';
> > 299 if (realpath(tmp, resolved_path)) {
> > 300 path = resolved_path;
> > 301 path_length = strlen(path);
> > 302 }
> > 303 free(tmp);

Sean Redmond
Brooklyn Museum of Art



[AOLSERVER] nssha1 and SSHA

2002-02-28 Thread Sean Redmond

There is a module to do SHA1 encryption (nssha1) from Ars Digita, but I
need a way to do SSHA encryption. Any implementations/ideas?

Thanks,
Sean Redmond


Sean Redmond
Brooklyn Museum of Art



Re: [AOLSERVER] nssha1 and SSHA

2002-02-28 Thread Sean Redmond

At 12:03 PM 2/28/2002 -0500, you wrote:
>I should be more specific -- SHA1 is a hashing algorithm. What exactly are
>you trying to do with it?
>
>/s.

I'm trying to hash passwords to compare them to passwords stored in an LDAP
directory (and retrieved with ns_ldap). By default (at least, I guess, for
OpenLDAP) they seem to be stored in SSHA.

Sean


Sean Redmond
Brooklyn Museum of Art



Re: [AOLSERVER] php + aolserver

2002-08-30 Thread Sean Redmond

Edwin,

'make install' should have put libphp4.so in your aolserver's bin
directory (e.g. /usr/local/aolserver/bin). Did you add the necessary
lines to your aolserver config as described in
{php-src}/sapi/aolserver/README?

Also --with-aolserver-src isn't necessary anymore, so that might have
confused make. Try reconfiguring without it and rebuilding.


Edwin Ho wrote:
> Hi,
>
> I'm trying to get php to work with aolserver . I am using
> "aolserver3.3ad13-oacs1-beta-src.tar.gz" and "php-4.2.2"
>
> I configured php like this:
>
> ./configure --with-aolserver=/usr/local/aolserver \
>--with-aolserver-src=/usr/local/src/oacs/aolserver \
>--with-pgsql=/usr/local/pgsql \
>--without-mysql
>
> the whole thing went well and I did a 'make install' and that went well
> also.
>
> but the 2 apps don't talk to each other.
>
> Don't I have to put the .so file in aolserver's lib folder? where do I
> get that?



--
Sean Redmond
BMA Information Systems



Re: [AOLSERVER] php + aolserver (is it stable?)

2002-08-30 Thread Sean Redmond

Jerry Asher wrote:
> Whenever I think about php + aolserver, I am struck by what I've seen in
> the past.  Comments at the php sites that php + aolserver isn't stable or
> ready for production.
>
> Am I confused about this?
>
> Also, do php programs embedded within aolserver benefit from:
>
> A)  aolserver's db connection pooling?
> B)  aolserver's multithreaded model?
> C)  ???
>
> Due to the stability issues, I haven't seen much value in adding php to
> aolserver, and not just letting apache and aolserver run side by side with
> apache hosting php.
>
> ???
>
> Thanks,
>
> Jerry

It works fine almost all the time. I originally had this setup because
we were using the same server (we only had one!) to try out openacs and
to serve webmail, for which we were using SquirrelMail (written in PHP).
Sometimes threads would hang -- it seemed that if users had inboxes with
too many (i.e. thousands) of messages, php would time out, as its
designed to do, but the aolserver thread wouldn't die, and enough hung
threads would hang (but not crash) aolserver. It was nothing too
terrible, so we just set a cron job to periodically restart the server
to clear all the threads out before they got to that critical level.

When we upgraded to RedHat 6.2 to 7.2, something in the webmail script
that displayed the contents of the inbox consistently crashed aolserver.
I've never been able to track it down, nor have I seen the problem with
anything else. You can look at the bug
(http://bugs.php.net/bug.php?id=14365) if you are interested.
Now we have more servers so we use apache for webmail and aolserver for
everything else (though no PHP except for webmail).

So I wouldn't recommend it, and there certainly isn't any benefit, but
if you have to use it, it will probably work. Unless it's SquirrelMail
on a RedHat 7.* box -- that definitely will not work!


--
Sean Redmond
BMA Information Systems