From d2da4c9bb19b1938f456bdf052a3dda9f99b6312 Mon Sep 17 00:00:00 2001 From: Bart De Schuymer Date: Wed, 23 Jul 2003 21:19:46 +0000 Subject: add EBT_ALIGN --- kernel/linux/net/bridge/netfilter/ebt_802_3.c | 2 +- kernel/linux/net/bridge/netfilter/ebt_arp.c | 2 +- kernel/linux/net/bridge/netfilter/ebt_dnat.c | 2 +- kernel/linux/net/bridge/netfilter/ebt_ip.c | 2 +- kernel/linux/net/bridge/netfilter/ebt_log.c | 2 +- kernel/linux/net/bridge/netfilter/ebt_mark.c | 2 +- kernel/linux/net/bridge/netfilter/ebt_mark_m.c | 2 +- kernel/linux/net/bridge/netfilter/ebt_pkttype.c | 2 +- kernel/linux/net/bridge/netfilter/ebt_redirect.c | 2 +- kernel/linux/net/bridge/netfilter/ebt_snat.c | 2 +- kernel/linux/net/bridge/netfilter/ebt_vlan.c | 2 +- 11 files changed, 11 insertions(+), 11 deletions(-) diff --git a/kernel/linux/net/bridge/netfilter/ebt_802_3.c b/kernel/linux/net/bridge/netfilter/ebt_802_3.c index 08427a5..4b48398 100644 --- a/kernel/linux/net/bridge/netfilter/ebt_802_3.c +++ b/kernel/linux/net/bridge/netfilter/ebt_802_3.c @@ -42,7 +42,7 @@ static int ebt_802_3_check(const char *tablename, unsigned int hookmask, { struct ebt_802_3_info *info = (struct ebt_802_3_info *)data; - if (datalen < sizeof(struct ebt_802_3_info)) + if (datalen != EBT_ALIGN(sizeof(struct ebt_802_3_info))) return -EINVAL; if (info->bitmask & ~EBT_802_3_MASK || info->invflags & ~EBT_802_3_MASK) return -EINVAL; diff --git a/kernel/linux/net/bridge/netfilter/ebt_arp.c b/kernel/linux/net/bridge/netfilter/ebt_arp.c index 5a79e15..4bb1281 100644 --- a/kernel/linux/net/bridge/netfilter/ebt_arp.c +++ b/kernel/linux/net/bridge/netfilter/ebt_arp.c @@ -116,7 +116,7 @@ static int ebt_arp_check(const char *tablename, unsigned int hookmask, { struct ebt_arp_info *info = (struct ebt_arp_info *)data; - if (datalen != sizeof(struct ebt_arp_info)) + if (datalen != EBT_ALIGN(sizeof(struct ebt_arp_info))) return -EINVAL; if ((e->ethproto != __constant_htons(ETH_P_ARP) && e->ethproto != __constant_htons(ETH_P_RARP)) || diff --git a/kernel/linux/net/bridge/netfilter/ebt_dnat.c b/kernel/linux/net/bridge/netfilter/ebt_dnat.c index c4fea18..d3d1b4f 100644 --- a/kernel/linux/net/bridge/netfilter/ebt_dnat.c +++ b/kernel/linux/net/bridge/netfilter/ebt_dnat.c @@ -36,7 +36,7 @@ static int ebt_target_dnat_check(const char *tablename, unsigned int hookmask, (hookmask & ~((1 << NF_BR_PRE_ROUTING) | (1 << NF_BR_LOCAL_OUT)))) && (strcmp(tablename, "broute") || hookmask & ~(1 << NF_BR_BROUTING)) ) return -EINVAL; - if (datalen != sizeof(struct ebt_nat_info)) + if (datalen != EBT_ALIGN(sizeof(struct ebt_nat_info))) return -EINVAL; if (INVALID_TARGET) return -EINVAL; diff --git a/kernel/linux/net/bridge/netfilter/ebt_ip.c b/kernel/linux/net/bridge/netfilter/ebt_ip.c index 59c27bd..1631b33 100644 --- a/kernel/linux/net/bridge/netfilter/ebt_ip.c +++ b/kernel/linux/net/bridge/netfilter/ebt_ip.c @@ -78,7 +78,7 @@ static int ebt_ip_check(const char *tablename, unsigned int hookmask, { struct ebt_ip_info *info = (struct ebt_ip_info *)data; - if (datalen != sizeof(struct ebt_ip_info)) + if (datalen != EBT_ALIGN(sizeof(struct ebt_ip_info))) return -EINVAL; if (e->ethproto != __constant_htons(ETH_P_IP) || e->invflags & EBT_IPROTO) diff --git a/kernel/linux/net/bridge/netfilter/ebt_log.c b/kernel/linux/net/bridge/netfilter/ebt_log.c index 6a58d54..9b8aff1 100644 --- a/kernel/linux/net/bridge/netfilter/ebt_log.c +++ b/kernel/linux/net/bridge/netfilter/ebt_log.c @@ -23,7 +23,7 @@ static int ebt_log_check(const char *tablename, unsigned int hookmask, { struct ebt_log_info *info = (struct ebt_log_info *)data; - if (datalen != sizeof(struct ebt_log_info)) + if (datalen != EBT_ALIGN(sizeof(struct ebt_log_info))) return -EINVAL; if (info->bitmask & ~EBT_LOG_MASK) return -EINVAL; diff --git a/kernel/linux/net/bridge/netfilter/ebt_mark.c b/kernel/linux/net/bridge/netfilter/ebt_mark.c index 0abb169..af5c085 100644 --- a/kernel/linux/net/bridge/netfilter/ebt_mark.c +++ b/kernel/linux/net/bridge/netfilter/ebt_mark.c @@ -34,7 +34,7 @@ static int ebt_target_mark_check(const char *tablename, unsigned int hookmask, { struct ebt_mark_t_info *info = (struct ebt_mark_t_info *)data; - if (datalen != sizeof(struct ebt_mark_t_info)) + if (datalen != EBT_ALIGN(sizeof(struct ebt_mark_t_info))) return -EINVAL; if (BASE_CHAIN && info->target == EBT_RETURN) return -EINVAL; diff --git a/kernel/linux/net/bridge/netfilter/ebt_mark_m.c b/kernel/linux/net/bridge/netfilter/ebt_mark_m.c index 43d0f32..66916bb 100644 --- a/kernel/linux/net/bridge/netfilter/ebt_mark_m.c +++ b/kernel/linux/net/bridge/netfilter/ebt_mark_m.c @@ -28,7 +28,7 @@ static int ebt_mark_check(const char *tablename, unsigned int hookmask, { struct ebt_mark_m_info *info = (struct ebt_mark_m_info *) data; - if (datalen != sizeof(struct ebt_mark_m_info)) + if (datalen != EBT_ALIGN(sizeof(struct ebt_mark_m_info))) return -EINVAL; if (info->bitmask & ~EBT_MARK_MASK) return -EINVAL; diff --git a/kernel/linux/net/bridge/netfilter/ebt_pkttype.c b/kernel/linux/net/bridge/netfilter/ebt_pkttype.c index 281a2be..c974dc7 100644 --- a/kernel/linux/net/bridge/netfilter/ebt_pkttype.c +++ b/kernel/linux/net/bridge/netfilter/ebt_pkttype.c @@ -28,7 +28,7 @@ static int ebt_pkttype_check(const char *tablename, unsigned int hookmask, { struct ebt_pkttype_info *info = (struct ebt_pkttype_info *)data; - if (datalen != sizeof(struct ebt_pkttype_info)) + if (datalen != EBT_ALIGN(sizeof(struct ebt_pkttype_info))) return -EINVAL; if (info->invert != 0 && info->invert != 1) return -EINVAL; diff --git a/kernel/linux/net/bridge/netfilter/ebt_redirect.c b/kernel/linux/net/bridge/netfilter/ebt_redirect.c index 0512fa2..661165e 100644 --- a/kernel/linux/net/bridge/netfilter/ebt_redirect.c +++ b/kernel/linux/net/bridge/netfilter/ebt_redirect.c @@ -36,7 +36,7 @@ static int ebt_target_redirect_check(const char *tablename, unsigned int hookmas { struct ebt_redirect_info *info = (struct ebt_redirect_info *)data; - if (datalen != sizeof(struct ebt_redirect_info)) + if (datalen != EBT_ALIGN(sizeof(struct ebt_redirect_info))) return -EINVAL; if (BASE_CHAIN && info->target == EBT_RETURN) return -EINVAL; diff --git a/kernel/linux/net/bridge/netfilter/ebt_snat.c b/kernel/linux/net/bridge/netfilter/ebt_snat.c index 03e3ecb..a327a1d 100644 --- a/kernel/linux/net/bridge/netfilter/ebt_snat.c +++ b/kernel/linux/net/bridge/netfilter/ebt_snat.c @@ -28,7 +28,7 @@ static int ebt_target_snat_check(const char *tablename, unsigned int hookmask, { struct ebt_nat_info *info = (struct ebt_nat_info *) data; - if (datalen != sizeof(struct ebt_nat_info)) + if (datalen != EBT_ALIGN(sizeof(struct ebt_nat_info))) return -EINVAL; if (BASE_CHAIN && info->target == EBT_RETURN) return -EINVAL; diff --git a/kernel/linux/net/bridge/netfilter/ebt_vlan.c b/kernel/linux/net/bridge/netfilter/ebt_vlan.c index b3b9964..1f7d964 100644 --- a/kernel/linux/net/bridge/netfilter/ebt_vlan.c +++ b/kernel/linux/net/bridge/netfilter/ebt_vlan.c @@ -135,7 +135,7 @@ ebt_check_vlan(const char *tablename, /* * Parameters buffer overflow check */ - if (datalen != sizeof(struct ebt_vlan_info)) { + if (datalen != EBT_ALIGN(sizeof(struct ebt_vlan_info))) { DEBUG_MSG ("passed size %d is not eq to ebt_vlan_info (%d)\n", datalen, sizeof(struct ebt_vlan_info)); -- cgit v1.2.3