cmd/tailscale: make tailscale cert --serve-demo accept optional listen argument

Change-Id: I48f2f4f74c9996b9ed4bee02c61f125d42154a34
Signed-off-by: Brad Fitzpatrick <bradfitz@tailscale.com>
pull/5973/head
Brad Fitzpatrick 2 years ago committed by Brad Fitzpatrick
parent 630bcb5b67
commit 45b7e8c23c

@ -8,6 +8,7 @@ import (
"bytes"
"context"
"crypto/tls"
"errors"
"flag"
"fmt"
"log"
@ -44,6 +45,7 @@ var certArgs struct {
func runCert(ctx context.Context, args []string) error {
if certArgs.serve {
s := &http.Server{
Addr: ":443",
TLSConfig: &tls.Config{
GetCertificate: localClient.GetCertificate,
},
@ -57,7 +59,16 @@ func runCert(ctx context.Context, args []string) error {
fmt.Fprintf(w, "<h1>Hello from Tailscale</h1>It works.")
}),
}
log.Printf("running TLS server on :443 ...")
switch len(args) {
case 0:
// Nothing.
case 1:
s.Addr = args[0]
default:
return errors.New("too many arguments; max 1 allowed with --serve-demo (the listen address)")
}
log.Printf("running TLS server on %s ...", s.Addr)
return s.ListenAndServeTLS("", "")
}

Loading…
Cancel
Save