Museum

Home

Lab Overview

Retrotechnology Articles

⇒ Online Manual

Media Vault

Software Library

Restoration Projects

Artifacts Sought

t_alloc(3N)                                                     t_alloc(3N)

NAME
     talloc - Bibliotheksstruktur anlegen

SYNTAX
     #include <sys/tiuser.h>

     char *talloc(int fd, int structtype, int fields);

BESCHREIBUNG
     Die Funktion reserviert dynamisch Speicher für die verschiedenen Argu-
     mentstrukturen der Transportfunktionen. Sie reserviert Speicher für
     die angegebene Struktur und für die Puffer, auf die in den Strukturen
     verwiesen wird.

     Die Struktur, für die Speicher reserviert werden soll, wird durch
     structtype festgelegt und kann eine der folgenden Strukturen sein:

     TBIND          struct tbind

     TCALL          struct tcall

     TOPTMGMT       struct toptmgmt

     TDIS           struct tdiscon

     TUNITDATA      struct tunitdata

     TUDERROR       struct tuderr

     TINFO          struct tinfo

     Jede dieser Strukturen kann danach als Argument für eine oder mehrere
     Transportfunktionen dienen.

     Jede der obigen Strukturen, außer TINFO, enthält zumindest ein Feld
     vom Typ struct netbuf. Für jedes Feld dieses Typs kann der Benutzer
     angeben, ob für den Puffer dieses Felds ebenfalls Speicher reserviert
     werden soll. Das Argument fields gibt diese Option an, wobei es durch
     Kombinationen einer ODER-Verknüpfung der folgenden Werte gebildet
     wird:

     TADDR    addr-Feld der Strukturen von tbind, tcall, tunitdata oder
               tuderr

     TOPT     opt-Feld der Strukturen von toptmgmt, tcall, tunitdata
               oder tuderr

     TUDATA   udata-Feld der Strukturen von tcall, tdiscon oder
               tunitdata

     TALL     alle relevanten Felder der gegebenen Struktur




Seite 1                      Reliant UNIX 5.44               Gedruckt 11/98

t_alloc(3N)                                                     t_alloc(3N)

     Für jedes in fields spezifizierte Feld legt talloc Speicher für die
     Puffer an, die dem Feld zugeordnet sind, und initialisiert den Zeiger
     buf und den Wert maxlen entsprechend. Die Größe des angelegten Puffers
     basiert auf derselben Information wie die von topen und tgetinfo
     gelieferte Information an den Benutzer. Daher muß fd auf den Trans-
     portendpunkt verweisen, über den die neu angelegte Struktur übergeben
     wird, so daß auf die entsprechende Größeninformation zugegriffen wer-
     den kann. Wenn der Größenwert, der zu irgendeinem Feld gehört -1 oder
     -2 ist (siehe bei topen oder tgetinfo), ist talloc nicht in der
     Lage die Größe des anzulegenden Puffers zu ermitteln, und schlägt
     somit fehl. Dabei wird terrno auf TSYSERR und errno auf EINVAL
     gesetzt. Für jedes nicht angegebene Feld in fields wird buf auf NULL
     und maxlen auf 0 gesetzt.

     Die Benutzung von talloc für das Anlegen von Strukturen gewährleistet
     die Kompatibilität von Benutzerprogrammen mit zukünftigen Versionen
     der Transportschnittstelle.

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

     TBADF           Der angegebene Dateideskriptor verweist nicht auf
                     einen Transportendpunkt.

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

DIAGNOSE
     Bei erfolgreicher Ausführung liefert die Routine einen Zeiger auf die
     neuangelegte Struktur zurück. Im Fehlerfall wird NULL zurückgeliefert.

SIEHE AUCH
     tfree(3N), tgetinfo(3N), topen(3N).





















Seite 2                      Reliant UNIX 5.44               Gedruckt 11/98

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