mirror of git://gcc.gnu.org/git/gcc.git
				
				
				
			
		
			
				
	
	
		
			56 lines
		
	
	
		
			1.2 KiB
		
	
	
	
		
			Go
		
	
	
	
			
		
		
	
	
			56 lines
		
	
	
		
			1.2 KiB
		
	
	
	
		
			Go
		
	
	
	
// 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 linux nacl netbsd openbsd solaris
 | 
						|
 | 
						|
package net
 | 
						|
 | 
						|
import "internal/poll"
 | 
						|
 | 
						|
var (
 | 
						|
	// Placeholders for saving original socket system calls.
 | 
						|
	origSocket        = socketFunc
 | 
						|
	origClose         = poll.CloseFunc
 | 
						|
	origConnect       = connectFunc
 | 
						|
	origListen        = listenFunc
 | 
						|
	origAccept        = poll.AcceptFunc
 | 
						|
	origGetsockoptInt = getsockoptIntFunc
 | 
						|
 | 
						|
	extraTestHookInstallers   []func()
 | 
						|
	extraTestHookUninstallers []func()
 | 
						|
)
 | 
						|
 | 
						|
func installTestHooks() {
 | 
						|
	socketFunc = sw.Socket
 | 
						|
	poll.CloseFunc = sw.Close
 | 
						|
	connectFunc = sw.Connect
 | 
						|
	listenFunc = sw.Listen
 | 
						|
	poll.AcceptFunc = sw.Accept
 | 
						|
	getsockoptIntFunc = sw.GetsockoptInt
 | 
						|
 | 
						|
	for _, fn := range extraTestHookInstallers {
 | 
						|
		fn()
 | 
						|
	}
 | 
						|
}
 | 
						|
 | 
						|
func uninstallTestHooks() {
 | 
						|
	socketFunc = origSocket
 | 
						|
	poll.CloseFunc = origClose
 | 
						|
	connectFunc = origConnect
 | 
						|
	listenFunc = origListen
 | 
						|
	poll.AcceptFunc = origAccept
 | 
						|
	getsockoptIntFunc = origGetsockoptInt
 | 
						|
 | 
						|
	for _, fn := range extraTestHookUninstallers {
 | 
						|
		fn()
 | 
						|
	}
 | 
						|
}
 | 
						|
 | 
						|
// forceCloseSockets must be called only from TestMain.
 | 
						|
func forceCloseSockets() {
 | 
						|
	for s := range sw.Sockets() {
 | 
						|
		poll.CloseFunc(s)
 | 
						|
	}
 | 
						|
}
 |