Commit 30a6108c authored by Martin Mareš's avatar Martin Mareš
Browse files

Added filter_same() for comparision of two filters.

Pavel, please implement this as soon as possible.
parent bf8558bc
...@@ -25,8 +25,6 @@ Core ...@@ -25,8 +25,6 @@ Core
- config: executable config files - config: executable config files
- config: when parsing prefix, check zero bits - config: when parsing prefix, check zero bits
- config: reconfiguration
- config: reconfiguration of filters
- config: useless rules when protocols disabled - config: useless rules when protocols disabled
- config: remove protocol startup priority hacks? - config: remove protocol startup priority hacks?
- config: better datetime format - config: better datetime format
...@@ -54,7 +52,6 @@ show <name> # show everything you know about symbol <name> ...@@ -54,7 +52,6 @@ show <name> # show everything you know about symbol <name>
Roadmap Roadmap
~~~~~~~ ~~~~~~~
- Dynamic reconfiguration
- Allocators and data structures - Allocators and data structures
- Client - Client
- Remaining bits of IPv6 support (radvd) - Remaining bits of IPv6 support (radvd)
......
...@@ -444,3 +444,10 @@ filters_postconfig(void) ...@@ -444,3 +444,10 @@ filters_postconfig(void)
printf( "done\n" ); printf( "done\n" );
} }
} }
int
filter_same(struct filter *new, struct filter *old)
{
/* FIXME: This has to be defined! */
return new == old;
}
...@@ -67,6 +67,7 @@ struct rte; ...@@ -67,6 +67,7 @@ struct rte;
int f_run(struct filter *filter, struct rte **rte, struct ea_list **tmp_attrs, struct linpool *tmp_pool); int f_run(struct filter *filter, struct rte **rte, struct ea_list **tmp_attrs, struct linpool *tmp_pool);
char *filter_name(struct filter *filter); char *filter_name(struct filter *filter);
int filter_same(struct filter *new, struct filter *old);
int val_compare(struct f_val v1, struct f_val v2); int val_compare(struct f_val v1, struct f_val v2);
void val_print(struct f_val v); void val_print(struct f_val v);
......
...@@ -228,8 +228,8 @@ protos_commit(struct config *new, struct config *old, int force_reconfig) ...@@ -228,8 +228,8 @@ protos_commit(struct config *new, struct config *old, int force_reconfig)
&& nc->preference == oc->preference && nc->preference == oc->preference
&& nc->disabled == oc->disabled && nc->disabled == oc->disabled
&& nc->table->table == oc->table->table && nc->table->table == oc->table->table
&& nc->in_filter == oc->in_filter && filter_same(nc->in_filter, oc->in_filter)
&& nc->out_filter == oc->out_filter && filter_same(nc->out_filter, oc->out_filter)
&& p->proto_state != PS_DOWN) && p->proto_state != PS_DOWN)
{ {
/* Generic attributes match, try converting them and then ask the protocol */ /* Generic attributes match, try converting them and then ask the protocol */
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment