[Samba] printing fails for SPOOLSS OpenPrinterEx request
lists at sumpfralle.de
lists at sumpfralle.de
Wed May 31 14:29:18 GMT 2006
Hi,
I have a problem with my printing setup of a windows XP client with a samba server.
The windows driver seems to use different ways of smb/printer communication for printing in normal/duplex mode and for printing brochures. The latter failes silently.
normal/duplex printing uses: SMB Open Print File Request
brochure printing starts with: SPOOLSS OpenPrinterEx request
I recorded the network transmission during printing and received the following for brochure printing (which fails):
Source Dest Protocol Info
client server SMB Session Setup AndX Request, NTLMSSP_NEGOTIATE
server client SMB Session Setup AndX Response, NTLMSSP_CHALLENGE, Error: STATUS_MORE_PROCESSING_REQUIRED
client server SMB Session Setup AndX Request, NTLMSSP_AUTH, User: \
server client SMB Session Setup AndX Response
client server SMB Tree Connect AndX Request, Path: \\JACKDAW\IPC$
server client SMB Tree Connect AndX Response
client server SMB NT Create AndX Request, Path: \spoolss
server client SMB NT Create AndX Response, FID: 0x7168
client server DCERPC Bind: call_id: 1 UUID: SPOOLSS
server client SMB Write AndX Response, FID: 0x7168, 72 bytes
client server SMB Read AndX Request, FID: 0x7168, 1024 bytes at offset 0
server client DCERPC Bind_ack: call_id: 1 accept max_xmit: 4280 max_recv: 4280
client server SPOOLSS OpenPrinterEx request, \\jackdaw\test
server client SPOOLSS OpenPrinterEx response
client server SPOOLSS GetPrinter request, level 2
server client SPOOLSS GetPrinter response, level 2, Insufficient buffer
client server SPOOLSS GetPrinter request, level 2
server client SPOOLSS GetPrinter response, level 2
client server SPOOLSS OpenPrinterEx request, \\jackdaw\test
server client SPOOLSS OpenPrinterEx response
client server TCP [TCP segment of a reassembled PDU]
client server TCP [TCP segment of a reassembled PDU]
client server SPOOLSS GetPrinter request, level 2
server client TCP netbios-ssn > plato-lm [ACK] Seq=1621 Ack=5111 Win=32767 Len=0
server client SMB Pipe TransactNmPipe Response, FID: 0x7168
client server SMB Read AndX Request, FID: 0x7168, 3112 bytes at offset 0
server client TCP [TCP segment of a reassembled PDU]
server client TCP [TCP segment of a reassembled PDU]
client server TCP plato-lm > netbios-ssn [ACK] Seq=6498 Ack=5625 Win=65535 Len=0
server client SPOOLSS GetPrinter response, level 2
client server SPOOLSS OpenPrinterEx request, \\jackdaw\test
server client SPOOLSS OpenPrinterEx response
client server SPOOLSS GetPrinter request, level 0
server client SPOOLSS GetPrinter response, level 0
client server SPOOLSS GetPrinter request, level 2
server client SPOOLSS GetPrinter response, level 2, Insufficient buffer
<snip - the same goes on ...>
Successful printing in normal (or duplex) modes results in the following traffic:
Source Dest Protocol Info
client server SMB Open Print File Request
server client SMB Open Print File Response, FID: 0x1be7
client server TCP [TCP segment of a reassembled PDU]
client server TCP [TCP segment of a reassembled PDU]
client server TCP [TCP segment of a reassembled PDU]
client server TCP [TCP segment of a reassembled PDU]
client server TCP [TCP segment of a reassembled PDU]
client server TCP [TCP segment of a reassembled PDU]
client server SMB Write Request, FID: 0x1be7, 9274 bytes at offset 0
server client TCP netbios-ssn > plato-lm [ACK] Seq=41 Ack=2974 Win=32767 Len=0
server client TCP netbios-ssn > plato-lm [ACK] Seq=41 Ack=5894 Win=32767 Len=0
server client TCP netbios-ssn > plato-lm [ACK] Seq=41 Ack=8814 Win=32767 Len=0
server client SMB Write Response, 9274 bytes
client server TCP plato-lm > netbios-ssn [ACK] Seq=9380 Ack=82 Win=64664 Len=0
client server TCP [TCP segment of a reassembled PDU]
client server TCP [TCP segment of a reassembled PDU]
client server TCP [TCP segment of a reassembled PDU]
client server TCP [TCP segment of a reassembled PDU]
client server TCP [TCP segment of a reassembled PDU]
client server SMB Write Request, FID: 0x1be7, 8223 bytes at offset 9274
server client TCP netbios-ssn > plato-lm [ACK] Seq=82 Ack=12300 Win=32767 Len=0
server client TCP netbios-ssn > plato-lm [ACK] Seq=82 Ack=15220 Win=32767 Len=0
server client TCP netbios-ssn > plato-lm [ACK] Seq=82 Ack=17655 Win=32767 Len=0
server client SMB Write Response, 8223 bytes
client server SMB Close Print File Request, FID: 0x1be7
server client SMB Close Print File Response
client server TCP plato-lm > netbios-ssn [ACK] Seq=17696 Ack=162 Win=64584 Len=0
<printing is finished here (successfully)>
The failing brochure printing reaches cups, but gets ignored without an error message (even for "debug" loglevel). There is no job in the cups queue afterwards.
My setup:
SuSE: 10.0
Samba: Version 3.0.20b-3.1-SUSE
Cups: 1.1.23-21.2
Printer: Brother HL-5150D
smb.conf contains the following printing options:
[printer]
path = /var/tmp
printable = Yes
create mask = 0600
browseable = Yes
In windows client(s) the printer is configured to be connected to a local port ("\\servername\printername") and works without problems for anything except brochure printing.
I tried to turn on "default devmode" and "use client driver" in smb.conf. None of these changed the behaviour.
This setup was known to work with the previous server machine, I used. It was a debian sarge woody installation. But this machine is not available for testing anymore ...
Does anyone have any ideas, what I could try, to get brochure printing to work again?
thanks,
Lars
More information about the samba
mailing list