On Tue, Oct 17, 2000 at 08:50:57PM +0200, Reinhard Foerster wrote:
On Tue, Oct 17, 2000 at 05:01:01PM +0200, Tobias Koenig wrote:
Hallo Reinhard,
kennt sich jemand mit der Funktion 'res_query()' aus der Library libresolv.so aus? Wenn ich einen Request für einen MX-Eintrag an einen NameServer schicke, sendet er mir Daten zurück, allerdings kenne ich das Format nicht, mit dem man diese Daten sinnvoll strukturieren kann. Hat jemand schon mal dieses Problem in einem C-Programm gelöst?
Fertig gelöst nicht, aber probiert. Die Antwort, die du mit res_query bekommst, ist einfach der Inhalt des UDP-Antwortpakets, das der DNS-Server an deinen Rechner zurueckgeschickt hat. Ich bin darauf gekommen, weil die im letzten Parameter zurueckgelieferte Antwortlaenge immer gleich der Paketlaenge der Antwort (Payload des UDP-Pakets) ist Das Pakte musst du nun wohl per Hand auseinandernehmen. Vielleicht findet sich auch eine nette Bibliothek. Wie das Paket aufgebaut ist, steht in RFC1035 ab Seite 24. Alles von, mit und über DNS gibt es auf http://www.dns.net/dnsrd/
Den Quellkode eines MTAs könntest du dir mal anschauen. Die muessen ja auch irgendwie an die MXe rankommen.
Habe ich schon, aber deren Code ist etwas zu komplex, man kann die eigentliche Abfrage nur schwer extrahieren.
Willst du einen neuen MTA schreiben
Naja, zumindestens probieren
Ciao, Tobias