github.com/rawahars/moby@v24.0.4+incompatible/libnetwork/endpoint_info_unix.go (about) 1 //go:build !windows 2 // +build !windows 3 4 package libnetwork 5 6 import "fmt" 7 8 // DriverInfo returns a collection of driver operational data related to this endpoint retrieved from the driver. 9 func (ep *Endpoint) DriverInfo() (map[string]interface{}, error) { 10 ep, err := ep.retrieveFromStore() 11 if err != nil { 12 return nil, err 13 } 14 15 if sb, ok := ep.getSandbox(); ok { 16 if gwep := sb.getEndpointInGWNetwork(); gwep != nil && gwep.ID() != ep.ID() { 17 return gwep.DriverInfo() 18 } 19 } 20 21 n, err := ep.getNetworkFromStore() 22 if err != nil { 23 return nil, fmt.Errorf("could not find network in store for driver info: %v", err) 24 } 25 26 driver, err := n.driver(true) 27 if err != nil { 28 return nil, fmt.Errorf("failed to get driver info: %v", err) 29 } 30 31 return driver.EndpointOperInfo(n.ID(), ep.ID()) 32 }