1// Copyright 2016 The Go Authors. All rights reserved.
2// Use of this source code is governed by a BSD-style
3// license that can be found in the LICENSE file.
4
5//go:build (linux && amd64) || (freebsd && amd64) || (linux && arm64) || (linux && ppc64le)
6
7package cgo
8
9// Import "unsafe" because we use go:linkname.
10import _ "unsafe"
11
12// When using cgo, call the C library for sigaction, so that we call into
13// any sanitizer interceptors. This supports using the sanitizers
14// with Go programs. The thread and memory sanitizers only apply to
15// C/C++ code; this permits that code to see the Go runtime's existing signal
16// handlers when registering new signal handlers for the process.
17
18//go:cgo_import_static x_cgo_sigaction
19//go:linkname x_cgo_sigaction x_cgo_sigaction
20//go:linkname _cgo_sigaction _cgo_sigaction
21var x_cgo_sigaction byte
22var _cgo_sigaction = &x_cgo_sigaction
23