From 1adaa38f3bea29b55ca835a50118869d2e07d016 Mon Sep 17 00:00:00 2001 From: EuAndreh Date: Mon, 22 Jul 2024 16:54:52 -0300 Subject: src/lib.go: Get CopyData() from gobang --- src/lib.go | 14 ++++---------- tests/lib_test.go | 1 + 2 files changed, 5 insertions(+), 10 deletions(-) diff --git a/src/lib.go b/src/lib.go index 4c26297..5309c63 100644 --- a/src/lib.go +++ b/src/lib.go @@ -2,7 +2,6 @@ package binder import ( "fmt" - "io" "net" "os" "os/user" @@ -57,11 +56,6 @@ func isRunningAsRoot() bool { return os.Geteuid() == 0 } -func copyData(closer chan struct{}, from io.Reader, to io.Writer) { - io.Copy(to, from) - closer <- struct{}{} -} - func ParseArgs(args []string) CLIArgs { if len(args) != 3 { fmt.Fprintf( @@ -118,11 +112,11 @@ func Start(toAddr string, listener net.Listener) { } defer connTo.Close() - closer := make(chan struct{}, 2) - go copyData(closer, connFrom, connTo) - go copyData(closer, connTo, connFrom) + c := make(chan g.CopyResult) + go g.CopyData(c, "c2s", connFrom, connTo) + go g.CopyData(c, "s2c", connTo, connFrom) go func() { - <-closer + <- c EmitActiveConnection.Dec() }() } diff --git a/tests/lib_test.go b/tests/lib_test.go index a857510..4e63d06 100644 --- a/tests/lib_test.go +++ b/tests/lib_test.go @@ -8,6 +8,7 @@ import ( "euandre.org/binder/src" ) + func TestPlaceholder(t *testing.T) { g.AssertEqual(t, binder.USER, "nobody") } -- cgit v1.2.3