From: Keir Fraser Date: Mon, 4 Feb 2008 14:29:03 +0000 (+0000) Subject: ebtables: don't compute gap until we know we have an ebt_entry X-Git-Tag: xen-3.2.0~11 X-Git-Url: http://xenbits.xensource.com/gitweb?a=commitdiff_plain;h=9f6419b2b654ececa22bda6f9f720b5ac1e90f85;p=legacy%2Flinux-2.6.18-xen.git ebtables: don't compute gap until we know we have an ebt_entry Original upstream Linux patch by Chuck Ebbert. Signed-off-by: Keir Fraser --- diff --git a/net/bridge/netfilter/ebtables.c b/net/bridge/netfilter/ebtables.c index 1969658a..9301ec4c 100644 --- a/net/bridge/netfilter/ebtables.c +++ b/net/bridge/netfilter/ebtables.c @@ -597,7 +597,7 @@ ebt_check_entry(struct ebt_entry *e, struct ebt_table_info *newinfo, struct ebt_entry_target *t; struct ebt_target *target; unsigned int i, j, hook = 0, hookmask = 0; - size_t gap = e->next_offset - e->target_offset; + size_t gap; int ret; /* don't mess with the struct ebt_entries */ @@ -647,6 +647,7 @@ ebt_check_entry(struct ebt_entry *e, struct ebt_table_info *newinfo, if (ret != 0) goto cleanup_watchers; t = (struct ebt_entry_target *)(((char *)e) + e->target_offset); + gap = e->next_offset - e->target_offset; target = find_target_lock(t->u.name, &ret, &ebt_mutex); if (!target) goto cleanup_watchers;