summaryrefslogtreecommitdiff
path: root/lib/ofp-print.c
diff options
context:
space:
mode:
authorBen Pfaff <blp@ovn.org>2016-02-19 15:53:26 -0800
committerBen Pfaff <blp@ovn.org>2016-02-19 16:15:45 -0800
commitbdcad671e088d454a807072d07b8314f9860fdbc (patch)
tree34abe71ba7e00d5123a20e22f014c2a7df71b7a4 /lib/ofp-print.c
parent4adaf1828a88e0859f1eab1074216da9ba82a71a (diff)
downloadopenvswitch-bdcad671e088d454a807072d07b8314f9860fdbc.tar.gz
Support userdata in NXT_PACKET_IN2.
Signed-off-by: Ben Pfaff <blp@ovn.org> Acked-by: Jarno Rajahalme <jarno@ovn.org>
Diffstat (limited to 'lib/ofp-print.c')
-rw-r--r--lib/ofp-print.c17
1 files changed, 17 insertions, 0 deletions
diff --git a/lib/ofp-print.c b/lib/ofp-print.c
index 74f0de690..41873ba26 100644
--- a/lib/ofp-print.c
+++ b/lib/ofp-print.c
@@ -95,6 +95,17 @@ ofp_packet_to_string(const void *data, size_t len)
}
static void
+format_hex_arg(struct ds *s, const uint8_t *data, size_t len)
+{
+ for (size_t i = 0; i < len; i++) {
+ if (i) {
+ ds_put_char(s, '.');
+ }
+ ds_put_format(s, "%02"PRIx8, data[i]);
+ }
+}
+
+static void
ofp_print_packet_in(struct ds *string, const struct ofp_header *oh,
int verbosity)
{
@@ -141,6 +152,12 @@ ofp_print_packet_in(struct ds *string, const struct ofp_header *oh,
}
ds_put_char(string, '\n');
+ if (pin.userdata_len) {
+ ds_put_cstr(string, " userdata=");
+ format_hex_arg(string, pin.userdata, pin.userdata_len);
+ ds_put_char(string, '\n');
+ }
+
if (verbosity > 0) {
char *packet = ofp_packet_to_string(pin.packet, pin.packet_len);
ds_put_cstr(string, packet);