Bug 2971 - Too many handles on this pipe using RPCS drivers
Summary: Too many handles on this pipe using RPCS drivers
Status: RESOLVED INVALID
Alias: None
Product: Samba 3.0
Classification: Unclassified
Component: Printing (show other bugs)
Version: 3.0.13
Hardware: All Windows NT
: P3 normal
Target Milestone: none
Assignee: Gerald (Jerry) Carter
QA Contact: Samba QA Contact
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2005-08-09 10:43 UTC by Joanna Chan
Modified: 2005-08-12 10:19 UTC (History)
0 users

See Also:


Attachments

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.

Steps:
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.