Remove the word middleware (#1067)

* Rename middleware to plugin

first pass; mostly used 'sed', few spots where I manually changed
text.

This still builds a coredns binary.

* fmt error

* Rename AddMiddleware to AddPlugin

* Readd AddMiddleware to remain backwards compat
This commit is contained in:
Miek Gieben
2017-09-14 09:36:06 +01:00
committed by GitHub
parent b984aa4559
commit d8714e64e4
354 changed files with 974 additions and 969 deletions

22
plugin/bind/README.md Normal file
View File

@@ -0,0 +1,22 @@
# bind
*bind* overrides the host to which the server should bind.
Normally, the listener binds to the wildcard host. However, you may force the listener to bind to
another IP instead. This directive accepts only an address, not a port.
## Syntax
~~~ txt
bind ADDRESS
~~~
**ADDRESS** is the IP address to bind to.
## Examples
To make your socket accessible only to that machine, bind to IP 127.0.0.1 (localhost):
~~~ txt
bind 127.0.0.1
~~~

11
plugin/bind/bind.go Normal file
View File

@@ -0,0 +1,11 @@
// Package bind allows binding to a specific interface instead of bind to all of them.
package bind
import "github.com/mholt/caddy"
func init() {
caddy.RegisterPlugin("bind", caddy.Plugin{
ServerType: "dns",
Action: setupBind,
})
}

30
plugin/bind/bind_test.go Normal file
View File

@@ -0,0 +1,30 @@
package bind
import (
"testing"
"github.com/coredns/coredns/core/dnsserver"
"github.com/mholt/caddy"
)
func TestSetupBind(t *testing.T) {
c := caddy.NewTestController("dns", `bind 1.2.3.4`)
err := setupBind(c)
if err != nil {
t.Fatalf("Expected no errors, but got: %v", err)
}
cfg := dnsserver.GetConfig(c)
if got, want := cfg.ListenHost, "1.2.3.4"; got != want {
t.Errorf("Expected the config's ListenHost to be %s, was %s", want, got)
}
}
func TestBindAddress(t *testing.T) {
c := caddy.NewTestController("dns", `bind 1.2.3.bla`)
err := setupBind(c)
if err == nil {
t.Fatalf("Expected errors, but got none")
}
}

24
plugin/bind/setup.go Normal file
View File

@@ -0,0 +1,24 @@
package bind
import (
"fmt"
"net"
"github.com/coredns/coredns/core/dnsserver"
"github.com/coredns/coredns/plugin"
"github.com/mholt/caddy"
)
func setupBind(c *caddy.Controller) error {
config := dnsserver.GetConfig(c)
for c.Next() {
if !c.Args(&config.ListenHost) {
return plugin.Error("bind", c.ArgErr())
}
}
if net.ParseIP(config.ListenHost) == nil {
return plugin.Error("bind", fmt.Errorf("not a valid IP address: %s", config.ListenHost))
}
return nil
}