s390/sclp: read sccb from mem based on provided length
commitc1db53a5910f988eeb32f031c53a50f3373fd824
authorCollin Walling <walling@linux.ibm.com>
Tue, 15 Sep 2020 19:44:11 +0000 (15 15:44 -0400)
committerCornelia Huck <cohuck@redhat.com>
Fri, 2 Oct 2020 11:52:49 +0000 (2 13:52 +0200)
tree5d92e07d347e833103135b2a58f6c9f91b9ea324
parentdb13387ca01a69d870cc16dd232375c2603596f2
s390/sclp: read sccb from mem based on provided length

The header contained within the SCCB passed to the SCLP service call
contains the actual length of the SCCB. Instead of allocating a static
4K size for the work sccb, let's allow for a variable size determined
by the value in the header. The proper checks are already in place to
ensure the SCCB length is sufficent to store a full response and that
the length does not cross any explicitly-set boundaries.

Signed-off-by: Collin Walling <walling@linux.ibm.com>
Reviewed-by: Thomas Huth <thuth@redhat.com>
Reviewed-by: Claudio Imbrenda <imbrenda@linux.ibm.com>
Message-Id: <20200915194416.107460-4-walling@linux.ibm.com>
Signed-off-by: Cornelia Huck <cohuck@redhat.com>
hw/s390x/event-facility.c
hw/s390x/sclp.c
include/hw/s390x/sclp.h