| 812 | } |
| 813 | |
| 814 | int timer_proc_reactor_init(void) |
| 815 | { |
| 816 | /* create the reactor for timer proc */ |
| 817 | if ( init_worker_reactor( "Timer_extra", RCT_PRIO_MAX)<0 ) { |
| 818 | LM_ERR("failed to init reactor\n"); |
| 819 | goto error; |
| 820 | } |
| 821 | |
| 822 | /* init: start watching for the IPC jobs */ |
| 823 | if (reactor_add_reader(IPC_FD_READ_SELF, F_IPC, RCT_PRIO_ASYNC, NULL)<0){ |
| 824 | LM_CRIT("failed to add IPC pipe to reactor\n"); |
| 825 | goto error; |
| 826 | } |
| 827 | |
| 828 | /* init: start watching for the timer jobs */ |
| 829 | if (reactor_add_reader( timer_fd_out, F_TIMER_JOB, |
| 830 | RCT_PRIO_TIMER,NULL)<0){ |
| 831 | LM_CRIT("failed to add timer pipe_out to reactor\n"); |
| 832 | goto error; |
| 833 | } |
| 834 | return 0; |
| 835 | |
| 836 | error: |
| 837 | destroy_worker_reactor(); |
| 838 | return -1; |
| 839 | } |
| 840 | |
| 841 | |
| 842 | static int fork_dynamic_timer_process(void *si_filter) |
no outgoing calls
no test coverage detected