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