我想编写TCP客户端协议,但我想在运行ConnectTCP
之前调用 setsockopt ,我该怎么办呢。
reactor.connectTCP(
host=HOST,
port=PORT,
factory=TEST,
timeout=30,
bindAddress=(my_addr, 0))
我只知道我可以在setsockopt
中使用Protcol
self.transport.getHandle().setsockopt()
This post有一些答案,但它适用于服务器端,我想要的是客户端代码
答案 0 :(得分:0)
与链接问题中讨论的adoptStreamPort
类似,有adoptStreamConnection
。
答案 1 :(得分:0)
connector = reactor.connectTCP(
host=IP,
port=PORT,
factory=DemoFactory,
timeout=30,
bindAddress=(LOCAL_IP, 0))
connector.transport.getHandle().setsockopt(socket.IPPROTO_TCP, TCP_MD5SIG, md5sig)
reactor.run()
通过扭曲的源代码,我得到了这个解决方案,它的工作原理!!!!