3246 Commits

Author SHA1 Message Date
FUJITA Tomonori
56e8fb3f57 Ryu 4.30
Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
v4.30
2018-11-03 19:37:16 +09:00
Bill Allen
1b38505909 Grammatical improvements to some of the documentation.
Signed-off-by: Bill Allen <photo.allen@gmail.com>
Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
2018-10-20 07:24:35 +09:00
FUJITA Tomonori
d074e15a48 Ryu 4.29
Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
v4.29
2018-10-03 14:21:56 +09:00
Atzm Watanabe
e3aa55872b app/ofctl: fix possible deadlock when the datapath disconnects
Signed-off-by: Atzm Watanabe <atzm@iij.ad.jp>
Reviewed-by: IWAMOTO Toshihiro <iwamoto@valinux.co.jp>
2018-09-26 15:34:16 +09:00
FUJITA Tomonori
0031cff9a3 Ryu 4.28
Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
v4.28
2018-09-01 21:54:08 +09:00
Slawek Kaplonski
d7d526ad21 Fix convertion of ipv4 to string on i386 and arch
On architectures like i386 or arm convertion of IPv4 to string
was failing in some cases.
It was like that because some integer values were converted to
long which is not the case on x86_64.
It was like that for example with value "2871386400" which is
used in ryu.tests.unit.ofproto.test_parser_v10:TestOFPMatch unit
test.
Because of that this test was failing when running on architectures
where integer range was too small to handle this value.

Signed-off-by: Slawek Kaplonski <skaplons@redhat.com>
Reviewed-by: IWASE Yusuke <iwase.yusuke0@gmail.com>
Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
2018-08-14 06:17:01 -07:00
IWASE Yusuke
8312ab23b3 mrtlib: Define JSON representation types
Signed-off-by: IWASE Yusuke <iwase.yusuke0@gmail.com>
Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
2018-08-11 20:05:04 +09:00
IWASE Yusuke
bc5bf0dbb6 test_mrtlib: Test cases for ADD_PATH
Signed-off-by: IWASE Yusuke <iwase.yusuke0@gmail.com>
Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
2018-08-11 20:04:57 +09:00
IWASE Yusuke
807185470e mrtlib: Support RFC8050
Signed-off-by: IWASE Yusuke <iwase.yusuke0@gmail.com>
Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
2018-08-11 20:04:50 +09:00
IWASE Yusuke
ccedf4cfb3 mrtlib: Missing subclass for SUBTYPE_RIB_*_MULTICAST
Signed-off-by: IWASE Yusuke <iwase.yusuke0@gmail.com>
Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
2018-08-11 20:04:30 +09:00
FUJITA Tomonori
a2bcf0a7e6 Ryu 4.27
Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
v4.27
2018-08-02 20:04:48 +09:00
IWAMOTO Toshihiro
840a348845 Declare support of recent python3 versions
Signed-off-by: IWAMOTO Toshihiro <iwamoto@valinux.co.jp>
Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
2018-08-01 16:00:12 +09:00
IWAMOTO Toshihiro
19662c5688 Test more python versions on travis CI
It seems tests weren't correctly run because of interactions between
travis CI env and tox venv.  Also, run the scenario test on more
recent python3, as python3.4 is going away.
The test uses a lot of memory and fails with pypy, so it's disabled for now.

Signed-off-by: IWAMOTO Toshihiro <iwamoto@valinux.co.jp>
Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
2018-08-01 16:00:11 +09:00
IWAMOTO Toshihiro
6e9fbad22e Bump oslo.config to 2.5.0
Ryu is using item_type since commit f77529036, so oslo.config minimum
version needs to be updated.

Signed-off-by: IWAMOTO Toshihiro <iwamoto@valinux.co.jp>
Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
2018-08-01 16:00:10 +09:00
Slawek Kaplonski
49b5e5c30a Fix UT when running in python 3.7 env
Due to change [1] in python 3.7 one of ryu's unit tests
was failing with this version of interpreter. It was like that
because of missing __qualname__ attribute in functools.partial
object.
This patch fixes it by adding such attribute if it's not
set already.

