Fixing wireless configuration creation
This commit is contained in:
parent
077ec7bd7a
commit
5912ec7202
5
uci.go
5
uci.go
|
@ -65,7 +65,7 @@ func (u *UCI) Commit() *Action {
|
||||||
func (u *UCI) Reload() *Action {
|
func (u *UCI) Reload() *Action {
|
||||||
cmdResult := u.exec.Run("reload_config")
|
cmdResult := u.exec.Run("reload_config")
|
||||||
|
|
||||||
time.Sleep(5 * time.Second)
|
time.Sleep(1 * time.Second)
|
||||||
|
|
||||||
return &Action{cmdResult, "reload_config"}
|
return &Action{cmdResult, "reload_config"}
|
||||||
}
|
}
|
||||||
|
@ -124,7 +124,6 @@ func (u *UCI) GetWifiIfaceByName(name string) *UCIWirelessInterface {
|
||||||
|
|
||||||
// GetWifiIfaceBySSID returns the wifi Interface by Index
|
// GetWifiIfaceBySSID returns the wifi Interface by Index
|
||||||
func (u *UCI) GetWifiIfaceBySSID(ssid string) *UCIWirelessInterface {
|
func (u *UCI) GetWifiIfaceBySSID(ssid string) *UCIWirelessInterface {
|
||||||
u.LoadWirelessConf()
|
|
||||||
ifaces := u.Wireless.Interfaces
|
ifaces := u.Wireless.Interfaces
|
||||||
if len(ifaces) <= 0 {
|
if len(ifaces) <= 0 {
|
||||||
fmt.Println("ifaces are empty !!! fuck")
|
fmt.Println("ifaces are empty !!! fuck")
|
||||||
|
@ -140,7 +139,7 @@ func (u *UCI) GetWifiIfaceBySSID(ssid string) *UCIWirelessInterface {
|
||||||
}
|
}
|
||||||
|
|
||||||
// GetWifiIfaces wifi interfaces in configuration
|
// GetWifiIfaces wifi interfaces in configuration
|
||||||
func (u *UCI) GetWifiIfaces() []*UCIWirelessInterface {
|
func (u *UCI) GetWifiIfaces() map[int]*UCIWirelessInterface {
|
||||||
return u.Wireless.Interfaces
|
return u.Wireless.Interfaces
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -12,7 +12,7 @@ type UCIWirelessConf struct {
|
||||||
uciClient *UCI
|
uciClient *UCI
|
||||||
Devices []map[string]string
|
Devices []map[string]string
|
||||||
DefaultInterface map[string]string
|
DefaultInterface map[string]string
|
||||||
Interfaces []*UCIWirelessInterface
|
Interfaces map[int]*UCIWirelessInterface
|
||||||
}
|
}
|
||||||
|
|
||||||
// NewUCIWirelessConf builds a new UCIWirelessConf instance
|
// NewUCIWirelessConf builds a new UCIWirelessConf instance
|
||||||
|
@ -21,7 +21,7 @@ func NewUCIWirelessConf(uci *UCI) *UCIWirelessConf {
|
||||||
uciClient: uci,
|
uciClient: uci,
|
||||||
Devices: []map[string]string{}, //, 10),
|
Devices: []map[string]string{}, //, 10),
|
||||||
DefaultInterface: map[string]string{},
|
DefaultInterface: map[string]string{},
|
||||||
Interfaces: []*UCIWirelessInterface{}, //, 10),
|
Interfaces: map[int]*UCIWirelessInterface{},
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -65,13 +65,7 @@ func (wc *UCIWirelessConf) parseInterfaces(lines []string) int {
|
||||||
idx = int(s)
|
idx = int(s)
|
||||||
}
|
}
|
||||||
|
|
||||||
if idx >= len(wc.Interfaces) {
|
if _, exists := wc.Interfaces[idx]; !exists {
|
||||||
for i := 0; i <= idx; i++ {
|
|
||||||
wc.Interfaces = append(wc.Interfaces, NewUCIWirelessInterface())
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
if wc.Interfaces[idx] == nil {
|
|
||||||
wc.Interfaces[idx] = NewUCIWirelessInterface()
|
wc.Interfaces[idx] = NewUCIWirelessInterface()
|
||||||
wc.Interfaces[idx].Index = idx
|
wc.Interfaces[idx].Index = idx
|
||||||
}
|
}
|
||||||
|
@ -94,7 +88,6 @@ func (wc *UCIWirelessConf) parseInterfaces(lines []string) int {
|
||||||
wc.Interfaces[idx].Mode = value
|
wc.Interfaces[idx].Mode = value
|
||||||
}
|
}
|
||||||
if key == "Ssid" {
|
if key == "Ssid" {
|
||||||
fmt.Printf("Fixing SSID FOR %s\n", value)
|
|
||||||
wc.Interfaces[idx].Ssid = value
|
wc.Interfaces[idx].Ssid = value
|
||||||
}
|
}
|
||||||
if key == "Encryption" {
|
if key == "Encryption" {
|
||||||
|
|
|
@ -70,11 +70,8 @@ func (wi *UCIWirelessInterface) Create(uci *UCI) *Action {
|
||||||
if addRes.ReturnCode != 0 {
|
if addRes.ReturnCode != 0 {
|
||||||
return addRes
|
return addRes
|
||||||
}
|
}
|
||||||
if wi.Index <= 0 {
|
confPrefix = fmt.Sprintf("wireless.@wifi-iface[%d]", wi.Index)
|
||||||
confPrefix = fmt.Sprintf("wireless.@wifi-iface[%d]", len(uci.Wireless.Interfaces))
|
|
||||||
} else {
|
|
||||||
confPrefix = fmt.Sprintf("wireless.@wifi-iface[%d]", wi.Index)
|
|
||||||
}
|
|
||||||
conf := make(map[string][]string)
|
conf := make(map[string][]string)
|
||||||
|
|
||||||
conf["network"] = append(conf["network"], fmt.Sprintf("%s.network", confPrefix), wi.Network)
|
conf["network"] = append(conf["network"], fmt.Sprintf("%s.network", confPrefix), wi.Network)
|
||||||
|
|
Loading…
Reference in New Issue