diff --git a/include/haproxy/mworker-t.h b/include/haproxy/mworker-t.h
new file mode 100644
index 0000000..7712d28
--- /dev/null
+++ b/include/haproxy/mworker-t.h
@@ -0,0 +1,51 @@
+/*
+ * include/haproxy/mworker-t.h
+ * Master Worker type definitions.
+ *
+ * Copyright HAProxy Technologies 2019 - William Lallemand <wlallemand@haproxy.com>
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License
+ * as published by the Free Software Foundation; either version
+ * 2 of the License, or (at your option) any later version.
+ *
+ */
+
+#ifndef _HAPROXY_MWORKER_T_H_
+#define _HAPROXY_MWORKER_T_H_
+
+#include <haproxy/list.h>
+#include <types/signal.h>
+
+/* options for mworker_proc */
+
+#define PROC_O_TYPE_MASTER           0x00000001
+#define PROC_O_TYPE_WORKER           0x00000002
+#define PROC_O_TYPE_PROG             0x00000004
+/* 0x00000008 unused */
+#define PROC_O_LEAVING               0x00000010  /* this process should be leaving */
+/* 0x00000020 to 0x00000080 unused */
+#define PROC_O_START_RELOAD          0x00000100  /* Start the process even if the master was re-executed */
+
+/*
+ * Structure used to describe the processes in master worker mode
+ */
+struct server;
+struct mworker_proc {
+	int pid;
+	int options;
+	char *id;
+	char **command;
+	char *path;
+	char *version;
+	int ipc_fd[2]; /* 0 is master side, 1 is worker side */
+	int relative_pid;
+	int reloads;
+	int timestamp;
+	struct server *srv; /* the server entry in the master proxy */
+	struct list list;
+	int uid;
+	int gid;
+};
+
+#endif /* _HAPROXY_MWORKER_T_H_ */
diff --git a/include/proto/mworker.h b/include/haproxy/mworker.h
similarity index 83%
rename from include/proto/mworker.h
rename to include/haproxy/mworker.h
index 595cc19..6d115ec 100644
--- a/include/proto/mworker.h
+++ b/include/haproxy/mworker.h
@@ -1,5 +1,6 @@
 /*
- * Master Worker
+ * include/haproxy/mworker-t.h
+ * Master Worker function prototypes.
  *
  * Copyright HAProxy Technologies 2019 - William Lallemand <wlallemand@haproxy.com>
  *
@@ -10,9 +11,10 @@
  *
  */
 
-#ifndef PROTO_MWORKER_H_
-#define PROTO_MWORKER_H_
+#ifndef _HAPROXY_MWORKER_H_
+#define _HAPROXY_MWORKER_H_
 
+#include <haproxy/mworker-t.h>
 #include <types/signal.h>
 
 void mworker_proc_list_to_env();
@@ -39,4 +41,4 @@
 
 void mworker_free_child(struct mworker_proc *);
 
-#endif /* PROTO_MWORKER_H_ */
+#endif /* _HAPROXY_MWORKER_H_ */
diff --git a/include/types/global.h b/include/types/global.h
index a00712c..9e60851 100644
--- a/include/types/global.h
+++ b/include/types/global.h
@@ -181,36 +181,6 @@
 #endif
 };
 
-/* options for mworker_proc */
-
-#define PROC_O_TYPE_MASTER           0x00000001
-#define PROC_O_TYPE_WORKER           0x00000002
-#define PROC_O_TYPE_PROG             0x00000004
-/* 0x00000008 unused */
-#define PROC_O_LEAVING               0x00000010  /* this process should be leaving */
-/* 0x00000020 to 0x00000080 unused */
-#define PROC_O_START_RELOAD          0x00000100  /* Start the process even if the master was re-executed */
-
-/*
- * Structure used to describe the processes in master worker mode
- */
-struct mworker_proc {
-	int pid;
-	int options;
-	char *id;
-	char **command;
-	char *path;
-	char *version;
-	int ipc_fd[2]; /* 0 is master side, 1 is worker side */
-	int relative_pid;
-	int reloads;
-	int timestamp;
-	struct server *srv; /* the server entry in the master proxy */
-	struct list list;
-	int uid;
-	int gid;
-};
-
 extern struct global global;
 extern int  pid;                /* current process id */
 extern int  relative_pid;       /* process id starting at 1 */
diff --git a/src/cli.c b/src/cli.c
index 71e37f7..db1900d 100644
--- a/src/cli.c
+++ b/src/cli.c
@@ -31,6 +31,7 @@
 #include <haproxy/dns-t.h>
 #include <haproxy/frontend.h>
 #include <haproxy/list.h>
+#include <haproxy/mworker-t.h>
 #include <haproxy/tools.h>
 #include <haproxy/ticks.h>
 #include <haproxy/time.h>
diff --git a/src/haproxy.c b/src/haproxy.c
index 1b5de83..a154123 100644
--- a/src/haproxy.c
+++ b/src/haproxy.c
@@ -92,6 +92,7 @@
 #include <haproxy/http_rules.h>
 #include <haproxy/pool.h>
 #include <haproxy/list.h>
+#include <haproxy/mworker.h>
 #include <haproxy/namespace.h>
 #include <haproxy/net_helper.h>
 #include <haproxy/openssl-compat.h>
@@ -120,7 +121,6 @@
 #include <proto/filters.h>
 #include <proto/listener.h>
 #include <proto/log.h>
-#include <proto/mworker.h>
 #include <proto/pattern.h>
 #include <haproxy/protocol.h>
 #include <proto/http_ana.h>
diff --git a/src/mworker-prog.c b/src/mworker-prog.c
index 4951063..0a448be 100644
--- a/src/mworker-prog.c
+++ b/src/mworker-prog.c
@@ -23,9 +23,9 @@
 #include <haproxy/api.h>
 #include <common/cfgparse.h>
 #include <haproxy/errors.h>
+#include <haproxy/mworker.h>
 
 #include <proto/log.h>
-#include <proto/mworker.h>
 
 static int use_program = 0; /* do we use the program section ? */
 
diff --git a/src/mworker.c b/src/mworker.c
index 4f5ade2..fda5052 100644
--- a/src/mworker.c
+++ b/src/mworker.c
@@ -20,6 +20,7 @@
 #include <haproxy/api.h>
 #include <common/cfgparse.h>
 #include <haproxy/list.h>
+#include <haproxy/mworker.h>
 #include <haproxy/version.h>
 
 #include <types/cli.h>
@@ -31,7 +32,6 @@
 #include <haproxy/fd.h>
 #include <proto/listener.h>
 #include <proto/log.h>
-#include <proto/mworker.h>
 #include <proto/proxy.h>
 #include <proto/signal.h>
 #include <proto/stream.h>
