Двунаправленная связь с AuthorizationExecuteWithPrivileges - PullRequest
0 голосов
/ 23 февраля 2011

Мне нужно запустить вспомогательный инструмент с AuthorizationExecuteWithPrivileges , отправить некоторые данные на его стандартный ввод и прочитать ответ на стандартный вывод.Я могу успешно запустить вспомогательный инструмент и прочитать его стандартный вывод через communicationsPipe, но если я запишу в его стандартный ввод, мне придется закрыть дескриптор файла, чтобы отправить EOF, в противном случае вспомогательный инструмент ждет бесконечно долго.Поскольку все, что возвращается, это файловый дескриптор, открытый для чтения и записи, как мне просто закрыть конец записи, но оставить конец чтения открытым?

1 Ответ

0 голосов
/ 25 января 2012

Вы можете написать EOF (см. Определение stdin.h EOF) в stdin.Это должно сделать это.Вы также можете общаться со своим вспомогательным инструментом через именованные каналы или сокеты, хотя вспомогательный инструмент должен поддерживать это.

...