[1] https://github.com/python/cpython/pull/4496

Signed-off-by: Slawek Kaplonski <skaplons@redhat.com>
Acked-By: IWAMOTO Toshihiro <iwamoto@valinux.co.jp>
Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
2018-07-31 07:19:53 +09:00
IWAMOTO Toshihiro
b39ff68f82 lib/ovs/bridge: Return multiple controllers
OVSBridge may have more than one controller. Let get_controller()
return a list of controllers in such cases.

NOTE: this introduces incompatibility if multiple controllers are
configured for a bridge.

Signed-off-by: IWAMOTO Toshihiro <iwamoto@valinux.co.jp>
Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
2018-07-21 14:50:44 +09:00
IWASE Yusuke
e848eaa57e BGPSpeaker: Enable to specify remote port for neighbor
Currently, the remote port of neighbor is the hard-coded value 179.

This patch enables to specify the remote port of neighbor in
"BGPSpeaker.neighbor_add()" API.

Suggested-by: Suresh Kumar <knetsolutions2@gmail.com>
Signed-off-by: IWASE Yusuke <iwase.yusuke0@gmail.com>
2018-07-15 16:23:47 +09:00
IWAMOTO Toshihiro
d96e6a60ab switch.tester: Fix name shadowing
tester.py imported all the classes from the packet library at the top level
namespace. This commit adds CLSNAME_ALIASES dict so that those classes
with the same names can be imported as different names.
This fixes an issue reported by ted.nozaki in ryu-devel:
https://sourceforge.net/p/ryu/mailman/message/36312622/

Signed-off-by: IWAMOTO Toshihiro <iwamoto@valinux.co.jp>
Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
2018-07-15 15:55:24 +09:00
IWAMOTO Toshihiro
2c6a053f8d gui_topology: Avoid wildcard URL matching
GUIServerController eats up the entire URL space and sometimes causes
problems. See the following thread in ryu-devel for example:

https://sourceforge.net/p/ryu/mailman/message/36312411/

Signed-off-by: IWAMOTO Toshihiro <iwamoto@valinux.co.jp>
Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
2018-07-15 15:53:40 +09:00
FUJITA Tomonori
b9909d0686 Ryu 4.26
Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
v4.26
2018-07-01 20:10:13 +09:00
IWAMOTO Toshihiro
704dcc786a nx_actions: Fix NXActionSetTunnel docstring
set_tunnel and set_field:xxx->tun_id are different actions.

Signed-off-by: IWAMOTO Toshihiro <iwamoto@valinux.co.jp>
Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
2018-06-20 12:05:11 +09:00
IWAMOTO Toshihiro
4bc29b2c5f Fix pycodestyle W605 warnings
W605 invalid escape sequence, which was recently added in pycodestyle,
would be a syntax error in future python3 versions.

Signed-off-by: IWAMOTO Toshihiro <iwamoto@valinux.co.jp>
Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
2018-06-20 12:05:08 +09:00
IWASE Yusuke
b1ec9ed457 BGPSpeaker: Fix BGP state string conversion
The constants BGP_FSM_* are str type values and not callable.

Signed-off-by: IWASE Yusuke <iwase.yusuke0@gmail.com>
Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
2018-06-20 12:04:53 +09:00
IWASE Yusuke
56aff9adf3 pycodestyle: Ignore W504
Signed-off-by: IWASE Yusuke <iwase.yusuke0@gmail.com>
Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
2018-06-20 12:04:46 +09:00
IWASE Yusuke
db7338b8db BGPSpeaker: Advertise local routes to RR clients
The current implementation misses the mandatory attributes when sending
locally generated routes to its Route Reflector (RR) clients, then the
clients will reject the received routes.

This patch fixes to add or update attributes to for sending locally
generated routes its RR clients.

