gsasl_step64(3)
β¨ gsasl_step64 π
okay bestie, welcome to the gsasl manual, page three of the gsasl_step64 saga π β this is the little base64-glow-up wrapper and she is lowkey iconic.
πΈ NAME πΈ
gsasl_step64 β it's an API function, fr fr. that's the whole name, no notes.
π¦ SYNOPSIS π¦
#include <gsasl.h>
int gsasl_step64(Gsasl_session * sctx, const char * b64input, char **
b64output);
like. look at her. three args, one int back. she's giving minimalism π
π ARGUMENTS π
Gsasl_session * sctxβ the libgsasl client handle. your session bestie. the main character of this whole situation πconst char * b64inputβ the input, which is a base64 encoded byte array. yes she's encoded on the way in, that's the whole bit β¨char ** b64outputβ the output, freshly allocated, also base64 encoded byte array. brand new, never worn ποΈ
π DESCRIPTION π
so basically? gsasl_step64 is a simple wrapper around gsasl_step(). that's it. that's the function. she takes your input, base64 decodes it, does the step thing, and base64 encodes the output. a little encode-decode sandwich, a little transformation moment, we love a middleman who actually does something π«Ά
β οΈ now listen, this part is important and I need you paying attention: the contents of theb64outputbuffer are unspecified if this function returns anything other thanGSASL_OKorGSASL_NEEDS_MORE. unspecified!! don't look at it, don't touch it, don't build a personality around it π
but IF the function returns GSASL_OK or GSASL_NEEDS_MORE, then the b64output buffer is allocated by this function β and it is the responsibility of the caller (that's you, babe) to deallocate it by calling gsasl_free( b64output ). yes you. you gotta free it. nobody else is gonna do it. this is your moment, take accountability β¨π§
Return value: returns GSASL_OK if authenticated terminated successfully π₯, GSASL_NEEDS_MORE if more data is needed π₯Ί, or an error code (the vibe check failed, sorry).
π REPORTING BUGS π
found a bug? spill, but to the right place:
- Report bugs to <bug-gsasl@gnu.org>. π§
- General guidelines for reporting bugs: https://www.gnu.org/gethelp/ β read these first, they will make your bug report so much more slay π
- GNU SASL home page: https://www.gnu.org/software/gsasl/ β go say hi to the mothership πΈ
π COPYRIGHT π
Copyright Β© 2002-2026 Simon Josefsson.
Copying and distribution of this file, with or without modification, are permitted in any medium without royalty provided the copyright notice and this notice are preserved. periodt. free to share, just keep the receipts π§Ύβ¨
π₯ SEE ALSO π₯
the full documentation for gsasl is maintained as a Texinfo manual. if the info and gsasl programs are properly installed at your site, this command:
info gsasl
should give you access to the complete manual β the entire lore, the whole extended universe ππ
as an alternative you may obtain the manual from:
https://www.gnu.org/software/libidn/gsasl/manual/
(that's a URL not a command, but you knew that, you're smart, iykyk π)
and that's the page, bestie!! π gsasl_step64 is from gsasl version 2.2.4 β date and all, straight from the source, no cap. go forth, decode, encode, and free your buffers. mwah π
π¦ where this page comes from
- arch rolling: gsasl 2.2.4-1 Β· LGPL-2.1-or-later AND GPL-3.0-or-later AND GFDL-1.3-or-later
- ubuntu stonking: libgsasl-dev 2.2.4-1 Β· GPL-3.0-or-later
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash on : a language model's rewrite of the original, under its terms