update pyloxi to b8957d6b02d68b19fa531bdfe89783a13d2d4f7f
diff --git a/src/python/loxi/of12/instruction.py b/src/python/loxi/of12/instruction.py
index 2f7f1bf..38bcdb6 100644
--- a/src/python/loxi/of12/instruction.py
+++ b/src/python/loxi/of12/instruction.py
@@ -306,6 +306,18 @@
q.text('}')
+def parse_experimenter(reader):
+ experimenter, = reader.peek("!4xL")
+ if experimenter == 0x005c16c7: # Big Switch Networks
+ subtype, = reader.peek("!8xL")
+ else:
+ raise loxi.ProtocolError("unexpected experimenter id %#x" % experimenter)
+
+ if subtype in experimenter_parsers[experimenter]:
+ return experimenter_parsers[experimenter][subtype](reader)
+ else:
+ raise loxi.ProtocolError("unexpected experimenter id %#x subtype %#x" % (experimenter, subtype))
+
parsers = {
const.OFPIT_GOTO_TABLE : goto_table.unpack,
const.OFPIT_WRITE_METADATA : write_metadata.unpack,
@@ -313,3 +325,6 @@
const.OFPIT_APPLY_ACTIONS : apply_actions.unpack,
const.OFPIT_CLEAR_ACTIONS : clear_actions.unpack,
}
+
+experimenter_parsers = {
+}