diff options
Diffstat (limited to 'src/main.rs')
-rw-r--r-- | src/main.rs | 22 |
1 files changed, 18 insertions, 4 deletions
diff --git a/src/main.rs b/src/main.rs index 21796b8..08683f3 100644 --- a/src/main.rs +++ b/src/main.rs @@ -57,8 +57,16 @@ pub mod username { /* taken from whoami-0.1.1 */ fn getpwuid( pw_uid: u32, - #[cfg(not(all(target_arch = "arm", target_pointer_width = "32")))] buffer: &mut [i8; 16384], - #[cfg(all(target_arch = "arm", target_pointer_width = "32"))] buffer: &mut [u8; 16384], + #[cfg(not(any( + all(target_arch = "arm", target_pointer_width = "32"), + target_arch = "aarch64" + )))] + buffer: &mut [i8; 16384], + #[cfg(any( + all(target_arch = "arm", target_pointer_width = "32"), + target_arch = "aarch64" + ))] + buffer: &mut [u8; 16384], ) -> Option<libc::passwd> { let mut pwentp = null_mut(); #[cfg(any( @@ -116,9 +124,15 @@ pub mod username { } pub fn username(uid: u32) -> String { - #[cfg(not(all(target_arch = "arm", target_pointer_width = "32")))] + #[cfg(not(any( + all(target_arch = "arm", target_pointer_width = "32"), + target_arch = "aarch64" + )))] let mut buffer = [0i8; 16384]; // from the man page - #[cfg(all(target_arch = "arm", target_pointer_width = "32"))] + #[cfg(any( + all(target_arch = "arm", target_pointer_width = "32"), + target_arch = "aarch64" + ))] let mut buffer = [0u8; 16384]; // from the man page let pwent = getpwuid(uid, &mut buffer); |