Re: PATCH: Fix poor pointer math in devinet_sysctl_register

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Jordan Crouse writes:
 > This patch fixes pointer math that under certain circumstances, results
 > in really bad pointers. This was encountered on a system compiled for i486, so
 > other compilers may differ, but I don't think it hurts anyone.
 > 
 > Signed-off-by: Jordan Crouse <[email protected]>
 > ---
 > 
 >  net/ipv4/devinet.c |    2 +-
 >  1 files changed, 1 insertions(+), 1 deletions(-)
 > 
 > diff --git a/net/ipv4/devinet.c b/net/ipv4/devinet.c
 > index 4ec4b2c..7585fce 100644
 > --- a/net/ipv4/devinet.c
 > +++ b/net/ipv4/devinet.c
 > @@ -1454,7 +1454,7 @@ static void devinet_sysctl_register(stru
 >  		return;
 >  	memcpy(t, &devinet_sysctl, sizeof(*t));
 >  	for (i = 0; i < ARRAY_SIZE(t->devinet_vars) - 1; i++) {
 > -		t->devinet_vars[i].data += (char *)p - (char *)&ipv4_devconf;
 > +		t->devinet_vars[i].data += (int)((char *)p - (char *)&ipv4_devconf);
 >  		t->devinet_vars[i].de = NULL;
 >  	}

This is the same code which broke due to a known gcc-4.0.0 bug:
<http://gcc.gnu.org/bugzilla/show_bug.cgi?id=21173>. If you're
indeed using gcc-4.0.0, then it's time to upgrade.

/Mikael
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [email protected]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

[Index of Archives]     [Kernel Newbies]     [Netfilter]     [Bugtraq]     [Photo]     [Stuff]     [Gimp]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Video 4 Linux]     [Linux for the blind]     [Linux Resources]
  Powered by Linux