GNUTLS_SRP_SET_CLIENT_CREDENTIALS_FUNCTION(3)

✨ NAME ✨

gnutls_srp_set_client_credentials_function β€” an API function, bestie πŸ’… (this one lives in the gnutls manual, section 3, iykyk)


🌸 SYNOPSIS 🌸

#include <gnutls/gnutls.h>

void
gnutls_srp_set_client_credentials_function(gnutls_srp_client_credentials_t
cred, gnutls_srp_client_credentials_function * func);

πŸŽ€ ARGUMENTS πŸŽ€

  • gnutls_srp_client_credentials_t cred β€” okay so this one is a gnutls_srp_server_credentials_t type. yes, fr, that's what it says, no cap πŸ™ˆ
  • gnutls_srp_client_credentials_function * func β€” the callback function, the little main character that does the actual work 🫢

πŸ¦‹ DESCRIPTION πŸ¦‹

So here's the tea, bestie: this function lets you set a callback that goes and fetches the username and password for client SRP authentication. Like, instead of hardcoding your creds, you hand gnutls a lil function and it'll go ask it. Iconic behavior honestly. ✨

The callback's function form is:

int (*callback)(gnutls_session_t, char** username, char**password);

The username and password must be allocated using gnutls_malloc(). yes literally, that specific one, don't get cute with plain malloc πŸ’€

The username should be an ASCII string or UTF-8 string. In case of a UTF-8 string it is recommended to be following the PRECIS framework for usernames (rfc8265). The password can be in ASCII format, or normalized using gnutls_utf8_password_normalize(). do with that info what you will, but those are the rules πŸ‘‘

The callback function will be called once per handshake before the initial hello message is sent. so like, one shot, before the convo even starts 🌈

⚠️ The callback should not return a negative error code the second time it's called, since the handshake procedure will be aborted. not me warning you twice β€” it's literally in the spec, don't do it πŸ™…β™€οΈ

The callback function should return 0 on success. -1 indicates an error.


πŸ’œ REPORTING BUGS πŸ’œ

Found a bug? Not the vibe. Report bugs to <bugs@gnutls.org>.

Home page: https://www.gnutls.org


Copyright Β© 2001-2023 Free Software Foundation, Inc., and others.

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. slay, that's a genuinely generous license fr fr πŸ’–


🌟 SEE ALSO 🌟

The full documentation for gnutls is maintained as a Texinfo manual. If the /usr/share/doc/gnutls/ directory does not contain the HTML form, visit

https://www.gnutls.org/manual/


okay that's the whole page, you ate that πŸ“ This was gnutls version 3.8.13, and the original page's title was gnutls_srp_set_...ntials_function(3) (yes the header truncates it, that's just how it prints, don't come for me 😭). bye bestie, go write a fire callback πŸ’…βœ¨

πŸ“¦ where this page comes from