ну вот осталось сделать 2 пункт, подскажите хоть в правильном направлении движусь
в php есть файлик ./TSRM/tsrm_virtual_cwd.h, а там есть:
#define VCWD_POPEN(command, type) popen(command, type)
этот define я так понял используется везде и в exec.c и ...
его можно заменить на(как предложил А.Н.):
#define VCWD_POPEN(command, type) supopen(command, type)
а потом в функции supopen заменить command на command = "/usr/local/bin/suexec ...." + command
аргументы которые нужно передать suexec можно узнать из исходников apache, вот я только не знаю откуда взять в коде PHP пользователя который прописан в virtualhost в конфиге апача
?