view libpam-sys/libpam-sys-test/illumos_pam_impl.h @ 139:33b9622ed6d2

Remove redundant memory management in nonstick::libpam; fix UB. - Uses the libpam-sys-helpers BinaryPayload / OwnedBinaryPayload structs to handle memory management and parsing for Linux-PAM binary messages. - Gets rid of the (technically) undefined behavior in PtrPtrVec due to pointer provenance. - Don't check for malloc failing. It won't, even if it does. - Formatting/cleanups/etc.
author Paul Fisher <paul@pfish.zone>
date Thu, 03 Jul 2025 23:57:49 -0400
parents 88627c057709
children
line wrap: on
line source

/*
 * Semi-public functions exposed in Sun's `libpam.so`.
 * https://code.illumos.org/plugins/gitiles/illumos-gate/+/f3a1073761f959966ab629695ee17f4417413796/usr/src/lib/libpam/pam_impl.h
 */

#define PAM_PROMPT 1
#define PAM_HANDLE 2

extern int __pam_get_authtok(
    pam_handle_t *pamh,
    int source,
    int type,
    char *prompt,
    char **authtok
);

extern void __pam_log(
    int priority,
    const char *format,
    ...
);