perkamon - en to fr translation catalogue (47 entries)

note: type: TH
en: 2019-03-06
fr: 6 mars 2019

note: type: TH
en: Linux Programmer's Manual
fr: Manuel du programmeur Linux

note: type: SH
en: NAME
fr: NOM

note: type: Plain text
en: fopencookie - opening a custom stream
fr: fopencookie - Ouvrir un flux particulier

note: type: Plain text
en: B<#define _GNU_SOURCE>         /* See feature_test_macros(7) */
    B<#include E<lt>stdio.hE<gt>>
fr: B<#define _GNU_SOURCE>         /* Consultez feature_test_macros(7) */
    B<#include E<lt>stdio.hE<gt>>

note: type: Plain text
en: The B<fopencookie>()  function allows the programmer to create a custom implementation for a standard I/O stream.  This implementation can store the stream's data at a location of its own choosing; for example, B<fopencookie>()  is used to implement B<fmemopen>(3), which provides a stream interface to data that is stored in a buffer in memory.
fr: La fonction B<fopencookie>() permet au programmeur de créer des implémentations particulières de flux d'entrées-sorties. Cette implémentation peut sauvegarder les flux de données dans une location choisie. Par exemple, B<fopencookie>() est utilisée pour implémenter B<fmemopen>(3), qui fournit une interface qui sauvegarde les flux de données dans un tampon en mémoire.

note: type: Plain text
en: In order to create a custom stream the programmer must:
fr: Pour créer un flux particulier, le programmeur doit\ :

note: type: Plain text
en: Implement four "hook" functions that are used internally by the standard I/O library when performing I/O on the stream.
fr: Implémenter quatre fonctions de «\ hook\ » qui seront utilisées en interne par la bibliothèque standard d'entrées-sorties lors d'opération d'E/S.

note: type: Plain text
en: Define a "cookie" data type, a structure that provides bookkeeping information (e.g., where to store data) used by the aforementioned hook functions.  The standard I/O package knows nothing about the contents of this cookie (thus it is typed as I<void\ *> when passed to B<fopencookie>()), but automatically supplies the cookie as the first argument when calling the hook functions.
fr: Définit un type de données «\ cookie\ », une structure permettant de sauvegarder des informations (par exemple, où sauvegarder les données) utilisée par les fonctions de hook. Les fonctions E/S standards ne connaissent rien à propos du contenu de ce cookie (il est passé comme un type I<void\ *> à B<fopencookie>()) et celui-ci est automatiquement passé en premier argument des fonctions de hook.

note: type: Plain text
en: Call B<fopencookie>()  to open a new stream and associate the cookie and hook functions with that stream.
fr: Appeler B<fopencookie>() pour ouvrir un nouveau flux et associer le cookie et les fonctions de «\ hook\ » à ce flux.

note: type: Plain text
en: The B<fopencookie>()  function serves a purpose similar to B<fopen>(3): it opens a new stream and returns a pointer to a I<FILE> object that is used to operate on that stream.
fr: La fonction B<fopencookie>() effectue une tâche similaire à celle de B<fopen>(3)\ : elle ouvre un nouveau flux et renvoie un pointeur vers un objet I<FILE> utilisé pour manipuler le flux.

note: type: Plain text
en: The I<cookie> argument is a pointer to the caller's cookie structure that is to be associated with the new stream.  This pointer is supplied as the first argument when the standard I/O library invokes any of the hook functions described below.
fr: L'argument I<cookie> est un pointeur vers la structure cookie appelante qui est associée au nouveau flux. Ce pointeur est passé en premier argument lorsque les bibliothèques d'E/S standard appellent une des fonctions de hook.

note: type: Plain text
en: The I<mode> argument serves the same purpose as for B<fopen>(3).  The following modes are supported: I<r>, I<w>, I<a>, I<r+>, I<w+>, and I<a+>.  See B<fopen>(3)  for details.
fr: L'argument I<mode> a le même sens que pour B<fopen>(3). Les modes suivants sont gérés\ :  I<r>, I<w>, I<a>, I<r+>, I<w+> et I<a+>. Consultez B<fopen>(3) pour plus de détails.

