[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <CAHk-=wgJz36ZE66_8gXjP_TofkkugXBZEpTr_Dtc_JANsH1SEw@mail.gmail.com>
Date: Sat, 23 Dec 2023 11:14:32 -0800
From: Linus Torvalds <torvalds@...ux-foundation.org>
To: Simon Horman <horms@...nel.org>
Cc: David Howells <dhowells@...hat.com>, Markus Suvanto <markus.suvanto@...il.com>,
Marc Dionne <marc.dionne@...istor.com>, Wang Lei <wang840925@...il.com>,
Jeff Layton <jlayton@...hat.com>, Steve French <smfrench@...il.com>,
Jarkko Sakkinen <jarkko@...nel.org>, "David S. Miller" <davem@...emloft.net>,
Eric Dumazet <edumazet@...gle.com>, Jakub Kicinski <kuba@...nel.org>, Paolo Abeni <pabeni@...hat.com>,
linux-afs@...ts.infradead.org, keyrings@...r.kernel.org,
linux-cifs@...r.kernel.org, linux-nfs@...r.kernel.org,
ceph-devel@...r.kernel.org, netdev@...r.kernel.org,
linux-fsdevel@...r.kernel.org, linux-kernel@...r.kernel.org,
Edward Adam Davis <eadavis@...com>
Subject: Re: [GIT PULL] afs, dns: Fix dynamic root interaction with negative DNS
On Sat, 23 Dec 2023 at 09:29, Simon Horman <horms@...nel.org> wrote:
>
>
> if (data[0] == 0) {
> /* It may be a server list. */
> - if (datalen <= sizeof(*bin))
> + if (datalen <= sizeof(*v1))
> return -EINVAL;
>
> bin = (const struct dns_payload_header *)data;
Ugh, I hate how it checks the size of a *different* structure than the
one it then assigns the pointer to.
So I get the feeling that we should get rid of 'bin' entirely, and
just use the 'v1' pointer, since it literally checks that that is what
it is, and then the size check matches the thing we're casting things
to.
So then "bin->xyz" becomes "v1->hdr.xyz".
Yes, the patch becomes a bit bigger, but I think the end result is a
whole lot more obvious and maintainable.
I'd also move the remaining 'v1' variable declaration to the inner
context where it's actually used.
IOW, I personally would be much happier with a patch like the attached, but I
(a) don't want to take credit for this, since my change is purely syntactic
(b) have not tested this patch apart from checking that it compiles
in at least one config
so honestly, I'd love to see this patch come back to me with sign-offs
and tested-bys by the actual people who noticed this.
Hmm?
Linus
View attachment "patch.diff" of type "text/x-patch" (1751 bytes)
Powered by blists - more mailing lists