<feed xmlns='http://www.w3.org/2005/Atom'>
<title>delta/openvswitch.git/python, branch master</title>
<subtitle>github.com: openvswitch/ovs.git
</subtitle>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/openvswitch.git/'/>
<entry>
<title>python-stream: Handle SSL error in do_handshake.</title>
<updated>2023-04-26T12:49:49+00:00</updated>
<author>
<name>Stefan Hoffmann</name>
<email>stefan.hoffmann@cloudandheat.com</email>
</author>
<published>2023-04-21T08:29:36+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/openvswitch.git/commit/?id=b456b1a02f629c2438ef2c3f247f35c8712f12c6'/>
<id>b456b1a02f629c2438ef2c3f247f35c8712f12c6</id>
<content type='text'>
In some cases ovsdb server or relay gets restarted, ovsdb python clients
may keep the local socket open. Instead of reconnecting a lot of failures
will be logged.
This can be reproduced with ssl connections to the server/relay and
restarting it, so it has the same IP after restart.

This patch catches the Exceptions at do_handshake to recreate the
connection on the client side.

Reviewed-by: Simon Horman &lt;simon.horman@corigine.com&gt;
Signed-off-by: Stefan Hoffmann &lt;stefan.hoffmann@cloudandheat.com&gt;
Signed-off-by: Luca Czesla &lt;luca.czesla@mail.schwarz&gt;
Signed-off-by: Max Lamprecht &lt;max.lamprecht@mail.schwarz&gt;
Co-authored-by: Luca Czesla &lt;luca.czesla@mail.schwarz&gt;
Co-authored-by: Max Lamprecht &lt;max.lamprecht@mail.schwarz&gt;
Signed-off-by: Ilya Maximets &lt;i.maximets@ovn.org&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
In some cases ovsdb server or relay gets restarted, ovsdb python clients
may keep the local socket open. Instead of reconnecting a lot of failures
will be logged.
This can be reproduced with ssl connections to the server/relay and
restarting it, so it has the same IP after restart.

This patch catches the Exceptions at do_handshake to recreate the
connection on the client side.

Reviewed-by: Simon Horman &lt;simon.horman@corigine.com&gt;
Signed-off-by: Stefan Hoffmann &lt;stefan.hoffmann@cloudandheat.com&gt;
Signed-off-by: Luca Czesla &lt;luca.czesla@mail.schwarz&gt;
Signed-off-by: Max Lamprecht &lt;max.lamprecht@mail.schwarz&gt;
Co-authored-by: Luca Czesla &lt;luca.czesla@mail.schwarz&gt;
Co-authored-by: Max Lamprecht &lt;max.lamprecht@mail.schwarz&gt;
Signed-off-by: Ilya Maximets &lt;i.maximets@ovn.org&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>odp: Add SRv6 tunnel actions.</title>
<updated>2023-03-29T20:16:04+00:00</updated>
<author>
<name>Nobuhiro MIKI</name>
<email>nmiki@yahoo-corp.jp</email>
</author>
<published>2023-03-29T05:51:18+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/openvswitch.git/commit/?id=7381fd440a88ae92ca3bbc6b2ee34c5d5861a061'/>
<id>7381fd440a88ae92ca3bbc6b2ee34c5d5861a061</id>
<content type='text'>
This patch adds ODP actions for SRv6 and its tests.

Signed-off-by: Nobuhiro MIKI &lt;nmiki@yahoo-corp.jp&gt;
Signed-off-by: Ilya Maximets &lt;i.maximets@ovn.org&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This patch adds ODP actions for SRv6 and its tests.

Signed-off-by: Nobuhiro MIKI &lt;nmiki@yahoo-corp.jp&gt;
Signed-off-by: Ilya Maximets &lt;i.maximets@ovn.org&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>python: Don't exit OFPFlow constructor.</title>
<updated>2022-12-21T18:48:07+00:00</updated>
<author>
<name>Adrian Moreno</name>
<email>amorenoz@redhat.com</email>
</author>
<published>2022-12-19T16:13:52+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/openvswitch.git/commit/?id=863d2e1a8c2a6ced49a49024c094ef6a9aa7e55a'/>
<id>863d2e1a8c2a6ced49a49024c094ef6a9aa7e55a</id>
<content type='text'>
Returning None in a constructor does not make sense and is just error
prone.  Removing what was a leftover from an attempt to handle a common
error case of trying to parse what is commonly outputted by ovs-ofctl.
This should be done by the caller anyway.

Signed-off-by: Adrian Moreno &lt;amorenoz@redhat.com&gt;
Acked-by: Mike Pattrick &lt;mkp@redhat.com&gt;
Signed-off-by: Ilya Maximets &lt;i.maximets@ovn.org&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Returning None in a constructor does not make sense and is just error
prone.  Removing what was a leftover from an attempt to handle a common
error case of trying to parse what is commonly outputted by ovs-ofctl.
This should be done by the caller anyway.

