jwt_checker_grp(3)
π jwt_checker_grp(3) π
okay bestie, so we're in the Library Functions Manual rn and today's main character is the checker β literally the thing that goes "hold up, is this JWT actually real?" π΅οΈβοΈβ¨
β¨ NAME β¨
jwt_checker_grp β Checker π
πΈ SYNOPSIS πΈ
π Typedefs
typedef struct jwt_checker jwt_checker_tβ the Opaque Checker object. it's giving mysterious, it's giving "you don't get to see inside me" π«Ά
π¦ Functions
jwt_checker_t * jwt_checker_new (void)
Function to create a new checker instance. baby's first checker πΌ
void jwt_checker_free (jwt_checker_t *checker)
Frees a previously created checker object. we do NOT leave it hanging, periodt.
int jwt_checker_error (const jwt_checker_t *checker)
Checks error state of checker object. vibe check but for errors π
const char * jwt_checker_error_msg (const jwt_checker_t *checker)
Get the error message contained in a checker object.
void jwt_checker_error_clear (jwt_checker_t *checker)
Clear error state in a checker object. therapy for your checker π§
int jwt_checker_setkey (jwt_checker_t *checker, const jwt_alg_t alg,
const jwk_item_t *key)
Sets a key and algorithm for a checker.
int jwt_checker_setcb (jwt_checker_t *checker, jwt_callback_t cb, void
*ctx)
Set a callback for generating tokens.
void * jwt_checker_getctx (jwt_checker_t *checker)
Retrieve the callback context that was previously set.
int jwt_checker_verify (jwt_checker_t *checker, const char *token)
Verify a token. the moment we've all been waiting for π₯
π« Detailed Description π«
Validating a JWT involves decoding the Base64url parts of the JWT then verifying claims and the signature hash. The checker object allows you to configure how you want to perform these steps so you can easily process tokens with one simple call.
no cap, that's the whole glow-up: you set it up once, and then you just... call it. one call. iconic behavior π
π Typedef Documentation π
typedef struct jwt_checker jwt_checker_t
Opaque Checker object. we love a mystery, we respect the privacy π«Ά
β Function Documentation β
int jwt_checker_error (const jwt_checker_t * checker)
Checks error state of checker object.
Parameters
checkerβ Pointer to a checker object
Returns
0if no errors exist, non-zero otherwise
void jwt_checker_error_clear (jwt_checker_t * checker)
Clear error state in a checker object.
Parameters
checkerβ Pointer to a checker object
const char * jwt_checker_error_msg (const jwt_checker_t * checker)
Get the error message contained in a checker object.
Parameters
checkerβ Pointer to a checker object
Returns
- Pointer to a string with the error message. Can be an empty string if there is no error. Never returns
NULL.
fr fr, neverNULL. that's a promise bestie. you can always print it, noif (msg)needed π
void jwt_checker_free (jwt_checker_t * checker)
Frees a previously created checker object.
Parameters
checkerβ Pointer to a checker object
void * jwt_checker_getctx (jwt_checker_t * checker)
Retrieve the callback context that was previously set. This is useful for accessing the context that was previously passed in the setcb function.
Parameters
checkerβ Pointer to a checker object
Returns
- Pointer to the context or
NULL
jwt_checker_t * jwt_checker_new (void )
Function to create a new checker instance.
Returns
- Pointer to a checker object on success,
NULLon failure
int jwt_checker_setcb (jwt_checker_t * checker, jwt_callback_t cb, void * ctx)
Set a callback for generating tokens. When verifying a token, this callback will be run after jwt_t has been parsed, but before the token is verified (including signature verification). During this, the callback should only inspect the header or claims in the JWT. Any attempts to make changes to the jwt_t object will not change the rest of the process.
so like, timing matters bestie: parsed β
β your callback runs π β THEN it gets verified. and during that little window you're only looking, not touching. any edits you make to the jwt_t object? yeah those do not change the rest of the process. nada. π
The callback can also set the key and algorithm used to verify the signature. If the callback returns non-zero, then processing will stop and return an error.
The ctx value is also passed to the callback as part of the jwt_value_t struct.
Note Calling this with aNULLcbparam and a newctxparam after already setting the callback will allow updating thectxpassed to the callback. Calling with both values asNULLwill disable the callback completely.
Parameters
checkerβ Pointer to a checker objectcbβ Pointer to a callback functionctxβ Pointer to data to pass to the callback function
Returns
0on success, non-zero otherwise with error set in the checker
int jwt_checker_setkey (jwt_checker_t * checker, const jwt_alg_t alg, const jwk_item_t * key)
Sets a key and algorithm for a checker. See jwt_builder_setkey for detailed information.
Parameters
checkerβ Pointer to a checker objectalgβ A validjwt_alg_ttypekeyβ A JWK key object
Returns
0on success, non-zero otherwise with error set in the checker
int jwt_checker_verify (jwt_checker_t * checker, const char * token)
Verify a token.
Note If you set a callback for this checker, this is when it will be called.
this is it. the moment. the finale. π¬ if you set a callback, THIS is when it fires, so don't say I didn't warn you π«Ά
Parameters
checkerβ Pointer to a checker objecttokenβ A string containing a token to be verified
Returns
0on success, non-zero otherwise with error set in the checker
π«Ά Author π«Ά
Generated automatically by Doxygen for LibJWT from the source code. not a human writing this, just Doxygen doing its little robot thing π€β¨
okay and that's the whole page bestie!! this was LibJWT, Version 3.3.3, and you just read jwt_checker_grp(3) β tysm for coming to my TED talk, go forth and verify those tokens responsibly πππ¦ no cap, you ate. periodt π
πβ
π¦ where this page comes from
- ubuntu stonking: libjwt14-doc 3.3.3-1build1 Β· MPL-2.0
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash on : a language model's rewrite of the original, under its terms