X-Git-Url: https://git.tcpdump.org/tcpdump/blobdiff_plain/3d932490b826facb568937a1290910a1265267f5..27cb3953154b4562a7f4b51be6146688531903bd:/print-hsrp.c diff --git a/print-hsrp.c b/print-hsrp.c index a421eab7..21ec0540 100644 --- a/print-hsrp.c +++ b/print-hsrp.c @@ -30,8 +30,8 @@ /* Cisco Hot Standby Router Protocol (HSRP). */ #ifndef lint -static const char rcsid[] = - "@(#) $Header: /tcpdump/master/tcpdump/print-hsrp.c,v 1.5 2002-08-01 08:53:08 risso Exp $"; +static const char rcsid[] _U_ = + "@(#) $Header: /tcpdump/master/tcpdump/print-hsrp.c,v 1.9.2.1 2005-05-06 07:57:17 guy Exp $"; #endif #ifdef HAVE_CONFIG_H @@ -85,20 +85,20 @@ static struct tok states[] = { /* HSRP protocol header. */ struct hsrp { - u_char hsrp_version; - u_char hsrp_op_code; - u_char hsrp_state; - u_char hsrp_hellotime; - u_char hsrp_holdtime; - u_char hsrp_priority; - u_char hsrp_group; - u_char hsrp_reserved; - u_char hsrp_authdata[HSRP_AUTH_SIZE]; + u_int8_t hsrp_version; + u_int8_t hsrp_op_code; + u_int8_t hsrp_state; + u_int8_t hsrp_hellotime; + u_int8_t hsrp_holdtime; + u_int8_t hsrp_priority; + u_int8_t hsrp_group; + u_int8_t hsrp_reserved; + u_int8_t hsrp_authdata[HSRP_AUTH_SIZE]; struct in_addr hsrp_virtaddr; }; void -hsrp_print(register const u_char *bp, register u_int len) +hsrp_print(register const u_int8_t *bp, register u_int len) { struct hsrp *hp = (struct hsrp *) bp; @@ -127,7 +127,11 @@ hsrp_print(register const u_char *bp, register u_int len) relts_print(hp->hsrp_holdtime); printf(" priority=%d", hp->hsrp_priority); printf(" auth=\""); - fn_printn(hp->hsrp_authdata, sizeof(hp->hsrp_authdata), NULL); + if (fn_printn(hp->hsrp_authdata, sizeof(hp->hsrp_authdata), + snapend)) { + printf("\""); + goto trunc; + } printf("\""); } return;