123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104 |
- #ifndef ZEPHYR_INCLUDE_DATA_JWT_H_
- #define ZEPHYR_INCLUDE_DATA_JWT_H_
- #include <zephyr/types.h>
- #include <stdbool.h>
- #ifdef __cplusplus
- extern "C" {
- #endif
- struct jwt_builder {
-
- char *base;
-
- char *buf;
-
- size_t len;
-
- bool overflowed;
-
- unsigned char wip[3];
-
- int pending;
- };
- int jwt_init_builder(struct jwt_builder *builder,
- char *buffer,
- size_t buffer_size);
- int jwt_add_payload(struct jwt_builder *builder,
- int32_t exp,
- int32_t iat,
- const char *aud);
- int jwt_sign(struct jwt_builder *builder,
- const char *der_key,
- size_t der_key_len);
- static inline size_t jwt_payload_len(struct jwt_builder *builder)
- {
- return (builder->buf - builder->base);
- }
- #ifdef __cplusplus
- }
- #endif
- #endif
|