pyloxi: support OXM member in set-field actions
The C backend needs more work to support of_oxm_t, so I've added a hack so it
can keep using of_octets_t.
Also added several set-field action testcases.
diff --git a/py_gen/templates/_pack.py b/py_gen/templates/_pack.py
index 4714e97..b6e8ef7 100644
--- a/py_gen/templates/_pack.py
+++ b/py_gen/templates/_pack.py
@@ -56,6 +56,11 @@
:: #endfor
:: if length_member_index != None:
length = sum([len(x) for x in packed])
+:: if ofclass.name == 'of_action_set_field':
+ pad_len = (length + 7)/8*8 - length
+ length += pad_len
+ packed.append('\x00' * pad_len)
+:: #endif
packed[${length_member_index}] = ${gen_pack_expr(length_member.oftype, 'length')}
:: #endif
:: if ofclass.name == 'of_match_v3':