1// cgo -godefs types_freebsd.go | go run mkpost.go
2// Code generated by the command above; see README.md. DO NOT EDIT.
3
4// +build arm64,freebsd
5
6package unix
7
8const (
9	SizeofPtr      = 0x8
10	SizeofShort    = 0x2
11	SizeofInt      = 0x4
12	SizeofLong     = 0x8
13	SizeofLongLong = 0x8
14)
15
16type (
17	_C_short     int16
18	_C_int       int32
19	_C_long      int64
20	_C_long_long int64
21)
22
23type Timespec struct {
24	Sec  int64
25	Nsec int64
26}
27
28type Timeval struct {
29	Sec  int64
30	Usec int64
31}
32
33type Rusage struct {
34	Utime    Timeval
35	Stime    Timeval
36	Maxrss   int64
37	Ixrss    int64
38	Idrss    int64
39	Isrss    int64
40	Minflt   int64
41	Majflt   int64
42	Nswap    int64
43	Inblock  int64
44	Oublock  int64
45	Msgsnd   int64
46	Msgrcv   int64
47	Nsignals int64
48	Nvcsw    int64
49	Nivcsw   int64
50}
51
52type Rlimit struct {
53	Cur int64
54	Max int64
55}
56
57type _Gid_t uint32
58
59const (
60	_statfsVersion = 0x20140518
61	_dirblksiz     = 0x400
62)
63
64type Stat_t struct {
65	Dev     uint64
66	Ino     uint64
67	Nlink   uint64
68	Mode    uint16
69	_0      int16
70	Uid     uint32
71	Gid     uint32
72	_1      int32
73	Rdev    uint64
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     uint64
83	Spare   [10]uint64
84}
85
86type stat_freebsd11_t struct {
87	Dev     uint32
88	Ino     uint32
89	Mode    uint16
90	Nlink   uint16
91	Uid     uint32
92	Gid     uint32
93	Rdev    uint32
94	Atim    Timespec
95	Mtim    Timespec
96	Ctim    Timespec
97	Size    int64
98	Blocks  int64
99	Blksize int32
100	Flags   uint32
101	Gen     uint32
102	Lspare  int32
103	Btim    Timespec
104}
105
106type Statfs_t struct {
107	Version     uint32
108	Type        uint32
109	Flags       uint64
110	Bsize       uint64
111	Iosize      uint64
112	Blocks      uint64
113	Bfree       uint64
114	Bavail      int64
115	Files       uint64
116	Ffree       int64
117	Syncwrites  uint64
118	Asyncwrites uint64
119	Syncreads   uint64
120	Asyncreads  uint64
121	Spare       [10]uint64
122	Namemax     uint32
123	Owner       uint32
124	Fsid        Fsid
125	Charspare   [80]int8
126	Fstypename  [16]int8
127	Mntfromname [1024]int8
128	Mntonname   [1024]int8
129}
130
131type statfs_freebsd11_t struct {
132	Version     uint32
133	Type        uint32
134	Flags       uint64
135	Bsize       uint64
136	Iosize      uint64
137	Blocks      uint64
138	Bfree       uint64
139	Bavail      int64
140	Files       uint64
141	Ffree       int64
142	Syncwrites  uint64
143	Asyncwrites uint64
144	Syncreads   uint64
145	Asyncreads  uint64
146	Spare       [10]uint64
147	Namemax     uint32
148	Owner       uint32
149	Fsid        Fsid
150	Charspare   [80]int8
151	Fstypename  [16]int8
152	Mntfromname [88]int8
153	Mntonname   [88]int8
154}
155
156type Flock_t struct {
157	Start  int64
158	Len    int64
159	Pid    int32
160	Type   int16
161	Whence int16
162	Sysid  int32
163	_      [4]byte
164}
165
166type Dirent struct {
167	Fileno uint64
168	Off    int64
169	Reclen uint16
170	Type   uint8
171	Pad0   uint8
172	Namlen uint16
173	Pad1   uint16
174	Name   [256]int8
175}
176
177type dirent_freebsd11 struct {
178	Fileno uint32
179	Reclen uint16
180	Type   uint8
181	Namlen uint8
182	Name   [256]int8
183}
184
185type Fsid struct {
186	Val [2]int32
187}
188
189const (
190	PathMax = 0x400
191)
192
193const (
194	FADV_NORMAL     = 0x0
195	FADV_RANDOM     = 0x1
196	FADV_SEQUENTIAL = 0x2
197	FADV_WILLNEED   = 0x3
198	FADV_DONTNEED   = 0x4
199	FADV_NOREUSE    = 0x5
200)
201
202type RawSockaddrInet4 struct {
203	Len    uint8
204	Family uint8
205	Port   uint16
206	Addr   [4]byte /* in_addr */
207	Zero   [8]int8
208}
209
210type RawSockaddrInet6 struct {
211	Len      uint8
212	Family   uint8
213	Port     uint16
214	Flowinfo uint32
215	Addr     [16]byte /* in6_addr */
216	Scope_id uint32
217}
218
219type RawSockaddrUnix struct {
220	Len    uint8
221	Family uint8
222	Path   [104]int8
223}
224
225type RawSockaddrDatalink struct {
226	Len    uint8
227	Family uint8
228	Index  uint16
229	Type   uint8
230	Nlen   uint8
231	Alen   uint8
232	Slen   uint8
233	Data   [46]int8
234}
235
236type RawSockaddr struct {
237	Len    uint8
238	Family uint8
239	Data   [14]int8
240}
241
242type RawSockaddrAny struct {
243	Addr RawSockaddr
244	Pad  [92]int8
245}
246
247type _Socklen uint32
248
249type Linger struct {
250	Onoff  int32
251	Linger int32
252}
253
254type Iovec struct {
255	Base *byte
256	Len  uint64
257}
258
259type IPMreq struct {
260	Multiaddr [4]byte /* in_addr */
261	Interface [4]byte /* in_addr */
262}
263
264type IPMreqn struct {
265	Multiaddr [4]byte /* in_addr */
266	Address   [4]byte /* in_addr */
267	Ifindex   int32
268}
269
270type IPv6Mreq struct {
271	Multiaddr [16]byte /* in6_addr */
272	Interface uint32
273}
274
275type Msghdr struct {
276	Name       *byte
277	Namelen    uint32
278	_          [4]byte
279	Iov        *Iovec
280	Iovlen     int32
281	_          [4]byte
282	Control    *byte
283	Controllen uint32
284	Flags      int32
285}
286
287type Cmsghdr struct {
288	Len   uint32
289	Level int32
290	Type  int32
291}
292
293type Inet6Pktinfo struct {
294	Addr    [16]byte /* in6_addr */
295	Ifindex uint32
296}
297
298type IPv6MTUInfo struct {
299	Addr RawSockaddrInet6
300	Mtu  uint32
301}
302
303type ICMPv6Filter struct {
304	Filt [8]uint32
305}
306
307const (
308	SizeofSockaddrInet4    = 0x10
309	SizeofSockaddrInet6    = 0x1c
310	SizeofSockaddrAny      = 0x6c
311	SizeofSockaddrUnix     = 0x6a
312	SizeofSockaddrDatalink = 0x36
313	SizeofLinger           = 0x8
314	SizeofIPMreq           = 0x8
315	SizeofIPMreqn          = 0xc
316	SizeofIPv6Mreq         = 0x14
317	SizeofMsghdr           = 0x30
318	SizeofCmsghdr          = 0xc
319	SizeofInet6Pktinfo     = 0x14
320	SizeofIPv6MTUInfo      = 0x20
321	SizeofICMPv6Filter     = 0x20
322)
323
324const (
325	PTRACE_ATTACH     = 0xa
326	PTRACE_CONT       = 0x7
327	PTRACE_DETACH     = 0xb
328	PTRACE_GETFPREGS  = 0x23
329	PTRACE_GETFSBASE  = 0x47
330	PTRACE_GETLWPLIST = 0xf
331	PTRACE_GETNUMLWPS = 0xe
332	PTRACE_GETREGS    = 0x21
333	PTRACE_GETXSTATE  = 0x45
334	PTRACE_IO         = 0xc
335	PTRACE_KILL       = 0x8
336	PTRACE_LWPEVENTS  = 0x18
337	PTRACE_LWPINFO    = 0xd
338	PTRACE_SETFPREGS  = 0x24
339	PTRACE_SETREGS    = 0x22
340	PTRACE_SINGLESTEP = 0x9
341	PTRACE_TRACEME    = 0x0
342)
343
344const (
345	PIOD_READ_D  = 0x1
346	PIOD_WRITE_D = 0x2
347	PIOD_READ_I  = 0x3
348	PIOD_WRITE_I = 0x4
349)
350
351const (
352	PL_FLAG_BORN   = 0x100
353	PL_FLAG_EXITED = 0x200
354	PL_FLAG_SI     = 0x20
355)
356
357const (
358	TRAP_BRKPT = 0x1
359	TRAP_TRACE = 0x2
360)
361
362type PtraceLwpInfoStruct struct {
363	Lwpid        int32
364	Event        int32
365	Flags        int32
366	Sigmask      Sigset_t
367	Siglist      Sigset_t
368	Siginfo      __Siginfo
369	Tdname       [20]int8
370	Child_pid    int32
371	Syscall_code uint32
372	Syscall_narg uint32
373}
374
375type __Siginfo struct {
376	Signo    int32
377	Errno    int32
378	Code     int32
379	Pid      int32
380	Uid      uint32
381	Status   int32
382	Addr     *byte
383	Value    [8]byte
384	X_reason [40]byte
385}
386
387type Sigset_t struct {
388	Val [4]uint32
389}
390
391type Reg struct {
392	X    [30]uint64
393	Lr   uint64
394	Sp   uint64
395	Elr  uint64
396	Spsr uint32
397}
398
399type FpReg struct {
400	Fp_q  [512]uint8
401	Fp_sr uint32
402	Fp_cr uint32
403}
404
405type PtraceIoDesc struct {
406	Op   int32
407	Offs *byte
408	Addr *byte
409	Len  uint
410}
411
412type Kevent_t struct {
413	Ident  uint64
414	Filter int16
415	Flags  uint16
416	Fflags uint32
417	Data   int64
418	Udata  *byte
419}
420
421type FdSet struct {
422	Bits [16]uint64
423}
424
425const (
426	sizeofIfMsghdr         = 0xa8
427	SizeofIfMsghdr         = 0xa8
428	sizeofIfData           = 0x98
429	SizeofIfData           = 0x98
430	SizeofIfaMsghdr        = 0x14
431	SizeofIfmaMsghdr       = 0x10
432	SizeofIfAnnounceMsghdr = 0x18
433	SizeofRtMsghdr         = 0x98
434	SizeofRtMetrics        = 0x70
435)
436
437type ifMsghdr struct {
438	Msglen  uint16
439	Version uint8
440	Type    uint8
441	Addrs   int32
442	Flags   int32
443	Index   uint16
444	_       [2]byte
445	Data    ifData
446}
447
448type IfMsghdr struct {
449	Msglen  uint16
450	Version uint8
451	Type    uint8
452	Addrs   int32
453	Flags   int32
454	Index   uint16
455	_       [2]byte
456	Data    IfData
457}
458
459type ifData struct {
460	Type       uint8
461	Physical   uint8
462	Addrlen    uint8
463	Hdrlen     uint8
464	Link_state uint8
465	Vhid       uint8
466	Datalen    uint16
467	Mtu        uint32
468	Metric     uint32
469	Baudrate   uint64
470	Ipackets   uint64
471	Ierrors    uint64
472	Opackets   uint64
473	Oerrors    uint64
474	Collisions uint64
475	Ibytes     uint64
476	Obytes     uint64
477	Imcasts    uint64
478	Omcasts    uint64
479	Iqdrops    uint64
480	Oqdrops    uint64
481	Noproto    uint64
482	Hwassist   uint64
483	_          [8]byte
484	_          [16]byte
485}
486
487type IfData struct {
488	Type        uint8
489	Physical    uint8
490	Addrlen     uint8
491	Hdrlen      uint8
492	Link_state  uint8
493	Spare_char1 uint8
494	Spare_char2 uint8
495	Datalen     uint8
496	Mtu         uint64
497	Metric      uint64
498	Baudrate    uint64
499	Ipackets    uint64
500	Ierrors     uint64
501	Opackets    uint64
502	Oerrors     uint64
503	Collisions  uint64
504	Ibytes      uint64
505	Obytes      uint64
506	Imcasts     uint64
507	Omcasts     uint64
508	Iqdrops     uint64
509	Noproto     uint64
510	Hwassist    uint64
511	Epoch       int64
512	Lastchange  Timeval
513}
514
515type IfaMsghdr struct {
516	Msglen  uint16
517	Version uint8
518	Type    uint8
519	Addrs   int32
520	Flags   int32
521	Index   uint16
522	_       [2]byte
523	Metric  int32
524}
525
526type IfmaMsghdr struct {
527	Msglen  uint16
528	Version uint8
529	Type    uint8
530	Addrs   int32
531	Flags   int32
532	Index   uint16
533	_       [2]byte
534}
535
536type IfAnnounceMsghdr struct {
537	Msglen  uint16
538	Version uint8
539	Type    uint8
540	Index   uint16
541	Name    [16]int8
542	What    uint16
543}
544
545type RtMsghdr struct {
546	Msglen  uint16
547	Version uint8
548	Type    uint8
549	Index   uint16
550	_       [2]byte
551	Flags   int32
552	Addrs   int32
553	Pid     int32
554	Seq     int32
555	Errno   int32
556	Fmask   int32
557	Inits   uint64
558	Rmx     RtMetrics
559}
560
561type RtMetrics struct {
562	Locks    uint64
563	Mtu      uint64
564	Hopcount uint64
565	Expire   uint64
566	Recvpipe uint64
567	Sendpipe uint64
568	Ssthresh uint64
569	Rtt      uint64
570	Rttvar   uint64
571	Pksent   uint64
572	Weight   uint64
573	Filler   [3]uint64
574}
575
576const (
577	SizeofBpfVersion    = 0x4
578	SizeofBpfStat       = 0x8
579	SizeofBpfZbuf       = 0x18
580	SizeofBpfProgram    = 0x10
581	SizeofBpfInsn       = 0x8
582	SizeofBpfHdr        = 0x20
583	SizeofBpfZbufHeader = 0x20
584)
585
586type BpfVersion struct {
587	Major uint16
588	Minor uint16
589}
590
591type BpfStat struct {
592	Recv uint32
593	Drop uint32
594}
595
596type BpfZbuf struct {
597	Bufa   *byte
598	Bufb   *byte
599	Buflen uint64
600}
601
602type BpfProgram struct {
603	Len   uint32
604	_     [4]byte
605	Insns *BpfInsn
606}
607
608type BpfInsn struct {
609	Code uint16
610	Jt   uint8
611	Jf   uint8
612	K    uint32
613}
614
615type BpfHdr struct {
616	Tstamp  Timeval
617	Caplen  uint32
618	Datalen uint32
619	Hdrlen  uint16
620	_       [6]byte
621}
622
623type BpfZbufHeader struct {
624	Kernel_gen uint32
625	Kernel_len uint32
626	User_gen   uint32
627	_          [5]uint32
628}
629
630type Termios struct {
631	Iflag  uint32
632	Oflag  uint32
633	Cflag  uint32
634	Lflag  uint32
635	Cc     [20]uint8
636	Ispeed uint32
637	Ospeed uint32
638}
639
640type Winsize struct {
641	Row    uint16
642	Col    uint16
643	Xpixel uint16
644	Ypixel uint16
645}
646
647const (
648	AT_FDCWD            = -0x64
649	AT_REMOVEDIR        = 0x800
650	AT_SYMLINK_FOLLOW   = 0x400
651	AT_SYMLINK_NOFOLLOW = 0x200
652)
653
654type PollFd struct {
655	Fd      int32
656	Events  int16
657	Revents int16
658}
659
660const (
661	POLLERR      = 0x8
662	POLLHUP      = 0x10
663	POLLIN       = 0x1
664	POLLINIGNEOF = 0x2000
665	POLLNVAL     = 0x20
666	POLLOUT      = 0x4
667	POLLPRI      = 0x2
668	POLLRDBAND   = 0x80
669	POLLRDNORM   = 0x40
670	POLLWRBAND   = 0x100
671	POLLWRNORM   = 0x4
672)
673
674type CapRights struct {
675	Rights [2]uint64
676}
677
678type Utsname struct {
679	Sysname  [256]byte
680	Nodename [256]byte
681	Release  [256]byte
682	Version  [256]byte
683	Machine  [256]byte
684}
685