]> git.ipfire.org Git - thirdparty/samba.git/commitdiff
r22954: More messaging_register
authorVolker Lendecke <vlendec@samba.org>
Wed, 16 May 2007 20:56:39 +0000 (20:56 +0000)
committerGerald (Jerry) Carter <jerry@samba.org>
Wed, 10 Oct 2007 17:22:11 +0000 (12:22 -0500)
(This used to be commit 9b8df24107ffe3016031e5257c5680689f061886)

source3/printing/nt_printing.c
source3/printing/printing.c
source3/rpc_server/srv_spoolss_nt.c
source3/smbd/server.c
source3/utils/net_ads.c

index 965793b3cf36c1aa19f9db1878e77351a15ed11e..84dba9d55a767be31f4f43ead052c9ef2d31e132 100644 (file)
@@ -542,7 +542,7 @@ static BOOL upgrade_to_version_5(void)
  Open the NT printing tdbs. Done once before fork().
 ****************************************************************************/
 
-BOOL nt_printing_init(void)
+BOOL nt_printing_init(struct messaging_context *msg_ctx)
 {
        const char *vstring = "INFO/version";
        WERROR win_rc;
@@ -631,15 +631,16 @@ BOOL nt_printing_init(void)
         * drivers are installed
         */
 
-       message_register(MSG_PRINTER_DRVUPGRADE, do_drv_upgrade_printer, NULL);
+       messaging_register(msg_ctx, NULL, MSG_PRINTER_DRVUPGRADE,
+                          do_drv_upgrade_printer);
 
        /*
         * register callback to handle updating printer data
         * when a driver is initialized
         */
 
-       message_register(MSG_PRINTERDATA_INIT_RESET, reset_all_printerdata,
-                        NULL);
+       messaging_register(msg_ctx, NULL, MSG_PRINTERDATA_INIT_RESET,
+                          reset_all_printerdata);
 
        /* of course, none of the message callbacks matter if you don't
           tell messages.c that you interested in receiving PRINT_GENERAL 
index 9bae768c1997aee255ed6a1fd845ce66f5775868..6717f473cc59e97f219b67f06d8e8585e7d2cf56 100644 (file)
@@ -178,7 +178,7 @@ static int get_queue_status(const char* sharename, print_status_struct *);
  Initialise the printing backend. Called once at startup before the fork().
 ****************************************************************************/
 
-BOOL print_backend_init(void)
+BOOL print_backend_init(struct messaging_context *msg_ctx)
 {
        const char *sversion = "INFO/version";
        pstring printing_path;
@@ -215,7 +215,7 @@ BOOL print_backend_init(void)
        close_all_print_db(); /* Don't leave any open. */
 
        /* do NT print initialization... */
-       return nt_printing_init();
+       return nt_printing_init(msg_ctx);
 }
 
 /****************************************************************************
@@ -1348,16 +1348,18 @@ static void print_queue_update_with_lock( const char *sharename,
 /****************************************************************************
 this is the receive function of the background lpq updater
 ****************************************************************************/
-static void print_queue_receive(int msg_type, struct server_id src,
-                               void *buf, size_t msglen,
-                               void *private_data)
+static void print_queue_receive(struct messaging_context *msg,
+                               void *private_data,
+                               uint32_t msg_type,
+                               struct server_id server_id,
+                               DATA_BLOB *data)
 {
        fstring sharename;
        pstring lpqcommand, lprmcommand;
        int printing_type;
        size_t len;
 
-       len = tdb_unpack( (uint8 *)buf, msglen, "fdPP",
+       len = tdb_unpack( (uint8 *)data->data, data->length, "fdPP",
                sharename,
                &printing_type,
                lpqcommand,
@@ -1401,8 +1403,8 @@ void start_background_queue(void)
                        exit(1);
                }
 
-               message_register(MSG_PRINTER_UPDATE, print_queue_receive,
-                                NULL);
+               messaging_register(smbd_messaging_context(), NULL,
+                                  MSG_PRINTER_UPDATE, print_queue_receive);
                
                DEBUG(5,("start_background_queue: background LPQ thread waiting for messages\n"));
                while (1) {
index e2dd773c04231f8bce6df8d35270601ebe434c46..49782dca43d4c153bf595dd6fb90ae0ab279e6d0 100644 (file)
@@ -1225,15 +1225,19 @@ static BOOL srv_spoolss_drv_upgrade_printer(char* drivername)
  over all printers, upgrading ones as necessary 
  **********************************************************************/
  
-void do_drv_upgrade_printer(int msg_type, struct server_id src,
-                           void *buf, size_t len, void *private_data)
+void do_drv_upgrade_printer(struct messaging_context *msg,
+                           void *private_data,
+                           uint32_t msg_type,
+                           struct server_id server_id,
+                           DATA_BLOB *data)
 {
        fstring drivername;
        int snum;
        int n_services = lp_numservices();
+       size_t len;
        
-       len = MIN(len,sizeof(drivername)-1);
-       strncpy(drivername, (const char *)buf, len);
+       len = MIN(data->length,sizeof(drivername)-1);
+       strncpy(drivername, (const char *)data->data, len);
        
        DEBUG(10,("do_drv_upgrade_printer: Got message for new driver [%s]\n", drivername ));
 
@@ -1324,15 +1328,19 @@ static BOOL srv_spoolss_reset_printerdata(char* drivername)
  over all printers, resetting printer data as neessary 
  **********************************************************************/
  
-void reset_all_printerdata(int msg_type, struct server_id src,
-                          void *buf, size_t len, void *private_data)
+void reset_all_printerdata(struct messaging_context *msg,
+                          void *private_data,
+                          uint32_t msg_type,
+                          struct server_id server_id,
+                          DATA_BLOB *data)
 {
        fstring drivername;
        int snum;
        int n_services = lp_numservices();
+       size_t len;
        
-       len = MIN( len, sizeof(drivername)-1 );
-       strncpy( drivername, (const char *)buf, len );
+       len = MIN( data->length, sizeof(drivername)-1 );
+       strncpy( drivername, (const char *)data->data, len );
        
        DEBUG(10,("reset_all_printerdata: Got message for new driver [%s]\n", drivername ));
 
index a54bed3e1b8e91e0f7987f96d8b3c8bfc223b591..7a139afa476c45027968d255805e72cc478bc603 100644 (file)
@@ -1029,7 +1029,7 @@ extern void build_options(BOOL screen);
                 exit(1);
 #endif
 
-       if (!print_backend_init())
+       if (!print_backend_init(smbd_messaging_context()))
                exit(1);
 
        if (!init_guest_info()) {
index a9319a380cc1eeb91c2311ce21ad7e1bd6036a02..a1206bbd5240509e38ccf3d1d726d4d57de74bf4 100644 (file)
@@ -1921,12 +1921,6 @@ static int net_ads_printer_info(int argc, const char **argv)
        return 0;
 }
 
-void do_drv_upgrade_printer(int msg_type, struct server_id src,
-                           void *buf, size_t len, void *private_data)
-{
-       return;
-}
-
 static int net_ads_printer_publish(int argc, const char **argv)
 {
         ADS_STRUCT *ads;