Doxygen for tsch-packet.h

This commit is contained in:
Simon Duquennoy 2018-04-17 12:36:59 -07:00
parent 0f41b9d1a6
commit 6dc34c128f
1 changed files with 43 additions and 5 deletions

View File

@ -46,18 +46,56 @@
/********** Functions *********/
/* Construct enhanced ACK packet and return ACK length */
/**
* \brief Construct Enhanced ACK packet
* \param buf The buffer where to build the EACK
* \param buf_size The buffer size
* \param dest_addr The link-layer address of the neighbor we are ACKing
* \param seqno The sequence number we are ACKing
* \param drift The time offset in usec measured at Rx of the packer we are ACKing
* \param nack Value of the NACK bit
* \return The length of the packet that was created. -1 if failure.
*/
int tsch_packet_create_eack(uint8_t *buf, uint16_t buf_size,
const linkaddr_t *dest_addr, uint8_t seqno,
int16_t drift, int nack);
/* Parse enhanced ACK packet, extract drift and nack */
/**
* \brief Parse enhanced ACK packet
* \param buf The buffer where to parse the EACK from
* \param buf_size The buffer size
* \param seqno The sequence number we are expecting
* \param frame The frame structure where to store parsed fields
* \param ies The IE structure where to store parsed IEs
* \param hdr_len A pointer where to store the length of the parsed header
* \return 1 if the EACK is correct and acknowledges the specified frame, 0 otherwise
*/
int tsch_packet_parse_eack(const uint8_t *buf, int buf_size,
uint8_t seqno, frame802154_t *frame, struct ieee802154_ies *ies, uint8_t *hdr_len);
/* Create an EB packet */
/**
* \brief Create an EB packet directly in packetbuf
* \param hdr_len A pointer where to store the length of the created header
* \param tsch_sync_ie_ptr A pointer where to store the address of the TSCH synchronization IE
* \return The total length of the EB
*/
int tsch_packet_create_eb(uint8_t *hdr_len, uint8_t *tsch_sync_ie_ptr);
/* Update ASN in EB packet */
/**
* \brief Update ASN in EB packet
* \param buf The buffer that contains the EB
* \param buf_size The buffer size
* \param tsch_sync_ie_offset The offset of the TSCH synchronization IE, in which the ASN is to be written
* \return 1 if success, 0 otherwise
*/
int tsch_packet_update_eb(uint8_t *buf, int buf_size, uint8_t tsch_sync_ie_offset);
/* Parse EB and extract ASN and join priority */
/**
* \brief Parse EB
* \param buf The buffer where to parse the EB from
* \param buf_size The buffer sizecting
* \param frame The frame structure where to store parsed fields
* \param ies The IE structure where to store parsed IEs
* \param hdrlen A pointer where to store the length of the parsed header
* \param frame_without_mic When set, the security MIC will not be parsed
* \return The length of the parsed EB
*/
int tsch_packet_parse_eb(const uint8_t *buf, int buf_size,
frame802154_t *frame, struct ieee802154_ies *ies,
uint8_t *hdrlen, int frame_without_mic);