summaryrefslogtreecommitdiffstats
path: root/lib/libc/net/rthdr.c
diff options
context:
space:
mode:
authormtm <mtm@FreeBSD.org>2007-04-19 15:41:00 +0000
committermtm <mtm@FreeBSD.org>2007-04-19 15:41:00 +0000
commitd15cc39e73860f1cbeb14f0698536d3635f893d4 (patch)
treee8bf7c312230dc27682c6dc26901211cbd5fe7b1 /lib/libc/net/rthdr.c
parent7058ca9c7d02641635cc60b654ae76490261f7e6 (diff)
downloadFreeBSD-src-d15cc39e73860f1cbeb14f0698536d3635f893d4.zip
FreeBSD-src-d15cc39e73860f1cbeb14f0698536d3635f893d4.tar.gz
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
Diffstat (limited to 'lib/libc/net/rthdr.c')
0 files changed, 0 insertions, 0 deletions
OpenPOWER on IntegriCloud