gvisor.dev/gvisor@v0.0.0-20240520182842-f9d4d51c7e0f/pkg/abi/linux/signalfd.go (about)

     1  // Copyright 2019 The gVisor 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  package linux
    16  
    17  const (
    18  	// SFD_NONBLOCK is a signalfd(2) flag.
    19  	SFD_NONBLOCK = 00004000
    20  
    21  	// SFD_CLOEXEC is a signalfd(2) flag.
    22  	SFD_CLOEXEC = 02000000
    23  )
    24  
    25  // SignalfdSiginfo is the siginfo encoding for signalfds.
    26  //
    27  // +marshal
    28  type SignalfdSiginfo struct {
    29  	Signo   uint32
    30  	Errno   int32
    31  	Code    int32
    32  	PID     uint32
    33  	UID     uint32
    34  	FD      int32
    35  	TID     uint32
    36  	Band    uint32
    37  	Overrun uint32
    38  	TrapNo  uint32
    39  	Status  int32
    40  	Int     int32
    41  	Ptr     uint64
    42  	UTime   uint64
    43  	STime   uint64
    44  	Addr    uint64
    45  	AddrLSB uint16
    46  	_       [48]uint8 `marshal:"unaligned"`
    47  }