|
@@ -123,7 +123,7 @@ func UniqueIPNetStrList(ipnets []string) []string {
|
|
}
|
|
}
|
|
|
|
|
|
// DeleteExtClient - deletes an existing ext client
|
|
// DeleteExtClient - deletes an existing ext client
|
|
-func DeleteExtClient(network string, clientid string) error {
|
|
|
|
|
|
+func DeleteExtClient(network string, clientid string, isUpdate bool) error {
|
|
key, err := GetRecordKey(clientid, network)
|
|
key, err := GetRecordKey(clientid, network)
|
|
if err != nil {
|
|
if err != nil {
|
|
return err
|
|
return err
|
|
@@ -146,7 +146,7 @@ func DeleteExtClient(network string, clientid string) error {
|
|
}
|
|
}
|
|
deleteExtClientFromCache(key)
|
|
deleteExtClientFromCache(key)
|
|
}
|
|
}
|
|
- if extClient.RemoteAccessClientID != "" {
|
|
|
|
|
|
+ if !isUpdate && extClient.RemoteAccessClientID != "" {
|
|
LogEvent(&models.Event{
|
|
LogEvent(&models.Event{
|
|
Action: models.Disconnect,
|
|
Action: models.Disconnect,
|
|
Source: models.Subject{
|
|
Source: models.Subject{
|
|
@@ -173,7 +173,7 @@ func DeleteExtClient(network string, clientid string) error {
|
|
func DeleteExtClientAndCleanup(extClient models.ExtClient) error {
|
|
func DeleteExtClientAndCleanup(extClient models.ExtClient) error {
|
|
|
|
|
|
//delete extClient record
|
|
//delete extClient record
|
|
- err := DeleteExtClient(extClient.Network, extClient.ClientID)
|
|
|
|
|
|
+ err := DeleteExtClient(extClient.Network, extClient.ClientID, false)
|
|
if err != nil {
|
|
if err != nil {
|
|
slog.Error("DeleteExtClientAndCleanup-remove extClient record: ", "Error", err.Error())
|
|
slog.Error("DeleteExtClientAndCleanup-remove extClient record: ", "Error", err.Error())
|
|
return err
|
|
return err
|
|
@@ -511,7 +511,7 @@ func ToggleExtClientConnectivity(client *models.ExtClient, enable bool) (models.
|
|
|
|
|
|
// update in DB
|
|
// update in DB
|
|
newClient := UpdateExtClient(client, &update)
|
|
newClient := UpdateExtClient(client, &update)
|
|
- if err := DeleteExtClient(client.Network, client.ClientID); err != nil {
|
|
|
|
|
|
+ if err := DeleteExtClient(client.Network, client.ClientID, true); err != nil {
|
|
slog.Error("failed to delete ext client during update", "id", client.ClientID, "network", client.Network, "error", err)
|
|
slog.Error("failed to delete ext client during update", "id", client.ClientID, "network", client.Network, "error", err)
|
|
return newClient, err
|
|
return newClient, err
|
|
}
|
|
}
|