summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--usr/src/uts/common/inet/ip/sadb.c7
1 files changed, 6 insertions, 1 deletions
diff --git a/usr/src/uts/common/inet/ip/sadb.c b/usr/src/uts/common/inet/ip/sadb.c
index 0ec9e2bcee..52d2348fcf 100644
--- a/usr/src/uts/common/inet/ip/sadb.c
+++ b/usr/src/uts/common/inet/ip/sadb.c
@@ -3774,7 +3774,8 @@ sadb_expire_assoc(queue_t *pfkey_q, ipsa_t *assoc)
}
alloclen = sizeof (*samsg) + sizeof (*current) + sizeof (*expire) +
- 2 * sizeof (sadb_address_t) + sizeof (*saext);
+ 2 * sizeof (sadb_address_t) + sizeof (*saext) +
+ sizeof (sadb_x_kmc_t);
af = assoc->ipsa_addrfam;
switch (af) {
@@ -3903,6 +3904,10 @@ sadb_expire_assoc(queue_t *pfkey_q, ipsa_t *assoc)
ASSERT(mp->b_wptr != NULL);
}
+ mp->b_wptr = sadb_make_kmc_ext(mp->b_wptr, end, assoc->ipsa_kmp,
+ assoc->ipsa_kmc);
+ ASSERT(mp->b_wptr != NULL);
+
/* Can just putnext, we're ready to go! */
putnext(pfkey_q, mp1);
}