Signed-off-by: Adrian Moreno &lt;amorenoz@redhat.com&gt;
Acked-by: Mike Pattrick &lt;mkp@redhat.com&gt;
Signed-off-by: Ilya Maximets &lt;i.maximets@ovn.org&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>python: Interpret free keys as output in clone.</title>
<updated>2022-12-21T17:36:02+00:00</updated>
<author>
<name>Adrian Moreno</name>
<email>amorenoz@redhat.com</email>
</author>
<published>2022-12-19T16:13:49+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/openvswitch.git/commit/?id=c395e9810e07ab957676b4f75e9cacd39dca6839'/>
<id>c395e9810e07ab957676b4f75e9cacd39dca6839</id>
<content type='text'>
clone-like actions can also output to ports by specifying the port name.

Signed-off-by: Adrian Moreno &lt;amorenoz@redhat.com&gt;
Signed-off-by: Ilya Maximets &lt;i.maximets@ovn.org&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
clone-like actions can also output to ports by specifying the port name.

Signed-off-by: Adrian Moreno &lt;amorenoz@redhat.com&gt;
Signed-off-by: Ilya Maximets &lt;i.maximets@ovn.org&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>python: Fix output=CONTROLLER action.</title>
<updated>2022-12-21T17:36:02+00:00</updated>
<author>
<name>Adrian Moreno</name>
<email>amorenoz@redhat.com</email>
</author>
<published>2022-12-19T16:13:48+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/openvswitch.git/commit/?id=542fdad701403c11cfe8356957f934fa657c1742'/>
<id>542fdad701403c11cfe8356957f934fa657c1742</id>
<content type='text'>
When CONTROLLER is used as free key, it means output=CONTROLLER which is
handled by decode_controller. However, it must output the KV in the
right format: "output": {"format": "CONTROLLER"}.

Signed-off-by: Adrian Moreno &lt;amorenoz@redhat.com&gt;
Signed-off-by: Ilya Maximets &lt;i.maximets@ovn.org&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
When CONTROLLER is used as free key, it means output=CONTROLLER which is
handled by decode_controller. However, it must output the KV in the
right format: "output": {"format": "CONTROLLER"}.

Signed-off-by: Adrian Moreno &lt;amorenoz@redhat.com&gt;
Signed-off-by: Ilya Maximets &lt;i.maximets@ovn.org&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>python: Support case-insensitive OpenFlow actions.</title>
<updated>2022-12-21T17:36:02+00:00</updated>
<author>
<name>Adrian Moreno</name>
<email>amorenoz@redhat.com</email>
</author>
<published>2022-12-19T16:13:47+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/openvswitch.git/commit/?id=1850e5e6891282d84bdeb7b7100166cfd8deed28'/>
<id>1850e5e6891282d84bdeb7b7100166cfd8deed28</id>
<content type='text'>
OpenFlow actions names can be capitalized so in order to support this,
support case-insensitive KVDecoders and use it in Openflow actions.

Signed-off-by: Adrian Moreno &lt;amorenoz@redhat.com&gt;
Signed-off-by: Ilya Maximets &lt;i.maximets@ovn.org&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
OpenFlow actions names can be capitalized so in order to support this,
support case-insensitive KVDecoders and use it in Openflow actions.

Signed-off-by: Adrian Moreno &lt;amorenoz@redhat.com&gt;
Signed-off-by: Ilya Maximets &lt;i.maximets@ovn.org&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>python: Return list of actions for odp action clone.</title>
<updated>2022-12-21T17:36:02+00:00</updated>
<author>
<name>Adrian Moreno</name>
<email>amorenoz@redhat.com</email>
</author>
<published>2022-12-19T16:13:46+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/openvswitch.git/commit/?id=75a6e8db9c5f9dc2887cae1555d977f0fdf08471'/>
<id>75a6e8db9c5f9dc2887cae1555d977f0fdf08471</id>
<content type='text'>
Sometimes we don't want to return the result of a nested key-value
decoding as a dictionary but as a list of dictionaries. This happens
when we parse actions where keys can be repeated.

Refactor code that already takes that into account from ofp_act.py to
kv.py and use it for datapath action "clone".

Signed-off-by: Adrian Moreno &lt;amorenoz@redhat.com&gt;
Acked-by: Mike Pattrick &lt;mkp@redhat.com&gt;
Signed-off-by: Ilya Maximets &lt;i.maximets@ovn.org&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Sometimes we don't want to return the result of a nested key-value
decoding as a dictionary but as a list of dictionaries. This happens
when we parse actions where keys can be repeated.

Refactor code that already takes that into account from ofp_act.py to
kv.py and use it for datapath action "clone".

