[ -z "$title" ] && title="Reflets-TSE (CODA)"
[ -z "$geometry" ] && geometry="auto"
[ -z "$printer" ] && printer="auto"
-[ -z "$machine" ] && machine=`echo $USERNAME | tr a-z A-Z | tr -dc A-Z0-9`
[ -z "$username" ] && username="$USERNAME"
+[ -z "$machine" ] && machine=`echo $username | tr a-z A-Z | tr -dc A-Z0-9`
[ -z "$domain" ] && domain="REFLETS"
[ -z "$server" ] && server="reflets-tse.auf"
[ -z "$extra" ] && extra=""
[ "$printer" = "auto" ] && printer="`etcconf printer auto`"
extra="$extra `etcconf extra ""`"
-# vérification de la présence d'une licence
-if [ ! -r "$HOME/.rdesktop/licence.$machine" ]
+# suppression de la licence si elle vient du serveur AD
+licence="$HOME/.rdesktop/licence.$machine"
+if [ ! -r "$licence" ]
then
- # licence inexistante => recherche d'une ancienne licence
- licence="`ls -tr "$HOME/.rdesktop/licence".* | tail -1`"
- # licence trouvée => on utilise le nom de machine indiqué
- [ -n "$licence" ] && machine="`basename "$licence" | cut -d. -f2`"
+ # XXX: la valeur "skip" est empirique (étude de fichiers de licence)
+ # TODO: récupérer la valeur "count" à la position 92 (=> skip=91)
+ serveur_licence="`dd bs=1 skip=92 count=4 if="$licence" 2>/dev/null | iconv -f UCS-2BE -t UTF-8`"
+ [ "$serveur_licence" = "AD" ] && rm -f "$licence"
fi
# gestion des changements dans les options de configuration
ping -c1 "$server" >/dev/null
# lancement de la connexion RDP
-rdesktop -T "$title" $geometry $printer -a 8 -z -P -x m \
+exec rdesktop -T "$title" $geometry $printer -a 8 -z -P -x m \
-n "$machine" -u "$username" -d "$domain" $extra "$server"
-status="$?"
-[ $status != 0 ] && echo "DEBUG: statut de sortie de rdesktop : $status"
-
-# en cas de sortie anormale, on écarte la licence utilisée
-# (note : status=2 en cas de fermeture forcée de la fenêtre)
-licence="$HOME/.rdesktop/licence.$machine"
-if [ $status != 0 -a $status != 2 -a -r "$licence" ]
-then
- # FIXME: TODO: tester les cas de problèmes de licences
- echo -n "DEBUG: " \
- mv "$licence" "$licence"_DISABLED
-fi
-
-exit $status
auf-poste-client-reflets (1.6) hardy; urgency=low
* Configuration spécifique à une machine via /etc/auf-reflets-tse.conf.
- * Utilisation d'une ancienne licence le cas échéant.
+ * Suppression de la licence sélectionnée si elle vient du serveur "AD".
+ * Construction du nom de la machine à partir du "username" configuré.
+ (uniquement si le nom de la machine n'est pas lui-même configuré)
- -- Progfou <jean-christophe.andre@auf.org> Thu, 07 May 2009 06:57:51 +0700
+ -- Progfou <jean-christophe.andre@auf.org> Fri, 08 May 2009 03:16:19 +0700
auf-poste-client-reflets (1.5) hardy; urgency=low