1// cgo -godefs types_darwin.go | go run mkpost.go
2// Code generated by the command above; see README.md. DO NOT EDIT.
3
4//go:build arm64 && darwin
5// +build arm64,darwin
6
7package unix
8
9const (
10	SizeofPtr      = 0x8
11	SizeofShort    = 0x2
12	SizeofInt      = 0x4
13	SizeofLong     = 0x8
14	SizeofLongLong = 0x8
15)
16
17type (
18	_C_short     int16
19	_C_int       int32
20	_C_long      int64
21	_C_long_long int64
22)
23
24type Timespec struct {
25	Sec  int64
26	Nsec int64
27}
28
29type Timeval struct {
30	Sec  int64
31	Usec int32
32	_    [4]byte
33}
34
35type Timeval32 struct {
36	Sec  int32
37	Usec int32
38}
39
40type Rusage struct {
41	Utime    Timeval
42	Stime    Timeval
43	Maxrss   int64
44	Ixrss    int64
45	Idrss    int64
46	Isrss    int64
47	Minflt   int64
48	Majflt   int64
49	Nswap    int64
50	Inblock  int64
51	Oublock  int64
52	Msgsnd   int64
53	Msgrcv   int64
54	Nsignals int64
55	Nvcsw    int64
56	Nivcsw   int64
57}
58
59type Rlimit struct {
60	Cur uint64
61	Max uint64
62}
63
64type _Gid_t uint32
65
66type Stat_t struct {
67	Dev     int32
68	Mode    uint16
69	Nlink   uint16
70	Ino     uint64
71	Uid     uint32
72	Gid     uint32
73	Rdev    int32
74	Atim    Timespec
75	Mtim    Timespec
76	Ctim    Timespec
77	Btim    Timespec
78	Size    int64
79	Blocks  int64
80	Blksize int32
81	Flags   uint32
82	Gen     uint32
83	Lspare  int32
84	Qspare  [2]int64
85}
86
87type Statfs_t struct {
88	Bsize       uint32
89	Iosize      int32
90	Blocks      uint64
91	Bfree       uint64
92	Bavail      uint64
93	Files       uint64
94	Ffree       uint64
95	Fsid        Fsid
96	Owner       uint32
97	Type        uint32
98	Flags       uint32
99	Fssubtype   uint32
100	Fstypename  [16]byte
101	Mntonname   [1024]byte
102	Mntfromname [1024]byte
103	Flags_ext   uint32
104	Reserved    [7]uint32
105}
106
107type Flock_t struct {
108	Start  int64
109	Len    int64
110	Pid    int32
111	Type   int16
112	Whence int16
113}
114
115type Fstore_t struct {
116	Flags      uint32
117	Posmode    int32
118	Offset     int64
119	Length     int64
120	Bytesalloc int64
121}
122
123type Radvisory_t struct {
124	Offset int64
125	Count  int32
126	_      [4]byte
127}
128
129type Fbootstraptransfer_t struct {
130	Offset int64
131	Length uint64
132	Buffer *byte
133}
134
135type Log2phys_t struct {
136	Flags uint32
137	_     [16]byte
138}
139
140type Fsid struct {
141	Val [2]int32
142}
143
144type Dirent struct {
145	Ino     uint64
146	Seekoff uint64
147	Reclen  uint16
148	Namlen  uint16
149	Type    uint8
150	Name    [1024]int8
151	_       [3]byte
152}
153
154const (
155	PathMax = 0x400
156)
157
158type RawSockaddrInet4 struct {
159	Len    uint8
160	Family uint8
161	Port   uint16
162	Addr   [4]byte /* in_addr */
163	Zero   [8]int8
164}
165
166type RawSockaddrInet6 struct {
167	Len      uint8
168	Family   uint8
169	Port     uint16
170	Flowinfo uint32
171	Addr     [16]byte /* in6_addr */
172	Scope_id uint32
173}
174
175type RawSockaddrUnix struct {
176	Len    uint8
177	Family uint8
178	Path   [104]int8
179}
180
181type RawSockaddrDatalink struct {
182	Len    uint8
183	Family uint8
184	Index  uint16
185	Type   uint8
186	Nlen   uint8
187	Alen   uint8
188	Slen   uint8
189	Data   [12]int8
190}
191
192type RawSockaddr struct {
193	Len    uint8
194	Family uint8
195	Data   [14]int8
196}
197
198type RawSockaddrAny struct {
199	Addr RawSockaddr
200	Pad  [92]int8
201}
202
203type RawSockaddrCtl struct {
204	Sc_len      uint8
205	Sc_family   uint8
206	Ss_sysaddr  uint16
207	Sc_id       uint32
208	Sc_unit     uint32
209	Sc_reserved [5]uint32
210}
211
212type _Socklen uint32
213
214type Xucred struct {
215	Version uint32
216	Uid     uint32
217	Ngroups int16
218	Groups  [16]uint32
219}
220
221type Linger struct {
222	Onoff  int32
223	Linger int32
224}
225
226type Iovec struct {
227	Base *byte
228	Len  uint64
229}
230
231type IPMreq struct {
232	Multiaddr [4]byte /* in_addr */
233	Interface [4]byte /* in_addr */
234}
235
236type IPv6Mreq struct {
237	Multiaddr [16]byte /* in6_addr */
238	Interface uint32
239}
240
241type Msghdr struct {
242	Name       *byte
243	Namelen    uint32
244	Iov        *Iovec
245	Iovlen     int32
246	Control    *byte
247	Controllen uint32
248	Flags      int32
249}
250
251type Cmsghdr struct {
252	Len   uint32
253	Level int32
254	Type  int32
255}
256
257type Inet4Pktinfo struct {
258	Ifindex  uint32
259	Spec_dst [4]byte /* in_addr */
260	Addr     [4]byte /* in_addr */
261}
262
263type Inet6Pktinfo struct {
264	Addr    [16]byte /* in6_addr */
265	Ifindex uint32
266}
267
268type IPv6MTUInfo struct {
269	Addr RawSockaddrInet6
270	Mtu  uint32
271}
272
273type ICMPv6Filter struct {
274	Filt [8]uint32
275}
276
277const (
278	SizeofSockaddrInet4    = 0x10
279	SizeofSockaddrInet6    = 0x1c
280	SizeofSockaddrAny      = 0x6c
281	SizeofSockaddrUnix     = 0x6a
282	SizeofSockaddrDatalink = 0x14
283	SizeofSockaddrCtl      = 0x20
284	SizeofXucred           = 0x4c
285	SizeofLinger           = 0x8
286	SizeofIovec            = 0x10
287	SizeofIPMreq           = 0x8
288	SizeofIPv6Mreq         = 0x14
289	SizeofMsghdr           = 0x30
290	SizeofCmsghdr          = 0xc
291	SizeofInet4Pktinfo     = 0xc
292	SizeofInet6Pktinfo     = 0x14
293	SizeofIPv6MTUInfo      = 0x20
294	SizeofICMPv6Filter     = 0x20
295)
296
297const (
298	PTRACE_TRACEME = 0x0
299	PTRACE_CONT    = 0x7
300	PTRACE_KILL    = 0x8
301)
302
303type Kevent_t struct {
304	Ident  uint64
305	Filter int16
306	Flags  uint16
307	Fflags uint32
308	Data   int64
309	Udata  *byte
310}
311
312type FdSet struct {
313	Bits [32]int32
314}
315
316const (
317	SizeofIfMsghdr    = 0x70
318	SizeofIfData      = 0x60
319	SizeofIfaMsghdr   = 0x14
320	SizeofIfmaMsghdr  = 0x10
321	SizeofIfmaMsghdr2 = 0x14
322	SizeofRtMsghdr    = 0x5c
323	SizeofRtMetrics   = 0x38
324)
325
326type IfMsghdr struct {
327	Msglen  uint16
328	Version uint8
329	Type    uint8
330	Addrs   int32
331	Flags   int32
332	Index   uint16
333	Data    IfData
334}
335
336type IfData struct {
337	Type       uint8
338	Typelen    uint8
339	Physical   uint8
340	Addrlen    uint8
341	Hdrlen     uint8
342	Recvquota  uint8
343	Xmitquota  uint8
344	Unused1    uint8
345	Mtu        uint32
346	Metric     uint32
347	Baudrate   uint32
348	Ipackets   uint32
349	Ierrors    uint32
350	Opackets   uint32
351	Oerrors    uint32
352	Collisions uint32
353	Ibytes     uint32
354	Obytes     uint32
355	Imcasts    uint32
356	Omcasts    uint32
357	Iqdrops    uint32
358	Noproto    uint32
359	Recvtiming uint32
360	Xmittiming uint32
361	Lastchange Timeval32
362	Unused2    uint32
363	Hwassist   uint32
364	Reserved1  uint32
365	Reserved2  uint32
366}
367
368type IfaMsghdr struct {
369	Msglen  uint16
370	Version uint8
371	Type    uint8
372	Addrs   int32
373	Flags   int32
374	Index   uint16
375	Metric  int32
376}
377
378type IfmaMsghdr struct {
379	Msglen  uint16
380	Version uint8
381	Type    uint8
382	Addrs   int32
383	Flags   int32
384	Index   uint16
385	_       [2]byte
386}
387
388type IfmaMsghdr2 struct {
389	Msglen   uint16
390	Version  uint8
391	Type     uint8
392	Addrs    int32
393	Flags    int32
394	Index    uint16
395	Refcount int32
396}
397
398type RtMsghdr struct {
399	Msglen  uint16
400	Version uint8
401	Type    uint8
402	Index   uint16
403	Flags   int32
404	Addrs   int32
405	Pid     int32
406	Seq     int32
407	Errno   int32
408	Use     int32
409	Inits   uint32
410	Rmx     RtMetrics
411}
412
413type RtMetrics struct {
414	Locks    uint32
415	Mtu      uint32
416	Hopcount uint32
417	Expire   int32
418	Recvpipe uint32
419	Sendpipe uint32
420	Ssthresh uint32
421	Rtt      uint32
422	Rttvar   uint32
423	Pksent   uint32
424	State    uint32
425	Filler   [3]uint32
426}
427
428const (
429	SizeofBpfVersion = 0x4
430	SizeofBpfStat    = 0x8
431	SizeofBpfProgram = 0x10
432	SizeofBpfInsn    = 0x8
433	SizeofBpfHdr     = 0x14
434)
435
436type BpfVersion struct {
437	Major uint16
438	Minor uint16
439}
440
441type BpfStat struct {
442	Recv uint32
443	Drop uint32
444}
445
446type BpfProgram struct {
447	Len   uint32
448	Insns *BpfInsn
449}
450
451type BpfInsn struct {
452	Code uint16
453	Jt   uint8
454	Jf   uint8
455	K    uint32
456}
457
458type BpfHdr struct {
459	Tstamp  Timeval32
460	Caplen  uint32
461	Datalen uint32
462	Hdrlen  uint16
463	_       [2]byte
464}
465
466type Termios struct {
467	Iflag  uint64
468	Oflag  uint64
469	Cflag  uint64
470	Lflag  uint64
471	Cc     [20]uint8
472	Ispeed uint64
473	Ospeed uint64
474}
475
476type Winsize struct {
477	Row    uint16
478	Col    uint16
479	Xpixel uint16
480	Ypixel uint16
481}
482
483const (
484	AT_FDCWD            = -0x2
485	AT_REMOVEDIR        = 0x80
486	AT_SYMLINK_FOLLOW   = 0x40
487	AT_SYMLINK_NOFOLLOW = 0x20
488)
489
490type PollFd struct {
491	Fd      int32
492	Events  int16
493	Revents int16
494}
495
496const (
497	POLLERR    = 0x8
498	POLLHUP    = 0x10
499	POLLIN     = 0x1
500	POLLNVAL   = 0x20
501	POLLOUT    = 0x4
502	POLLPRI    = 0x2
503	POLLRDBAND = 0x80
504	POLLRDNORM = 0x40
505	POLLWRBAND = 0x100
506	POLLWRNORM = 0x4
507)
508
509type Utsname struct {
510	Sysname  [256]byte
511	Nodename [256]byte
512	Release  [256]byte
513	Version  [256]byte
514	Machine  [256]byte
515}
516
517const SizeofClockinfo = 0x14
518
519type Clockinfo struct {
520	Hz      int32
521	Tick    int32
522	Tickadj int32
523	Stathz  int32
524	Profhz  int32
525}
526
527type CtlInfo struct {
528	Id   uint32
529	Name [96]byte
530}
531