<?xml version="1.0" encoding="utf-8"?>

<creole>
    <files>
        <file filelist='dhcp' name='/usr/share/ead2/backend/config/perms/perm_dhcp.ini' rm="True"/>
    </files>
    <containers>
        <container name='dhcp' id='17'>
            <package>eole-dhcp-pkg</package>
            <service servicelist='dhcp'>isc-dhcp-server</service>
            <service servicelist='tftp'>tftpd-hpa</service>
            <service_access service='tftpd'>
                <port protocol='udp'>69</port>
                <tcpwrapper>in.tftpd</tcpwrapper>
            </service_access>
            <service_restriction service='tftpd'>
                <ip service_restrictionlist='tftp_eth0' interface='eth0' netmask='0.0.0.0'>0.0.0.0</ip>
                <ip service_restrictionlist='tftp_eth1' interface='eth1' netmask='0.0.0.0'>0.0.0.0</ip>
            </service_restriction>
            <file filelist='dhcp' name='/etc/dhcp/dhcpd.conf'/>
            <file filelist='tftp' name='/etc/default/tftpd-hpa' source='tftpd-hpa.default'/>
        </container>
    </containers>
    <variables>
        <family name='services'>
            <variable name='activer_dhcp' type='oui/non' description="Activer le serveur DHCP" mode='basic'>
                <value>non</value>
            </variable>
            <variable name='activer_tftp' type='oui/non' description="Activer l'utilisation d'un serveur PXE/TFTP" mode='expert'>
                <value>non</value>
            </variable>
        </family>
        <family name='dhcp' icon='bolt'>
            <variable name='global_nom_domaine_dhcp' type='domain_strict' description='Nom de domaine à renvoyer aux clients DHCP' mode='expert'/>
            <variable name='global_adresse_ip_dns_dhcp' type='ip' description='Adresse IP du DNS à renvoyer aux clients DHCP' mode='expert'/>
            <variable name='global_adresse_ip_dns_secondaire_dhcp' type='ip' description='Adresse IP du DNS secondaire à renvoyer aux clients DHCP' mode='expert'/>
            <variable name='global_adresse_ip_wins_primaire_dhcp' type='ip' description='Adresse IP du serveur primaire Wins à renvoyer aux clients' mode='expert'/>
            <variable name='global_adresse_ip_wins_secondaire_dhcp' type='ip' description='Adresse IP du serveurs secondaire Wins à renvoyer aux clients' mode='expert'/>
            <variable name='global_adresse_ip_ntp_dhcp' type='ip' description='Adresse IP du serveur NTP à renvoyer aux clients' mode='expert'/>
            <variable name='global_dhcp_lease_default' type='number' description='Temps du bail par défaut (sec)' mandatory='True' mode='expert'>
                <value>36000</value>
            </variable>
            <variable name='global_dhcp_lease_max' type='number' description='Temps maximum du bail (sec)' mandatory='True' mode='expert'>
                <value>144000</value>
            </variable>
            <variable name='global_domain_wpad_dhcp' type='domain_strict' description='Nom de domaine du serveur WPAD' mode='expert'/>
            <variable name='adresse_network_dhcp' type='network' description='Adresse réseau de la plage DHCP' multi='True' mandatory="True"/>
            <variable name='adresse_netmask_dhcp' type='netmask' description='Masque de sous-réseau de la plage DHCP' mandatory="True"/>
            <variable name='ip_basse_dhcp' type='ip' description='IP basse de la plage DHCP' mandatory="True"/>
            <variable name='ip_haute_dhcp' type='ip' description='IP haute de la plage DHCP' mandatory="True"/>
            <variable name='nom_domaine_dhcp' type='domain_strict' description='Nom de domaine à renvoyer aux clients DHCP' mode='basic'/>
            <variable name='adresse_ip_gw_dhcp' type='ip' description='Adresse IP du routeur à renvoyer aux clients DHCP' mode='basic'/>
            <variable name='adresse_ip_dns_dhcp' type='ip' description='Adresse IP du DNS à renvoyer aux clients DHCP' mode='basic'/>
            <variable name='adresse_ip_dns_secondaire_dhcp' type='ip' description='Adresse IP du DNS secondaire à renvoyer aux clients DHCP' mode='expert'/>
            <variable name='adresse_ip_wins_primaire_dhcp' type='ip' description='Adresse IP du serveur primaire Wins à renvoyer aux clients' mode='expert'/>
            <variable name='adresse_ip_wins_secondaire_dhcp' type='ip' description='Adresse IP du serveur secondaire Wins à renvoyer aux clients' mode='expert'/>
            <variable name='adresse_ip_ntp_dhcp' type='ip' description='Adresse IP du serveur NTP à renvoyer aux clients' mode='expert'/>
            <variable name='interdire_hotes_inconnus' type='oui/non' description="Interdire cette zone aux hôtes inconnus" mode='expert'>
                <value>non</value>
            </variable>
            <variable name='dhcp_lease_default' type='number' description='Temps du bail par défaut (sec)' mode='expert'/>
            <variable name='dhcp_lease_max' type='number' description='Temps maximum du bail (sec)' mode='expert'/>
        </family>
        <family name='tftp' icon='cloud'>
            <variable name='adresse_ip_tftp' type='ip' description="Adresse IP du serveur PXE/TFTP" />
            <variable name='repertoire_tftp' type='filename' description="Répertoire sur le serveur PXE/TFTP" >
                <value>/var/lib/tftpboot/</value>
            </variable>
            <variable name='chemin_fichier_pxe' type='filename' description="Chemin vers le fichier de boot PXE initial" >
                <value>/pxelinux.0</value>
            </variable>
        </family>
        <separators>
            <separator name="global_nom_domaine_dhcp">Paramètres globaux (peuvent être surchargés pour un réseau spécifique)</separator>
            <separator name="adresse_network_dhcp">Définition des sous-réseaux</separator>
        </separators>
    </variables>
    <constraints>
        <group master='adresse_network_dhcp'>
            <slave>adresse_netmask_dhcp</slave>
            <slave>ip_basse_dhcp</slave>
            <slave>ip_haute_dhcp</slave>
            <slave>nom_domaine_dhcp</slave>
            <slave>adresse_ip_gw_dhcp</slave>
            <slave>adresse_ip_dns_dhcp</slave>
            <slave>adresse_ip_dns_secondaire_dhcp</slave>
            <slave>adresse_ip_wins_primaire_dhcp</slave>
            <slave>adresse_ip_wins_secondaire_dhcp</slave>
            <slave>adresse_ip_ntp_dhcp</slave>
            <slave>interdire_hotes_inconnus</slave>
            <slave>dhcp_lease_default</slave>
            <slave>dhcp_lease_max</slave>
        </group>
        <check name='valid_in_network' target='ip_basse_dhcp'>
            <param type='eole'>adresse_network_dhcp</param>
            <param type='eole'>adresse_netmask_dhcp</param>
        </check>
        <check name='valid_in_network' target='ip_haute_dhcp'>
            <param type='eole'>adresse_network_dhcp</param>
            <param type='eole'>adresse_netmask_dhcp</param>
        </check>
        <fill name='calc_val' target='nom_domaine_dhcp'>
            <param type='eole' name='valeur'>nom_domaine_local</param>
        </fill>
        <fill name='calc_val' target='adresse_ip_tftp'>
            <param type='eole' name='valeur'>adresse_ip_eth0</param>
        </fill>
        <fill name='calc_multi_condition' target='global_domain_wpad_dhcp'>
            <param>non</param>
            <param type="eole" name="condition_1" optional="True">activer_wpad</param>
            <param name='default_match'>None</param>
            <param type="eole" name='mismatch'>nom_domaine_local</param>
        </fill>
        <condition name='disabled_if_in' source='activer_tftp'>
            <param>non</param>
            <target type='servicelist'>tftp</target>
            <target type='family'>tftp</target>
            <target type='filelist'>tftp</target>
        </condition>
        <condition name='disabled_if_in' source='activer_dhcp'>
            <param>non</param>
            <target type='filelist'>dhcp</target>
            <target type='servicelist'>dhcp</target>
            <target type='family'>dhcp</target>
            <target type='variable'>chemin_fichier_pxe</target>
        </condition>
        <condition name='disabled_if_in' source='nombre_interfaces'>
            <param>1</param>
            <target type='service_restrictionlist'>tftp_eth1</target>
        </condition>
        <condition name='disabled_if_not_in' source='nombre_interfaces'>
            <param>1</param>
            <target type='service_restrictionlist'>tftp_eth0</target>
        </condition>
    </constraints>

    <help>
        <family name='dhcp'>Paramétrage du serveur DHCP local</family>
        <family name='tftp'>Configuration du serveur TFTP</family>
        <variable name='activer_dhcp'>DHCP (Dynamic Host Configuration Protocol) est un protocole réseau dont le rôle est d’assurer la configuration automatique des paramètres IP d’une station</variable>
        <variable name='activer_tftp'>TFTP (Trivial File Transfer Protocol) est un protocole simplifié de transfert de fichiers</variable>
        <variable name='global_nom_domaine_dhcp'>Nom de domaine à renvoyer aux clients DHCP</variable>
        <variable name='global_adresse_ip_dns_dhcp'>Adresse IP du DNS à renvoyer aux clients DHCP</variable>
        <variable name='global_adresse_ip_wins_primaire_dhcp'>Adresse IP du serveur primaire WINS à renvoyer aux clients DHCP</variable>
        <variable name='global_adresse_ip_wins_secondaire_dhcp'>Adresse IP du serveur secondaire WINS à renvoyer aux clients DHCP</variable>
        <variable name='global_adresse_ip_ntp_dhcp'>Adresse IP du serveur NTP à renvoyer aux clients DHCP</variable>
        <variable name='global_dhcp_lease_default'>Temps du bail par défaut, en secondes, offert à un client n'ayant pas fait la demande d'une durée spécifique</variable>
        <variable name='global_dhcp_lease_max'>Temps du bail maximal, en secondes, accordé à un client ayant fait la demande d'une durée spécifique</variable>
        <variable name='adresse_network_dhcp'>Adresse réseau du sous-réseau</variable>
        <variable name='adresse_netmask_dhcp'>Masque de sous-réseau</variable>
        <variable name='ip_basse_dhcp'>IP basse de la plage d'adresses attribuées dynamiquement pour le sous-réseau</variable>
        <variable name='ip_haute_dhcp'>IP haute de la plage d'adresses attribuées dynamiquement pour le sous-réseau</variable>
        <variable name='nom_domaine_dhcp'>Nom de domaine à renvoyer aux clients DHCP du sous-réseau</variable>
        <variable name='adresse_ip_gw_dhcp'>Adresse IP du routeur à renvoyer aux clients DHCP du sous-réseau</variable>
        <variable name='adresse_ip_dns_dhcp'>Adresse IP du DNS à renvoyer aux clients DHCP du sous-réseau</variable>
        <variable name='adresse_ip_dns_secondaire_dhcp'>Adresse IP d'un serveur DNS secondaire à renvoyer aux clients DHCP du sous-réseau</variable>
        <variable name='adresse_ip_wins_primaire_dhcp'>Adresse IP du serveur primaire WINS à renvoyer aux clients du sous-réseau</variable>
        <variable name='adresse_ip_wins_secondaire_dhcp'>Adresse IP du serveur secondaire WINS à renvoyer aux clients du sous-réseau</variable>
        <variable name='adresse_ip_ntp_dhcp'>Adresse IP du serveur NTP à renvoyer aux clients du sous-réseau</variable>
        <variable name='global_domain_wpad_dhcp'>Nom de domaine du serveur WPAD à renvoyer aux clients du sous-réseau</variable>
        <variable name='interdire_hotes_inconnus'>Le serveur attribuera des adresses uniquement aux stations déclarées</variable>
        <variable name='dhcp_lease_default'>Temps du bail par défaut, en secondes, offert à un client du sous-réseau n'ayant pas fait la demande d'une durée spécifique</variable>
        <variable name='dhcp_lease_max'>Temps du bail maximal, en secondes, accordé à un client du sous-réseau ayant fait la demande d'une durée spécifique</variable>
    </help>

</creole>
<!-- vim: ts=4 sw=4 expandtab
-->
