t_snddis(3N) t_snddis(3N)
NAME
tsnddis - Vom Benutzer eingeleitete Anforderung eines Verbindungsab-
baus senden
SYNTAX
#include <sys/tiuser.h>
int tsnddis(int fd, struct tcall *call);
BESCHREIBUNG
Die Funktion wird dazu verwendet, einen sofortigen Verbindungsabbau
(abortive release) auf einer bereits eingerichteten Verbindung einzu-
leiten oder eine Verbindungsanforderung abzulehnen. fd kennzeichnet
den lokalen Transportendpunkt der Verbindung und call gibt Informatio-
nen, die mit dem Verbindungsabbruch zusammenhängen. call zeigt auf
eine Struktur tcall, die folgende Elemente enthält:
struct netbuf addr;
struct netbuf opt;
struct netbuf udata;
int sequence;
Die Werte in call besitzen jeweils abhängig vom Kontext des tsnddis-
Aufrufs unterschiedliche Bedeutungen. Bei der Ablehnung einer Verbin-
dungsanforderung darf call nicht NULL sein und muß einen gültigen Wert
für sequence besitzen, um die abgelehnte Verbindungsanforderung ein-
deutig für den Transportanbieter identifizieren zu können. Die Felder
addr und opt von call werden ignoriert. In allen anderen Fällen ist
call nur nötig, wenn zusammen mit dem Verbindungsabbauwunsch noch
Daten gesendet werden. Die Felder addr, opt und sequence der tcall-
Struktur werden ignoriert. Wenn der Benutzer keine Daten zu dem ent-
fernten Benutzer schicken will, kann call den Wert NULL besitzen.
udata kennzeichnet die Benutzerdaten, die an den entfernten Benutzer
gesendet werden sollen. Die Größe der Benutzerdaten darf die Grenze
nicht überschreiten, die von dem Transportanbieter vorgegeben wird und
in dem Feld discon des info-Arguments von topen oder tgetinfo
zurückgegeben wird. Falls das Feld len von udata NULL ist, werden
keine Daten an den entfernten Benutzer gesendet.
FEHLER
Im Fehlerfall wird terrno auf einen der folgenden Werte gesetzt:
TBADF Der angegebene Dateideskriptor verweist nicht auf
einen Transportendpunkt.
TOUTSTATE Die Funktion wurde in falscher Reihenfolge aufgerufen.
Die hinausgehende Warteschlange des Transportanbieters
kann gelöscht werden, womit Daten verloren gehen kön-
nen.
Seite 1 Reliant UNIX 5.44 Gedruckt 11/98
t_snddis(3N) t_snddis(3N)
TBADDATA Die Menge der Benutzerdaten war nicht innerhalb des
von dem Transportanbieter erlaubten Bereichs. Die
abgehende Warteschlange des Transportanbieter wird
gelöscht, womit Daten verloren gehen können.
TBADSEQ Es wurde eine ungültige Reihenfolgenummer angegeben
oder eine call-Struktur mit dem Wert NULL wurde bei
der Ablehnung der Verbindungsanforderung angegeben.
Die abgehende Warteschlange des Transportanbieters
wird gelöscht, womit Daten verlorengehen können.
TLOOK Auf diesem Transportendpunkt ist ein asynchrones
Ereignis aufgetreten, das sofortige Bearbeitung erfor-
dert.
TNOTSUPPORT Diese Funktion wird von dem darunterliegenden Trans-
portanbieter nicht angeboten.
TSYSERR Während der Ausführung dieser Funktion ist ein System-
fehler aufgetreten.
DIAGNOSE
tsnddis liefert im Erfolgsfall 0 zurück. Im Fehlerfall wird -1
zurückgegeben und terrno gesetzt, um den Fehler anzugeben.
SIEHE AUCH
tconnect(3N), tgetinfo(3N), tlisten(3N), topen(3N).
Seite 2 Reliant UNIX 5.44 Gedruckt 11/98