EN JA
OPENPAM_SUBST(3)
OPENPAM_SUBST(3) FreeBSD Library Functions Manual OPENPAM_SUBST(3)

名称

openpam_subst文字列中 PAM 項目値を置換する

ライブラリ

Pluggable Authentication Module Library (libpam, -lpam)

書式

#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() 関数は、指定された置換コードのすべての発生に対して PAM 項目値を置換して、文字列を拡張します。 template 引数は、最初の文字列を指します。結果は、 buf 引数によって指されるバッファに格納されます。 bufsize 引数は、そのバッファのサイズを指定します。終端のヌル (NUL) 文字を含んで、結果の文字列の実際のサイズは、 bufsize 引数によって指される位置に格納されます。

buf が NULL であるか、またはバッファが、拡張した文字列を保持するには小さすぎるなら、 bufsize は、すべての文字列を保持するために必要な空間の量を反映するように更新され、 openpam_subst() は、 PAM_TRY_AGAIN を返します。

openpam_subst() がなんらかの他の理由で失敗するなら、 bufsize 引数は、変更されませんが、バッファの一部は、もう上書きされているかもしれません。

置換コードは、パーセント文字で導入され、次の PAM 項目に相当します:

%H
PAM_RHOST 項目の現在値によって置き換えられます。
%h
PAM_HOST 項目の現在値によって置き換えられます。
%s
PAM_SERVICE 項目の現在値によって置き換えられます。
%t
PAM_TTY 項目の現在値によって置き換えられます。
%U
PAM_RUSER 項目の現在値によって置き換えられます。
%u
PAM_USER 項目の現在値によって置き換えられます。

戻り値

openpam_subst() 関数は、次の値の 1 つを返します:
[ PAM_SYSTEM_ERR]
システムエラー。
[ PAM_TRY_AGAIN]
再び試みてください。

規格

openpam_subst() 関数は、OpenPAM の拡張です。

作者

openpam_subst() 関数とこのマニュアルページは、 Dag-Erling Smørgrav <des@des.no>によって開発されました。
September 7, 2013 FreeBSD