On Tue, 2009-11-03 at 23:17 +0100, Daniel Veillard wrote:
On Tue, Oct 27, 2009 at 12:36:09PM +0100, Gerhard Stenzel wrote:
> This patch adds the files which implement the ebtables wrapper.
>
> Signed-off-by: Gerhard Stenzel <gerhard.stenzel(a)de.ibm.com>
...
> +/**
> + * ebtablesSaveRules:
> + * @ctx: pointer to the EB table context
> + *
> + * Saves all the EB table rules associated with a context
> + * to disk so that if ebtables is restarted, the rules
> + * will automatically be reload.
> + */
> +void
> +ebtablesSaveRules(ebtablesContext *ctx)
> +{
> + ebtRulesSave(ctx->input_filter);
> + ebtRulesSave(ctx->forward_filter);
> + ebtRulesSave(ctx->nat_postrouting);
> +}
Hum, and where ? Under /etc/libvirt/ebtables/.... ?
Are the table and chain names provided in ebtRulesNew() sufficient
to uniquely name the set ? I hope so otherwise we're gonna have trouble
with persistance. It would be good to have ebtRulesSave() documented if
not fully finished before next release.
I'm gonna commit this, but I think we need to double-check that the
current APIs won't be a problem when we want to implement saving (didn't
checked the second patch yet).
I also think the spec file should add a Requires to ebtables as this
is not installed systematically (it wasn't present on my workstation
by default).
I will push this tonight,
thanks !
Daniel
This patch removes the ebtablesSaveRules() function as it more confusing
than useful at the moment.
Signed-off-by: Gerhard Stenzel <gerhard.stenzel(a)de.ibm.com>
Index: libvirt/src/libvirt_private.syms
===================================================================
--- libvirt.orig/src/libvirt_private.syms
+++ libvirt/src/libvirt_private.syms
@@ -179,7 +179,6 @@ ebtablesAddForwardAllowIn;
ebtablesAddForwardPolicyReject;
ebtablesContextNew;
ebtablesRemoveForwardAllowIn;
-ebtablesSaveRules;
# event.h
Index: libvirt/src/qemu/qemu_bridge_filter.c
===================================================================
--- libvirt.orig/src/qemu/qemu_bridge_filter.c
+++ libvirt/src/qemu/qemu_bridge_filter.c
@@ -44,7 +44,6 @@ networkAddEbtablesRules(struct qemud_dri
__FILE__);
return err;
}
- ebtablesSaveRules(driver->ebtables);
return 0;
}
Index: libvirt/src/util/ebtables.c
===================================================================
--- libvirt.orig/src/util/ebtables.c
+++ libvirt/src/util/ebtables.c
@@ -65,12 +65,6 @@ enum {
};
static void
-ebtRulesSave(ebtRules *rules)
-{
- (void) rules;
-}
-
-static void
ebtRuleFree(ebtRule *rule)
{
VIR_FREE(rule->rule);
@@ -315,22 +309,6 @@ ebtablesContextFree(ebtablesContext *ctx
VIR_FREE(ctx);
}
-/**
- * ebtablesSaveRules:
- * @ctx: pointer to the EB table context
- *
- * Saves all the EB table rules associated with a context
- * to disk so that if ebtables is restarted, the rules
- * will automatically be reload.
- */
-void
-ebtablesSaveRules(ebtablesContext *ctx)
-{
- ebtRulesSave(ctx->input_filter);
- ebtRulesSave(ctx->forward_filter);
- ebtRulesSave(ctx->nat_postrouting);
-}
-
int
ebtablesAddForwardPolicyReject(ebtablesContext *ctx)
{
--
Best regards,
Gerhard Stenzel,
-----------------------------------------------------------------------------------------------------------------------------------
IBM Deutschland Research & Development GmbH
Vorsitzender des Aufsichtsrats: Martin Jetter
Geschäftsführung: Erich Baier
Sitz der Gesellschaft: Böblingen
Registergericht: Amtsgericht Stuttgart, HRB 243294