* [pbs-devel] applied: [PATCH backup] tools/xattr: a char from C is not universally a rust i8
@ 2020-07-19 18:17 Thomas Lamprecht
0 siblings, 0 replies; only message in thread
From: Thomas Lamprecht @ 2020-07-19 18:17 UTC (permalink / raw)
To: pbs-devel
Make it actually do the correct cast by using `libc::c_char`.
Fixes issues when building on other platforms, e.g., the aarch64
client only build on Arch Linux ARM I tested in my free time.
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
---
src/tools/xattr.rs | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)
diff --git a/src/tools/xattr.rs b/src/tools/xattr.rs
index 9710236..6b712d1 100644
--- a/src/tools/xattr.rs
+++ b/src/tools/xattr.rs
@@ -82,7 +82,7 @@ pub fn flistxattr(fd: RawFd) -> Result<ListXAttr, nix::errno::Errno> {
let mut size = 256;
let mut buffer = vec::undefined(size);
let mut bytes = unsafe {
- libc::flistxattr(fd, buffer.as_mut_ptr() as *mut i8, buffer.len())
+ libc::flistxattr(fd, buffer.as_mut_ptr() as *mut libc::c_char, buffer.len())
};
while bytes < 0 {
let err = Errno::last();
@@ -96,7 +96,7 @@ pub fn flistxattr(fd: RawFd) -> Result<ListXAttr, nix::errno::Errno> {
// Retry to read the list with new buffer
buffer.resize(size, 0);
bytes = unsafe {
- libc::flistxattr(fd, buffer.as_mut_ptr() as *mut i8, buffer.len())
+ libc::flistxattr(fd, buffer.as_mut_ptr() as *mut libc::c_char, buffer.len())
};
}
buffer.truncate(bytes as usize);
@@ -125,7 +125,7 @@ pub fn fgetxattr(fd: RawFd, name: &CStr) -> Result<Vec<u8>, nix::errno::Errno> {
}
buffer.resize(size, 0);
bytes = unsafe {
- libc::fgetxattr(fd, name.as_ptr() as *const i8, buffer.as_mut_ptr() as *mut core::ffi::c_void, buffer.len())
+ libc::fgetxattr(fd, name.as_ptr() as *const libc::c_char, buffer.as_mut_ptr() as *mut core::ffi::c_void, buffer.len())
};
}
buffer.resize(bytes as usize, 0);
--
2.20.1
^ permalink raw reply [flat|nested] only message in thread
only message in thread, other threads:[~2020-07-19 18:18 UTC | newest]
Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2020-07-19 18:17 [pbs-devel] applied: [PATCH backup] tools/xattr: a char from C is not universally a rust i8 Thomas Lamprecht
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.