23#ifndef L8W8JWT_ENCODE_H
24#define L8W8JWT_ENCODE_H
34#include "timehelper.h"
37#ifndef L8W8JWT_MAX_KEY_SIZE
38#define L8W8JWT_MAX_KEY_SIZE 8192
JWT algorithms as defined in https://tools.ietf.org/html/rfc7518#section-3.1.
JWT claims as described in https://auth0.com/docs/tokens/concepts/jwt-claims.
L8W8JWT_API int l8w8jwt_validate_encoding_params(struct l8w8jwt_encoding_params *params)
L8W8JWT_API void l8w8jwt_encoding_params_init(struct l8w8jwt_encoding_params *params)
L8W8JWT_API int l8w8jwt_encode(struct l8w8jwt_encoding_params *params)
Macros for possible integer codes returned by the various l8w8jwt functions.
size_t jti_length
Definition encode.h:95
size_t * out_length
Definition encode.h:177
l8w8jwt_time_t exp
Definition encode.h:103
size_t additional_payload_claims_count
Definition encode.h:143
size_t aud_length
Definition encode.h:84
unsigned char * secret_key
Definition encode.h:149
char * sub
Definition encode.h:67
int alg
Definition encode.h:50
size_t secret_key_pw_length
Definition encode.h:166
size_t secret_key_length
Definition encode.h:154
size_t additional_header_claims_count
Definition encode.h:131
char * aud
Definition encode.h:79
struct l8w8jwt_claim * additional_header_claims
Definition encode.h:126
unsigned char * secret_key_pw
Definition encode.h:161
size_t sub_length
Definition encode.h:72
size_t iss_length
Definition encode.h:61
l8w8jwt_time_t nbf
Definition encode.h:111
char * iss
Definition encode.h:56
struct l8w8jwt_claim * additional_payload_claims
Definition encode.h:138
char * jti
Definition encode.h:90
l8w8jwt_time_t iat
Definition encode.h:119
char ** out
Definition encode.h:172
l8w8jwt version checking.