.\" -*- coding: UTF-8 -*- .\" Copyright (c) 2020 by Michael Kerrisk .\" .\" SPDX-License-Identifier: Linux-man-pages-copyleft .\" .\"******************************************************************* .\" .\" This file was generated with po4a. Translate the source file. .\" .\"******************************************************************* .TH pidfd_getfd 2 "31 octombrie 2023" "Pagini de manual de Linux 6.06" .SH NUME pidfd_getfd \- obține un duplicat al descriptorului de fișier al unui alt proces .SH BIBLIOTECA Biblioteca C standard (\fIlibc\fP, \fI\-lc\fP) .SH REZUMAT .nf \fB#include \fP /* Definirea constantelor \fBSYS_*\fP */ \fB#include \fP .P \fBint syscall(SYS_pidfd_getfd, int \fP\fIpidfd\fP\fB, int \fP\fItargetfd\fP\fB,\fP \fB unsigned int \fP\fIflags\fP\fB);\fP .fi .P \fINotă\fP: glibc nu oferă nici o funcție de învăluire pentru \fBpidfd_getfd\fP(), fiind necesară utilizarea \fBsyscall\fP(2). .SH DESCRIERE Apelul de sistem \fBpidfd_getfd\fP() alocă un nou descriptor de fișier în procesul apelant. Acest nou descriptor de fișier este un duplicat al unui descriptor de fișier existent, \fItargetfd\fP, în procesul la care se face referire prin descriptorul de fișier PID \fIpidfd\fP. .P Descriptorul de fișier duplicat se referă la aceeași descriere de fișier deschis (a se vedea \fBopen\fP(2)) ca și descriptorul de fișier original în procesul la care se referă \fIpidfd\fP. Astfel, cei doi descriptori de fișiere au în comun fanioanele de stare a fișierului și poziția fișierului. În plus, operațiile asupra obiectului de fișier subiacent (de exemplu, atribuirea unei adrese unui obiect soclu utilizând \fBbind\fP(2)) pot fi efectuate în mod egal prin intermediul descriptorului de fișier duplicat. .P Fanionul close\-on\-exec (\fBFD_CLOEXEC\fP; a se vedea \fBfcntl\fP(2)) este activat pe descriptorul de fișier returnat de \fBpidfd_getfd\fP(). .P Argumentul \fIflags\fP este rezervat pentru utilizare viitoare. În prezent, acesta trebuie să fie specificat ca fiind 0. .P Permisiunea de a duplica descriptorul de fișier al unui alt proces este guvernată de o verificare \fBPTRACE_MODE_ATTACH_REALCREDS\fP a modului de acces ptrace (a se vedea \fBptrace\fP(2)). .SH "VALOAREA RETURNATĂ" În caz de reușită, \fBpidfd_getfd\fP() returnează un descriptor de fișier (un număr întreg nenegativ). În caz de eroare, se returnează \-1, iar \fIerrno\fP este configurată pentru a indica eroarea. .SH ERORI\-IEȘIRE .TP \fBEBADF\fP \fIpidfd\fP nu este un descriptor de fișier PID valid. .TP \fBEBADF\fP \fItargetfd\fP nu este un descriptor de fișier deschis în procesul la care face referire \fIpidfd\fP. .TP \fBEINVAL\fP \fIfanioane\fP nu este 0. .TP \fBEMFILE\fP A fost atinsă limita per\-proces a numărului de descriptori de fișiere deschise (a se vedea descrierea lui \fBRLIMIT_NOFILE\fP în \fBgetrlimit\fP(2)). .TP \fBENFILE\fP Limita la nivel de sistem a numărului total de fișiere deschise a fost atinsă. .TP \fBEPERM\fP Procesul apelant nu a avut permisiuni \fBPTRACE_MODE_ATTACH_REALCREDS\fP (a se vedea \fBptrace\fP(2)) asupra procesului la care se face referire prin \fIpidfd\fP. .TP \fBESRCH\fP Procesul la care se face referire prin \fIpidfd\fP nu există (adică s\-a încheiat și a fost așteptat). .SH STANDARDE Linux. .SH ISTORIC .\" commit 8649c322f75c96e7ced2fec201e123b2b073bf09 Linux 5.6. .SH NOTE Pentru o descriere a descriptorilor de fișiere PID, a se vedea \fBpidfd_open\fP(2). .P Efectul \fBpidfd_getfd\fP() este similar cu utilizarea mesajelor \fBSCM_RIGHTS\fP descrise în \fBunix\fP(7), dar diferă în următoarele privințe: .IP \[bu] 3 Pentru a transmite un descriptor de fișier utilizând un mesaj \fBSCM_RIGHTS\fP, cele două procese trebuie să stabilească mai întâi o conexiune de tip soclu de domeniu UNIX. .IP \[bu] Utilizarea lui \fBSCM_RIGHTS\fP necesită cooperare din partea procesului al cărui descriptor de fișier este copiat. În schimb, o astfel de cooperare nu este necesară atunci când se utilizează \fBpidfd_getfd\fP(). .IP \[bu] Capacitatea de a utiliza \fBpidfd_getfd\fP() este restricționată de o verificare a modului de acces la ptrace \fBPTRACE_MODE_ATTACH_REALCREDS\fP. .SH "CONSULTAȚI ȘI" \fBclone3\fP(2), \fBdup\fP(2), \fBkcmp\fP(2), \fBpidfd_open\fP(2) .PP .SH TRADUCERE Traducerea în limba română a acestui manual a fost făcută de Remus-Gabriel Chelu . .PP Această traducere este documentație gratuită; citiți .UR https://www.gnu.org/licenses/gpl-3.0.html Licența publică generală GNU Versiunea 3 .UE sau o versiune ulterioară cu privire la condiții privind drepturile de autor. NU se asumă NICIO RESPONSABILITATE. .PP Dacă găsiți erori în traducerea acestui manual, vă rugăm să trimiteți un e-mail la .MT translation-team-ro@lists.sourceforge.net .ME .