summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--source3/printing/nt_printing.c9
-rw-r--r--source3/rpc_server/srv_spoolss_nt.c8
2 files changed, 12 insertions, 5 deletions
diff --git a/source3/printing/nt_printing.c b/source3/printing/nt_printing.c
index d599d167ec..83cd03d6d6 100644
--- a/source3/printing/nt_printing.c
+++ b/source3/printing/nt_printing.c
@@ -23,6 +23,7 @@
#include "includes.h"
extern int DEBUGLEVEL;
+extern pstring global_myname;
static TDB_CONTEXT *tdb; /* used for driver files */
@@ -793,6 +794,7 @@ NT_DEVICEMODE *construct_nt_devicemode(const fstring default_devicename)
nt_devmode->devicename
*/
+ char adevice[32];
NT_DEVICEMODE *nt_devmode = (NT_DEVICEMODE *)malloc(sizeof(NT_DEVICEMODE));
if (nt_devmode == NULL) {
@@ -802,7 +804,10 @@ NT_DEVICEMODE *construct_nt_devicemode(const fstring default_devicename)
ZERO_STRUCTP(nt_devmode);
- fstrcpy(nt_devmode->devicename, default_devicename);
+ snprintf(adevice, sizeof(adevice), "\\\\%s\\%s", global_myname, default_devicename);
+ fstrcpy(nt_devmode->devicename, adevice);
+
+
fstrcpy(nt_devmode->formname, "Letter");
nt_devmode->specversion = 0x0401;
@@ -1039,6 +1044,8 @@ static uint32 get_a_printer_2_default(NT_PRINTER_INFO_LEVEL_2 **info_ptr, fstrin
info.starttime = 0; /* Minutes since 12:00am GMT */
info.untiltime = 0; /* Minutes since 12:00am GMT */
+ info.priority = 1;
+ info.default_priority = 1;
if ((info.devmode = construct_nt_devicemode(info.printername)) == NULL)
goto fail;
diff --git a/source3/rpc_server/srv_spoolss_nt.c b/source3/rpc_server/srv_spoolss_nt.c
index 79f6030414..2e153b26c5 100644
--- a/source3/rpc_server/srv_spoolss_nt.c
+++ b/source3/rpc_server/srv_spoolss_nt.c
@@ -1033,7 +1033,7 @@ static void spoolss_notify_security_desc(int snum, SPOOL_NOTIFY_INFO_DATA *data,
static void spoolss_notify_attributes(int snum, SPOOL_NOTIFY_INFO_DATA *data, print_queue_struct *queue, NT_PRINTER_INFO_LEVEL *printer)
{
data->notify_data.value[0] = PRINTER_ATTRIBUTE_SHARED \
- | PRINTER_ATTRIBUTE_NETWORK \
+ | PRINTER_ATTRIBUTE_LOCAL \
| PRINTER_ATTRIBUTE_RAW_ONLY ;
}
@@ -1796,10 +1796,10 @@ static DEVICEMODE *construct_dev_mode(int snum, char *servername)
DEBUGADD(8,("loading DEVICEMODE\n"));
-#if 1 /* JRATEST */
- snprintf(adevice, sizeof(adevice), "%s", ntdevmode->devicename);
+#if 0 /* JRATEST */
+ snprintf(adevice, sizeof(adevice), "\\\\%s\\%s", global_myname, ntdevmode->devicename);
#else /* JRATEST */
- snprintf(adevice, sizeof(adevice), "%s", printer->info_2->printername);
+ snprintf(adevice, sizeof(adevice), "\\\\%s\\%s", global_myname, printer->info_2->printername);
#endif /* JRATEST */
init_unistr(&devmode->devicename, adevice);