rpcbind(3N) rpcbind(3N)
NAME
rpcbind: rpcbgetmaps, rpcbgetaddr, rpcbgettime, rpcbrmtcall,
rpcbset, rpcbunset - Bibliotheksroutinen für den rpcbind-Dienst
BESCHREIBUNG
Diese Routinen erlauben C-Client-Programmen, Prozeduren der rpcbind-
Dienste aufzurufen. rpcbind [siehe rpcbind(1M)] verwaltet eine Liste
von Zuordnungen zwischen RPC-Programmen und deren universellen Adres-
sen.
Wenn Sie eine der rpc-Funktionen verwenden, müssen Sie bei der Über-
setzung die Bibliothek libnsl dazubinden (cc -lnsl).
Routinen
#include <rpc/rpc.h>
struct rpcblist *
rpcbgetmaps(const struct netconfig *netconf, const char *host);
Ist eine Benutzerschnittstelle zu dem rpcbind-Dienst, die eine
Liste der aktuellen RPC-Abbildungen von Programmen auf deren
Adressen auf dem angegebenen Rechner zurückliefert. Die Routine
verwendet den Transport, der in netconf spezifiziert ist, um mit
dem fernen Dienst rpcbind auf dem Rechner host Kontakt aufzuneh-
men. Die Routine liefert NULL zurück, wenn kein Kontakt mit dem
fernen rpcbind hergestellt werden konnte.
boolt
rpcbgetaddr(const ulong prognum, const ulong versnum,
const struct netconfig *netconf, struct netbuf *svcaddr,
const char *host);
Ist eine Schnittstelle zum rpcbind-Dienst, die die Adresse des
Dienstes auf dem Rechner host ermittelt, der mit der Programmnum-
mer prognum und der Version versnum registriert wurde. Es wird
dabei das Transportprotokoll verwendet, das in netconf angegeben
ist. Die ermittelte Adresse steht in svcaddr, wobei der Speicher
für svcaddr zuvor allokiert werden muß. Wenn die Routine erfol-
greich war, wird 1 zurückgeliefert. Ein Rückgabewert von 0 zeigt
an, daß die Abbildung nicht existiert oder kein Kontakt mit dem
fernen Dienst rpcbind aufgenommen werden konnte. In diesem Fall
enthält die globale Variable rpccreateerr den RPC-Fehlerstatus.
boolt
rpcbgettime(const char *host, timet *timep);
Diese Routine liefert die Uhrzeit auf dem Rechner host in timep
zurück. Falls host NULL ist, liefert rpcbgettime die Uhrzeit auf
der lokalen Maschine zurück. Die Routine liefert im Erfolgsfall 1
und im Fehlerfall 0 zurück. rpcbgettime kann dazu verwendet wer-
den, die Zeit zwischen dem Client und dem fernen Server zu
Seite 1 Reliant UNIX 5.44 Gedruckt 11/98
rpcbind(3N) rpcbind(3N)
synchronisieren.
enum clntstat
rpcbrmtcall(const struct netconfig *netconf, const char *host,
const ulong prognum, const ulong versnum,
const ulong procnum, const xdrproct inproc,
const caddrt in, const xdrproct outproc, const caddrt out,
const struct timeval tout, struct netbuf *svcaddr);
Ist eine Schnittstelle zum rpcbind-Dienst, die rpcbind auf dem
Rechner host anweist, einen RPC-Aufruf einer Prozedur auf diesem
Rechner durchzuführen. Der Parameter *svcaddr wird auf die
Adresse des Servers gesetzt, wenn die Prozedur erfolgreich durch-
geführt wurde [für eine Definition der anderen Parameter siehe
rpccall und clntcall in rpcclntcalls(3N)]. Diese Prozedur
sollte normalerweise ausschließlich für ein ping-Kommando verwen-
det werden [siehe rpcbroadcast in rpcclntcalls(3N)]. Das Holen
der Serveradresse und der Aufruf der Servers werden in einem ein-
zigen Schritt durchgeführt.
boolt
rpcbset(const ulong prognum, const ulong versnum,
const struct netconfig *netconf,
const struct netbuf *svcaddr);
Ist eine Schnittstelle zum Einrichten einer Zuordnung zwischen
dem Tripel [prognum, versnum, netconf->ncnetid] und svcaddr. Der
Wert von transport muß einem Transportnamen entsprechen, der in
der netconfig-Datei definiert ist. Die Routine liefert im
Erfolgsfall 1 und im Fehlerfall 0 zurück [siehe auch svcreg in
rpcsvccalls(3N)].
boolt
rpcbunset(const ulong prognum, const ulong versnum,
const struct netconfig *netconf);
Ist eine Schnittstelle zum rpcbind-Dienst der lokalen Rechner zum
Löschen aller Abbildungen zwischen dem Tripel [prognum, versnum,
netconf->ncnetid] und der entsprechenden Adresse. Wenn netconf
NULL ist, löscht rpcbunset alle Abbildungen zwischen dem Tripel
[prognum, versnum, *] und der Adresse. Die Routine liefert im
Erfolgsfall 1 und im Fehlerfall 0 zurück [siehe auch svcunreg in
rpcsvccalls(3N)].
SIEHE AUCH
rpcbind(1M), rpcinfo(1M), rpcclntcalls(3N), rpcsvccalls(3N).
Seite 2 Reliant UNIX 5.44 Gedruckt 11/98