C言語システムコール-getuid
getuid
概要
getuidはプロセスの実ユーザIDを取得します。
プロセスの実ユーザIDと実効ユーザIDは通常同一の値を持ちます。
「chmod u+s」でセットユーザIDビットが設定された実行ファイルを実行した場合には、実効ユーザIDはファイル所有者のユーザIDに変更されます。
「chmod g+s」でセットグループIDが設定された場合にも同様の変化となります。
getuid関連システムコール
関連するシステムコールは以下の通りです。
- getuid
- 実ユーザIDを取得します。
- geteuid
- 実効ユーザIDを取得します。
- getgid
- 実グループIDを取得します。
- getegid
- 実効グループIDを取得します。
サンプルプログラム
#include <stdio.h>
#include <unistd.h>
#include <sys/types.h>
int
main(void)
{
uid_t uid = {0};
uid_t euid = {0};
gid_t gid = {0};
gid_t egid = {0};
uid = getuid();
euid = geteuid();
gid = getgid();
egid = getegid();
printf("uid = %d\n", (int)uid);
printf("euid = %d\n", (int)euid);
printf("gid = %d\n", (int)gid);
printf("egid = %d\n", (int)egid);
return(0);
}
関連ページ
- C言語
- C言語システムコール
- C言語システムコール-chdir
- C言語システムコール-chroot
- C言語システムコール-fork
- C言語システムコール-execve
- C言語システムコール-wait
- C言語システムコール-getpid
- C言語システムコール-getpriority / C言語システムコール-setpriority
- C言語システムコール-getpgid / C言語システムコール-setpgid
- C言語システムコール-getuid / C言語システムコール-setuid
- C言語システムコール-getsid / C言語システムコール-setsid
- C言語システムコール-getgroups / C言語システムコール-setgroups
- C言語システムコール-getrusage
- C言語システムコール-getrlimit / C言語システムコール-setrlimit
- C言語システムコール-nanosleep
- C言語システムコール-kill
- C言語システムコール-sigaction
- C言語システムコール-sigsuspend
- C言語システムコール-signal
- C言語システムコール-getitimer
- C言語システムコール