Skip to content
This repository has been archived by the owner on Apr 9, 2024. It is now read-only.

Configurable port for web service #28

Open
wants to merge 1 commit into
base: master
Choose a base branch
from
Open
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
15 changes: 10 additions & 5 deletions main.go
Original file line number Diff line number Diff line change
Expand Up @@ -25,6 +25,7 @@ var tlsConfig *tls.Config
func main() {
var tcpport string
var tlsport string
var webport string

var x509 string
var key string
Expand All @@ -33,6 +34,7 @@ func main() {

flag.StringVar(&tcpport, "tcp", "6666", "Listening port for non-TLS connections.")
flag.StringVar(&tlsport, "tls", "6443", "Listening port for TLS connections.")
flag.StringVar(&webport, "web", "8080", "Listening port for Web connections.")
flag.StringVar(&x509, "x509", "./certificate/trudy.cer", "Path to x509 certificate that will be presented for TLS connection.")
flag.StringVar(&key, "key", "./certificate/trudy.key", "Path to the corresponding private key for the specified x509 certificate")
flag.BoolVar(&showConnectionAttempts, "show", true, "Show connection open and close messages")
Expand All @@ -41,10 +43,11 @@ func main() {

tcpport = ":" + tcpport
tlsport = ":" + tlsport
setup(tcpport, tlsport, x509, key, showConnectionAttempts)
webport = ":" + webport
setup(tcpport, tlsport, webport, x509, key, showConnectionAttempts)
}

func setup(tcpport, tlsport, x509, key string, show bool) {
func setup(tcpport, tlsport, webport, x509, key string, show bool) {

//Setup non-TLS TCP listener!
tcpAddr, err := net.ResolveTCPAddr("tcp", tcpport)
Expand Down Expand Up @@ -79,7 +82,9 @@ func setup(tcpport, tlsport, x509, key string, show bool) {
log.Printf("[INFO] Listening for TLS connections on port %s\n", tlsport)
log.Printf("[INFO] Listening for all other TCP connections on port %s\n", tcpport)

go websocketHandler()
go websocketHandler(webport)
log.Printf("[INFO] Listening for Web connections on port %s\n", webport)

go connectionDispatcher(tlsListener, "TLS", show)
connectionDispatcher(tcpListener, "TCP", show)

Expand Down Expand Up @@ -284,7 +289,7 @@ func serverHandler(pipe pipe.Pipe) {
}
}

func websocketHandler() {
func websocketHandler(webport string) {
websocketMutex = &sync.Mutex{}
upgrader := websocket.Upgrader{ReadBufferSize: 65535, WriteBufferSize: 65535}
http.HandleFunc("/", func(w http.ResponseWriter, r *http.Request) {
Expand All @@ -298,7 +303,7 @@ func websocketHandler() {
return
}
})
err := http.ListenAndServe(":8080", nil)
err := http.ListenAndServe(webport, nil)
if err != nil {
panic(err)
}
Expand Down