### Vzory

Jazyk řízení přístupu implementuje následující vzorce:

- Řetězec, který začíná znakem '.' charakter. Název hostitele se shoduje, pokud se poslední komponenty jeho názvu shodují se zadaným vzorem. Například vzor '.tue.nl' odpovídá názvu hostitele 'wzv.win.tue.nl'.
- Řetězec, který končí '.' charakter. Adresa hostitele se shoduje, pokud se jeho první numerická pole shodují s daným řetězcem. Například vzor „131.155“. odpovídá adrese (téměř) každého hostitele v síti Eindhoven University (131.155.xx).
- Řetězec začínající znakem @ je považován za název netgroup NIS (dříve YP). Název hostitele se shoduje, pokud je hostitelem zadané síťové skupiny. Sítě Netgroup nejsou podporovány pro názvy procesů démona ani pro uživatelská jména klientů.
- Výraz „nnnn / mmmm“ je interpretován jako pár „síť / maska“. Adresa hostitele IPv4 se shoduje, pokud se „net“ rovná bitové A adresy a „masky“. Například vzor „131.155.72.0/255.255.254.0“ sítě / masky odpovídá každé adrese v rozsahu „131.155.72.0“ až „131.155.73.255“.
- Výraz „[n: n: n: n: n: n: n: n] / m“ se interpretuje jako pár „[net]/prefixlen“. Hostitelská adresa IPv6 se shoduje, pokud se „prefixované“ bity „čisté“ rovnají „prefixovaným“ bitům adresy. Například vzor [net]/prefixlen '[3ffe: 505: 2: 1 ::]/64' odpovídá každé adrese v rozsahu '3ffe: 505: 2: 1:'? prostřednictvím '3ffe: 505: 2: 1: ffff: ffff: ffff: ffff'.
- Řetězec začínající znakem '/' je považován za název souboru. Název hostitele nebo adresa se shoduje, pokud odpovídá libovolnému názvu hostitele nebo vzoru adresy uvedenému v pojmenovaném souboru. Formát souboru je nula nebo více řádků s nulovým nebo více hostitelskými jmény nebo vzory adres oddělenými mezerou. Vzor názvu souboru lze použít kdekoli, kde lze použít název hostitele nebo vzor adresy.
- Zástupné znaky „*“ a „?“ lze použít k přiřazení názvů hostitelů nebo IP adres. Tuto metodu shody nelze použít ve spojení s 'net/mask' matching, hostname matching začínající na '.' nebo přiřazení IP adresy končící na '.'.

### Zástupné znaky

Jazyk řízení přístupu podporuje explicitní zástupné znaky:

VŠECHNO | Univerzální zástupný znak se vždy shoduje.
MÍSTNÍ | Odpovídá hostiteli, jehož jméno neobsahuje tečkový znak.
NEZNÁMÝ | Odpovídá každému uživateli, jehož jméno není známo, a odpovídá každému hostiteli, jehož jméno nebo adresa není známa. Tento vzorec by měl být používán opatrně: názvy hostitelů nemusí být k dispozici kvůli dočasným problémům se serverem názvů. Síťová adresa nebude k dispozici, pokud software nedokáže zjistit, s jakým typem sítě mluví.
ZNÁMÝ | Odpovídá každému uživateli, jehož jméno je známé, a odpovídá každému hostiteli, jehož jméno a adresa jsou známé. Tento vzorec by měl být používán opatrně: názvy hostitelů nemusí být k dispozici kvůli dočasným problémům se serverem názvů. Síťová adresa nebude k dispozici, pokud software nedokáže zjistit, s jakým typem sítě mluví.
PARANOIDNÍ | Odpovídá hostiteli, jehož jméno neodpovídá jeho adrese. Když je tcpd vytvořen s -DPARANOID (výchozí režim), zruší požadavky těchto klientů ještě předtím, než se podíváme na tabulky řízení přístupu. Sestavte bez -DPARANOID, pokud chcete mít větší kontrolu nad těmito požadavky.

### Operátoři

EXCEPT Zamýšlené použití je ve tvaru: 'list_1 EXCEPT list_2'; tento konstrukt odpovídá čemukoli, co odpovídá seznamu_1, pokud neodpovídá seznamu_2. Operátor EXCEPT lze použít v daemon_lists a client_lists. Operátor EXCEPT může být vnořen: pokud by kontrolní jazyk umožňoval použití závorek, „EXCEPT b EXCEPT c“ by se analyzovalo jako „(EXCEPT (b EXCEPT c))“.

### Příkazy Shell

Pokud pravidlo řízení přístupu s první shodou obsahuje příkaz shellu, je tento příkaz podroben% substituce (viz další část). Výsledkem je podřízený proces /bin/sh se standardním vstupem, výstupem a chybou připojenou k /dev/null. Pokud nechcete čekat na dokončení příkazu, zadejte na konec příkazu znak „&“.

Příkazy prostředí by se neměly spoléhat na nastavení PATH inetd. Místo toho by měli používat absolutní názvy cest, nebo by měli začínat explicitním příkazem PATH = what- ever.

### % Rozšíření

V rámci příkazů shellu jsou k dispozici následující rozšíření:

% a (% A) | Adresa hostitele klienta (serveru).
%C | Informace o klientovi: uživatel @ host, uživatel @ adresa, jméno hostitele nebo jen adresa, v závislosti na tom, kolik informací je k dispozici.
% d | Název procesu démona (hodnota argv[0]).
% h (% H) | Název nebo adresa hostitele klienta (serveru), pokud není název hostitele k dispozici.
% n (% N) | Název hostitele klienta (serveru) (nebo „neznámý“ nebo „paranoidní“).
% s | ID procesu démona.
% s | Informace o serveru: daemon@host, daemon@address nebo jen jméno démona, v závislosti na tom, kolik informací je k dispozici.
% u | Uživatelské jméno klienta (nebo „neznámé“).
%% | Rozbalí se na jediné '%? charakter.

Znaky v% expanzích, které by mohly skořápku skočit, jsou nahrazeny podtržítky.