/* \summary: OpenFlow protocol version 1.0 printer */
#ifdef HAVE_CONFIG_H
-#include "config.h"
+#include <config.h>
#endif
#include "netdissect-stdinc.h"
#include "oui.h"
#include "openflow.h"
-static const char tstr[] = " [|openflow]";
#define OFPT_HELLO 0x00
#define OFPT_ERROR 0x01
if (vid == OFP_VLAN_NONE)
return "NONE";
fmt = (vid > 0 && vid < 0x0fff) ? "%u" : "%u (bogus)";
- snprintf(buf, sizeof(buf), fmt, vid);
+ nd_snprintf(buf, sizeof(buf), fmt, vid);
return buf;
}
pcp_str(const uint8_t pcp)
{
static char buf[sizeof("255 (bogus)")];
- snprintf(buf, sizeof(buf), pcp <= 7 ? "%u" : "%u (bogus)", pcp);
+ nd_snprintf(buf, sizeof(buf), pcp <= 7 ? "%u" : "%u (bogus)", pcp);
return buf;
}
return cp + len;
trunc:
- ND_PRINT("%s", tstr);
+ nd_print_trunc(ndo);
return ep;
}
cp += 4;
/* data */
ND_PRINT(", data '");
- if (fn_printn(ndo, cp, len - 8, ep)) {
+ if (nd_printn(ndo, cp, len - 8, ep)) {
ND_PRINT("'");
goto trunc;
}
/* already checked that len >= 4 */
/* data */
ND_PRINT(", data '");
- if (fn_printn(ndo, cp, len - 4, ep)) {
+ if (nd_printn(ndo, cp, len - 4, ep)) {
ND_PRINT("'");
goto trunc;
}
ND_TCHECK_LEN(cp0, len);
return cp0 + len;
trunc:
- ND_PRINT("%s", tstr);
+ nd_print_trunc(ndo);
return ep;
}
ND_TCHECK_LEN(cp0, len);
return cp0 + len;
trunc:
- ND_PRINT("%s", tstr);
+ nd_print_trunc(ndo);
return ep;
}
ND_TCHECK_LEN(cp, len);
return cp + len;
trunc:
- ND_PRINT("%s", tstr);
+ nd_print_trunc(ndo);
return ep;
}
ND_TCHECK_LEN(cp, len);
return cp + len;
trunc:
- ND_PRINT("%s", tstr);
+ nd_print_trunc(ndo);
return ep;
}
ND_TCHECK_LEN(cp, len);
return cp + len;
trunc:
- ND_PRINT("%s", tstr);
+ nd_print_trunc(ndo);
return ep;
}
return cp + len;
trunc:
- ND_PRINT("%s", tstr);
+ nd_print_trunc(ndo);
return ep;
}
/* name */
ND_TCHECK_LEN(cp, OFP_MAX_PORT_NAME_LEN);
ND_PRINT(", name '");
- fn_print(ndo, cp, cp + OFP_MAX_PORT_NAME_LEN);
+ nd_print(ndo, cp, cp + OFP_MAX_PORT_NAME_LEN);
ND_PRINT("'");
cp += OFP_MAX_PORT_NAME_LEN;
ND_TCHECK_LEN(cp0, len0);
return cp0 + len0;
trunc:
- ND_PRINT("%s", tstr);
+ nd_print_trunc(ndo);
return ep;
}
ND_TCHECK_LEN(cp0, len0);
return cp0 + len0;
trunc:
- ND_PRINT("%s", tstr);
+ nd_print_trunc(ndo);
return ep;
}
ND_TCHECK_LEN(cp0, len0);
return cp0 + len0;
trunc:
- ND_PRINT("%s", tstr);
+ nd_print_trunc(ndo);
return ep;
}
return cp + 2;
trunc:
- ND_PRINT("%s", tstr);
+ nd_print_trunc(ndo);
return ep;
}
ND_TCHECK_LEN(cp0, len0);
return cp0 + len0;
trunc:
- ND_PRINT("%s", tstr);
+ nd_print_trunc(ndo);
return ep;
}
return of10_phy_ports_print(ndo, cp, ep, len - OF_SWITCH_FEATURES_LEN);
trunc:
- ND_PRINT("%s", tstr);
+ nd_print_trunc(ndo);
return ep;
}
return of10_actions_print(ndo, "\n\t ", cp, ep, len - OF_FLOW_MOD_LEN);
trunc:
- ND_PRINT("%s", tstr);
+ nd_print_trunc(ndo);
return ep;
}
return cp + 4;
trunc:
- ND_PRINT("%s", tstr);
+ nd_print_trunc(ndo);
return ep;
}
ND_TCHECK_LEN(cp0, len0);
return cp0 + len0;
trunc:
- ND_PRINT("%s", tstr);
+ nd_print_trunc(ndo);
return ep;
}
/* mfr_desc */
ND_TCHECK_LEN(cp, DESC_STR_LEN);
ND_PRINT("\n\t mfr_desc '");
- fn_print(ndo, cp, cp + DESC_STR_LEN);
+ nd_print(ndo, cp, cp + DESC_STR_LEN);
ND_PRINT("'");
cp += DESC_STR_LEN;
/* hw_desc */
ND_TCHECK_LEN(cp, DESC_STR_LEN);
ND_PRINT("\n\t hw_desc '");
- fn_print(ndo, cp, cp + DESC_STR_LEN);
+ nd_print(ndo, cp, cp + DESC_STR_LEN);
ND_PRINT("'");
cp += DESC_STR_LEN;
/* sw_desc */
ND_TCHECK_LEN(cp, DESC_STR_LEN);
ND_PRINT("\n\t sw_desc '");
- fn_print(ndo, cp, cp + DESC_STR_LEN);
+ nd_print(ndo, cp, cp + DESC_STR_LEN);
ND_PRINT("'");
cp += DESC_STR_LEN;
/* serial_num */
ND_TCHECK_LEN(cp, SERIAL_NUM_LEN);
ND_PRINT("\n\t serial_num '");
- fn_print(ndo, cp, cp + SERIAL_NUM_LEN);
+ nd_print(ndo, cp, cp + SERIAL_NUM_LEN);
ND_PRINT("'");
cp += SERIAL_NUM_LEN;
/* dp_desc */
ND_TCHECK_LEN(cp, DESC_STR_LEN);
ND_PRINT("\n\t dp_desc '");
- fn_print(ndo, cp, cp + DESC_STR_LEN);
+ nd_print(ndo, cp, cp + DESC_STR_LEN);
ND_PRINT("'");
return cp + DESC_STR_LEN;
ND_TCHECK_LEN(cp, len);
return cp + len;
trunc:
- ND_PRINT("%s", tstr);
+ nd_print_trunc(ndo);
return ep;
}
ND_TCHECK_LEN(cp0, len0);
return cp0 + len0;
trunc:
- ND_PRINT("%s", tstr);
+ nd_print_trunc(ndo);
return ep;
}
ND_TCHECK_LEN(cp, len);
return cp + len;
trunc:
- ND_PRINT("%s", tstr);
+ nd_print_trunc(ndo);
return ep;
}
/* name */
ND_TCHECK_LEN(cp, OFP_MAX_TABLE_NAME_LEN);
ND_PRINT(", name '");
- fn_print(ndo, cp, cp + OFP_MAX_TABLE_NAME_LEN);
+ nd_print(ndo, cp, cp + OFP_MAX_TABLE_NAME_LEN);
ND_PRINT("'");
cp += OFP_MAX_TABLE_NAME_LEN;
/* wildcards */
ND_TCHECK_LEN(cp0, len0);
return cp0 + len0;
trunc:
- ND_PRINT("%s", tstr);
+ nd_print_trunc(ndo);
return ep;
}
ND_TCHECK_LEN(cp0, len0);
return cp0 + len0;
trunc:
- ND_PRINT("%s", tstr);
+ nd_print_trunc(ndo);
return ep;
}
ND_TCHECK_LEN(cp0, len0);
return cp0 + len0;
trunc:
- ND_PRINT("%s", tstr);
+ nd_print_trunc(ndo);
return ep;
}
return cp0 + len;
trunc:
- ND_PRINT("%s", tstr);
+ nd_print_trunc(ndo);
return ep;
}
ND_TCHECK_LEN(cp0, len0);
return cp0 + len0;
trunc:
- ND_PRINT("%s", tstr);
+ nd_print_trunc(ndo);
return ep;
}
return of10_packet_data_print(ndo, cp, ep, len - (OF_PACKET_IN_LEN - 2));
trunc:
- ND_PRINT("%s", tstr);
+ nd_print_trunc(ndo);
return ep;
}
return cp + 8;
trunc:
- ND_PRINT("%s", tstr);
+ nd_print_trunc(ndo);
return ep;
}
return of10_data_print(ndo, cp, ep, len - OF_ERROR_MSG_LEN);
trunc:
- ND_PRINT("%s", tstr);
+ nd_print_trunc(ndo);
return ep;
}
ND_TCHECK_LEN(cp0, len0 - OF_HEADER_LEN);
return cp0 + len0 - OF_HEADER_LEN;
trunc:
- ND_PRINT("%s", tstr);
+ nd_print_trunc(ndo);
return ep;
}