- const union ofp_action *a;
- size_t left;
-
- ACTION_FOR_EACH (a, left, in, n_in) {
- enum ofperr error = ofpact_from_openflow11(a, out);
- if (error) {
- VLOG_WARN_RL(&rl, "bad action at offset %td (%s)",
- (a - in) * sizeof *a, ofperr_get_name(error));
- return error;
- }
- }
- if (left) {
- VLOG_WARN_RL(&rl, "bad action format at offset %zu",
- (n_in - left) * sizeof *a);
- return OFPERR_OFPBAC_BAD_LEN;
- }
-
- return 0;
+ return ofpacts_from_openflow(in, n_in, out, ofpact_from_openflow11);