aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJohn Baldwin <jhb@FreeBSD.org>2024-10-31 20:32:32 +0000
committerJohn Baldwin <jhb@FreeBSD.org>2024-10-31 20:32:32 +0000
commitf02d9edfb5d695734b8866c81d2da0c7700c8779 (patch)
tree590a3b2317d3bf46e443e6bf5e32172f36c0f9c9
parent314cb279959b08811543612a715e47266f685c7b (diff)
ktls: Mark mbufs containing outbound encrypted TLS records read-only
Reviewed by: gallatin, kp Differential Revision: https://reviews.freebsd.org/D46784
-rw-r--r--sys/kern/uipc_ktls.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/sys/kern/uipc_ktls.c b/sys/kern/uipc_ktls.c
index 1e4a933d4e4f..bf2ff37e3c3a 100644
--- a/sys/kern/uipc_ktls.c
+++ b/sys/kern/uipc_ktls.c
@@ -3072,6 +3072,7 @@ ktls_encrypt(struct ktls_wq *wq, struct mbuf *top)
if ((m->m_epg_flags & EPG_FLAG_ANON) == 0)
ktls_finish_nonanon(m, &state);
+ m->m_flags |= M_RDONLY;
npages += m->m_epg_nrdy;
@@ -3110,6 +3111,7 @@ ktls_encrypt_cb(struct ktls_ocf_encrypt_state *state, int error)
if ((m->m_epg_flags & EPG_FLAG_ANON) == 0)
ktls_finish_nonanon(m, state);
+ m->m_flags |= M_RDONLY;
so = state->so;
free(state, M_KTLS);