On Fri, May 10, 2013 at 08:23:10AM +0900, Simon Horman wrote:
> On Thu, May 09, 2013 at 09:22:07AM -0700, Ben Pfaff wrote:
> > On Thu, May 02, 2013 at 06:06:46PM +0900, Simon Horman wrote:
> > > Update handling of the following actions to use the dl_type set by MPLS
> > > push and pop actions if it differs from the original dl_type. This is
> > > consistent with the existing checking of load actions and allows
> > > their existing checks to enforce dl_type pre-requisites correctly.
> > > 
> > >   output_reg
> > >   bundle
> > >   reg_move
> > >   stack_push
> > >   stack_pop
> > >   learn
> > >   multipath
> > > 
> > > In order to avoid the verbosity of updating the flow for each applicable
> > > action the update is treated as a common case and performed at the top of
> > > ofpact_check__().  This was suggested by Jesse Gross.
> > > 
> > > Cc: Jesse Gross <je...@nicira.com>
> > > Signed-off-by: Simon Horman <ho...@verge.net.au>
> > 
> > Jesse, it looks like you suggested this, do you want to review it?
> > 
> > I think that there may be a related issue though: it looks to me like
> > a pop_mpls action has no effect on dl_type if there is no MPLS header,
> > but I think that the logic for checking actions assumes that pop_mpls
> > always updates dl_type.
> 
> Thanks, I'll look into that.

It seems to me that a way to resolve this would be to restrict
pop_mpls by making an MPLS dl_type a pre-requisite in ofpact_check__().

However, this would be a somewhat of a departure from the checking of a
many of other actions.  The example Jesse gave me recently was that setting
the TCP port is permitted on a completely wildcarded flow.
_______________________________________________
dev mailing list
dev@openvswitch.org
http://openvswitch.org/mailman/listinfo/dev

Reply via email to