more stuff
This commit is contained in:
parent
1ee22eb579
commit
4109a032b9
|
@ -19,10 +19,10 @@ import (
|
||||||
|
|
||||||
type Server struct {
|
type Server struct {
|
||||||
Address string // interface to use, for multiple interfaces, use multiple servers
|
Address string // interface to use, for multiple interfaces, use multiple servers
|
||||||
Port string // what port to use
|
Port string // what port to use
|
||||||
Timeout int // seconds before giving up on packet
|
Timeout int // seconds before giving up on packet
|
||||||
Tcp bool // use TCP
|
Tcp bool // use TCP
|
||||||
Mangle func([]byte) []byte // mangle the packet, before sending
|
Mangle func([]byte) []byte // mangle the packet, before sending
|
||||||
}
|
}
|
||||||
|
|
||||||
// Every nameserver must implement the Handler interface.
|
// Every nameserver must implement the Handler interface.
|
||||||
|
@ -50,7 +50,7 @@ func (res *Server) NewResponder(h Responder, ch chan bool) os.Error {
|
||||||
}
|
}
|
||||||
switch res.Tcp {
|
switch res.Tcp {
|
||||||
case true:
|
case true:
|
||||||
/* Todo tcp conn. */
|
/* Todo tcp conn. */
|
||||||
case false:
|
case false:
|
||||||
udpaddr, _ := net.ResolveUDPAddr(res.Address + ":" + port)
|
udpaddr, _ := net.ResolveUDPAddr(res.Address + ":" + port)
|
||||||
c, _ := net.ListenUDP("udp", udpaddr)
|
c, _ := net.ListenUDP("udp", udpaddr)
|
||||||
|
@ -58,6 +58,7 @@ func (res *Server) NewResponder(h Responder, ch chan bool) os.Error {
|
||||||
for {
|
for {
|
||||||
select {
|
select {
|
||||||
case <-ch:
|
case <-ch:
|
||||||
|
ch <- true // last echo
|
||||||
c.Close()
|
c.Close()
|
||||||
break foreverudp
|
break foreverudp
|
||||||
default:
|
default:
|
||||||
|
|
Loading…
Reference in New Issue