From a4e05c746fa7514959427792eae72979cb04755f Mon Sep 17 00:00:00 2001 From: Preslav Date: Tue, 11 Jun 2024 14:00:27 +0300 Subject: [PATCH] =?UTF-8?q?=F0=9F=90=9B=20Safeguard=20accessing=20potentia?= =?UTF-8?q?l=20nil=20properties=20of=20an=20ec2=20image=20in=20the=20AWS?= =?UTF-8?q?=20provider.?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: Preslav --- providers/aws/resources/aws_ec2.go | 22 ++++++++++++------- .../resources/resourceclient/README.md | 2 -- 2 files changed, 14 insertions(+), 10 deletions(-) diff --git a/providers/aws/resources/aws_ec2.go b/providers/aws/resources/aws_ec2.go index d56f3646d4..6e8b3fff3e 100644 --- a/providers/aws/resources/aws_ec2.go +++ b/providers/aws/resources/aws_ec2.go @@ -1104,17 +1104,23 @@ func initAwsEc2Image(runtime *plugin.Runtime, args map[string]*llx.RawData) (map args["architecture"] = llx.StringData(string(image.Architecture)) args["ownerId"] = llx.StringData(convert.ToString(image.OwnerId)) args["ownerAlias"] = llx.StringData(convert.ToString(image.ImageOwnerAlias)) - createTime, err := time.Parse(time.RFC3339, *image.CreationDate) - if err == nil { - args["createdAt"] = llx.TimeData(createTime) - } else { + if image.CreationDate == nil { args["createdAt"] = llx.NilData - } - deprecateTime, err := time.Parse(time.RFC3339, *image.DeprecationTime) - if err == nil { - args["deprecatedAt"] = llx.TimeData(deprecateTime) } else { + createdAt, err := time.Parse(time.RFC3339, *image.CreationDate) + if err != nil { + return nil, nil, err + } + args["createdAt"] = llx.TimeData(createdAt) + } + if image.DeprecationTime == nil { args["deprecatedAt"] = llx.NilData + } else { + deprecateTime, err := time.Parse(time.RFC3339, *image.DeprecationTime) + if err != nil { + return nil, nil, err + } + args["deprecatedAt"] = llx.TimeData(deprecateTime) } return args, nil, nil } diff --git a/providers/vsphere/resources/resourceclient/README.md b/providers/vsphere/resources/resourceclient/README.md index 6a8effb109..5d7e4a79e1 100644 --- a/providers/vsphere/resources/resourceclient/README.md +++ b/providers/vsphere/resources/resourceclient/README.md @@ -5,8 +5,6 @@ If you have direct access to the host, press Alt+F1 to open the log in page on the machine's physical console. Provide credentials when prompted. To return to the Direct Console User Interface press Alt-F2. -see https://kb.vmware.com/s/article/2004746 - ## VCSIM simulator ```bash