(len: usize)
| 3470 | |
| 3471 | #[cfg(all(unix, not(target_os = "redox")))] |
| 3472 | fn checked_cmsg_space(len: usize) -> Option<usize> { |
| 3473 | // SAFETY: CMSG_SPACE is always safe |
| 3474 | let cmsg_space = |length| unsafe { libc::CMSG_SPACE(length) }; |
| 3475 | if len as u64 > (i32::MAX as u64 - cmsg_space(1) as u64) { |
| 3476 | return None; |
| 3477 | } |
| 3478 | let res = cmsg_space(len as _) as usize; |
| 3479 | if res > i32::MAX as usize || res < len { |
| 3480 | return None; |
| 3481 | } |
| 3482 | Some(res) |
| 3483 | } |
| 3484 | |
| 3485 | #[cfg(all(unix, not(target_os = "redox")))] |
| 3486 | #[pyfunction(name = "CMSG_LEN")] |
no test coverage detected