Skip to content

Commit 53297ec

Browse files
committed
add dns support to tcp and udp formats.
1 parent 18dc235 commit 53297ec

File tree

2 files changed

+17
-8
lines changed

2 files changed

+17
-8
lines changed

patterns.go

Lines changed: 11 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -23,13 +23,19 @@ var DNS = Or(
2323
// Define IP as either ipv4 or ipv6
2424
var IP = Or(Base(ma.P_IP4), Base(ma.P_IP6))
2525

26-
// Define TCP as 'tcp' on top of either ipv4 or ipv6
27-
var TCP = And(IP, Base(ma.P_TCP))
26+
// Define TCP as 'tcp' on top of either ipv4 or ipv6, or dns equivalents.
27+
var TCP = Or(
28+
And(DNS, Base(ma.P_TCP)),
29+
And(IP, Base(ma.P_TCP)),
30+
)
2831

29-
// Define UDP as 'udp' on top of either ipv4 or ipv6
30-
var UDP = And(IP, Base(ma.P_UDP))
32+
// Define UDP as 'udp' on top of either ipv4 or ipv6, or dns equivalents.
33+
var UDP = Or(
34+
And(DNS, Base(ma.P_UDP)),
35+
And(IP, Base(ma.P_UDP)),
36+
)
3137

32-
// Define UTP as 'utp' on top of udp (on top of ipv4 or ipv6)
38+
// Define UTP as 'utp' on top of udp (on top of ipv4 or ipv6).
3339
var UTP = And(UDP, Base(ma.P_UTP))
3440

3541
// Define QUIC as 'quic' on top of udp (on top of ipv4 or ipv6)

patterns_test.go

Lines changed: 6 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -43,9 +43,6 @@ func TestBasicMatching(t *testing.T) {
4343
"/dns4/ipfs.io",
4444
"/dns4/libp2p.io",
4545
"/dns6/protocol.ai",
46-
"/dns4/protocol.ai/tcp/80",
47-
"/dns6/protocol.ai/tcp/80",
48-
"/dnsaddr/protocol.ai/tcp/8",
4946
}
5047

5148
bad_dns := []string{
@@ -65,6 +62,9 @@ func TestBasicMatching(t *testing.T) {
6562
good_tcp := []string{
6663
"/ip4/0.0.7.6/tcp/1234",
6764
"/ip6/::/tcp/0",
65+
"/dns4/protocol.ai/tcp/80",
66+
"/dns6/protocol.ai/tcp/80",
67+
"/dnsaddr/protocol.ai/tcp/8",
6868
}
6969

7070
bad_tcp := []string{
@@ -75,6 +75,9 @@ func TestBasicMatching(t *testing.T) {
7575
good_udp := []string{
7676
"/ip4/0.0.7.6/udp/1234",
7777
"/ip6/::/udp/0",
78+
"/dns4/protocol.ai/udp/80",
79+
"/dns6/protocol.ai/udp/80",
80+
"/dnsaddr/protocol.ai/udp/8",
7881
}
7982

8083
bad_udp := []string{

0 commit comments

Comments
 (0)