blob: b94d80c58bd46a3e0f945641e9f43ee1be749443 [file] [log] [blame]
khenaidooffe076b2019-01-15 16:08:08 -05001// Copyright 2017 The etcd Authors
2//
3// Licensed under the Apache License, Version 2.0 (the "License");
4// you may not use this file except in compliance with the License.
5// You may obtain a copy of the License at
6//
7// http://www.apache.org/licenses/LICENSE-2.0
8//
9// Unless required by applicable law or agreed to in writing, software
10// distributed under the License is distributed on an "AS IS" BASIS,
11// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12// See the License for the specific language governing permissions and
13// limitations under the License.
14
15// +build linux,!cov
16
17package osutil
18
19import (
20 "syscall"
21 "unsafe"
22)
23
24// dflSignal sets the given signal to SIG_DFL
25func dflSignal(sig syscall.Signal) {
26 // clearing out the sigact sets the signal to SIG_DFL
27 var sigactBuf [32]uint64
28 ptr := unsafe.Pointer(&sigactBuf)
29 syscall.Syscall6(uintptr(syscall.SYS_RT_SIGACTION), uintptr(sig), uintptr(ptr), 0, 8, 0, 0)
30}