这里要特别注意的是,spy_io_hook_pause的工作完全依赖于spy_io_hook_install和spy_io_hook_remove。如果在安装hook时,禁止了协议,hook仍然会起作用,但是此时hook dispatcher将对所有捕获到的api调用不进行任何干扰。如果你不希望spy_io_hook_install修改service table后,协议就自动开始的话,你可以在安装hook之前禁止hook协议。注意,当协议被再次恢复时,协议将被自动重置。
ioctl函数 spy_io_hook_filter
ioctl函数spy_io_hook_filter维护一个全局标志,如列表5-15所示。这里,全局标志gfspyhookfilter被设置为一个由客户提供的值,其先前的值将被返回给客户。该标志的默认值为false;这意味着,默认情况下,过滤器是被禁止的。