@@ -266,6 +266,17 @@ s_no_extra_traits! {
266
266
__unused1: :: c_int,
267
267
__unused2: [ :: c_long; 7 ]
268
268
}
269
+
270
+ #[ cfg( libc_union) ]
271
+ pub union __c_anonymous_elf32_auxv_union {
272
+ pub a_val: :: c_int,
273
+ }
274
+
275
+ pub struct Elf32_Auxinfo {
276
+ pub a_type: :: c_int,
277
+ #[ cfg( libc_union) ]
278
+ pub a_un: __c_anonymous_elf32_auxv_union,
279
+ }
269
280
}
270
281
271
282
cfg_if ! {
@@ -486,6 +497,53 @@ cfg_if! {
486
497
self . sigev_notify_thread_id. hash( state) ;
487
498
}
488
499
}
500
+ #[ cfg( libc_union) ]
501
+ impl PartialEq for __c_anonymous_elf32_auxv_union {
502
+ fn eq( & self , other: & __c_anonymous_elf32_auxv_union) -> bool {
503
+ unsafe { self . a_val == other. a_val}
504
+ }
505
+ }
506
+ #[ cfg( libc_union) ]
507
+ impl Eq for __c_anonymous_elf32_auxv_union { }
508
+ #[ cfg( libc_union) ]
509
+ impl :: fmt:: Debug for __c_anonymous_elf32_auxv_union {
510
+ fn fmt( & self , f: & mut :: fmt:: Formatter ) -> :: fmt:: Result {
511
+ f. debug_struct( "a_val" )
512
+ . field( "a_val" , unsafe { & self . a_val } )
513
+ . finish( )
514
+ }
515
+ }
516
+ #[ cfg( not( libc_union) ) ]
517
+ impl PartialEq for Elf32_Auxinfo {
518
+ fn eq( & self , other: & Elf32_Auxinfo ) -> bool {
519
+ self . a_type == other. a_type
520
+ }
521
+ }
522
+ #[ cfg( libc_union) ]
523
+ impl PartialEq for Elf32_Auxinfo {
524
+ fn eq( & self , other: & Elf32_Auxinfo ) -> bool {
525
+ self . a_type == other. a_type
526
+ && self . a_un == other. a_un
527
+ }
528
+ }
529
+ impl Eq for Elf32_Auxinfo { }
530
+ #[ cfg( not( libc_union) ) ]
531
+ impl :: fmt:: Debug for Elf32_Auxinfo {
532
+ fn fmt( & self , f: & mut :: fmt:: Formatter ) -> :: fmt:: Result {
533
+ f. debug_struct( "Elf32_Auxinfo" )
534
+ . field( "a_type" , & self . a_type)
535
+ . finish( )
536
+ }
537
+ }
538
+ #[ cfg( libc_union) ]
539
+ impl :: fmt:: Debug for Elf32_Auxinfo {
540
+ fn fmt( & self , f: & mut :: fmt:: Formatter ) -> :: fmt:: Result {
541
+ f. debug_struct( "Elf32_Auxinfo" )
542
+ . field( "a_type" , & self . a_type)
543
+ . field( "a_un" , & self . a_un)
544
+ . finish( )
545
+ }
546
+ }
489
547
}
490
548
}
491
549
@@ -1266,6 +1324,23 @@ pub const AT_SYMLINK_NOFOLLOW: ::c_int = 0x200;
1266
1324
pub const AT_SYMLINK_FOLLOW : :: c_int = 0x400 ;
1267
1325
pub const AT_REMOVEDIR : :: c_int = 0x800 ;
1268
1326
1327
+ pub const AT_NULL : :: c_int = 0 ;
1328
+ pub const AT_IGNORE : :: c_int = 1 ;
1329
+ pub const AT_EXECFD : :: c_int = 2 ;
1330
+ pub const AT_PHDR : :: c_int = 3 ;
1331
+ pub const AT_PHENT : :: c_int = 4 ;
1332
+ pub const AT_PHNUM : :: c_int = 5 ;
1333
+ pub const AT_PAGESZ : :: c_int = 6 ;
1334
+ pub const AT_BASE : :: c_int = 7 ;
1335
+ pub const AT_FLAGS : :: c_int = 8 ;
1336
+ pub const AT_ENTRY : :: c_int = 9 ;
1337
+ pub const AT_NOTELF : :: c_int = 10 ;
1338
+ pub const AT_UID : :: c_int = 11 ;
1339
+ pub const AT_EUID : :: c_int = 12 ;
1340
+ pub const AT_GID : :: c_int = 13 ;
1341
+ pub const AT_EGID : :: c_int = 14 ;
1342
+ pub const AT_EXECPATH : :: c_int = 15 ;
1343
+
1269
1344
pub const TABDLY : :: tcflag_t = 0x00000004 ;
1270
1345
pub const TAB0 : :: tcflag_t = 0x00000000 ;
1271
1346
pub const TAB3 : :: tcflag_t = 0x00000004 ;
0 commit comments