Useful for debugging calling code that waits for or uses reponses.
Signed-off-by: Jason Kölker <[email protected]>
---
ryu/lib/ofctl_utils.py | 15 +++++++++++++++
ryu/lib/ofctl_v1_0.py | 8 ++++----
ryu/lib/ofctl_v1_2.py | 10 +++++-----
ryu/lib/ofctl_v1_3.py | 12 ++++++------
ryu/lib/ofctl_v1_4.py | 12 ++++++------
5 files changed, 36 insertions(+), 21 deletions(-)
diff --git a/ryu/lib/ofctl_utils.py b/ryu/lib/ofctl_utils.py
index 3ec8c36..bc0e740 100644
--- a/ryu/lib/ofctl_utils.py
+++ b/ryu/lib/ofctl_utils.py
@@ -23,6 +23,21 @@ def str_to_int(str_num):
return int(str(str_num), 0)
+def send_msg(dp, msg, logger=None):
+ if msg.xid is None:
+ dp.set_xid(msg)
+
+ # NOTE(jkoelker) use the logger the calling code wants us to
+ if logger is not None:
+ log = logger
+
+ else:
+ log = LOG
+
+ log.debug('Sending message with xid(%x): %s', msg.xid, msg)
+ dp.send_msg(msg)
+
+
class OFCtlUtil(object):
def __init__(self, ofproto):
diff --git a/ryu/lib/ofctl_v1_0.py b/ryu/lib/ofctl_v1_0.py
index 4b8b9b0..af22f87 100644
--- a/ryu/lib/ofctl_v1_0.py
+++ b/ryu/lib/ofctl_v1_0.py
@@ -284,7 +284,7 @@ def send_stats_request(dp, stats, waiters, msgs):
lock = hub.Event()
previous_msg_len = len(msgs)
waiters_per_dp[stats.xid] = (lock, msgs)
- dp.send_msg(stats)
+ ofctl_utils.send_msg(dp, stats, LOG)
lock.wait(timeout=DEFAULT_TIMEOUT)
current_msg_len = len(msgs)
@@ -536,7 +536,7 @@ def mod_flow_entry(dp, flow, cmd):
flags=flags,
actions=actions)
- dp.send_msg(flow_mod)
+ ofctl_utils.send_msg(dp, flow_mod, LOG)
def delete_flow_entry(dp):
@@ -547,7 +547,7 @@ def delete_flow_entry(dp):
datapath=dp, match=match, cookie=0,
command=dp.ofproto.OFPFC_DELETE)
- dp.send_msg(flow_mod)
+ ofctl_utils.send_msg(dp, flow_mod, LOG)
def mod_port_behavior(dp, port_config):
@@ -560,4 +560,4 @@ def mod_port_behavior(dp, port_config):
port_mod = dp.ofproto_parser.OFPPortMod(
dp, port_no, hw_addr, config, mask, advertise)
- dp.send_msg(port_mod)
+ ofctl_utils.send_msg(dp, port_mod, LOG)
diff --git a/ryu/lib/ofctl_v1_2.py b/ryu/lib/ofctl_v1_2.py
index cb21bb6..586f7c5 100644
--- a/ryu/lib/ofctl_v1_2.py
+++ b/ryu/lib/ofctl_v1_2.py
@@ -402,7 +402,7 @@ def send_stats_request(dp, stats, waiters, msgs):
lock = hub.Event()
previous_msg_len = len(msgs)
waiters_per_dp[stats.xid] = (lock, msgs)
- dp.send_msg(stats)
+ ofctl_utils.send_msg(dp, stats, LOG)
lock.wait(timeout=DEFAULT_TIMEOUT)
current_msg_len = len(msgs)
@@ -900,7 +900,7 @@ def mod_flow_entry(dp, flow, cmd):
hard_timeout, priority, buffer_id, out_port, out_group,
flags, match, inst)
- dp.send_msg(flow_mod)
+ ofctl_utils.send_msg(dp, flow_mod, LOG)
def mod_group_entry(dp, group, cmd):
@@ -932,7 +932,7 @@ def mod_group_entry(dp, group, cmd):
group_mod = dp.ofproto_parser.OFPGroupMod(
dp, cmd, type_, group_id, buckets)
- dp.send_msg(group_mod)
+ ofctl_utils.send_msg(dp, group_mod, LOG)
def mod_port_behavior(dp, port_config):
@@ -945,7 +945,7 @@ def mod_port_behavior(dp, port_config):
port_mod = dp.ofproto_parser.OFPPortMod(
dp, port_no, hw_addr, config, mask, advertise)
- dp.send_msg(port_mod)
+ ofctl_utils.send_msg(dp, port_mod, LOG)
def send_experimenter(dp, exp):
@@ -961,4 +961,4 @@ def send_experimenter(dp, exp):
expmsg = dp.ofproto_parser.OFPExperimenter(
dp, experimenter, exp_type, data)
- dp.send_msg(expmsg)
+ ofctl_utils.send_msg(dp, expmsg, LOG)
diff --git a/ryu/lib/ofctl_v1_3.py b/ryu/lib/ofctl_v1_3.py
index 5249d34..474e2fa 100644
--- a/ryu/lib/ofctl_v1_3.py
+++ b/ryu/lib/ofctl_v1_3.py
@@ -440,7 +440,7 @@ def send_stats_request(dp, stats, waiters, msgs):
lock = hub.Event()
previous_msg_len = len(msgs)
waiters_per_dp[stats.xid] = (lock, msgs)
- dp.send_msg(stats)
+ ofctl_utils.send_msg(dp, stats, LOG)
lock.wait(timeout=DEFAULT_TIMEOUT)
current_msg_len = len(msgs)
@@ -1055,7 +1055,7 @@ def mod_flow_entry(dp, flow, cmd):
hard_timeout, priority, buffer_id, out_port, out_group,
flags, match, inst)
- dp.send_msg(flow_mod)
+ ofctl_utils.send_msg(dp, flow_mod, LOG)
def mod_meter_entry(dp, meter, cmd):
@@ -1102,7 +1102,7 @@ def mod_meter_entry(dp, meter, cmd):
meter_mod = dp.ofproto_parser.OFPMeterMod(
dp, cmd, flags, meter_id, bands)
- dp.send_msg(meter_mod)
+ ofctl_utils.send_msg(dp, meter_mod, LOG)
def mod_group_entry(dp, group, cmd):
@@ -1134,7 +1134,7 @@ def mod_group_entry(dp, group, cmd):
group_mod = dp.ofproto_parser.OFPGroupMod(
dp, cmd, type_, group_id, buckets)
- dp.send_msg(group_mod)
+ ofctl_utils.send_msg(dp, group_mod, LOG)
def mod_port_behavior(dp, port_config):
@@ -1147,7 +1147,7 @@ def mod_port_behavior(dp, port_config):
port_mod = dp.ofproto_parser.OFPPortMod(
dp, port_no, hw_addr, config, mask, advertise)
- dp.send_msg(port_mod)
+ ofctl_utils.send_msg(dp, port_mod, LOG)
def send_experimenter(dp, exp):
@@ -1163,4 +1163,4 @@ def send_experimenter(dp, exp):
expmsg = dp.ofproto_parser.OFPExperimenter(
dp, experimenter, exp_type, data)
- dp.send_msg(expmsg)
+ ofctl_utils.send_msg(dp, expmsg, LOG)
diff --git a/ryu/lib/ofctl_v1_4.py b/ryu/lib/ofctl_v1_4.py
index e58a6ac..19232ef 100644
--- a/ryu/lib/ofctl_v1_4.py
+++ b/ryu/lib/ofctl_v1_4.py
@@ -354,7 +354,7 @@ def send_stats_request(dp, stats, waiters, msgs):
lock = hub.Event()
previous_msg_len = len(msgs)
waiters_per_dp[stats.xid] = (lock, msgs)
- dp.send_msg(stats)
+ ofctl_utils.send_msg(dp, stats, LOG)
lock.wait(timeout=DEFAULT_TIMEOUT)
current_msg_len = len(msgs)
@@ -850,7 +850,7 @@ def mod_flow_entry(dp, flow, cmd):
hard_timeout, priority, buffer_id, out_port, out_group,
importance, flags, match, inst)
- dp.send_msg(flow_mod)
+ ofctl_utils.send_msg(dp, flow_mod, LOG)
def mod_meter_entry(dp, meter, cmd):
@@ -892,7 +892,7 @@ def mod_meter_entry(dp, meter, cmd):
meter_mod = dp.ofproto_parser.OFPMeterMod(
dp, cmd, flags, meter_id, bands)
- dp.send_msg(meter_mod)
+ ofctl_utils.send_msg(dp, meter_mod, LOG)
def mod_group_entry(dp, group, cmd):
@@ -921,7 +921,7 @@ def mod_group_entry(dp, group, cmd):
group_mod = dp.ofproto_parser.OFPGroupMod(
dp, cmd, group_type, group_id, buckets)
- dp.send_msg(group_mod)
+ ofctl_utils.send_msg(dp, group_mod, LOG)
def mod_port_behavior(dp, port_config):
@@ -961,7 +961,7 @@ def mod_port_behavior(dp, port_config):
port_mod = dp.ofproto_parser.OFPPortMod(
dp, port_no, hw_addr, config, mask, prop)
- dp.send_msg(port_mod)
+ ofctl_utils.send_msg(dp, port_mod, LOG)
def send_experimenter(dp, exp):
@@ -977,4 +977,4 @@ def send_experimenter(dp, exp):
expmsg = dp.ofproto_parser.OFPExperimenter(
dp, experimenter, exp_type, data)
- dp.send_msg(expmsg)
+ ofctl_utils.send_msg(dp, expmsg, LOG)
--
2.7.3
------------------------------------------------------------------------------
Transform Data into Opportunity.
Accelerate data analysis in your applications with
Intel Data Analytics Acceleration Library.
Click to learn more.
http://pubads.g.doubleclick.net/gampad/clk?id=278785471&iu=/4140
_______________________________________________
Ryu-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/ryu-devel