tlstunnel/cmd/tlstunnel/main.go

41 lines
652 B
Go
Raw Normal View History

2020-09-08 10:11:32 +00:00
package main
import (
2020-09-09 12:17:27 +00:00
"flag"
2020-09-08 10:11:32 +00:00
"log"
"git.sr.ht/~emersion/tlstunnel"
"github.com/caddyserver/certmagic"
2020-09-08 10:11:32 +00:00
)
var (
configPath = "config"
certDataPath = ""
)
2020-09-09 12:17:27 +00:00
2020-09-08 10:11:32 +00:00
func main() {
2020-09-09 12:17:27 +00:00
flag.StringVar(&configPath, "config", configPath, "path to configuration file")
flag.Parse()
cfg, err := tlstunnel.LoadConfig(configPath)
2020-09-08 10:11:32 +00:00
if err != nil {
log.Fatalf("failed to load config file: %v", err)
}
2020-09-08 15:13:39 +00:00
srv := tlstunnel.NewServer()
2020-09-08 15:13:39 +00:00
if certDataPath != "" {
srv.ACMEConfig.Storage = &certmagic.FileStorage{Path: certDataPath}
}
if err := srv.Load(cfg); err != nil {
log.Fatal(err)
2020-09-08 15:13:39 +00:00
}
if err := srv.Start(); err != nil {
log.Fatal(err)
}
2020-09-08 15:13:39 +00:00
select {}
}