summaryrefslogtreecommitdiff
path: root/main.go
diff options
context:
space:
mode:
authorAlexander Hunt <me@liz.coffee>2026-06-21 12:43:31 -0700
committerAlexander Hunt <me@liz.coffee>2026-06-21 12:43:31 -0700
commitcfc0d34a584254a9ed76620951c810771aff6f3b (patch)
tree7fba034f7347ce0003e7a3a56adcaf862c834907 /main.go
parentfb653292612eddca5b088ed88466c546d1597107 (diff)
downloadpenguins.lan-cfc0d34a584254a9ed76620951c810771aff6f3b.tar.gz
penguins.lan-cfc0d34a584254a9ed76620951c810771aff6f3b.zip
STUFF
Diffstat (limited to 'main.go')
-rw-r--r--main.go22
1 files changed, 18 insertions, 4 deletions
diff --git a/main.go b/main.go
index 5d6f599..872749d 100644
--- a/main.go
+++ b/main.go
@@ -8,6 +8,7 @@ import (
"penguins.lan/api"
"penguins.lan/args"
"penguins.lan/database"
+ "penguins.lan/dnsd"
"penguins.lan/scheduled"
)
@@ -41,11 +42,24 @@ func main() {
if argv.Server {
server := api.MakeServer(argv, dbConn)
log.Printf("listening on :%d", argv.Port)
+ go func() {
+ if err := server.ListenAndServe(); err != nil {
+ log.Fatal(err)
+ }
+ }()
+ }
- if err := server.ListenAndServe(); err != nil {
- log.Fatal(err)
- }
+ if argv.Dns {
+ dnsServer := dnsd.MakeServer(argv, dbConn)
+ log.Printf("dns listening on :%d for zone %s", argv.DnsPort, argv.DnsZone)
+ go func() {
+ if err := dnsServer.ListenAndServe(); err != nil {
+ log.Fatal(err)
+ }
+ }()
}
- select {}
+ if argv.Scheduler || argv.Server || argv.Dns {
+ select {}
+ }
}