Python socket连接居然不能检测状态

Ruby、C、JAVA socket连接都能检测连接是否Active,这货居然没有。连接断开时,read()返回空字符。send()会报错,本可以做为一个workaround,测试发现需要send() twice才会报错。

后面看到pwntools python sock实现,用select.poll(),register select.POLLERR|select.POLLHUB|select.POLLIN|select.POLLOUT,尝试了一把,断开连接时poll.poll(0) event居然返回 POLLIN事件,recv()还是空字符。这货做点对点连接确实不合适,居然Metasploit frameword很多插件使用Ruby。

你可能感兴趣的:(Python socket连接居然不能检测状态)