in cmd/main.go [85:116]
func cmdCheck(args *skel.CmdArgs) error {
// get cni config
config := &types.NetConf{}
err := json.Unmarshal(args.StdinData, config)
if err != nil {
return err
}
content, err := os.ReadFile(KVPStorePath)
if err != nil {
log.Printf("Error reading file %s: %v", KVPStorePath, err)
return err
}
result := &type100.Result{CNIVersion: type100.ImplementedSpecVersion}
if err = ns.WithNetNSPath(args.Netns, func(_ ns.NetNS) error {
nic, err := netlink.LinkByName(args.IfName)
if err != nil {
return err
}
ipAddr, err := ibaddrparser.GetIBAddr(content, nic.Attrs().HardwareAddr.String())
if err != nil {
return err
}
result.IPs = append(result.IPs, &type100.IPConfig{
Address: *ipAddr,
})
return nil
}); err != nil {
return err
}
return types.PrintResult(result, config.CNIVersion)
}