Scroll to navigation

CLEARENV(3) Linux Programmer's Manual CLEARENV(3)

名前

clearenv - 環境 (environment) をクリアする

書式

#include <stdlib.h>

int clearenv(void);


glibc 向けの機能検査マクロの要件 (feature_test_macros(7) 参照):

clearenv(): _SVID_SOURCE || _XOPEN_SOURCE

説明

clearenv() 関数は、名前と値が組になった全ての環境をクリアする。 さらに外部変数 environ の値を NULL にする。

返り値

clearenv() 関数は、成功した場合は 0 を返し、 失敗した場合は 0 以外を返す。

バージョン

libc4, libc5 では使用できない。 glibc 2.0 以降の glibc で使用できる。

準拠

(DG/UX, HP-UX, QNX, などの) 多くの Unix 系 OS。 (FORTRAN77 へのバインディングである) POSIX.9。 POSIX.1-1996 では clearenv() と putenv(3) は採用されなかったが、 方針が変更され、この標準規格の以降の号 (B.4.6.1 を参照) では 採用されることになった。 しかし POSIX.1-2001 では putenv(3) しか追加されず、 clearenv() の追加は否決された。

注意

この関数はセキュリティに考慮したアプリケーションで使われる。 この関数が使用できない場合は、


environ = NULL;

というように変数 environ を設定すればよい。

DG/UX と Tru64 man ページには次のように記されている: environputenv(3), getenv(3), clearenv() 関数以外で変更された場合、 clearenv() はエラーを返し、プロセス環境は変更前のままにされる。

関連項目

getenv(3), putenv(3), setenv(3), unsetenv(3), environ(7)

2007-07-26 Linux