landlock_add_rule(2) System Calls Manual landlock_add_rule(2)

landlock_add_rule - adaugă o nouă regulă Landlock la un set de reguli

Biblioteca C standard (libc, -lc)

#include <linux/landlock.h>  /* Definirea constantelor LANDLOCK_* */
#include <sys/syscall.h>     /* Definirea constantelor SYS_* */
int syscall(SYS_landlock_add_rule, int ruleset_fd,
            enum landlock_rule_type rule_type,
            const void *rule_attr, uint32_t fanioane);

O regulă Landlock descrie o acțiune asupra unui obiect. Un obiect este în prezent o ierarhie de fișiere, iar acțiunile aferente sistemului de fișiere sunt definite cu un set de drepturi de acces. Acest apel de sistem landlock_add_rule() permite adăugarea unei noi reguli Landlock la un set de reguli existent creat cu landlock_create_ruleset(2). A se vedea landlock(7) pentru o prezentare generală.

ruleset_fd este un descriptor de fișier de set de reguli Landlock obținut cu landlock_create_ruleset(2).

rule_type identifică tipul de structură indicat de rule_attr. În prezent, Linux acceptă următoarea valoare rule_type:

Acest lucru definește tipul de obiect ca fiind o ierarhie de fișiere. În acest caz, rule_attr indică următoarea structură:

struct landlock_path_beneath_attr {
    __u64 allowed_access;
    __s32 parent_fd;
} __attribute__((packed));

allowed_access conține o mască de biți a acțiunilor sistemului de fișiere permise pentru această ierarhie de fișiere (a se vedea Acțiuni ale sistemului de fișiere în landlock(7)).
parent_fd este un descriptor de fișier deschis, de preferință cu indicatorul O_PATH, care identifică directorul părinte al ierarhiei de fișiere sau doar un fișier.

fanioane trebuie să fie 0.

În caz de succes, landlock_add_rule() returnează 0.

landlock_add_rule() poate eșua din următoarele motive:

Landlock este acceptat de nucleu, dar este dezactivat la pornire.
fanioane nu este 0, sau accesările regulilor sunt incoerente (de exemplu, rule_attr->allowed_access nu este un subset al accesărilor gestionate de setul de reguli).
Accese goale (adică, rule_attr->allowed_access este 0).
ruleset_fd nu este un descriptor de fișier pentru firul curent sau un membru al rule_attr nu este un descriptor de fișier, așa cum era de așteptat.
ruleset_fd nu este un descriptor de fișier pentru firul curent sau un membru al rule_attr nu este un descriptor de fișier, așa cum era de așteptat.ruleset_fd nu este un descriptor de fișier de set de reguli sau un membru al rule_attr nu este tipul de descriptor de fișier așteptat.
ruleset_fd nu are acces de scriere la setul de reguli de bază.
rule_attr nu a fost o adresă validă.

Linux.

Linux 5.13.

A se vedea landlock(7).

landlock_create_ruleset(2), landlock_restrict_self(2), landlock(7)

Traducerea în limba română a acestui manual a fost făcută de Remus-Gabriel Chelu <remusgabriel.chelu@disroot.org>

Această traducere este documentație gratuită; citiți Licența publică generală GNU Versiunea 3 sau o versiune ulterioară cu privire la condiții privind drepturile de autor. NU se asumă NICIO RESPONSABILITATE.

Dacă găsiți erori în traducerea acestui manual, vă rugăm să trimiteți un e-mail la translation-team-ro@lists.sourceforge.net.

2 mai 2024 Pagini de manual de Linux 6.8