Code Review
/
vpp.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
review
|
tree
raw
|
inline
| side by side
LISP: enhance binary part of some APIs
[vpp.git]
/
build-root
/
emacs-lisp
/
plugin-node-skel.el
diff --git
a/build-root/emacs-lisp/plugin-node-skel.el
b/build-root/emacs-lisp/plugin-node-skel.el
index
0d88a2e
..
ee745c3
100644
(file)
--- a/
build-root/emacs-lisp/plugin-node-skel.el
+++ b/
build-root/emacs-lisp/plugin-node-skel.el
@@
-47,8
+47,18
@@
nil
typedef struct {
u32 next_index;
u32 sw_if_index;
typedef struct {
u32 next_index;
u32 sw_if_index;
+ u8 new_src_mac[6];
+ u8 new_dst_mac[6];
} " plugin-name "_trace_t;
} " plugin-name "_trace_t;
+static u8 *
+format_mac_address (u8 * s, va_list * args)
+{
+ u8 *a = va_arg (*args, u8 *);
+ return format (s, \"%02x:%02x:%02x:%02x:%02x:%02x\",
+ a[0], a[1], a[2], a[3], a[4], a[5]);
+}
+
/* packet trace format function */
static u8 * format_" plugin-name "_trace (u8 * s, va_list * args)
{
/* packet trace format function */
static u8 * format_" plugin-name "_trace (u8 * s, va_list * args)
{
@@
-56,8
+66,11
@@
static u8 * format_" plugin-name "_trace (u8 * s, va_list * args)
CLIB_UNUSED (vlib_node_t * node) = va_arg (*args, vlib_node_t *);
" plugin-name "_trace_t * t = va_arg (*args, " plugin-name "_trace_t *);
CLIB_UNUSED (vlib_node_t * node) = va_arg (*args, vlib_node_t *);
" plugin-name "_trace_t * t = va_arg (*args, " plugin-name "_trace_t *);
- s = format (s, \"" PLUGIN-NAME ": sw_if_index %d, next index %d\",
+ s = format (s, \"" PLUGIN-NAME ": sw_if_index %d, next index %d\
\n\
",
t->sw_if_index, t->next_index);
t->sw_if_index, t->next_index);
+ s = format (s, \" new src %U -> new dst %U\",
+ format_mac_address, t->new_src_mac,
+ format_mac_address, t->new_dst_mac);
return s;
}
return s;
}
@@
-193,6
+206,10
@@
static uword
vlib_add_trace (vm, node, b0, sizeof (*t));
t->sw_if_index = sw_if_index0;
t->next_index = next0;
vlib_add_trace (vm, node, b0, sizeof (*t));
t->sw_if_index = sw_if_index0;
t->next_index = next0;
+ clib_memcpy (t->new_src_mac, en0->src_address,
+ sizeof (t->new_src_mac));
+ clib_memcpy (t->new_dst_mac, en0->dst_address,
+ sizeof (t->new_dst_mac));
}
if (b1->flags & VLIB_BUFFER_IS_TRACED)
{
}
if (b1->flags & VLIB_BUFFER_IS_TRACED)
{
@@
-200,6
+217,10
@@
static uword
vlib_add_trace (vm, node, b1, sizeof (*t));
t->sw_if_index = sw_if_index1;
t->next_index = next1;
vlib_add_trace (vm, node, b1, sizeof (*t));
t->sw_if_index = sw_if_index1;
t->next_index = next1;
+ clib_memcpy (t->new_src_mac, en1->src_address,
+ sizeof (t->new_src_mac));
+ clib_memcpy (t->new_dst_mac, en1->dst_address,
+ sizeof (t->new_dst_mac));
}
}
}
}
@@
-257,6
+278,10
@@
static uword
vlib_add_trace (vm, node, b0, sizeof (*t));
t->sw_if_index = sw_if_index0;
t->next_index = next0;
vlib_add_trace (vm, node, b0, sizeof (*t));
t->sw_if_index = sw_if_index0;
t->next_index = next0;
+ clib_memcpy (t->new_src_mac, en0->src_address,
+ sizeof (t->new_src_mac));
+ clib_memcpy (t->new_dst_mac, en0->dst_address,
+ sizeof (t->new_dst_mac));
}
pkts_swapped += 1;
}
pkts_swapped += 1;