When omit the parameter of "flags" in mod_meter_entry(), following error log
will be shown.
example)
1.use mod_meter_entry() with omitting the parameter of "flags".
curl -X POST -d '{
"dpid": 1,
"meter_id": 1
}' http://localhost:8080/stats/meterentry/delete
2.following error log will be shown.
Unknown flags: 0
This patch fixes the problem.
Signed-off-by: Minoru TAKAHASHI <[email protected]>
---
ryu/lib/ofctl_v1_3.py | 16 +++++++++-------
1 file changed, 9 insertions(+), 7 deletions(-)
diff --git a/ryu/lib/ofctl_v1_3.py b/ryu/lib/ofctl_v1_3.py
index 81f9f70..94a3a33 100644
--- a/ryu/lib/ofctl_v1_3.py
+++ b/ryu/lib/ofctl_v1_3.py
@@ -1008,14 +1008,16 @@ def mod_meter_entry(dp, flow, cmd):
'BURST': dp.ofproto.OFPMF_BURST,
'STATS': dp.ofproto.OFPMF_STATS}
- flow_flags = flow.get('flags')
- if not isinstance(flow_flags, list):
- flow_flags = [flow_flags]
flags = 0
- for flag in flow_flags:
- flags |= flags_convert.get(flag, 0)
- if not flags:
- LOG.error('Unknown flags: %s', flow.get('flags'))
+ if 'flags' in flow:
+ flow_flags = flow['flags']
+ if not isinstance(flow_flags, list):
+ flow_flags = [flow_flags]
+ for flag in flow_flags:
+ if flag not in flags_convert:
+ LOG.error('Unknown flag: %s', flag)
+ continue
+ flags |= flags_convert.get(flag)
meter_id = int(flow.get('meter_id', 0))
--
1.9.1
------------------------------------------------------------------------------
Presto, an open source distributed SQL query engine for big data, initially
developed by Facebook, enables you to easily query your data on Hadoop in a
more interactive manner. Teradata is also now providing full enterprise
support for Presto. Download a free open source copy now.
http://pubads.g.doubleclick.net/gampad/clk?id=250295911&iu=/4140
_______________________________________________
Ryu-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/ryu-devel