simplify package

This commit is contained in:
Alexander Matson 2019-05-16 23:57:41 -04:00
parent c655b6ca3f
commit e329da4c31
6 changed files with 20 additions and 132 deletions

View File

@ -1,4 +1,4 @@
package errfn package main
import ( import (
"fmt" "fmt"

View File

@ -3,10 +3,9 @@ package main
import ( import (
"os" "os"
"fmt" "fmt"
"peers"
) )
var lpt []peers.Peer var lpt []peer
func main() { func main() {
if len(os.Args) <= 1 { if len(os.Args) <= 1 {
@ -15,12 +14,12 @@ func main() {
} }
// Configure this local node's listening port. // Configure this local node's listening port.
local := peers.Peer{} local := peer{}
local.SetAddr(os.Args[1]) local.SetAddr(os.Args[1])
// If a remote peer's port is specified, we want to connect and message it // If a remote peer's port is specified, we want to connect and message it
if len(os.Args) == 3 { if len(os.Args) == 3 {
remote := peers.Peer{} remote := peer{}
remote.SetAddr(os.Args[2]) remote.SetAddr(os.Args[2])
local.Connect(remote) local.Connect(remote)
} }

View File

@ -1,30 +1,30 @@
package peers package main
import ( import (
"net" "net"
"os" "os"
"fmt" "fmt"
"strings" "strings"
"errfn"
) )
type Peer struct { type peer struct {
address net.TCPAddr address net.TCPAddr
listener net.TCPListener listener net.TCPListener
connection net.TCPConn connection net.TCPConn
lpt []peer
} }
func (p* Peer) SetAddr(port string) { func (p* peer) SetAddr(port string) {
service := ":" + port service := ":" + port
tcpAddr, err := net.ResolveTCPAddr("tcp4", service) tcpAddr, err := net.ResolveTCPAddr("tcp4", service)
errfn.Check(err) Check(err)
p.address = *tcpAddr p.address = *tcpAddr
} }
func (p* Peer) StartListening() { func (p* peer) StartListening() {
listener, err := net.ListenTCP("tcp", &p.address) listener, err := net.ListenTCP("tcp", &p.address)
errfn.Check(err) Check(err)
p.listener = *listener p.listener = *listener
@ -39,20 +39,24 @@ func (p* Peer) StartListening() {
} }
} }
func (p* Peer) Connect(remote Peer) { func (p* peer) Connect(remote peer) {
peerconn, err := net.DialTCP("tcp4", nil, &remote.address) peerconn, err := net.DialTCP("tcp4", nil, &remote.address)
errfn.Check(err) Check(err)
fmt.Println("Found a remote peer") fmt.Println("Found a remote peer")
p.connection = *peerconn p.connection = *peerconn
_, err = p.connection.Write([]byte("Hello from " + os.Args[1])) p.lpt = append(p.lpt, remote)
errfn.Check(err) }
func (p peer) Version(remote peer) {
_, err := p.connection.Write([]byte("Hello from " + os.Args[1]))
Check(err)
var buf [512]byte var buf [512]byte
n, err := p.connection.Read(buf[0:]) n, err := p.connection.Read(buf[0:])
errfn.Check(err) Check(err)
result := string(buf[0:n]) result := string(buf[0:n])
fmt.Println(string(result)) fmt.Println(string(result))
@ -83,6 +87,5 @@ func handleConnection(conn net.Conn) {
return return
} }
} }
} }
} }

View File

@ -1,35 +0,0 @@
package main
// import (
// "fmt"
// "net"
// "os"
// "time"
// )
//
// func main() {
// service := ":1200"
// tcpAddr, err := net.ResolveTCPAddr("tcp4", service)
// checkError(err)
//
// listener, err := net.ListenTCP("tcp", tcpAddr)
// checkError(err)
//
// for {
// conn, err := listener.Accept()
// if err != nil {
// continue
// }
//
// daytime := "Hahahaha virgin client vs chad server" + time.Now().String()
// conn.Write([]byte(daytime))
// conn.Close()
// }
// }
//
// func checkError(err error) {
// if err != nil {
// fmt.Fprintf(os.Stderr, "Fatal error: %s", err.Error())
// os.Exit(1)
// }
// }

View File

@ -1,53 +0,0 @@
package main
// import (
// "net"
// "os"
// "fmt"
// )
//
// func main() {
// service := ":1201"
// tcpAddr, err := net.ResolveTCPAddr("tcp4", service)
// checkError(err)
//
// listener, err := net.ListenTCP("tcp", tcpAddr)
// checkError(err)
//
// for {
// conn, err := listener.Accept()
// if err != nil {
// continue
// }
//
// go handleClient(conn)
// }
// }
//
// func handleClient(conn net.Conn) {
// // close connection on exit
// defer conn.Close()
//
// var buf [512]byte
//
// for {
// // read up to 512 bytes
// n, err := conn.Read(buf[0:])
// if err != nil {
// return
// }
//
// // write the n bytes read
// _, err2 := conn.Write(buf[0:n])
// if err2 != nil {
// return
// }
// }
// }
//
// func checkError(err error) {
// if err != nil {
// fmt.Fprintf(os.Stderr, "Fatal error: %s", err.Error())
// os.Exit(1)
// }
// }

View File

@ -1,26 +0,0 @@
/* IP
*/
package main
// import (
// "net"
// "os"
// "fmt"
// )
//
// func main() {
// if len(os.Args) != 2 {
// fmt.Fprintf(os.Stderr, "Usage: %s ip-addr\n", os.Args[0])
// os.Exit(1)
// }
// name := os.Args[1]
//
// addr := net.ParseIP(name)
// if addr == nil {
// fmt.Println("Invalid address")
// } else {
// fmt.Println("The address is ", addr.String())
// }
// os.Exit(0)
// }