From bc81fc0103485a0943b25b7bd10f696297a2db49 Mon Sep 17 00:00:00 2001 From: Stephen Hemminger Date: Thu, 23 Jun 2005 12:21:28 -0700 Subject: [PATCH] --- yaml --- r: 3018 b: refs/heads/master c: 056ede6cface66b400cd3b8e60ed077cc5b85c18 h: refs/heads/master v: v3 --- [refs] | 2 +- trunk/include/linux/tcp_diag.h | 4 ++-- trunk/net/ipv4/tcp_diag.c | 5 +++++ 3 files changed, 8 insertions(+), 3 deletions(-) diff --git a/[refs] b/[refs] index 399b5024e36a..55f2034a3767 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: 7c99c909fa69a183c1b80bd64fb9f0d11459aff3 +refs/heads/master: 056ede6cface66b400cd3b8e60ed077cc5b85c18 diff --git a/trunk/include/linux/tcp_diag.h b/trunk/include/linux/tcp_diag.h index ceee962e1d15..7a5996743946 100644 --- a/trunk/include/linux/tcp_diag.h +++ b/trunk/include/linux/tcp_diag.h @@ -99,9 +99,10 @@ enum TCPDIAG_MEMINFO, TCPDIAG_INFO, TCPDIAG_VEGASINFO, + TCPDIAG_CONG, }; -#define TCPDIAG_MAX TCPDIAG_VEGASINFO +#define TCPDIAG_MAX TCPDIAG_CONG /* TCPDIAG_MEM */ @@ -123,5 +124,4 @@ struct tcpvegas_info { __u32 tcpv_minrtt; }; - #endif /* _TCP_DIAG_H_ */ diff --git a/trunk/net/ipv4/tcp_diag.c b/trunk/net/ipv4/tcp_diag.c index a4e512036d88..f66945cb158f 100644 --- a/trunk/net/ipv4/tcp_diag.c +++ b/trunk/net/ipv4/tcp_diag.c @@ -65,6 +65,11 @@ static int tcpdiag_fill(struct sk_buff *skb, struct sock *sk, if (ext & (1<<(TCPDIAG_INFO-1))) info = TCPDIAG_PUT(skb, TCPDIAG_INFO, sizeof(*info)); + if (ext & (1<<(TCPDIAG_CONG-1))) { + size_t len = strlen(tp->ca_ops->name); + strcpy(TCPDIAG_PUT(skb, TCPDIAG_CONG, len+1), + tp->ca_ops->name); + } } r->tcpdiag_family = sk->sk_family; r->tcpdiag_state = sk->sk_state;