bug-fix from tim (insure). dummy fn call for andrew to fill in.
authorLuke Leighton <lkcl@samba.org>
Sat, 27 May 2000 02:15:08 +0000 (02:15 +0000)
committerLuke Leighton <lkcl@samba.org>
Sat, 27 May 2000 02:15:08 +0000 (02:15 +0000)
(This used to be commit 1e3c0ab29d178fe58add32672301ac497d43a3fe)

source3/printing/nt_printing.c

index 5742b8cbec294c29815dd35e04220b5cdb50ba80..d0005ffc1fb8ec662feb7b87ec9eb2e72f92d1ea 100644 (file)
@@ -832,7 +832,7 @@ static int unpack_specifics(NT_PRINTER_PARAM **list, char *buf, int buflen)
        *list = NULL;
 
        while (1) {
-               len += tdb_unpack(buf+len, buflen-len, "p", p);
+               len += tdb_unpack(buf+len, buflen-len, "p", &p);
                if (!p) break;
 
                len += tdb_unpack(buf+len, buflen-len, "fdB",
@@ -874,6 +874,14 @@ static uint32 get_a_printer_2_default(NT_PRINTER_INFO_LEVEL_2 **info_ptr, fstrin
 
        info.devmode = (NT_DEVICEMODE *)memdup(&devmode, sizeof(devmode));
 
+       /*
+        * put a better system here, please.
+        */
+       info.secdesc.len = 0; /* convertperms_unix_to_sd(&sbuf, False,
+                                                   sbuf.st_mode, 
+                                                   &info.secdesc.sec); */
+       info.secdesc.max_len = info.secdesc.len;
+
        *info_ptr = (NT_PRINTER_INFO_LEVEL_2 *)memdup(&info, sizeof(info));
        if (! *info_ptr) return 2;
 
@@ -924,6 +932,9 @@ static uint32 get_a_printer_2(NT_PRINTER_INFO_LEVEL_2 **info_ptr, fstring sharen
                        info.parameters);
 
        len += unpack_devicemode(&info.devmode,dbuf.dptr+len, dbuf.dsize-len);
+#if 0
+       len += unpack_secdesc(&info.devmode,dbuf.dptr+len, dbuf.dsize-len);
+#endif
        len += unpack_specifics(&info.specific,dbuf.dptr+len, dbuf.dsize-len);
 
        *info_ptr=memdup(&info, sizeof(info));