t_optmgmt(3N) t_optmgmt(3N)
NAME
toptmgmt - Optionen für einen Transportendpunkt verwalten
SYNTAX
#include <sys/tiuser.h>
int toptmgmt(int fd, struct toptmgmt *req,
struct toptmgmt *ret);
BESCHREIBUNG
Die Funktion toptmgmt ermöglicht einem Transportdienstbenutzer
Protokoll-Optionen zu erhalten, zu verifizieren oder darüber mit dem
Transportanbieter zu verhandeln. fd kennzeichnet einen verbundenen
Transportendpunkt.
Die Argumente req und ret zeigen auf eine Struktur toptmgmt, die fol-
gende Elemente enthält:
struct netbuf opt;
long flags;
Das Feld opt gibt die Protokoll-Optionen an und das Feld flags wird
verwendet, um die Aktion zu spezifizieren, die mit diesen Optionen
durchgeführt werden soll.
Die Optionen werden durch die Struktur netbuf dargestellt, genauso wie
in der Adresse bei tbind. req wird verwendet, um eine bestimmte
Aktion des Transportanbieters anzufordern, und um Optionen an den
Anbieter zu senden. len gibt die Anzahl Bytes in den Optionen an, buf
zeigt auf den Optionspuffer. maxlen hat für das Argument req keine
Bedeutung. Der Transportanbieter kann Optionen und Flag-Werte durch
ret an den Benutzer zurückliefern. Für ret gibt maxlen die maximale
Größe des Optionspuffers an, und buf zeigt auf den Puffer, wo die
Optionen abgelegt werden sollen. Bei der Rückkehr gibt len die Anzahl
Bytes der zurückgelieferten Optionen an. maxlen hat für das Argument
req keine Bedeutung, muß jedoch in dem Argument ret gesetzt werden, um
die maximale Anzahl Bytes zu spezifizieren, die der Optionspuffer auf-
nehmen kann. Die aktuelle Struktur und der Inhalt der Optionen wird
durch den Transportanbieter festgelegt.
Seite 1 Reliant UNIX 5.44 Gedruckt 11/98
t_optmgmt(3N) t_optmgmt(3N)
Das Feld flags von req kann eine der folgenden Aktionen spezifizieren:
TNEGOTIATE Diese Aktion ermöglicht dem Benutzer, die Werte der
Optionen, die in req spezifiziert sind, mit dem
Transportanbieter auszuhandeln. Der Transportanbieter
wertet und handelt die angeforderten Optionen aus und
liefert die ausgehandelten Werte in ret zurück.
TCHECK Diese Aktion ermöglicht dem Benutzer zu verifizieren,
ob die in req angegebenen Optionen von dem Transport-
anbieter unterstützt werden. Bei der Rückkehr besitzt
das Feld flags der Struktur ret entweder den Wert
TSUCCESS oder TFAILURE, um dem Benutzer anzuzeigen,
ob die Optionen angeboten werden oder nicht. Diese
Flags sind nur für die TCHECK-Anfrage von Bedeutung.
TDEFAULT Diese Aktion ermöglicht dem Benutzer, die Standard-
Optionen in dem Feld opt der Struktur ret zurückzube-
kommen, die von dem Transportanbieter angeboten wer-
den. In req muß das Feld len von opt Null sein, das
Feld buf kann den Wert NULL haben.
Falls toptmgmt als Teil eines verbindungslosen Dienstes durchgeführt
wird, kann die Routine entsprechend der Flußkontrollbeschränkungen
blockieren. Die Funktion wird solange nicht beendet, bis der Trans-
portanbieter alle zuvor versendeten Dateneinheiten verarbeitet hat.
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 durchge-
führt.
TACCES Der Benutzer hat nicht die Berechtigung, die angegebe-
nen Optionen auszuhandeln.
TBADOPT Die angegebenen Protokoll-Optionen waren in einem fal-
schen Format oder enthielten ungültige Informationen.
TBADFLAG Es wurde ein ungültiges Flag angegeben.
TBUFOVFLW Die Anzahl Bytes, die für ein ankommendes Argument
erlaubt ist, ist nicht ausreichend, um den Wert des
Arguments zu speichern. Die in ret zurückzuliefernde
Information wird gelöscht.
Seite 2 Reliant UNIX 5.44 Gedruckt 11/98
t_optmgmt(3N) t_optmgmt(3N)
TSYSERR Während der Ausführung dieser Funktion ist ein System-
fehler aufgetreten.
DIAGNOSE
toptmgmt liefert bei erfolgreicher Ausführung 0 und im Fehlerfall -1
zurück, wobei dann noch terrno gesetzt wird, um den Fehler anzuzei-
gen.
SIEHE AUCH
tgetinfo(3N), topen(3N).
Seite 3 Reliant UNIX 5.44 Gedruckt 11/98