Re: [PATCH net-next v5 2/2] tcp_diag: report TCP MD5 signing keys and addresses
flat view
From: Ivan Delalande <hidden>
Date: 2017-09-01 00:21:20
On Fri, Sep 01, 2017 at 01:26:33AM +0200, Sabrina Dubroca wrote:
2017-08-31, 09:59:39 -0700, Ivan Delalande wrote:quoted
diff --git a/net/ipv4/tcp_diag.c b/net/ipv4/tcp_diag.c index a748c74aa8b7..abbf0edcf6c2 100644 --- a/net/ipv4/tcp_diag.c +++ b/net/ipv4/tcp_diag.c[...]quoted
+static int tcp_diag_get_aux(struct sock *sk, bool net_admin, + struct sk_buff *skb) +{ +#ifdef CONFIG_TCP_MD5SIG + if (net_admin) {In tcp_diag_get_aux_size() you put a check for sk_fullsock. I don't see anything preventing you from reaching this with a !fullsock?
Currently handler->idiag_get_aux is only called from inet_sk_diag_fill which has a `BUG_ON(!sk_fullsock(sk));`, but I could add another explicit check in that function if you think it's more consistent. Actually, I wasn't sure when adding this idiag_get_aux in v2 if it should be called from inet_twsk_diag_fill, inet_req_diag_fill and inet_csk_diag_fill, or just the last one. I chose that simpler approach for now to avoid duplicating these state checks in the idiag_get_aux defined by protocols and because we didn't need for INET_DIAG_MD5SIG, but it shouldn't be too hard to change. Do you think this could be useful for other protocols or attributes? Thank you, -- Ivan Delalande Arista Networks