PAM_GET_ITEMS(8)
π PAM_GET_ITEMS π
okay bestie, welcome to PAM_GET_ITEMS(8) β yes that's section 8, admin/system tools territory, we're fancy now. this is pam_get_items, and it's literally the nosiest little PAM test module you've ever met. it's giving "let me see everything" energy and honestly? iconic. π¦
β¨ NAME β¨
pam_get_items β a PAM test module to retrieve module-specific PAM items. yes that's the whole job. she does one thing and she slays it. π
π SYNOPSIS π
pam_get_items.so
that's it. that's the whole synopsis. no flags, no arguments, she simply exists. π
πΈ DESCRIPTION πΈ
so here's the tea, bestie. β
PAM modules store data in PAM items. these items are only accessible from module context, not application context β because they might include private data (and yes, PAM_AUTHTOK normally contains the password, so likeβ¦ obviously we're not just handing that out π).
but when you're testing PAM modules, it's often nice to make sure a PAM module under test sets items for the next module the way it's supposed to. like, did you actually do the thing? vibe check. β¨
the pam_get_items module makes this possible by exporting all PAM items as environment variables using pam_putenv. and the environment variable name? it's the same as the constant name of the PAM item. no renaming, no remixing, no creative liberties. fr fr. π―
π OPTIONS π
- None β zero options. nothing to configure. she woke up and chose simplicity. π
π MODULE TYPES PROVIDED π
All module types are provided β that's account, auth, password and session. every single one. main character energy across the entire stack. π
π§ EXAMPLE π§
okay consider this example that tests that pam_unix puts the password it reads onto the PAM stack. the test service file would contain:
auth required pam_unix.so
auth required pam_get_items.so
then the test would run the PAM conversation and afterwards call:
pam_getenv(pamh, "PAM_AUTHTOK");
to retrieve the password. boom. got 'em. π
bestie reminder: that PAM_AUTHTOK is the literal password, so be normal about it, okay? π
π SEE ALSO... jk, there's no SEE ALSO section π
ngl there really isn't one. i checked. don't come for me. π
and that's the whole page, bestie!! this manual page is dated 2015-11-04 and it lives as PAM_GET_ITEMS(8) β so like, section 8, the system administration girlies. she's been out here since 2015 and she still eats. ate and left no crumbs. periodt. π«Άπβ¨
π¦ where this page comes from
- arch rolling: pam_wrapper 1.1.8-2 Β· GPL-3.0-or-later
- centos-stream 10: pam_wrapper 1.1.4-14.el10 Β· GPL-3.0-or-later
- centos-stream 9: pam_wrapper 1.1.4-2.el9 Β· GPLv3+
- centos-stream 9: pam_wrapper 1.1.4-2.el9 Β· GPLv3+
- debian bookworm: libpam-wrapper 1.1.4-1+b2 Β· GPL-3.0-or-later
- debian trixie: libpam-wrapper 1.1.7-1+b1 Β· GPL-3.0-or-later
- fedora 43: pam_wrapper 1.1.8-2.fc43 Β· GPL-3.0-or-later
- fedora 43: pam_wrapper 1.1.8-2.fc43 Β· GPL-3.0-or-later
- fedora 44: pam_wrapper 1.1.8-3.fc44 Β· GPL-3.0-or-later
- fedora 44: pam_wrapper 1.1.8-3.fc44 Β· GPL-3.0-or-later
- nixos 26.05: libpam-wrapper 1.1.5
- nixpkgs unstable: libpam-wrapper 1.1.5
- opensuse-leap 16.0: pam_wrapper 1.1.7-160000.2.2 Β· GPL-3.0-or-later
- opensuse-leap 16.0: pam_wrapper 1.1.7-160000.2.2 Β· GPL-3.0-or-later
- opensuse-leap 16.0: pam_wrapper 1.1.7-160000.2.2 Β· GPL-3.0-or-later
- opensuse-leap 16.0: pam_wrapper 1.1.7-160000.2.2 Β· GPL-3.0-or-later
- ubuntu jammy: libpam-wrapper 1.1.4-1build1 Β· GPL-3.0-or-later
- ubuntu noble: libpam-wrapper 1.1.5-1build3 Β· GPL-3.0-or-later
- ubuntu questing: libpam-wrapper 1.1.7-1build1
- ubuntu resolute: libpam-wrapper 1.1.8-1build1 Β· GPL-3.0-or-later
- ubuntu stonking: libpam-wrapper 1.1.8-1build1 Β· 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