diff options
-rw-r--r-- | sys/netinet/ip_options.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/sys/netinet/ip_options.c b/sys/netinet/ip_options.c index cdb98be..17ad423 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; |