reassign 559273 php5 thanks On Thu, Dec 03, 2009 at 10:05:36AM +0100, Daniel Ly wrote: > For details see > http://serverfault.com/questions/90100/64bit-unixodbc-and-freetds-a-bug-in-libtdsodbc-so
> I also reported the bug to PHP and wrote an e-mail to three > maintainers at FreeTDS because I don't know who is responsible and is > able to fix the bug. Quoting from that page: $ USE_ZEND_ALLOC=0 valgrind --leak-check=full ./current.php [...] ==3831== Invalid write of size 8 ==3831== at 0xD64420C: (within /usr/lib/odbc/libtdsodbc.so) ==3831== by 0xB55E859: SQLColAttributes (in /usr/lib/libodbc.so.1.0.0) ==3831== by 0xB34AA37: odbc_bindcols (in /usr/lib/php5/20060613/odbc.so) ==3831== by 0xB350B86: zif_odbc_exec (in /usr/lib/php5/20060613/odbc.so) ==3831== by 0xBDEDC9C: (within /usr/lib/php5/20060613/suhosin.so) ==3831== by 0x6A5798: (within /usr/bin/php5) ==3831== by 0x691003: execute (in /usr/bin/php5) ==3831== by 0xBDEE125: (within /usr/lib/php5/20060613/suhosin.so) ==3831== by 0x66CDF7: zend_execute_scripts (in /usr/bin/php5) ==3831== by 0x627667: php_execute_script (in /usr/bin/php5) ==3831== by 0x6EBFF6: main (in /usr/bin/php5) ==3831== Address 0xd2b564c is 44 bytes inside a block of size 48 alloc'd ==3831== at 0x4C2260E: malloc (vg_replace_malloc.c:207) ==3831== by 0xB34A911: odbc_bindcols (in /usr/lib/php5/20060613/odbc.so) ==3831== by 0xB350B86: zif_odbc_exec (in /usr/lib/php5/20060613/odbc.so) ==3831== by 0xBDEDC9C: (within /usr/lib/php5/20060613/suhosin.so) ==3831== by 0x6A5798: (within /usr/bin/php5) ==3831== by 0x691003: execute (in /usr/bin/php5) ==3831== by 0xBDEE125: (within /usr/lib/php5/20060613/suhosin.so) ==3831== by 0x66CDF7: zend_execute_scripts (in /usr/bin/php5) ==3831== by 0x627667: php_execute_script (in /usr/bin/php5) ==3831== by 0x6EBFF6: main (in /usr/bin/php5) Looking at a 64-bit build log for the php5 version in lenny[1], we see: /build/buildd/php5-5.2.6.dfsg.1/ext/odbc/php_odbc.c: In function 'odbc_bindcols': /build/buildd/php5-5.2.6.dfsg.1/ext/odbc/php_odbc.c:656: warning: passing argument 7 of 'SQLColAttributes' from incompatible pointer type /build/buildd/php5-5.2.6.dfsg.1/ext/odbc/php_odbc.c:679: warning: passing argument 7 of 'SQLColAttributes' from incompatible pointer type /build/buildd/php5-5.2.6.dfsg.1/ext/odbc/php_odbc.c:684: warning: passing argument 6 of 'SQLBindCol' from incompatible pointer type Definitely a php5 bug, not a bug in freetds. And fixed in unstable - odbc_result_value.coltype is now correctlydeclared 'SQLLEN', not 'SDWORD'. -- Steve Langasek Give me a lever long enough and a Free OS Debian Developer to set it on, and I can move the world. Ubuntu Developer http://www.debian.org/ slanga...@ubuntu.com vor...@debian.org [1] https://buildd.debian.org/fetch.cgi?pkg=php5;ver=5.2.6.dfsg.1-2;arch=alpha;stamp=1231884012
signature.asc
Description: Digital signature