On Thu, Apr 13, 2023 at 10:30 AM Dumitru Ceara <dce...@redhat.com> wrote:
> On 4/12/23 03:29, Ihar Hrachyshka wrote: > > Scapy allows to define packets in descriptive form that is easier to > > digest and debug. > > > > Signed-off-by: Ihar Hrachyshka <ihrac...@redhat.com> > > --- > > tests/ovn-macros.at | 23 +++++++++++++++++++++++ > > 1 file changed, 23 insertions(+) > > > > diff --git a/tests/ovn-macros.at b/tests/ovn-macros.at > > index ee942e8a6..40ded7bd4 100644 > > --- a/tests/ovn-macros.at > > +++ b/tests/ovn-macros.at > > @@ -817,6 +817,29 @@ ovn_trace_client() { > > ovs-appctl -t $target trace "$@" | tee trace | sed '/^# /d' > > } > > > > +# Receives a string that represents scapy python code that represents a > packet. > > +# Returns a hex-string that contains bytes that reflect the packet > description. > > +# > > +# Scapy docs: https://scapy.readthedocs.io/en/latest/usage.html > > +# > > +# Example of usage: > > +# > > +# packet=$(fmt_pkt "\ > > +# Ether(dst='ff:ff:ff:ff:ff:ff', src='50:64:00:00:00:01') /\ > > +# IPv6(src='abed::1', dst='ff02::1:ff00:2') /\ > > +# ICMPv6ND_NS(tgt='abed::2') \ > > +# ") > > +# > > +# ovs-appctl netdev-dummy/receive $vif $packet > > +# > > +fmt_pkt() { > > + echo "from scapy.all import *; \ > > + import binascii; \ > > + out = binascii.hexlify(raw($1)); \ > > + print(out)" | python3 \ > > Should this be $(PYTHON3) instead of "python3"? > > > + | sed s/^b\'// | sed s/\'$// # hexlify prints as b'...' -> truncate > Also this truncation is not necessary if we do "print(out.decode())" instead. > > +} > > + > > OVS_END_SHELL_HELPERS > > > > m4_define([OVN_POPULATE_ARP], [AT_CHECK(ovn_populate_arp__, [0], > [ignore])]) > > I really like the idea of the patch, it would be awesome if we could use > this to generate all the packets we inject in the ovn.at tests! > > Regards, > Dumitru > > > _______________________________________________ > dev mailing list > d...@openvswitch.org > https://mail.openvswitch.org/mailman/listinfo/ovs-dev > > Thanks. Ales -- Ales Musil Senior Software Engineer - OVN Core Red Hat EMEA <https://www.redhat.com> amu...@redhat.com IM: amusil <https://red.ht/sig> _______________________________________________ dev mailing list d...@openvswitch.org https://mail.openvswitch.org/mailman/listinfo/ovs-dev