mirror of
https://git.zx2c4.com/wireguard-go
synced 2024-11-15 01:05:15 +01:00
23 lines
548 B
Go
23 lines
548 B
Go
|
package conn
|
||
|
|
||
|
import "testing"
|
||
|
|
||
|
func TestStdNetBindReceiveFuncAfterClose(t *testing.T) {
|
||
|
bind := NewStdNetBind().(*StdNetBind)
|
||
|
fns, _, err := bind.Open(0)
|
||
|
if err != nil {
|
||
|
t.Fatal(err)
|
||
|
}
|
||
|
bind.Close()
|
||
|
buffs := make([][]byte, 1)
|
||
|
buffs[0] = make([]byte, 1)
|
||
|
sizes := make([]int, 1)
|
||
|
eps := make([]Endpoint, 1)
|
||
|
for _, fn := range fns {
|
||
|
// The ReceiveFuncs must not access conn-related fields on StdNetBind
|
||
|
// unguarded. Close() nils the conn-related fields resulting in a panic
|
||
|
// if they violate the mutex.
|
||
|
fn(buffs, sizes, eps)
|
||
|
}
|
||
|
}
|