【发布时间】:2012-07-31 01:44:45
【问题描述】:
我正在尝试使用 inet 的 tftp,但我做错了什么。 This simple example application,虽然它确实绑定到正确的端口,但从不 将数据返回给客户端。
要重现,请在项目根目录中打开一个终端,然后:
make && ./bin/console
这应该会启动 tftp_hellp 应用程序,并让您进入 erlang 壳。确认 inets 正在运行:
1> application:which_applications().
[{inets,"INETS CXC 138 49","5.9"},
{sasl,"SASL CXC 138 11","2.2.1"},
{stdlib,"ERTS CXC 138 10","1.18.1"},
{kernel,"ERTS CXC 138 10","2.15.1"}]
并且 tftp 守护进程正在运行:
2> inets:services().
[{tftpd,<0.56.0>},{httpc,<0.50.0>}]
太好了。现在,如果您查看etc/inets.config,您会注意到我们正在绑定 tftpd
到 6969。打开另一个终端并:
> tftp localhost 6969
tftp> get hello.txt
Transfer timed out.
打扰了。如果我对 tftpd 的理解是正确的——显然不是——我们会
回复<<"hello world">>。
我做错了什么?
【问题讨论】: