From 583211a52f0332b86eeb58a24279c3b18a5c6a92 Mon Sep 17 00:00:00 2001 From: Li kunyu Date: Wed, 14 Dec 2022 11:33:19 +0800 Subject: [PATCH 1/2] aros_compat: Add check after malloc allocation --- aros/aros_compat.c | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/aros/aros_compat.c b/aros/aros_compat.c index 72b3c25..a82ccc5 100644 --- a/aros/aros_compat.c +++ b/aros/aros_compat.c @@ -48,6 +48,9 @@ struct addrinfo **res) struct sockaddr_in *sin; sin = malloc(sizeof(struct sockaddr_in)); + if (!sin) + return -1; + sin->sin_len = sizeof(struct sockaddr_in); sin->sin_family=AF_INET; @@ -60,6 +63,8 @@ struct addrinfo **res) } *res = malloc(sizeof(struct addrinfo)); + if (!*res) + return -2; (*res)->ai_family = AF_INET; (*res)->ai_addrlen = sizeof(struct sockaddr_in); From c0fdc4655aa6c359abedc5704bd338bbcc50902e Mon Sep 17 00:00:00 2001 From: Li kunyu Date: Wed, 14 Dec 2022 14:47:05 +0800 Subject: [PATCH 2/2] connect: Add check after malloc allocation --- lib/connect.c | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/lib/connect.c b/lib/connect.c index 74b7251..38b8d19 100644 --- a/lib/connect.c +++ b/lib/connect.c @@ -469,6 +469,10 @@ static int reconnect(struct iscsi_context *iscsi, int force) tmp_iscsi->old_iscsi = iscsi->old_iscsi; } else { tmp_iscsi->old_iscsi = malloc(sizeof(struct iscsi_context)); + if (!tmp_iscsi->old_iscsi) { + free(tmp_iscsi); + return -1; + } memcpy(tmp_iscsi->old_iscsi, iscsi, sizeof(struct iscsi_context)); } memcpy(iscsi, tmp_iscsi, sizeof(struct iscsi_context));