krb5_auth(3)
β¨ krb5_auth β¨
okay so bestie, welcome to krb5_auth from the Heimdal Kerberos 5 library manual (section 3, library functions, we're fancy like that π
). this is the page about the Heimdal Kerberos 5 authentication functions, and yes it is a whole vibe. grab a strawberry π and let's go.
π NAME π
krb5_auth β Heimdal Kerberos 5 authentication functions
π¦ SYNOPSIS π¦
Functions
here's the whole squad, signatures exactly as they are, no edits, no cap:
KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL krb5_rd_req_in_ctx_alloc
(krb5_context context, krb5_rd_req_in_ctx *ctx)
KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL
krb5_rd_req_in_set_keytab (krb5_context context, krb5_rd_req_in_ctx
in, krb5_keytab keytab)
KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL
krb5_rd_req_in_set_pac_check (krb5_context context,
krb5_rd_req_in_ctx in, krb5_boolean flag)
KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL
krb5_rd_req_out_get_server (krb5_context context,
krb5_rd_req_out_ctx out, krb5_principal *principal)
KRB5_LIB_FUNCTION void KRB5_LIB_CALL krb5_rd_req_out_ctx_free
(krb5_context context, krb5_rd_req_out_ctx ctx)
KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL krb5_rd_req_ctx
(krb5_context context, krb5_auth_context *auth_context, const
krb5_data *inbuf, krb5_const_principal server, krb5_rd_req_in_ctx
inctx, krb5_rd_req_out_ctx *outctx)
πΈ Detailed Description πΈ
like. that's it. that's the whole detailed description. the real tea is all in the function docs below, so scroll, bestie π
π Function Documentation π
π KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL krb5_rd_req_ctx
KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL krb5_rd_req_ctx
(krb5_context context, krb5_auth_context *auth_context, const krb5_data
*inbuf, krb5_const_principal server, krb5_rd_req_in_ctx inctx,
krb5_rd_req_out_ctx *outctx)
this is the core server function β the main character, honestly π. it verifies application authentication requests from clients.
Parameters
contextβ Keberos 5 context. (yes the spelling is theirs, we don't touch the canon, periodt)auth_contextβ the authentication context, can beNULL, then default values for the authentication context will used.inbufβ the (AP-REQ) authentication bufferserverβ the server to authenticate to. IfNULLthe function will try to find any available credential in the keytab that will verify the reply. The function will prefer the server specified in theAP-REQ, but if there is no mach, it will try all keytab entries for a match. This has serious performance issues for large keytabs. πinctxβ control the behavior of the function, ifNULL, the default behavior is used.outctxβ the return outctx, free withkrb5_rd_req_out_ctx_free().
Returns
Kerberos 5 error code, see krb5_get_error_message().
π§ KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL krb5_rd_req_in_ctx_alloc
KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL krb5_rd_req_in_ctx_alloc
(krb5_context context, krb5_rd_req_in_ctx * ctx)
Allocate a krb5_rd_req_in_ctx as an input parameter to krb5_rd_req_ctx(). The caller should free the context with krb5_rd_req_in_ctx_free() when done with the context. so like, clean up after yourself, we're not messy here π«Ά
Parameters
contextβ Keberos 5 context.ctxβ in ctx tokrb5_rd_req_ctx().
Returns
Kerberos 5 error code, see krb5_get_error_message().
π KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL krb5_rd_req_in_set_keytab
KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL krb5_rd_req_in_set_keytab
(krb5_context context, krb5_rd_req_in_ctx in, krb5_keytab keytab)
Set the keytab that krb5_rd_req_ctx() will use. π
Parameters
contextβ Keberos 5 context.inβ in ctx tokrb5_rd_req_ctx().keytabβ keytab thatkrb5_rd_req_ctx()will use, only copy the pointer, so the caller must free they keytab afterkrb5_rd_req_in_ctx_free()is called.
ngl the pointer thing is important β it's a pointer copy, not a deep copy, so mind your lifetimes bestie π
Returns
Kerberos 5 error code, see krb5_get_error_message().
β KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL krb5_rd_req_in_set_pac_check
KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL krb5_rd_req_in_set_pac_check
(krb5_context context, krb5_rd_req_in_ctx in, krb5_boolean flag)
Set if krb5_rq_red() is going to check the Windows PAC or not. (that function name is exactly how the page spells it, iykyk, i am simply the messenger π)
Parameters
contextβ Keberos 5 context.inβkrb5_rd_req_in_ctxto check the option on.flagβ flag to select if to check the pac (TRUE) or not (FALSE).
Returns
Kerberos 5 error code, see krb5_get_error_message().
π KRB5_LIB_FUNCTION void KRB5_LIB_CALL krb5_rd_req_out_ctx_free
KRB5_LIB_FUNCTION void KRB5_LIB_CALL krb5_rd_req_out_ctx_free (krb5_context
context, krb5_rd_req_out_ctx ctx)
Free the krb5_rd_req_out_ctx. bye bestie, you served π
Parameters
contextβ Keberos 5 context.ctxβkrb5_rd_req_out_ctxcontext to free.
π₯ KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL krb5_rd_req_out_get_server
KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL krb5_rd_req_out_get_server
(krb5_context context, krb5_rd_req_out_ctx out, krb5_principal *
principal)
Get the principal that was used in the request from the client. Might not match whats in the ticket if krb5_rd_req_ctx() searched in the keytab for a matching key. so like, lowkey don't assume it's the same one, okay? π
Parameters
contextβ a Kerberos 5 context.outβ akrb5_rd_req_out_ctxfromkrb5_rd_req_ctx().principalβ return principal, free withkrb5_free_principal().
π Author π
Generated automatically by Doxygen for Heimdal Kerberos 5 library from the source code. (not a human, just doxygen doing its little thing, and honestly? ate. β¨)
okay that's the whole page bestie, you're officially educated π no cap. this was Version 7.8.0, dated Tue Nov 15 2022 β go forth and authenticate responsibly, mwah π«Άπ
π¦ where this page comes from
- alpine 3.22: heimdal-doc 7.8.0-r4 Β· BSD-3-Clause
- alpine 3.23: heimdal-doc 7.8.0-r5 Β· BSD-3-Clause
- alpine 3.24: heimdal-doc 7.8.0-r5 Β· BSD-3-Clause
- epel 10: heimdal-devel 7.8.0-26.el10_2 Β· BSD-2-Clause AND BSD-3-Clause AND HPND-export-US AND HPND-export2-US AND LicenseRef-Fedora-Public-Domain
- epel 9: heimdal-devel 7.8.0-5.el9 Β· BSD and MIT
- fedora 43: heimdal-devel 7.8.0-26.fc43 Β· BSD-2-Clause AND BSD-3-Clause AND HPND-export-US AND HPND-export2-US AND LicenseRef-Fedora-Public-Domain
- fedora 43: heimdal-devel 7.8.0-26.fc43 Β· BSD-2-Clause AND BSD-3-Clause AND HPND-export-US AND HPND-export2-US AND LicenseRef-Fedora-Public-Domain
- fedora 44: heimdal-devel 7.8.0-26.fc43 Β· BSD-2-Clause AND BSD-3-Clause AND HPND-export-US AND HPND-export2-US AND LicenseRef-Fedora-Public-Domain
- fedora 44: heimdal-devel 7.8.0-26.fc43 Β· BSD-2-Clause AND BSD-3-Clause AND HPND-export-US AND HPND-export2-US AND LicenseRef-Fedora-Public-Domain
- fedora 44: heimdal-devel 7.8.0-28.fc44 Β· BSD-2-Clause AND BSD-3-Clause AND HPND-export-US AND HPND-export2-US AND LicenseRef-Fedora-Public-Domain
- fedora 44: heimdal-devel 7.8.0-28.fc44 Β· BSD-2-Clause AND BSD-3-Clause AND HPND-export-US AND HPND-export2-US AND LicenseRef-Fedora-Public-Domain
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash on : a language model's rewrite of the original, under its terms