libteam/options: fix s32/u32 data storage on big endian

When put signed/unsigned int data to long on big endian(PPC64) and read it as
singed/unsigned int, we will read from high bytes and get wrong number, e.g.
wrong active port index and priority values.

Fix it by using signed/unsigned int directly when store s32/u32 values.

Signed-off-by: Hangbin Liu <>
Signed-off-by: Jiri Pirko <>
1 file changed