Linux |
CentOS 5.3 |
|
mutt_dotlock(1) |
mutt_dotlock − Verrouillage des fichiers de spoule de courrier. |
mutt_dotlock [-t|-f|-u|-d] [-p] [-r tentatives] fichier |
mutt_dotlock implémente la méthode traditionnelle de verrouillage de fichiers de spoule de courrier : pour verrouiller fichier, un fichier nommé fichier.lock est créé. Le programme opère sous les privilèges du groupe mail si nécessaire. |
-t |
Simple tentative. mutt_dotlock ne verrouille pas réellement le fichier, mais informe le processus appelant sur la possibilité de verrouiller fichier. |
||
-f |
Force le verrouillage. Si un autre processus détient un verrou sur fichier depuis plus d’un certain temps, mutt_dotlock retire ce verrou en supprimant le fichier verrou (.lock). |
||
-u |
Déverrouillage. mutt_dotlock retire fichier.lock. |
||
-d |
Effacement. mutt_dotlock va verrouiller fichier, le supprimer s’il a une taille nulle, puis effacer fichier.lock. |
||
-p |
Utiliser des privilèges. Si cette option est spécifiée, mutt_dotlock va opérer sous les privilèges du groupe mail lors de la création et de la suppression des fichiers verrou. |
-r tentatives |
Cette option indique à mutt_dotlock de tenter de verrouiller tentatives fois avant d’abandonner ou (s’il est appelé avec l’option de ligne de commande -f ) de forcer un verrou. La valeur par défaut est 5. mutt_dotlock attend une seconde entre chaque tentative de verrouillage. |
fichier.lock |
Le fichier verrou généré par mutt_dotlock. |
fcntl(2), flock(2), lockfile(1), mutt(1) |
mutt_dotlock donne tous les diagnostics dans ses valeurs de retour : |
0 − DL_EX_OK |
Le programme s’est parfaitement déroulé. |
1 − DL_EX_ERROR |
Une erreur non spécifiée, telle que de mauvais paramètres en ligne de commande, un manque de mémoire système ou un problème similaire, est survenue. |
3 − DL_EX_EXIST |
L’utilisateur souhaite verrouiller un fichier qui est déjà verrouillé par un autre processus. Si mutt_dotlock est appelé avec l’option -f de la ligne de commande, mutt_dotlock ne générera pas cette erreur, mais cassera le verrou de l’autre processus. |
4 − DL_EX_NEED_RPIVS |
Cette valeur de retour n’apparaît que dans le cas où mutt_dotlock a été appelé avec l’option -t de la ligne de commande. Cela signifie que mutt_dotlock requiert l’usage des privilèges du groupe mail pour verrouiller fichier. |
5 − DL_EX_IMPOSSIBLE |
Cette valeur de retour n’apparaît que dans le cas où mutt_dotlock a été appelé avec l’option -t de la ligne de commande. Cela signifie que mutt_dotlock est incapable de verrouiller fichier même doté des privilège du groupe mail. |
mutt_dotlock tente d’implémenter un méthode de verrouillage de type dotlock sûre du point de vue de NFS qui a été empruntée à lockfile (1). Si l’utilisateur ne peut ouvrir fichier en lecture avec ses privilèges normaux, mutt_dotlock retournera la valeur de retour DL_EX_ERROR pour éviter des attaques contre les fichiers de spoules d’autres utilisateurs. Le code évite soigneusement les risques d’attaque par situation de concurrence critique (race conditions) lors de la vérification des permissions ; pour plus de détails sur tout ceci, voir les commentaires dans dotlock.c. |
mutt_dotlock fait partie de la distribution du logiciel de courrier Mutt. Il a été créé afin de ne pas avoir à lancer Mutt avec les privilèges du groupe mail. |
Thomas Roessler <roessler@guug.de> |
Cédric Duval <cedricduval at free.fr>, 2002. |
mutt_dotlock(1) |