aboutsummaryrefslogtreecommitdiff
path: root/app/main.go
diff options
context:
space:
mode:
authorjet2tlf <jet2tlf@gmail.com>2024-06-03 05:51:52 +0000
committerjet2tlf <jet2tlf@gmail.com>2024-06-03 05:51:52 +0000
commitb6b5b6c0b80798147dd8b27120aa888880998ccb (patch)
tree47b0c58b694416929f92fab4abca956544a04924 /app/main.go
parentddaa6d76691453203459038a35aae5aa086dfad4 (diff)
downloaddns-server-go-b6b5b6c0b80798147dd8b27120aa888880998ccb.tar.gz
dns-server-go-b6b5b6c0b80798147dd8b27120aa888880998ccb.zip
codecrafters submit [skip ci]
Diffstat (limited to 'app/main.go')
-rw-r--r--app/main.go7
1 files changed, 4 insertions, 3 deletions
diff --git a/app/main.go b/app/main.go
index 79e3b82..69aefae 100644
--- a/app/main.go
+++ b/app/main.go
@@ -8,7 +8,7 @@ import (
func main() {
udpAddr, err := net.ResolveUDPAddr("udp", "127.0.0.1:2053")
if err != nil {
- fmt.Println("Failed to resolve UDP address:", err)
+ fmt.Println("Failed to resol[]byteve UDP address:", err)
return
}
@@ -31,6 +31,7 @@ func main() {
receivedData := string(buf[:size])
fmt.Printf("Received %d bytes from %s: %s\n", size, source, receivedData)
requestHeader := ParseHeader(buf[:size])
+ question := ParseQuestion(buf[:size])
rcode := uint8(4)
if requestHeader.OPCODE == 0 {
@@ -54,9 +55,9 @@ func main() {
}
response := MakeMessage(header)
- response.AddQuestion([]byte("\x0ccodecrafters\x02io\x00"))
+ response.AddQuestion(question)
- answer := MakeAnswer([]byte("\x0ccodecrafters\x02io\x00"), []byte("\x08\x08\x08\x08"))
+ answer := MakeAnswer(question.Name, []byte("\x08\x08\x08\x08"))
response.AddAnswer(answer)
_, err = udpConn.WriteToUDP(response.Bytes(), source)