/[smeserver]/rpms/djbdns/sme9/080-dnscache-cache-negatives.patch
ViewVC logotype

Annotation of /rpms/djbdns/sme9/080-dnscache-cache-negatives.patch

Parent Directory Parent Directory | Revision Log Revision Log | View Revision Graph Revision Graph


Revision 1.1 - (hide annotations) (download)
Wed Jul 12 04:56:18 2017 UTC (7 years, 4 months ago) by unnilennium
Branch: MAIN
CVS Tags: djbdns-1_05-11_el6_sme, djbdns-1_05-9_el6_sme, djbdns-1_05-10_el6_sme, HEAD
* Tue Jul 11 2017 Jean-Philipe Pialasse <tests@pialasse.com> 1.05-9.sme
-- backport SME10 fixes [SME: 10381]
--import patches from openwrt and rename already applied patches
--fix security issues [SME: 10374]
- 020-dnsroots-update.patch: update list of root DNS servers
- 070-dnscache-dpos-tcp-servfail.patch: SERVFAIL rename previous patch dns_transmit-bug.patch
- 210-dnscache-strict-forwardonly.patch: rename previous patch dnscache-strict-forwardonly.patch
- 270-dnscache-sigpipe-fix.patch: SIGPIPE
- 300-bugfix-dnscache-dempsky-poison.patch: CVE-2009-0858
- 310-bugfix-dnscache-merge-outgoing-requests.patch: CVE-2008-4392
- 320-bugfix-dnscache-cache-soa-records.patch: CVE-2008-4392
- 450-dnscache-ghost-domain-CVE-2012-1191.patch: CVE-2012-1191 http://marc.info/?l=djbdns&m=134190748729079&w=2
--bug fixes [SME: 10374]
- 060-dnscache-big-udp-packets.patch: accept and handle longer than 512 bytes UDP packets
- 230-tinydns-data-semantic-error.patch: handle semantic error to avoid publishing false dns records
- 240-tinydns-alias-chain-truncation.patch: rename previous patch tinydns-alias-chain-truncation.patch
--fix issue with short ttl cname like akamaid [SME: 8362]
- 200-dnscache-cname-handling.patch: rename previous patch dnscache-cname-handling.patch
- 330-fix-dnscache-cname-handling.patch: fix dnscache cname for short ttl
- 500-cutom-dnscache-maxloop.patch: set max loop to 200
--needed for previous patches to apply cleanly
- 030-srv-records-and-axfrget.patch: add SRV record type and axfr-get decompose SRC and PTR records (for 230-*.patch)
- 080-dnscache-cache-negatives.patch: rfc2308 ? (for 200-*.patch)
- 090-tinydns-one-second.patch: improve tinydns with 8 or more  concurent connections (for 240-*.patch)
- 120-compiler-temporary-filename.patch: change tmp filename to avoid conflicts (for 230-*.patch)
--not backported from SME10 branch
- 050-tinydns-mmap-leak.patch: report cdb leak

1 unnilennium 1.1 --- a/query.c
2     +++ b/query.c
3     @@ -193,6 +193,7 @@ static int doit(struct query *z,int stat
4     int k;
5     int p;
6     int q;
7     + uint32 cachettl;
8    
9     errno = error_io;
10     if (state == 1) goto HAVEPACKET;
11     @@ -470,6 +471,7 @@ static int doit(struct query *z,int stat
12     rcode = header[3] & 15;
13     if (rcode && (rcode != 3)) goto DIE; /* impossible; see irrelevant() */
14    
15     + cachettl = 0;
16     flagout = 0;
17     flagcname = 0;
18     flagreferral = 0;
19     @@ -512,6 +514,11 @@ static int doit(struct query *z,int stat
20    
21     uint16_unpack_big(header + 8,&datalen);
22     pos += datalen;
23     +
24     + if (flagsoa && (pos <= len)) {
25     + cachettl = ttlget(buf + pos - 4);
26     + if (soattl < cachettl) cachettl = soattl;
27     + }
28     }
29     posglue = pos;
30    
31     @@ -689,8 +696,8 @@ static int doit(struct query *z,int stat
32     }
33    
34     if (rcode == 3) {
35     - log_nxdomain(whichserver,d,soattl);
36     - cachegeneric(DNS_T_ANY,d,"",0,soattl);
37     + log_nxdomain(whichserver,d,cachettl);
38     + cachegeneric(DNS_T_ANY,d,"",0,cachettl);
39    
40     NXDOMAIN:
41     if (z->level) goto LOWERLEVEL;

admin@koozali.org
ViewVC Help
Powered by ViewVC 1.2.1 RSS 2.0 feed