Nol.A SDK Library  24.11.0
For IoT System Software Development
Public Member Functions | Static Public Member Functions | List of all members
IPv6PPPoS Class Reference

IPv6 PPP over SerialPort. More...

#include <IPv6PPPoS.hpp>

Inheritance diagram for IPv6PPPoS:
IPv6Interface

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
 
IPv6Interfacenext = NULL
 

Detailed Description

IPv6 PPP over SerialPort.

Constructor & Destructor Documentation

◆ IPv6PPPoS()

IPv6PPPoS::IPv6PPPoS ( SerialPort port)

IPv6PPPoS 인스턴스를 생성합니다.

Parameters
portPPP에서 사용할 SerialPort

The documentation for this class was generated from the following file: