diff options
Diffstat (limited to 'net/rds/send.c')
| -rw-r--r-- | net/rds/send.c | 3 | 
1 files changed, 3 insertions, 0 deletions
| diff --git a/net/rds/send.c b/net/rds/send.c index b52cdc8ae428..f72466c63f0c 100644 --- a/net/rds/send.c +++ b/net/rds/send.c @@ -1009,6 +1009,9 @@ static int rds_rdma_bytes(struct msghdr *msg, size_t *rdma_bytes)  			continue;  		if (cmsg->cmsg_type == RDS_CMSG_RDMA_ARGS) { +			if (cmsg->cmsg_len < +			    CMSG_LEN(sizeof(struct rds_rdma_args))) +				return -EINVAL;  			args = CMSG_DATA(cmsg);  			*rdma_bytes += args->remote_vec.bytes;  		} |