laruence / taint

Taint is a PHP extension, used for detecting XSS codes
Other
611 stars 128 forks source link

User registered opcode handler should call ones already set by other extensions #72

Closed derickr closed 4 years ago

derickr commented 4 years ago

The taint extension marks a conflict with Xdebug.

This extension registers an opcode handler. This handler currently returns the ZEND_USER_OPCODE_DISPATCH value which means that the Zend engine users its internal implementation to further handle that opcode. If however another extension (such as Xdebug) has also overridden the opcode, its handler will not be called.

Make sure to remember already set handlers, and then call these if they're not NULL, and otherwise continue returning ZEND_USER_OPCODE_DISPATCH.

https://github.com/laruence/taint/blob/4a6c4cb2613e27f5604d2021802c144a954caff8/taint.c#L1225

See also https://bugs.xdebug.org/1759, which I've recently fixed.

staabm commented 4 years ago

@laruence could we get a new release so we can use taint in tandem with xdebug without issues?

laruence commented 4 years ago

done, https://pecl.php.net/package/taint 2.1.0