windows编译php扩展Taint

  Taint是PHP开发组成员Laruence所写的一个漏洞检测扩展。在windows上编译的时候可能会提示INIT_PZVAL_COPY未定义。既然没有定义那我们自己给它定义一下就完事了,在php_taint.h定义,代码如下。

1
2
3
4
5
6
7
#ifndef INIT_PZVAL_COPY
#define INIT_PZVAL_COPY(z,v) \
(z)->value = (v)->value; \
Z_TYPE_P(z) = Z_TYPE_P(v); \
Z_SET_REFCOUNT_P(z, 1); \
Z_UNSET_ISREF_P(z);
#endif

生成dll的时候如果报php_taint.dll.res找不到的话,可以随便拷贝一个其他dll的资源文件改名成php_taint.dll.res。

编译环境:vs2008+php5.3.0+taint-1.2.2