On Wed, Apr 02, 2014 at 10:59:29AM -0700, Jarno Rajahalme wrote:
> Rename 'l2' to 'frame' and add new ofpbuf_set_frame() and
> ofpbuf_get_l2().  ofpbuf_set_frame() alse resets all the layer
> offsets.  ofpbuf_get_l2() returns NULL if the packet has no Ethernet
> header, as indicated either by unset l3 offset or NULL frame pointer.
> Caller's of ofpbuf_get_l2() are supposed to check the return value,
> unless they can otherwise be sure that the packet has a valid Ethernet
> header.
> 
> The recent commit 437d0d22 made some assumptions that were not valid
> regarding the use of the 'l2' pointer in rconn module and by
> compose_rarp().  This is now fixed as follows: rconn now relies on the
> fact that once OpenFlow messages are given to rconn for transport, the
> frame pointer is no longer needed to refer to the OpenFlow header; and
> compose_rarp() now sets the frame pointer and offsets as expected.
> 
> In addition to storing network frames, ofpbufs are also used for
> handling OpenFlow messages and action lists.  lib/ofpbuf.h now has a
> comment documenting the current usage conventions and invariants.
> 
> Signed-off-by: Jarno Rajahalme <jrajaha...@nicira.com>

I didn't read all the detailed changes, but I read the struct ofpbuf
interface changes (especially the comments) and don't have anything to
add there.

Acked-by: Ben Pfaff <b...@nicira.com>
_______________________________________________
dev mailing list
dev@openvswitch.org
http://openvswitch.org/mailman/listinfo/dev

Reply via email to