I found the problem. Please try this patch:
--8<--------------------------cut here-------------------------->8-- From: Ben Pfaff <b...@nicira.com> Date: Thu, 17 Feb 2011 15:04:44 -0800 Subject: [PATCH] ofproto: Fix behavior when special_cb not present (as with ovs-openflowd). The special_cb hook allows ofproto's client to intercept packets. When it is not present (as in ovs-openflowd), no packets need to be intercepted, but ofproto implemented the opposite behavior. This fixes the problem. Reported-by: kk yap <yap...@stanford.edu> --- ofproto/ofproto.c | 6 +++--- 1 files changed, 3 insertions(+), 3 deletions(-) diff --git a/ofproto/ofproto.c b/ofproto/ofproto.c index 39d3457..e4c3528 100644 --- a/ofproto/ofproto.c +++ b/ofproto/ofproto.c @@ -3134,9 +3134,9 @@ xlate_actions(struct action_xlate_ctx *ctx, ctx->last_pop_priority = -1; if (!ctx->check_special - || (ctx->ofproto->ofhooks->special_cb - && ctx->ofproto->ofhooks->special_cb(&ctx->flow, ctx->packet, - ctx->ofproto->aux))) { + || !ctx->ofproto->ofhooks->special_cb + || ctx->ofproto->ofhooks->special_cb(&ctx->flow, ctx->packet, + ctx->ofproto->aux)) { do_xlate_actions(in, n_in, ctx); } else { ctx->may_set_up_flow = false; -- 1.7.1 _______________________________________________ discuss mailing list discuss@openvswitch.org http://openvswitch.org/mailman/listinfo/discuss_openvswitch.org