summaryrefslogtreecommitdiff
path: root/xP/xP.go
diff options
context:
space:
mode:
Diffstat (limited to 'xP/xP.go')
-rw-r--r--xP/xP.go13
1 files changed, 10 insertions, 3 deletions
diff --git a/xP/xP.go b/xP/xP.go
index b9ab73c..9428501 100644
--- a/xP/xP.go
+++ b/xP/xP.go
@@ -22,6 +22,7 @@ import (
var (
addressBind string
addressConnect string
+ addressWS string
)
func clientToRelay(
@@ -163,18 +164,24 @@ func handleDefault(w http.ResponseWriter, r *http.Request) {
return
}
- wsURI := fmt.Sprintf("ws://%s/ws", r.Host)
+ wsURI := addressWS
+ if wsURI == "" {
+ wsURI = fmt.Sprintf("ws://%s/ws", r.Host)
+ }
if err := page.Execute(w, wsURI); err != nil {
log.Println("Template execution failed: " + err.Error())
}
}
func main() {
- if len(os.Args) != 3 {
- log.Fatalf("usage: %s BIND CONNECT\n", os.Args[0])
+ if len(os.Args) < 3 || len(os.Args) > 4 {
+ log.Fatalf("usage: %s BIND CONNECT [WSURI]\n", os.Args[0])
}
addressBind, addressConnect = os.Args[1], os.Args[2]
+ if len(os.Args) > 3 {
+ addressWS = os.Args[3]
+ }
http.Handle("/ws", websocket.Handler(handleWebSocket))
http.Handle("/", http.HandlerFunc(handleDefault))