I have a Samba 3.4.7 PDC server under Debian Lenny. Everything was fine with Sambs 3.2.5 but I needed a newer one since I need to log in Win7 machines.
After updating to 3.4.7 cupsaddsmb was not working anymore. At the last step (rpcclient setprinterdriver x y) if gave "WERR_INVALID_PARAM" error message.
After hours of trying everything and googling I finally found the solution: I recreated the printer under CUPS but now without any - sign in the printername (the old one was SamsungML-3051N and the new one is SamsungML3051N). Every other settings are exactly the same.
And voi la cupsaddsmb runs without any problem and the XP Prof. SP3 clients can download the printer driver from the Samba server.
It would be usefull if - sign works in the printer name or at least cupsaddsmb gives and exclamation about it.
*** This bug has been marked as a duplicate of bug 7641 ***