On Wed, Dec 18, 2019 at 01:36:25AM +0100, Florian Westphal wrote: > Phil Sutter <phil@xxxxxx> wrote: > > On Wed, Dec 18, 2019 at 01:03:15AM +0100, Florian Westphal wrote: > > > Phil Sutter <phil@xxxxxx> wrote: > > > > On Big Endian architectures, u16 port value was extracted from the wrong > > > > parts of u32 sreg_port, just like commit 10596608c4d62 ("netfilter: > > > > nf_tables: fix mismatch in big-endian system") describes. > > > > > > I was about to debug this today, thanks for debugging/fixing this. > > > > With that BE machine at hand, I quickly gave nftables testsuite a try - > > results are a bit concerning: The mere fact that netlink debug output > > for these immediates differs between BE and LE indicates we don't > > seriously test on BE. > > Yes, I fear we will need to add extra .be test files with > big-endian output. > > Alternative is to unify debug output in libnftnl to always print > in host byte order, but thats not going to be easy because we don't > know if the immediate value is in network or host byte order. The byteorder information is available in libnftables, so we can probably move the print function there.