Museum

Home

Lab Overview

Retrotechnology Articles

Online Manuals

⇒ t_open(3N) — Reliant UNIX 5.44c4

Media Vault

Software Library

Restoration Projects

Artifacts Sought

Related Articles

open(2)

t_open(3N)                                                       t_open(3N)

NAME
     topen - Transportendpunkt einrichten

SYNTAX
     #include <sys/tiuser.h>

     #include <fcntl.h>

     int topen(char *path, int oflag, struct tinfo *info);

BESCHREIBUNG
     Der Aufruf von topen ist der erste Schritt bei der Initialisierung
     eines Transportendpunkts. Die Funktion richtet einen Transportendpunkt
     ein, indem sie eine UNIX Datei öffnet, die einen bestimmten Transport-
     anbieter kennzeichnet (d. h. das Transportprotokoll). Der Dateide-
     skriptor dieser Datei wird zurückgeliefert. Das Öffnen der Datei
     /dev/isocots kennzeichnet den Transportanbieter als ein OSI-verbin-
     dungsorientiertes Transportprotokoll.

     path zeigt auf den Pfadnamen der zu öffnenden Datei, und oflag gibt
     die entsprechenden Optionen für das open(2) an. oflag kann aus
     ONDELAY oder ONONBLOCK mit einer ODER-Verknüpfung von ORDWR gebil-
     det werden. Diese Optionen sind in der Include-Datei <fcntl.h> defi-
     niert. topen liefert einen Dateideskriptor zurück, der von allen
     nachfolgenden Funktionen für die Identifikation dieses bestimmten
     Transportendpunkts verwendet wird.

     topen liefert ebenfalls verschiedene Standardeigenschaften des darun-
     terliegenden Transportprotokolls zurück, indem es die jeweiligen Fel-
     der in der Struktrur tinfo setzt. Das Argument tinfo zeigt auf eine
     Struktur tinfo, die folgende Elemente enthält:

     long addr;          /* max. Länge der Transportprotokolladresse */

     long options;       /* max. Anzahl Bytes der protokollspezif. Optionen */

     long tsdu;          /* max. Größe einer Transportdienstdateneinheit
                            (TSDU) */

     long etsdu;         /* max. Größe einer vorrangigen Transportdienst-
                            dateneinheit (ETSDU) */

     long connect;       /* max. erlaubte Datenmenge bei Verbindungsaufbau-
                            Funktionen */

     long discon;        /* max. erlaubte Datenmenge bei den Funktionen
                            tsnddis und trcvdis */

     long servtype;      /* von dem Transportanbieter angebotene Diensttyp */






Seite 1                      Reliant UNIX 5.44               Gedruckt 11/98

t_open(3N)                                                       t_open(3N)

     Die Werte der Felder haben folgende Bedeutung:

     addr      Ein Wert größer als oder gleich Null, der die maximale Größe
               einer Transportprotokolladresse angibt. Ein Wert -1 zeigt
               an, daß es keine Grenze für die Adreßgröße gibt. Ein Wert -2
               bedeutet, daß der Transportanbieter keinen Zugriff auf die
               Transportprotokolladresse zur Verfügung stellt.

     options   Ein Wert größer als oder gleich Null, der die maximale
               Anzahl von Bytes der protokollspezifischen Optionen angibt,
               die von dem Transportanbieter zur Verfügung gestellt werden.
               Der Wert -1 bedeutet, daß es keine Grenze für die Options-
               größe gibt. Der Wert -2 gibt an, daß der Transportanbieter
               keine durch den Benutzer setzbaren Optionen zur Verfügung
               stellt.

     tsdu      Ein Wert größer als Null, der die maximale Größe einer
               Transportdienst-Dateneinheit (TSDU) angibt. Der Wert Null
               gibt an, daß der Transportanbieter das Konzept der TSDU
               nicht anbietet, obgleich sie das Senden von Datenströmen
               ohne die Einhaltung logischer Grenzen über eine Verbindung
               unterstützt. Der Wert -1 gibt an, daß es keine Grenze für
               die Größe einer TSDU gibt. Der Wert -2 gibt an, daß der
               Transportanbieter die Übertragung von normalen Daten nicht
               anbietet.

     etsdu     Ein Wert größer als Null, der die maximale Größe einer vor-
               rangigen Transportdienst-Dateneinheit (ETSDU) angibt. Ein
               Wert Null gibt an, daß der Transportanbieter das Konzept der
               ETSDU nicht unterstützt, obgleich sie das Senden von vorran-
               gigen Datenströmen ohne die Einhaltung logischer Grenzen
               über eine Verbindung unterstützt. Der Wert -1 bedeutet, daß
               es keine Grenze für die Größe einer ETSDU gibt. Der Wert -2
               gibt an, daß der Transportanbieter die Übertragung von Vor-
               rangdaten nicht anbietet.

     connect   Ein Wert größer als oder gleich Null, der die maximale Menge
               an Daten angibt, die mit einer Verbindungsaufbaufunktion
               gesendet werden können. Der Wert -1 bedeutet, daß es keine
               Grenze für die Datenmenge gibt, die während eines Verbin-
               dungsaufbaus gesendet werden kann. Der Wert -2 gibt an, daß
               der Transportanbieter nicht erlaubt, Daten während des Ver-
               bindungsaufbaus mitzusenden.











