71
71
}
72
72
73
73
s ! {
74
+ #[ cfg_attr( feature = "zerocopy" , derive( FromZeroes , FromBytes , AsBytes ) ) ]
74
75
pub struct fsid_t {
75
76
pub val: [ :: c_uint; 2 ] ,
76
77
}
77
78
79
+ #[ cfg_attr( feature = "zerocopy" , derive( FromZeroes , FromBytes , AsBytes ) ) ]
78
80
pub struct fsid64_t {
79
81
pub val: [ :: uint64_t; 2 ] ,
80
82
}
81
83
84
+ #[ cfg_attr( feature = "zerocopy" , derive( FromZeroes , FromBytes , AsBytes ) ) ]
82
85
pub struct timezone {
83
86
pub tz_minuteswest: :: c_int,
84
87
pub tz_dsttime: :: c_int,
85
88
}
86
89
90
+ #[ cfg_attr( feature = "zerocopy" , derive( FromZeroes , FromBytes , AsBytes ) ) ]
87
91
pub struct ip_mreq {
88
92
pub imr_multiaddr: in_addr,
89
93
pub imr_interface: in_addr,
90
94
}
91
95
96
+ #[ cfg_attr( feature = "zerocopy" , derive( FromZeroes , FromBytes , AsBytes ) ) ]
92
97
pub struct dirent {
93
98
pub d_offset: :: c_ulong,
94
99
pub d_ino: :: ino_t,
97
102
pub d_name: [ :: c_char; 256 ]
98
103
}
99
104
105
+ #[ cfg_attr( feature = "zerocopy" , derive( FromZeroes , FromBytes , AsBytes ) ) ]
100
106
pub struct termios {
101
107
pub c_iflag: :: tcflag_t,
102
108
pub c_oflag: :: tcflag_t,
105
111
pub c_cc: [ :: cc_t; :: NCCS ]
106
112
}
107
113
114
+ #[ cfg_attr( feature = "zerocopy" , derive( FromZeroes , FromBytes , AsBytes ) ) ]
108
115
pub struct flock64 {
109
116
pub l_type: :: c_short,
110
117
pub l_whence: :: c_short,
125
132
pub msg_flags: :: c_int,
126
133
}
127
134
135
+ #[ cfg_attr( feature = "zerocopy" , derive( FromZeroes , FromBytes , AsBytes ) ) ]
128
136
pub struct statvfs64 {
129
137
pub f_bsize: :: blksize64_t,
130
138
pub f_frsize: :: blksize64_t,
171
179
pub int_n_sign_posn: :: c_char,
172
180
}
173
181
182
+ #[ cfg_attr( feature = "zerocopy" , derive( FromZeroes , FromBytes , AsBytes ) ) ]
174
183
pub struct tm {
175
184
pub tm_sec: :: c_int,
176
185
pub tm_min: :: c_int,
@@ -195,22 +204,26 @@ s! {
195
204
pub ai_eflags: :: c_int,
196
205
}
197
206
207
+ #[ cfg_attr( feature = "zerocopy" , derive( FromZeroes , FromBytes , AsBytes ) ) ]
198
208
pub struct in_addr {
199
209
pub s_addr: in_addr_t
200
210
}
201
211
212
+ #[ cfg_attr( feature = "zerocopy" , derive( FromZeroes , FromBytes , AsBytes ) ) ]
202
213
pub struct ip_mreq_source {
203
214
pub imr_multiaddr: in_addr,
204
215
pub imr_sourceaddr: in_addr,
205
216
pub imr_interface: in_addr,
206
217
}
207
218
219
+ #[ cfg_attr( feature = "zerocopy" , derive( FromZeroes , FromBytes , AsBytes ) ) ]
208
220
pub struct sockaddr {
209
221
pub sa_len: :: c_uchar,
210
222
pub sa_family: sa_family_t,
211
223
pub sa_data: [ :: c_char; 14 ] ,
212
224
}
213
225
226
+ #[ cfg_attr( feature = "zerocopy" , derive( FromZeroes , FromBytes , AsBytes ) ) ]
214
227
pub struct sockaddr_dl {
215
228
pub sdl_len: :: c_uchar,
216
229
pub sdl_family: :: c_uchar,
222
235
pub sdl_data: [ :: c_char; 120 ] ,
223
236
}
224
237
238
+ #[ cfg_attr( feature = "zerocopy" , derive( FromZeroes , FromBytes , AsBytes ) ) ]
225
239
pub struct sockaddr_in {
226
240
pub sin_len: :: c_uchar,
227
241
pub sin_family: sa_family_t,
230
244
pub sin_zero: [ :: c_char; 8 ]
231
245
}
232
246
247
+ #[ cfg_attr( feature = "zerocopy" , derive( FromZeroes , FromBytes , AsBytes ) ) ]
233
248
pub struct sockaddr_in6 {
234
249
pub sin6_len: :: c_uchar,
235
250
pub sin6_family: :: c_uchar,
239
254
pub sin6_scope_id: :: uint32_t
240
255
}
241
256
257
+ #[ cfg_attr( feature = "zerocopy" , derive( FromZeroes , FromBytes , AsBytes ) ) ]
242
258
pub struct sockaddr_storage {
243
259
pub __ss_len: :: c_uchar,
244
260
pub ss_family: sa_family_t,
@@ -247,17 +263,20 @@ s! {
247
263
__ss_pad2: [ :: c_char; 1265 ] ,
248
264
}
249
265
266
+ #[ cfg_attr( feature = "zerocopy" , derive( FromZeroes , FromBytes , AsBytes ) ) ]
250
267
pub struct sockaddr_un {
251
268
pub sun_len: :: c_uchar,
252
269
pub sun_family: sa_family_t,
253
270
pub sun_path: [ :: c_char; 1023 ]
254
271
}
255
272
273
+ #[ cfg_attr( feature = "zerocopy" , derive( FromZeroes , FromBytes , AsBytes ) ) ]
256
274
pub struct st_timespec {
257
275
pub tv_sec: :: time_t,
258
276
pub tv_nsec: :: c_int,
259
277
}
260
278
279
+ #[ cfg_attr( feature = "zerocopy" , derive( FromZeroes , FromBytes , AsBytes ) ) ]
261
280
pub struct statfs64 {
262
281
pub f_version: :: c_int,
263
282
pub f_type: :: c_int,
289
308
pub pw_shell: * mut :: c_char
290
309
}
291
310
311
+ #[ cfg_attr( feature = "zerocopy" , derive( FromZeroes , FromBytes , AsBytes ) ) ]
292
312
pub struct utsname {
293
313
pub sysname: [ :: c_char; 32 ] ,
294
314
pub nodename: [ :: c_char; 32 ] ,
@@ -297,12 +317,14 @@ s! {
297
317
pub machine: [ :: c_char; 32 ] ,
298
318
}
299
319
320
+ #[ cfg_attr( feature = "zerocopy" , derive( FromZeroes , FromBytes , AsBytes ) ) ]
300
321
pub struct xutsname {
301
322
pub nid: :: c_uint,
302
323
pub reserved: :: c_int,
303
324
pub longnid: :: c_ulonglong,
304
325
}
305
326
327
+ #[ cfg_attr( feature = "zerocopy" , derive( FromZeroes , FromBytes , AsBytes ) ) ]
306
328
pub struct cmsghdr {
307
329
pub cmsg_len: :: socklen_t,
308
330
pub cmsg_level: :: c_int,
@@ -318,10 +340,12 @@ s! {
318
340
}
319
341
320
342
// Should be union with another 'sival_int'
343
+ #[ cfg_attr( feature = "zerocopy" , derive( FromZeroes , FromBytes , AsBytes ) ) ]
321
344
pub struct sigval64 {
322
345
pub sival_ptr: :: c_ulonglong,
323
346
}
324
347
348
+ #[ cfg_attr( feature = "zerocopy" , derive( FromZeroes , FromBytes , AsBytes ) ) ]
325
349
pub struct sigevent64 {
326
350
pub sigev_value: sigval64,
327
351
pub sigev_signo: :: c_int,
335
359
pub sevt_signo: signal_t,
336
360
}
337
361
362
+ #[ cfg_attr( feature = "zerocopy" , derive( FromZeroes , FromBytes , AsBytes ) ) ]
338
363
pub struct poll_ctl {
339
364
pub cmd: :: c_short,
340
365
pub events: :: c_short,
@@ -353,11 +378,13 @@ s! {
353
378
pub bytes_sent: :: uint64_t,
354
379
}
355
380
381
+ #[ cfg_attr( feature = "zerocopy" , derive( FromZeroes , FromBytes , AsBytes ) ) ]
356
382
pub struct mmsghdr {
357
383
pub msg_hdr: :: msghdr,
358
384
pub msg_len: :: c_uint,
359
385
}
360
386
387
+ #[ cfg_attr( feature = "zerocopy" , derive( FromZeroes , FromBytes , AsBytes ) ) ]
361
388
pub struct sched_param {
362
389
pub sched_priority: :: c_int,
363
390
pub sched_policy: :: c_int,
371
398
pub __pad: [ :: c_int; 4 ] ,
372
399
}
373
400
401
+ #[ cfg_attr( feature = "zerocopy" , derive( FromZeroes , FromBytes , AsBytes ) ) ]
374
402
pub struct posix_spawnattr_t {
375
403
pub posix_attr_flags: :: c_short,
376
404
pub posix_attr_pgroup: :: pid_t,
388
416
pub gl_ptx: * mut :: c_void,
389
417
}
390
418
419
+ #[ cfg_attr( feature = "zerocopy" , derive( FromZeroes , FromBytes , AsBytes ) ) ]
391
420
pub struct mallinfo {
392
421
pub arena: :: c_ulong,
393
422
pub ordblks: :: c_int,
@@ -401,11 +430,13 @@ s! {
401
430
pub keepcost: :: c_int,
402
431
}
403
432
433
+ #[ cfg_attr( feature = "zerocopy" , derive( FromZeroes , FromBytes , AsBytes ) ) ]
404
434
pub struct utmp_exit_status {
405
435
pub e_termination: :: c_short,
406
436
pub e_exit: :: c_short,
407
437
}
408
438
439
+ #[ cfg_attr( feature = "zerocopy" , derive( FromZeroes , FromBytes , AsBytes ) ) ]
409
440
pub struct utmp {
410
441
pub ut_user: [ :: c_char; 256 ] ,
411
442
pub ut_id: [ :: c_char; 14 ] ,
420
451
pub __reservedV: [ :: c_int; 6 ] ,
421
452
}
422
453
454
+ #[ cfg_attr( feature = "zerocopy" , derive( FromZeroes , FromBytes , AsBytes ) ) ]
423
455
pub struct regmatch_t {
424
456
pub rm_so: regoff_t,
425
457
pub rm_eo: regoff_t,
@@ -439,11 +471,13 @@ s! {
439
471
pub __unused: [ * mut :: c_void; 34 ] ,
440
472
}
441
473
474
+ #[ cfg_attr( feature = "zerocopy" , derive( FromZeroes , FromBytes , AsBytes ) ) ]
442
475
pub struct rlimit64 {
443
476
pub rlim_cur: rlim64_t,
444
477
pub rlim_max: rlim64_t,
445
478
}
446
479
480
+ #[ cfg_attr( feature = "zerocopy" , derive( FromZeroes , FromBytes , AsBytes ) ) ]
447
481
pub struct shmid_ds {
448
482
pub shm_perm: ipc_perm,
449
483
pub shm_segsz: :: size_t,
462
496
pub shm_reserved1: :: int64_t,
463
497
}
464
498
499
+ #[ cfg_attr( feature = "zerocopy" , derive( FromZeroes , FromBytes , AsBytes ) ) ]
465
500
pub struct stat64 {
466
501
pub st_dev: dev_t,
467
502
pub st_ino: ino_t,
494
529
pub mnt_passno: :: c_int,
495
530
}
496
531
532
+ #[ cfg_attr( feature = "zerocopy" , derive( FromZeroes , FromBytes , AsBytes ) ) ]
497
533
pub struct ipc_perm {
498
534
pub uid: :: uid_t,
499
535
pub gid: :: gid_t,
@@ -510,13 +546,15 @@ s! {
510
546
pub data: * mut :: c_void,
511
547
}
512
548
549
+ #[ cfg_attr( feature = "zerocopy" , derive( FromZeroes , FromBytes , AsBytes ) ) ]
513
550
pub struct mq_attr {
514
551
pub mq_flags: :: c_long,
515
552
pub mq_maxmsg: :: c_long,
516
553
pub mq_msgsize: :: c_long,
517
554
pub mq_curmsgs: :: c_long,
518
555
}
519
556
557
+ #[ cfg_attr( feature = "zerocopy" , derive( FromZeroes , FromBytes , AsBytes ) ) ]
520
558
pub struct sembuf {
521
559
pub sem_num: :: c_ushort,
522
560
pub sem_op: :: c_short,
528
566
pub if_name: * mut :: c_char,
529
567
}
530
568
569
+ #[ cfg_attr( feature = "zerocopy" , derive( FromZeroes , FromBytes , AsBytes ) ) ]
531
570
pub struct itimerspec {
532
571
pub it_interval: :: timespec,
533
572
pub it_value: :: timespec,
0 commit comments