【发布时间】:2014-02-03 15:00:03
【问题描述】:
我正在尝试根据我为 Winsock 编写(并且有效)的一些代码在 Linux (Ubuntu) 上设置一个小测试应用程序。就目前而言,这只是一个小测试,它创建了一个套接字(并且看似成功连接)只是永远挂在 recv() 上而不是接收数据报。这是一个普通的阻塞套接字。
我是这样创建它的:
进一步测试了一些东西: - 端口已打开。 - 其他应用程序能够成功接收来自多播地址的数据。
很明显我忽略了一些东西。非常感谢帮助:-)
【问题讨论】:
-
您没有检查所有对 setsockopt() 的调用以查看它们是否成功。也许其中一个失败了,这与您的问题有关?
-
好点,我或多或少认为他们的成功是理所当然的 :) 但是,添加的检查表明他们也成功了。
-
我试过了,效果很好..
-
谢谢。重申我的信念,这是一个配置。问题。
-
由于某种原因,它不适用于 Mac 和 Ubuntu,但当我绑定到 INADDR_ANY 而不是绑定到特定接口时,它在这两种情况下都有效。