aboutsummaryrefslogtreecommitdiff
path: root/sys/netinet/ip_options.c
diff options
context:
space:
mode:
authorRobert Watson <rwatson@FreeBSD.org>2015-01-06 14:32:28 +0000
committerRobert Watson <rwatson@FreeBSD.org>2015-01-06 14:32:28 +0000
commite1165035a61b4a815b7c85139402ef7982706073 (patch)
tree99d001f6bcaa4b7bc60d6d09a747628189b54ac6 /sys/netinet/ip_options.c
parent57c5139c46144c67f1624c6f355fdef43fcfdaff (diff)
downloadsrc-e1165035a61b4a815b7c85139402ef7982706073.tar.gz
src-e1165035a61b4a815b7c85139402ef7982706073.zip
Use M_WRITABLE() and M_LEADINGSPACE() rather than checking M_EXT and
doing hand-crafted length calculations in the IP options code. Reviewed by: bz Sponsored by: EMC / Isilon Storage Division
Notes
Notes: svn path=/head/; revision=276752
Diffstat (limited to 'sys/netinet/ip_options.c')
-rw-r--r--sys/netinet/ip_options.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/sys/netinet/ip_options.c b/sys/netinet/ip_options.c
index cdb98be83388..17ad423f4bef 100644
--- a/sys/netinet/ip_options.c
+++ b/sys/netinet/ip_options.c
@@ -500,7 +500,7 @@ ip_insertoptions(struct mbuf *m, struct mbuf *opt, int *phlen)
}
if (p->ipopt_dst.s_addr)
ip->ip_dst = p->ipopt_dst;
- if (m->m_flags & M_EXT || m->m_data - optlen < m->m_pktdat) {
+ if (!M_WRITABLE(m) || M_LEADINGSPACE(m) < optlen) {
n = m_gethdr(M_NOWAIT, MT_DATA);
if (n == NULL) {
*phlen = 0;