static int udp6_cksum(const struct ip6_hdr *ip6, const struct udphdr *up,
u_int len)
{
- return (nextproto6_cksum(ip6, (const u_int8_t *)(void *)up, len,
- IPPROTO_UDP));
+ return nextproto6_cksum(ip6, (const u_int8_t *)(void *)up, len, len,
+ IPPROTO_UDP);
}
#endif
return;
}
+ udpipaddr_print(ip, sport, dport);
if (!qflag) {
register struct sunrpc_msg *rp;
enum sunrpc_msg_type direction;
if (TTEST(rp->rm_direction)) {
direction = (enum sunrpc_msg_type)EXTRACT_32BITS(&rp->rm_direction);
if (dport == NFS_PORT && direction == SUNRPC_CALL) {
- nfsreq_print((u_char *)rp, length,
+ (void)printf("NFS request xid %u ", EXTRACT_32BITS(&rp->rm_xid));
+ nfsreq_print_noaddr((u_char *)rp, length,
(u_char *)ip);
return;
}
if (sport == NFS_PORT && direction == SUNRPC_REPLY) {
- nfsreply_print((u_char *)rp, length,
+ (void)printf("NFS reply xid %u ", EXTRACT_32BITS(&rp->rm_xid));
+ nfsreply_print_noaddr((u_char *)rp, length,
(u_char *)ip);
return;
}
return;
}
}
- udpipaddr_print(ip, sport, dport);
if (vflag && !Kflag && !fragmented) {
/* Check the checksum, if possible. */
ISPORT(RADIUS_NEW_ACCOUNTING_PORT) )
radius_print((const u_char *)(up+1), length);
else if (dport == HSRP_PORT)
- hsrp_print((const u_char *)(up + 1), length);
+ hsrp_print(gndo, (const u_char *)(up + 1), length);
else if (ISPORT(LWRES_PORT))
lwres_print((const u_char *)(up + 1), length);
else if (ISPORT(LDP_PORT))