summaryrefslogtreecommitdiff
path: root/source3/smbd
diff options
context:
space:
mode:
Diffstat (limited to 'source3/smbd')
-rw-r--r--source3/smbd/process.c3
-rw-r--r--source3/smbd/server.c18
2 files changed, 7 insertions, 14 deletions
diff --git a/source3/smbd/process.c b/source3/smbd/process.c
index 37d8f8dd73..1599ade12d 100644
--- a/source3/smbd/process.c
+++ b/source3/smbd/process.c
@@ -131,6 +131,9 @@ static void async_processing(fd_set *fds, char *buffer, int buffer_len)
reload_services(False);
reload_after_sighup = False;
}
+
+ /* check for any pending internal messages */
+ message_dispatch();
}
/****************************************************************************
diff --git a/source3/smbd/server.c b/source3/smbd/server.c
index 8691603eb3..4442a1f71f 100644
--- a/source3/smbd/server.c
+++ b/source3/smbd/server.c
@@ -685,20 +685,6 @@ static void usage(char *pname)
CatchSignal(SIGHUP,SIGNAL_CAST sig_hup);
- /* Setup the signals that allow the debug log level
- to by dynamically changed. */
-
- /* If we are using the malloc debug code we can't use
- SIGUSR1 and SIGUSR2 to do debug level changes. */
-
-#if defined(SIGUSR1)
- CatchSignal( SIGUSR1, SIGNAL_CAST sig_usr1 );
-#endif /* SIGUSR1 */
-
-#if defined(SIGUSR2)
- CatchSignal( SIGUSR2, SIGNAL_CAST sig_usr2 );
-#endif /* SIGUSR2 */
-
DEBUG(3,( "loaded services\n"));
if (!is_daemon && !is_a_socket(0)) {
@@ -726,6 +712,10 @@ static void usage(char *pname)
* everything after this point is run after the fork()
*/
+ if (!message_init()) {
+ exit(1);
+ }
+
if (!locking_init(0)) {
exit(1);
}