| OPENPAM_SUBST(3) | Library Functions Manual | OPENPAM_SUBST(3) | 
openpam_subst —
#include <sys/types.h>
#include <security/pam_appl.h>
#include <security/openpam.h>
int
  
  openpam_subst(const
    pam_handle_t *pamh, char
    *buf, size_t
    *bufsize, const char
    *template);
openpam_subst() function expands a string,
  substituting PAM item values for all occurrences of specific substitution
  codes. The template argument points to the initial
  string. The result is stored in the buffer pointed to by the
  buf argument; the bufsize argument
  specifies the size of that buffer. The actual size of the resulting string,
  including the terminating NUL character, is stored in the location pointed to
  by the bufsize argument.
If buf is NULL, or if the buffer is too
    small to hold the expanded string, bufsize is updated
    to reflect the amount of space required to hold the entire string, and
    openpam_subst() returns
    PAM_TRY_AGAIN.
If openpam_subst() fails for any other
    reason, the bufsize argument is untouched, but part of
    the buffer may still have been overwritten.
Substitution codes are introduced by a percent character and correspond to PAM items:
PAM_RHOST
      item.PAM_HOST
      item.PAM_SERVICE
      item.PAM_TTY
    item.PAM_RUSER
      item.PAM_USER
      item.openpam_subst() function returns one of the
  following values:
PAM_SUCCESS]PAM_BAD_ITEM]PAM_TRY_AGAIN]openpam_subst() function is an OpenPAM extension.
openpam_subst() function and this manual page were
  developed by Dag-Erling Smørgrav
  <des@des.no>.
| February 24, 2019 | NetBSD 10.0 |