Signed-off-by: IWASE Yusuke <iwase.yusuke0@gmail.com>
Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
2018-06-20 12:04:30 +09:00
IWAMOTO Toshihiro
a6bda030d3 pip: Blacklist eventlet 0.23.0
This is to sync with OpenStack requirements.

Signed-off-by: IWAMOTO Toshihiro <iwamoto@valinux.co.jp>
Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
2018-06-20 11:10:25 +09:00
IWAMOTO Toshihiro
482aabcb1e lldp: Remove remaining SystemCapabilities.subtype from tests
Signed-off-by: IWAMOTO Toshihiro <iwamoto@valinux.co.jp>
Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
2018-06-20 10:42:59 +09:00
Marcin Chron
99fc573a9c lldp: fixed SystemCapabilities TLV
This patch removes 'Subtype' byte from SystemCapabilities TLV.
There was an inconsistency in offical IEEE document which was corrected
in 802.1AB-2009/Cor 1-2013.

Signed-off-by: Marcin Chron <marcin_miko1@o2.pl>
Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
2018-06-20 10:42:26 +09:00
FUJITA Tomonori
c29c9019ac Ryu 4.25
Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
v4.25
2018-06-01 20:43:17 +09:00
Joe Mader
cda5bc7825 allow versions of eventlet > 0.21.0 2018-05-13 09:40:00 -06:00
FUJITA Tomonori
1c008060fa Ryu 4.24
Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
v4.24
2018-04-01 15:15:49 +09:00
IWAMOTO Toshihiro
b8ebdbe961 ofproto: add Nicira extension ct_clear action
Signed-off-by: IWAMOTO Toshihiro <iwamoto@valinux.co.jp>
Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
2018-03-28 18:02:06 +09:00
IWASE Yusuke
4e10ba4438 ofproto: Encode data field on OFPErrorMsg
Currently, when Ryu failed to negotiate the OpenFlow version with a
switch, Ryu will send the OFPT_ERROR message with an error reason on its
data field.
But on Python 3, error reason string is a str type value and required to
be encoded into a bytes type value, otherwise causes an exception when
sending the message.

This patch fixes to encode the given str value into a bytes type value
in OFPErrorMsg.__init__() and solves this problem.

Signed-off-by: William Fisher <william.w.fisher@gmail.com>
Signed-off-by: IWASE Yusuke <iwase.yusuke0@gmail.com>
Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
2018-03-26 22:11:39 +09:00
IWASE Yusuke
3003d475d2 ofp_handler: Close socket when HELLO failed
With this patch, when failed to negotiate the OpenFlow version with a
switch, Ryu will close the socket connecting to the switch after sending
a OFPT_ERROR message.

Signed-off-by: IWASE Yusuke <iwase.yusuke0@gmail.com>
Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
2018-03-26 22:11:38 +09:00
IWASE Yusuke
afbc80352c controller: Wait for switch to disconnect connection
If a sender closes a socket immediately after sending some data, a
receiver can fail to receive full data from the sender.

This patch fixes to shutdown a socket with "SHUT_WR" (disallows further
sends only) and enables "Datapath" to wait for a switch to disconnect
the connection.

Signed-off-by: IWASE Yusuke <iwase.yusuke0@gmail.com>
Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
2018-03-26 22:11:32 +09:00
IWASE Yusuke
7a40d5c2f3 controller: Option to close socket after sending Message
Currently, Ryu does not provide the way to close a socket connecting to
a switch after sending all enqueued messages, but provides only the way
to close the socket immediately regardless of enqueued messages.

This patch adds a new option "close_socket" into "Datapath.send_msg()"
method and this option enables to close the socket after sending the
given message. This patch is convenient to close the socket after
sending OFPT_ERROR message to the switch.

Signed-off-by: IWASE Yusuke <iwase.yusuke0@gmail.com>
Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
2018-03-26 22:11:25 +09:00
IWASE Yusuke
976914f5e6 controller: Improve pylint result
Signed-off-by: IWASE Yusuke <iwase.yusuke0@gmail.com>
Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
2018-03-26 22:11:19 +09:00
IWASE Yusuke
fe06d87f65 test_requirements: Avoid using pip as library
Because importing "pip" in Python scripts is not supported usage of
"pip", this patch fixes to use "pkg_resources" + "urllib" instead.

