case ICMP6_DST_UNREACH_NOROUTE: /* fall through */
case ICMP6_DST_UNREACH_ADMIN:
case ICMP6_DST_UNREACH_ADDR:
- ND_PRINT(" %s",ip6addr_string(ndo, oip->ip6_dst));
+ ND_PRINT(" %s",GET_IP6ADDR_STRING(oip->ip6_dst));
break;
case ICMP6_DST_UNREACH_BEYONDSCOPE:
ND_PRINT(" %s, source address %s",
- ip6addr_string(ndo, oip->ip6_dst),
- ip6addr_string(ndo, oip->ip6_src));
+ GET_IP6ADDR_STRING(oip->ip6_dst),
+ GET_IP6ADDR_STRING(oip->ip6_src));
break;
case ICMP6_DST_UNREACH_NOPORT:
if ((ouh = get_upperlayer(ndo, (const u_char *)oip, &prot))
switch (prot) {
case IPPROTO_TCP:
ND_PRINT(", %s tcp port %s",
- ip6addr_string(ndo, oip->ip6_dst),
+ GET_IP6ADDR_STRING(oip->ip6_dst),
tcpport_string(ndo, dport));
break;
case IPPROTO_UDP:
ND_PRINT(", %s udp port %s",
- ip6addr_string(ndo, oip->ip6_dst),
+ GET_IP6ADDR_STRING(oip->ip6_dst),
udpport_string(ndo, dport));
break;
default:
ND_PRINT(", %s protocol %u port %u unreachable",
- ip6addr_string(ndo, oip->ip6_dst),
+ GET_IP6ADDR_STRING(oip->ip6_dst),
prot, dport);
break;
}
switch (icmp6_code) {
case ICMP6_TIME_EXCEED_TRANSIT:
ND_PRINT(" for %s",
- ip6addr_string(ndo, oip->ip6_dst));
+ GET_IP6ADDR_STRING(oip->ip6_dst));
break;
case ICMP6_TIME_EXCEED_REASSEMBLY:
ND_PRINT(" (reassembly)");
const struct nd_neighbor_solicit *p;
p = (const struct nd_neighbor_solicit *)dp;
ND_TCHECK_16(p->nd_ns_target);
- ND_PRINT(", who has %s", ip6addr_string(ndo, p->nd_ns_target));
+ ND_PRINT(", who has %s", GET_IP6ADDR_STRING(p->nd_ns_target));
if (ndo->ndo_vflag) {
#define NDSOLLEN 24
if (icmp6_opt_print(ndo, (const u_char *)dp + NDSOLLEN,
p = (const struct nd_neighbor_advert *)dp;
ND_TCHECK_16(p->nd_na_target);
ND_PRINT(", tgt is %s",
- ip6addr_string(ndo, p->nd_na_target));
+ GET_IP6ADDR_STRING(p->nd_na_target));
if (ndo->ndo_vflag) {
ND_PRINT(", Flags [%s]",
bittok2str(icmp6_nd_na_flag_values,
p = (const struct nd_redirect *)dp;
ND_TCHECK_16(p->nd_rd_dst);
- ND_PRINT(", %s", ip6addr_string(ndo, p->nd_rd_dst));
+ ND_PRINT(", %s", GET_IP6ADDR_STRING(p->nd_rd_dst));
ND_TCHECK_16(p->nd_rd_target);
- ND_PRINT(" to %s", ip6addr_string(ndo, p->nd_rd_target));
+ ND_PRINT(" to %s", GET_IP6ADDR_STRING(p->nd_rd_target));
#define REDIRECTLEN 40
if (ndo->ndo_vflag) {
if (icmp6_opt_print(ndo, (const u_char *)dp + REDIRECTLEN,
p = (const u_char *)(dp + 1);
while (p < cp) {
ND_TCHECK_16(p);
- ND_PRINT(", %s", ip6addr_string(ndo, p));
+ ND_PRINT(", %s", GET_IP6ADDR_STRING(p));
p += 16;
}
}
opp = (const struct nd_opt_prefix_info *)op;
ND_TCHECK_16(opp->nd_opt_pi_prefix);
ND_PRINT("%s/%u%s, Flags [%s], valid time %s",
- ip6addr_string(ndo, opp->nd_opt_pi_prefix),
+ GET_IP6ADDR_STRING(opp->nd_opt_pi_prefix),
GET_U_1(opp->nd_opt_pi_prefix_len),
(opt_len != 4) ? "badlen" : "",
bittok2str(icmp6_opt_pi_flag_values, "none", GET_U_1(opp->nd_opt_pi_flags_reserved)),
for (i = 0; i < l; i++) {
ND_TCHECK_16(oprd->nd_opt_rdnss_addr[i]);
ND_PRINT(" addr: %s",
- ip6addr_string(ndo, oprd->nd_opt_rdnss_addr[i]));
+ GET_IP6ADDR_STRING(oprd->nd_opt_rdnss_addr[i]));
}
break;
case ND_OPT_DNSSL:
return;
ND_PRINT("max resp delay: %u ", GET_BE_U_2(mp->mld6_maxdelay));
- ND_PRINT("addr: %s", ip6addr_string(ndo, mp->mld6_addr));
+ ND_PRINT("addr: %s", GET_IP6ADDR_STRING(mp->mld6_addr));
}
static void
return;
}
ND_TCHECK_LEN(bp + 4 + group, sizeof(nd_ipv6));
- ND_PRINT(" [gaddr %s", ip6addr_string(ndo, bp + group + 4));
+ ND_PRINT(" [gaddr %s", GET_IP6ADDR_STRING(bp + group + 4));
ND_PRINT(" %s", tok2str(mldv2report2str, " [v2-report-#%u]",
GET_U_1(bp + group)));
nsrcs = GET_BE_U_2(bp + group + 2);
for (j = 0; j < nsrcs; j++) {
ND_TCHECK_LEN(bp + group + 20 + (j * sizeof(nd_ipv6)),
sizeof(nd_ipv6));
- ND_PRINT(" %s", ip6addr_string(ndo, bp + group + 20 + (j * sizeof(nd_ipv6))));
+ ND_PRINT(" %s", GET_IP6ADDR_STRING(bp + group + 20 + (j * sizeof(nd_ipv6))));
}
ND_PRINT(" }");
}
ND_PRINT(" [max resp delay=%u]", mrt);
}
ND_TCHECK_LEN(bp + 8, sizeof(nd_ipv6));
- ND_PRINT(" [gaddr %s", ip6addr_string(ndo, bp + 8));
+ ND_PRINT(" [gaddr %s", GET_IP6ADDR_STRING(bp + 8));
if (ndo->ndo_vflag) {
ND_TCHECK_1(bp + 25);
for (i = 0; i < nsrcs; i++) {
ND_TCHECK_LEN(bp + 28 + (i * sizeof(nd_ipv6)),
sizeof(nd_ipv6));
- ND_PRINT(" %s", ip6addr_string(ndo, bp + 28 + (i * sizeof(nd_ipv6))));
+ ND_PRINT(" %s", GET_IP6ADDR_STRING(bp + 28 + (i * sizeof(nd_ipv6))));
}
ND_PRINT(" }");
} else
break;
}
ND_PRINT(", subject=%s",
- ip6addr_string(ndo, cp));
+ GET_IP6ADDR_STRING(cp));
break;
case ICMP6_NI_SUBJ_FQDN:
ND_PRINT(", subject=DNS name");
break;
}
ND_PRINT(", subject=%s",
- ipaddr_string(ndo, cp));
+ GET_IPADDR_STRING(cp));
break;
default:
ND_PRINT(", unknown subject");
if (i + sizeof(uint32_t) + sizeof(nd_ipv6) > siz)
break;
ND_PRINT(" %s(%u)",
- ip6addr_string(ndo, bp + i + sizeof(uint32_t)),
+ GET_IP6ADDR_STRING(bp + i + sizeof(uint32_t)),
GET_BE_U_4(bp + i));
i += sizeof(uint32_t) + sizeof(nd_ipv6);
}