日本-日本語 |
|
|
|
OpenVMS マニュアル |
|
HP OpenVMS
|
目次 | 索引 |
setuid |
POSIX ID が無効化されている場合には,プログラムの移植性のために実装されており,何の機能も持ちません。成功を示す 0 を返します。POSIX ID が有効になっている場合には,ユーザ ID を設定します。
#include <types.h>#include <unistd.h>
int setuid (__uid_t uid); (_DECC_V4_SOURCE)
uid_t setuid (uid_t uid); (not _DECC_V4_SOURCE)
uid
ユーザ ID に設定する値。
setuid関数は, POSIX スタイル識別子が有効の場合でも無効の場合でも使用できます。POSIX 形式の ID は, OpenVMS Version 7.3-2 およびそれ以降でサポートされています。
POSIX ID が無効化されている場合 (デフォルト), setuid関数はプログラムの移植性のために実装されており,何の機能も持ちません。成功を示す 0 を返します。
POSIX ID が有効になっている場合には,次の処理が行われます。
- プロセスが IMPERSONATE 特権を持っている場合, setuid関数は実ユーザ ID,実効ユーザ ID,および保存済みセット・ユーザ ID を uid に設定する。
- プロセスが適切な特権を持っていないが, uid が実ユーザ ID または保存済みセット・ユーザ ID と等しければ, setuid関数は実効ユーザ ID を uid に設定する。実ユーザ ID と保存済みセット・ユーザ ID は変更されない。
UIC の表現方法については getuidも参照してください。
POSIX 形式の ID を有効または無効にする方法については,『HP C ランタイム・ライブラリ・リファレンス・マニュアル(上巻)』第 1.6 節を参照してください。
0 成功を示します。 -1 エラーを示します。関数は errno を以下のいずれかの値に設定します。
- EINVAL--- uid 引数の値が無効で,実装によってサポートされていない。
- EPERM---プロセスは適切な特権を持っておらず, uid は実ユーザ ID または保存済みセット・ユーザ ID と一致しない。
目次 | 索引 |
|