blob: 04187826665d74c6c79e1c810778fd0ec8b97add [file] [log] [blame]
William Lallemand48dfbbd2019-04-01 11:29:53 +02001/*
2 * Master Worker
3 *
4 * Copyright HAProxy Technologies 2019 - William Lallemand <wlallemand@haproxy.com>
5 *
6 * This program is free software; you can redistribute it and/or
7 * modify it under the terms of the GNU General Public License
8 * as published by the Free Software Foundation; either version
9 * 2 of the License, or (at your option) any later version.
10 *
11 */
12
13#ifndef PROTO_MWORKER_H_
14#define PROTO_MWORKER_H_
15
William Lallemande25473c2019-04-01 11:29:56 +020016#include <types/signal.h>
17
William Lallemand48dfbbd2019-04-01 11:29:53 +020018void mworker_proc_list_to_env();
19void mworker_env_to_proc_list();
20
William Lallemand3cd95d22019-04-01 11:29:54 +020021
22void mworker_block_signals();
23void mworker_unblock_signals();
24
William Lallemande25473c2019-04-01 11:29:56 +020025void mworker_catch_sighup(struct sig_handler *sh);
26void mworker_catch_sigterm(struct sig_handler *sh);
27void mworker_catch_sigchld(struct sig_handler *sh);
28
William Lallemand3fa724d2019-04-01 11:29:55 +020029void mworker_accept_wrapper(int fd);
William Lallemand3fa724d2019-04-01 11:29:55 +020030
William Lallemand9001ce82019-04-01 11:29:57 +020031void mworker_cleanlisteners();
32
William Lallemand3f128872019-04-01 11:29:59 +020033int mworker_child_nb();
34
William Lallemand9a1ee7a2019-04-01 11:30:02 +020035int mworker_ext_launch_all();
36
William Lallemand27edc4b2019-05-07 17:49:33 +020037void mworker_kill_max_reloads(int sig);
William Lallemande25473c2019-04-01 11:29:56 +020038
Tim Duesterhus9b7a9762019-05-16 20:23:22 +020039void mworker_free_child(struct mworker_proc *);
40
William Lallemand48dfbbd2019-04-01 11:29:53 +020041#endif /* PROTO_MWORKER_H_ */