|
Beschreibung
Die Verwendung der Funktionen inet_addr(), inet_lnaof(), inet_makeaddr(), inet_netof(), inet_network() und inet_ntoa() ist nur in der Adressfamilie AF_INET sinnvoll.
Die Funktion inet_addr() konvertiert die Zeichenkette, auf die der Parameter cp zeigt, von der für IPv4-Adressen üblichen Punktschreibweise in einen ganzzahligen Wert. Dieser ganzzahlige Wert kann dann als Internet-Adresse verwendet werden.
Die Funktion inet_lnaof() extrahiert aus der im Parameter in übergebenen Internet-Rechneradresse die lokale Netzadresse in der Byte-Reihenfolge des Rechners.
Die Funktion inet_makeaddr() erstellt eine Internet-Adresse aus
dem im Parameter net angegebenen Subnetz-Anteil der Internet-Adresse und
dem im Parameter lna angegebenen subnetz-lokalen Adressteil.
Subnetz-Anteil der Internet-Adresse und subnetz-lokaler Adressteil werden jeweils in Byte-Reihenfolge des Rechners übergeben.
Die Funktion inet_netof() extrahiert aus der im Parameter in übergebenen Internet-Adresse die Netznummer in der Byte-Reihenfolge des Rechners.
Die Funktion inet_network() konvertiert die Zeichenkette, auf die der Zeiger cp zeigt von der für IPv4-Adressen üblichen Punktschreibweise in einen ganzzahligen Wert. Dieser ganzzahlige Wert kann dann als Subnetz-Anteil der Internet-Adresse verwendet werden.
Die Funktion inet_ntoa() konvertiert die im Parameter in übergebene Internet-Adresse in eine Zeichenkette gemäß der für IPv4-Adressen üblichen Punktschreibweise.
Alle Internet-Adressen werden in der Netz-Byte-Reihenfolge zurückgeliefert. In der Netz-Byte-Reihenfolge sind die Bytes von links nach rechts angeordnet.
In Punktschreibweise angegebene Werte können in den folgenden Formaten vorliegen:
a.b.c.d
Bei Angabe einer vierteiligen Adresse wird jeder Teil als ein Daten-Byte interpretiert und von links nach rechts den vier Bytes einer Internet-Adresse zugeordnet.a.b.c
Bei Angabe einer dreiteiligen Adresse wird der letzte Teil als 16-bit-Sequenz interpretiert und in den beiden rechten Bytes der Internet-Adresse abgelegt. Auf diese Weise können dreiteilige Adressformate problemlos zur Angabe von Class-B-Adressen verwendet werden (z.B. 128.net.host).a.b
Bei Angabe einer zweiteiligen Adresse wird der letzte Teil als 24-bit-Sequenz interpretiert und in den drei rechten Bytes der Internet-Adresse abgelegt. Auf diese Weise können zweiteilige Adressformate problemlos zur Angabe von Class-A-Adressen verwendet werden (z.B. net.host).a
Bei Angabe einer einteiligen Adresse wird der Wert ohne Änderung der Byte-Reihenfolge direkt in der Netzadresse abgelegt.
Bei den Zahlen, die als Adressteile in Punktschreibweise angegeben sind, kann es sich um Dezimal-, Oktal- oder Sedezimalzahlen handeln:
Zahlen, denen weder 0 noch 0x bzw. 0X vorangestellt ist, werden als Dezimalzahlen interpretiert.
Zahlen, denen 0 vorangestellt ist, werden als Oktalzahlen interpretiert.
Zahlen, denen 0x oder 0X vorangestellt ist, werden als Sedezimalzahlen interpretiert.
Returnwert
Bei erfolgreicher Ausführung liefert inet_addr() die Internet-Adresse zurück. Andernfalls wird (in_addr_t) -1 zurückgeliefert.
Bei erfolgreicher Ausführung liefert inet_network() die umgesetzte Internet-Nummer zurück. Andernfalls wird (in_addr_t) -1 zurückgeliefert.
Die Funktion inet_makeaddr() liefert die erstellte Internet-Adresse zurück.
Die Funktion inet_lnaof() liefert die lokale Netzadresse zurück.
Die Funktion inet_netof() liefert die Netznummer zurück.
Die Funktion inet_ntoa() liefert einen Zeiger auf die Netzadresse in der für Internet üblichen Punktschreibweise zurück.
Fehler
Es sind keine Fehler definiert.
Hinweis
Der Return-Wert von inet_ntoa() zeigt möglicherweise auf statische Daten, die durch nachfolgende Aufrufe von inet_ntoa() überschrieben werden können.