setup.go 490 B

12345678910111213141516171819202122232425262728
  1. package example
  2. import (
  3. "github.com/coredns/coredns/core/dnsserver"
  4. "github.com/coredns/coredns/plugin"
  5. "github.com/mholt/caddy"
  6. )
  7. func init() {
  8. caddy.RegisterPlugin("example", caddy.Plugin{
  9. ServerType: "dns",
  10. Action: setup,
  11. })
  12. }
  13. func setup(c *caddy.Controller) error {
  14. c.Next()
  15. if c.NextArg() {
  16. return plugin.Error("example", c.ArgErr())
  17. }
  18. dnsserver.GetConfig(c).AddPlugin(func(next plugin.Handler) plugin.Handler {
  19. return Example{Next: next}
  20. })
  21. return nil
  22. }