Re: [Patch for sybase_connect (segfault) problem on win32]
| From: | Fabien Reygrobellet | Date: | Thu, 01 Feb 2001 22:11:40 +0000 |
| Subject: | Re: [Patch for sybase_connect (segfault) problem on win32] | ||
| Groups: | php.dev | ||
| Request: | Send a blank email to php-dev+get-45562@lists.php.net to get a copy of this message | ||
Hi,
I compiled sybase module for php, but I have now an other problem...
Yes, if I use the new extension (the same as Tor-Egil), Apache exits with an
application Fault !!! Apache with php4module.dll. If you configure Apache to
use php.exe, It's work !
So, I tried to compile the whole php4 and apache on win32 (yes, yes I do it -
hard job), but it's still the same.
Let me now if you have a solution to solve it.
You must use OpenClient 11.1.1 at least. And this problem doesn't exist on
unix platform. A case is still open at sybase support.
Fabien Reygrobellet
I'm a former sybase professional services senior consultant.
Tor-Egil Nygaard <Tor-Egil.Nygaard@exense.com> wrote:
> It seems like the declaration of the "_client_message_handler" (line 197)
> and the
> "_server_message_handler" (line 220) in "ext/sybase_ct/sybase_ct.c" are
> wrong.
>
> According to the sybase sample code, found in
"/sybase..../sample/exutils.h"
> they
> are supposed to be declared not only as CS_RETCOD, but also as CS_PUBLIC.
> This has also been mention by fabien@usa.net in bug report
> http://bugs.php.net/?id=8836
>
> Which would make the statement on line 197 look like
> extern CS_RETCODE CS_PUBLIC _client_message_handler(CS_CONTEXT *context,
> CS_CONNECTION *connection, CS_CLIENTMSG *errmsg)
> instead of
> static CS_RETCODE _client_message_handler(CS_CONTEXT *context,
> CS_CONNECTION *connection, CS_CLIENTMSG *errmsg)
>
> and the statement on line 220 should look like
> extern CS_RETCODE CS_PUBLIC _server_message_handler(CS_CONTEXT *context,
> CS_CONNECTION *connection, CS_SERVERMSG *srvmsg)
> instead of
> static CS_RETCODE _server_message_handler(CS_CONTEXT *context,
> CS_CONNECTION *connection, CS_SERVERMSG *srvmsg)
>
> I have tested this change on Windows NT/2000 and SuSE Linux without
> experiencing any problems.
> Without the change php gives a memory fault on Windows NT/2000 after
> sybase_(p)connect if you are
> using llibct.dll version 11.x.x. If you are using libct.dll version 10.04
it
> works ok, but this is a version sybase
> is about to stop supporting.
>
> Could someone please put this into the cvs so it will be for PHP version
> 4.0.5.
>
> TIA
>
> Regards
>
> Tor-Egil Nygaard
____________________________________________________________________
Get free email and a permanent address at http://www.netaddress.com/?N=1