BUG in enumprinterdataex
irezumi at gmx.de
Sun Feb 4 11:58:09 GMT 2007
Jeremy Allison wrote:
> On Sat, Feb 03, 2007 at 09:28:43AM +0100, Martin wrote:
>> I certainly trapped vista again.
>> The proposed fix works with XP but not with Vista.
>> Easy to compare: Samba returns a buffer size of 1642 bytes.
>> -> XP offers a buffer of 1644 bytes.
>> -> Vista 1642 bytes.
>> If we only align the buffer size (as in the proposed patch), we earn a
>> 1783 error. It seems that the buffer size in the RPC *must* match the
>> "needed" size in the message itself.
>> So the better fix would be to align the "needed" var before the test
>> against the input size.
> So you're saying round up needed to a 4 byte boundary before
> setting it in r_u->needed ?
> I've attached a proposed fix - can you test it for me
> before Monday (I don't have my Vista test env set up
> at home yet).
This is exactly what I did, after I received the error during printer
installation from Samba with vista (with my first diff).
I can affirm, that
1) this works for the printer connection under Vista.
2) XP is able to enumerate the printer registry with this fix.
But I can do more testing not until I'm back at work on Monday. I've no
private license of Vista.
More information about the samba-technical