### Patrones

El lenguaje de control de acceso implementa los siguientes patrones:

- Una cadena que comienza con un '.' personaje. Un nombre de host coincide si los últimos componentes de su nombre coinciden con el patrón especificado. Por ejemplo, el patrón '.tue.nl' coincide con el nombre de host 'wzv.win.tue.nl'.
- Una cadena que termina con un '.' personaje. Una dirección de host coincide si sus primeros campos numéricos coinciden con la cadena dada. Por ejemplo, el patrón '131.155.' coincide con la dirección de (casi) cada host en la red de la Universidad de Eindhoven (131.155.xx).
- Una cadena que comienza con un carácter '@' se trata como un nombre de grupo de red NIS (anteriormente YP). Un nombre de host coincide si es un miembro de host del grupo de red especificado. Las coincidencias de Netgroup no son compatibles con los nombres de proceso de daemon ni con los nombres de usuario del cliente.
- Una expresión de la forma 'nnnn / mmmm' se interpreta como un par 'net/mask'. Una dirección de host IPv4 coincide si 'net' es igual al bit Y de la dirección y la 'máscara'. Por ejemplo, el patrón de red / máscara '131.155.72.0/255.255.254.0' coincide con cada dirección en el rango '131.155.72.0' a '131.155.73.255'.
- Una expresión de la forma '[n: n: n: n: n: n: n: n] / m' se interpreta como un par '[net]/prefixlen'. Una dirección de host IPv6 coincide si los bits 'prefixlen' de 'net' son iguales a los bits 'prefixlen' de la dirección. Por ejemplo, el patrón [net]/prefixlen '[3ffe: 505: 2: 1 ::]/64' coincide con cada dirección en el rango '3ffe: 505: 2: 1:'? a través de '3ffe: 505: 2: 1: ffff: ffff: ffff: ffff'.
- Una cadena que comienza con un carácter '/' se trata como un nombre de archivo. Un nombre de host o una dirección coinciden si coinciden con cualquier nombre de host o patrón de dirección enumerado en el archivo con nombre. El formato del archivo es cero o más líneas con cero o más nombres de host o patrones de dirección separados por espacios en blanco. Se puede usar un patrón de nombre de archivo en cualquier lugar donde se pueda usar un nombre de host o un patrón de dirección.
- Comodines '*' y '?' se puede usar para hacer coincidir nombres de host o direcciones IP. Este método de coincidencia no se puede usar junto con la coincidencia 'net/mask', la coincidencia de nombre de host comienza con '.' o coincidencia de dirección IP que termina con '.'.

### Comodines

El lenguaje de control de acceso admite comodines explícitos:

TODAS | El comodín universal, siempre coincide.
LOCAL | Coincide con cualquier host cuyo nombre no contenga un carácter de punto.
DESCONOCIDO | Coincide con cualquier usuario cuyo nombre se desconoce y con cualquier host cuyo nombre o dirección se desconocen. Este patrón debe usarse con cuidado: los nombres de host pueden no estar disponibles debido a problemas temporales del servidor de nombres. Una dirección de red no estará disponible cuando el software no pueda determinar con qué tipo de red está hablando.
CONOCIDO | Coincide con cualquier usuario cuyo nombre se conoce, y coincide con cualquier host cuyo nombre y dirección se conocen. Este patrón debe usarse con cuidado: los nombres de host pueden no estar disponibles debido a problemas temporales del servidor de nombres. Una dirección de red no estará disponible cuando el software no pueda determinar con qué tipo de red está hablando.
PARANOICO | Coincide con cualquier host cuyo nombre no coincida con su dirección. Cuando tcpd se crea con -DPARANOID (modo predeterminado), elimina las solicitudes de dichos clientes incluso antes de mirar las tablas de control de acceso. Construya sin PDARANOID cuando desee tener más control sobre tales solicitudes.

### Operadores

EXCEPTO El uso previsto tiene la forma: 'list_1 EXCEPT list_2'; esta construcción coincide con cualquier cosa que coincida con list_1 a menos que coincida con list_2. El operador EXCEPTO se puede usar en daemon_lists y en client_lists. El operador EXCEPT puede estar anidado: si el lenguaje de control permitiera el uso de paréntesis, 'a EXCEPT b EXCEPT c' se analizaría como '(a EXCEPT (b EXCEPT c))'.

### Comandos de Shell

Si la primera regla de control de acceso coincidente contiene un comando de shell, ese comando está sujeto a% sustituciones (ver la siguiente sección). El resultado se ejecuta mediante un proceso secundario /bin/sh con entrada, salida y error estándar conectados a /dev/null. Especifique un '&' al final del comando si no desea esperar hasta que se haya completado.

Los comandos de Shell no deben depender de la configuración PATH del inetd. En su lugar, deberían usar nombres de ruta absolutos, o deberían comenzar con una declaración explícita PATH = anyeverever.

### % Expansiones

Las siguientes expansiones están disponibles dentro de los comandos de shell:

%a (%A) | La dirección de host del cliente (servidor).
%c | Información del cliente: usuario @ host, usuario @ dirección, un nombre de host o simplemente una dirección, dependiendo de la cantidad de información disponible.
%d | El nombre del proceso daemon (valor argv[0]).
%h (%H) | El nombre o la dirección del host del cliente (servidor), si el nombre del host no está disponible.
%n (%N) | El nombre de host del cliente (servidor) (o "desconocido" o "paranoico").
%p | La identificación del proceso daemon.
%s | Información del servidor: daemon@host, daemon@address, o simplemente un nombre de daemon, dependiendo de la cantidad de información disponible.
%u | El nombre de usuario del cliente (o "desconocido").
%% | Se expande a un solo '%? personaje.

Los caracteres en%de expansiones que pueden confundir al shell se reemplazan por guiones bajos.