Pull request 1800: AG-20352-dhcpd-lease-is-static
Merge in DNS/adguard-home from AG-20352-dhcpd-lease-is-static to master Squashed commit of the following: commit e4f4278a7ffa0f084ed41472dd3e7de4466c9f50 Merge: b6e3b62e15bba281Author: Stanislav Chzhen <s.chzhen@adguard.com> Date: Mon Apr 10 11:13:05 2023 +0300 Merge branch 'master' into AG-20352-dhcpd-lease-is-static commit b6e3b62ed4e7bc17fc3fdd2f4faa940a7f4334c2 Author: Stanislav Chzhen <s.chzhen@adguard.com> Date: Thu Apr 6 15:20:42 2023 +0300 dhcpd: imp naming commit e2d9ed0832b329f4cebcf8cbfcfadc5755fe441b Merge: ecd244a610bffd89Author: Stanislav Chzhen <s.chzhen@adguard.com> Date: Wed Apr 5 16:53:55 2023 +0300 Merge branch 'master' into AG-20352-dhcpd-lease-is-static commit ecd244a60841d3cb96d292da688e353650baf645 Author: Stanislav Chzhen <s.chzhen@adguard.com> Date: Wed Apr 5 16:53:15 2023 +0300 dhcpd: add lease json form commit 9ebc246ed4711ff46091326a7cb35ea90b880cff Author: Stanislav Chzhen <s.chzhen@adguard.com> Date: Wed Apr 5 13:11:25 2023 +0300 dhcpd: imp code commit fc3d0cdaebf9e32e73d57e80296f9891896259cf Author: Stanislav Chzhen <s.chzhen@adguard.com> Date: Wed Apr 5 13:00:59 2023 +0300 all: fix json commit d722578543b98b1fefabecd6486f3bc102263d71 Author: Stanislav Chzhen <s.chzhen@adguard.com> Date: Wed Apr 5 12:23:34 2023 +0300 dhcpd: add lease is static
This commit is contained in:
@@ -51,6 +51,9 @@ type Lease struct {
|
||||
//
|
||||
// TODO(a.garipov): Migrate leases.db.
|
||||
IP netip.Addr `json:"ip"`
|
||||
|
||||
// IsStatic defines if the lease is static.
|
||||
IsStatic bool `json:"static"`
|
||||
}
|
||||
|
||||
// Clone returns a deep copy of l.
|
||||
@@ -64,6 +67,7 @@ func (l *Lease) Clone() (clone *Lease) {
|
||||
Hostname: l.Hostname,
|
||||
HWAddr: slices.Clone(l.HWAddr),
|
||||
IP: l.IP,
|
||||
IsStatic: l.IsStatic,
|
||||
}
|
||||
}
|
||||
|
||||
@@ -84,17 +88,10 @@ func (l *Lease) IsBlocklisted() (ok bool) {
|
||||
return true
|
||||
}
|
||||
|
||||
// IsStatic returns true if the lease is static.
|
||||
//
|
||||
// TODO(a.garipov): Just make it a boolean field.
|
||||
func (l *Lease) IsStatic() (ok bool) {
|
||||
return l != nil && l.Expiry.Unix() == leaseExpireStatic
|
||||
}
|
||||
|
||||
// MarshalJSON implements the json.Marshaler interface for Lease.
|
||||
func (l Lease) MarshalJSON() ([]byte, error) {
|
||||
var expiryStr string
|
||||
if !l.IsStatic() {
|
||||
if !l.IsStatic {
|
||||
// The front-end is waiting for RFC 3999 format of the time
|
||||
// value. It also shouldn't got an Expiry field for static
|
||||
// leases.
|
||||
|
||||
Reference in New Issue
Block a user