diff --git a/core/net/mac/tsch/tsch-security.h b/core/net/mac/tsch/tsch-security.h index 42f18e8d9..3fdf784c2 100644 --- a/core/net/mac/tsch/tsch-security.h +++ b/core/net/mac/tsch/tsch-security.h @@ -118,10 +118,24 @@ typedef uint8_t aes_key[16]; /********** Functions *********/ - +/** + * \brief Return MIC length + * \return The length of MIC (>= 0) + */ int tsch_security_mic_len(const frame802154_t *frame); + +/** + * \brief Protect a frame with encryption and/or MIC + * \return The length of a generated MIC (>= 0) + */ int tsch_security_secure_frame(uint8_t *hdr, uint8_t *outbuf, int hdrlen, int datalen, struct asn_t *asn); + +/** + * \brief Parse and check a frame protected with encryption and/or MIC + * \retval 0 On error or security check failure (insecure frame) + * \retval 1 On success or no need for security check (good frame) + */ int tsch_security_parse_frame(const uint8_t *hdr, int hdrlen, int datalen, const frame802154_t *frame, const linkaddr_t *sender, struct asn_t *asn);