case OFPCRR_EXPERIMENTER:
ds_put_cstr(string, "experimenter_data_changed");
break;
+ case OFPCRR_N_REASONS:
default:
OVS_NOT_REACHED();
}
case OFPPR_MODIFY:
return "modify";
+ case OFPPR_N_REASONS:
default:
snprintf(reasonbuf, bufsize, "%d", (int) reason);
return reasonbuf;
case OFPCRR_EXPERIMENTER:
return "experimenter_data_changed";
+ case OFPCRR_N_REASONS:
default:
snprintf(reasonbuf, bufsize, "%d", (int) reason);
return reasonbuf;
case OFPTR_VACANCY_UP:
return "vacancy_up";
+ case OFPTR_N_REASONS:
default:
snprintf(reasonbuf, bufsize, "%d", (int) reason);
return reasonbuf;
case OFPRFR_METER_MOD:
return "meter_mod_request";
+ case OFPRFR_N_REASONS:
default:
snprintf(reasonbuf, bufsize, "%d", (int) reason);
return reasonbuf;
}
} else if (raw == OFPRAW_OFPT14_SET_ASYNC ||
raw == OFPRAW_OFPT14_GET_ASYNC_REPLY) {
+ enum ofperr error = 0;
uint32_t role[2][OAM_N_TYPES] = {{0}};
uint32_t type;
- ofputil_decode_set_async_config(oh, role[0], role[1], true);
+ if (raw == OFPRAW_OFPT14_GET_ASYNC_REPLY) {
+ error = ofputil_decode_set_async_config(oh, role[0], role[1], true);
+ }
+ else if (raw == OFPRAW_OFPT14_SET_ASYNC) {
+ error = ofputil_decode_set_async_config(oh, role[0], role[1],
+ false);
+ }
+ if (error) {
+ ofp_print_error(string, error);
+ return;
+ }
+
for (i = 0; i < 2; i++) {
ds_put_format(string, "\n %s:\n", i == 0 ? "master" : "slave");
ds_put_cstr(string, "meter_mod");
ofp_print_meter_mod__(string, rf.meter_mod);
break;
+
+ case OFPRFR_N_REASONS:
+ OVS_NOT_REACHED();
}
ofputil_destroy_requestforward(&rf);
}