1 // created by cgo -cdefs and then converted to Go 2 // cgo -cdefs defs_freebsd.go 3 4 package runtime 5 6 import "unsafe" 7 8 const ( 9 _EINTR = 0x4 10 _EFAULT = 0xe 11 12 _PROT_NONE = 0x0 13 _PROT_READ = 0x1 14 _PROT_WRITE = 0x2 15 _PROT_EXEC = 0x4 16 17 _MAP_ANON = 0x1000 18 _MAP_PRIVATE = 0x2 19 _MAP_FIXED = 0x10 20 21 _MADV_FREE = 0x5 22 23 _SA_SIGINFO = 0x40 24 _SA_RESTART = 0x2 25 _SA_ONSTACK = 0x1 26 27 _UMTX_OP_WAIT_UINT = 0xb 28 _UMTX_OP_WAIT_UINT_PRIVATE = 0xf 29 _UMTX_OP_WAKE = 0x3 30 _UMTX_OP_WAKE_PRIVATE = 0x10 31 32 _SIGHUP = 0x1 33 _SIGINT = 0x2 34 _SIGQUIT = 0x3 35 _SIGILL = 0x4 36 _SIGTRAP = 0x5 37 _SIGABRT = 0x6 38 _SIGEMT = 0x7 39 _SIGFPE = 0x8 40 _SIGKILL = 0x9 41 _SIGBUS = 0xa 42 _SIGSEGV = 0xb 43 _SIGSYS = 0xc 44 _SIGPIPE = 0xd 45 _SIGALRM = 0xe 46 _SIGTERM = 0xf 47 _SIGURG = 0x10 48 _SIGSTOP = 0x11 49 _SIGTSTP = 0x12 50 _SIGCONT = 0x13 51 _SIGCHLD = 0x14 52 _SIGTTIN = 0x15 53 _SIGTTOU = 0x16 54 _SIGIO = 0x17 55 _SIGXCPU = 0x18 56 _SIGXFSZ = 0x19 57 _SIGVTALRM = 0x1a 58 _SIGPROF = 0x1b 59 _SIGWINCH = 0x1c 60 _SIGINFO = 0x1d 61 _SIGUSR1 = 0x1e 62 _SIGUSR2 = 0x1f 63 64 _FPE_INTDIV = 0x2 65 _FPE_INTOVF = 0x1 66 _FPE_FLTDIV = 0x3 67 _FPE_FLTOVF = 0x4 68 _FPE_FLTUND = 0x5 69 _FPE_FLTRES = 0x6 70 _FPE_FLTINV = 0x7 71 _FPE_FLTSUB = 0x8 72 73 _BUS_ADRALN = 0x1 74 _BUS_ADRERR = 0x2 75 _BUS_OBJERR = 0x3 76 77 _SEGV_MAPERR = 0x1 78 _SEGV_ACCERR = 0x2 79 80 _ITIMER_REAL = 0x0 81 _ITIMER_VIRTUAL = 0x1 82 _ITIMER_PROF = 0x2 83 84 _EV_ADD = 0x1 85 _EV_DELETE = 0x2 86 _EV_CLEAR = 0x20 87 _EV_RECEIPT = 0x40 88 _EV_ERROR = 0x4000 89 _EVFILT_READ = -0x1 90 _EVFILT_WRITE = -0x2 91 ) 92 93 type rtprio struct { 94 _type uint16 95 prio uint16 96 } 97 98 type thrparam struct { 99 start_func uintptr 100 arg unsafe.Pointer 101 stack_base uintptr 102 stack_size uintptr 103 tls_base unsafe.Pointer 104 tls_size uintptr 105 child_tid unsafe.Pointer // *int32 106 parent_tid *int32 107 flags int32 108 rtp *rtprio 109 spare [3]uintptr 110 } 111 112 type sigaltstackt struct { 113 ss_sp *uint8 114 ss_size uint32 115 ss_flags int32 116 } 117 118 type sigset struct { 119 __bits [4]uint32 120 } 121 122 type stackt struct { 123 ss_sp uintptr 124 ss_size uintptr 125 ss_flags int32 126 } 127 128 type siginfo struct { 129 si_signo int32 130 si_errno int32 131 si_code int32 132 si_pid int32 133 si_uid uint32 134 si_status int32 135 si_addr uintptr 136 si_value [4]byte 137 _reason [32]byte 138 } 139 140 type mcontext struct { 141 __gregs [17]uint32 142 __fpu [140]byte 143 } 144 145 type ucontext struct { 146 uc_sigmask sigset 147 uc_mcontext mcontext 148 uc_link *ucontext 149 uc_stack stackt 150 uc_flags int32 151 __spare__ [4]int32 152 } 153 154 type timespec struct { 155 tv_sec int64 156 tv_nsec int32 157 pad_cgo_0 [4]byte 158 } 159 160 func (ts *timespec) set_sec(x int64) { 161 ts.tv_sec = x 162 } 163 164 type timeval struct { 165 tv_sec int64 166 tv_usec int32 167 pad_cgo_0 [4]byte 168 } 169 170 func (tv *timeval) set_usec(x int32) { 171 tv.tv_usec = x 172 } 173 174 type itimerval struct { 175 it_interval timeval 176 it_value timeval 177 } 178 179 type keventt struct { 180 ident uint32 181 filter int16 182 flags uint16 183 fflags uint32 184 data int32 185 udata *byte 186 } 187