nl:: Inet:: RawEndPoint
#include <src/inet/RawEndPoint.h>
Les objets de cette classe représentent les points de terminaison bruts du réseau IP.
Résumé
La couche Nest Inet encapsule les méthodes d'interaction avec les points de terminaison du réseau IP (sockets SOCK_RAW sur Linux et les systèmes dérivés de BSD) ou les blocs de contrôle du protocole brut LwIP, car le système est configuré en conséquence.
Héritage
Hérite de: nl::Inet::IPEndPointBasis
Attributs publics |
|
---|---|
IPProto
|
IPProtocol
du protocole ICMP (Internet Control Message Protocol)
|
IPVer
|
IPVersion
Version du protocole Internet.
|
Fonctions publiques |
|
---|---|
Bind(IPAddressType addrType, IPAddress addr, InterfaceId intfId)
|
Liez le point de terminaison à une adresse IP d'interface.
|
BindIPv6LinkLocal(InterfaceId intf, IPAddress addr)
|
Liez le point de terminaison brut à une adresse de champ d'application de liaison locale IPv6 au niveau de l'index d'interface spécifié.
|
BindInterface(IPAddressType addrType, InterfaceId intf)
|
Liez le point de terminaison à une interface réseau.
|
Close(void)
|
void
Fermez le point de terminaison.
|
Free(void)
|
void
Fermez le point de terminaison et recyclez sa mémoire.
|
GetBoundInterface(void)
|
InterfaceId
Permet d'obtenir l'interface liée sur ce point de terminaison.
|
Listen(void)
|
Préparer le point de terminaison pour recevoir des messages ICMP
|
SendMsg(const IPPacketInfo *pktInfo, Weave::System::PacketBuffer *msg, uint16_t sendFlags)
|
Envoie un message ICMP à la destination spécifiée.
|
SendTo(IPAddress addr, Weave::System::PacketBuffer *msg, uint16_t sendFlags)
|
Synonyme de
SendTo(addr, INET_NULL_INTERFACEID, msg, sendFlags) . |
SendTo(IPAddress addr, InterfaceId intfId, Weave::System::PacketBuffer *msg, uint16_t sendFlags)
|
Envoie un message ICMP à l'adresse de destination spécifiée.
|
SetICMPFilter(uint8_t numICMPTypes, const uint8_t *aICMPTypes)
|
Définissez les paramètres de filtre ICMP6 dans la pile réseau.
|
Attributs publics
IPProto
IPProtocol IPProto
du protocole ICMP (Internet Control Message Protocol)
Bien que ce champ soit une variable de classe modifiable, il est invariant de la classe : il ne peut pas être modifié.
IPVer
IPVersion IPVer
Version du protocole Internet.
Bien que ce champ soit une variable de classe modifiable, il est invariant de la classe : il ne peut pas être modifié.
Fonctions publiques
Bind
INET_ERROR Bind( IPAddressType addrType, IPAddress addr, InterfaceId intfId )
Liez le point de terminaison à une adresse IP d'interface.
Lie le point de terminaison à l'adresse IP de l'interface réseau spécifiée.
Détails | |||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Paramètres |
|
||||||||||||||
Valeurs de retour |
|
Sur LwIP, cette méthode ne doit pas être appelée avec le verrouillage de pile LwIP déjà acquis.
BindIPv6LinkLocal
INET_ERROR BindIPv6LinkLocal( InterfaceId intf, IPAddress addr )
Liez le point de terminaison brut à une adresse de champ d'application de liaison locale IPv6 au niveau de l'index d'interface spécifié.
Définit également diverses options de socket IPv6 appropriées pour la transmission de paquets vers et depuis des destinations de liaison.
Lie le point de terminaison à l'adresse de liaison locale IPv6 addr
sur l'interface réseau indiquée par intf
.
Détails | |||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Paramètres |
|
||||||||||||
Paramètres |
|
||||||||||||
Valeurs de retour |
|
||||||||||||
Renvoie |
INET_NO_ERROR en cas de réussite, ou une erreur d'OS mappée en cas d'échec. Une liste de paramètres non valide peut entraîner l'erreur INET_ERROR_WRONG_ADDRESS_TYPE. Si le point de terminaison brut est déjà lié ou écoute, la fonction renvoie INET_ERROR_INCORRECT_STATE. Liez le point de terminaison à une adresse de liaison locale IPv6 d'interface.
|
Sur LwIP, cette méthode ne doit pas être appelée avec le verrouillage de pile LwIP déjà acquis.
BindInterface
INET_ERROR BindInterface( IPAddressType addrType, InterfaceId intf )
Liez le point de terminaison à une interface réseau.
Lie le point de terminaison à l'adresse IP de l'interface réseau spécifiée.
Détails | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
Paramètres |
|
||||||||||
Valeurs de retour |
|
Sur LwIP, cette méthode ne doit pas être appelée avec le verrouillage de pile LwIP déjà acquis.
Fermer
void Close( void )
Fermez le point de terminaison.
Si la valeur est mState != kState_Closed
, le point de terminaison est fermé, ce qui le supprime de l'ensemble des points de terminaison éligibles aux événements de communication.
Sur les systèmes LwIP, cette méthode ne doit pas être appelée avec le verrouillage de pile LwIP déjà acquis.
Sans frais
void Free( void )
Fermez le point de terminaison et recyclez sa mémoire.
Appel à la méthode Close
, puis appelle la méthode InetLayerBasis::Release
pour renvoyer l'objet dans son pool de mémoire.
Sur les systèmes LwIP, cette méthode ne doit pas être appelée avec le verrouillage de pile LwIP déjà acquis.
GetBoundInterface
InterfaceId GetBoundInterface( void )
Permet d'obtenir l'interface liée sur ce point de terminaison.
Détails | |
---|---|
Renvoie |
InterfaceId : ID de l'interface liée.
|
Écouter
INET_ERROR Listen( void )
Préparer le point de terminaison pour recevoir des messages ICMP
Si mState
est déjà défini sur kState_Listening
, aucune opération n'est effectuée. Sinon, mState
est défini sur kState_Listening
et le point de terminaison est prêt à recevoir des messages ICMPv6, conformément à la sémantique de la plate-forme.
Détails | |||
---|---|---|---|
Valeurs de retour |
|
Sur LwIP, cette méthode ne doit pas être appelée avec le verrouillage de pile LwIP déjà acquis.
SendMsg
INET_ERROR SendMsg( const IPPacketInfo *pktInfo, Weave::System::PacketBuffer *msg, uint16_t sendFlags )
Envoie un message ICMP à la destination spécifiée.
Send the ICMP message \c msg using the destination information given in \c addr. Where (sendFlags & kSendFlag_RetainBuffer) != 0, calls Weave::System::PacketBuffer::Free on behalf of the caller, otherwise this method deep-copies \c msg into a fresh object, and queues that for transmission, leaving the original \c msg available after return.
Détails | |||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Paramètres |
|
||||||||||||
Valeurs de retour |
|
SendTo
INET_ERROR SendTo( IPAddress addr, Weave::System::PacketBuffer *msg, uint16_t sendFlags )
Synonyme de SendTo(addr, INET_NULL_INTERFACEID, msg, sendFlags)
.
SendTo
INET_ERROR SendTo( IPAddress addr, InterfaceId intfId, Weave::System::PacketBuffer *msg, uint16_t sendFlags )
Envoie un message ICMP à l'adresse de destination spécifiée.
Send the ICMP message in \c msg to the destination given in \c addr. Where (sendFlags & kSendFlag_RetainBuffer) != 0, calls Weave::System::PacketBuffer::Free on behalf of the caller, otherwise this method deep-copies \c msg into a fresh object, and queues that for transmission, leaving the original \c msg available after return.
Détails | |||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Paramètres |
|
||||||||||||
Valeurs de retour |
|
SetICMPFilter
INET_ERROR SetICMPFilter( uint8_t numICMPTypes, const uint8_t *aICMPTypes )
Définissez les paramètres de filtre ICMP6 dans la pile réseau.
Appliquez les paramètres de filtrage ICMPv6 pour les codes de aICMPTypes
au point de terminaison sous-jacent dans la pile réseau du système.
Détails | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
Paramètres |
|
||||||||||
Valeurs de retour |
|