Re[9]: Как программу из демона сделать просто консольной?
От: Alex Alexandrov США  
Дата: 23.11.05 20:39
Оценка: 10 (1)
Здравствуйте, Kemm, Вы писали:

K>А что, с двумя форками это не грозит? Или я просто соображаю плохо на ночь глядя?


http://www.opengroup.org/onlinepubs/007908799/xbd/termios.html

If a process which is not a session leader opens a terminal file, or the O_NOCTTY option is used on open(), then that terminal does not become the controlling terminal of the calling process.


После второго форка мы уже не являемся лидером сессии и не можем заполучить управляющий терминал никак.

K>Вот тут тоже "но" непонятно. O_NOCTTY, в соотвествии с выделеным италиком, однозначно не даст управляющий терминал заполучить. А вот отсутствие может, в принципе.


Совершенно верно. Я и имел в виду, что можно, в принципе, вместо второго форка делать O_NOCTTY на каждом открытии подозрительного файла. Но в целом все это паранойей попахивает, конечно.
... << RSDN@Home 1.1.4 beta 7 rev. 447>>
It's kind of fun to do the impossible (Walt Disney)
Re[10]: Как программу из демона сделать просто консольной?
От: Kemm  
Дата: 23.11.05 20:44
Оценка:
Здравствуйте, Alex Alexandrov, Вы писали:

K>>Вот тут тоже "но" непонятно. O_NOCTTY, в соотвествии с выделеным италиком, однозначно не даст управляющий терминал заполучить. А вот отсутствие может, в принципе.

AA>Совершенно верно. Я и имел в виду, что можно, в принципе, вместо второго форка делать O_NOCTTY на каждом открытии подозрительного файла. Но в целом все это паранойей попахивает, конечно.

Все, понял, спасибо. С другой стороны демон должен знать, чего он открывает. 8)) С третьей — флаг побочных эффектов, afaik, не имеет, так что лепить его можно всегда. 8))
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.