Nol.A SDK Library
24.11.0
For IoT System Software Development
|
IPv6 PPP over SerialPort. More...
#include <IPv6PPPoS.hpp>
Public Member Functions | |
IPv6PPPoS (SerialPort &port) | |
IPv6PPPoS 인스턴스를 생성합니다. More... | |
error_t | begin () |
IPv6PPPoS 인스턴스를 시작합니다. | |
error_t | getIID (uint8_t *dst) override |
bool | isInMulticastGroup (const IPv6Address &mcaddr) override |
error_t | send (uint8_t nxhop, IPv6PacketBuffer *ippkt) override |
void | receiveRS (IPv6::Header_t &ip6, void *msg, uint16_t len) override |
void | receiveRA (IPv6::Header_t &ip6, void *msg, uint16_t len) override |
void | receiveNS (IPv6::Header_t &ip6, void *msg, uint16_t len) override |
void | receiveNA (IPv6::Header_t &ip6, void *msg, uint16_t len) override |
void | receiveRedirect (IPv6::Header_t &ip6, void *msg, uint16_t len) override |
void | confirmReach (uint8_t neigh) override |
void | onTick () override |
void | onStateChanged () override |
Public Member Functions inherited from IPv6Interface | |
IPv6Interface (Type_t type, uint8_t neigh_list_len, uint8_t prefix_list_len, uint16_t mtu) | |
error_t | getAddress (IPv6Address::Type_t type, IPv6Address &dst) |
Get an IPv6 address assigned to the inf interface. More... | |
error_t | getAddress (IPv6Address::Type_t type, uint8_t *dst) |
uint8_t | setPrefix (const IPv6Address &prefix_addr, uint8_t prefix_len, uint32_t lifetime, uint32_t pref_lifetime, bool autoconf) |
Set a prefix to an IPv6 interface. More... | |
void | setStateNotifier (void(*func)(IPv6Interface &, State_t)) |
bool | isAttached () |
State_t | setState (State_t s) |
Static Public Member Functions | |
static uint16_t | SerialOutput (void *fd, void *payload, uint16_t len) |
static void | Receive (void *ctx, const uint8_t *packet, uint16_t len) |
static void | Timeout (void(*func)(void *), void *args, uint8_t time) |
static void | Untimeout (void(*func)(void *), void *args) |
Static Public Member Functions inherited from IPv6Interface | |
static const char * | GetStateString (State_t) |
Additional Inherited Members | |
Public Types inherited from IPv6Interface | |
enum | Type_t { TYPE_UNKNOWN = 0 , TYPE_6LOWPAN = 1 , TYPE_ETHERNET = 2 , TYPE_PPP = 3 , TYPE_6LPWAN = 4 } |
enum | State_t { STATE_NONE = 0 , STATE_BECOMING_HOST = 1 , STATE_DUPLICATE = 2 , STATE_HOST = 3 , STATE_BECOMING_ROUTER = 4 , STATE_ROUTER = 5 } |
Protected Member Functions inherited from IPv6Interface | |
bool | hasIID (const uint8_t *iid) |
virtual uint8_t | addNeighbor (const IPv6Address &addr) |
void | removeNeighbor (uint8_t n) |
IPv6Neighbor * | getNeighbor (const IPv6Address &addr) |
uint8_t | getNeighborIndex (const IPv6Address &addr) |
Protected Attributes inherited from IPv6Interface | |
bool | ll_dad_passed |
uint8_t | def_hop_limit |
const uint16_t | MTU |
uint16_t | pmtu |
Type_t | dev_type |
IPv6Prefix ** | prefix = NULL |
const uint8_t | MAX_NUM_PREFIX |
uint8_t | num_valid_prefix |
IPv6Neighbor ** | neighbor = NULL |
const uint8_t | MAX_NUM_NEIGH |
State_t | state |
void(* | notify )(IPv6Interface &, State_t) = NULL |
IPv6Interface * | next = NULL |
IPv6 PPP over SerialPort.
IPv6PPPoS::IPv6PPPoS | ( | SerialPort & | port | ) |
IPv6PPPoS 인스턴스를 생성합니다.
port | PPP에서 사용할 SerialPort |