- ND_PRINT((ndo, " grp="));
- if ((advance = pimv2_addr_print(ndo, bp, pimv2_group, 0)) < 0) {
- ND_PRINT((ndo, "..."));
- break;
+ len -= advance;
+ ND_PRINT(" grp=");
+ if ((advance = pimv2_addr_print(ndo, bp, len, pimv2_group, pimv2_addr_len, 0)) < 0)
+ goto trunc;
+ bp += advance;
+ len -= advance;
+ ND_PRINT(" forwarder=");
+ if ((advance = pimv2_addr_print(ndo, bp, len, pimv2_unicast, pimv2_addr_len, 0)) < 0)
+ goto trunc;
+ bp += advance;
+ len -= advance;
+ if (len < 2)
+ goto trunc;
+ ND_PRINT(" TUNR ");
+ unsigned_relts_print(ndo, GET_BE_U_2(bp));
+ break;
+
+ case PIMV2_TYPE_DF_ELECTION:
+ subtype = PIM_SUBTYPE(GET_U_1(pim->pim_rsv));
+ ND_PRINT("\n\t %s,", tok2str( pimv2_df_election_flag_values,
+ "Unknown", subtype) );
+
+ ND_PRINT(" rpa=");
+ if ((advance = pimv2_addr_print(ndo, bp, len, pimv2_unicast, pimv2_addr_len, 0)) < 0) {
+ goto trunc;