diff --git a/hscontrol/types/change/change.go b/hscontrol/types/change/change.go index 36cf8a4f..ef1d4d01 100644 --- a/hscontrol/types/change/change.go +++ b/hscontrol/types/change/change.go @@ -29,11 +29,13 @@ const ( ExtraRecords Change = 13 // Node changes. - NodeCameOnline Change = 21 - NodeWentOffline Change = 22 - NodeRemove Change = 23 - NodeKeyExpiry Change = 24 - NodeNewOrUpdate Change = 25 + NodeCameOnline Change = 21 + NodeWentOffline Change = 22 + NodeRemove Change = 23 + NodeKeyExpiry Change = 24 + NodeNewOrUpdate Change = 25 + NodeEndpoint Change = 26 + NodeDERP Change = 27 // User changes. UserNewOrUpdate Change = 51 @@ -174,17 +176,19 @@ func NodeRemoved(id types.NodeID) ChangeSet { } } -func NodeOnline(id types.NodeID) ChangeSet { +func NodeOnline(node types.NodeView) ChangeSet { return ChangeSet{ - Change: NodeCameOnline, - NodeID: id, + Change: NodeCameOnline, + NodeID: node.ID(), + IsSubnetRouter: node.IsSubnetRouter(), } } -func NodeOffline(id types.NodeID) ChangeSet { +func NodeOffline(node types.NodeView) ChangeSet { return ChangeSet{ - Change: NodeWentOffline, - NodeID: id, + Change: NodeWentOffline, + NodeID: node.ID(), + IsSubnetRouter: node.IsSubnetRouter(), } } @@ -196,6 +200,20 @@ func KeyExpiry(id types.NodeID, expiry time.Time) ChangeSet { } } +func EndpointUpdate(id types.NodeID) ChangeSet { + return ChangeSet{ + Change: NodeEndpoint, + NodeID: id, + } +} + +func DERPUpdate(id types.NodeID) ChangeSet { + return ChangeSet{ + Change: NodeDERP, + NodeID: id, + } +} + func UserAdded(id types.UserID) ChangeSet { return ChangeSet{ Change: UserNewOrUpdate, diff --git a/hscontrol/types/change/change_string.go b/hscontrol/types/change/change_string.go index dbf9d17e..fd6059d5 100644 --- a/hscontrol/types/change/change_string.go +++ b/hscontrol/types/change/change_string.go @@ -18,6 +18,8 @@ func _() { _ = x[NodeRemove-23] _ = x[NodeKeyExpiry-24] _ = x[NodeNewOrUpdate-25] + _ = x[NodeEndpoint-26] + _ = x[NodeDERP-27] _ = x[UserNewOrUpdate-51] _ = x[UserRemove-52] } @@ -26,13 +28,13 @@ const ( _Change_name_0 = "ChangeUnknown" _Change_name_1 = "Full" _Change_name_2 = "PolicyDERPExtraRecords" - _Change_name_3 = "NodeCameOnlineNodeWentOfflineNodeRemoveNodeKeyExpiryNodeNewOrUpdate" + _Change_name_3 = "NodeCameOnlineNodeWentOfflineNodeRemoveNodeKeyExpiryNodeNewOrUpdateNodeEndpointNodeDERP" _Change_name_4 = "UserNewOrUpdateUserRemove" ) var ( _Change_index_2 = [...]uint8{0, 6, 10, 22} - _Change_index_3 = [...]uint8{0, 14, 29, 39, 52, 67} + _Change_index_3 = [...]uint8{0, 14, 29, 39, 52, 67, 79, 87} _Change_index_4 = [...]uint8{0, 15, 25} ) @@ -45,7 +47,7 @@ func (i Change) String() string { case 11 <= i && i <= 13: i -= 11 return _Change_name_2[_Change_index_2[i]:_Change_index_2[i+1]] - case 21 <= i && i <= 25: + case 21 <= i && i <= 27: i -= 21 return _Change_name_3[_Change_index_3[i]:_Change_index_3[i+1]] case 51 <= i && i <= 52: