mirror of
https://github.com/fosrl/newt.git
synced 2025-05-13 13:40:39 +01:00
Handle messages correctly
This commit is contained in:
parent
bff6707577
commit
18d99de924
1 changed files with 6 additions and 1 deletions
7
wg/wg.go
7
wg/wg.go
|
@ -125,16 +125,21 @@ func (s *WireGuardService) LoadRemoteConfig() error {
|
||||||
func (s *WireGuardService) handleConfig(msg websocket.WSMessage) {
|
func (s *WireGuardService) handleConfig(msg websocket.WSMessage) {
|
||||||
var config WgConfig
|
var config WgConfig
|
||||||
|
|
||||||
|
logger.Info("Received WireGuard configuration")
|
||||||
|
|
||||||
jsonData, err := json.Marshal(msg.Data)
|
jsonData, err := json.Marshal(msg.Data)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
logger.Info("Error marshaling data: %v", err)
|
logger.Info("Error marshaling data: %v", err)
|
||||||
|
return
|
||||||
}
|
}
|
||||||
|
|
||||||
if err := json.Unmarshal(jsonData, &config); err != nil {
|
if err := json.Unmarshal(jsonData, &config); err != nil {
|
||||||
logger.Info("Error unmarshaling target data: %v", err)
|
logger.Info("Error unmarshaling target data: %v", err)
|
||||||
|
return
|
||||||
}
|
}
|
||||||
|
|
||||||
s.config = config
|
s.config = config
|
||||||
|
logger.Info("Config: %v", s.config)
|
||||||
|
|
||||||
// Ensure the WireGuard interface and peers are configured
|
// Ensure the WireGuard interface and peers are configured
|
||||||
if err := s.ensureWireguardInterface(config); err != nil {
|
if err := s.ensureWireguardInterface(config); err != nil {
|
||||||
|
@ -165,12 +170,12 @@ func (s *WireGuardService) ensureWireguardInterface(wgconfig WgConfig) error {
|
||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
|
|
||||||
|
logger.Info("Assigning IP address %s to interface %s\n", wgconfig.IpAddress, s.interfaceName)
|
||||||
// Assign IP address to the interface
|
// Assign IP address to the interface
|
||||||
err = s.assignIPAddress(wgconfig.IpAddress)
|
err = s.assignIPAddress(wgconfig.IpAddress)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
logger.Fatal("Failed to assign IP address: %v", err)
|
logger.Fatal("Failed to assign IP address: %v", err)
|
||||||
}
|
}
|
||||||
logger.Info("Assigned IP address %s to interface %s\n", wgconfig.IpAddress, s.interfaceName)
|
|
||||||
|
|
||||||
// Check if the interface already exists
|
// Check if the interface already exists
|
||||||
_, err = s.wgClient.Device(s.interfaceName)
|
_, err = s.wgClient.Device(s.interfaceName)
|
||||||
|
|
Loading…
Reference in a new issue