learn: Initialize cookie_mask in constructed flow_mod.
authorBen Pfaff <blp@nicira.com>
Tue, 20 Mar 2012 18:32:08 +0000 (11:32 -0700)
committerBen Pfaff <blp@nicira.com>
Wed, 21 Mar 2012 15:51:30 +0000 (08:51 -0700)
Otherwise the "learn" action may not correctly set the cookie in flows that
it creates.

Found by valgrind.

Signed-off-by: Ben Pfaff <blp@nicira.com>
lib/learn.c

index 9ca8b65a3e152a5bdb2747697f67632c861e6639..94fc1b02158c5142cc3b4ae7e60bd527a3cda0a9 100644 (file)
@@ -197,6 +197,7 @@ learn_execute(const struct nx_action_learn *learn, const struct flow *flow,
 
     cls_rule_init_catchall(&fm->cr, ntohs(learn->priority));
     fm->cookie = learn->cookie;
+    fm->cookie_mask = htonll(UINT64_MAX);
     fm->table_id = learn->table_id;
     fm->command = OFPFC_MODIFY_STRICT;
     fm->idle_timeout = ntohs(learn->idle_timeout);