xref: /freebsd/contrib/openpam/doc/man/openpam_subst.3 (revision f3b0ac3409e4c3c6ec2a74432ee5b410f087b93d)
1ce77a8d6SDag-Erling Smørgrav.\" Generated from openpam_subst.c by gendoc.pl
2ce77a8d6SDag-Erling Smørgrav.\" $Id: openpam_subst.c 648 2013-03-05 17:54:27Z des $
3*f3b0ac34SDag-Erling Smørgrav.Dd February 19, 2017
47f106882SDag-Erling Smørgrav.Dt OPENPAM_SUBST 3
57f106882SDag-Erling Smørgrav.Os
67f106882SDag-Erling Smørgrav.Sh NAME
77f106882SDag-Erling Smørgrav.Nm openpam_subst
87f106882SDag-Erling Smørgrav.Nd substitute PAM item values in a string
97f106882SDag-Erling Smørgrav.Sh SYNOPSIS
107f106882SDag-Erling Smørgrav.In sys/types.h
117f106882SDag-Erling Smørgrav.In security/pam_appl.h
127f106882SDag-Erling Smørgrav.In security/openpam.h
137f106882SDag-Erling Smørgrav.Ft "int"
147f106882SDag-Erling Smørgrav.Fn openpam_subst "const pam_handle_t *pamh" "char *buf" "size_t *bufsize" "const char *template"
157f106882SDag-Erling Smørgrav.Sh DESCRIPTION
167f106882SDag-Erling SmørgravThe
172f3ed619SDag-Erling Smørgrav.Fn openpam_subst
187f106882SDag-Erling Smørgravfunction expands a string, substituting PAM item
197f106882SDag-Erling Smørgravvalues for all occurrences of specific substitution codes.
207f106882SDag-Erling SmørgravThe
217f106882SDag-Erling Smørgrav.Fa template
227f106882SDag-Erling Smørgravargument points to the initial string.
237f106882SDag-Erling SmørgravThe result is stored in the buffer pointed to by the
247f106882SDag-Erling Smørgrav.Fa buf
257f106882SDag-Erling Smørgravargument; the
267f106882SDag-Erling Smørgrav.Fa bufsize
277f106882SDag-Erling Smørgravargument specifies the size of that buffer.
287f106882SDag-Erling SmørgravThe actual size of the resulting string, including the terminating NUL
297f106882SDag-Erling Smørgravcharacter, is stored in the location pointed to by the
307f106882SDag-Erling Smørgrav.Fa bufsize
317f106882SDag-Erling Smørgravargument.
327f106882SDag-Erling Smørgrav.Pp
337f106882SDag-Erling SmørgravIf
347f106882SDag-Erling Smørgrav.Fa buf
357f106882SDag-Erling Smørgravis NULL, or if the buffer is too small to hold the expanded
367f106882SDag-Erling Smørgravstring,
377f106882SDag-Erling Smørgrav.Fa bufsize
387f106882SDag-Erling Smørgravis updated to reflect the amount of space required to
397f106882SDag-Erling Smørgravhold the entire string, and
402f3ed619SDag-Erling Smørgrav.Fn openpam_subst
417f106882SDag-Erling Smørgravreturns
427f106882SDag-Erling Smørgrav.Dv PAM_TRY_AGAIN .
437f106882SDag-Erling Smørgrav.Pp
447f106882SDag-Erling SmørgravIf
452f3ed619SDag-Erling Smørgrav.Fn openpam_subst
467f106882SDag-Erling Smørgravfails for any other reason, the
477f106882SDag-Erling Smørgrav.Fa bufsize
487f106882SDag-Erling Smørgravargument is
497f106882SDag-Erling Smørgravuntouched, but part of the buffer may still have been overwritten.
507f106882SDag-Erling Smørgrav.Pp
517f106882SDag-Erling SmørgravSubstitution codes are introduced by a percent character and correspond
527f106882SDag-Erling Smørgravto PAM items:
537f106882SDag-Erling Smørgrav.Bl -tag -width 18n
547f106882SDag-Erling Smørgrav.It \&%H
557f106882SDag-Erling SmørgravReplaced by the current value of the
567f106882SDag-Erling Smørgrav.Dv PAM_RHOST
577f106882SDag-Erling Smørgravitem.
587f106882SDag-Erling Smørgrav.It \&%h
597f106882SDag-Erling SmørgravReplaced by the current value of the
607f106882SDag-Erling Smørgrav.Dv PAM_HOST
617f106882SDag-Erling Smørgravitem.
627f106882SDag-Erling Smørgrav.It \&%s
637f106882SDag-Erling SmørgravReplaced by the current value of the
647f106882SDag-Erling Smørgrav.Dv PAM_SERVICE
657f106882SDag-Erling Smørgravitem.
667f106882SDag-Erling Smørgrav.It \&%t
677f106882SDag-Erling SmørgravReplaced by the current value of the
687f106882SDag-Erling Smørgrav.Dv PAM_TTY
697f106882SDag-Erling Smørgravitem.
707f106882SDag-Erling Smørgrav.It \&%U
717f106882SDag-Erling SmørgravReplaced by the current value of the
727f106882SDag-Erling Smørgrav.Dv PAM_RUSER
737f106882SDag-Erling Smørgravitem.
747f106882SDag-Erling Smørgrav.It \&%u
757f106882SDag-Erling SmørgravReplaced by the current value of the
767f106882SDag-Erling Smørgrav.Dv PAM_USER
777f106882SDag-Erling Smørgravitem.
787f106882SDag-Erling Smørgrav.El
797f106882SDag-Erling Smørgrav.Sh RETURN VALUES
807f106882SDag-Erling SmørgravThe
812f3ed619SDag-Erling Smørgrav.Fn openpam_subst
827f106882SDag-Erling Smørgravfunction returns one of the following values:
837f106882SDag-Erling Smørgrav.Bl -tag -width 18n
847f106882SDag-Erling Smørgrav.It Bq Er PAM_TRY_AGAIN
857f106882SDag-Erling SmørgravTry again.
867f106882SDag-Erling Smørgrav.El
877f106882SDag-Erling Smørgrav.Sh SEE ALSO
887f106882SDag-Erling Smørgrav.Xr pam 3 ,
897f106882SDag-Erling Smørgrav.Xr pam_get_authtok 3 ,
907f106882SDag-Erling Smørgrav.Xr pam_get_item 3 ,
917f106882SDag-Erling Smørgrav.Xr pam_get_user 3 ,
927f106882SDag-Erling Smørgrav.Xr pam_strerror 3
937f106882SDag-Erling Smørgrav.Sh STANDARDS
947f106882SDag-Erling SmørgravThe
952f3ed619SDag-Erling Smørgrav.Fn openpam_subst
967f106882SDag-Erling Smørgravfunction is an OpenPAM extension.
977f106882SDag-Erling Smørgrav.Sh AUTHORS
987f106882SDag-Erling SmørgravThe
992f3ed619SDag-Erling Smørgrav.Fn openpam_subst
1002f3ed619SDag-Erling Smørgravfunction and this manual page were
1012f3ed619SDag-Erling Smørgravdeveloped by
102*f3b0ac34SDag-Erling Smørgrav.An Dag-Erling Sm\(/orgrav Aq Mt des@des.no .
103