socket: check for malloc failure before dereference
Signed-off-by: David Disseldorp <ddiss@suse.de>
This commit is contained in:
@@ -601,11 +601,15 @@ iscsi_read_from_socket(struct iscsi_context *iscsi)
|
|||||||
do {
|
do {
|
||||||
if (iscsi->incoming == NULL) {
|
if (iscsi->incoming == NULL) {
|
||||||
iscsi->incoming = iscsi_szmalloc(iscsi, sizeof(struct iscsi_in_pdu));
|
iscsi->incoming = iscsi_szmalloc(iscsi, sizeof(struct iscsi_in_pdu));
|
||||||
iscsi->incoming->hdr = iscsi_smalloc(iscsi, ISCSI_HEADER_SIZE);
|
|
||||||
if (iscsi->incoming == NULL) {
|
if (iscsi->incoming == NULL) {
|
||||||
iscsi_set_error(iscsi, "Out-of-memory: failed to malloc iscsi_in_pdu");
|
iscsi_set_error(iscsi, "Out-of-memory: failed to malloc iscsi_in_pdu");
|
||||||
return -1;
|
return -1;
|
||||||
}
|
}
|
||||||
|
iscsi->incoming->hdr = iscsi_smalloc(iscsi, ISCSI_HEADER_SIZE);
|
||||||
|
if (iscsi->incoming->hdr == NULL) {
|
||||||
|
iscsi_set_error(iscsi, "Out-of-memory");
|
||||||
|
return -1;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
in = iscsi->incoming;
|
in = iscsi->incoming;
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user