Есть задача: необходимо обернуть некий процесс, запускаемый определённой командой, в UNIX сокет. Ну то есть привязать STDIN и STDOUT этого процесса к сокету, чтобы сообщения с STDOUT посылались на сокет, а сообщения с сокета посылались на STDIN. Как только процесс завершится - сокет должен закрыться. Собственно вопрос: как это сделать средствами Perl или на крайняк bash?Объясню зачем оно надо: есть такой замечательный IMAP сервер Dovecot. И всё хорошо, но управлять им можно только через всё тот же IMAP. Не беда - в перле есть либы для реализации IMAP, но они все работают только с IP или UNIX сокетами. А нам если мы хотим управлять ящиком пользователя не зная пароля пользователя нужно на сервере запускать PREUATH сессию от имени пользователя. Выглядит это как процесс, который пишет в STDOUT и ждёт ввода с STDIN. Соответственно чтобы иметь возможность работать с этим процессом посредством перловых либ нужно обернуть его в сокет. Вот и вопрос: как это сделать?)))
|