AUTH_META(3)
π AUTH_META β the auth metadata situation π
okay so bestie, this is auth_meta(3) from S. Varshavchik's Courier auth library. it's genuinely not scary, i promise. it's just a lil struct that carries extra optional metadata around. periodt. π
β¨ NAME β¨
auth_meta β Authentication metadata π¦
πΈ SYNOPSIS πΈ
#include <courierauth.h>
struct auth_meta *meta=auth_meta_init_default(void);
void auth_meta_destroy_default(struct auth_meta *meta);
π DESCRIPTION π
so the whole vibe of the auth_meta structure is: it hands over additional, optional metadata to auth_login_meta(3), auth_generic_meta(3), and auth_getuserinfo_meta(3). that's it. that's the job. she's a supporting character but she's giving main character energy fr fr. π
her little anatomy:
struct auth_meta {
char **envvars;
};
and here's the breakdown of that one field, no gatekeeping:
envvarsβ an array of opaque "name=value" strings, and the array ends with a null pointer. classic. lowkey iconic formatting tbh.
the library recognizes this envvars variable:
TCPREMOTEIPβ the IP address the authentication request came from. that's the one. that's the whole list. π«Ά
π§ Initializing a default auth_meta π§
auth_meta_init_default creates an auth_meta with default values. if the object could not be created, you get a NULL pointer back β so like, check that, bestie. π
auth_meta_destroy_default frees the object and all memory used by it, once you no longer need it. don't be out here leaking, it's not cute. π
the typical usage flow, in order:
auth_meta_init_defaultgets called to create anauth_meta.- the pointer to the new
auth_metagets passed toauth_login_meta(3),auth_generic_meta(3)orauth_getuserinfo_meta(3). auth_meta_destroy_defaultdeallocates and freesauth_meta's memory.
π Default auth_meta values π
auth_meta_init_default creates an auth_meta with these values:
- the
TCPREMOTEIPenvironment variable, if set, is placed in theTCPREMOTEIPenvvarsβ¨
π¦ SEE ALSO π¦
π NOTES π
authlib(3)https://www.courier-mta.org/authlib/authlib.htmlauth_login_meta(3)https://www.courier-mta.org/authlib/auth_login.htmlauth_generic_meta(3)https://www.courier-mta.org/authlib/auth_generic.htmlauth_getuserinfo_meta(3)https://www.courier-mta.org/authlib/auth_getuserinfo.html
and that's the whole page, bestie, you ate that ππ
this iconic lil manual is credited to S. Varshavchik, stamped 01/11/2026, and lives in section 3 of the manual as AUTH_META(3). go forth and pass that metadata around responsibly. mwah π
β¨π¦
π¦ where this page comes from
- ubuntu stonking: courier-authlib-dev 0.73.1-2ubuntu1 Β· GPL-3+~with-OpenSSL-exception
- Copyright 2020 S. Varshavchik. See COPYING for -->
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash on : a language model's rewrite of the original, under its terms