aboutsummaryrefslogtreecommitdiff
path: root/middleware/test/responsewriter.go
diff options
context:
space:
mode:
authorGravatar Thong Huynh <thuynh@infoblox.com> 2017-09-08 13:36:09 -0700
committerGravatar Miek Gieben <miek@miek.nl> 2017-09-08 21:36:09 +0100
commit8e5d0a23fa7225382f869a6af918f1916bca352c (patch)
tree308f2c5dc64fc792dfcfaefc4efe072de06d6a9e /middleware/test/responsewriter.go
parentbcdc99ab11b4fb6c6ebb06cfa0ae15ed269ad02e (diff)
downloadcoredns-8e5d0a23fa7225382f869a6af918f1916bca352c.tar.gz
coredns-8e5d0a23fa7225382f869a6af918f1916bca352c.tar.zst
coredns-8e5d0a23fa7225382f869a6af918f1916bca352c.zip
Add EDNS0_SUBNET rewrite (#1022)
* Add EDNS0_SUBNET rewrite * Fix review comments * Update comment * Fix according to review comments * Add ResponseWriter6 instead of parameterized the existing ResponseWriter
Diffstat (limited to 'middleware/test/responsewriter.go')
-rw-r--r--middleware/test/responsewriter.go17
1 files changed, 17 insertions, 0 deletions
diff --git a/middleware/test/responsewriter.go b/middleware/test/responsewriter.go
index 7aa6dd133..79eaa00f3 100644
--- a/middleware/test/responsewriter.go
+++ b/middleware/test/responsewriter.go
@@ -42,3 +42,20 @@ func (t *ResponseWriter) TsigTimersOnly(bool) { return }
// Hijack implement dns.ResponseWriter interface.
func (t *ResponseWriter) Hijack() { return }
+
+// RepsponseWrite6 returns fixed client and remote address in IPv6. The remote
+// address is always fe80::42:ff:feca:4c65 and port 40212. The local address
+// is always ::1 and port 53.
+type ResponseWriter6 struct {
+ ResponseWriter
+}
+
+// LocalAddr returns the local address, always ::1, port 53 (UDP).
+func (t *ResponseWriter6) LocalAddr() net.Addr {
+ return &net.UDPAddr{IP: net.ParseIP("::1"), Port: 53, Zone: ""}
+}
+
+// RemoteAddr returns the remote address, always fe80::42:ff:feca:4c65 port 40212 (UDP).
+func (t *ResponseWriter6) RemoteAddr() net.Addr {
+ return &net.UDPAddr{IP: net.ParseIP("fe80::42:ff:feca:4c65"), Port: 40212, Zone: ""}
+}