docs: add Safety section to unsafe functions
This step was done manually by searching for "unsafe fn" in the code base and adding corresponding Safety sections. `clippy::missing_safety_doc` only works for public functions but none of the corresponding functions is public. Signed-off-by: Philipp Schuster <philipp.schuster@cyberus-technology.de> On-behalf-of: SAP philipp.schuster@sap.com
This commit is contained in:
parent
a9d6807522
commit
c3a809696a
2 changed files with 19 additions and 0 deletions
|
|
@ -129,6 +129,9 @@ fn ipv6_mask_to_prefix(mask: Ipv6Addr) -> Result<u8> {
|
|||
}
|
||||
|
||||
impl Tap {
|
||||
/// # Safety
|
||||
/// The caller should ensure to pass a valid file descriptor and valid
|
||||
/// arguments for the `ioctl()` syscall.
|
||||
unsafe fn ioctl_with_mut_ref<F: AsRawFd, T>(fd: &F, req: c_ulong, arg: &mut T) -> Result<()> {
|
||||
let ret = ioctl_with_mut_ref(fd, req, arg);
|
||||
if ret < 0 {
|
||||
|
|
@ -138,6 +141,9 @@ impl Tap {
|
|||
Ok(())
|
||||
}
|
||||
|
||||
/// # Safety
|
||||
/// The caller should ensure to pass a valid file descriptor and valid
|
||||
/// arguments for the `ioctl()` syscall.
|
||||
unsafe fn ioctl_with_ref<F: AsRawFd, T>(fd: &F, req: c_ulong, arg: &T) -> Result<()> {
|
||||
let ret = ioctl_with_ref(fd, req, arg);
|
||||
if ret < 0 {
|
||||
|
|
@ -147,6 +153,9 @@ impl Tap {
|
|||
Ok(())
|
||||
}
|
||||
|
||||
/// # Safety
|
||||
/// The caller should ensure to pass a valid file descriptor and valid
|
||||
/// arguments for the `ioctl()` syscall.
|
||||
unsafe fn ioctl_with_val<F: AsRawFd>(fd: &F, req: c_ulong, arg: c_ulong) -> Result<()> {
|
||||
let ret = ioctl_with_val(fd, req, arg);
|
||||
if ret < 0 {
|
||||
|
|
|
|||
|
|
@ -22,6 +22,16 @@ pub struct clone_args {
|
|||
pub cgroup: u64,
|
||||
}
|
||||
|
||||
/// # Safety
|
||||
/// `size` must have the proper size to match `args`.
|
||||
/// Further, the caller needs to check the return value.
|
||||
///
|
||||
/// # Return
|
||||
/// - On success:
|
||||
/// - Parent: child PID (`c_long`)
|
||||
/// - Child: `0`
|
||||
/// - On error: `-1` and `errno` is set
|
||||
#[must_use]
|
||||
pub unsafe fn clone3(args: &mut clone_args, size: size_t) -> c_long {
|
||||
syscall(SYS_clone3, args, size)
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue