@@ -299,6 +299,17 @@ s_no_extra_traits! {
299
299
__unused1: :: c_int,
300
300
__unused2: [ :: c_long; 7 ]
301
301
}
302
+
303
+ #[ cfg( libc_union) ]
304
+ pub union __c_anonymous_elf32_auxv_union {
305
+ pub a_val: :: c_int,
306
+ }
307
+
308
+ pub struct Elf32_Auxinfo {
309
+ pub a_type: :: c_int,
310
+ #[ cfg( libc_union) ]
311
+ pub a_un: __c_anonymous_elf32_auxv_union,
312
+ }
302
313
}
303
314
304
315
cfg_if ! {
@@ -519,6 +530,53 @@ cfg_if! {
519
530
self . sigev_notify_thread_id. hash( state) ;
520
531
}
521
532
}
533
+ #[ cfg( libc_union) ]
534
+ impl PartialEq for __c_anonymous_elf32_auxv_union {
535
+ fn eq( & self , other: & __c_anonymous_elf32_auxv_union) -> bool {
536
+ unsafe { self . a_val == other. a_val}
537
+ }
538
+ }
539
+ #[ cfg( libc_union) ]
540
+ impl Eq for __c_anonymous_elf32_auxv_union { }
541
+ #[ cfg( libc_union) ]
542
+ impl :: fmt:: Debug for __c_anonymous_elf32_auxv_union {
543
+ fn fmt( & self , f: & mut :: fmt:: Formatter ) -> :: fmt:: Result {
544
+ f. debug_struct( "a_val" )
545
+ . field( "a_val" , unsafe { & self . a_val } )
546
+ . finish( )
547
+ }
548
+ }
549
+ #[ cfg( not( libc_union) ) ]
550
+ impl PartialEq for Elf32_Auxinfo {
551
+ fn eq( & self , other: & Elf32_Auxinfo ) -> bool {
552
+ self . a_type == other. a_type
553
+ }
554
+ }
555
+ #[ cfg( libc_union) ]
556
+ impl PartialEq for Elf32_Auxinfo {
557
+ fn eq( & self , other: & Elf32_Auxinfo ) -> bool {
558
+ self . a_type == other. a_type
559
+ && self . a_un == other. a_un
560
+ }
561
+ }
562
+ impl Eq for Elf32_Auxinfo { }
563
+ #[ cfg( not( libc_union) ) ]
564
+ impl :: fmt:: Debug for Elf32_Auxinfo {
565
+ fn fmt( & self , f: & mut :: fmt:: Formatter ) -> :: fmt:: Result {
566
+ f. debug_struct( "Elf32_Auxinfo" )
567
+ . field( "a_type" , & self . a_type)
568
+ . finish( )
569
+ }
570
+ }
571
+ #[ cfg( libc_union) ]
572
+ impl :: fmt:: Debug for Elf32_Auxinfo {
573
+ fn fmt( & self , f: & mut :: fmt:: Formatter ) -> :: fmt:: Result {
574
+ f. debug_struct( "Elf32_Auxinfo" )
575
+ . field( "a_type" , & self . a_type)
576
+ . field( "a_un" , & self . a_un)
577
+ . finish( )
578
+ }
579
+ }
522
580
}
523
581
}
524
582
@@ -1299,6 +1357,23 @@ pub const AT_SYMLINK_NOFOLLOW: ::c_int = 0x200;
1299
1357
pub const AT_SYMLINK_FOLLOW : :: c_int = 0x400 ;
1300
1358
pub const AT_REMOVEDIR : :: c_int = 0x800 ;
1301
1359
1360
+ pub const AT_NULL : :: c_int = 0 ;
1361
+ pub const AT_IGNORE : :: c_int = 1 ;
1362
+ pub const AT_EXECFD : :: c_int = 2 ;
1363
+ pub const AT_PHDR : :: c_int = 3 ;
1364
+ pub const AT_PHENT : :: c_int = 4 ;
1365
+ pub const AT_PHNUM : :: c_int = 5 ;
1366
+ pub const AT_PAGESZ : :: c_int = 6 ;
1367
+ pub const AT_BASE : :: c_int = 7 ;
1368
+ pub const AT_FLAGS : :: c_int = 8 ;
1369
+ pub const AT_ENTRY : :: c_int = 9 ;
1370
+ pub const AT_NOTELF : :: c_int = 10 ;
1371
+ pub const AT_UID : :: c_int = 11 ;
1372
+ pub const AT_EUID : :: c_int = 12 ;
1373
+ pub const AT_GID : :: c_int = 13 ;
1374
+ pub const AT_EGID : :: c_int = 14 ;
1375
+ pub const AT_EXECPATH : :: c_int = 15 ;
1376
+
1302
1377
pub const TABDLY : :: tcflag_t = 0x00000004 ;
1303
1378
pub const TAB0 : :: tcflag_t = 0x00000000 ;
1304
1379
pub const TAB3 : :: tcflag_t = 0x00000004 ;
0 commit comments