package main
import (
"fmt"
"log"
"net"
)
func main() {
pc, err := net.ListenPacket("udp", ":7070")
if err != nil {
log.Fatal(err)
}
defer pc.Close()
buffer := make([]byte, 2048)
fmt.Println("Waiting for client...")
for {
_, addr, err := pc.ReadFrom(buffer)
if err == nil {
rcvMsq := string(buffer)
fmt.Println("Received: " + rcvMsq)
if _, err := pc.WriteTo([]byte("Received: "+rcvMsq), addr); err != nil {
fmt.Println("error on write: " + err.Error())
}
} else {
fmt.Println("error: " + err.Error())
}
}
}
/*
Waiting for client...
*/
nc -u localhost 7070
sdf
Received: sdf
fsadf
Received: fsadf