cvs commit: src/sbin/ping6 ping6.c
Mike Makonnen
mtm at FreeBSD.org
Thu Apr 19 15:41:01 UTC 2007
mtm 2007-04-19 15:41:00 UTC
FreeBSD src repository
Modified files:
sbin/ping6 ping6.c
Log:
Correct two issues in ping6:
1. The static buffer that ping6(8) uses to hold the control data
it gets from recvmsg(2) is too small in some cases.
2. When it prints the extra header information it doesn't do
any checking to make sure the data it's printing is within
the bounds of the supplied buffer.
Fix this by:
o Increasing the buffer to hold extra headers to 10240 bytes (the minimum
according to RFC3542 sec. 20.1) and allocate it dynamically.
o In verbose mode, specify a warning if any control data from recvmsg(2)
was truncated because the buffer was too small.
o When printing the extra headers make sure not to overrun the buffer
boundaries.
Reviewed By: mlaier
PR: kern/99425
MFC After: 1 month
Revision Changes Path
1.30 +68 -19 src/sbin/ping6/ping6.c
More information about the cvs-src
mailing list