[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20170908132616.GT5465@leo.usersys.redhat.com>
Date: Fri, 8 Sep 2017 21:26:16 +0800
From: Hangbin Liu <liuhangbin@...il.com>
To: Phil Sutter <phil@....cc>, netdev@...r.kernel.org,
Stephen Hemminger <stephen@...workplumber.org>,
Michal Kubecek <mkubecek@...e.cz>
Subject: Re: [PATCH iproute2 2/2] lib/libnetlink: update rtnl_talk to support
malloc buff at run time
On Fri, Sep 08, 2017 at 01:06:52PM +0200, Phil Sutter wrote:
> Hi Hangbin,
>
> On Fri, Sep 08, 2017 at 06:14:57PM +0800, Hangbin Liu wrote:
> [...]
> > diff --git a/genl/ctrl.c b/genl/ctrl.c
> > index 448988e..699657b 100644
> > --- a/genl/ctrl.c
> > +++ b/genl/ctrl.c
> > @@ -55,6 +55,7 @@ int genl_ctrl_resolve_family(const char *family)
> > };
> > struct nlmsghdr *nlh = &req.n;
> > struct genlmsghdr *ghdr = &req.g;
> > + struct nlmsghdr *answer = NULL;
>
> I don't think it's necessary to assign NULL here or in any of the other
> cases.
OK
>
> > if (rtnl_open_byproto(&rth, 0, NETLINK_GENERIC) < 0) {
> > fprintf(stderr, "Cannot open generic netlink socket\n");
> > @@ -63,19 +64,19 @@ int genl_ctrl_resolve_family(const char *family)
> >
> > addattr_l(nlh, 128, CTRL_ATTR_FAMILY_NAME, family, strlen(family) + 1);
> >
> > - if (rtnl_talk(&rth, nlh, nlh, sizeof(req)) < 0) {
> > + if (rtnl_talk(&rth, nlh, &answer) < 0) {
>
> I didn't check, but it's likely that at least in some cases 'nlh'
> contains some buffer space to hold the answer (if it will be larger than
> the input). If so, this could be dropped since the buffer is no longer
> reused.
Yes, I will remove the buffer.
Thanks
Hangbin
Powered by blists - more mailing lists