I'm new to the list and run Apache-1.3.22_1. I was looking for a modssl version that could be used with it in order to set up HTTPS for a virtual host. But, I noticed the links have all been broken or pulled for modssl release 2.8.5. Since I haven't seen the archives yet, I assume there is a good reason and I would need to update Apache and use the latest modssl.
Can some one confirm that I should give up looking for a modssl for my version of Apache..?? Going to take several hours to upgrade....
Many thanks....!!
At 01:17 PM 4.6.2002 +0530, Hassan S wrote:
>>>>
Hi Ralf,
I built the Apache and mod_ssl in Debug configuration to trace out this consistent problem. When I got this unreferenced memory, I clicked cancel to debug using VC++. It says "invalid memory Access" and points to the following source code.
API_EXPORT(void *) ap_ctx_get(ap_ctx *ctx, char *key)
{
int i;
==> for (i = 0; ctx->cr_entry[i] != NULL; i++)
if (strcmp(ctx->cr_entry[i]->ce_key, key) == 0)
return ctx->cr_entry[i]->ce_val;
return NULL;
}
So, ctx can be either a NULL pointer or uninitialised or corrupted memory reference for this case.
Here is the full debug functional trace:
ap_ctx_get(ap_ctx_rec *, char *)
ssl_io_suck_read(ssl_st *, char *, int)
SSL_recvwithtimeout(buff_struct *, char *, int)
ssl_io_hook_recvwithtimeout(buff_struct *, char *, int)
ap_hook_call_func(char *, ap_hook_entry *, ap_hook_func *)
ap_hook_call(char *)
buff_read(buff_struct *, void *, int)
saferead_guts(buff_struct *, void *, int)
read_with_errors(buff_struct *, void *, int)
ap_bgets(char * int , buff_struct *)
getline(char *, int, buff_struct *, int)
read_request_line(request_rec *)
ap_read_request(conn_rec *)
child_sub_main(int)
child_main(int)
I understand that memory has been allocated for the request object and for the context (r->ctx) in ap_read_request as follows. And, I am pretty sure that we built under EAPI only.
r = ap_pcalloc(p, sizeof(request_rec));
r->pool = p;
.....
.....
#ifdef EAPI
r->ctx = ap_ctx_new(r->pool);
#endif /* EAPI */
Then, How come this ctx value can be NULL or invalid? Is this memory pool will be cleaned-up intermittently?
By handling this exception with __try and __except block in ssl_io_suck_read, I can avoid these invalid memory reference errors. But, I want to make sure this doesn't break anything else.
I feel there is some buggy code added in mod_ssl2.8.8 since I am not facing this problem with Apache1.3.20 and mod_ssl2.8.4 on the same Win2k server in SSL mode. And, please note that Apache1.3.24 is working perfectly in http mode for me. Please let me know, if you need any other information.
Any help is greatly appreciated.
Thanks
Hassan
Hassan S wrote:
Hi,
I have a situation where I have to redirect from a HTTP to a HTTPS
connection
via a servlet. That is I send a HTTP GET request to a servlet which in
reply sends
a redirect to a web page with the URL protocol changed to HTTPS.
Till Apache 1.3.20+ModSSL 2.8.4 this was working fine. But after I
upgraded
to Apache 1.3.24+ModSSL 2.8.8 (to get the security fixes :) ), it is
crashing
with a error message like
"The instruction at "0x6ff90e08" referenced memory at "0x72676f76". The
memory
could not be read."
If I click Cancel to debug using VC++ it shows an invalid memory access
in ApacheCore.dll.
My platform config is
Windows 2000
MS VC++ 6.0 (SP5)
OpenSSL 0.9.6c (built using MASM optimizations).
Please let me know where the problem is, or maybe where I should look to
try and
debug this. This has become a critical issue for me!
Regards,
Hassan.
______________________________________________________________________
Apache Interface to OpenSSL (mod_ssl) www.modssl.org
User Support Mailing List [EMAIL PROTECTED]
Automated List Manager [EMAIL PROTECTED]
<<<<
.... our website: http://www.sage-one.net/
Best regards,
Jack L. Stone
Server Admin ______________________________________________________________________ Apache Interface to OpenSSL (mod_ssl) www.modssl.org User Support Mailing List [EMAIL PROTECTED] Automated List Manager [EMAIL PROTECTED]
