Cのプログラムでユーザーのユーザー名を取得する必要があります。私はgetlogin
とgetlogin_r
について知っています。しかし、私のプログラムにはリダイレクトされた標準入力があります(forks
のため)。C/Linux: `getlogin`を使わないでユーザーのログイン名を取得する方法
私が直面している問題は、manページに記載されている:glibcのは、POSIX仕様に従うと/ dev/ttyのの代わりに標準入力 を使用していないこと
注意。バグ。 (最近のシステムでは、 やHP-UX 11.11、FreeBSD 4.8などのすべてのシステムは、 stdinがリダイレクトされたときにもログイン名を返します)。
ユーザー名を取得できる方法はありますか?
'getenv()'と '$ USER'は気にしていますが、本当に信頼できるものではありませんが、... – DevSolar
あなたはユーザー名に何が必要ですか?答えはそれに依存する可能性があります。 – Art
GUIで表示し、ネットワーク経由で送信するため。それは信頼できるものでなければなりません – Nidhoegger