mirror of
https://github.com/coredns/coredns.git
synced 2025-10-27 08:14:18 -04:00
plugin/erratic: doc and zone transfer (#3340)
Fix the documentation, remove autopath entry and fix the transfer by copying some bits from the file plugin. Signed-off-by: Miek Gieben <miek@miek.nl>
This commit is contained in:
@@ -6,15 +6,12 @@
|
||||
|
||||
## Description
|
||||
|
||||
*erratic* returns a static response to all queries, but the responses can be delayed, dropped or truncated.
|
||||
The *erratic* plugin will respond to every A or AAAA query. For any other type it will return
|
||||
a SERVFAIL response. The reply for A will return 192.0.2.53 (see [RFC
|
||||
5737](https://tools.ietf.org/html/rfc5737),
|
||||
for AAAA it returns 2001:DB8::53 (see [RFC 3849](https://tools.ietf.org/html/rfc3849)) and for an
|
||||
AXFR request it will respond with a small zone transfer.
|
||||
|
||||
*erratic* can also be used in conjunction with the *autopath* plugin. This is mostly to aid in
|
||||
testing.
|
||||
*erratic* returns a static response to all queries, but the responses can be delayed,
|
||||
dropped or truncated. The *erratic* plugin will respond to every A or AAAA query. For
|
||||
any other type it will return a SERVFAIL response (except AXFR). The reply for A will return
|
||||
192.0.2.53 ([RFC 5737](https://tools.ietf.org/html/rfc5737)), for AAAA it returns 2001:DB8::53 ([RFC
|
||||
3849](https://tools.ietf.org/html/rfc3849)). For an AXFR request it will respond with a small
|
||||
zone transfer.
|
||||
|
||||
## Syntax
|
||||
|
||||
@@ -47,7 +44,7 @@ example.org {
|
||||
}
|
||||
~~~
|
||||
|
||||
Or even shorter if the defaults suits you. Note this only drops queries, it does not delay them.
|
||||
Or even shorter if the defaults suit you. Note this only drops queries, it does not delay them.
|
||||
|
||||
~~~ corefile
|
||||
example.org {
|
||||
|
||||
@@ -2,6 +2,7 @@ package erratic
|
||||
|
||||
import (
|
||||
"strings"
|
||||
"sync"
|
||||
|
||||
"github.com/coredns/coredns/plugin/test"
|
||||
"github.com/coredns/coredns/request"
|
||||
@@ -46,6 +47,11 @@ func xfr(state request.Request, truncate bool) {
|
||||
close(ch)
|
||||
}()
|
||||
|
||||
tr.Out(state.W, state.Req, ch)
|
||||
state.W.Hijack()
|
||||
wg := new(sync.WaitGroup)
|
||||
wg.Add(1)
|
||||
go func() {
|
||||
tr.Out(state.W, state.Req, ch)
|
||||
wg.Done()
|
||||
}()
|
||||
wg.Wait()
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user