nl :: Inet
Résumé
Typedefs | |
---|---|
InterfaceId | typedefstruct netif * Indicateur pour les interfaces réseau du système. |
Variables | |
---|---|
sIOCTLSocket = -1 | int |
Les fonctions | |
---|---|
CheckMulticastGroupArgs (InterfaceId aInterfaceId, const IPAddress & aAddress) | |
CloseIOCTLSocket (void) | void Fermez la socket globale créée par GetIOCTLSocket . |
FormatInetLayerError (char *buf, uint16_t bufSize, int32_t err) | bool Étant donné une erreur de couche Inet, renvoie une chaîne C terminée par NULL lisible par l'homme décrivant l'erreur. |
GetIOCTLSocket (void) | int Renvoie un socket global à usage général utile pour appeler certains IOCTL du 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 un System::EventType est un type d'événement de couche Inet valide. |
InterfaceNameToId (const char *intfName, InterfaceId & intfId) | NL_DLL_EXPORT INET_ERROR Recherchez dans la liste des interfaces réseau le nom indiqué. |
LwIPBindInterface (struct raw_pcb *aRaw, InterfaceId intfId) | |
LwIPBindInterface (struct udp_pcb *aUDP, InterfaceId intfId) | |
NetmaskToPrefixLength (const uint8_t *netmask, uint16_t netmaskLen) | uint8_t Calculer une longueur de 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 par l'homme contenant un hôte ou une adresse IP et un numéro de port facultatif (séparé par un ':'), 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 par l'homme contenant un hôte ou une adresse IP, un numéro de port facultatif (séparé par un ':') et un nom d'interface facultatif (séparé par un ''), prenant en charge les formats suivants : |
RegisterInetLayerErrorFormatter (void) | void Enregistrez un formateur d'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) |
Des classes | |
---|---|
nl :: Inet :: AsyncDNSResolverSockets | Ceci est une classe interne InetLayer qui fournit des API d' assistance pour la résolution de noms de domaine Asynchronous System (DNS) dans InetLayer . |
nl :: Inet :: DNSResolver | Ceci est une classe interne InetLayer qui fournit l'abstraction de la résolution Domain Name System (DNS) dans InetLayer . |
nl :: Inet :: EndPointBasis | Base des classes de points de terminaison de transport Internet. |
nl :: Inet :: IPAddress | Adresse de protocole Internet. |
nl :: Inet :: IPEndPointBasis | Les objets de cette classe représentent des points de terminaison de protocole IP non instanciables. |
nl :: Inet :: IPPacketInfo | Informations sur un message/une connexion entrant/sortant. |
nl :: Inet :: IPPrefix | Préfixe d'adresse de protocole Internet. |
nl :: Inet :: InetLayer | 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 :: Inet :: InetLayerBasis | Ceci est la classe de base des objets gérés par référence compté par un InetLayer objet. |
nl :: Inet :: InterfaceAddressIterator | Itérateur pour la liste des adresses IP de l'interface réseau du système. |
nl :: Inet :: InterfaceIterator | Itérateur pour la liste des interfaces réseau du système. |
nl :: Inet :: RawEndPoint | Les objets de cette classe représentent des points de terminaison de réseau IP bruts. |
nl :: Inet :: SocketEvents | Représente un ensemble d'événements d'E/S demandés/en attente sur un socket. |
nl :: Inet :: TCPEndPoint | Les objets de cette classe représentent les points de terminaison de transport TCP. |
nl :: Inet :: TunEndPoint | Les objets de cette classe représentent les interfaces de tunnel. |
nl :: Inet :: UDPEndPoint | Les objets de cette classe représentent des points de terminaison de transport UDP. |
Syndicats | |
---|---|
nl :: Inet :: PeerSockAddr |
Espaces de noms | |
---|---|
nl :: Inet :: Plate - forme |
Énumérations
@7
@7
Les définitions de type d'événement de couche Inet.
Propriétés | |
---|---|
kInetEvent_DNSResolveComplete | L'événement pour l'achèvement de la résolution de nom DNS. |
kInetEvent_RawDataReceived | L'événement pour la réception de données sur un InetLayer point final brut. |
kInetEvent_TCPConnectComplete | L'événement pour l'achèvement de la connexion TCP. |
kInetEvent_TCPConnectionReceived | L'événement pour la réception de la connexion TCP. |
kInetEvent_TCPDataReceived | L'événement pour la réception de données via une connexion TCP. |
kInetEvent_TCPDataSent | L'événement pour la transmission de données sur une connexion TCP. |
kInetEvent_TCPError | L'événement pour une erreur sur une connexion TCP. |
kInetEvent_TunDataReceived | L'événement pour la réception de données sur un tunnel Weave. |
kInetEvent_UDPDataReceived | L'événement pour la réception de données via UDP. |
Options DNS
DNSOptions
Options contrôlant la manière dont la résolution d'adresse IP est effectuée.
Type d'adresse IP
IPAddressType
Famille d'adresses de protocole Internet.
Les valeurs du IPAddressType
type sont retournés par le IPAddress::Type()
méthode. Ils indiquent la famille d'adresses qu'entraîne l'utilisation de l'adresse.
IPProtocole
IPProtocol
IPV6Groupe de multidiffusion
IPV6MulticastGroup
Identifiants de groupe de multidiffusion de protocole Internet.
Les valeurs du IPV6MulticastGroup
type sont utilisés pour appeler le IPAddress::MakeIPv6Multicast()
méthode. Ils indiquent les identifiants de groupe distinctifs enregistrés par l'IETF auprès de l'IANA.
Propriétés | |
---|---|
kIPV6MulticastGroup_AllRouters | RFC 4291. |
Version IP
IPVersion
Drapeau de multidiffusion IPv6
IPv6MulticastFlag
Indicateurs de multidiffusion du protocole Internet v6.
Les valeurs du IPv6MulticastFlag
type sont utilisés pour appeler les IPAddress::MakeIPv6Multicast()
méthodes. Ils indiquent le type d'adresse multicast IPv6 à créer. Ces numéros sont enregistrés par l'IETF auprès de l'IANA.
Portée de multidiffusion IPv6
IPv6MulticastScope
Portée de l'adresse de multidiffusion du protocole Internet.
Les valeurs du IPv6MulticastScope
type sont utilisés pour appeler le IPAddress::MakeIPv6Multicast()
méthode. Ils indiquent la portée routable du groupe multicast désigné par le résultat. Ces numéros sont enregistrés par l'IETF auprès de l'IANA.
Typedefs
Id de l'interface
struct netif * InterfaceId
Indicateur pour les interfaces réseau du système.
La portabilité dépend du fait de ne jamais être témoin de cet alias. Il pourrait être remplacé par une classe opaque concrète à l'avenir.
Remarque : le terme « identifiant d'interface » se réfère également de manière conventionnelle aux 64 bits inférieurs d'une adresse IPv6 dans tous les documents de normes IETF pertinents, où l'abréviation « IID » est souvent utilisée. Dans ce texte, le terme « indicateur d'interface » désigne des valeurs de ce type alias.
Variables
sIOCTLSocket
int sIOCTLSocket = -1
Les fonctions
VérifierMulticastGroupArgs
INET_ERROR CheckMulticastGroupArgs( InterfaceId aInterfaceId, const IPAddress & aAddress )
FermerIOCTLSocket
void CloseIOCTLSocket( void )
Fermez la socket globale créée par GetIOCTLSocket
.
Cette fonction est fournie pour les cas où laisser le socket IOCTL global ouvert serait enregistré comme une fuite.
NB: Cette fonction est thread-safe par rapport à GetIOCTLSocket
.
FormatInetLayerError
bool FormatInetLayerError( char *buf, uint16_t bufSize, int32_t err )
Étant donné une erreur de couche Inet, renvoie une chaîne C terminée par NULL lisible par l'homme décrivant l'erreur.
Des détails | |||||||
---|---|---|---|---|---|---|---|
Paramètres |
| ||||||
Retour | true Si une chaîne de description a été écrite dans le tampon fourni. | ||||||
Retour | false Si l'erreur fournie n'était pas une erreur de couche Inet. |
ObtenirIOCTLSocket
int GetIOCTLSocket( void )
Renvoie un socket global à usage général utile pour appeler certains IOCTL du réseau.
Cette fonction est thread-safe sur toutes les plateformes.
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.
Des détails | |||||||
---|---|---|---|---|---|---|---|
Paramètres |
| ||||||
Valeurs de retour |
|
INET_IsInetEvent
bool INET_IsInetEvent( Weave::System::EventType aType )
Vérifiez si un System::EventType est un type d'événement de couche Inet valide.
Des détails | |||
---|---|---|---|
Paramètres |
| ||
Retour | true s'il se situe dans la plage énumérée ; sinon, faux. |
NomInterfaceVersId
NL_DLL_EXPORT INET_ERROR InterfaceNameToId( const char *intfName, InterfaceId & intfId )
Recherchez dans la liste des interfaces réseau le nom indiqué.
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.
Des détails | |||||||
---|---|---|---|---|---|---|---|
Paramètres |
| ||||||
Valeurs de retour |
|
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 )
Calculer une longueur de 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 par l'homme contenant un hôte ou une adresse IP et un numéro de port facultatif (séparé par un ':'), prenant en charge les formats suivants :
: : - [
] :
Des détails | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
Paramètres |
| ||||||||||
Retour | INET_ERROR_INVALID_HOST_NAME Si l'entrée à analyser est de longueur nulle ou autre malformé. | ||||||||||
Retour | INET_ERROR_HOST_NAME_TOO_LONG Si le nom d'hôte dépasse 253 caractères. | ||||||||||
Retour | INET_NO_ERROR En cas de succès. |
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 par l'homme contenant un hôte ou une adresse IP, un numéro de port facultatif (séparé par un ':') et un nom d'interface facultatif (séparé par un ''), prenant en charge les formats suivants :
% : : % % : : % % - [
] : - [
] : %
Des détails | |||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Paramètres |
| ||||||||||||||
Retour | INET_ERROR_INVALID_HOST_NAME Si l'entrée à analyser est de longueur nulle ou autre malformé. | ||||||||||||||
Retour | INET_ERROR_HOST_NAME_TOO_LONG Si le nom d'hôte dépasse 253 caractères. | ||||||||||||||
Retour | INET_NO_ERROR En cas de succès. |
EnregistrerInetLayerErrorFormatter
void RegisterInetLayerErrorFormatter( void )
Enregistrez un formateur d'erreurs de texte pour les erreurs de couche Inet.
SocketsIPv4JoindreQuitterMulticastGroup
INET_ERROR SocketsIPv4JoinLeaveMulticastGroup( int aSocket, InterfaceId aInterfaceId, const IPAddress & aAddress, int aCommand )
SocketsIPv6JoindreQuitterMulticastGroup
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 )