res_query, Subroutine
Zweck
Stellt eine Schnittstelle zum Serverabfragemechanismus bereit.
Bibliothek
Standard-C-Bibliothek (libc.a)
Syntax
#include <sys/types.h>
#include <netinet/in.h>
#include <arpa/nameser.h>
#include <resolv.h>char * DomName;
int Class;
int Type;
u_char * Answer;
int AnswerLength;
Beschreibung
Die Subroutine res_query stellt eine Schnittstelle zum Serverabfragemechanismus bereit. Sie erstellt eine Abfrage, sendet sie an den lokalen Server, wartet auf eine Antwort und führt vorläufige Prüfungen für die Antwort durch. Die Abfrage fordert Informationen des angegebenen Typs und der angegebenen Klasse für den vollständig qualifizierten Domänennamen an, der im Parameter DomName angegeben ist. Die Antwortnachricht verbleibt im Antwortpuffer, dessen Größe durch den Parameter AnswerLength angegeben wird, der vom Aufrufenden bereitgestellt wird.
Die Subroutine res_query ist eine aus einer Gruppe von Subroutinen, die den Auflöser bilden, einer Gruppe von Funktionen, die Domänennamen auflösen. Die Datenstruktur _res enthält globale Informationen, die von den Resolver-Subroutinen verwendet werden. Die Datei /usr/include/resolv.h enthält die Strukturdefinition _res .
Alle Anwendungen, die die Subroutine res_query enthalten, müssen mit einem bestimmten Wert für das Makro _BSD-Datentabelle kompiliert werden. Zulässige Werte sind 43 und 44. Außerdem müssen alle Socketanwendungen die BSD-Bibliothek libbsd.a enthalten.
Parameter
| Element | Beschreibung |
|---|---|
| DomName | Verweist auf den Namen der Domäne. Wenn der Parameter DomName auf einen Einzelkomponentennamen verweist und die Struktur RES_DEFNAMES wie standardmäßig festgelegt ist, hängt die Subroutine den Standarddomänennamen an den Einzelkomponentennamen an. Der aktuelle Domänenname wird durch den verwendeten Namensserver definiert oder in der Datei /etc/resolv.conf angegeben. |
| class | Gibt einen der folgenden Werte an:
|
| Typ | Erfordert einen der folgenden Werte:
|
| Antwort | Verweist auf eine Adresse, an der die Antwort gespeichert wird |
| AnswerLength | Gibt die Größe des Antwortpuffers an. |
Rückgabewerte
Nach erfolgreicher Beendigung gibt die Subroutine res_query die Größe der Antwort zurück. Bei erfolglosem Abschluss gibt die Unterroutine res_query den Wert -1 zurück und setzt den Wert h_errno auf den entsprechenden Fehler.
Dateien
| Element | Beschreibung |
|---|---|
| /etc/resolv.conf | Enthält den Namen des Namensservers und der Domäne. |