Seite 2                      Reliant UNIX 5.44               Gedruckt 11/98

t_open(3N)                                                       t_open(3N)

     discon    Ein Wert größer als oder gleich Null, der die maximale Menge
               an Daten angibt, die mit den  Funktionen tsnddis und
               trcvdis versendet bzw. empfangen werden können. Der Wert -1
               bedeutet, daß es keine Grenze für die Datenmenge gibt, die
               während eines Verbindungsabbaus gesendet werden kann. Der
               Wert -2 gibt an, daß der Transportanbieter nicht erlaubt,
               Daten während des Verbindungsabbaus mitzusenden.

     servtype  Dieses Feld gibt den Diensttyp an, der von dem Transportan-
               bieter angeboten wird (siehe unten).

     Wenn ein Transportdienstbenutzer protokollunabhängig sein will, kann
     auf die obigen Größen zugegriffen werden, um festzustellen, wie groß
     die Puffer zur Aufnahme der Daten sein müssen. Alternativ dazu kann
     die Funktion talloc verwendet werden, um diese Puffer anzulegen. Es
     tritt ein Fehler auf, wenn ein Transportdienstbenutzer die erlaubten
     Datengrößen bei einer Funktion überschreitet.

     Das Feld servtype von info kann bei der Rückkehr einen der folgenden
     Werte enthalten:

     TCOTS        Der Transportanbieter unterstützt einen verbindungs-
                   orientierten Dienst, jedoch nicht die optionale Möglich-
                   keit eines geordneten Verbindungsabbaus.

     TCOTSORD    Der Transportanbieter unterstützt einen verbindungs-
                   orientierten Dienst mit der optionalen Möglichkeit eines
                   geordneten Verbindungsabbaus.

     TCLTS        Der Transportanbieter unterstützt einen verbindungslosen
                   Dienst. Für diesen Diensttyp liefert topen bei etsdu,
                   connect und discon -2 zurück.

     Ein einziger Transportendpunkt kann zu einem Zeitpunkt nur einen der
     obigen Dienste anbieten.

     Wenn info vom Transportbenutzer auf NULL gesetzt wird, wird von topen
     keine Protokollinformation zurückgeliefert.

FEHLER
     Im Fehlerfall wird terrno auf einen der folgenden Werte gesetzt:

     TSYSERR         Während der Ausführung dieser Funktion ist ein System-
                     fehler aufgetreten.

     TBADFLAG        Es ist eine ungültige Option angegeben worden.

DIAGNOSE
     topen liefert bei erfolgreicher Durchführung einen gültigen Dateide-
     skriptor zurück. Im Fehlerfall wird -1 zurückgegeben, wobei terrno
     gesetzt wird, um den Fehler anzuzeigen.



Seite 3                      Reliant UNIX 5.44               Gedruckt 11/98

t_open(3N)                                                       t_open(3N)

HINWEISE
     Wenn topen auf einem STREAMS-Geräteknoten verwendet wird, der nicht
     konform mit der Schnittstelle der Transportschicht (TLI) ist, können
     unvorhergesehene Fehler auftreten.

SIEHE AUCH
     open(2).















































Seite 4                      Reliant UNIX 5.44               Gedruckt 11/98

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