我用ssltcp编写这个简单的代码:
ssl:start().
{ok, ListenSocket} = ssl:listen(9999, [{certfile, "cert.pem"}, {keyfile, "key.pem"},{reuseaddr, true}]).
{ok, Socket} = ssl:transport_accept(ListenSocket).
ssl:ssl_accept(Socket).
ssl:setopts(Socket, [{active, once}]).
它工作正常但是当我用{active, once}
替换{active, 3}
时,会返回此错误:
{错误,{选项,{socket_options,{活性,3}}}}
如何在安全tcp中使用{active, N}
模式?
答案 0 :(得分:5)
SSL连接未实现{active,N}
模式。我最初编写了{active,N}
模式,当我研究可能为SSL实现它时,我发现在底层TCP套接字的顶部实现Erlang SSL套接字的方式涉及在主动和被动模式之间对这些套接字的更改作为一部分协议实现,因此为SSL实现{active,N}
不仅仅是在该模式下打开底层套接字的问题。