Pull request: 2582 invalid hostname vol.2
Merge in DNS/adguard-home from 2582-invalid-hostname-2 to master
Updates #2582.
Squashed commit of the following:
commit 9d3ceb289e3869b2c3d12e91ec104fb25d7931ee
Merge: 91c68e46 90054974
Author: Eugene Burkov <e.burkov@adguard.com>
Date: Fri Mar 5 19:11:49 2021 +0300
Merge branch 'master' into 2582-invalid-hostname-2
commit 91c68e468c5f5b12a2fb509ff391133483c9d915
Author: Eugene Burkov <e.burkov@adguard.com>
Date: Fri Mar 5 18:28:14 2021 +0300
all: mv trimming from home to dhcpd
commit f51faf35288577b6f610f172b26e7ac13aa24f72
Author: Eugene Burkov <e.burkov@adguard.com>
Date: Fri Mar 5 16:28:00 2021 +0300
home: add more host sanitizings
This commit is contained in:
@@ -7,6 +7,7 @@ import (
|
||||
"encoding/binary"
|
||||
"fmt"
|
||||
"net"
|
||||
"strings"
|
||||
"sync"
|
||||
"time"
|
||||
|
||||
@@ -463,7 +464,16 @@ func (s *v4Server) processRequest(req, resp *dhcpv4.DHCPv4) (*Lease, bool) {
|
||||
}
|
||||
|
||||
if lease.Expiry.Unix() != leaseExpireStatic {
|
||||
lease.Hostname = string(hostname)
|
||||
// The trimming is required since some devices include trailing
|
||||
// zero-byte in DHCP option length calculation.
|
||||
//
|
||||
// See https://github.com/AdguardTeam/AdGuardHome/issues/2582.
|
||||
//
|
||||
// TODO(e.burkov): Remove after the trimming for hostname option
|
||||
// will be added into github.com/insomniacslk/dhcp module.
|
||||
hostnameStr := strings.TrimRight(string(hostname), "\x00")
|
||||
|
||||
lease.Hostname = hostnameStr
|
||||
s.commitLease(lease)
|
||||
} else if len(lease.Hostname) != 0 {
|
||||
o := &optFQDN{
|
||||
|
||||
Reference in New Issue
Block a user