/* [OF10] Section 5.3.2 */
static void
of10_switch_config_msg_print(netdissect_options *ndo,
- const u_char *cp)
+ const u_char *cp, u_int len _U_)
{
/* flags */
ND_PRINT("\n\t flags %s",
/* ibid */
static void
of10_port_mod_print(netdissect_options *ndo,
- const u_char *cp)
+ const u_char *cp, u_int len _U_)
{
/* port_no */
ND_PRINT("\n\t port_no %s", tok2str(ofpp_str, "%u", GET_BE_U_2(cp)));
/* [OF10] Section 5.3.4 */
static void
of10_queue_get_config_request_print(netdissect_options *ndo,
- const u_char *cp)
+ const u_char *cp, u_int len _U_)
{
/* port */
ND_PRINT("\n\t port %s", tok2str(ofpp_str, "%u", GET_BE_U_2(cp)));
/* [OF10] Section 5.4.2 */
static void
of10_flow_removed_print(netdissect_options *ndo,
- const u_char *cp)
+ const u_char *cp, u_int len _U_)
{
/* match */
of10_match_print(ndo, "\n\t ", cp);
/* [OF10] Section 5.4.3 */
static void
of10_port_status_print(netdissect_options *ndo,
- const u_char *cp)
+ const u_char *cp, u_int len _U_)
{
/* reason */
ND_PRINT("\n\t reason %s",
goto invalid;
if (ndo->ndo_vflag < 1)
break;
- of10_switch_config_msg_print(ndo, cp);
+ of10_switch_config_msg_print(ndo, cp, len);
return;
case OFPT_PORT_MOD:
if (len != OF_PORT_MOD_FIXLEN)
goto invalid;
if (ndo->ndo_vflag < 1)
break;
- of10_port_mod_print(ndo, cp);
+ of10_port_mod_print(ndo, cp, len);
return;
case OFPT_QUEUE_GET_CONFIG_REQUEST: /* [OF10] Section 5.3.4 */
if (len != OF_QUEUE_GET_CONFIG_REQUEST_FIXLEN)
goto invalid;
if (ndo->ndo_vflag < 1)
break;
- of10_queue_get_config_request_print(ndo, cp);
+ of10_queue_get_config_request_print(ndo, cp, len);
return;
case OFPT_FLOW_REMOVED:
if (len != OF_FLOW_REMOVED_FIXLEN)
goto invalid;
if (ndo->ndo_vflag < 1)
break;
- of10_flow_removed_print(ndo, cp);
+ of10_flow_removed_print(ndo, cp, len);
return;
case OFPT_PORT_STATUS: /* [OF10] Section 5.4.3 */
if (len != OF_PORT_STATUS_FIXLEN)
goto invalid;
if (ndo->ndo_vflag < 1)
break;
- of10_port_status_print(ndo, cp);
+ of10_port_status_print(ndo, cp, len);
return;
/* OpenFlow header, fixed-size message body and n * fixed-size data units. */
/* [OF13] Section 7.3.1 */
static void
of13_features_reply_print(netdissect_options *ndo,
- const u_char *cp)
+ const u_char *cp, u_int len _U_)
{
/* datapath_id */
ND_PRINT("\n\t dpid 0x%016" PRIx64, GET_BE_U_8(cp));
/* [OF13] Section 7.3.2 */
static void
of13_switch_config_msg_print(netdissect_options *ndo,
- const u_char *cp)
+ const u_char *cp, u_int len _U_)
{
/* flags */
ND_PRINT("\n\t flags %s",
/* [OF13] Section 7.3.3 */
static void
of13_table_mod_print(netdissect_options *ndo,
- const u_char *cp)
+ const u_char *cp, u_int len _U_)
{
/* table_id */
ND_PRINT("\n\t table_id %s", tok2str(ofptt_str, "%u", GET_U_1(cp)));
/* [OF13] Section 7.3.9 */
static void
of13_role_msg_print(netdissect_options *ndo,
- const u_char *cp)
+ const u_char *cp, u_int len _U_)
{
/* role */
ND_PRINT("\n\t role %s",
/* [OF13] Section 7.3.10 */
static void
of13_async_msg_print(netdissect_options *ndo,
- const u_char *cp)
+ const u_char *cp, u_int len _U_)
{
/* packet_in_mask[0] */
ND_PRINT("\n\t packet_in_mask[EM] 0x%08x", GET_BE_U_4(cp));
/* [OF13] Section 7.3.4.3 */
static void
of13_port_mod_print(netdissect_options *ndo,
- const u_char *cp)
+ const u_char *cp, u_int len _U_)
{
/* port_no */
ND_PRINT("\n\t port_no %s", tok2str(ofpp_str, "%u", GET_BE_U_4(cp)));
/* [OF13] Section 7.4.3 */
static void
of13_port_status_print(netdissect_options *ndo,
- const u_char *cp)
+ const u_char *cp, u_int len _U_)
{
/* reason */
ND_PRINT("\n\t reason %s",
/* [OF13] Section A.3.6 */
static void
of13_queue_get_config_request_print(netdissect_options *ndo,
- const u_char *cp)
+ const u_char *cp, u_int len _U_)
{
/* port */
ND_PRINT("\n\t port %s", tok2str(ofpp_str, "%u", GET_BE_U_4(cp)));
goto invalid;
if (ndo->ndo_vflag < 1)
break;
- of13_features_reply_print(ndo, cp);
+ of13_features_reply_print(ndo, cp, len);
return;
case OFPT_QUEUE_GET_CONFIG_REQUEST: /* [OF13] Section A.3.6 */
if (len != OF_QUEUE_GET_CONFIG_REQUEST_FIXLEN)
goto invalid;
if (ndo->ndo_vflag < 1)
break;
- of13_queue_get_config_request_print(ndo, cp);
+ of13_queue_get_config_request_print(ndo, cp, len);
return;
case OFPT_GET_CONFIG_REPLY: /* [OF13] Section 7.3.2 */
case OFPT_SET_CONFIG: /* ibid */
goto invalid;
if (ndo->ndo_vflag < 1)
break;
- of13_switch_config_msg_print(ndo, cp);
+ of13_switch_config_msg_print(ndo, cp, len);
return;
case OFPT_PORT_MOD: /* [OF13] Section 7.3.4.3 */
if (len != OF_PORT_MOD_FIXLEN)
goto invalid;
if (ndo->ndo_vflag < 1)
break;
- of13_port_mod_print(ndo, cp);
+ of13_port_mod_print(ndo, cp, len);
return;
case OFPT_ROLE_REQUEST: /* [OF13] Section 7.3.9 */
case OFPT_ROLE_REPLY: /* ibid */
goto invalid;
if (ndo->ndo_vflag < 1)
break;
- of13_role_msg_print(ndo, cp);
+ of13_role_msg_print(ndo, cp, len);
return;
case OFPT_PORT_STATUS: /* [OF13] Section 7.4.3 */
if (len != OF_PORT_STATUS_FIXLEN)
goto invalid;
if (ndo->ndo_vflag < 1)
break;
- of13_port_status_print(ndo, cp);
+ of13_port_status_print(ndo, cp, len);
return;
case OFPT_TABLE_MOD: /* [OF13] Section 7.3.3 */
if (len != OF_TABLE_MOD_FIXLEN)
goto invalid;
if (ndo->ndo_vflag < 1)
break;
- of13_table_mod_print(ndo, cp);
+ of13_table_mod_print(ndo, cp, len);
return;
case OFPT_SET_ASYNC: /* [OF13] Section 7.3.10 */
case OFPT_GET_ASYNC_REPLY: /* ibid */
goto invalid;
if (ndo->ndo_vflag < 1)
break;
- of13_async_msg_print(ndo, cp);
+ of13_async_msg_print(ndo, cp, len);
return;
/* OpenFlow header and variable-size data. */