mirror of
https://github.com/brain-hackers/linux-brain.git
synced 2024-06-09 23:36:23 +09:00
89a26cd4b5
When running a 64-bit kernel with a 32-bit iptables binary, the size of the xt_nfacct_match_info struct diverges. kernel: sizeof(struct xt_nfacct_match_info) : 40 iptables: sizeof(struct xt_nfacct_match_info)) : 36 Trying to append nfacct related rules results in an unhelpful message. Although it is suggested to look for more information in dmesg, nothing can be found there. # iptables -A <chain> -m nfacct --nfacct-name <acct-object> iptables: Invalid argument. Run `dmesg' for more information. This patch fixes the memory misalignment by enforcing 8-byte alignment within the struct's first revision. This solution is often used in many other uapi netfilter headers. Signed-off-by: Juliana Rodrigueiro <juliana.rodrigueiro@intra2net.com> Acked-by: Florian Westphal <fw@strlen.de> Signed-off-by: Pablo Neira Ayuso <pablo@netfilter.org>
20 lines
421 B
C
20 lines
421 B
C
/* SPDX-License-Identifier: GPL-2.0 WITH Linux-syscall-note */
|
|
#ifndef _XT_NFACCT_MATCH_H
|
|
#define _XT_NFACCT_MATCH_H
|
|
|
|
#include <linux/netfilter/nfnetlink_acct.h>
|
|
|
|
struct nf_acct;
|
|
|
|
struct xt_nfacct_match_info {
|
|
char name[NFACCT_NAME_MAX];
|
|
struct nf_acct *nfacct;
|
|
};
|
|
|
|
struct xt_nfacct_match_info_v1 {
|
|
char name[NFACCT_NAME_MAX];
|
|
struct nf_acct *nfacct __attribute__((aligned(8)));
|
|
};
|
|
|
|
#endif /* _XT_NFACCT_MATCH_H */
|