1// +build 386,freebsd
2// Created by cgo -godefs - DO NOT EDIT
3// cgo -godefs types_freebsd.go
4
5package unix
6
7const (
8	sizeofPtr      = 0x4
9	sizeofShort    = 0x2
10	sizeofInt      = 0x4
11	sizeofLong     = 0x4
12	sizeofLongLong = 0x8
13)
14
15type (
16	_C_short     int16
17	_C_int       int32
18	_C_long      int32
19	_C_long_long int64
20)
21
22type Timespec struct {
23	Sec  int32
24	Nsec int32
25}
26
27type Timeval struct {
28	Sec  int32
29	Usec int32
30}
31
32type Rusage struct {
33	Utime    Timeval
34	Stime    Timeval
35	Maxrss   int32
36	Ixrss    int32
37	Idrss    int32
38	Isrss    int32
39	Minflt   int32
40	Majflt   int32
41	Nswap    int32
42	Inblock  int32
43	Oublock  int32
44	Msgsnd   int32
45	Msgrcv   int32
46	Nsignals int32
47	Nvcsw    int32
48	Nivcsw   int32
49}
50
51type Rlimit struct {
52	Cur int64
53	Max int64
54}
55
56type _Gid_t uint32
57
58const (
59	S_IFMT   = 0xf000
60	S_IFIFO  = 0x1000
61	S_IFCHR  = 0x2000
62	S_IFDIR  = 0x4000
63	S_IFBLK  = 0x6000
64	S_IFREG  = 0x8000
65	S_IFLNK  = 0xa000
66	S_IFSOCK = 0xc000
67	S_ISUID  = 0x800
68	S_ISGID  = 0x400
69	S_ISVTX  = 0x200
70	S_IRUSR  = 0x100
71	S_IWUSR  = 0x80
72	S_IXUSR  = 0x40
73)
74
75type Stat_t struct {
76	Dev           uint32
77	Ino           uint32
78	Mode          uint16
79	Nlink         uint16
80	Uid           uint32
81	Gid           uint32
82	Rdev          uint32
83	Atimespec     Timespec
84	Mtimespec     Timespec
85	Ctimespec     Timespec
86	Size          int64
87	Blocks        int64
88	Blksize       uint32
89	Flags         uint32
90	Gen           uint32
91	Lspare        int32
92	Birthtimespec Timespec
93	Pad_cgo_0     [8]byte
94}
95
96type Statfs_t struct {
97	Version     uint32
98	Type        uint32
99	Flags       uint64
100	Bsize       uint64
101	Iosize      uint64
102	Blocks      uint64
103	Bfree       uint64
104	Bavail      int64
105	Files       uint64
106	Ffree       int64
107	Syncwrites  uint64
108	Asyncwrites uint64
109	Syncreads   uint64
110	Asyncreads  uint64
111	Spare       [10]uint64
112	Namemax     uint32
113	Owner       uint32
114	Fsid        Fsid
115	Charspare   [80]int8
116	Fstypename  [16]int8
117	Mntfromname [88]int8
118	Mntonname   [88]int8
119}
120
121type Flock_t struct {
122	Start  int64
123	Len    int64
124	Pid    int32
125	Type   int16
126	Whence int16
127	Sysid  int32
128}
129
130type Dirent struct {
131	Fileno uint32
132	Reclen uint16
133	Type   uint8
134	Namlen uint8
135	Name   [256]int8
136}
137
138type Fsid struct {
139	Val [2]int32
140}
141
142const (
143	FADV_NORMAL     = 0x0
144	FADV_RANDOM     = 0x1
145	FADV_SEQUENTIAL = 0x2
146	FADV_WILLNEED   = 0x3
147	FADV_DONTNEED   = 0x4
148	FADV_NOREUSE    = 0x5
149)
150
151type RawSockaddrInet4 struct {
152	Len    uint8
153	Family uint8
154	Port   uint16
155	Addr   [4]byte /* in_addr */
156	Zero   [8]int8
157}
158
159type RawSockaddrInet6 struct {
160	Len      uint8
161	Family   uint8
162	Port     uint16
163	Flowinfo uint32
164	Addr     [16]byte /* in6_addr */
165	Scope_id uint32
166}
167
168type RawSockaddrUnix struct {
169	Len    uint8
170	Family uint8
171	Path   [104]int8
172}
173
174type RawSockaddrDatalink struct {
175	Len    uint8
176	Family uint8
177	Index  uint16
178	Type   uint8
179	Nlen   uint8
180	Alen   uint8
181	Slen   uint8
182	Data   [46]int8
183}
184
185type RawSockaddr struct {
186	Len    uint8
187	Family uint8
188	Data   [14]int8
189}
190
191type RawSockaddrAny struct {
192	Addr RawSockaddr
193	Pad  [92]int8
194}
195
196type _Socklen uint32
197
198type Linger struct {
199	Onoff  int32
200	Linger int32
201}
202
203type Iovec struct {
204	Base *byte
205	Len  uint32
206}
207
208type IPMreq struct {
209	Multiaddr [4]byte /* in_addr */
210	Interface [4]byte /* in_addr */
211}
212
213type IPMreqn struct {
214	Multiaddr [4]byte /* in_addr */
215	Address   [4]byte /* in_addr */
216	Ifindex   int32
217}
218
219type IPv6Mreq struct {
220	Multiaddr [16]byte /* in6_addr */
221	Interface uint32
222}
223
224type Msghdr struct {
225	Name       *byte
226	Namelen    uint32
227	Iov        *Iovec
228	Iovlen     int32
229	Control    *byte
230	Controllen uint32
231	Flags      int32
232}
233
234type Cmsghdr struct {
235	Len   uint32
236	Level int32
237	Type  int32
238}
239
240type Inet6Pktinfo struct {
241	Addr    [16]byte /* in6_addr */
242	Ifindex uint32
243}
244
245type IPv6MTUInfo struct {
246	Addr RawSockaddrInet6
247	Mtu  uint32
248}
249
250type ICMPv6Filter struct {
251	Filt [8]uint32
252}
253
254const (
255	SizeofSockaddrInet4    = 0x10
256	SizeofSockaddrInet6    = 0x1c
257	SizeofSockaddrAny      = 0x6c
258	SizeofSockaddrUnix     = 0x6a
259	SizeofSockaddrDatalink = 0x36
260	SizeofLinger           = 0x8
261	SizeofIPMreq           = 0x8
262	SizeofIPMreqn          = 0xc
263	SizeofIPv6Mreq         = 0x14
264	SizeofMsghdr           = 0x1c
265	SizeofCmsghdr          = 0xc
266	SizeofInet6Pktinfo     = 0x14
267	SizeofIPv6MTUInfo      = 0x20
268	SizeofICMPv6Filter     = 0x20
269)
270
271const (
272	PTRACE_TRACEME = 0x0
273	PTRACE_CONT    = 0x7
274	PTRACE_KILL    = 0x8
275)
276
277type Kevent_t struct {
278	Ident  uint32
279	Filter int16
280	Flags  uint16
281	Fflags uint32
282	Data   int32
283	Udata  *byte
284}
285
286type FdSet struct {
287	X__fds_bits [32]uint32
288}
289
290const (
291	sizeofIfMsghdr         = 0x64
292	SizeofIfMsghdr         = 0x60
293	sizeofIfData           = 0x54
294	SizeofIfData           = 0x50
295	SizeofIfaMsghdr        = 0x14
296	SizeofIfmaMsghdr       = 0x10
297	SizeofIfAnnounceMsghdr = 0x18
298	SizeofRtMsghdr         = 0x5c
299	SizeofRtMetrics        = 0x38
300)
301
302type ifMsghdr struct {
303	Msglen    uint16
304	Version   uint8
305	Type      uint8
306	Addrs     int32
307	Flags     int32
308	Index     uint16
309	Pad_cgo_0 [2]byte
310	Data      ifData
311}
312
313type IfMsghdr struct {
314	Msglen    uint16
315	Version   uint8
316	Type      uint8
317	Addrs     int32
318	Flags     int32
319	Index     uint16
320	Pad_cgo_0 [2]byte
321	Data      IfData
322}
323
324type ifData struct {
325	Type        uint8
326	Physical    uint8
327	Addrlen     uint8
328	Hdrlen      uint8
329	Link_state  uint8
330	Vhid        uint8
331	Baudrate_pf uint8
332	Datalen     uint8
333	Mtu         uint32
334	Metric      uint32
335	Baudrate    uint32
336	Ipackets    uint32
337	Ierrors     uint32
338	Opackets    uint32
339	Oerrors     uint32
340	Collisions  uint32
341	Ibytes      uint32
342	Obytes      uint32
343	Imcasts     uint32
344	Omcasts     uint32
345	Iqdrops     uint32
346	Noproto     uint32
347	Hwassist    uint64
348	Epoch       int32
349	Lastchange  Timeval
350}
351
352type IfData struct {
353	Type        uint8
354	Physical    uint8
355	Addrlen     uint8
356	Hdrlen      uint8
357	Link_state  uint8
358	Spare_char1 uint8
359	Spare_char2 uint8
360	Datalen     uint8
361	Mtu         uint32
362	Metric      uint32
363	Baudrate    uint32
364	Ipackets    uint32
365	Ierrors     uint32
366	Opackets    uint32
367	Oerrors     uint32
368	Collisions  uint32
369	Ibytes      uint32
370	Obytes      uint32
371	Imcasts     uint32
372	Omcasts     uint32
373	Iqdrops     uint32
374	Noproto     uint32
375	Hwassist    uint32
376	Epoch       int32
377	Lastchange  Timeval
378}
379
380type IfaMsghdr struct {
381	Msglen    uint16
382	Version   uint8
383	Type      uint8
384	Addrs     int32
385	Flags     int32
386	Index     uint16
387	Pad_cgo_0 [2]byte
388	Metric    int32
389}
390
391type IfmaMsghdr struct {
392	Msglen    uint16
393	Version   uint8
394	Type      uint8
395	Addrs     int32
396	Flags     int32
397	Index     uint16
398	Pad_cgo_0 [2]byte
399}
400
401type IfAnnounceMsghdr struct {
402	Msglen  uint16
403	Version uint8
404	Type    uint8
405	Index   uint16
406	Name    [16]int8
407	What    uint16
408}
409
410type RtMsghdr struct {
411	Msglen    uint16
412	Version   uint8
413	Type      uint8
414	Index     uint16
415	Pad_cgo_0 [2]byte
416	Flags     int32
417	Addrs     int32
418	Pid       int32
419	Seq       int32
420	Errno     int32
421	Fmask     int32
422	Inits     uint32
423	Rmx       RtMetrics
424}
425
426type RtMetrics struct {
427	Locks    uint32
428	Mtu      uint32
429	Hopcount uint32
430	Expire   uint32
431	Recvpipe uint32
432	Sendpipe uint32
433	Ssthresh uint32
434	Rtt      uint32
435	Rttvar   uint32
436	Pksent   uint32
437	Weight   uint32
438	Filler   [3]uint32
439}
440
441const (
442	SizeofBpfVersion    = 0x4
443	SizeofBpfStat       = 0x8
444	SizeofBpfZbuf       = 0xc
445	SizeofBpfProgram    = 0x8
446	SizeofBpfInsn       = 0x8
447	SizeofBpfHdr        = 0x14
448	SizeofBpfZbufHeader = 0x20
449)
450
451type BpfVersion struct {
452	Major uint16
453	Minor uint16
454}
455
456type BpfStat struct {
457	Recv uint32
458	Drop uint32
459}
460
461type BpfZbuf struct {
462	Bufa   *byte
463	Bufb   *byte
464	Buflen uint32
465}
466
467type BpfProgram struct {
468	Len   uint32
469	Insns *BpfInsn
470}
471
472type BpfInsn struct {
473	Code uint16
474	Jt   uint8
475	Jf   uint8
476	K    uint32
477}
478
479type BpfHdr struct {
480	Tstamp    Timeval
481	Caplen    uint32
482	Datalen   uint32
483	Hdrlen    uint16
484	Pad_cgo_0 [2]byte
485}
486
487type BpfZbufHeader struct {
488	Kernel_gen uint32
489	Kernel_len uint32
490	User_gen   uint32
491	X_bzh_pad  [5]uint32
492}
493
494type Termios struct {
495	Iflag  uint32
496	Oflag  uint32
497	Cflag  uint32
498	Lflag  uint32
499	Cc     [20]uint8
500	Ispeed uint32
501	Ospeed uint32
502}
503