Zephyr API Documentation
3.6.99
A Scalable Open Source RTOS
|
Generic PPP Finite State Machine. More...
#include <ppp.h>
Data Fields | |
struct k_work_delayable | timer |
Timeout timer. | |
struct { | |
int(* config_info_ack )(struct ppp_fsm *fsm, struct net_pkt *pkt, uint16_t length) | |
Acknowledge Configuration Information. More... | |
struct net_pkt *(* config_info_add )(struct ppp_fsm *fsm) | |
Add Configuration Information. More... | |
int(* config_info_len )(struct ppp_fsm *fsm) | |
Length of Configuration Information. More... | |
int(* config_info_nack )(struct ppp_fsm *fsm, struct net_pkt *pkt, uint16_t length, bool rejected) | |
Negative Acknowledge Configuration Information. More... | |
int(* config_info_req )(struct ppp_fsm *fsm, struct net_pkt *pkt, uint16_t length, struct net_pkt *ret_pkt) | |
Request peer's Configuration Information. More... | |
int(* config_info_rej )(struct ppp_fsm *fsm, struct net_pkt *pkt, uint16_t length) | |
Reject Configuration Information. More... | |
void(* config_info_reset )(struct ppp_fsm *fsm) | |
Reset Configuration Information. More... | |
void(* up )(struct ppp_fsm *fsm) | |
FSM goes to OPENED state. More... | |
void(* down )(struct ppp_fsm *fsm) | |
FSM leaves OPENED state. More... | |
void(* starting )(struct ppp_fsm *fsm) | |
Starting this protocol. More... | |
void(* finished )(struct ppp_fsm *fsm) | |
Quitting this protocol. More... | |
void(* proto_reject )(struct ppp_fsm *fsm) | |
We received Protocol-Reject. More... | |
void(* retransmit )(struct ppp_fsm *fsm) | |
Retransmit. More... | |
enum net_verdict(* proto_extension )(struct ppp_fsm *fsm, enum ppp_packet_type code, uint8_t id, struct net_pkt *pkt) | |
Any code that is not understood by PPP is passed to this FSM for further processing. More... | |
} | cb |
FSM callbacks. | |
struct { | |
const struct ppp_my_option_info * info | |
Options information. More... | |
struct ppp_my_option_data * data | |
Options negotiation data. More... | |
size_t count | |
Number of negotiated options. More... | |
} | my_options |
My options. | |
uint32_t | flags |
Option bits. | |
uint32_t | retransmits |
Number of re-transmissions left. | |
uint32_t | nack_loops |
Number of NACK loops since last ACK. | |
uint32_t | recv_nack_loops |
Number of NACKs received. | |
char | terminate_reason [32] |
Reason for closing protocol. | |
uint16_t | protocol |
PPP protocol number for this FSM. | |
enum ppp_state | state |
Current state of PPP link. | |
const char * | name |
Protocol/layer name of this FSM (for debugging) | |
uint8_t | id |
Current id. | |
uint8_t | req_id |
Current request id. | |
uint8_t | ack_received: 1 |
Have received valid Ack, Nack or Reject to a Request. | |
Generic PPP Finite State Machine.
uint8_t ppp_fsm::ack_received |
Have received valid Ack, Nack or Reject to a Request.
struct { ... } ppp_fsm::cb |
FSM callbacks.
Acknowledge Configuration Information.
int(* ppp_fsm::config_info_len) (struct ppp_fsm *fsm) |
Length of Configuration Information.
int(* ppp_fsm::config_info_nack) (struct ppp_fsm *fsm, struct net_pkt *pkt, uint16_t length, bool rejected) |
Negative Acknowledge Configuration Information.
Reject Configuration Information.
int(* ppp_fsm::config_info_req) (struct ppp_fsm *fsm, struct net_pkt *pkt, uint16_t length, struct net_pkt *ret_pkt) |
Request peer's Configuration Information.
void(* ppp_fsm::config_info_reset) (struct ppp_fsm *fsm) |
Reset Configuration Information.
size_t ppp_fsm::count |
Number of negotiated options.
struct ppp_my_option_data* ppp_fsm::data |
Options negotiation data.
void(* ppp_fsm::down) (struct ppp_fsm *fsm) |
FSM leaves OPENED state.
void(* ppp_fsm::finished) (struct ppp_fsm *fsm) |
Quitting this protocol.
uint32_t ppp_fsm::flags |
Option bits.
uint8_t ppp_fsm::id |
Current id.
const struct ppp_my_option_info* ppp_fsm::info |
Options information.
struct { ... } ppp_fsm::my_options |
My options.
uint32_t ppp_fsm::nack_loops |
Number of NACK loops since last ACK.
const char* ppp_fsm::name |
Protocol/layer name of this FSM (for debugging)
enum net_verdict(* ppp_fsm::proto_extension) (struct ppp_fsm *fsm, enum ppp_packet_type code, uint8_t id, struct net_pkt *pkt) |
Any code that is not understood by PPP is passed to this FSM for further processing.
void(* ppp_fsm::proto_reject) (struct ppp_fsm *fsm) |
We received Protocol-Reject.
uint16_t ppp_fsm::protocol |
PPP protocol number for this FSM.
uint32_t ppp_fsm::recv_nack_loops |
Number of NACKs received.
uint8_t ppp_fsm::req_id |
Current request id.
void(* ppp_fsm::retransmit) (struct ppp_fsm *fsm) |
Retransmit.
uint32_t ppp_fsm::retransmits |
Number of re-transmissions left.
void(* ppp_fsm::starting) (struct ppp_fsm *fsm) |
Starting this protocol.
enum ppp_state ppp_fsm::state |
Current state of PPP link.
char ppp_fsm::terminate_reason[32] |
Reason for closing protocol.
struct k_work_delayable ppp_fsm::timer |
Timeout timer.
void(* ppp_fsm::up) (struct ppp_fsm *fsm) |
FSM goes to OPENED state.