diff options
author | John W. Linville <linville@tuxdriver.com> | 2011-11-17 13:11:43 -0500 |
---|---|---|
committer | John W. Linville <linville@tuxdriver.com> | 2011-11-17 13:11:43 -0500 |
commit | e11c259f745889b55bc5596ca78271f2f5cf08d2 (patch) | |
tree | 5025f0bf9093e84d0643beb9097249c176dbbea7 /net/socket.c | |
parent | 8d26784cf0d04c1238e906efdd5de76439cb0a1e (diff) | |
parent | b4487c2d0edaf1332d7a9f11b5661044955ef5e2 (diff) |
Merge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/linville/wireless-next into for-davem
Conflicts:
include/net/bluetooth/bluetooth.h
Diffstat (limited to 'net/socket.c')
-rw-r--r-- | net/socket.c | 18 |
1 files changed, 18 insertions, 0 deletions
diff --git a/net/socket.c b/net/socket.c index 2877647f347..425ef427046 100644 --- a/net/socket.c +++ b/net/socket.c | |||
@@ -538,6 +538,8 @@ int sock_tx_timestamp(struct sock *sk, __u8 *tx_flags) | |||
538 | *tx_flags |= SKBTX_HW_TSTAMP; | 538 | *tx_flags |= SKBTX_HW_TSTAMP; |
539 | if (sock_flag(sk, SOCK_TIMESTAMPING_TX_SOFTWARE)) | 539 | if (sock_flag(sk, SOCK_TIMESTAMPING_TX_SOFTWARE)) |
540 | *tx_flags |= SKBTX_SW_TSTAMP; | 540 | *tx_flags |= SKBTX_SW_TSTAMP; |
541 | if (sock_flag(sk, SOCK_WIFI_STATUS)) | ||
542 | *tx_flags |= SKBTX_WIFI_STATUS; | ||
541 | return 0; | 543 | return 0; |
542 | } | 544 | } |
543 | EXPORT_SYMBOL(sock_tx_timestamp); | 545 | EXPORT_SYMBOL(sock_tx_timestamp); |
@@ -674,6 +676,22 @@ void __sock_recv_timestamp(struct msghdr *msg, struct sock *sk, | |||
674 | } | 676 | } |
675 | EXPORT_SYMBOL_GPL(__sock_recv_timestamp); | 677 | EXPORT_SYMBOL_GPL(__sock_recv_timestamp); |
676 | 678 | ||
679 | void __sock_recv_wifi_status(struct msghdr *msg, struct sock *sk, | ||
680 | struct sk_buff *skb) | ||
681 | { | ||
682 | int ack; | ||
683 | |||
684 | if (!sock_flag(sk, SOCK_WIFI_STATUS)) | ||
685 | return; | ||
686 | if (!skb->wifi_acked_valid) | ||
687 | return; | ||
688 | |||
689 | ack = skb->wifi_acked; | ||
690 | |||
691 | put_cmsg(msg, SOL_SOCKET, SCM_WIFI_STATUS, sizeof(ack), &ack); | ||
692 | } | ||
693 | EXPORT_SYMBOL_GPL(__sock_recv_wifi_status); | ||
694 | |||
677 | static inline void sock_recv_drops(struct msghdr *msg, struct sock *sk, | 695 | static inline void sock_recv_drops(struct msghdr *msg, struct sock *sk, |
678 | struct sk_buff *skb) | 696 | struct sk_buff *skb) |
679 | { | 697 | { |