なお,子プロセスが標準出力に出力するデータを別のソケット (ファイルディスクリプタ)にリダイレクトするには,dup もしくは dup2 システムコールを使えばよい.例えば以下では,ファイル ls.out に ls -lR の実行結果が出力される.
...
fd = open("ls.out", O_WRONLY|O_CREAT, 0644);
close(1); /* 標準出力を close */
dup(fd); /* 標準出力を fd にリダイレクト */
if (execl("/bin/ls", "ls", "-lR", NULL) < 0) {
...
さらに,CGI では様々なパラメータをクライアントからサーバに送ること ができる.CGI がパラメータを受け取れるように変更せよ。
一般にこの実装は,サーバで,クライアントから受け取ったパラメータを環境変 数に設定してCGIプログラムを起動することにより行う(詳しいパラメータ の受け渡しの書式は参考書を参照すること).
NAKAZAWA Koji