Museum

Home

Lab Overview

Retrotechnology Articles

Online Manuals

⇒ xdr_admin(3N) — Reliant UNIX 5.44c4

Media Vault

Software Library

Restoration Projects

Artifacts Sought

Related Articles

rpc(3N)

xdr_admin(3N)                                                 xdr_admin(3N)

NAME
     xdradmin: xdrgetpos, xdrinline, xdrreceof, xdrsetpos - Biblio-
     theksroutinen für die XDR-Datendarstellung

BESCHREIBUNG
     XDR-Bibliotheksroutinen ermöglichen C-Programmierern die maschinenun-
     abhängige Darstellung beliebiger Datenstrukturen. Protokolle wie RPC
     verwenden diese Routinen für die Datendarstellung.

     Diese Routinen haben hauptsächlich mit der Verwaltung von XDR-Streams
     zu tun.

     Wenn Sie eine der XDR-Funktionen verwenden, müssen Sie bei der Über-
     setzung die Bibliothek libnsl dazubinden (cc -lnsl).

   Routinen

     Die Definition der XDR-Datenstruktur ist unter rpc(3N) zu finden.

     #include <rpc/xdr.h>

     uint
     xdrgetpos(const XDR *xdrs);

          Dies ist ein Makro, das die Routine zur Positionsermittlung auf-
          ruft, die auf den XDR-Handle xdrs verweist. Die Routine liefert
          einen vorzeichenlosen Ganzzahlwert zurück, der die Position im
          XDR-Bytestrom angibt.

     long *
     xdrinline(XDR *xdrs, const int len);

          Dies ist ein Makro, das die "in-line"-Routine des XDR-Handle xdrs
          aufruft. Die Routine liefert einen Zeiger auf einen zusammenhän-
          genden Teil des XDR-Puffers zurück. len ist die Länge des Puffers
          in Bytes.

          Hinweis: Die Zeiger wird auf den Typ long * gesetzt.

          Warnung:

          xdrinline kann NULL (0) zurückliefern, wenn kein zusammenhängen-
          des Pufferstück angelegt werden kann. Das Verhalten wird sich
          daher je nach Handle unterscheiden. Das Makro existiert nur aus
          Effizienzgründen. Anwendungen sollten aus Gründen der Portabili-
          tät nicht von diesem Makro abhängen.









Seite 1                      Reliant UNIX 5.44               Gedruckt 11/98

xdr_admin(3N)                                                 xdr_admin(3N)

     boolt
     xdrreceof(XDR *xdrs);

          Diese Routine kann nur auf Handles durchgeführt werden, die durch
          xdrreccreate erzeugt wurden. Nach der Verarbeitung des aktuellen
          Datensatzes im XDR-Handle im Stream liefert die Routine eine 1
          zurück, falls keine weiteren Eingabedaten da sind, ansonsten 0.

     boolt
     xdrsetpos(XDR *xdrs, const uint pos);

          Dies ist ein Makro, das die Routine zur Positionierung aufruft,
          das auf den XDR-Handle xdrs verweist. Der Parameter pos ist ein
          Positionswert, der von xdrgetpos geliefert wurde. Die Routine
          liefert 1 zurück, wenn im XDR-Handle nicht neu positioniert
          wurde, ansonsten 0.

          Warnung:

          Bei einigen XDR-Handletypen ist es schwierig, neu zu positionie-
          ren, weshalb die Routine bei einigen Handles fehlschlagen kann,
          bei anderen jedoch nicht. Deshalb sollten sich Anwendungen aus
          Gründen der Portabilität nicht auf diese Routine verlassen.

SIEHE AUCH
     rpc(3N), xdrcomplex(3N), xdrcreate(3N), xdrsimple(3N).




























Seite 2                      Reliant UNIX 5.44               Gedruckt 11/98

Typewritten Software • bear@typewritten.org • Edmonds, WA 98026