pub fn pidfd_getfd(
pidfd: BorrowedFd<'_>,
target_fd: RawFd,
flags: u32,
) -> Result<OwnedFd, Errno>Expand description
Duplique un FD ouvert dans le processus référencé par pidfd.
Cf. docs/specs/layer-0/family-process.md, sous-section 3,
pidfd_getfd. Cas d’usage spécialisé : debuggers, outils de
surveillance, transfert de ressources entre processus coopérant.
Le FD retourné est propriété de l’appelant ([OwnedFd]) ; il
pointe sur la même entrée du file table que target_fd côté
processus cible. La fermeture côté cible ne ferme pas la copie locale,
et réciproquement.
§Errors
- [
Errno::EBADF] :pidfdinvalide, outarget_fdnon ouvert dans le processus cible. - [
Errno::EPERM] : pas deCAP_SYS_PTRACEet pas le même utilisateur que la cible. Sur Ubuntu, Yamaptrace_scope ≥ 2peut également bloquer. - [
Errno::EINVAL] :flagsnon nul (réservé). - [
Errno::ESRCH] : le processus référencé n’existe plus.