From 346d886edb90f499fe92db55bc160e915ae7f924 Mon Sep 17 00:00:00 2001 From: "David J. Allen" Date: Tue, 10 Oct 2023 11:53:11 -0600 Subject: [PATCH] Fixed issue `QueryEthernetInterfaces` not returning anything --- internal/collect.go | 17 ++++++++++++++++- 1 file changed, 16 insertions(+), 1 deletion(-) diff --git a/internal/collect.go b/internal/collect.go index 3c6941c..82ce736 100644 --- a/internal/collect.go +++ b/internal/collect.go @@ -465,8 +465,23 @@ func QueryEthernetInterfaces(client *bmclib.Client, q *QueryParams) ([]byte, err return nil, fmt.Errorf("could not connect to bmc: %v", err) } - interfaces, err := redfish.ListReferencedEthernetInterfaces(c, "/redfish/v1/Systems/Self/EthernetInterfaces/") + systems, err := c.Service.Systems() if err != nil { + return nil, fmt.Errorf("could not query storage systems (%v:%v): %v", q.Host, q.Port, err) + } + + + var interfaces []*redfish.EthernetInterface + for _, system := range systems { + fmt.Printf("%s\n", system.ID + "/EthernetInterfaces/") + i, err := redfish.ListReferencedEthernetInterfaces(c, "/redfish/v1/Systems/" + system.ID + "/EthernetInterfaces/") + if err != nil { + continue + } + interfaces = append(interfaces, i...) + } + + if len(interfaces) <= 0 { return nil, fmt.Errorf("could not get ethernet interfaces: %v", err) }