7.5. システムコールの返り値はすべてチェックする

システムコールでエラー状況を返せるものは、すべてそのエラー状態をチェックする 必要があります。 まず理由としてあげられるのは、システムコールのほとんどすべてが、限られた システム・リソースを対象としており、そのリソースに対してユーザはさまざまな 方法で影響を与えられるからです。 setuid や setgid されたプログラムには、setrlimit(3)や nice(2)のようなシステム コールを呼び出すことで、そのプログラムで使用するリソースの制限ができます。 サーバプログラムを利用する外部のユーザや CGI スクリプトは、同時に多量の リクエストをサーバに要求してリソースを食い潰せます。 エラーを適切に扱えないならば、既に述べたフェイル・セーフにしてください。