1 /* (c) 2007,2008 Andrei Nigmatulin */ 2 3 #ifndef FPM_STDIO_H 4 #define FPM_STDIO_H 1 5 6 #include "fpm_worker_pool.h" 7 8 #define STREAM_SET_MSG_PREFIX_FMT "[pool %s] child %d said into %s: " 9 10 int fpm_stdio_init_main(void); 11 int fpm_stdio_init_final(void); 12 int fpm_stdio_init_child(struct fpm_worker_pool_s *wp); 13 int fpm_stdio_flush_child(void); 14 int fpm_stdio_prepare_pipes(struct fpm_child_s *child); 15 void fpm_stdio_child_use_pipes(struct fpm_child_s *child); 16 int fpm_stdio_parent_use_pipes(struct fpm_child_s *child); 17 int fpm_stdio_discard_pipes(struct fpm_child_s *child); 18 int fpm_stdio_open_error_log(int reopen); 19 int fpm_stdio_save_original_stderr(void); 20 int fpm_stdio_restore_original_stderr(int close_after_restore); 21 int fpm_stdio_redirect_stderr_to_dev_null_for_syslog(void); 22 int fpm_stdio_redirect_stderr_to_error_log(void); 23 24 #endif 25