Added ResponseWriter.LocalAddr support
This commit is contained in:
parent
b691354313
commit
12f91af6ed
11
server.go
11
server.go
|
@ -21,6 +21,8 @@ type Handler interface {
|
||||||
// A ResponseWriter interface is used by an DNS handler to
|
// A ResponseWriter interface is used by an DNS handler to
|
||||||
// construct an DNS response.
|
// construct an DNS response.
|
||||||
type ResponseWriter interface {
|
type ResponseWriter interface {
|
||||||
|
// LocalAddr returns the net.Addr of the server
|
||||||
|
LocalAddr() net.Addr
|
||||||
// RemoteAddr returns the net.Addr of the client that sent the current request.
|
// RemoteAddr returns the net.Addr of the client that sent the current request.
|
||||||
RemoteAddr() net.Addr
|
RemoteAddr() net.Addr
|
||||||
// WriteMsg writes a reply back to the client.
|
// WriteMsg writes a reply back to the client.
|
||||||
|
@ -483,6 +485,15 @@ func (w *response) Write(m []byte) (int, error) {
|
||||||
panic("not reached")
|
panic("not reached")
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// LocalAddr implements the ResponseWriter.LocalAddr method.
|
||||||
|
func (w *response) LocalAddr() net.Addr {
|
||||||
|
if w.tcp != nil {
|
||||||
|
return w.tcp.LocalAddr()
|
||||||
|
} else {
|
||||||
|
return w.udp.LocalAddr()
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
// RemoteAddr implements the ResponseWriter.RemoteAddr method.
|
// RemoteAddr implements the ResponseWriter.RemoteAddr method.
|
||||||
func (w *response) RemoteAddr() net.Addr { return w.remoteAddr }
|
func (w *response) RemoteAddr() net.Addr { return w.remoteAddr }
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue