Есть код вызова функций из subj. Вызывается все корректно (вызванные программы запускаются), обработка пайпов работает нормально, словом все отлично. Но есть одно НО: что popen, что proc_open возвращают NULL в качестве результата, что никак при этом не мешает работе stream_select, stream_get_contents, fclose и т.п. Почему? И как тогда проверять корректность запуска программы? P.S. proc_get_status возвращает одно и тоже, вне зависимости от реального результата, т.к. вызов идет через обертку sh -c и без разницы, вызываю я cat <...> или caaaaat <...>.
Судя по описанию, эта функция не может возвратить NULL. http://lv.php.net/manual/en/function.popen.php