note: type: Plain text
en: The I<io_funcs> argument is a structure that contains four fields pointing to the programmer-defined hook functions that are used to implement this stream.  The structure is defined as follows
fr: L'argument I<io_funcs> est une structure qui contient quatre champs pointant vers les fonctions de «\ hook\ » définies par le programmeur qui seront utilisées dans l'implémentation du flux. La structure est définie comme suit\ :

note: type: Plain text
en: The four fields are as follows:
fr: Les quatre membres sont définis comme suit\ :

note: type: Plain text
en: This function implements read operations for the stream.  When called, it receives three arguments:
fr: Cette fonction implémente les opérations de lecture du flux. Lorsqu'elle est appelée, elle reçoit trois arguments.

note: type: Plain text
en: The I<buf> and I<size> arguments are, respectively, a buffer into which input data can be placed and the size of that buffer.  As its function result, the I<read> function should return the number of bytes copied into I<buf>, 0 on end of file, or -1 on error.  The I<read> function should update the stream offset appropriately.
fr: Les argument I<buf> et I<size> sont respectivement, un tampon de données pour sauvegarder les données en provenance du flux et la taille du tampon. La fonction I<read> renvoie le nombre d'octets copiés depuis le flux ou -1 en cas d'erreur. La fonction I<read> doit mettre à jour la position dans le flux en conséquence.

note: type: Plain text
en: If I<*read> is a null pointer, then reads from the custom stream always return end of file.
fr: Si I<*read> est un pointeur NULL, alors les lectures du flux renvoient toujours fin de fichier.

note: type: Plain text
en: This function implements write operations for the stream.  When called, it receives three arguments:
fr: Cette fonction implémente les opérations d'écriture du flux. Lorsqu'elle est appelée, elle reçoit trois arguments\ :

note: type: Plain text
en: The I<buf> and I<size> arguments are, respectively, a buffer of data to be output to the stream and the size of that buffer.  As its function result, the I<write> function should return the number of bytes copied from I<buf>, or 0 on error.  (The function must not return a negative value.)  The I<write> function should update the stream offset appropriately.
fr: Les argument I<buf> et I<size> sont respectivement, un tampon de données à écrire dans le flux et la taille du tampon. La fonction I<write> renvoie le nombre d'octets copiés depuis I<buf> ou 0 en cas d'erreur (la fonction ne doit pas renvoyer de valeur négative). La fonction I<write> doit mettre à jour la position dans le flux en conséquence.

note: type: Plain text
en: If I<*write> is a null pointer, then output to the stream is discarded.
fr: Si I<*write> est un pointeur NULL, alors les écritures dans le flux ne sont pas réalisées.

note: type: Plain text
en: This function implements seek operations on the stream.  When called, it receives three arguments:
fr: Cette fonction implémente les opérations de positionnement dans le flux. Lorsqu'elle est appelée, elle prend trois arguments\ :

note: type: Plain text
en: The I<*offset> argument specifies the new file offset depending on which of the following three values is supplied in I<whence>:
fr: L'argument I<*offset> spécifie le nouveau décalage du fichier selon les trois valeurs suivantes fournies à I<whence>\ :

note: type: Plain text
en: The stream offset should be set I<*offset> bytes from the start of the stream.
fr: Le décalage du flux doit être défini à I<*offset> octets après le début du flux.

note: type: Plain text
en: I<*offset> should be added to the current stream offset.
fr: I<*offset> doit être ajouté à l'offset actuel du flux.

note: type: Plain text
en: The stream offset should be set to the size of the stream plus I<*offset>.
fr: L'offset du flux doit être défini à la taille du flux plus I<*offset>.

note: type: Plain text
en: Before returning, the I<seek> function should update I<*offset> to indicate the new stream offset.
fr: La fonction I<seek> doit mettre à jour I<*offset> pour indiquer le nouvel offset du flux avant de renvoyer.

note: type: Plain text
en: As its function result, the I<seek> function should return 0 on success, and -1 on error.
fr: La function I<seek> devrait renvoyée 0 en cas de succès et -1 en cas d'erreur.

note: type: Plain text
en: If I<*seek> is a null pointer, then it is not possible to perform seek operations on the stream.
fr: Si I<*seek> est un pointeur NULL, alors il est impossible de se positionner dans le flux.

note: type: Plain text
en: This function closes the stream.  The hook function can do things such as freeing buffers allocated for the stream.  When called, it receives one argument:
fr: Cette fonction ferme le flux. Par exemple, la fonction de hook peut désallouer des tampons alloués pour le flux. Lorsqu'elle est appelée, elle prend un argument\ :

