aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorZach Latta <zach@zachlatta.com>2016-03-06 07:14:00 -0500
committerZach Latta <zach@zachlatta.com>2016-03-06 07:14:00 -0500
commit624a889da2c8cbcf4a26309825f0672f74dfdb50 (patch)
treebf03a7363ba3663661d5444da80df89963d55cc3
parenteed96ad961f6be502ab357c342923e2a9d80c794 (diff)
downloadsshtron-624a889da2c8cbcf4a26309825f0672f74dfdb50.tar.gz
Add ability to customize port
-rw-r--r--main.go19
1 files changed, 18 insertions, 1 deletions
diff --git a/main.go b/main.go
index c3dddb6..2941d77 100644
--- a/main.go
+++ b/main.go
@@ -5,9 +5,14 @@ import (
"golang.org/x/crypto/ssh"
"io/ioutil"
"net"
+ "os"
)
const (
+ portEnv = "PORT"
+
+ defaultPort = "2022"
+
keyUp = 'w'
keyLeft = 'a'
keyDown = 's'
@@ -62,6 +67,15 @@ func handler(conn net.Conn, gm *GameManager, config *ssh.ServerConfig) {
}
}
+func port() string {
+ var port string
+ if os.Getenv(portEnv) == "" {
+ port = defaultPort
+ }
+
+ return fmt.Sprintf(":%s", port)
+}
+
func main() {
// Everyone can login!
config := &ssh.ServerConfig{
@@ -86,10 +100,13 @@ func main() {
// Once a ServerConfig has been configured, connections can be
// accepted.
- listener, err := net.Listen("tcp", "0.0.0.0:2022")
+ listener, err := net.Listen("tcp", fmt.Sprintf("0.0.0.0%s", port()))
if err != nil {
panic("failed to listen for connection")
}
+
+ fmt.Printf("Listening on port %s...\n", port())
+
for {
nConn, err := listener.Accept()
if err != nil {
Un proyecto texto-plano.xyz