On Mon, 2016-02-15 at 14:59 +0000, Edward Cree wrote: > Signed-off-by: Edward Cree <ec...@solarflare.com> [...] > @@ -950,6 +1154,19 @@ static int rxclass_get_mask(char *str, unsigned char *p, > *(__be32 *)&p[opt->moffset] = ~val; > break; > } > + case OPT_IP6: { > + __be32 val[4]; > + int i; > + err = rxclass_get_ipv6(str, val); > + if (err) > + return -1; > + for (i = 0; i < 4; i++) { > + ((__be32 *)&p[opt->offset])[i] = val[i]; > + if (opt->moffset >= 0) > + ((__be32 *)&p[opt->moffset])[i] = ~val[i];
This pointer arithmetic looks terrible. I think memcpy() would be much clearer here. [...] > The information contained in this message is confidential and is > intended for the addressee(s) only. If you have received this message > in error, please notify the sender immediately and delete the > message. Unless you are an addressee (or authorized to receive for an > addressee), you may not use, copy or disclose to anyone this message > or any information contained in this message. The unauthorized use, > disclosure, copying or alteration of this message is strictly > prohibited. I won't apply patches labelled as "confidential". You need to stop including this nonsense in your public messages (I thought you fixed this once before). Ben. -- Ben Hutchings If at first you don't succeed, you're doing about average.
signature.asc
Description: This is a digitally signed message part