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