On Fri, Mar 31, 2017 at 9:40 AM, Matias Elo <matias....@nokia.com> wrote: > Depending on the alignment/padding odph_iplookup_table_put_value() could > end up overwriting the wrong fields in prefix_entry_t. Fix this by > reverting the order of prefix_entry_t members. > > Fixes https://bugs.linaro.org/show_bug.cgi?id=2910 > > Signed-off-by: Matias Elo <matias....@nokia.com>
Reviewed-by: Bill Fischofer <bill.fischo...@linaro.org> > --- > V2: > - Improved commit log (Maxim) > > helper/iplookuptable.c | 8 ++++---- > 1 file changed, 4 insertions(+), 4 deletions(-) > > diff --git a/helper/iplookuptable.c b/helper/iplookuptable.c > index aae2199..37d31e3 100644 > --- a/helper/iplookuptable.c > +++ b/helper/iplookuptable.c > @@ -42,6 +42,10 @@ > */ > typedef struct { > union { > + odp_buffer_t nexthop; > + void *ptr; > + }; > + union { > uint8_t u8; > struct { > #if ODP_BYTE_ORDER == ODP_BIG_ENDIAN > @@ -53,10 +57,6 @@ typedef struct { > #endif > }; > }; > - union { > - odp_buffer_t nexthop; > - void *ptr; > - }; > } prefix_entry_t; > > #define ENTRY_SIZE (sizeof(prefix_entry_t) + sizeof(odp_buffer_t)) > -- > 2.7.4 >