mirror of
https://github.com/pi-hole/dnsmasq.git
synced 2025-12-19 10:18:25 +00:00
Fix crash on SERVFAIL when --conntrack in use.
This commit is contained in:
committed by
Simon Kelley
parent
4b5ea12e90
commit
797a7afba4
@@ -1,3 +1,9 @@
|
|||||||
|
version 2.67
|
||||||
|
Fix crash if upstream server returns SERVFAIL when
|
||||||
|
--conntrack in use. Thanks to Giacomo Tazzari for finding
|
||||||
|
this and supplying the patch.
|
||||||
|
|
||||||
|
|
||||||
version 2.66
|
version 2.66
|
||||||
Add the ability to act as an authoritative DNS
|
Add the ability to act as an authoritative DNS
|
||||||
server. Dnsmasq can now answer queries from the wider 'net
|
server. Dnsmasq can now answer queries from the wider 'net
|
||||||
|
|||||||
@@ -328,8 +328,8 @@ static int forward_query(int udpfd, union mysockaddr *udpaddr,
|
|||||||
struct server *firstsentto = start;
|
struct server *firstsentto = start;
|
||||||
int forwarded = 0;
|
int forwarded = 0;
|
||||||
|
|
||||||
if (udpaddr && option_bool(OPT_ADD_MAC))
|
if (option_bool(OPT_ADD_MAC))
|
||||||
plen = add_mac(header, plen, ((char *) header) + PACKETSZ, udpaddr);
|
plen = add_mac(header, plen, ((char *) header) + PACKETSZ, &forward->source);
|
||||||
|
|
||||||
while (1)
|
while (1)
|
||||||
{
|
{
|
||||||
@@ -372,7 +372,7 @@ static int forward_query(int udpfd, union mysockaddr *udpaddr,
|
|||||||
if (option_bool(OPT_CONNTRACK))
|
if (option_bool(OPT_CONNTRACK))
|
||||||
{
|
{
|
||||||
unsigned int mark;
|
unsigned int mark;
|
||||||
if (get_incoming_mark(udpaddr, dst_addr, 0, &mark))
|
if (get_incoming_mark(&forward->source, &forward->dest, 0, &mark))
|
||||||
setsockopt(fd, SOL_SOCKET, SO_MARK, &mark, sizeof(unsigned int));
|
setsockopt(fd, SOL_SOCKET, SO_MARK, &mark, sizeof(unsigned int));
|
||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
|
|||||||
Reference in New Issue
Block a user