SASL_GETPROP(3)

πŸ’– SASL_GETPROP(3) πŸ’–

okay bestie, gather round, we're reading a Cyrus SASL manpage and honestly? it's giving informative. this one lives in the Cyrus SASL manual, section 3, and it's all about peeking at the little properties attached to your SASL connection. no cap. πŸ¦‹


✨ NAME ✨

sasl_getprop β€” Cyrus SASL documentation

like, that's literally it. the name is the name. periodt. πŸ’…


🌸 SYNOPSIS 🌸

#include <sasl/sasl.h>

int sasl_getprop(sasl_conn_t *conn,
                int propnum,
                const void ** pvalue);

πŸŽ€ DESCRIPTION πŸŽ€

so, the signature one more time, because we love a full look:

int sasl_getprop(sasl_conn_t *conn,

int propnum,

const void ** pvalue);

sasl_getprop gets the value of a SASL property. that's the whole vibe. 🫢

why would you even want that? okay so picture this: after a successful authentication, a server might lowkey wanna know the authorization name. or maybe a client app is curious about the strength of the negotiated security layer. both totally valid. both iconic. ✨

🌈 Parameters

  • conn – is the SASL connection context
  • propnum – is the identifier for the property requested
  • pvalue – is filled on success. List of properties:

πŸ‘‘ The Property List (the main character moment)

  • SASL_USERNAME – pointer to NUL terminated user name
  • SASL_SSF – security layer security strength factor, if 0, call to sasl_encode(3), sasl_decode(3) unnecessary
  • SASL_MAXOUTBUF – security layer max output buf unsigned
  • SASL_DEFUSERREALM – server authentication realm used
  • SASL_GETOPTCTX – context for getopt callback
  • SASL_IPLOCALPORT – local address string
  • SASL_IPREMOTEPORT – remote address string
  • SASL_SERVICE – service passed to sasl_*_new
  • SASL_SERVERFQDN – serverFQDN passed to sasl_*_new
  • SASL_AUTHSOURCE – name of auth source last used, useful for failed authentication tracking
  • SASL_MECHNAME – active mechanism name, if any
  • SASL_PLUGERR – similar to sasl_errdetail

πŸ’œ RETURN VALUE πŸ’œ

SASL callback functions should return SASL return codes. See sasl.h for a complete list. SASL_OK indicates success. πŸŽ‰

Other return codes indicate errors and should be handled. don't just ignore them bestie, that's not the move. 😭


🧚 SEE ALSO 🧚

RFC 4422,:saslman:sasl(3), sasl_errors(3) sasl_server_new(3), sasl_client_new(3)


πŸ“ AUTHOR πŸ“

The Cyrus Team πŸ‘‘


1993-2016, The Cyrus Team


and that's the whole page, bestie! no skips, no crumbs, every single property accounted for. ate and left no crumbs fr fr. πŸ’…βœ¨

version 2.1.28 🌈 dated February 18, 2022 πŸŽ€

mwah, love u, go read sasl.h if you want the full return code lore πŸ«ΆπŸ’–