From 883a2aacf9968aa1a8f3bcc043be740ab1f5889d Mon Sep 17 00:00:00 2001 From: Minoru TAKAHASHI Date: Mon, 28 Jul 2014 16:21:38 +0900 Subject: [PATCH] ofctl_v1_2/3: fix tcp_dst/src match fields when enclosed the value of "ip_proto" in double quotes, following match fields is not set at mod_flow_stats command: * tcp_dst, tcp_src this patch fixes this problem. Reported-by: jalee Signed-off-by: Minoru TAKAHASHI Signed-off-by: FUJITA Tomonori --- ryu/lib/ofctl_v1_2.py | 4 ++-- ryu/lib/ofctl_v1_3.py | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/ryu/lib/ofctl_v1_2.py b/ryu/lib/ofctl_v1_2.py index e179fee4..a01acafd 100644 --- a/ryu/lib/ofctl_v1_2.py +++ b/ryu/lib/ofctl_v1_2.py @@ -349,7 +349,7 @@ def to_match_tpsrc(value, match, rest): match_append = {inet.IPPROTO_TCP: match.set_tcp_src, inet.IPPROTO_UDP: match.set_udp_src} - nw_proto = rest.get('nw_proto', rest.get('ip_proto', 0)) + nw_proto = int(rest.get('nw_proto', rest.get('ip_proto', 0))) if nw_proto in match_append: match_append[nw_proto](value) @@ -360,7 +360,7 @@ def to_match_tpdst(value, match, rest): match_append = {inet.IPPROTO_TCP: match.set_tcp_dst, inet.IPPROTO_UDP: match.set_udp_dst} - nw_proto = rest.get('nw_proto', rest.get('ip_proto', 0)) + nw_proto = int(rest.get('nw_proto', rest.get('ip_proto', 0))) if nw_proto in match_append: match_append[nw_proto](value) diff --git a/ryu/lib/ofctl_v1_3.py b/ryu/lib/ofctl_v1_3.py index fb139cb1..4a27031f 100644 --- a/ryu/lib/ofctl_v1_3.py +++ b/ryu/lib/ofctl_v1_3.py @@ -373,7 +373,7 @@ def to_match_tpsrc(value, match, rest): match_append = {inet.IPPROTO_TCP: match.set_tcp_src, inet.IPPROTO_UDP: match.set_udp_src} - nw_proto = rest.get('nw_proto', rest.get('ip_proto', 0)) + nw_proto = int(rest.get('nw_proto', rest.get('ip_proto', 0))) if nw_proto in match_append: match_append[nw_proto](value) @@ -384,7 +384,7 @@ def to_match_tpdst(value, match, rest): match_append = {inet.IPPROTO_TCP: match.set_tcp_dst, inet.IPPROTO_UDP: match.set_udp_dst} - nw_proto = rest.get('nw_proto', rest.get('ip_proto', 0)) + nw_proto = int(rest.get('nw_proto', rest.get('ip_proto', 0))) if nw_proto in match_append: match_append[nw_proto](value)