|
Hauptseite - Welches System? - Hardware - Software - Emulatoren - |
Internet MausNet Programmieren Verweise Über |
Viele Funktionen des STinG API geben negative Fehlercodes zurück, wenn
während der Ausführung ein Problem auftrat. Es ist ermüdend, in einem
Client für jeden Fehler, der auftreten könnte, einen entsprechenden Text
bereitzustellen. Daher stellt STinG für jeden Fehler eine Beschreibung
zur Verfügung, wenn der Client den Fehlercode an diesen Aufruf übergibt.
Ein Pointer auf eine Textzeile, die in eine Ausgabe- oder Statuszeile
geschrieben werden kann, wird zurückgeliefert. Die Zeilen dürfen maximal
40 Zeichen lang sein.
Diese Funktion wird benutzt, um Strings aus der DEFAULT.CFG auszulesen.
Wenn zum Beispiel die Zeile
Existiert die gesuchte Variable nicht, so wird ein Pointer auf "0"
zurückgeliefert, wie auch für den Fall, daß kein
"Nicht-Leerzeichen" nach dem Gleichheitszeichen folgt. Wenn nicht einmal das
Gleichheitszeichen existiert, so wird die pure Anwesenheit der Variable
angezeigt, indem ein Pointer auf "1" zurückgeliefert wird.
Diese Funktion kann dazu benutzt werden, um einen bestimmten Konfigurationsstring
anzulegen oder zu ändern. Eine neue Variable, deren Name durch den Text
festgelegt wird, auf den 'specifier' zeigt, wird angelegt, wenn sie nicht
existiert. Der neue Wert ist der Text, auf den 'value' zeigt. Will man zum
Beispiel dasselbe erreichen, als wenn beim Booten
Diese Funktion benutzt den MC680X0-Befehl 'TAS', der nicht durch einen
Interrupt unterbrochen werden kann, um eine Semaphore zu setzen, die durch
die dem Aufruf übergebene Zahl festgelegt ist. Wenn sie vorher mit der
gleichen Zahl aufgerufen wurde (d.h. "lock denied"), wird TRUE zurückgeliefert.
Anderenfalls erhält das aufrufende Programm den 'lock' und es wird
FALSE zurückgeliefert.
Die Lock-Zahlen werden alle für einen speziellen Zweck angemeldet, wer
möchte, daß ein neuer "lock" definiert wird, muß das mit uns
absprechen!
Gibt eine Semaphore frei.
Diese Funktion gibt eine Semaphore frei, wobei der gegenwärtige Status
egal ist. Diese Funktion sollte aufgerufen werden, nachdem der "lock"
erfolgreich über 'set_flag' angefordert wurde und der Zugriff beendet
wurde. Es wird nichts zurückgeliefert.
Diese Funktion erfragt zu einem Domain-Namen die IP-Adresse und umgekehrt.
Der Parameter 'inp' ist ein Pointer auf den Input-String, welcher entweder
eine IP-Adresse oder ein Domainname ist. 'real' ist entweder NULL oder ein
Pointer auf einen Pointer auf ein Zeichen, der mit einem Pointer auf den gefundenen
Domainnamen gefüllt wird. Wenn 'inp' auf einen Domainnamen zeigt,
wird überprüft, ob es sich um ein Alias handelt, und der richtige
Domainname wird über 'real' zurückgegeben. Alle gefundenen IP-Adressen
werden in das Adress-Array eingetragen, auf das 'lst' zeigt, die maximale
Länge der Liste wird in 'len' festgelegt.
Wenn real nicht NULL ist, wird in '*real' ein Pointer eingetragen. Nachdem
der String, auf den er zeigt, ausgewertet wurde, muß der Bereich
über KRfree freigegeben werden:
Wenn RESOLVE.STX nicht geladen ist, ist nur eine Dummyfunktion verfügbar.
Diese gibt immer E_CANTRESOLVE zurück.
Der Miscellaneous Manager
Der 'Miscellaneous'-Manager enthält alle Funktionen, die thematisch nicht
in die anderen Manager hineinpassen. Daher ist diese Sammlung etwas
willkürlich.
Die Aufrufe im einzelnen:
Die Funktion 'get_err_text'
char * cdecl get_err_text (int16 error_code);
Gibt für die angegebene Fehlernummer die Beschreibung aus.
Die Funktion 'getvstr'
char * cdecl getvstr (char *specifier);
Ermittelt Konfigurationsstrings.
THREADING = 200
in der DEFAULT.CFG existiert, dann wird der Aufruf
getvstr ("THREADING");
einen Pointer auf den String "200" zurückliefern. Es wird nicht case-sensitiv
gesucht, daher würde es zum selben Ergebnis führen, wenn man
nach "threading" sucht. Der Pointer zeigt auf das erste "Nicht-Leerzeichen"
nach dem "=".
Die Funktion 'setvstr'
int16 cdecl setvstr (char *specifier, char *value);
Setzt Konfigurationsstrings.
DIALER = 10.11.12.13
in der DEFAULT.CFG stünde, muß die Funktion folgendermaßen
aufgerufen werden:
setvstr ("DIALER", "10.11.12.13");
Danach werden Aufrufe von getvstr mit 'specifier'="DIALER" einen Pointer auf
den Text "10.11.12.13" zurückgeben.
Die Funktion 'set_flag'
int16 cdecl set_flag (int16 flag_number);
Fordert eine Semaphore an.
Die Funktion clear_flag
Die Funktion 'resolve'
int16 cdecl resolve (char *inp, char **real, uint32 *lst, int16 len);
Gibt DNS-Anfragen aus.
KRfree (*real);
Gibt die Anzahl der eingetragenen IP-Adressen oder einen Fehler zurück.
Zurück zur Startseite
Zum Anfang der Seite
English version not yet available. |