diff options
author | Simo Sorce <idra@samba.org> | 2011-08-02 10:06:31 -0400 |
---|---|---|
committer | Günther Deschner <gd@samba.org> | 2011-08-02 17:37:44 +0200 |
commit | a68f16cb56923cb2287dfdbaf7b962a80a6cb306 (patch) | |
tree | 6b79bb9c74a5ec9ebd994273064e4b286ef196c9 /source3 | |
parent | 2e8a85ec72f2b23cc2b64caa129429971c2fa8c0 (diff) | |
download | samba-a68f16cb56923cb2287dfdbaf7b962a80a6cb306.tar.gz samba-a68f16cb56923cb2287dfdbaf7b962a80a6cb306.tar.bz2 samba-a68f16cb56923cb2287dfdbaf7b962a80a6cb306.zip |
s3:server Consolidate printing related initialization
Signed-off-by: Günther Deschner <gd@samba.org>
Autobuild-User: Günther Deschner <gd@samba.org>
Autobuild-Date: Tue Aug 2 17:37:44 CEST 2011 on sn-devel-104
Diffstat (limited to 'source3')
-rw-r--r-- | source3/printing/printing.c | 5 | ||||
-rw-r--r-- | source3/printing/queue_process.c | 4 | ||||
-rw-r--r-- | source3/smbd/server.c | 9 |
3 files changed, 9 insertions, 9 deletions
diff --git a/source3/printing/printing.c b/source3/printing/printing.c index f1e2aeb265..ac9e768092 100644 --- a/source3/printing/printing.c +++ b/source3/printing/printing.c @@ -28,6 +28,7 @@ #include "../librpc/gen_ndr/netlogon.h" #include "printing/notify.h" #include "printing/pcap.h" +#include "printing/printer_list.h" #include "printing/queue_process.h" #include "serverid.h" #include "smbd/smbd.h" @@ -197,6 +198,10 @@ bool print_backend_init(struct messaging_context *msg_ctx) int services = lp_numservices(); int snum; + if (!printer_list_parent_init()) { + return false; + } + unlink(cache_path("printing.tdb")); mkdir(cache_path("printing"),0755); diff --git a/source3/printing/queue_process.c b/source3/printing/queue_process.c index 9fbdd811ab..791f2d7a33 100644 --- a/source3/printing/queue_process.c +++ b/source3/printing/queue_process.c @@ -273,6 +273,10 @@ bool printing_subsystem_init(struct tevent_context *ev_ctx, use_background_queue = background_queue; + if (!print_backend_init(msg_ctx)) { + return false; + } + /* Publish nt printers, this requires a working winreg pipe */ pcap_cache_reload(ev_ctx, msg_ctx, &reload_printers); diff --git a/source3/smbd/server.c b/source3/smbd/server.c index 16395ee3dd..8aa4f5f093 100644 --- a/source3/smbd/server.c +++ b/source3/smbd/server.c @@ -31,10 +31,8 @@ #include "secrets.h" #include "memcache.h" #include "ctdbd_conn.h" -#include "printing/printer_list.h" #include "printing/queue_process.h" #include "rpc_server/rpc_service_setup.h" -#include "printing.h" #include "serverid.h" #include "passdb.h" #include "auth.h" @@ -1173,16 +1171,9 @@ extern void build_options(bool screen); exit(1); } - if (!printer_list_parent_init()) { - exit(1); - } - if (!W_ERROR_IS_OK(registry_init_full())) exit(1); - if (!print_backend_init(msg_ctx)) - exit(1); - /* Open the share_info.tdb here, so we don't have to open after the fork on every single connection. This is a small performance improvment and reduces the total number of system |