mirror of
https://github.com/fumiama/WireGold.git
synced 2026-06-11 04:06:14 +08:00
43 lines
973 B
Go
43 lines
973 B
Go
package tunnel
|
|
|
|
import (
|
|
"testing"
|
|
|
|
curve "github.com/fumiama/go-x25519"
|
|
"github.com/sirupsen/logrus"
|
|
|
|
"github.com/fumiama/WireGold/gold/link"
|
|
)
|
|
|
|
func TestTunnel(t *testing.T) {
|
|
logrus.SetLevel(logrus.DebugLevel)
|
|
selfpk, err := curve.New(nil)
|
|
if err != nil {
|
|
panic(err)
|
|
}
|
|
peerpk, err := curve.New(nil)
|
|
if err != nil {
|
|
panic(err)
|
|
}
|
|
m := link.NewMe(selfpk.Private(), "192.168.1.2", "127.0.0.1:1236")
|
|
m.AddPeer("192.168.1.3", peerpk.Public(), "127.0.0.1:1237", nil, 0, false)
|
|
p := link.NewMe(peerpk.Private(), "192.168.1.3", "127.0.0.1:1237")
|
|
p.AddPeer("192.168.1.2", selfpk.Public(), "127.0.0.1:1236", nil, 0, false)
|
|
tunnme, err := Create(&m, "192.168.1.3", 1, 1)
|
|
if err != nil {
|
|
t.Fatal(err)
|
|
}
|
|
tunnpeer, err := Create(&p, "192.168.1.2", 1, 1)
|
|
if err != nil {
|
|
t.Fatal(err)
|
|
}
|
|
sendb := ([]byte)("1234")
|
|
tunnme.Write(sendb)
|
|
buf := make([]byte, 4)
|
|
tunnpeer.Read(buf)
|
|
if string(sendb) != string(buf) {
|
|
t.Log("error: recv", buf)
|
|
t.Fail()
|
|
}
|
|
}
|