diff options
| author | Gleb Smirnoff <glebius@FreeBSD.org> | 2024-12-03 20:04:22 +0000 |
|---|---|---|
| committer | Gleb Smirnoff <glebius@FreeBSD.org> | 2024-12-03 20:04:22 +0000 |
| commit | 0601c0f989f21a935d49818d67e732766ddc3f77 (patch) | |
| tree | f9a09924feea70eed42f24ef5d9909b21c21b247 | |
| parent | a034c0aeccd899a5872333625771df278e0a8ba7 (diff) | |
netlink: check buffer length fits into u_int
We may increase it to size_t later, KPI allows that already, but
doesn't seem to be needed today.
Reviewed by: melifaro
Differential Revision: https://reviews.freebsd.org/D47550
| -rw-r--r-- | sys/netlink/netlink_io.c | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/sys/netlink/netlink_io.c b/sys/netlink/netlink_io.c index bc8d2f9fcc3f..d2022a6a2b0d 100644 --- a/sys/netlink/netlink_io.c +++ b/sys/netlink/netlink_io.c @@ -58,6 +58,9 @@ nl_buf_alloc(size_t len, int mflag) { struct nl_buf *nb; + KASSERT(len > 0 && len <= UINT_MAX, ("%s: invalid length %zu", + __func__, len)); + nb = malloc(sizeof(struct nl_buf) + len, M_NETLINK, mflag); if (__predict_true(nb != NULL)) { nb->buflen = len; |
