我正在尝试使用套接字选项读取我的TCP 连接的MTU
根据安装在我的Debian Etch上(我知道,它已经很老了,但现在改变它不是一个选项):IP_MTU
man 7 ip
SYNOPSIS
#include <sys/socket.h>
#include <netinet/in.h>
#include <netinet/ip.h> /* superset of previous */
[CUT]
IP_MTU Retrieve the current known path MTU of the current socket.
Only valid when the socket has been connected. Returns an integer.
Only valid as a getsockopt(2).
问题是上述套接字选项不存在于手册页命名的任何包含文件中。(因此我的代码没有编译;))
我发现它定义在<linux/in.h>
(grep
是你的朋友)
如果我尝试添加<linux/in.h>
到我的源代码中,我会得到各种多重定义/重新声明编译错误。有谁知道为什么标题中缺少上述参数以及如何解决该问题?
非常感谢
塞尔吉奥