From: Bill Pemberton <wfp5p@xxxxxxxxxxxx> VmbusChannelOpen() will now return -EINVAL if UserDataLen is too big. Previously this was handled by an assert. Signed-off-by: Bill Pemberton <wfp5p@xxxxxxxxxxxx> Cc: Hank Janssen <hjanssen@xxxxxxxxxxxxx> Cc: Haiyang Zhang <haiyangz@xxxxxxxxxxxxx> Signed-off-by: Greg Kroah-Hartman <gregkh@xxxxxxx> --- drivers/staging/hv/Channel.c | 6 +++++- 1 files changed, 5 insertions(+), 1 deletions(-) diff --git a/drivers/staging/hv/Channel.c b/drivers/staging/hv/Channel.c index fdd4411..bd1a336 100644 --- a/drivers/staging/hv/Channel.c +++ b/drivers/staging/hv/Channel.c @@ -258,7 +258,11 @@ int VmbusChannelOpen(struct vmbus_channel *NewChannel, u32 SendRingBufferSize, PAGE_SHIFT; openMsg->ServerContextAreaGpadlHandle = 0; /* TODO */ - ASSERT(UserDataLen <= MAX_USER_DEFINED_BYTES); + if (UserDataLen > MAX_USER_DEFINED_BYTES) { + err = -EINVAL; + goto errorout; + } + if (UserDataLen) memcpy(openMsg->UserData, UserData, UserDataLen); -- 1.7.0.3 _______________________________________________ devel mailing list devel@xxxxxxxxxxxxxxxxxxxxxx http://driverdev.linuxdriverproject.org/mailman/listinfo/devel