// Copyright 2015 The Go Authors. All rights reserved.
// Use of this source code is governed by a BSD-style
// license that can be found in the LICENSE file.

// +build aix darwin dragonfly freebsd js,wasm linux netbsd openbsd solaris

package socktest

// Sockets maps a socket descriptor to the status of socket.
type Sockets map[int]Status

func ( *Switch) ( int) *Status {
	.smu.RLock()
	defer .smu.RUnlock()
	,  := .sotab[]
	if ! {
		return nil
	}
	return &
}

// addLocked returns a new Status without locking.
// sw.smu must be held before call.
func ( *Switch) (, , ,  int) *Status {
	.once.Do(.init)
	 := Status{Cookie: cookie(, , )}
	.sotab[] = 
	return &
}