david/ipxe
david
/
ipxe
Archived
1
0
Fork 0

[slam] Avoid NULL pointer dereference in slam_pull_value()

Signed-off-by: Michael Brown <mcb30@ipxe.org>
This commit is contained in:
Michael Brown 2017-03-21 14:57:36 +02:00
parent 60561d0f3d
commit 64de7dc7fd
1 changed files with 9 additions and 5 deletions

View File

@ -400,12 +400,16 @@ static int slam_pull_value ( struct slam_request *slam,
return -EINVAL;
}
/* Read value */
/* Strip value */
iob_pull ( iobuf, len );
*value = ( *data & 0x1f );
while ( --len ) {
*value <<= 8;
*value |= *(++data);
/* Read value, if applicable */
if ( value ) {
*value = ( *data & 0x1f );
while ( --len ) {
*value <<= 8;
*value |= *(++data);
}
}
return 0;