On Wed, May 14, 2014 at 05:24:03AM +0200, Christian Stigen Larsen wrote: > Hi, > > > Den 11. mai 2014 kl. 04:19 skrev Ben Pfaff <b...@nicira.com>: > > > >> On Sat, May 10, 2014 at 06:11:29PM +0200, Christian Stigen Larsen wrote: > >> > >> Ben Pfaff <b...@nicira.com>: > >>>> Is do_xlate_actions ("translate actions"?) the wrong place for this kind > >>>> of > >>>> stuff? How can I get a pointer to the raw packet data? > >>> > >>> Usually, ofproto-dpif-xlate should not actually implement the OpenFlow > >>> actions. > >> > >> Sorry for being trigger-happy, but even if I chose to implement datapath > >> actions, how can I inspect the packet data? For some reason I get a > >> NULL-pointer in ctx->xin->packet, while, e.g., OFPACT_OUTPUT in > >> do_xlate_actions gets the full packet. > > > > Often the packet data is not available because userspace is not > > processing a particular packet. Instead, it is deciding what to do with > > the entire class of packets specified by the flow data. You are only > > guaranteed to get full packets if during processing you add a flag for > > "slow" processing as I described earlier. > > Quick question: In odp-execute I call set_ether_type (cant remember the exact > name at the moment) on the ofpbuf packet. In my example this buffer has > size=81. > > That is all I do in my action, and I can clearly see that it's working -- it > sets the correct place under offset 12 in packet->l2 w/right number of bytes. > > The action after mine is a simple output:1 action, and works too. > > However, wireshark reports that the packet is now 67 bytes (from l2 and up) > -- and my testing shows it indeed is. Strangely enough, data is capped from > L3, i.e. its tail is truncated. And 81-67=14, which is too much of a > coincidence as the eth hdr is exactly 14 bytes. > > Again, all I do is set the ether type. Do you find this strange, or do you > immediately know that I must have forgotten setting any magic flags or > fields? If you can't think of anythinh it could be my code, but I've gone > through it several times, and I don't do any bad memmoves or stuff like that.
This doesn't ring a bell for me. _______________________________________________ discuss mailing list discuss@openvswitch.org http://openvswitch.org/mailman/listinfo/discuss