Changeset View
Changeset View
Standalone View
Standalone View
sys/netipsec/key.c
Show First 20 Lines • Show All 7,158 Lines • ▼ Show 20 Lines | if (elen) | ||||
elen += sizeof(struct sadb_supported); | elen += sizeof(struct sadb_supported); | ||||
len = sizeof(struct sadb_msg) + alen + elen; | len = sizeof(struct sadb_msg) + alen + elen; | ||||
if (len > MCLBYTES) | if (len > MCLBYTES) | ||||
return key_senderror(so, m, ENOBUFS); | return key_senderror(so, m, ENOBUFS); | ||||
MGETHDR(n, M_NOWAIT, MT_DATA); | MGETHDR(n, M_NOWAIT, MT_DATA); | ||||
if (len > MHLEN) { | if (n != NULL && len > MHLEN) { | ||||
if (!(MCLGET(n, M_NOWAIT))) { | if (!(MCLGET(n, M_NOWAIT))) { | ||||
m_freem(n); | m_freem(n); | ||||
n = NULL; | n = NULL; | ||||
} | } | ||||
} | } | ||||
if (!n) | if (!n) | ||||
return key_senderror(so, m, ENOBUFS); | return key_senderror(so, m, ENOBUFS); | ||||
▲ Show 20 Lines • Show All 1,422 Lines • Show Last 20 Lines |