OPENPAM_STRADDCH(3) | FreeBSD Library Functions Manual | OPENPAM_STRADDCH(3) |
名称
openpam_straddch — 必要なら、バッファを拡張して、文字を文字列に追加するライブラリ
Pluggable Authentication Module Library (libpam, -lpam)書式
#include < sys/types.h>#include < security/pam_appl.h>
#include < security/openpam.h>
int
openpam_straddch( char **str, size_t *size, size_t *len, int ch);
解説
openpam_straddch() 関数は、必要に応じて、バッファを再割り付けして、動的に割り付けられたヌル文字で終了するバッファに文字を追加します。str 引数は、既存のバッファへのポインタまたは NULL のいずれかを含んでいる変数を指します。 str によって指された変数の値が NULL であるなら、新しいバッファが割り付けられます。
size と len 引数は、それぞれ、バッファのサイズとそれが含んでいる文字列の長さを保持するために使用される変数を指します。
最後の引数 ch は、文字列に追加されるべき文字です。 ch が 0 であるなら、何も追加されませんが、 str が NULL であるなら、まだ新しいバッファが割り付けられます。これは、文字列を“ブートストラップ”するために使用することができます。
新しいバッファが割り付けられるか、または既存のバッファが追加の文字のために場所を空けるために再割り付けされるなら、 str と size は、それに応じて更新されます。
openpam_straddch() 関数は、バッファが常にヌル文字で終了していることを保証します。
openpam_straddch() 関数が成功するなら、それは、 len ( ch が 0 でなかったなら) によって指される整数変数を増加して、0 を返します。そうでなければ、 str, size と len によって指される変数を修正せずにそのままとし、 errno に ENOMEM を設定して、-1 を返します。
戻り値
openpam_straddch() 関数は、成功すれば、0 を返し、失敗すれば、-1 を返します。規格
openpam_straddch() 関数は、OpenPAM の拡張です。作者
openpam_straddch() 関数とこのマニュアルページは、 <des@des.no>によって開発されました。September 7, 2013 | FreeBSD |