AdguardTeam / AdGuardHome

Network-wide ads & trackers blocking DNS server
https://adguard.com/adguard-home.html
GNU General Public License v3.0
24.82k stars 1.79k forks source link

panic: runtime error: invalid memory address or nil pointer dereference #7069

Closed afreakk closed 3 months ago

afreakk commented 3 months ago

Prerequisites

Platform (OS and CPU architecture)

Linux, AMD64 (aka x86_64)

Installation

Other (please mention in the description)

Setup

On one machine

AdGuard Home version

v0.107.50

Action

adguardhome --no-check-update --pidfile /run/AdGuardHome/AdGuardHome.pid --work-dir /var/lib/AdGuardHome/ --config /var/lib/AdGuardHome/AdGuardHome.yaml

Expected result

No error

Actual result

2024/06/10 11:35:01.577552 [info] AdGuard Home, version v0.107.50
2024/06/10 11:35:01.578140 [info] tls: using default ciphers
2024/06/10 11:35:01.579085 [info] safesearch default: disabled
panic: runtime error: invalid memory address or nil pointer dereference
[signal SIGSEGV: segmentation violation code=0x1 addr=0x8 pc=0x9c6b52]
goroutine 1 [running]:
github.com/AdguardTeam/AdGuardHome/internal/filtering.(*BlockedServices).Validate(0xca74cb4380019001?)
        github.com/AdguardTeam/AdGuardHome/internal/filtering/blocked.go:75 +0x12
github.com/AdguardTeam/AdGuardHome/internal/home.(*clientObject).toPersistent(0xc000338750, 0x2292a60, 0xc000328890)
        github.com/AdguardTeam/AdGuardHome/internal/home/clients.go:264 +0x2cb
github.com/AdguardTeam/AdGuardHome/internal/home.(*clientsContainer).addFromConfig(0x22a4dc0, {0xc000360050, 0x9, 0xc?}, 0x2292a60)
        github.com/AdguardTeam/AdGuardHome/internal/home/clients.go:284 +0x87
github.com/AdguardTeam/AdGuardHome/internal/home.(*clientsContainer).Init(0x22a4dc0, {0xc000360050, 0x9, 0x9}, {0x7fd0bf1f9c18, 0xc00034d8c0},>
        github.com/AdguardTeam/AdGuardHome/internal/home/clients.go:122 +0x41e
github.com/AdguardTeam/AdGuardHome/internal/home.initContextClients()
        github.com/AdguardTeam/AdGuardHome/internal/home/home.go:301 +0x2a7
github.com/AdguardTeam/AdGuardHome/internal/home.run({{0x7ffc97423aec, 0x25}, {0x7ffc97423acd, 0x15}, {0x0, 0x0}, {0x7ffc97423aa1, 0x20}, {0x0>
        github.com/AdguardTeam/AdGuardHome/internal/home/home.go:570 +0x365
github.com/AdguardTeam/AdGuardHome/internal/home.Main({0x1bf2720, 0x1c11a40})
        github.com/AdguardTeam/AdGuardHome/internal/home/home.go:135 +0x370
main.main()
        github.com/AdguardTeam/AdGuardHome/main.go:23 +0x25

Additional information and/or screenshots

If i remove my clients.persistent part of config. it works. But my clients.persistent is very bare-bones, only has ids: and name:. Like this:

clients:
  persistent:
    - ids:
        - 10.1.1.37
        - 10.100.0.37
      name: foobar
schzhn commented 3 months ago

We've pushed the edge release that contains the fix.