Vista 64bit and Samba printers
Martin Zielinski
mz at seh.de
Mon Sep 10 10:24:26 GMT 2007
Hello,
I'm facing problems using 64bit printer drivers on Samba 3.0.25c with a
64bit Vista client.
Driver installation works, when I try to connect to the printer it fails
with error 0x6f7 (The stub received bad data).
The reason is, that the EnumPrinterDataEx responses return the "needed"
size as buffer size (which is different to XP).
Instead it should return the offered buffer size.
--- samba-3.0.25c.orig/source/rpc_server/srv_spoolss_nt.c
2007-08-20 15:04:50.000000000 +0200
+++ samba-3.0.25c/source/rpc_server/srv_spoolss_nt.c 2007-09-10
12:23:10.000000000 +0200
@@ -9472,7 +9472,10 @@
/* copy data into the reply */
- r_u->ctr.size = r_u->needed;
+ /* Vista x64 returns 0x6f7 (The stub received bad data), if the
response
+ buffer size is != the offered buffer size
+ */
+ r_u->ctr.size = in_size;
r_u->ctr.size_of_array = r_u->returned;
r_u->ctr.values = enum_values;
Bye,
Martin
More information about the samba-technical
mailing list