Signed-off-by: IWASE Yusuke <iwase.yusuke0@gmail.com>
Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
2018-03-26 15:55:20 +09:00
IWASE Yusuke
a27c56a054 utils: Remove "parse_requirements" function
This patch removes unused function "parse_requirements" in order to
avoid using "pip" as a Python library.

Note: Officially "from pip import req as pip_req" is not supported usage
of "pip".

Reported-by: Katsaounis Molyvas Stamatios <mokats@intracom-telecom.com>
Signed-off-by: IWASE Yusuke <iwase.yusuke0@gmail.com>
Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
2018-03-26 15:55:18 +09:00
Thomas Bechtold
e6773539b5 Switch to msgpack in pip-requires
msgpack-python got renamed to msgpack[1] so use the new name.

[1] https://pypi.python.org/pypi/msgpack/0.5.1

Signed-off-by: Thomas Bechtold <tbechtold@suse.com>
Acked-By: Iwase Yusuke <iwase.yusuke0@gmail.com>
Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
2018-03-20 22:36:04 +09:00
IWASE Yusuke
a0f90115cc nicira_ext: Support DEC_NSH_TTL action
Signed-off-by: IWASE Yusuke <iwase.yusuke0@gmail.com>
Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
2018-03-20 22:32:51 +09:00
IWASE Yusuke
684b665290 nicira_ext: Support Network Service Header match
Signed-off-by: IWASE Yusuke <iwase.yusuke0@gmail.com>
Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
2018-03-20 22:32:50 +09:00
IWASE Yusuke
0841f3f253 doc: Fix unexpected indent in ofctl.api doc
Signed-off-by: IWASE Yusuke <iwase.yusuke0@gmail.com>
Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
2018-03-05 20:28:17 +09:00
FUJITA Tomonori
8a48b62c90 Ryu 4.23
Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
v4.23
2018-03-02 10:29:20 +09:00
IWASE Yusuke
09d2811569 doc: Document for ryu.lib.ovs
Signed-off-by: IWASE Yusuke <iwase.yusuke0@gmail.com>
Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
2018-02-10 18:45:58 +09:00
IWASE Yusuke
bd384997ac lib/ovs: Fix a typo of "--may-exist" option
Signed-off-by: IWASE Yusuke <iwase.yusuke0@gmail.com>
Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
2018-02-10 18:45:58 +09:00
FUJITA Tomonori
fb224e23b9 Ryu 4.22
Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
v4.22
2018-02-01 20:56:39 +09:00
IWASE Yusuke
fa172559c5 bgp/application: Add note for BGPSpeaker API reference
Signed-off-by: IWASE Yusuke <iwase.yusuke0@gmail.com>
Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
2018-01-23 17:16:47 +09:00
IWASE Yusuke
7d0b080e73 BGPSpeaker: Move docstring from __init__ to class
By the default, Sphinx does not include __init__() method for the
"autoclass" directive, and currently the description for the arguments
of BGPSpeaker is not generated.

This patch moves the docstring of __init__() to the class's docstring
and enables to generate the docs for the arguments of __init__().

Signed-off-by: IWASE Yusuke <iwase.yusuke0@gmail.com>
Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
2018-01-23 17:16:45 +09:00
IWASE Yusuke
80312a4d64 BGPSpeaker: Enable to notify adj-RIB-in changed
This patch introduces a new argument "adj_rib_in_change_handler" into
BGPSpeaker and enables to notify adj-RIB-in changed to watchers.

Also this patch enables to "bgp.application.RyuBGPSpeaker" to notify a
new event EventAdjRibInChanged to other Ryu applications.

Signed-off-by: IWASE Yusuke <iwase.yusuke0@gmail.com>
Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
2018-01-23 17:16:41 +09:00