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