mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
synced 2026-05-02 13:23:35 -04:00
staging: unisys: visorbus: Check controlvm message payload size
Checks the controlvm message's payload size before copying it into a parser_context struct's name region. Signed-off-by: David Binder <david.binder@unisys.com> Signed-off-by: David Kershner <david.kershner@unisys.com> Reported-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
This commit is contained in:
committed by
Greg Kroah-Hartman
parent
0c773962cf
commit
308ee8aa1f
@@ -399,6 +399,10 @@ parser_name_get(struct parser_context *ctx)
|
||||
struct spar_controlvm_parameters_header *phdr = NULL;
|
||||
|
||||
phdr = (struct spar_controlvm_parameters_header *)(ctx->data);
|
||||
|
||||
if (phdr->name_offset + phdr->name_length > ctx->param_bytes)
|
||||
return NULL;
|
||||
|
||||
ctx->curr = ctx->data + phdr->name_offset;
|
||||
ctx->bytes_remaining = phdr->name_length;
|
||||
return parser_string_get(ctx);
|
||||
|
||||
Reference in New Issue
Block a user