note: type: Plain text
en: The I<cookie> argument is the cookie that the programmer supplied when calling B<fopencookie>().
fr: L'argument I<cookie> est le cookie que le programmeur fournit à B<fopencookie>().

note: type: Plain text
en: As its function result, the I<close> function should return 0 on success, and B<EOF> on error.
fr: La function I<close> devrait renvoyée 0 en cas de succès et B<EOF> en cas d'erreur.

note: type: Plain text
en: If I<*close> is NULL, then no special action is performed when the stream is closed.
fr: Si I<*close> est NULL, alors aucune action n'est réalisée lorsque le flux est fermé.

note: type: SH
en: RETURN VALUE
fr: VALEUR DE RETOUR

note: .SH ERRORS It's not clear if errno ever gets set... type: Plain text
en: On success B<fopencookie>()  returns a pointer to the new stream.  On error, NULL is returned.
fr: En cas de succès, B<fopencookie>() renvoie un pointeur sur le nouveau flux. En cas d'erreur, NULL est renvoyé.

note: type: SH
en: ATTRIBUTES
fr: ATTRIBUTS

note: type: tbl table
en: Value
fr: Valeur

note: type: SH
en: CONFORMING TO
fr: CONFORMITÉ

note: type: Plain text
en: This function is a nonstandard GNU extension.
fr: Cette fonction est une extension GNU non standard.

note: type: SH
en: EXAMPLE
fr: EXEMPLE

note: type: Plain text
en: The program below implements a custom stream whose functionality is similar (but not identical) to that available via B<fmemopen>(3).  It implements a stream whose data is stored in a memory buffer.  The program writes its command-line arguments to the stream, and then seeks through the stream reading two out of every five characters and writing them to standard output.  The following shell session demonstrates the use of the program:
fr: Le programme ci-dessous implémente un flux particulier dont la fonctionnalité est similaire (mais non identique) à celle de B<fmemopen>(3). Il implémente un flux dont les données sont sauvegardées dans un tampon. Le programme écrit les options de sa ligne de commande dans le flux et se positionne dans le flux afin de lire 2 caractères sur 5 et les écrit sur la sortie standard. La session shell suivante explique comment utiliser ce programme.

note: type: Plain text
en: Note that a more general version of the program below could be improved to more robustly handle various error situations (e.g., opening a stream with a cookie that already has an open stream; closing a stream that has already been closed).
fr: Notez qu'une version plus générique et plus robuste du programme ci-dessous, avec une gestion des erreurs pourrait être implémenté (par exemple, l'ouverture d'un flux avec un cookie en cours d'utilisation par un autre flux\ ; la fermeture d'un flux déjà fermé).

note: type: SS
en: Program source
fr: Source du programme

note: type: SH
en: SEE ALSO
fr: VOIR AUSSI

note: type: Plain text
en: This page is part of release 5.03 of the Linux I<man-pages> project.  A description of the project, information about reporting bugs, and the latest version of this page, can be found at \%https://www.kernel.org/doc/man-pages/.
fr: Cette page fait partie de la publication 5.03 du projet I<man-pages> Linux. Une description du projet et des instructions pour signaler des anomalies peuvent être trouvées à l'adresse \%https://www.kernel.org/doc/man-pages/.

note: type: Plain text
en: This page is part of release 5.02 of the Linux I<man-pages> project.  A description of the project, information about reporting bugs, and the latest version of this page, can be found at \%https://www.kernel.org/doc/man-pages/.
fr: Cette page fait partie de la publication 5.02 du projet I<man-pages> Linux. Une description du projet et des instructions pour signaler des anomalies peuvent être trouvées à l'adresse \%https://www.kernel.org/doc/man-pages/.

note: type: Plain text
en: This page is part of release 5.01 of the Linux I<man-pages> project.  A description of the project, information about reporting bugs, and the latest version of this page, can be found at \%https://www.kernel.org/doc/man-pages/.
fr: Cette page fait partie de la publication 5.01 du projet I<man-pages> Linux. Une description du projet et des instructions pour signaler des anomalies peuvent être trouvées à l'adresse \%https://www.kernel.org/doc/man-pages/.
