in newtmgr/config/bll_config.go [61:107]
func ParseBllConnString(cs string) (*BllConfig, error) {
bc := NewBllConfig()
if strings.TrimSpace(cs) == "" {
return bc, nil
}
parts := strings.Split(cs, ",")
for _, p := range parts {
kv := strings.SplitN(p, "=", 2)
if len(kv) != 2 {
return nil, einvalBllConnString("expected comma-separated "+
"key=value pairs; no '=' in: %s", p)
}
k := kv[0]
v := kv[1]
switch k {
case "ctlr_name":
bc.CtlrName = v
case "own_addr_type":
var err error
bc.OwnAddrType, err = bledefs.BleAddrTypeFromString(v)
if err != nil {
return nil, einvalBleConnString("Invalid own_addr_type: %s", v)
}
case "peer_id":
bc.PeerId = v
case "peer_name":
bc.PeerName = v
case "conn_timeout":
var err error
bc.ConnTimeout, err = strconv.ParseFloat(v, 64)
if err != nil {
return nil, einvalBleConnString("Invalid conn_timeout: %s", v)
}
default:
return nil, einvalBllConnString("Unrecognized key: %s", k)
}
}
bc.HciIdx = nmutil.HciIdx
return bc, nil
}