lists@sumpfralle.de
2006-May-31 14:29 UTC
[Samba] printing fails for SPOOLSS OpenPrinterEx request
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
Gerald (Jerry) Carter
2006-Jun-01 01:51 UTC
[Samba] printing fails for SPOOLSS OpenPrinterEx request
-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 lists@sumpfralle.de wrote:> 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 requestThis doesn't make sense to me. Are you serving the driver from the Samba box? or installing it locally?> 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.Sounds like you are trying to force lanman printing. I would recommend against this if possible. But if you really want it, you can disable MS-RPC printing globally on the Samba server using 'disable spoolss = yes'> 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?cheers, jerry ====================================================================Samba ------- http://www.samba.org Centeris ----------- http://www.centeris.com "What man is a man who does not make the world better?" --Balian -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.2 (GNU/Linux) Comment: Using GnuPG with SUSE - http://enigmail.mozdev.org iD8DBQFEfkglIR7qMdg1EfYRAofDAJ9SpsKM3mK+8nu/5NLFiM8m6JCxGACg0OSL /RAAzMc4vd5Q68bXHwM+Ajo=E8aA -----END PGP SIGNATURE-----
Possibly Parallel Threads
- smbd uses 10 to 15% CPU w/Vista client
- debugging really high network usage with no apparent cause
- smbclient 4.0.7 fails transfer with STATUS_INVALID_PARAMETER and SMB2 but not with NT1
- internalDNS more TCP connections without closing
- Poor performance getting lots of small files with WinXP/Win2k vs OS2