Signed-off-by: Adrian Moreno &lt;amorenoz@redhat.com&gt;
Acked-by: Mike Pattrick &lt;mkp@redhat.com&gt;
Signed-off-by: Ilya Maximets &lt;i.maximets@ovn.org&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>python: Make key-value matching strict by default.</title>
<updated>2022-12-21T17:36:02+00:00</updated>
<author>
<name>Adrian Moreno</name>
<email>amorenoz@redhat.com</email>
</author>
<published>2022-12-19T16:13:45+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/openvswitch.git/commit/?id=d33e548fc7d7ae03cfeba8b70ba84b5b998beca8'/>
<id>d33e548fc7d7ae03cfeba8b70ba84b5b998beca8</id>
<content type='text'>
Currently, if a key is not found in the decoder information, we use the
default decoder which typically returns a string.

This not only means we can go out of sync with the C code without
noticing but it's also error prone as malformed flows could be parsed
without warning.

Make KeyValue parsing strict, raising an error if a decoder is not found
for a key.
This behaviour can be turned off globally by running 'KVDecoders.strict
= False' but it's generally not recommended. Also, if a KVDecoder does
need this default behavior, it can be explicitly configured specifying
it's default decoder.

Signed-off-by: Adrian Moreno &lt;amorenoz@redhat.com&gt;
Acked-by: Mike Pattrick &lt;mkp@redhat.com&gt;
Signed-off-by: Ilya Maximets &lt;i.maximets@ovn.org&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Currently, if a key is not found in the decoder information, we use the
default decoder which typically returns a string.

This not only means we can go out of sync with the C code without
noticing but it's also error prone as malformed flows could be parsed
without warning.

Make KeyValue parsing strict, raising an error if a decoder is not found
for a key.
This behaviour can be turned off globally by running 'KVDecoders.strict
= False' but it's generally not recommended. Also, if a KVDecoder does
need this default behavior, it can be explicitly configured specifying
it's default decoder.

Signed-off-by: Adrian Moreno &lt;amorenoz@redhat.com&gt;
Acked-by: Mike Pattrick &lt;mkp@redhat.com&gt;
Signed-off-by: Ilya Maximets &lt;i.maximets@ovn.org&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>python: Add explicit decoders for all ofp actions.</title>
<updated>2022-12-21T17:36:02+00:00</updated>
<author>
<name>Adrian Moreno</name>
<email>amorenoz@redhat.com</email>
</author>
<published>2022-12-19T16:13:44+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/openvswitch.git/commit/?id=fe204743cbc609dc5dfefd1437fc058b7ad3ca52'/>
<id>fe204743cbc609dc5dfefd1437fc058b7ad3ca52</id>
<content type='text'>
We were silently relying on some ofp actions to be decoded by the
default decoder which would yield decent string values.

In order to be more safe and robust, add an explicit decoder for all
missing actions.

This patch also reworks the learn action decoding to make it more
explicit and verify all the fields specified in the learn action are
actually valid fields.

Signed-off-by: Adrian Moreno &lt;amorenoz@redhat.com&gt;
Signed-off-by: Ilya Maximets &lt;i.maximets@ovn.org&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
We were silently relying on some ofp actions to be decoded by the
default decoder which would yield decent string values.

In order to be more safe and robust, add an explicit decoder for all
missing actions.

This patch also reworks the learn action decoding to make it more
explicit and verify all the fields specified in the learn action are
actually valid fields.

Signed-off-by: Adrian Moreno &lt;amorenoz@redhat.com&gt;
Signed-off-by: Ilya Maximets &lt;i.maximets@ovn.org&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>python: Fix datapath flow decoders.</title>
<updated>2022-12-21T17:36:02+00:00</updated>
<author>
<name>Adrian Moreno</name>
<email>amorenoz@redhat.com</email>
</author>
<published>2022-12-19T16:13:42+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/openvswitch.git/commit/?id=c627cfd9cb630c052285a540cd65dd809be0ea95'/>
<id>c627cfd9cb630c052285a540cd65dd809be0ea95</id>
<content type='text'>
Fix the following erros in odp decoding:
- Missing push_mpls action
- Typos in collector_set_id, tp_src/tp_dst and csum
- Missing two fields in vxlan match

Signed-off-by: Adrian Moreno &lt;amorenoz@redhat.com&gt;
Acked-by: Mike Pattrick &lt;mkp@redhat.com&gt;
Signed-off-by: Ilya Maximets &lt;i.maximets@ovn.org&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Fix the following erros in odp decoding:
- Missing push_mpls action
- Typos in collector_set_id, tp_src/tp_dst and csum
- Missing two fields in vxlan match

Signed-off-by: Adrian Moreno &lt;amorenoz@redhat.com&gt;
Acked-by: Mike Pattrick &lt;mkp@redhat.com&gt;
Signed-off-by: Ilya Maximets &lt;i.maximets@ovn.org&gt;
</pre>
</div>
</content>
</entry>
</feed>
