Skip to content

Commit

Permalink
dp-packet: Add 'dp_packet_l3_size()'.
Browse files Browse the repository at this point in the history
The new api will be used in a subsequent patch.

Signed-off-by: Darrell Ball <dlu998@gmail.com>
Signed-off-by: Ben Pfaff <blp@ovn.org>
  • Loading branch information
darball1 authored and blp committed Feb 14, 2019
1 parent c4cc16b commit 6eee2dc
Showing 1 changed file with 15 additions and 1 deletion.
16 changes: 15 additions & 1 deletion lib/dp-packet.h
Expand Up @@ -348,10 +348,24 @@ dp_packet_set_l4(struct dp_packet *b, void *l4)
b->l4_ofs = l4 ? (char *) l4 - (char *) dp_packet_data(b) : UINT16_MAX;
}

/* Returns the size of the packet from the beginning of the L3 header to the
* end of the L3 payload. Hence L2 padding is not included. */
static inline size_t
dp_packet_l3_size(const struct dp_packet *b)
{
return OVS_LIKELY(b->l3_ofs != UINT16_MAX)
? (const char *)dp_packet_tail(b) - (const char *)dp_packet_l3(b)
- dp_packet_l2_pad_size(b)
: 0;
}

/* Returns the size of the packet from the beginning of the L4 header to the
* end of the L4 payload. Hence L2 padding is not included. */

static inline size_t
dp_packet_l4_size(const struct dp_packet *b)
{
return b->l4_ofs != UINT16_MAX
return OVS_LIKELY(b->l4_ofs != UINT16_MAX)
? (const char *)dp_packet_tail(b) - (const char *)dp_packet_l4(b)
- dp_packet_l2_pad_size(b)
: 0;
Expand Down

0 comments on commit 6eee2dc

Please sign in to comment.