# Les fichiers de configuration de &kdm;

Ce chapitre documente les fichiers qui contrôlent les fonctionnalités de &kdm;. Certaines de ces fonctionnalités peuvent également être définies depuis le module de la &configurationDuSysteme;, mais pas toutes.

## Fichier de configuration principal de &kdm;

Le format basique du fichier est de type INI.

Les lignes commençant par un `#` sont des commentaires. Les lignes vides sont simplement ignorées.

Les sections sont dénotées par `[`Nom de la Section`]`.

Vous pouvez configurer chaque affichage X individuellement.

Chaque affichage a un nom, qui consiste en un nom d'hôte (qui est vide pour les affichages locaux spécifiés dans `StaticServers` ou `ReserveServers`), un caractère « : » et un numéro d'affichage. De plus, un affichage appartient à une classe d'affichage (qui peut être ignorée dans la plupart des cas).

Les sections avec des paramètres spécifiques à un affichage ont la syntaxe formelle `[X-` host [ `:` number [ `_` class ] ] `-` sub-section `]`

Toutes les sections avec le même sub-section constituent une classe de section.

Vous pouvez utiliser le caractère joker `*` (n'importe quelle correspondance) pour host, number et class. Vous pouvez omettre des choses en fin de ligne, elles seront alors considérées comme étant *. La partie concernant l'hôte peut être une spécification de domaine comme .inf.tu-dresden.de ou le caractère joker `+` (correspondance pour ce qui est non-vide).

La section depuis laquelle la configuration est extraite est déterminée par ces règles :

- Une correspondance exacte est prioritaire sur une correspondance partielle (pour la partie hôte), qui à son tour est prioritaire sur un caractère joker (`+` est prioritaire sur `*`).

- La priorité décroît de gauche à droite pour des correspondances exactes identiques.

- Exemple : le nom d'affichage myhost.foo:0, classe dpy

  - [X-myhost.foo:0_dpy] est prioritaire sur

  - [X-myhost.foo:0_*] (identique à [X-myhost.foo:0]) est prioritaire sur

  - [X-myhost.foo:*_dpy] est prioritaire sur

  - [X-myhost.foo:*_*] (identique à [X-myhost.foo]) est prioritaire sur

  - [X-.foo:*_*] (identique à [X-.foo]) est prioritaire sur

  - [X-+:0_dpy] est prioritaire sur

  - [X-*:0_dpy] est prioritaire sur

  - [X-*:0_*] (identique à [X-*:0]) est prioritaire sur

  - [X-*:*_*] (identique à [X-*]).

  - Ces sections ne correspondent pas à cet affichage :

    [X-hishost], [X-myhost.foo:0_dec], [X-*:1], [X-:*]

Les sections communes sont [X-*] (tous les affichages), [X-:*] (tous les affichages locaux) et [X-:0] (le premier affichage local).

Le format pour toutes les clés est ``clé` `=` `valeur``. Les clés ne sont valables que dans la classe de section pour laquelle elles ont été définies. Certaines clés ne s'appliquent pas à certains affichages, auquel cas elles sont ignorées.

Si un réglage n'est trouvé dans aucune section, la valeur par défaut est utilisée.

Les caractères spéciaux doivent être échappés par le caractère « barre oblique inversée » (espaces de début et de fin(`\s`), tabulation (`\t`), fin de ligne (`\n`), retour chariot (`\r`) et le caractère « barre oblique inversée » lui-même (`\\`)).

Dans les listes, les champs sont séparés par des virgules et n'ont pas d'espace entre eux.

Certaines chaînes de caractères dans les commandes sont censées simplifier le découpage des mots avec le style sh : les apostrophes simples (`'`) et les apostrophes doubles (`"`) ont la signification habituelle. La barre oblique inversée commente tout (pas seulement les caractères spéciaux). Remarquez que la barre oblique inversée doit être doublée à cause des deux niveaux de commentaires.

Un fichier &kdmrc; primitif est commenté en détail. Tous les commentaires seront perdus si vous modifiez ce fichier via l'interface de la &configurationDuSysteme;.

### La section [General] de &kdmrc;

Cette section contient les options globales qui n'ont leur place dans aucune section spécifique.

`ConfigVersion`

  Cette option existe uniquement pour faire des mises à jour automatiques propres. ne la modifiez pas, vous pourriez interférer avec de futures mises à jour et &kdm; pourrait ne plus fonctionner.

`StaticServers`

  Liste d'afficheurs (&X-Server;s) gérés par &kdm; en permanence. Les afficheurs avec un nom d'hôte sont des afficheurs étrangers qui sont censés être en cours d'exécution, les autres sont des afficheurs locaux pour lesquels &kdm; démarre leur propre serveur X ; reportez-vous à l'option `ServerCmd`. Chaque écran peut appartenir à une classe d'affichage; ajoutez-la à la suite du nom de l'afficheur par un tiret bas. Reportez-vous à la pour plus de détails.

  La valeur par défaut est : 0.

`ReserveServers`

  Liste des affichages à la demande. Voir `StaticServers` pour la syntaxe.

  Vide par défaut.

`ServerVTs`

  Liste des Terminaux Virtuels (VT) à allouer aux &X-Server;s. Pour les nombres négatifs, la valeur absolue est utilisée, et les VT seront alloués seulement si le noyau indique qu'ils sont libres. Si &kdm; épuise cette liste, il allouera des VT libres à une valeur absolue supérieure à la valeur absolue de la dernière entrée de la liste. Actuellement disponible uniquement pour Linux.

  Vide par défaut.

`ConsoleTTYs`

  Cette option est pour les systèmes d'exploitation (OSs) qui prennent en charge les terminaux virtuels (VTs), par &kdm; et l'OS lui-même. Actuellement cela ne s'applique qu'à Linux.

  Lorsque &kdm; bascule en mode console, il commence à surveiller toutes les lignes TTY listées ici (sans `/dev/` au début). Si aucune d'elle n'est active pendant un certain temps, &kdm; bascule à nouveau vers le login X.

  Vide par défaut.

`PidFile`

  The nom de fichier spécifié sera créé pour contenir une représentation ASCII de l'identifiant de processus du processus &kdm; principal ; le PID ne sera pas mémorisé sir le nom de fichier est vide.

  Vide par défaut.

`LockPidFile`

  Cette option contrôle si &kdm; utilise le verrouillage par fichier pour éviter que de multiples gestionnaires d'affichage soient lancés les uns sur les autres.

  La valeur par défaut est true.

`AuthDir`

  Ceci nomme un dossier dans lequel &kdm; stocke des fichiers d'autorisation pour &X-Server; lorsqu'il initialise la session. &kdm; s'attend à ce que le système supprime les fichiers périmés de ce dossier au redémarrage.

  Le fichier d'autorisation à utiliser pour un affichage particulier peut être spécifié avec l'option `AuthFile` dans [X-*-Core].

  La valeur par défaut est /var/run/xauth.

`AutoRescan`

  Cette valeur booléenne contrôle si &kdm; relit automatiquement ses fichiers de configuration s'il constate qu'ils ont changé.

  La valeur par défaut est true.

`ExportList`

  Variables d'environnement supplémentaires que &kdm; doit transmettre à tous les programmes qu'il exécute. `LD_LIBRARY_PATH` et `XCURSOR_THEME` sont de bons candidats. Sinon, elles ne seront pas souvent nécessaires.

  Vide par défaut.

`RandomFile`

  Si le système ne possède pas de générateur aléatoire natif tel que /dev/urandom (reportez-vous à `RandomDevice`) ni de démon d'entropie tel que EGD (reportez-vous à `PrngdSocket` et `PrngdPort`) en cours d'exécution, alors &kdm; utilisera son propre générateur pseudo-aléatoire de nombre qui, entre autres choses, générera successivement des sommes de contrôles de ce fichier (qui, évidemment, doivent changer fréquemment).

  Cette option n'existe pas sur Linux et divers BSDs.

  La valeur par défaut est /dev/mem.

`PrngdSocket`

  Si le système ne possède pas de source native d'entropie telle que /dev/urandom (reportez-vous à `RandomDevice`), alors la lecture de données aléatoires se fera à partir d'un démon générateur de nombre pseudo-aléatoire, tel que EGD (http://egd.sourceforge.net) via la socket de domaine UNIX.

  Cette option n'existe pas sur Linux et divers BSDs.

  Vide par défaut.

`PrngdPort`

  Identique à `PrngdSocket`, n'utilise qu'une socket TCP sur localhost.

`RandomDevice`

  L'emplacement d'un périphérique de caractères dont &kdm; doit lire des données aléatoires. Empty means to use the system's preferred entropy device if there is one.

  Cette option n'existe pas sur OpenBSD, qui utilise la fonction arc4_random à la place.

  Vide par défaut.

`FifoDir`

  Le dossier dans lequel les sockets de commande doivent être créés ; ne pas mettre de valeur pour les désactiver.

  La valeur par défaut est /var/run/xdmctl.

`FifoGroup`

  Le groupe auquel le socket de commande globale doit appartenir ; peut être un nom ou un identifiant numérique.

`GreeterUID`

  L'utilisateur propriétaire du processus de l'écran de connexion. S'il est laissé vide, l'utilisateur sera root. Considérez donc l'impact sur le `LogSource` quand vous le paramétrez.

  Vide par défaut.

`DataDir`

  Le dossier dans lequel &kdm; doit enregistrer des données de travail persistantes telles que, par exemple, le dernier utilisateur connecté à un écran particulier.

  La valeur par défaut est /var/lib/kdm.

`DmrcDir`

  Le dossier dans lequel &kdm; doit enregistrer les fichiers `.dmrc`. Il n'y en a besoin que si les dossiers personnels ne peuvent être lus avant la connexion actuelle (comme avec AFS).

  Vide par défaut.

### La section [Xdmcp] de &kdmrc;

Cette section contient des options qui contrôlent comment &kdm; gère des requêtes &XDMCP;.

`Enable`

  Si &kdm; doit écouter les requêtes &XDMCP; entrantes.

  La valeur par défaut est true.

`Port`

  Cela indique le numéro du port UDP que &kdm; utilise pour surveiller les requêtes &XDMCP; entrantes. À moins que vous ayez besoin de déboguer le système, laissez les valeurs par défaut.

  La valeur par défaut est 177.

`KeyFile`

  Le style d'authentification &XDMCP; XDM-AUTHENTICATION-1 requiert une clé privée pour être partagée avec &kdm; et le terminal. Cette option spécifie le fichier contenant ces valeurs pour la clé. Chaque entrée du fichier est composée d'un nom d'affichage et de la clé partagée.

  Vide par défaut.

`Xaccess`

  Pour se prémunir des services non autorisés &XDMCP; et pour permettre la transmission de requêtes indirectes &XDMCP;, ce fichier contient une base de données de noms d'hôtes qui sont autorisés à accéder directement à cette machine, ou contient une liste d'hôtes dont les requêtes doivent être transmises. Le format de ce fichier est décrit à la .

  La valeur par défaut est ${`kde_confdir`}/kdm/Xaccess.

`ChoiceTimeout`

  Nombre de secondes à attendre pour l'afficheur pour répondre après que l'utilisateur ait choisi un hôte depuis le sélecteur. Si l'afficheur envoie une requête indirecte &XDMCP; pendant ce temps, la requête est alors transmise à l'hôte choisi. Sinon, elle est supposée provenir d'une nouvelle session et le sélecteur est à nouveau proposé.

  La valeur par défaut est 15.

`RemoveDomainname`

  Lors du calcul du nom de l'afficheur pour les clients &XDMCP;, le solveur de nom créera typiquement un nom d'hôte entièrement qualifié pour le terminal. Comme il est parfois confus, &kdm; supprimera la portion du nom d'hôte correspondant au nom de domaine s'il est identique au nom de domaine de l'hôte local lorsque cette option est activée.

  La valeur par défaut est true.

`SourceAddress`

  Utilisez l'adresse IP de la connexion entrante au lieu du nom d'hôte. Utilisez cette option sur les hôtes possédant plusieurs interfaces réseau (multihomed). Ceci permet d'éviter de se connecter à la mauvaise interface qui peut ne pas être active à cet instant.

  La valeur par défaut est false.

`Willing`

  Cela spécifie un programme qui est en cours d'exécution (en tant que root) lorsqu'une requête directe ou une requête de diffusion &XDMCP; est reçue et que cet hôte est configuré pour proposer un gestionnaire d'afficheurs &XDMCP;. La sortie de ce programme peut être affichée dans une fenêtre choisie. Si aucun programme n'est spécifié, la chaîne de caractères Willing to manage est alors envoyée.

  Vide par défaut.

### La section [Shutdown] de &kdmrc;

Cette section contient des options globales concernant l'arrêt du système.

`HaltCmd`

  La commande (sujette à être découpée en mots) à lancer pour stopper/éteindre électriquement le système.

  La valeur par défaut est quelque chose qui convenait sur le système sur lequel &kdm; a été compilé, comme par exemple `/sbin/shutdown `-h` `now``.

`RebootCmd`

  La commande (sujette à être découpée en mots) à lancer pour redémarrer le système.

  La valeur par défaut est quelque chose qui convenait sur le système sur lequel &kdm; a été compilé, comme par exemple `/sbin/shutdown `-r` `now``.

`AllowFifo`

  Si on peut ou non arrêter le système avec le socket de commande globale.

  La valeur par défaut est false.

`AllowFifoNow`

  Si on peut ou non annuler des sessions en cours d'exécution lorsqu'on arrête le système via le socket de commande globale.

  Ceci n'aura aucun effet à moins que `AllowFifo` soit activé.

  La valeur par défaut est true.

`BootManager`

  Le gestionnaire de démarrage que &kdm; doit utiliser pour proposer des options de démarrage dans la boîte de dialogue d'arrêt.

  `None`

    aucun gestionnaire de démarrage

  `Grub`

    Le gestionnaire de démarrage GRUB

  `Grub2`

    Le gestionnaire de démarrage GRUB2

  `Lilo`

    Le gestionnaire de démarrage LILO (uniquement Linux sur i386 & x86-64)

  La valeur par défaut est None.

### La section [X-*-Core] de &kdmrc;

Cette section contient les options concernant la configuration du coeur de &kdm;.

`OpenDelay`

  Voir `OpenRepeat`.

  La valeur par défaut est 15.

`OpenTimeout`

  Voir `OpenRepeat`.

  La valeur par défaut est 120.

`OpenRepeat`

  Ces options contrôlent le comportement de &kdm; lorsqu'il tente d'ouvrir une connexion à un &X-Server;. `OpenDelay` est la longueur de la pause (en secondes) entre les tentatives successives, `OpenRepeat` est le nombre de tentatives à réaliser et `OpenTimeout` est l'intervalle de temps à utiliser pour une tentative de connexion. Après que le nombre `OpenRepeat` de tentatives a été atteint, ou si le nombre `OpenTimeout` de secondes a été atteint lors de n'importe quelle tentative de connexion, alors la tentative de démarrage est considérée comme échouée.

  La valeur par défaut est 5.

`StartAttempts`

  Le nombre de fois que &kdm; doit tenter de démarrer un afficheur `étranger` listé dans `StaticServers` avant d'abandonner et de le désactiver. Les afficheurs locaux n'ont le droit qu'à une seule tentative, et les afficheurs &XDMCP; ont le droit à une infinité de tentatives par le client (à moins que l'option `-once` soit passée au &X-Server;).

  La valeur par défaut est 4.

`ServerAttempts`

  Le nombre de fois que &kdm; doit tenter de démarrer un &X-Server; local. Ceci inclut l'exécution en elle-même, et l'attente pour qu'il démarre effectivement.

  La valeur par défaut est 1.

`ServerTimeout`

  Le nombre de secondes que &kdm; doit attendre pour le démarrage d'un &X-Server; local.

  La valeur par défaut est 30.

`ServerCmd`

  La ligne de commande pour démarrer le &X-Server;, sans afficher le nombre et les spécifications du VT. remarquez qu'avec certains serveurs X (Open Solaris en particulier) il est nécessaire d'indiquer la plupart des arguments supplémentaires dans `ServerArgsLocal` et `ServerArgsRemote` même s'ils sont identiques pour les deux options. Cette chaîne de caractères est sujette au découpage des mots.

  La valeur par défaut est quelque chose qui convenait sur le système sur lequel &kdm; a été compilé, comme par exemple `/usr/X11R6/bin/X`.

`ServerArgsLocal`

  Arguments additionnels pour les &X-Server;s pour les sessions locales. Cette chaîne est sujette à être découpée en mots.

  Vide par défaut.

`ServerArgsRemote`

  Arguments additionnels pour les &X-Server;s pour les sessions distantes. Cette chaîne est sujette à être découpée en mots.

  Vide par défaut.

`ServerVT`

  Le VT sur lequel le &X-Server; doit s'exécuter. `ServerVTs` doit être utilisé à la place de cette option. Laissez-le à zéro pour permettre à &kdm; d'assigner un VT automatiquement. Donnez-lui la valeur `-1` pour éviter l'assignation d'un VT - Cela est requis pour les configurations avec plusieurs consoles physiques. Actuellement disponible uniquement pour Linux.

`ServerTTY`

  Cette option est pour les systèmes d'exploitation qui ne prennent pas en charge les VT, soit par &kdm;, soit par le système d'exploitation lui-même. Actuellement cela s'applique à tous les systèmes d'exploitation sauf Linux.

  Lorsque &kdm; passe en mode console, il commencer à surveiller les activités de cette ligne TTY (spécifiée sans `/dev/`). Si la ligne n'est pas utilisée pendant quelques temps, &kdm; repasse au login X.

  Vide par défaut.

`ServerUID`

  L'utilisateur que le serveur X doit connecter. Ne rien spécifier vous connectera en root !

  Vide par défaut.

`PingInterval`

  Voir `PingTimeout`.

  La valeur par défaut est 5.

`PingTimeout`

  Pour savoir quand les afficheurs distants ne sont plus connectés, &kdm; les ping régulièrement. `PingInterval` spécifie le temps (en minutes) entre les pings et `PingTimeout` spécifie le temps maximum (en minutes) à attendre la réponse à la requête du terminal. Si le terminal ne répond pas, la session est déclarée morte et terminée.

  Si vous utilisez fréquemment les terminaux X qui peuvent devenir isolés de l'hôte gestionnaire, vous pouvez vouloir augmenter le temps d'attente. Le seul souci est que les sessions continueront à exister après que le terminal soit accidentellement désactivé.

  La valeur par défaut est 5.

`TerminateServer`

  Permet à &kdm; de redémarrer le &X-Server; local après que la session soit quittée au lieu de la re-configurer. Utilisez cette option si le &X-Server; a des fuites de mémoire ou plante le système pendant les tentatives de re-configuration.

  La valeur par défaut est false.

`Authorize`

  Contrôle si &kdm; génère et utilise une autorisation pour les connexions locales au &X-Server;. Pour les afficheurs &XDMCP; l'autorisation requise par l'afficheur est utilisée; les afficheurs étrangers non-&XDMCP; ne prennent pas du tout en charge les autorisations.

  La valeur par défaut est true.

`AuthNames`

  Si `Authorize` est vrai, utilise le mécanisme d'autorisation listé en ceci. L'autorisation MIT-MAGIC-COOKIE-1 est toujours disponible; XDM-AUTHORIZATION-1, SUN-DES-1 et MIT-KERBEROS-5 peuvent aussi être disponible, selon la configuration de construction.

  La valeur par défaut est DEF_AUTH_NAME.

`ResetForAuth`

  Certains anciens &X-Server;s relisent le fichier d'autorisation au moment de la re-configuration du &X-Server;, au lieu de la relire lors de la vérification de la connexion initiale. Étant donné que &kdm; génère l'autorisation juste avant la connexion à l'afficheur, un ancien &X-Server; n'aura pas l'autorisation à jour. Cette option oblige &kdm; à envoyer le signal SIGHUP au &X-Server; après la configuration du fichier, provoquant une re-configuration supplémentaire du &X-Server;, pendant laquelle la nouvelle autorisation sera lue.

  La valeur par défaut est false.

`AuthFile`

  Ce fichier est utilisé pour communiquer les données d'autorisation depuis &kdm; vers le &X-Server;, en utilisant l'option `-auth` de la ligne de commande du &X-Server;. Il doit être conservé dans un dossier qui n'est pas en mode écriture pour tous, étant donné qu'il pourrait facilement être supprimé, désactivant ainsi le mécanisme d'autorisation au &X-Server;. S'il n'est pas spécifié, un nom aléatoire est généré depuis le nome de l'afficheur et de l'option `AuthDir`.

  Vide par défaut.

`Resources`

  Cette option spécifie le nom du fichier à charger par `xrdb` en tant que base de données dans la fenêtre mère de l'écran 0 de l'afficheur. Les programmes KDE n'utilisent généralement pas de ressources du serveur X, donc cette option n'est nécessaire seulement si la configuration du programme a besoin de certaines ressources du serveur X.

  Vide par défaut.

`Xrdb`

  Le programme `xrdb` à utiliser pour lire le fichier des ressources X spécifié dans `Ressources`. La commande est sujette à être découpée en mots.

  La valeur par défaut est ${`x_bindir`}/xrdb.

`Setup`

  Cette chaîne de caractères est sujette au découpage des mots. Cela spécifie un programme qui est exécuté (en tant que root) avant d'afficher l'écran de connexion. Cela peut être utilisé pour modifier l'aspect de l'écran autour de l'écran de connexion ou pour insérer d'autres fenêtres (c'est-à-dire, vous pouvez vouloir exécuter `xconsole` ici). Habituellement, un script nommé `Xsetup` est utilisé ici. Reportez-vous à la .

  Vide par défaut.

`Startup`

  Cette chaîne de caractères est sujette au découpage des mots. Cela spécifie un programme qui est exécuté (en tant que root) après que le processus d'authentification de l'utilisateur ait réussi. Habituellement, un script nommé `Xstartup` est utilisé ici. Reportez-vous à la .

  Vide par défaut.

`Reset`

  Cette chaîne de caractères est sujette au découpage des mots. Cela spécifie un programme qui est exécuté (en tant que root) après que la session soit terminée. Habituellement, un script nommé `Xreset` est utilisé ici. Reportez-vous à la .

  Vide par défaut.

`Session`

  Cette chaîne de caractères est sujette au découpage des mots. Cela spécifie un programme qui est exécuté (en tant qu'utilisateur propriétaire de la session). Habituellement, un script nommé `Xsession` est utilisé ici. Reportez-vous à la .

  La valeur par défaut est ${`x_bindir`}/xterm -ls -T.

`FailsafeClient`

  Si la `session` du programme échoue à s'exécuter, &kdm; retournera à ce programme. Ce programme est alors exécuté sans argument, mais avec les mêmes variables d'environnement que la session devrait avoir (reportez-vous à la ).

  La valeur par défaut est ${`x_bindir`}/xterm.

`UserPath`

  La variable d'environnement `PATH` pour les `Session`s non-root.

  La valeur par défaut dépend du système sur lequel &kdm; a été compilé.

`SystemPath`

  La variable d'environnement `PATH` pour tous les programmes sauf les `Session`s non-root. Notez qu'il est de bonne pratique de ne pas inclure `.` (le dossier courant) dans cette entrée.

  La valeur par défaut dépend du système sur lequel &kdm; a été compilé.

`SystemShell`

  La variable d'environnement `SHELL` pour tous les programmes mais la `Session`.

  La valeur par défaut est /bin/sh.

`UserAuthDir`

  Lorsque &kdm; n'est pas en capacité d'écrire dans le fichier habituel d'autorisation de l'utilisateur ($`HOME`/.Xauthority), il crée un nom de fichier unique dans son dossier et fait pointer la variable d'environnement `XAUTHORITY` vers le fichier créé.

  La valeur par défaut est /tmp.

`ForceUserAuthDir`

  Si vrai, l'option `UserAuthDir` sera utilisée sans condition.

  La valeur par défaut est false.

`AutoReLogin`

  Si activé, &kdm; redémarrera automatiquement une sessions après un arrêt intempestif du &X-Server; (ou s'il est tué par Alt-Ctrl-BackSpace). Remarquez que l'activation de cette fonctionnalité ouvre une brèche de sécurité : un verrou sécurisé de l'afficheur peut être contourné (à moins que le verrou de l'écran de &kde; soit utilisé).

  La valeur par défaut est false.

`AllowRootLogin`

  Si désactivé, ne pas permettre à root (et tout autre utilisateur avec UID égal à 0) de se connecter directement.

  La valeur par défaut est true.

`AllowNullPasswd`

  Si désactivé, seuls les utilisateurs ayant un mot de passe assigné peuvent se connecter.

  La valeur par défaut est true.

`AllowShutdown`

  Qui peut arrêter le système. Ceci s'applique à la fois à l'écran de connexion et au socket de commande.

  `None`

    aucune entrée de menu Shutdown... ne sera montrée.

  `Root`

    le mot de passe root devra être saisi pour l'arrêt

  `All`

    tout le monde peut arrêter la machine

  La valeur par défaut est All.

`AllowSdForceNow`

  Qui peut annuler les sessions actives lors d'une demande d'arrêt.

  `None`

    Aucun arrêt forcé n'est permis

  `Root`

    le mot de passe root devra être saisi pour forcer un arrêt.

  `All`

    tout le monde peut arrêter la machine de manière forcée

  La valeur par défaut est All.

`DefaultSdMode`

  Le choix par défaut pour les conditions/synchronisations d'arrêt.

  `Schedule`

    arrêt après la fin de toutes les sessions actives (probablement immédiatement)

  `TryNow`

    arrêt si aucune session active n'est ouverte, sinon ne fait rien

  `ForceNow`

    arrêt sans condition

  La valeur par défaut est Schedule.

`ScheduledSd`

  Comment proposer des options de planification d'arrêt :

  `Never`

    aucune

  `Optionnel`

    sous forme de bouton dans les boîtes de dialogue d'arrêt simple

  `Toujours`

    au lieu des boîtes de dialogue d'arrêt simple

  La valeur par défaut est Never.

`NoPassEnable`

  Active la connexion sans mot de passe pour cet affichage. À utiliser avec une extrême prudence !

  La valeur par défaut est false.

`NoPassUsers`

  Les utilisateurs qui n'ont pas besoin de fournir de mot de passe pour se connecter. Les éléments préfixés avec `@` représentent tous les utilisateurs du groupe d'utilisateurs nommé par cet élément.`*` signifie que tous les utilisateurs sauf root (et éventuellement d'autres utilisateurs avec un UID = 0). Never signifie root.

  Vide par défaut.

`AutoLoginEnable`

  Active la connexion automatique. À utiliser avec une extrême prudence !

  La valeur par défaut est false.

`AutoLoginAgain`

  Si ceci est activé, une connexion automatique aura lieu après une déconnexion. Sinon, une connexion automatique aura lieu seulement au démarrage d'une session d'affichage.

  La valeur par défaut est false.

`AutoLoginDelay`

  Le délai en secondes avant qu'une connexion automatique démarre. Ceci est aussi connu en tant que Timed Login.

`AutoLoginUser`

  L'utilisateur à connecter automatiquement. Ne spécifiez jamais root !

  Vide par défaut.

`AutoLoginPass`

  Le mot de passe pour l'utilisateur à connecter automatiquement. Ce n' est pas obligatoire à moins que l'utilisateur se connecte dans un domaine NIS ou Kerberos. Si vous utilisez cette option, vous devriez faire un `chmod `600` `kdmrc`` pour des raisons évidentes.

  Vide par défaut.

`AutoLoginLocked`

  Verrouiller immédiatement la session démarrée automatiquement. Ceci ne fonctionne qu'avec les sessions KDE.

  La valeur par défaut est false.

`SessionsDirs`

  Une liste de dossiers contenant les définitions de types de session. Classés par ordre de priorités décroissantes.

  La valeur par défaut est ${`kde_datadir`}/kdm/sessions.

`ClientLogFile`

  Le fichier (relatif au dossier personnel de l'utilisateur) pour rediriger la sortie de la session.

  Les paires de caractères suivantes sont remplacées par leur valeur :

  `%d`

    nom de l'afficheur actuel

  `%u`

    nom d'utilisateur

  `%r`

    D'abord vide. Reportez-vous ci-dessous.

  `%%`

    un simple `%`

  Quand il est impossible d'utiliser le nom de fichier construit en toute sécurité et que la spécification contient `%` stuff `r`, d'autres noms seront essayés - cette fois-ci en modifiant `%` stuff `r` en stuff suivi d'un nombre aléatoire.

  La valeur par défaut est .xsession-errors.

`ClientLogFallback`

  Utilisé quand il est impossible d'utiliser `ClientLogFile`. Les mêmes expansions sont prises en charge. N'utilisez pas d'emplacements relatifs ici !

  La valeur par défaut est /tmp/xerr-%u-%d%-r.

`UseSessReg`

  Spécifie si le fichier d'enregistrement utmp/wtmp/lastlog de &kdm; doit être utilisé. S'il ne l'est pas, la commande `sessreg` devrait être utilisée dans les scripts `Startup` et `Reset`, ou, éventuellement, le module pam_lastlog devrait être utilisé pour les systèmes avec PAM activé.

  La valeur par défaut est true.

### La section [X-*-Greeter] de &kdmrc;

Cette section contient les options concernant la configuration de l'interface (écran de bienvenue) de &kdm;.

`GUIStyle`

  Spécifie le style du composant graphique pour l'écran de connexion. Vide signifie l'utilisation du style par défaut qui est actuellement `Oxygen-air`.

  Vide par défaut.

`ColorScheme`

  Spécifie le modèle de couleurs du composant graphique pour l'écran de connexion. Vide signifie l'utilisation du modèle de couleurs par défaut qui est `Oxygen-air`.

  Vide par défaut.

`LogoArea`

  Ce qui doit être affiché à droite des lignes d'entrées de l'écran de connexion (greeter) (si `UserList` est désactivé) ou au-dessus d'elles (si `UserList` est activé) :

  `None`

    rien

  `Logo`

    l'image spécifiée par `LogoPixmap`.

  `Clock`

    une élégante horloge analogique

  La valeur par défaut est Clock.

`LogoPixmap`

  L'image à afficher dans l'écran de connexion lorsque `LogoArea` vaut `Logo`.

  Vide par défaut.

`GreeterPos`

  Les coordonnées relatives (pourcentages de la taille de l'écran en X, Y) auxquelles le centre de l'écran de connexion est placé. &kdm; aligne l'écran de connexion avec les côtés de l'écran qu'il traverserait sinon.

  La valeur par défaut est 50,50.

`GreeterScreen`

  Le moniteur sur lequel l'écran de connexion doit être affiché dans une configuration à plusieurs moniteurs et dans les configurations Xinerama. La numérotation débute 0. Pour Xinerama, elle correspond à l'ordre d'énumération dans la section ServerLayout active du fichier XF86Config ; -1 signifie d'utiliser l'écran en haut à gauche, -2 signifie d'utiliser l'écran en haut à droite.

`GreetString`

  Le titre de l'écran de connexion. Une absence de valeur signifie aucun titre.

  Les caractères suivants sont remplacés par leur valeur :

  `%d`

    nom de l'affichage actuel

  `%h`

    nom d'hôte local, éventuellement avec le nom de domaine

  `%n`

    le nom du noeud local, probablement le nom d'hôte sans le nom de domaine

  `%s`

    le système d'exploitation

  `%r`

    la version du système d'exploitation

  `%m`

    le type de machine (matériel)

  `%%`

    un simple `%`

  La valeur par défaut est Welcome to %s at %n.

`Antialiasing`

  Si les polices affichées dans l'écran de connexion doivent être lissées ou non (antialiasing).

  La valeur par défaut est false.

`GreetFont`

  La police de caractères à utiliser pour le titre de l'écran de connexion. La valeur est encodée.

  La valeur par défaut est Serif 20pt bold.

`StdFont`

  La police de caractères standard utilisée dans l'écran de connexion. La valeur est encodée.

  La valeur par défaut est Sans Serif 10pt.

`FailFont`

  La police de caractères utilisée pour le message Login Failed. La valeur est encodée.

  La valeur par défaut est Sans Serif 10pt bold.

`NumLock`

  Ce qu'il faut faire concernant le verrouillage du pavé numérique (Num Lock) lorsque l'écran de connexion est exécuté :

  `Off`

    désactiver

  `On`

    activer

  `Keep`

    ne pas changer l'état

  La valeur par défaut est Keep.

`Langue`

  Langue et paramètres locaux à utiliser dans l'écran de connexion, encodé comme $`LANGUAGE`. Si le champ est vide, la configuration de l'environnement est utilisée.

  Vide par défaut.

`UserCompletion`

  Activer le complètement automatique dans la ligne d'édition du nom d'utilisateur.

  La valeur par défaut est false.

`UserList`

  Afficher une liste d'utilisateurs avec les noms de connexion de type UNIX, les noms réels et les images dans l'écran de connexion.

  La valeur par défaut est true.

`ShowUsers`

  Cette option contrôle les utilisateurs qui seront affichés dans l'affichage des utilisateurs (`UserList`) et/ou propose l'auto-complètement (`UserCompletion`). Si le paramètre est `Selected`, `SelectedUsers` contient la liste finale des utilisateurs. Si le paramètre est `NotHidden`, la liste initiale d'utilisateurs contient alors tous les utilisateurs trouvés sur le système. Les utilisateurs contenus dans `HiddenUsers` sont supprimés de la liste, ainsi que tous les utilisateurs avec un UID supérieur à la valeur de l'UID spécifiée dans `MaxShowUID` et les utilisateurs avec un UID différent de zéro inférieur à la valeur de l'UID spécifiée dans `MinShowUID`. Les éléments dans `SelectedUsers` et `HiddenUsers` qui sont préfixés par `@` représentent tous les utilisateurs dans le groupe d'utilisateurs nommé par cet élément. Enfin, la liste d'utilisateurs sera classée par ordre alphabétique, si l'option `SortUsers` est activée.

  La valeur par défaut est NotHidden.

`SelectedUsers`

  Voir `ShowUsers`.

  Vide par défaut.

`HiddenUsers`

  Voir `ShowUsers`.

  Vide par défaut.

`MinShowUID`

  Voir `ShowUsers`.

`MaxShowUID`

  Voir `ShowUsers`.

  La valeur par défaut est 65535.

`SortUsers`

  Voir `ShowUsers`.

  La valeur par défaut est true.

`FaceSource`

  Si `UserList` est activé, ceci indique à quel emplacement &kdm; aller chercher les images :

  `AdminOnly`

    depuis `<`FaceDir`>/$`USER`.face[.icon]`

  `PreferAdmin`

    préférer <`FaceDir`>, se rabattre sur $`HOME`

  `PreferUser`

    ... dans l'autre sens

  `UserOnly`

    depuis le `$`HOME`/.face[.icon]` de l'utilisateur

  Les images peuvent être dans n'importe quel format que reconnaît Qt, mais les noms de fichiers doivent correspondre aux attentes de &kdm; : `.face.icon` doit être une icône 48x48, tandis que `.face` doit être une image 300x300. Actuellement, la grande image est utilisée uniquement en cas de secours et est réduite, mais à l'avenir, elle pourrait être affichée dans sa taille originelle dans la zone du logo ou dans une bulle d'information. Pour être accessible à &kdm;, les images doivent être en mode lecture pour tous et leurs dossiers parents doivent être en mode exécutable pour tous.

  La valeur par défaut est AdminOnly.

`FaceDir`

  Voir `FaceSource`.

  La valeur par défaut est ${`kde_datadir`}/kdm/faces.

`PreselectUser`

  Spécifier si un utilisateur doit être présélectionné pour la connexion et, le cas échéant, lequel :

  `None`

    ne présélectionner aucun utilisateur

  `Previous`

    le dernier utilisateur qui se soit connecté avec succès

  `Default`

    l'utilisateur spécifié dans l'option `DefaultUser`

  Si `FocusPasswd` est activé et si un utilisateur a été déjà choisi, le curseur est placé dans le champ du mot de passe automatiquement.

  Activer la présélection d'utilisateur peut être considéré comme une faille de sécurité, puisqu'elle présente un nom d'utilisateur valable à un attaquant éventuel, et qu'il n'a alors qu'à deviner le mot de passe. D'un autre côté, on pourrait positionner `DefaultUser` à une fausse valeur de nom d'utilisateur.

  La valeur par défaut est None.

`DefaultUser`

  Voir `PreselectUser`.

  Vide par défaut.

`FocusPasswd`

  Voir `PreselectUser`.

  La valeur par défaut est false.

`EchoPasswd`

  Si cette option prend la valeur vraie, le mot de passe saisi est affiché en retour dans une bulle. Sinon, aucun retour ne sera donné.

  La valeur par défaut est true.

`UseBackground`

  Si activé, &kdm; démarrera automatiquement le programme `krootimage` pour configurer l'arrière plan. Sinon, le programme de configuration (dans l'option `Setup`) est responsable de l'arrière plan.

  La valeur par défaut est true.

`BackgroundCfg`

  Le fichier de configuration à utiliser par `krootimage`. Il contient une section nommée `[Desktop0]` comme dans le fichier `kdesktoprc`. Ses options sont décrites plus haut. Devinez leur signification ou utilisez le centre de contrôle.

  La valeur par défaut est ${`kde_confdir`}/kdm/backgroundrc.

`GrabInput`

  Pour améliorer la sécurité, l'écran de connexion peut se réserver les entrées de la souris et du clavier, ainsi aucun autre client X (sous entendu du serveur X) ne peut l'espionner. Cependant, le mécanisme d'autorisation du serveur X empêchera comme d'habitude les clients X mal intentionnés de se connecter en premier. Par conséquent, activer grab pour les afficheurs locaux est inutile et améliore de façon marginale la sécurité pour les afficheurs distants.

  L'accaparement de la souris rendra les écrans tactiles inutilisables.

  `Never`

    ne jamais réserver

  `IfNoAuth`

    réservez si l'afficheur ne requiert aucune autorisation du serveur X

  `Toujours`

    toujours prendre la main

  La valeur par défaut est IfNoAuth.

`GrabServer`

  Pour améliorer la sécurité, l'écran de connexion ne prenne la main sur le &X-Server; puis le clavier quand il démarre. Cette option spécifie si l'accaparement du &X-Server; doit être maintenue pendant la durée de la lecture du nom / mot de passe. Quand l'option est désactivée, le &X-Server; ne peut plus être accaparé après que l'accaparement du clavier se soit effectué avec succès. Sinon, le &X-Server; est accaparé jusqu'à un peu avant que la session commence.

  Activer cette option désactive `UseBackground` et `Setup`.

  La valeur par défaut est false.

`GrabTimeout`

  Cette option spécifie le temps maximal que &kdm; attendra pour que l'accaparement se déroule avec succès. Un accaparement peut échouer si certains autres clients X ont le même &X-Server; ou si le clavier est déjà accaparé, ou éventuellement si les temps de latence du réseau sont très importants. Vous devriez faire attention quand vous augmentez le temps d'attente (timeout), étant donné qu'un utilisateur peut être berné par une fenêtre qui ressemble à l'écran de connexion. Si un accaparement échoue, &kdm; tue et redémarre le &X-Server; (si possible) et la session.

  La valeur par défaut est 3.

`AuthComplain`

  Avertir, si un affichage n'a pas d'autorisation X (X-authorization). Cela sera le cas si

  - Impossible de créer le fichier d'autorisation pour un &X-Server; local,

  - un affichage distant de &XDMCP; n'a demandé aucune autorisation ou

  - l'affichage est un affichage étranger spécifié dans `StaticServers`.

  La valeur par défaut est true.

`LoginMode`

  Spécifie si l'écran de connexion des affichages locaux soit être démarré en mode sélectionneur d'hôtes (distant) ou connexion (local) et s'il est permis de basculer entre ces deux modes.

  `LocalOnly`

    Seules les connexions locales sont possibles

  `DefaultLocal`

    Démarrage en mode local, mais permet de basculer en mode distant

  `DefaultRemote`

    ... dans l'autre sens

  `RemoteOnly`

    Seul le choix d'hôtes distants est possible

  La valeur par défaut est LocalOnly.

`ChooserHosts`

  Liste d'hôtes séparés par des virgules à ajouter automatiquement au menu de connexion distante. Le nom spécial `*` signifie broadcast, et n'a pas d'effet si `LoginMode` vaut `LocalOnly`.

  La valeur par défaut est *.

`ForgingSeed`

  Utilisez ce nombre en tant que source aléatoire quand vous établissez des types de session enregistrés, etc. d'utilisateurs inconnus. Cette fonction est utilisée pour éviter de communiquer à un attaquant des informations sur des utilisateurs existants par un raisonnement inversé. Cette valeur doit être aléatoire mais constante dans le domaine de connexion.

`ShowLog`

  Active la commande de &kdm; `xconsole`. Remarquez qu'elle peut être activée seulement pour un afficheur à la fois. Cette option n'est disponible que si &kdm; a été configuré avec l'option `--enable-kdm-xconsole`.

  La valeur par défaut est false.

`LogSource`

  Ce sont les données sources pour la commande de &kdm; `xconsole`. Si vide, une redirection du log de la console est requise depuis `/dev/console`. N'a aucun effet si l'option `ShowLog` est désactivée.

  Vide par défaut.

`PluginsLogin`

  Spécifie les modules externes de conversation pour la fenêtre de dialogue de connexion. Le premier de la liste est choisi initialement. Chaque module externe peut être spécifié comme un nom de base (qui s'ajoutera à `$`kde_modulesdir`/kgreet_base`) ou comme un nom d'emplacement complet.

  Les modules externes de conversation sont des modules pour l'écran de connexion qui obtiennent l'authentification des données par l'utilisateur. Actuellement, seul le module externe "`classic`" est proposé avec &kde;; il présente le célèbre style : nom d'utilisateur et mot de passe.

  La valeur par défaut est classic.

`PluginsShutdown`

  Identique à `PluginsLogin`, mais pour la boîte de dialogue d'arrêt.

  La valeur par défaut est classic.

`PluginOptions`

  Une liste d'options de la forme "Key`=`Value". Les modules externes de conversations peuvent demander ces paramètres. C'est auprès d'eux que vous obtiendrez les différentes clés possibles.

  Vide par défaut.

`AllowConsole`

  Montre l'action Passer en mode console dans l'écran d'accueil (si `ServerTTY`/`ConsoleTTYs` est configuré).

  La valeur par défaut est true.

`AllowClose`

  Montre l'action Redémarrer le serveur X/Fermer la Connexion dans l'écran de connexion.

  La valeur par défaut est true.

`Preloader`

  Un programme à exécuter lorsque l'écran de connexion est visible. Dans la mesure du possible, il est supposé être déjà chargé avant la session qui est sur le point d'être démarrée (le plus probablement).

  Vide par défaut.

`UseTheme`

  Indique si l'écran de connexion doit être en mode thème. Remarquez que l'écran de connexion en mode thème ne facilite pas l'accessibilité, et les thèmes peuvent manquer de prise en charge pour les fonctionnalités telles qu'une liste d'utilisateurs ou des méthodes d'authentification alternatives.

  La valeur par défaut est false.

`Theme`

  Le thème à utiliser pour l'écran de connexion. Peut pointer soit sur un dossier soit sur un fichier XML.

  Vide par défaut.

`AllowThemeDebug`

  Active le raccourci clavier Alt-Ctrl-D pour permettre le déboguage du thème de l'écran de connexion.

  La valeur par défaut est false.

## Spécifier des &X-Server;s permanents

Chaque entrée dans la liste `StaticServers` indique un afficheur qui doit être constamment géré et qui n'utilise pas &XDMCP;. Cette méthode est typiquement utilisée uniquement pour les &X-Server; locaux qui sont lancés par &kdm;, mais &kdm; peut aussi bien gérer de façon externe les &X-Server; étrangers) déjà lancés, qu'ils s'exécutent sur la machine locale ou à distance.

La syntaxe formelle d'une spécification est

    display name [_display class]

pour tous les &X-Server;s. Les afficheurs étrangers diffèrent en ayant un nom d'hôte dans leur nom d'afficheur, qui peut être `localhost`.

Le display name (nom de l'afficheur) doit être quelque chose qui peut être passée dans l'option `-display` à un programme X. Cette chaînes de caractères est utilisée pour générer les noms de section spécifiques à l'afficheur, donc soyez vigilant à faire correspondre les noms. Le nom d'afficheur des afficheurs &XDMCP; dérive de l'adresse de l'afficheur par résolution inversée du nom d'hôte. À des fins de configuration, le préfixe `localhost` provenant de l'afficheur &XDMCP; en cours d'exécution localement affiche qu'il n'est pas vidé pour les distinguer des &X-Server;s locaux lancés par &kdm;.

La section display class est aussi utilisée dans les sections spécifiques aux afficheurs. Elle est utile si vous avez une grande collection d'afficheurs similaires (comme plusieurs terminaux X) et que vous voulez configurer des options pour leur groupes. Lorsque vous utilisez &XDMCP;, l'afficheur requiert la spécification de la classe de l'afficheur, donc le manuel pour votre terminal X particulier doit documenter la chaîne de caractères de la classe de l'afficheur pour votre périphérique. Si ce n'est pas le cas, vous pouvez exécutez &kdm; en mode déboguage et filtrer le fichier de log par le mot class grâce à la commande `grep`.

Les afficheurs spécifiés dans `ReserveServers` ne seront pas démarrés quand &kdm; démarre, mais lorsque ce sera explicitement requis par la socket de commande (ou FIFO). Si des afficheurs de réserve sont spécifiés, le menu de &kde; aura un élément Start New Session en bas. Utilisez cela pour activer un afficheur de réserve avec un nouvelle session de connexion. Le moniteur basculera sur le nouvel afficheur, et vous aurez une minute pour vous connecter. S'il n'y a plus d'afficheurs de réserve de disponible, l'élément du menu sera désactivé.

Lorsque &kdm; démarre une session, il configure les données d'autorisation pour le &X-Server;. Pour les serveurs locaux, &kdm; passe l'argument ``-auth` `filename`` sur la ligne de commande du &X-Server; pour pointer vers son fichier de données de l'autorisation. Pour les afficheurs &XDMCP;, &kdm; passe les données de l'autorisation au &X-Server; via le message &XDMCP; Accept.

## Contrôle d'accès de &XDMCP;

Le fichier spécifié par l'option `AccessFile` fournit des informations que &kdm; utilise pour contrôler l'accès depuis les afficheurs requérant un service via &XDMCP;. Le fichier contient quatre types d'entrées : les entrées qui contrôlent la réponse des requêtesDirect et Broadcast, les entrées qui contrôlent la réponse des requêtes Indirect, les définitions de macro pour les entrées Indirect, et les entrées qui contrôlent les interfaces réseau sur lesquelles &kdm; surveille les requêtes &XDMCP;. Les lignes vides sont ignorées, `#` est traité comme un délimiteur de commentaires donc le reste de cette ligne est ignorée, et `\` provoque un saut de ligne qui est ignoré, permettant aux listes d'hôtes de s'étendre sur plusieurs lignes.

Le format des entrées Direct est simple, un nom d'hôte ou un modèle, qui est comparé au nom d'hôte du périphérique de l'afficheur. Les modèles sont distincts des noms d'hôte par l'ajout d'un ou plusieurs caractères meta; `*` correspond à n'importe quelle séquence de 0 caractères ou plus, et `?` correspond à n'importe quel caractère simple. Si l'entrée est un nom d'hôte, alors toutes les comparaisons sont faites en utilisant les adresses réseau, donc n'importe quel nom converti en une adresse réseau correcte peut être utilisée. Remarquez que seulement la première adresse réseau retournée pour un nom d'hôte est utilisée. Pour les modèles, seulement les noms d'hôtes canoniques sont utilisés dans la comparaison, donc assurez-vous de ne pas comparer des alias. Les noms d'hôtes des requêtes &XDMCP; contiennent toujours le nom de domaine local même si la recherche inversée retourne un nom court, donc vous pouvez utiliser les modèles pour le domaine local. Faire précéder l'entrée par le caractère `!` exclut les hôtes qui correspondent à cette entrée. La faire précéder par le signe `=` n'a aucun effet mais est requis lorsque vous spécifiez une macro pour distinguer l'entrée de la définition de la macro. Pour répondre uniquement aux requêtes Direct pour un hôte ou un modèle, il peut être suivi par le mot clé optionnel `NOBROADCAST`. Cela peut être utilisé pour empêcher un serveur de &kdm; d'apparaître sur les menus réalisés à partir des requêtes Broadcast.

Une entrée Indirect contient aussi un nom d'hôte, un modèle ou une macro, mais s'en suit une liste de noms d'hôte ou de macros vers lesquels les requêtes doivent être transmises. Les entrées Indirect peuvent être exclues aussi, le cas échéant un nom d'hôte valable doit être pris en charge pour rendre cette entrée distincte d'une entrée Direct. S'ils sont compilés avec la prise en charge de l'IPv6, les groupes d'adresses multicast peuvent aussi être inclus dans la liste des adresses vers lesquelles les requêtes sont transmises. Si la liste d'hôte indirect contient le mot clé `CHOOSER`, les requêtes Indirect ne sont pas transmises, mais une boîte de dialogue pour choisir un hôte est affichée par &kdm; à la place. Le sélecteur d'hôte enverra une requête Direct à chaque noms d'hôtes restants dans la liste et propose un menu de tous les hôtes qui répondent. La liste d'hôtes peut contenir le mot clé `BROADCAST`, pour que le sélecteur d'hôte envoie aussi une requête Broadcast ; remarquez que sur certains systèmes d'exploitation, les paquets UDP ne peuvent pas être transmis, donc cette fonctionnalité ne fonctionnera pas.

Lors de la vérification de l'accès pour un hôte afficheur particulier, chaque entrée est lue et la première entrée correspondante détermine la réponse. Les entrées Direct et Broadcast sont ignorées lors de la lecture d'une entrée Indirect et vice-versa.

Une définition de macro contient un nom de macro et une liste de noms d'hôtes et d'autres macros dont la macro s'étend. Pour distinguer les macros des noms d'hôte, les noms de macros commencent avec le caractère `%` .

Le dernier type d'entrée est la directive `LISTEN`. La syntaxe formelle est

     LISTEN [interface [multicast list]]

Si une ou plusieurs lignes `LISTEN` sont spécifiées, alors &kdm; surveille les requêtes &XDMCP; seulement sur les interfaces spécifiées. interface peut être un nom d'hôte ou une adresse IP représentant une interface réseau sur cette machine, ou le joker `*` qui représente toutes les interfaces réseau disponibles. Si les adresses de groupe multicast sont listées sur une ligne `LISTEN`, &kdm; joint les groupes multicast sur l'interface donnée. Pour les multicast IPv6, l'IANA a assigné ff0X:0:0:0:0:0:0:12b pour la gamme permanente assignée d'adresses multicast pour &XDMCP;. Le X dans le préfixe peut être remplacé par n'importe quel identificateur valable, tel que 1 pour un nœud local, 2 pour un lien local, 5 pour un site local, et ainsi de suite ( reportez-vous à l'IETF RFC 2373 ou son remplaçant pour davantage de détails). Par défaut, &kdm; surveille l'adresse du lien local ff02:0:0:0:0:0:0:12b pour correspondre plus précisément au comportement de diffusion du sous réseau IPv4. S'il n'y a aucune ligne `LISTEN`, &kdm; surveille toutes les interfaces et joint le groupe multicast de &XDMCP; en IPv6 (quand il est compilé avec la prise en charge de l'IPv6). Pour désactiver la surveillance de toutes les requêtes &XDMCP;, une ligne `LISTEN` sans adresse peut être spécifiée, mais l'utilisation de l'option `[Xdmcp]` `Enable` est préférée.

## Programmes supplémentaires

Les programmes suivants sont exécutés par &kdm; à différentes étapes d'une session. Ce sont typiquement des scripts shell.

Les programmes de configuration, de démarrage et de réinitialisation sont exécutés en tant que root, ils doivent donc faire attention à propos des problèmes de sécurité. Leur premier argument est `auto` si la session résulte d'une connexion automatique ; sinon, aucun argument ne leur est transmis.

### Programme de configuration

Le programme `Xsetup` est exécuté après le démarrage ou la réinitialisation du &X-Server;, mais avant que l'écran de connexion ne soit affiché. C'est l'endroit où changer l'arrière plan de base (si `UseBackground` est désactivée) ou faire surgir d'autres fenêtres qui doivent apparaître sur le moniteur avec l'écran de connexion. Les ressources pour ce programme peuvent être placées dans le fichier nommé par `Resources`.

En sus de toutes celles qui peuvent être spécifiées dans `ExportList`, les variables d'environnement suivantes sont transmises :

DISPLAY

  le nom d'affichage associé

PATH

  la valeur de `SystemPath`

SHELL

  la valeur de `SystemShell`

XAUTHORITY

  peut contenir un fichier d'autorité

DM_CONTROL

  la valeur de `FifoDir`

L'option `GrabInput` peut faire en sorte que &kde; ne prenne la main sur le clavier et la souris, rendant n'importe quelle autre fenêtre incapable de recevoir une entrée. Si l'option `GrabServer` est configurée, alors le programme `Xsetup` ne sera pas du tout dans la possibilité de connecter l'afficheur.

### Programme de démarrage

Le programme `Xstartup` est exécuté en tant que root lorsque l'utilisateur se connecte. C'est ici qu'il faut mettre les commandes qui ajoutent les entrées au fichier `utmp` (le programme `sessreg` peut s'avérer utile ici), qui montent les dossiers personnels des utilisateurs depuis les serveurs de fichiers, ou qui abandonnent la session si certaines exigences ne sont pas satisfaites (mais remarquez que sur les systèmes modernes, beaucoup de ces tâches sont déjà prises en charge par les modules PAM).

En sus de toutes celles qui peuvent être spécifiées dans `ExportList`, les variables d'environnement suivantes sont transmises :

DISPLAY

  le nom d'affichage associé

HOME

  le dossier de travail initial de l'utilisateur

LOGNAME

  le nom d'utilisateur

USER

  le nom d'utilisateur

PATH

  la valeur de `SystemPath`

SHELL

  la valeur de `SystemShell`

XAUTHORITY

  peut contenir un fichier d'autorité

DM_CONTROL

  la valeur de `FifoDir`

&kdm; attend jusqu'à ce que ce programme ait terminé avant de lancer la session utilisateur. Si la valeur retournée en sortie d'exécution de ce programme est différente de zéro, &kdm; abandonne la session et lance un nouveau cycle d'identification.

### Programme de session

Le programme `Xsession` est la commande qui est exécutée en tant qu'utilisateur de la session. Elle est exécutée avec les droits de l'utilisateur autorisé. L'un des mot clés `failsafe`, `default` ou `custom`, ou une chaîne de caractères pour évaluer par un interpréteur de commandes compatible Bourne est passé en premier argument.

En sus de toutes celles qui peuvent être spécifiées dans `ExportList`, les variables d'environnement suivantes sont transmises :

DISPLAY

  le nom d'affichage associé

HOME

  le dossier de travail initial de l'utilisateur

LOGNAME

  le nom d'utilisateur

USER

  le nom d'utilisateur

PATH

  la valeur de `UserPath` (ou `SystemPath` pour les sessions utilisateur de root)

SHELL

  le shell par défaut de l'utilisateur

XAUTHORITY

  peut contenir un fichier d'autorité non standard

KRBTKFILE

  peut contenir un nom de cache d'autorisations Kerberos4

KRB5CCNAME

  peut contenir un nom de cache d'autorisations Kerberos5

DM_CONTROL

  la valeur de `FifoDir`

XDM_MANAGED

  contiendra une liste de paramètres séparés par des virgules que la session peut trouver intéressante, comme quel module externe de conversation a été utilisé pour la connexion

DESKTOP_SESSION

  le nom de la session que l'utilisateur a choisi d'exécuter

### Programme de réinitialisation

Symétrique du programme `Xstartup`, le programme `Xreset` est exécuté après que la session utilisateur soit terminée. Exécutez en tant que root, il doit contenir les commandes qui annulent les effets des commandes de `Xstartup`, supprimant les entrées de `utmp` ou libérant les dossiers d'un serveur de fichiers.

Les variables d'environnement qui ont été transmises à `Xstartup` le sont aussi à `Xreset`.