14.3. "netrc" — traitement de fichier *netrc*
*********************************************

**Code source :** Lib/netrc.py

======================================================================

La classe "netrc" analyse et encapsule le format de fichier *netrc*
utilisé par le programme Unix **ftp** et d'autres clients FTP.

class netrc.netrc([file])

   A "netrc" instance or subclass instance encapsulates data from  a
   netrc file.  The initialization argument, if present, specifies the
   file to parse.  If no argument is given, the file ".netrc" in the
   user's home directory will be read.  Parse errors will raise
   "NetrcParseError" with diagnostic information including the file
   name, line number, and terminating token. If no argument is
   specified on a POSIX system, the presence of passwords in the
   ".netrc" file will raise a "NetrcParseError" if the file ownership
   or permissions are insecure (owned by a user other than the user
   running the process, or accessible for read or write by any other
   user). This implements security behavior equivalent to that of ftp
   and other programs that use ".netrc".

   Modifié dans la version 3.4: Ajout de la vérification
   d'autorisations POSIX.

exception netrc.NetrcParseError

   Exception levée par la classe "netrc" lorsque des erreurs
   syntaxiques sont rencontrées dans le texte source. Les instances de
   cette exception fournissent trois attributs intéressants : "msg"
   est une explication textuelle de l'erreur, "filename" est le nom du
   fichier source et "lineno" donne le numéro de la ligne sur laquelle
   l'erreur a été trouvée.


14.3.1. Objets *netrc*
======================

Une instance "netrc" a les méthodes suivantes :

netrc.authenticators(host)

   Renvoie un triplet "(login, account, password)" pour s'authentifier
   auprès de l'hôte *host*. Si le fichier *netrc* ne contient pas
   d'entrée pour l'hôte donné, renvoie le tuple associé à l'entrée par
   défaut. Si aucun hôte correspondant ni aucune entrée par défaut
   n'est disponible, renvoie "None".

netrc.__repr__()

   Déverse les données de la classe sous forme de chaîne dans le
   format d'un fichier *netrc*. (Ceci ignore les commentaires et peut
   réorganiser les entrées).

Les instances de "netrc" ont des variables d'instance publiques :

netrc.hosts

   Dictionnaire faisant correspondre les noms d'hôtes dans des tuples
   "(login, account, password)". L'entrée par défaut, le cas échéant,
   est représentée en tant que pseudo-hôte par ce nom.

netrc.macros

   Dictionnaire faisant correspondre les noms de macro en listes de
   chaînes.

Note:

  Les mots de passe sont limités à un sous-ensemble du jeu de
  caractères ASCII. Toute ponctuation ASCII est autorisée dans les
  mots de passe, cependant notez que les espaces et les caractères non
  imprimables ne sont pas autorisés dans les mots de passe. C'est une
  limitation de la façon dont le fichier *.netrc* est analysé et
  pourra être supprimée à l'avenir.
