...
Run Format

Source file src/net/internal/socktest/switch_unix.go

Documentation: net/internal/socktest

  // 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 darwin dragonfly freebsd linux nacl netbsd openbsd solaris
  
  package socktest
  
  // Sockets maps a socket descriptor to the status of socket.
  type Sockets map[int]Status
  
  func (sw *Switch) sockso(s int) *Status {
  	sw.smu.RLock()
  	defer sw.smu.RUnlock()
  	so, ok := sw.sotab[s]
  	if !ok {
  		return nil
  	}
  	return &so
  }
  
  // addLocked returns a new Status without locking.
  // sw.smu must be held before call.
  func (sw *Switch) addLocked(s, family, sotype, proto int) *Status {
  	sw.once.Do(sw.init)
  	so := Status{Cookie: cookie(family, sotype, proto)}
  	sw.sotab[s] = so
  	return &so
  }
  

View as plain text