t_rcvdis(3N) t_rcvdis(3N)
NAME
trcvdis - Information über einen Verbindungsabbau holen
SYNTAX
#include <sys/tiuser.h>
int trcvdis(int fd, struct tdiscon *discon);
BESCHREIBUNG
Diese Funktion wird verwendet, um die Ursache eines Verbindungsabbaus
festzustellen, und um Benutzerdaten zu holen, die mit der Meldung zum
Verbindungsabbau mitgeschickt wurden. fd kennzeichnet den lokalen
Transportendpunkt, auf dem die Verbindung bestanden hat, und discon
zeigt auf eine Struktur tdiscon, die folgende Elemente enthält:
struct netbuf udata;
int reason;
int sequence;
reason gibt die Ursache des Verbindungsabbaus durch einen protokollab-
hängigen Code an. udata enthält alle Benutzerdaten, die mit der Mel-
dung zum Verbindungsabbau mitgesendet wurden, und sequence kann eine
noch anstehenden Verbindungswunsch, der mit den Verbindungsabbau
zusammenhängt, kennzeichnen. sequence ist nur von Bedeutung, wenn
trcvdis von einem passiven Transportdienstbenutzer durchgeführt wird,
der eine oder mehrere Funktionen tlisten aufgerufen hat und die
resultierenden Verbindungswünsche bearbeitet. Wenn eine Anforderung
zum Verbindungsabbau auftritt, kann sequence dazu verwendet werden,
festzustellen, welche der noch anstehenden Verbindungswünsche mit
gemeint ist.
Wenn es einem Benutzer gleichgültig ist, ob Daten mitangekommen sind,
und er nicht an den Werten von reason oder sequence interessiert ist,
kann discon NULL sein, und alle Benutzerdaten, die mit dem Verbin-
dungsabbau zusammenhängen werden gelöscht. Wenn ein Benutzer jedoch
mehr als einen noch anstehenden Verbindungswunsch erhalten hat (mit-
tels tlisten), und discon NULL ist, kann dem Benutzer nicht mehr
feststellen, welcher Verbindungswunsch gemeint ist.
FEHLER
Im Fehlerfall wird terrno auf einen der folgenden Werte gesetzt:
TBADF Der angegebene Dateideskriptor verweist nicht auf
einen Transportendpunkt.
TNODIS Es ist im Augenblick keine Anforderung zum Verbin-
dungsabbau auf dem angegebenen Transportendpunkt vor-
handen.
Seite 1 Reliant UNIX 5.44 Gedruckt 11/98
t_rcvdis(3N) t_rcvdis(3N)
TBUFOVFLW Die Anzahl reservierter Bytes für die ankommenden
Daten sind nicht ausreichend, um die Daten zu spei-
chern. Der Zustand der Transportvorrichtung wird aus
Sicht des Benutzers in den Zustand TIDLE gebracht und
die Information über den Verbindungsabbau, die in
discon zurückzuliefern ist, wird gelöscht.
TNOTSUPPORT Diese Funktion wird nicht von der darunterliegenden
Transportvorrichtung angeboten.
TSYSERR Während der Ausführung dieser Funktion ist ein System-
fehler aufgetreten.
DIAGNOSE
trcvdis liefert im Erfolgsfall 0 zurück und im Fehlerfall -1, wobei
noch terrno gesetzt wird, um den Fehler anzuzeigen.
SIEHE AUCH
tconnect(3N), tlisten(3N), topen(3N), tsnddis(3N).
Seite 2 Reliant UNIX 5.44 Gedruckt 11/98