summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--source3/printing/nt_printing.c6
-rw-r--r--source3/rpc_parse/parse_spoolss.c4
-rw-r--r--source3/rpc_server/srv_spoolss_nt.c12
-rw-r--r--source3/rpc_server/srv_srvsvc_nt.c2
4 files changed, 9 insertions, 15 deletions
diff --git a/source3/printing/nt_printing.c b/source3/printing/nt_printing.c
index f302d357cd..45080f8acc 100644
--- a/source3/printing/nt_printing.c
+++ b/source3/printing/nt_printing.c
@@ -2897,6 +2897,12 @@ BOOL printer_driver_in_use (char *arch, char *driver)
info.parameters);
safe_free(dbuf.dptr);
+
+ if (ret == -1) {
+ DEBUG (0,("printer_driver_in_use: tdb_unpack failed for printer %s\n",
+ info.printername));
+ continue;
+ }
DEBUG (10,("printer_driver_in_use: Printer - %s (%s)\n",
info.printername, info.drivername));
diff --git a/source3/rpc_parse/parse_spoolss.c b/source3/rpc_parse/parse_spoolss.c
index a1f75fa1f3..2b81a7708c 100644
--- a/source3/rpc_parse/parse_spoolss.c
+++ b/source3/rpc_parse/parse_spoolss.c
@@ -3568,13 +3568,13 @@ BOOL make_spoolss_q_setprinter(
q_u->secdesc_ctr->max_len = (secdesc) ? sizeof(SEC_DESC) + (2*sizeof(uint32)) : 0;
q_u->secdesc_ctr->len = (secdesc) ? sizeof(SEC_DESC) + (2*sizeof(uint32)) : 0;
q_u->secdesc_ctr->sec = secdesc;
-
+
q_u->devmode_ctr.devmode_ptr = (devmode != NULL) ? 1 : 0;
q_u->devmode_ctr.size = sizeof(DEVICEMODE) + (3*sizeof(uint32));
q_u->devmode_ctr.devmode = devmode;
#else
q_u->secdesc_ctr = NULL;
-
+
q_u->devmode_ctr.devmode_ptr = 0;
q_u->devmode_ctr.size = 0;
q_u->devmode_ctr.devmode = NULL;
diff --git a/source3/rpc_server/srv_spoolss_nt.c b/source3/rpc_server/srv_spoolss_nt.c
index 99830c035b..3fcb08891d 100644
--- a/source3/rpc_server/srv_spoolss_nt.c
+++ b/source3/rpc_server/srv_spoolss_nt.c
@@ -4213,7 +4213,6 @@ static BOOL check_printer_ok(NT_PRINTER_INFO_LEVEL_2 *info, int snum)
static BOOL add_printer_hook(NT_PRINTER_INFO_LEVEL *printer)
{
char *cmd = lp_addprinter_cmd();
- char *path;
char **qlines;
pstring command;
pstring driverlocation;
@@ -4221,11 +4220,6 @@ static BOOL add_printer_hook(NT_PRINTER_INFO_LEVEL *printer)
int ret;
int fd;
- if (*lp_pathname(lp_servicenumber(PRINTERS_NAME)))
- path = lp_pathname(lp_servicenumber(PRINTERS_NAME));
- else
- path = lp_lockdir();
-
/* build driver path... only 9X architecture is needed for legacy reasons */
slprintf(driverlocation, sizeof(driverlocation)-1, "\\\\%s\\print$\\WIN40\\0",
global_myname);
@@ -5494,18 +5488,12 @@ static uint32 enumports_level_1(NEW_BUFFER *buffer, uint32 offered, uint32 *need
if (*lp_enumports_cmd()) {
char *cmd = lp_enumports_cmd();
- char *path;
char **qlines;
pstring command;
int numlines;
int ret;
int fd;
- if (*lp_pathname(lp_servicenumber(PRINTERS_NAME)))
- path = lp_pathname(lp_servicenumber(PRINTERS_NAME));
- else
- path = lp_lockdir();
-
slprintf(command, sizeof(command)-1, "%s \"%d\"", cmd, 1);
DEBUG(10,("Running [%s]\n", command));
diff --git a/source3/rpc_server/srv_srvsvc_nt.c b/source3/rpc_server/srv_srvsvc_nt.c
index 902f47f5a2..39e482dc3c 100644
--- a/source3/rpc_server/srv_srvsvc_nt.c
+++ b/source3/rpc_server/srv_srvsvc_nt.c
@@ -1619,7 +1619,7 @@ uint32 _srv_net_file_query_secdesc(pipes_struct *p, SRV_Q_NET_FILE_QUERY_SECDESC
get_current_user(&user, p);
fstrcpy(user_name, uidtoname(user.uid));
- conn = make_connection(qualname, user_name, "", 0, "A:", user.vuid, &ecode);
+ conn = make_connection(qualname, user_name, null_pw, 0, "A:", user.vuid, &ecode);
if (conn == NULL) {
DEBUG(3,("_srv_net_file_query_secdesc: Unable to connect to %s\n", qualname));