nl:: Inet
Résumé
Typedefs |
|
---|---|
InterfaceId
|
typedefstruct netif *
Indicateur pour les interfaces réseau du système. |
Variables |
|
---|---|
sIOCTLSocket = -1
|
int
|
Fonctions |
|
---|---|
CheckMulticastGroupArgs(InterfaceId aInterfaceId, const IPAddress & aAddress)
|
|
CloseIOCTLSocket(void)
|
void
Fermez le socket global créé par
GetIOCTLSocket . |
FormatInetLayerError(char *buf, uint16_t bufSize, int32_t err)
|
bool
Pour une erreur de couche Inet, renvoie une chaîne C se terminant par une valeur NULL lisible par l'humain et décrivant l'erreur.
|
GetIOCTLSocket(void)
|
int
Renvoie un socket global à usage général utile pour appeler certains IOCTL réseau.
|
GetInterfaceName(InterfaceId intfId, char *nameBuf, size_t nameBufSize)
|
NL_DLL_EXPORT INET_ERROR
Obtenez le nom d'une interface réseau.
|
INET_IsInetEvent(Weave::System::EventType aType)
|
bool
Vérifiez si System::EventType est un type d'événement de couche Inet valide.
|
InterfaceNameToId(const char *intfName, InterfaceId & intfId)
|
NL_DLL_EXPORT INET_ERROR
Recherchez le nom indiqué dans la liste des interfaces réseau.
|
LwIPBindInterface(struct raw_pcb *aRaw, InterfaceId intfId)
|
|
LwIPBindInterface(struct udp_pcb *aUDP, InterfaceId intfId)
|
|
NetmaskToPrefixLength(const uint8_t *netmask, uint16_t netmaskLen)
|
uint8_t
Calculez la longueur d'un préfixe à partir d'un masque de réseau de longueur variable.
|
ParseHostAndPort(const char *aString, uint16_t aStringLen, const char *& aHost, uint16_t & aHostLen, uint16_t & aPort)
|
Analysez une chaîne lisible contenant un hôte ou une adresse IP et un numéro de port facultatif (séparé par le caractère ":"), prenant en charge les formats suivants:
|
ParseHostPortAndInterface(const char *aString, uint16_t aStringLen, const char *& aHost, uint16_t & aHostLen, uint16_t & aPort, const char *& aInterface, uint16_t & aInterfaceLen)
|
Analysez une chaîne lisible contenant un hôte ou une adresse IP, un numéro de port facultatif (séparé par le ':') et un nom d'interface facultatif (séparé par le ''), prenant en charge les formats suivants:
|
RegisterInetLayerErrorFormatter(void)
|
void
Enregistre un outil de mise en forme des erreurs de texte pour les erreurs de couche Inet.
|
SocketsIPv4JoinLeaveMulticastGroup(int aSocket, InterfaceId aInterfaceId, const IPAddress & aAddress, int aCommand)
|
|
SocketsIPv6JoinLeaveMulticastGroup(int aSocket, InterfaceId aInterfaceId, const IPAddress & aAddress, int aCommand)
|
|
SocketsSetMulticastLoopback(int aSocket, bool aLoopback, int aProtocol, int aOption)
|
|
SocketsSetMulticastLoopback(int aSocket, IPVersion aIPVersion, bool aLoopback)
|
Classes |
|
---|---|
nl:: |
Il s'agit d'une classe interne à InetLayer qui fournit des API d'assistance pour la résolution DNS (Asynchronous Domain Name System) dans InetLayer. |
nl:: |
Il s'agit d'une classe interne à InetLayer qui fournit l'abstraction de la résolution DNS (Domain Name System) dans InetLayer. |
nl:: |
Base des classes de points de terminaison du transport Internet. |
nl:: |
son adresse IP. |
nl:: |
Les objets de cette classe représentent des points de terminaison de protocoles IP non instanciables. |
nl:: |
Informations sur un message ou une connexion entrant/sortant. |
nl:: |
Préfixe d'adresse de protocole Internet. |
nl:: |
Cela permet d'accéder aux services Internet, y compris les minuteurs, la résolution DNS (Domain Name System), le transport réseau TCP, le transport réseau UDP et le transport réseau brut, pour un seul thread. |
nl:: |
Il s'agit de la classe de base des objets comptabilisés par référence qui sont gérés par un objet InetLayer. |
nl:: |
Itérateur pour la liste des adresses IP de l'interface réseau du système |
nl:: |
Itérateur de la liste des interfaces réseau du système |
nl:: |
Les objets de cette classe représentent les points de terminaison bruts du réseau IP. |
nl:: |
Représente un ensemble d'événements d'E/S demandés/en attente sur un socket. |
nl:: |
Les objets de cette classe représentent les points de terminaison de transport TCP. |
nl:: |
Les objets de cette classe représentent des interfaces de tunnel. |
nl:: |
Les objets de cette classe représentent les points de terminaison de transport UDP. |
Union |
|
---|---|
nl:: |
Espaces de noms |
|
---|---|
nl:: |
Énumérations
@7
@7
Définitions des types d'événements de la couche Inet
Propriétés | |
---|---|
kInetEvent_DNSResolveComplete
|
Événement d'achèvement de la résolution du nom DNS. |
kInetEvent_RawDataReceived
|
Événement de réception de données sur un point de terminaison brut InetLayer. |
kInetEvent_TCPConnectComplete
|
Événement d'achèvement de la connexion TCP. |
kInetEvent_TCPConnectionReceived
|
Événement pour la réception d'une connexion TCP. |
kInetEvent_TCPDataReceived
|
Événement de réception de données via une connexion TCP. |
kInetEvent_TCPDataSent
|
Événement lié à la transmission de données via une connexion TCP. |
kInetEvent_TCPError
|
Événement lié à une erreur sur une connexion TCP. |
kInetEvent_TunDataReceived
|
Événement de réception de données via un tunnel Weave. |
kInetEvent_UDPDataReceived
|
Événement de réception de données sur UDP. |
DNSOptions
DNSOptions
Options contrôlant le fonctionnement de la résolution d'adresses IP.
Propriétés | |
---|---|
kDNSOption_AddrFamily_Any
|
Renvoie les adresses IPv4 et/ou IPv6 dans l'ordre renvoyé par le serveur de noms. |
kDNSOption_AddrFamily_IPv4Only
|
Renvoyez uniquement des adresses IPv4. |
kDNSOption_AddrFamily_IPv4Preferred
|
Renvoie des adresses IPv4 et/ou IPv6, les adresses IPv4 figurant en premier. |
kDNSOption_AddrFamily_IPv6Only
|
Renvoyez uniquement des adresses IPv6. |
kDNSOption_AddrFamily_IPv6Preferred
|
Renvoie des adresses IPv4 et/ou IPv6, les adresses IPv6 figurant en premier. |
kDNSOption_AddrFamily_Mask
|
Bits situés dans une valeur entière DNSOptions représentant la famille d'adresses souhaitée. |
kDNSOption_Flags_Mask
|
Bits d'une valeur entière DNSOptions réservés aux indicateurs. |
kDNSOption_ValidFlags
|
Ensemble de tous les indicateurs DNSOption valides. |
IPAddressType
IPAddressType
Famille d'adresses IP.
Les valeurs de type IPAddressType
sont renvoyées par la méthode IPAddress::Type()
. Ils indiquent la famille d'adresses associée à l'utilisation de l'adresse.
Propriétés | |
---|---|
kIPAddressType_Any
|
Adresse Internet non spécifiée (indépendante de la version du protocole) |
kIPAddressType_IPv4
|
Protocole Internet version 4. |
kIPAddressType_IPv6
|
Protocole Internet version 6. |
kIPAddressType_Unknown
|
Non utilisé. |
IPProtocol
IPProtocol
Les numéros de certains des protocoles de la famille IP.
Propriétés | |
---|---|
kIPProtocol_ICMPv4
|
ICMPv4. |
kIPProtocol_ICMPv6
|
ICMPv6. |
IPV6MulticastGroup
IPV6MulticastGroup
Identifiants de groupe de multidiffusion de protocole Internet.
Les valeurs de type IPV6MulticastGroup
permettent d'appeler la méthode IPAddress::MakeIPv6Multicast()
. Ils indiquent des identifiants de groupe distingués enregistrés par l'IETF auprès de l'IANA.
Propriétés | |
---|---|
kIPV6MulticastGroup_AllRouters
|
RFC 4291. |
IPVersion
IPVersion
Version du protocole IP utilisé.
Propriétés | |
---|---|
kIPVersion_4
|
IPv4 : |
kIPVersion_6
|
IPv6 : |
IPv6MulticastFlag
IPv6MulticastFlag
Options de multidiffusion du protocole Internet v6
Les valeurs du type IPv6MulticastFlag
sont utilisées pour appeler les méthodes IPAddress::MakeIPv6Multicast()
. Elles indiquent le type d'adresse de multidiffusion IPv6 à créer. Ces numéros sont enregistrés par l'IETF auprès de l'IANA.
Propriétés | |
---|---|
kIPv6MulticastFlag_Prefix
|
L'adresse de multidiffusion est (1) basée sur un préfixe de réseau. |
kIPv6MulticastFlag_Transient
|
L'adresse de multidiffusion est (1) transitoire (c'est-à-dire attribuée dynamiquement) au lieu de (0) connue (c'est-à-dire attribuée par l'IANA). |
IPv6MulticastScope
IPv6MulticastScope
Champ d'application de l'adresse multicast de protocole Internet.
Les valeurs de type IPv6MulticastScope
permettent d'appeler la méthode IPAddress::MakeIPv6Multicast()
. Ils indiquent l'étendue routable du groupe de multidiffusion désigné par le résultat. Ces numéros sont enregistrés par l'IETF auprès de l'IANA.
Propriétés | |
---|---|
kIPv6MulticastScope_Admin
|
Champ d'application local du domaine. |
kIPv6MulticastScope_Global
|
Champ d'application global. |
kIPv6MulticastScope_IPv4
|
Champ d'application du domaine local ("IPv4"). |
kIPv6MulticastScope_Interface
|
Champ d'application de l'interface locale. |
kIPv6MulticastScope_Link
|
Champ d'application de type "Lien local". |
kIPv6MulticastScope_Organization
|
Champ d'application local de l'organisation. |
kIPv6MulticastScope_Site
|
Champ d'application local du domaine. |
Typedefs
InterfaceId
struct netif * InterfaceId
Indicateur pour les interfaces réseau du système.
Pour assurer la portabilité, vous devez ne jamais être témoin de cet alias. À l'avenir, elle pourra être remplacée par une classe opaque concrète.
Remarque: Le terme "identifiant d'interface" fait également référence de manière conventionnelle aux 64 bits inférieurs d'une adresse IPv6 dans tous les documents pertinents des normes IETF, où l'abréviation "IID" est souvent utilisée. Dans ce texte, le terme « indicateur d'interface » fait référence aux valeurs de ce type d'alias.
Variables
sIOCTLSocket
int sIOCTLSocket = -1
Fonctions
CheckMulticastGroupArgs
INET_ERROR CheckMulticastGroupArgs( InterfaceId aInterfaceId, const IPAddress & aAddress )
CloseIOCTLSocket
void CloseIOCTLSocket( void )
Fermez le socket global créé par GetIOCTLSocket
.
Cette fonction est fournie lorsque le fait de laisser le socket IOCTL mondial ouvert serait considéré comme une fuite.
Remarque: Cette fonction n'est PAS thread-safe pour GetIOCTLSocket
.
FormatInetLayerError
bool FormatInetLayerError( char *buf, uint16_t bufSize, int32_t err )
Pour une erreur de couche Inet, renvoie une chaîne C se terminant par une valeur NULL lisible par l'humain et décrivant l'erreur.
Détails | |||||||
---|---|---|---|---|---|---|---|
Paramètres |
|
||||||
Renvoie |
"true" si une chaîne de description a été écrite dans le tampon fourni.
|
||||||
Renvoie |
"false" si l'erreur fournie n'était pas une erreur de couche Inet.
|
GetIOCTLSocket
int GetIOCTLSocket( void )
Renvoie un socket global à usage général utile pour appeler certains IOCTL réseau.
Cette fonction est thread-safe sur toutes les plates-formes.
GetInterfaceName
NL_DLL_EXPORT INET_ERROR GetInterfaceName( InterfaceId intfId, char *nameBuf, size_t nameBufSize )
Obtenez le nom d'une interface réseau.
Writes the name of the network interface as \c NUL terminated text string at \c nameBuf. The name of the unspecified network interface is the empty string.
Détails | |||||||
---|---|---|---|---|---|---|---|
Paramètres |
|
||||||
Valeurs renvoyées |
|
INET_IsInetEvent
bool INET_IsInetEvent( Weave::System::EventType aType )
Vérifiez si System::EventType est un type d'événement de couche Inet valide.
Détails | |||
---|---|---|---|
Paramètres |
|
||
Renvoie |
"true" si la valeur est comprise dans la plage énumérée ; sinon, "false".
|
InterfaceNameToId
NL_DLL_EXPORT INET_ERROR InterfaceNameToId( const char *intfName, InterfaceId & intfId )
Recherchez le nom indiqué dans la liste des interfaces réseau.
On LwIP, this function must be called with the LwIP stack lock acquired. The \c intfId parameter is not updated unless the value returned is \c INET_NO_ERROR. It should be initialized with \c INET_NULL_INTERFACEID before calling this function.
Détails | |||||||
---|---|---|---|---|---|---|---|
Paramètres |
|
||||||
Valeurs renvoyées |
|
LwIPBindInterface
INET_ERROR LwIPBindInterface( struct raw_pcb *aRaw, InterfaceId intfId )
LwIPBindInterface
INET_ERROR LwIPBindInterface( struct udp_pcb *aUDP, InterfaceId intfId )
NetmaskToPrefixLength
uint8_t NetmaskToPrefixLength( const uint8_t *netmask, uint16_t netmaskLen )
Calculez la longueur d'un préfixe à partir d'un masque de réseau de longueur variable.
ParseHostAndPort
INET_ERROR ParseHostAndPort( const char *aString, uint16_t aStringLen, const char *& aHost, uint16_t & aHostLen, uint16_t & aPort )
Analysez une chaîne lisible contenant un hôte ou une adresse IP et un numéro de port facultatif (séparé par le caractère ":"), prenant en charge les formats suivants:
: : - [
]:
Détails | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
Paramètres |
|
||||||||||
Renvoie |
INET_ERROR_INVALID_HOST_NAME Si l'entrée à analyser est de longueur nulle ou n'est pas rédigée correctement.
|
||||||||||
Renvoie |
INET_ERROR_HOST_NAME_TOO_LONG Si le nom d'hôte dépasse 253 caractères.
|
||||||||||
Renvoie |
INET_NO_ERROR En cas de réussite.
|
ParseHostPortAndInterface
INET_ERROR ParseHostPortAndInterface( const char *aString, uint16_t aStringLen, const char *& aHost, uint16_t & aHostLen, uint16_t & aPort, const char *& aInterface, uint16_t & aInterfaceLen )
Analysez une chaîne lisible contenant un hôte ou une adresse IP, un numéro de port facultatif (séparé par le ':') et un nom d'interface facultatif (séparé par le ''), prenant en charge les formats suivants:
% : : % % : : % % - [
]: - [
]: %
Détails | |||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Paramètres |
|
||||||||||||||
Renvoie |
INET_ERROR_INVALID_HOST_NAME Si l'entrée à analyser est de longueur nulle ou n'est pas rédigée correctement.
|
||||||||||||||
Renvoie |
INET_ERROR_HOST_NAME_TOO_LONG Si le nom d'hôte dépasse 253 caractères.
|
||||||||||||||
Renvoie |
INET_NO_ERROR En cas de réussite.
|
RegisterInetLayerErrorFormatter
void RegisterInetLayerErrorFormatter( void )
Enregistre un outil de mise en forme des erreurs de texte pour les erreurs de couche Inet.
SocketsIPv4JoinLeaveMulticastGroup
INET_ERROR SocketsIPv4JoinLeaveMulticastGroup( int aSocket, InterfaceId aInterfaceId, const IPAddress & aAddress, int aCommand )
SocketsIPv6JoinLeaveMulticastGroup
INET_ERROR SocketsIPv6JoinLeaveMulticastGroup( int aSocket, InterfaceId aInterfaceId, const IPAddress & aAddress, int aCommand )
SocketsSetMulticastLoopback
INET_ERROR SocketsSetMulticastLoopback( int aSocket, bool aLoopback, int aProtocol, int aOption )
SocketsSetMulticastLoopback
INET_ERROR SocketsSetMulticastLoopback( int aSocket, IPVersion aIPVersion, bool aLoopback )