func loadSystemConfig(conf string, isFileName bool) (*SystemConf, error) { sc := newSystemConf() var decodeMeta toml.MetaData var err error if isFileName { decodeMeta, err = toml.DecodeFile(conf, &sc) } else { decodeMeta, err = toml.Decode(conf, &sc) } if err != nil { return sc, err } if len(decodeMeta.Undecoded()) > 0 { return sc, fmt.Errorf("undecoded fields in system configuration: %v", decodeMeta.Undecoded()) } sc.md = decodeMeta return sc, nil }