提交 5e34fa23 编写于 作者: A Ahmad Fatoum 提交者: David S. Miller

net: Fix minor code bug in timestamping.txt

Passing (void*)val instead of &val would make a pointer out of an integer
and cause sock_setsockopt to -EFAULT.

See tools/testing/selftests/networking/timestamping/timestamping.c
for a working example.

Cc: David S. Miller <davem@davemloft.net>
Cc: netdev@vger.kernel.org
Signed-off-by: NAhmad Fatoum <ahmad@a3f.at>
Signed-off-by: NDavid S. Miller <davem@davemloft.net>
上级 f4e27944
...@@ -44,8 +44,7 @@ timeval of SO_TIMESTAMP (ms). ...@@ -44,8 +44,7 @@ timeval of SO_TIMESTAMP (ms).
Supports multiple types of timestamp requests. As a result, this Supports multiple types of timestamp requests. As a result, this
socket option takes a bitmap of flags, not a boolean. In socket option takes a bitmap of flags, not a boolean. In
err = setsockopt(fd, SOL_SOCKET, SO_TIMESTAMPING, (void *) val, err = setsockopt(fd, SOL_SOCKET, SO_TIMESTAMPING, &val, sizeof(val));
sizeof(val));
val is an integer with any of the following bits set. Setting other val is an integer with any of the following bits set. Setting other
bit returns EINVAL and does not change the current state. bit returns EINVAL and does not change the current state.
...@@ -249,8 +248,7 @@ setsockopt to receive timestamps: ...@@ -249,8 +248,7 @@ setsockopt to receive timestamps:
__u32 val = SOF_TIMESTAMPING_SOFTWARE | __u32 val = SOF_TIMESTAMPING_SOFTWARE |
SOF_TIMESTAMPING_OPT_ID /* or any other flag */; SOF_TIMESTAMPING_OPT_ID /* or any other flag */;
err = setsockopt(fd, SOL_SOCKET, SO_TIMESTAMPING, (void *) val, err = setsockopt(fd, SOL_SOCKET, SO_TIMESTAMPING, &val, sizeof(val));
sizeof(val));
1.4 Bytestream Timestamps 1.4 Bytestream Timestamps
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册