lib/pcap: Use ofpbuf_tail() instead of ofpbuf_end().
authorJarno Rajahalme <jrajahalme@nicira.com>
Tue, 25 Mar 2014 23:16:28 +0000 (16:16 -0700)
committerJarno Rajahalme <jrajahalme@nicira.com>
Tue, 25 Mar 2014 23:16:28 +0000 (16:16 -0700)
Using ofpbuf_end() to compute payload length would fail if the ofpbuf
had any tailroom.

Signed-off-by: Jarno Rajahalme <jrajahalme@nicira.com>
Signed-off-by: Ben Pfaff <blp@nicira.com>
lib/pcap-file.c

index 4e3e7db..2fa0082 100644 (file)
@@ -329,7 +329,7 @@ tcp_reader_run(struct tcp_reader *r, const struct flow *flow,
          * continually expanding it. */
         ofpbuf_shift(payload, (char *) payload->base - (char *) payload->data);
 
-        length = (char *) ofpbuf_end(packet) - (char *) packet->l7;
+        length = (char *) ofpbuf_tail(packet) - (char *) packet->l7;
         ofpbuf_put(payload, packet->l7, length);
         stream->seq_no += length;
         return payload;