On Fri, 13 Nov 2020 16:08:39 +0100 Karsten Graul wrote:
> On 11/11/2020 23:34, Jakub Kicinski wrote:
> > On Mon,  9 Nov 2020 16:18:08 +0100 Karsten Graul wrote:  
> >> @@ -295,6 +377,14 @@ static int smc_diag_dump(struct sk_buff *skb, struct 
> >> netlink_callback *cb)
> >>  
> >>  static int smc_diag_dump_ext(struct sk_buff *skb, struct netlink_callback 
> >> *cb)
> >>  {
> >> +  struct smc_diag_req_v2 *req = nlmsg_data(cb->nlh);
> >> +
> >> +  if (req->cmd == SMC_DIAG_GET_LGR_INFO) {
> >> +          if ((req->cmd_ext & (1 << (SMC_DIAG_LGR_INFO_SMCR - 1))))
> >> +                  smc_diag_fill_lgr_list(smc_diag_ops->get_lgr_list(),
> >> +                                         skb, cb, req);
> >> +  }
> >> +
> >>    return skb->len;
> >>  }  
> > 
> > IDK if this is appropriate for socket diag handler.
> > 
> > Is there precedent for funneling commands through socket diag instead
> > of just creating a genetlink family?
> 
> Thank you for your valuable comments. We are looking into a better way
> to retrieve the various information from the kernel into user space, 
> and we will come up with a v5 for that.

Thanks, but do double check that no other socket type is doing this, 
I'm far from a socket layer expert.

Reply via email to