40 Commits

Author SHA1 Message Date
Kevin Darbyshire-Bryant
0c8e2bd7d0 dnsmasq: use local option for local domain parameter
'--local' is a synonym for '--server' so let's use '--local' in the
resultant config file for uci's 'local' instead of uci's local
parameter being turned into '--server'.  Slightly less confusion all
round.

Signed-off-by: Kevin Darbyshire-Bryant <ldir@darbyshire-bryant.me.uk>
2021-07-06 14:28:49 +08:00
coolsnowwolf
8fc5020e3e dnsmasq: sync upstream 2021-06-30 16:16:46 +08:00
Beginner
d7e0201ce9
dnsmasq: distinct Ubus names for multiple instances (#7225)
Currently, when using multiple dnsmasq instances they are all assigned
to the same Ubus instance name. This does not work, as only a single
instance can register with Ubus at a time. In the log, this leads to
`Cannot add object to UBus: Invalid argument` error messages.
Furthermore, upstream 3c93e8eb41952a9c91699386132d6fe83050e9be changes
behaviour so that instead of the log, dnsmasq exits at start instead.

With this patch, all dnsmasq instances are assigned unique names so that
they can register with Ubus concurrently. One of the enabled instances
is always assigned the previous default name "dnsmasq" to avoid breaking
backwards compatibility with other software relying on that default.
Previously, a random instance got assigned that name (while the others
produced error logs). Now, the first unnamed dnsmasq config section is
assigned the default name. If there are no unnamed dnsmasq sections the
first encountered named dnsmasq config section is assigned instead.

A similar issue exists for Dbus and was similarly addressed.

Signed-off-by: Etan Kissling <etan.kissling@gmail.com>
[tweaked commit message] dnsmasq was not crashing it is exiting
Signed-off-by: Kevin Darbyshire-Bryant <ldir@darbyshire-bryant.me.uk>

Co-authored-by: Etan Kissling <etan.kissling@gmail.com>
2021-06-30 05:05:20 +00:00
coolsnowwolf
fb9568cbe3 kernel: bump 5.4 to 5.4.128 2021-06-24 10:49:50 +08:00
lean
260fbd3a46 dnsmasq: unselect DNSEC 2021-06-19 20:19:26 +08:00
lean
7a50383ab6 add kernel 5.10 support and sync with upstream 2021-06-14 18:30:08 +08:00
AmadeusGhost
d7a249a5c2
dnsmasq: Update to version 2.85 (#6795)
Fixes issue with merged DNS requests in 2.83/2.84 not being
retried on the firsts failed request causing lookup failures.

Also fixes the following security problem in dnsmasq:
* CVE-2021-3448:
  If specifiying the source address or interface to be used
  when contacting upstream name servers such as:
  server=8.8.8.8@1.2.3.4, server=8.8.8.8@1.2.3.4#66 and
  server=8.8.8.8@eth0 then all would use the same socket
  bound to the explicitly configured port. Now only
  server=8.8.8.8@1.2.3.4#66 will use the explicitly
  configured port and the others random source ports.

Remove upstreamed patches and update remaining patch.

Signed-off-by: Alan Swanson <reiver@improbability.net>
[refreshed old runtime support patch]
Signed-off-by: Kevin Darbyshire-Bryant <ldir@darbyshire-bryant.me.uk>

Co-authored-by: Alan Swanson <reiver@improbability.net>
2021-05-05 23:24:23 +08:00
z826540272
d3d6f3a2c4
DNSMASQ ttl config (#6779)
默认情况下 SSR PLUS DNS结果根本无法缓存(由于引入拒绝ipv6结果导致的问题),nslookup & dig 延迟每次依然有200-300多.
dnsmasq处设置缓存依然无效,设置TTL也无效,应该是bug。
解决办法是手动指定缓存TTL为最大一小时。域名查询实测有效缓存0延迟。 

此变更仅使开启dnsmasq缓存的情况下正常工作。
2021-05-03 22:50:02 +08:00
xiaobaishu1
7daf3edcec
Update Makefile (#6290)
切换到正式版本
2021-01-31 14:48:11 +08:00
AmadeusGhost
b95ffef87f
Revert "dnsmasq: force sync with official code" (#6266)
Fixes: 9170d18d0da78b7e70b9f45d0bf7771feee90a25 ("dnsmasq: Update to 2.84test3")
2021-01-27 17:12:30 +08:00
Beginner
9170d18d0d
dnsmasq: Update to 2.84test3 (#6259) 2021-01-26 18:38:30 +08:00
xiaobaishu1
e780247bf7
Update DNSMASQ (#6250) 2021-01-25 16:31:52 +08:00
AmadeusGhost
1c271cdd2c
dnsmasq: Update to version 2.83 (#6245)
This fixes the following security problems in dnsmasq:
* CVE-2020-25681:
  Dnsmasq versions before 2.83 is susceptible to a heap-based buffer
  overflow in sort_rrset() when DNSSEC is used. This can allow a remote
  attacker to write arbitrary data into target device's memory that can
  lead to memory corruption and other unexpected behaviors on the target
  device.
* CVE-2020-25682:
  Dnsmasq versions before 2.83 is susceptible to buffer overflow in
  extract_name() function due to missing length check, when DNSSEC is
  enabled. This can allow a remote attacker to cause memory corruption
  on the target device.
* CVE-2020-25683:
  Dnsmasq version before 2.83 is susceptible to a heap-based buffer
  overflow when DNSSEC is enabled. A remote attacker, who can create
  valid DNS replies, could use this flaw to cause an overflow in a heap-
  allocated memory. This flaw is caused by the lack of length checks in
  rtc1035.c:extract_name(), which could be abused to make the code
  execute memcpy() with a negative size in get_rdata() and cause a crash
  in Dnsmasq, resulting in a Denial of Service.
* CVE-2020-25684:
  A lack of proper address/port check implemented in Dnsmasq version <
  2.83 reply_query function makes forging replies easier to an off-path
  attacker.
* CVE-2020-25685:
  A lack of query resource name (RRNAME) checks implemented in Dnsmasq's
  versions before 2.83 reply_query function allows remote attackers to
  spoof DNS traffic that can lead to DNS cache poisoning.
* CVE-2020-25686:
  Multiple DNS query requests for the same resource name (RRNAME) by
  Dnsmasq versions before 2.83 allows for remote attackers to spoof DNS
  traffic, using a birthday attack (RFC 5452), that can lead to DNS
  cache poisoning.
* CVE-2020-25687:
  Dnsmasq versions before 2.83 is vulnerable to a heap-based buffer
  overflow with large memcpy in sort_rrset() when DNSSEC is enabled. A
  remote attacker, who can create valid DNS replies, could use this flaw
  to cause an overflow in a heap-allocated memory. This flaw is caused
  by the lack of length checks in rtc1035.c:extract_name(), which could
  be abused to make the code execute memcpy() with a negative size in
  sort_rrset() and cause a crash in dnsmasq, resulting in a Denial of
  Service.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>

Co-authored-by: Hauke Mehrtens <hauke@hauke-m.de>
2021-01-25 01:37:23 +08:00
AmadeusGhost
404209f6c4
kernel: bump to 4.14.193, 4.19.138, 5.4.59 (#5350)
kernel: bump to 4.14.193, 4.19.138, 5.4.59 (#5350)
  431fb8c mac80211: add AQL improvements
  6bdd4c9 mac80211: add missing backports for building with 4.14 kernels
  0106820 mac80211: add missing return code checks in AQL improvements
  e7f7101 mac80211: rework encapsulation offload support

[package]
  base-files: add function for generating random MAC
  dnsmasq: abort dhcp_check on interface state
  boot: sync upstream source code
  ath10k-ct-firmware/mt76/sch_cake: update to latest git HEAD

[script]
  download: add China Mirror Station

[target]
  Sync: arc770, ath79, bcm63xx, kirkwood, lantiq, layerscape,
        mediatek, mvebu, octeon, oxnas, pistachio, uml
  Sync most of the target patches.

Run-compiled-on: ipq40xx (4.19 & 5.4), ramips
2020-08-26 11:31:50 +08:00
coolsnowwolf
96652f8f80 dnsmasq: disable dhcpv6 by default 2020-07-03 13:58:59 +08:00
coolsnowwolf
33abeff31c Sync to snapshot kernel 5.4 version 2020-07-02 23:30:56 +08:00
Chuck
929f3953dd firewall: refresh 900-filter-aaaa.patch
Signed-off-by: Chuck <fanck0605@qq.com>
2020-05-31 15:39:00 +08:00
coolsnowwolf
ce4f85886d dnsmasq: add mini ttl support client-side cache 2020-02-19 20:07:15 +08:00
coolsnowwolf
8c696f1e9b Revert "Add DHCP clients comments info (#2884)"
This reverts commit bb18798d22522711492a51288aee7f6c2e43738e.
2020-02-15 01:37:11 +08:00
zzs01
bb18798d22
Add DHCP clients comments info (#2884)
Co-authored-by: Twinzo1 <44726207+Twinzo1@users.noreply.github.com>
2020-02-14 23:26:33 +08:00
coolsnowwolf
d5cd053f35 dnsmasq: add filter-aaaa option (IPv6 2020-02-14 00:06:27 +08:00
LEAN-ESX
5cf20fb286 dnsmasq: Activate PIE by default 2020-01-17 11:00:51 -08:00
coolsnowwolf
0a8986dbc5 dnsmasq: Fix dhcp-boot, dhcp-reply-delay and pxe-prompt regressions 2018-12-15 13:34:05 +08:00
coolsnowwolf
4eef1f3c91 dnsmasq: tighten config file permissions 2018-10-31 19:45:02 +08:00
coolsnowwolf
282b1faf47 dnsmasq: bump to v2.80 2018-10-20 15:12:06 +08:00
coolsnowwolf
3206c1a748 dnsmasq force dhcp server at boot 2018-10-19 00:48:43 +08:00
coolsnowwolf
57120715db dnsmasq: bump to v2.80rc1 2018-10-16 19:27:14 +08:00
coolsnowwolf
68814dbd75 dnsmasq: bump to v2.80test7 2018-09-28 11:04:50 +08:00
coolsnowwolf
4622c6891a dnsmasq: Handle memory allocation failure from upstream 2018-09-23 14:55:59 +08:00
coolsnowwolf
db6251d3b6 reduce image size to fit 8M SPI router 2018-08-24 14:11:29 +08:00
coolsnowwolf
9ba04fd0d7 sync with OpenWrt v18.06.1 stable new R8.1 version 2018-08-23 17:40:23 +08:00
coolsnowwolf
8fe0636b8a Merge branch 'master' of github.com:lede-project/source 2018-04-23 18:50:49 +08:00
coolsnowwolf
20f7e75789 update to R7.5.4 2018-01-15 18:26:41 +08:00
coolsnowwolf
b0f643aa87 update to R7.5.3 stable to fix firewall freeze 2018-01-10 20:55:06 +08:00
coolsnowwolf
84bc8c0a5c dnsmasq: rewrite config on host name modification 2017-12-28 14:15:44 +08:00
coolsnowwolf
72c6b996b0 dnsmasq: fix dhcp-host entries with empty macs 2017-12-12 16:36:23 +08:00
coolsnowwolf
53eada2a47 dnsmasq: add listen_address parameter 2017-10-14 13:16:17 +08:00
coolsnowwolf
b29e9ad979 update dnsmasq to 2.78 for CVE fix 2017-10-13 22:25:22 +08:00
coolsnowwolf
855f334f77 Downgrade DNSMASQ to 2.7.6 stable 2017-09-06 22:24:18 +08:00
coolsnowwolf
97a4ffcc12 update source 2017-09-06 19:19:45 +08:00