Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 14 Mar 2002 08:59:36 -0500
From:      "Robin P. Blanchard" <Robin_Blanchard@gactr.uga.edu>
To:        dwcjr@inethouston.net, jah4007@cs.rit.edu, stable@freebsd.org
Subject:   samba-2.2.3a port / cups-1.1.14 port
Message-ID:  <3C90ACC8.9D1F227C@gactr.uga.edu>
References:  <3C7AACC9.882C0C11@gactr.uga.edu> <20020225222806.GC7548@leviathan.inethouston.net> <3C7E614C.277FA063@gactr.uga.edu> <20020304021840.GB44116@leviathan.inethouston.net> <3C8E3C06.A7214D61@gactr.uga.edu> <00be01c1c9ec$45aff9b0$d800a8c0@dwcjr> <3C8E41E6.BFF33627@gactr.uga.edu> <00eb01c1c9f9$753f58d0$d800a8c0@dwcjr> <3C8E5568.2D165D78@gactr.uga.edu> <00fc01c1c9fc$71df84a0$d800a8c0@dwcjr> <3C8E598F.D4C65F63@gactr.uga.edu> <013501c1c9fe$27911420$d800a8c0@dwcjr> <3C8E5D43.A64063B7@gactr.uga.edu>

next in thread | previous in thread | raw e-mail | index | archive | help
Hello all --

Thanks (David) for getting the ldap stuff incorporated into the samba
port. We've since been mucking around with getting everything working.
This is what we're dealing with:
samba-2.2.3a
openldap-2.0.23
cups-base-1.1.14
cups-lpr-1.1.14

Within cups-lpr-1.1.14 there is a utility 'cupsaddsmb' which does some
sort of magic enumeration of cups printers into samba. Yesterday we went
through a very long rigamarole with the cups author as it seemed his
software had a bug which (cupsaddsmb is a wrapper around smbclient and
rpcclient) constructed improper rpcclient calls. Here's the result of
what we uncovered:

case 1 (failure, host first):
# rpcclient localhost -N -U'stuffhere' -c 'adddriver "Windows NT x86"
"itoj95:ADOBEPS5.DLL:itoj95.PPD:ADOBEPSU.DLL:ADOBEPSU.HLP:NULL:RAW:NULL"'
INFO: Debug class all level = 3   (pid 71622 from pid 71622)
Enter Password: 
session setup ok
Domain=[GACTRTEST] OS=[Unix] Server=[Samba 2.2.3a]
rpcclient $> quit

case 2 (success, host final)
# rpcclient -N -U'stuffhere' -c 'adddriver "Windows NT x86"
"itoj95:ADOBEPS5.DLL:itoj95.PPD:ADOBEPSU.DLL:ADOBEPSU.HLP:NULL:RAW:NULL"'
localhost
INFO: Debug class all level = 3   (pid 71625 from pid 71625)
session setup ok
Domain=[GACTRTEST] OS=[Unix] Server=[Samba 2.2.3a]
cmd = adddriver "Windows NT x86"
"itoj95:ADOBEPS5.DLL:itoj95.PPD:ADOBEPSU.DLL:ADOBEPSU.HLP:NULL:RAW:NULL"
adddriver "Windows NT x86"
"itoj95:ADOBEPS5.DLL:itoj95.PPD:ADOBEPSU.DLL:ADOBEPSU.HLP:NULL:RAW:NULL"
Printer Driver itoj95 successfully installed.

The problem was either with cupsaddsmb or with rpcclient and all
stemming from getopt interpretations. Here's what the author of
cupsaddsmb finally determined:

>>>
Hmm, doing some diffs it looks like rpcclient.c was changed post-2.2.3a
to grab the server name only from the first argument...

OK, that said, I just checked the changes from 2.2.0 through 2.2.3a;
somewhere between 2.2.1 and 2.2.2 rpcclient was changed to look for
the server after running through getopt(), but then after 2.2.3a it
was changed back to looking for it before all other options.

The fix *must* be made to your copy of SAMBA, as otherwise cupsaddsmb
will not work with versions other than 2.2.2, 2.2.2a, 2.2.3, and
2.2.3a.

I've attached a patch against 2.2.3a; in the meantime I will try to
come up with a patch for the SAMBA folks so that the server name can
be at the beginning *or* at the end of the command-line (and maybe
possibly anywhere in between...)
>>>

Seems as if it's his position that the samba rpcclient code in 2.2.3a is
at fault. I'm not sure what the kosher thing to do is...I'm not a
software developer and I have no way to determine if the problem is his,
or if it is samba's. Is anyone here actually on one of these teams and
could therefore reasonably determine the proper course of action to
take?

Regardless, seeing as how our port builds by default with cups, it would
seem that we would want this cupsaddsmb to work. Either we could use his
patch to rpcclient, or we could patch his code (my staff hacked up a
*very* nasty patch to his code yesterday that worked). It does seem that
the problem may be samba's. For instance, the manpage and help info for
rpcclient are out of sync.

I just rebuilt the port (by the way, samba patch-ba (introduced today)
causes the port to fail) with his patch and things work great! We now
have a fully functional, cups-1.1.14 enabled, auto printer driver
downloading, samba-2.2.3a PDC that uses a NIS -> ypldapd -> openldap
backend!

Hope to get this resolved and incoporated into one of our ports soon....


-- 
------------------------------------
Robin P. Blanchard
IT Program Specialist
Georgia Center for Continuing Ed.
fon: 706.542.2404 fax: 706.542.6546
email: Robin_Blanchard@gactr.uga.edu
------------------------------------

To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-stable" in the body of the message




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?3C90ACC8.9D1F227C>