Added client/server host:port, addr:port options

This commit is contained in:
Russ Magee 2018-01-12 22:24:40 -08:00
parent 1817627234
commit 9b3bd6b78b
2 changed files with 11 additions and 3 deletions

View File

@ -16,12 +16,14 @@ import (
func main() { func main() {
var cAlg string var cAlg string
var hAlg string var hAlg string
var server string
flag.StringVar(&cAlg, "c", "C_AES_256", "cipher [\"C_AES_256\" | \"C_TWOFISH_128\" | \"C_BLOWFISH_64\"]") flag.StringVar(&cAlg, "c", "C_AES_256", "cipher [\"C_AES_256\" | \"C_TWOFISH_128\" | \"C_BLOWFISH_64\"]")
flag.StringVar(&hAlg, "h", "H_SHA256", "hmac [\"H_SHA256\"]") flag.StringVar(&hAlg, "h", "H_SHA256", "hmac [\"H_SHA256\"]")
flag.StringVar(&server, "s", "localhost:2000", "server hostname/address[:port]")
flag.Parse() flag.Parse()
conn, err := hkex.Dial("tcp", "localhost:2000", cAlg, hAlg) conn, err := hkex.Dial("tcp", server, cAlg, hAlg)
if err != nil { if err != nil {
// handle error // handle error
fmt.Println("Err!") fmt.Println("Err!")

View File

@ -1,6 +1,7 @@
package main package main
import ( import (
"flag"
"fmt" "fmt"
"log" "log"
"time" "time"
@ -14,15 +15,20 @@ import (
// Listener and Conns. The KEx and encrypt/decrypt is done within the type. // Listener and Conns. The KEx and encrypt/decrypt is done within the type.
// Compare to 'serverp.go' in this directory to see the equivalence. // Compare to 'serverp.go' in this directory to see the equivalence.
func main() { func main() {
var laddr string
flag.StringVar(&laddr, "l", ":2000", "interface[:port] to listen")
flag.Parse()
// Listen on TCP port 2000 on all available unicast and // Listen on TCP port 2000 on all available unicast and
// anycast IP addresses of the local system. // anycast IP addresses of the local system.
l, err := hkex.Listen("tcp", ":2000") l, err := hkex.Listen("tcp", laddr)
if err != nil { if err != nil {
log.Fatal(err) log.Fatal(err)
} }
defer l.Close() defer l.Close()
fmt.Println("Serving on port 2000") fmt.Println("Serving on", laddr)
for { for {
// Wait for a connection. // Wait for a connection.
conn, err := l.Accept() conn, err := l.Accept()