return false;
}
+static gboolean is_fallthrough(struct connman_iptables_entry *e)
+{
+ struct xt_entry_target *target;
+
+ target = ipt_get_target(e->entry);
+ if (!strcmp(target->u.user.name, ""))
+ return true;
+
+ return false;
+}
+
static gboolean is_chain(struct connman_iptables *table,
struct connman_iptables_entry *e)
{
t->verdict += offset;
}
}
+
+ if (is_fallthrough(modified_entry)) {
+ t = (struct xt_standard_target *) ipt_get_target(modified_entry->entry);
+
+ t->verdict = entry_before->offset +
+ modified_entry->entry->target_offset +
+ ALIGN(sizeof(struct xt_standard_target));
+ t->target.u.target_size =
+ ALIGN(sizeof(struct xt_standard_target));
+ }
}
static int iptables_add_entry(struct connman_iptables *table,