size_t *out_n_fds, size_t *out_n_parts)
{
struct kdbus_item *item, *fds = NULL, *bloom = NULL, *dstname = NULL;
- u64 n_parts, n_memfds, n_fds, vec_size;
+ u64 n_parts, n_memfds, n_fds;
/*
* Step 1:
n_parts = 0;
n_memfds = 0;
n_fds = 0;
- vec_size = 0;
KDBUS_ITEMS_FOREACH(item, msg->items, KDBUS_ITEMS_SIZE(msg, items)) {
switch (item->type) {
void __force __user *ptr = KDBUS_PTR(item->vec.address);
u64 size = item->vec.size;
- if (vec_size + size < vec_size)
- return -EMSGSIZE;
- if (vec_size + size > KDBUS_MSG_MAX_PAYLOAD_VEC_SIZE)
+ if (size > KDBUS_MSG_MAX_PAYLOAD_VEC_SIZE)
return -EMSGSIZE;
if (ptr && unlikely(!access_ok(ptr, size)))
return -EFAULT;