Skip to content

Commit

Permalink
Coverage
Browse files Browse the repository at this point in the history
- Add more coverage tests for indexers
- Add coverage test for local IP addresses
- Add test and coverage of DNS-over-TCP
  • Loading branch information
jelu committed Sep 3, 2020
1 parent d0f17ed commit d1514d4
Show file tree
Hide file tree
Showing 8 changed files with 468 additions and 3 deletions.
14 changes: 14 additions & 0 deletions src/test/1458044657.conf
Original file line number Diff line number Diff line change
@@ -1,4 +1,15 @@
local_address 127.0.0.1;
local_address 127.0.1.1 24;
local_address 127.0.2.1 255.255.255.0;
local_address 127.0.3.1 0;
local_address ::1;
local_address ::1 112;
local_address ::1 96;
local_address ::1 64;
local_address ::1 48;
local_address ::1 32;
local_address ::1 0;
local_address ::1 ffff::;
run_dir ".";
minfree_bytes 5000000;
interface ./1458044657.pcap.dist;
Expand All @@ -23,12 +34,15 @@ dataset idn_vs_tld dns All:null TLD:tld queries-only,idn-only;
dataset ipv6_rsn_abusers dns All:null ClientAddr:client queries-only,aaaa-or-a6-only,root-servers-net-only max-cells=50;
dataset transport_vs_qtype dns Transport:transport Qtype:qtype queries-only;
dataset client_port_range dns All:null PortRange:dns_sport_range queries-only;
dataset client_port dns All:null Port:dns_source_port any;
dataset direction_vs_ipproto ip Direction:ip_direction IPProto:ip_proto any;
dataset ip_version ip All:null Version:ip_version any;
dataset dns_ip_version dns All:null Version:dns_ip_version any;
dataset qclass dns All:null Class:qclass any;
dataset qname dns All:null Name:qname any;
dataset qr_aa_bits dns Direction:ip_direction QRAABits:qr_aa_bits any;
dataset server dns All:null IP:server any;
dataset second_ld_vs_rcode dns Rcode:rcode SecondLD:second_ld replies-only max-cells=50;
dataset third_ld_vs_rcode dns Rcode:rcode ThirdLD:third_ld replies-only max-cells=50;
output_format XML;
output_format JSON;
50 changes: 50 additions & 0 deletions src/test/1458044657.json_gold
Original file line number Diff line number Diff line change
Expand Up @@ -14,6 +14,38 @@
}
]
},
{
"name": "third_ld_vs_rcode",
"start_time": 1458044655,
"stop_time": 1458044657,
"dimensions": [ "Rcode", "ThirdLD" ],
"data": [
{
"Rcode": "0",
"ThirdLD": [
{ "val": "216.in-addr.arpa", "count": 2 },
{ "val": "www.google.se", "count": 1 },
{ "val": "www.google.com", "count": 1 }
]
}
]
},
{
"name": "second_ld_vs_rcode",
"start_time": 1458044655,
"stop_time": 1458044657,
"dimensions": [ "Rcode", "SecondLD" ],
"data": [
{
"Rcode": "0",
"SecondLD": [
{ "val": "in-addr.arpa", "count": 2 },
{ "val": "google.com", "count": 1 },
{ "val": "google.se", "count": 1 }
]
}
]
},
{
"name": "server",
"start_time": 1458044655,
Expand Down Expand Up @@ -132,6 +164,24 @@
}
]
},
{
"name": "client_port",
"start_time": 1458044655,
"stop_time": 1458044657,
"dimensions": [ "All", "Port" ],
"data": [
{
"All": "ALL",
"Port": [
{ "val": "59978", "count": 4 },
{ "val": "0", "count": 1 },
{ "val": "53", "count": 1 },
{ "val": "44275", "count": 1 },
{ "val": "57483", "count": 1 }
]
}
]
},
{
"name": "client_port_range",
"start_time": 1458044655,
Expand Down
35 changes: 35 additions & 0 deletions src/test/1458044657.xml_gold
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,28 @@
</ifname>
</data>
</array>
<array name="third_ld_vs_rcode" dimensions="2" start_time="1458044655" stop_time="1458044657">
<dimension number="1" type="Rcode"/>
<dimension number="2" type="ThirdLD"/>
<data>
<Rcode val="0">
<ThirdLD val="216.in-addr.arpa" count="2"/>
<ThirdLD val="www.google.se" count="1"/>
<ThirdLD val="www.google.com" count="1"/>
</Rcode>
</data>
</array>
<array name="second_ld_vs_rcode" dimensions="2" start_time="1458044655" stop_time="1458044657">
<dimension number="1" type="Rcode"/>
<dimension number="2" type="SecondLD"/>
<data>
<Rcode val="0">
<SecondLD val="in-addr.arpa" count="2"/>
<SecondLD val="google.com" count="1"/>
<SecondLD val="google.se" count="1"/>
</Rcode>
</data>
</array>
<array name="server" dimensions="2" start_time="1458044655" stop_time="1458044657">
<dimension number="1" type="All"/>
<dimension number="2" type="IP"/>
Expand Down Expand Up @@ -83,6 +105,19 @@
</Direction>
</data>
</array>
<array name="client_port" dimensions="2" start_time="1458044655" stop_time="1458044657">
<dimension number="1" type="All"/>
<dimension number="2" type="Port"/>
<data>
<All val="ALL">
<Port val="59978" count="4"/>
<Port val="0" count="1"/>
<Port val="53" count="1"/>
<Port val="44275" count="1"/>
<Port val="57483" count="1"/>
</All>
</data>
</array>
<array name="client_port_range" dimensions="2" start_time="1458044655" stop_time="1458044657">
<dimension number="1" type="All"/>
<dimension number="2" type="PortRange"/>
Expand Down
13 changes: 10 additions & 3 deletions src/test/Makefile.am
Original file line number Diff line number Diff line change
Expand Up @@ -6,11 +6,12 @@ CLEANFILES = test*.log test*.trs \
1463589826.dscdata.xml \
test.dnstap.dist 1573730567.dscdata.xml \
mmdb.conf.run \
dns6.conf.run dns6.pcap.dist 1543333920.dscdata.xml
dns6.conf.run dns6.pcap.dist 1543333920.dscdata.xml \
dnso1tcp.pcap.dist 1515583363.dscdata.xml

EXTRA_DIST =

TESTS = test1.sh test2.sh test3.sh test4.sh test6.sh test7.sh
TESTS = test1.sh test2.sh test3.sh test4.sh test6.sh test7.sh test8.sh

if USE_DNSTAP
TESTS += test5.sh
Expand Down Expand Up @@ -44,6 +45,11 @@ test7.sh: dns6.pcap.dist
dns6.pcap.dist: dns6.pcap
ln -s "$(srcdir)/dns6.pcap" dns6.pcap.dist

test8.sh: dnso1tcp.pcap.dist

dnso1tcp.pcap.dist: dnso1tcp.pcap
ln -s "$(srcdir)/dnso1tcp.pcap" dnso1tcp.pcap.dist

EXTRA_DIST += $(TESTS) \
1458044657.conf 1458044657.pcap 1458044657.json_gold 1458044657.xml_gold \
pid.conf pid.pcap \
Expand All @@ -55,4 +61,5 @@ EXTRA_DIST += $(TESTS) \
response_time3.conf response_time3.gold \
test.dnstap 1573730567.conf 1573730567.gold \
mmdb.conf mmdb.gold \
dns6.pcap dns6.conf dns6.gold
dns6.pcap dns6.conf dns6.gold \
dnso1tcp.pcap dnso1tcp.conf dnso1tcp.gold
36 changes: 36 additions & 0 deletions src/test/dnso1tcp.conf
Original file line number Diff line number Diff line change
@@ -0,0 +1,36 @@
local_address 127.0.0.1;
run_dir ".";
minfree_bytes 5000000;
interface ./dnso1tcp.pcap.dist;
dataset qtype dns All:null Qtype:qtype queries-only;
dataset rcode dns All:null Rcode:rcode replies-only;
dataset opcode dns All:null Opcode:opcode queries-only;
dataset rcode_vs_replylen dns Rcode:rcode ReplyLen:msglen replies-only;
dataset client_subnet dns All:null ClientSubnet:client_subnet queries-only max-cells=200;
dataset qtype_vs_qnamelen dns Qtype:qtype QnameLen:qnamelen queries-only;
dataset qtype_vs_tld dns Qtype:qtype TLD:tld queries-only,popular-qtypes max-cells=200;
dataset certain_qnames_vs_qtype dns CertainQnames:certain_qnames Qtype:qtype queries-only;
dataset client_subnet2 dns Class:query_classification ClientSubnet:client_subnet queries-only max-cells=200;
dataset client_addr_vs_rcode dns Rcode:rcode ClientAddr:client replies-only max-cells=50;
dataset chaos_types_and_names dns Qtype:qtype Qname:qname chaos-class,queries-only;
dataset idn_qname dns All:null IDNQname:idn_qname queries-only;
dataset edns_version dns All:null EDNSVersion:edns_version queries-only;
dataset edns_bufsiz dns All:null EDNSBufSiz:edns_bufsiz queries-only;
dataset do_bit dns All:null D0:do_bit queries-only;
dataset rd_bit dns All:null RD:rd_bit queries-only;
dataset tc_bit dns All:null TC:tc_bit any;
dataset idn_vs_tld dns All:null TLD:tld queries-only,idn-only;
dataset ipv6_rsn_abusers dns All:null ClientAddr:client queries-only,aaaa-or-a6-only,root-servers-net-only max-cells=50;
dataset transport_vs_qtype dns Transport:transport Qtype:qtype queries-only;
dataset client_port_range dns All:null PortRange:dns_sport_range queries-only;
dataset client_port dns All:null Port:dns_source_port any;
dataset direction_vs_ipproto ip Direction:ip_direction IPProto:ip_proto any;
dataset ip_version ip All:null Version:ip_version any;
dataset dns_ip_version dns All:null Version:dns_ip_version any;
dataset qclass dns All:null Class:qclass any;
dataset qname dns All:null Name:qname any;
dataset qr_aa_bits dns Direction:ip_direction QRAABits:qr_aa_bits any;
dataset server dns All:null IP:server any;
dataset second_ld_vs_rcode dns Rcode:rcode SecondLD:second_ld replies-only max-cells=50;
dataset third_ld_vs_rcode dns Rcode:rcode ThirdLD:third_ld replies-only max-cells=50;
output_format XML;
Loading

0 comments on commit d1514d4

Please sign in to comment.