18 #ifndef _RES_STIR_SHAKEN_H 19 #define _RES_STIR_SHAKEN_H 21 #define STIR_SHAKEN_ENCRYPTION_ALGORITHM "ES256" 22 #define STIR_SHAKEN_PPT "shaken" 23 #define STIR_SHAKEN_TYPE "passport"
Main Channel structure associated with a channel.
unsigned char * signature
unsigned int ast_stir_shaken_get_signature_timeout(void)
Retrieve the value for 'signature_timeout' from 'general' config object.
Full structure for sorcery.
char * ast_stir_shaken_payload_get_public_cert_url(const struct ast_stir_shaken_payload *payload)
Retrieve the value for 'public_cert_url' from an ast_stir_shaken_payload.
struct ast_stir_shaken_payload * ast_stir_shaken_sign(struct ast_json *json)
Sign a JSON STIR/SHAKEN payload.
ast_stir_shaken_verification_result
struct ast_stir_shaken_payload * ast_stir_shaken_verify(const char *header, const char *payload, const char *signature, const char *algorithm, const char *public_cert_url)
Verify a JSON STIR/SHAKEN payload.
int ast_stir_shaken_add_verification(struct ast_channel *chan, const char *identity, const char *attestation, enum ast_stir_shaken_verification_result result)
Add a STIR/SHAKEN verification result to a channel.
unsigned char * ast_stir_shaken_payload_get_signature(const struct ast_stir_shaken_payload *payload)
Retrieve the value for 'signature' from an ast_stir_shaken_payload.
struct ast_sorcery * ast_stir_shaken_sorcery(void)
Retrieve the stir/shaken sorcery context.
struct ast_json * payload
Abstract JSON element (object, array, string, int, ...).
void ast_stir_shaken_payload_free(struct ast_stir_shaken_payload *payload)
Free a STIR/SHAKEN payload.