1. NOM

getrpcent_r, getrpcbyname_r, getrpcbynumber_r - Lire une entrée RPC (version réentrante)

2. SYNOPSIS

 
Sélectionnez
#include <netdb.h>
int getrpcent_r(struct rpcent *result_buf, char *buf,
                size_t buflen, struct rpcent **result);
int getrpcbyname_r(const char *name,
                struct rpcent *result_buf, char *buf,
                size_t buflen, struct rpcent **result);
int getrpcbynumber_r(int number,
                struct rpcent *result_buf, char *buf,
                size_t buflen, struct rpcent **result);

Exigences de macros de test de fonctionnalités pour la glibc (consultez feature_test_macros(7)) :

getrpcent_r(), getrpcbyname_r(), getrpcbynumber_r() :
    _BSD_SOURCE || _SVID_SOURCE

3. DESCRIPTION

getrpcent_r(), getrpcbyname_r(), et getrpcbynumber_r() sont les versions réentrantes, respectivement, de getrpcent(3), getrpcbyname(3), et getrpcbynumber(3). Leurs signatures sont différentes et elles renvoient une structure rpcent. Cette page de manuel décrit seulement les différences avec les versions non réentrantes. Au lieu de renvoyer un pointeur vers une structure rpcent statiquement allouée, ces fonctions copient la structure à l'adresse pointée par result_buf. Le tableau buf est utilisé pour sauvegarder les champs de la chaîne pointée par la structure rpcent renvoyée (les fonctions non réentrantes allouent ces chaînes de façon statique). La taille du tableau est spécifiée avec buflen. Si buf est trop petit, l'appel échoue avec l'erreur ERANGE, et l'appelant doit essayer de nouveau avec un tableau plus grand (un tableau de 1024 octets est en général suffisant). Si l'appel réussi à obtenir un enregistrement RPC, alors *result pointe vers result_buf, sinon *result est défini à NULL.

4. VALEUR RENVOYÉE

En cas de succès, ces fonctions renvoient zéro. En cas d'erreur, une valeur d'erreur positive listée dans ERREURS est renvoyée. En cas d'erreur, « enregistrement non trouvé » (getrpcbyname_r(),getrpcbynumber_r()) ou « fin de l'entrée » (getrpcent_r()),result est défini à NULL.

5. ERREURS

  • ENOENT
        (getrpcent_r()) Plus d'enregistrement dans la base.
  • ERANGE
        buf est trop petit. Ré-essayer avec un tampon plus grand (et augmentez buflen).

6. CONFORMITÉ

Ces fonctions sont des extensions GNU. Des fonctions avec des noms similaires existent sur d'autres systèmes, bien que en général avec des signatures d'appels différent.

7. VOIR AUSSI

getrpcent(3), rpc(5)

8. COLOPHON

Cette page fait partie de la publication 3.52 du projet man-pages Linux. Une description du projet et des instructions pour signaler des anomalies peuvent être trouvées à l'adresse http://www.kernel.org/doc/man-pages/.

9. TRADUCTION

Depuis 2010, cette traduction est maintenue à l'aide de l'outil po4a <http://po4a.alioth.debian.org/> par l'équipe de traduction francophone au sein du projet perkamon <http://perkamon.alioth.debian.org/>.

Florentin Duneau et l'équipe francophone de traduction de Debian (2006-2009).

Veuillez signaler toute erreur de traduction en écrivant à <>.

Vous pouvez toujours avoir accès à la version anglaise de ce document en utilisant la commande « LC_ALL=C man <section> <page_de_man> ».