Bug 2971 - Too many handles on this pipe using RPCS drivers
Too many handles on this pipe using RPCS drivers
Product: Samba 3.0
Classification: Unclassified
Component: Printing
All Windows NT
: P3 normal
: none
Assigned To: Gerald (Jerry) Carter
Samba QA Contact
Depends on:
  Show dependency treegraph
Reported: 2005-08-09 10:43 UTC by Joanna Chan
Modified: 2005-08-12 10:19 UTC (History)
0 users

See Also:


Note You need to log in before you can comment on or make changes to this bug.
Description Joanna Chan 2005-08-09 10:43:03 UTC
Enclosed is the ethereal trace and the drivers.  The drivers with this problem
are DSC338 and P7325.

1. Create a print queue using CUPS (we're using CUPS 1.1.17)
2. From the NT client, access the samba share of the printer
3. Install the driver, Apply, OK
4. Double click to open the printer from the samba folder
5. Right-click the printer icon to get to the properties pages
6. Do some changes to the 'Change Accessories' tab, Save
7. From the window opened in #4, open the 'Printer -> Properties' screen
8. Do some changes on the printing preference and apply

After that, I can see a lot of traffic between the NT client and the print
server.  Eventually, the NT client will show 'Out of Virtual Memory' and need a
reboot; the samba.log will show:
2005/08/09 12:06:58, 0] rpc_server/srv_lsa_hnd.c:create_policy_hnd(110)
  create_policy_hnd: ERROR: too many handles (1025) on this pipe.
Comment 2 Gerald (Jerry) Carter 2005-08-12 10:19:13 UTC
I've checked in one small fix for an invalid write in enumprinterdata().
However, I think this is just a buggy driver.  I installed it on a 
Win2k print server and disabled the "advanced printing features"
from the advanced tab (which effectively force RAW printing).
The NT client just continually leaks printer handles.  Evenutally 
the client runs out of memory.

The only difference with Samba is that we have a hard limit on the 
number of open handles per pipe to prevent DoS attacks by consuming
all the server's RAM.

You should probably talk to the print driver vendor about this.

Marking as invalid since it appears to be a dirver bug, and not Samba.