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 amd64,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]byte
127	Mntfromname [1024]byte
128	Mntonname   [1024]byte
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]byte
152	Mntfromname [88]byte
153	Mntonname   [88]byte
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	Iov        *Iovec
279	Iovlen     int32
280	Control    *byte
281	Controllen uint32
282	Flags      int32
283}
284
285type Cmsghdr struct {
286	Len   uint32
287	Level int32
288	Type  int32
289}
290
291type Inet6Pktinfo struct {
292	Addr    [16]byte /* in6_addr */
293	Ifindex uint32
294}
295
296type IPv6MTUInfo struct {
297	Addr RawSockaddrInet6
298	Mtu  uint32
299}
300
301type ICMPv6Filter struct {
302	Filt [8]uint32
303}
304
305const (
306	SizeofSockaddrInet4    = 0x10
307	SizeofSockaddrInet6    = 0x1c
308	SizeofSockaddrAny      = 0x6c
309	SizeofSockaddrUnix     = 0x6a
310	SizeofSockaddrDatalink = 0x36
311	SizeofLinger           = 0x8
312	SizeofIPMreq           = 0x8
313	SizeofIPMreqn          = 0xc
314	SizeofIPv6Mreq         = 0x14
315	SizeofMsghdr           = 0x30
316	SizeofCmsghdr          = 0xc
317	SizeofInet6Pktinfo     = 0x14
318	SizeofIPv6MTUInfo      = 0x20
319	SizeofICMPv6Filter     = 0x20
320)
321
322const (
323	PTRACE_ATTACH     = 0xa
324	PTRACE_CONT       = 0x7
325	PTRACE_DETACH     = 0xb
326	PTRACE_GETFPREGS  = 0x23
327	PTRACE_GETFSBASE  = 0x47
328	PTRACE_GETLWPLIST = 0xf
329	PTRACE_GETNUMLWPS = 0xe
330	PTRACE_GETREGS    = 0x21
331	PTRACE_GETXSTATE  = 0x45
332	PTRACE_IO         = 0xc
333	PTRACE_KILL       = 0x8
334	PTRACE_LWPEVENTS  = 0x18
335	PTRACE_LWPINFO    = 0xd
336	PTRACE_SETFPREGS  = 0x24
337	PTRACE_SETREGS    = 0x22
338	PTRACE_SINGLESTEP = 0x9
339	PTRACE_TRACEME    = 0x0
340)
341
342const (
343	PIOD_READ_D  = 0x1
344	PIOD_WRITE_D = 0x2
345	PIOD_READ_I  = 0x3
346	PIOD_WRITE_I = 0x4
347)
348
349const (
350	PL_FLAG_BORN   = 0x100
351	PL_FLAG_EXITED = 0x200
352	PL_FLAG_SI     = 0x20
353)
354
355const (
356	TRAP_BRKPT = 0x1
357	TRAP_TRACE = 0x2
358)
359
360type PtraceLwpInfoStruct struct {
361	Lwpid        int32
362	Event        int32
363	Flags        int32
364	Sigmask      Sigset_t
365	Siglist      Sigset_t
366	Siginfo      __Siginfo
367	Tdname       [20]int8
368	Child_pid    int32
369	Syscall_code uint32
370	Syscall_narg uint32
371}
372
373type __Siginfo struct {
374	Signo  int32
375	Errno  int32
376	Code   int32
377	Pid    int32
378	Uid    uint32
379	Status int32
380	Addr   *byte
381	Value  [8]byte
382	_      [40]byte
383}
384
385type Sigset_t struct {
386	Val [4]uint32
387}
388
389type Reg struct {
390	R15    int64
391	R14    int64
392	R13    int64
393	R12    int64
394	R11    int64
395	R10    int64
396	R9     int64
397	R8     int64
398	Rdi    int64
399	Rsi    int64
400	Rbp    int64
401	Rbx    int64
402	Rdx    int64
403	Rcx    int64
404	Rax    int64
405	Trapno uint32
406	Fs     uint16
407	Gs     uint16
408	Err    uint32
409	Es     uint16
410	Ds     uint16
411	Rip    int64
412	Cs     int64
413	Rflags int64
414	Rsp    int64
415	Ss     int64
416}
417
418type FpReg struct {
419	Env   [4]uint64
420	Acc   [8][16]uint8
421	Xacc  [16][16]uint8
422	Spare [12]uint64
423}
424
425type PtraceIoDesc struct {
426	Op   int32
427	Offs *byte
428	Addr *byte
429	Len  uint64
430}
431
432type Kevent_t struct {
433	Ident  uint64
434	Filter int16
435	Flags  uint16
436	Fflags uint32
437	Data   int64
438	Udata  *byte
439}
440
441type FdSet struct {
442	Bits [16]uint64
443}
444
445const (
446	sizeofIfMsghdr         = 0xa8
447	SizeofIfMsghdr         = 0xa8
448	sizeofIfData           = 0x98
449	SizeofIfData           = 0x98
450	SizeofIfaMsghdr        = 0x14
451	SizeofIfmaMsghdr       = 0x10
452	SizeofIfAnnounceMsghdr = 0x18
453	SizeofRtMsghdr         = 0x98
454	SizeofRtMetrics        = 0x70
455)
456
457type ifMsghdr struct {
458	Msglen  uint16
459	Version uint8
460	Type    uint8
461	Addrs   int32
462	Flags   int32
463	Index   uint16
464	_       uint16
465	Data    ifData
466}
467
468type IfMsghdr struct {
469	Msglen  uint16
470	Version uint8
471	Type    uint8
472	Addrs   int32
473	Flags   int32
474	Index   uint16
475	Data    IfData
476}
477
478type ifData struct {
479	Type       uint8
480	Physical   uint8
481	Addrlen    uint8
482	Hdrlen     uint8
483	Link_state uint8
484	Vhid       uint8
485	Datalen    uint16
486	Mtu        uint32
487	Metric     uint32
488	Baudrate   uint64
489	Ipackets   uint64
490	Ierrors    uint64
491	Opackets   uint64
492	Oerrors    uint64
493	Collisions uint64
494	Ibytes     uint64
495	Obytes     uint64
496	Imcasts    uint64
497	Omcasts    uint64
498	Iqdrops    uint64
499	Oqdrops    uint64
500	Noproto    uint64
501	Hwassist   uint64
502	_          [8]byte
503	_          [16]byte
504}
505
506type IfData struct {
507	Type        uint8
508	Physical    uint8
509	Addrlen     uint8
510	Hdrlen      uint8
511	Link_state  uint8
512	Spare_char1 uint8
513	Spare_char2 uint8
514	Datalen     uint8
515	Mtu         uint64
516	Metric      uint64
517	Baudrate    uint64
518	Ipackets    uint64
519	Ierrors     uint64
520	Opackets    uint64
521	Oerrors     uint64
522	Collisions  uint64
523	Ibytes      uint64
524	Obytes      uint64
525	Imcasts     uint64
526	Omcasts     uint64
527	Iqdrops     uint64
528	Noproto     uint64
529	Hwassist    uint64
530	Epoch       int64
531	Lastchange  Timeval
532}
533
534type IfaMsghdr struct {
535	Msglen  uint16
536	Version uint8
537	Type    uint8
538	Addrs   int32
539	Flags   int32
540	Index   uint16
541	_       uint16
542	Metric  int32
543}
544
545type IfmaMsghdr struct {
546	Msglen  uint16
547	Version uint8
548	Type    uint8
549	Addrs   int32
550	Flags   int32
551	Index   uint16
552	_       uint16
553}
554
555type IfAnnounceMsghdr struct {
556	Msglen  uint16
557	Version uint8
558	Type    uint8
559	Index   uint16
560	Name    [16]int8
561	What    uint16
562}
563
564type RtMsghdr struct {
565	Msglen  uint16
566	Version uint8
567	Type    uint8
568	Index   uint16
569	_       uint16
570	Flags   int32
571	Addrs   int32
572	Pid     int32
573	Seq     int32
574	Errno   int32
575	Fmask   int32
576	Inits   uint64
577	Rmx     RtMetrics
578}
579
580type RtMetrics struct {
581	Locks    uint64
582	Mtu      uint64
583	Hopcount uint64
584	Expire   uint64
585	Recvpipe uint64
586	Sendpipe uint64
587	Ssthresh uint64
588	Rtt      uint64
589	Rttvar   uint64
590	Pksent   uint64
591	Weight   uint64
592	Filler   [3]uint64
593}
594
595const (
596	SizeofBpfVersion    = 0x4
597	SizeofBpfStat       = 0x8
598	SizeofBpfZbuf       = 0x18
599	SizeofBpfProgram    = 0x10
600	SizeofBpfInsn       = 0x8
601	SizeofBpfHdr        = 0x20
602	SizeofBpfZbufHeader = 0x20
603)
604
605type BpfVersion struct {
606	Major uint16
607	Minor uint16
608}
609
610type BpfStat struct {
611	Recv uint32
612	Drop uint32
613}
614
615type BpfZbuf struct {
616	Bufa   *byte
617	Bufb   *byte
618	Buflen uint64
619}
620
621type BpfProgram struct {
622	Len   uint32
623	Insns *BpfInsn
624}
625
626type BpfInsn struct {
627	Code uint16
628	Jt   uint8
629	Jf   uint8
630	K    uint32
631}
632
633type BpfHdr struct {
634	Tstamp  Timeval
635	Caplen  uint32
636	Datalen uint32
637	Hdrlen  uint16
638	_       [6]byte
639}
640
641type BpfZbufHeader struct {
642	Kernel_gen uint32
643	Kernel_len uint32
644	User_gen   uint32
645	_          [5]uint32
646}
647
648type Termios struct {
649	Iflag  uint32
650	Oflag  uint32
651	Cflag  uint32
652	Lflag  uint32
653	Cc     [20]uint8
654	Ispeed uint32
655	Ospeed uint32
656}
657
658type Winsize struct {
659	Row    uint16
660	Col    uint16
661	Xpixel uint16
662	Ypixel uint16
663}
664
665const (
666	AT_FDCWD            = -0x64
667	AT_REMOVEDIR        = 0x800
668	AT_SYMLINK_FOLLOW   = 0x400
669	AT_SYMLINK_NOFOLLOW = 0x200
670)
671
672type PollFd struct {
673	Fd      int32
674	Events  int16
675	Revents int16
676}
677
678const (
679	POLLERR      = 0x8
680	POLLHUP      = 0x10
681	POLLIN       = 0x1
682	POLLINIGNEOF = 0x2000
683	POLLNVAL     = 0x20
684	POLLOUT      = 0x4
685	POLLPRI      = 0x2
686	POLLRDBAND   = 0x80
687	POLLRDNORM   = 0x40
688	POLLWRBAND   = 0x100
689	POLLWRNORM   = 0x4
690)
691
692type CapRights struct {
693	Rights [2]uint64
694}
695
696type Utsname struct {
697	Sysname  [256]byte
698	Nodename [256]byte
699	Release  [256]byte
700	Version  [256]byte
701	Machine  [256]byte
702}
703
704const SizeofClockinfo = 0x14
705
706type Clockinfo struct {
707	Hz     int32
708	Tick   int32
709	Spare  int32
710	Stathz int32
711	Profhz int32
712}
713