[unix-pc.general] Interesting "Feature" of lpsetup

elliot@alfred.UUCP (Elliot Dierksen) (12/07/89)

I just thought I would pass on a bit of information that I discovered this
evening.  Should any of you out there ever get a message "setuid failed"
when running printer setup from the user agent menu, I can tell you why. The
password file entry for lp MUST be on line 9!!!!   I know this sounds silly,
but I had done some messing around with the file and all of a sudden lpsetup
went into orbit.  After an hour's worth of wasted time and numerous rude
comments, I decided to try and use the stock password file and like MAGIC
lpsetup returned to earth. 

I hope this saves someone out there a few headaches!!

EBD
-- 
Elliot Dierksen                 Home: {peora,ucf-cs,uunet}!tarpit!alfred!elliot
                                Work: {att,codas}!candi!ralph!ebd

"What's another word for Thesaurus??"  -- Steven Wright

bruces@daneel.rtech.COM (Bruce Stewart) (12/11/89)

In article <557@alfred.UUCP> tarpit!alfred!elliot writes:
>
>I just thought I would pass on a bit of information that I discovered this
>evening.  Should any of you out there ever get a message "setuid failed"
>when running printer setup from the user agent menu, I can tell you why. The
>password file entry for lp MUST be on line 9!!!!   I know this sounds silly,
>but I had done some messing around with the file and all of a sudden lpsetup
>went into orbit.  After an hour's worth of wasted time and numerous rude
>comments, I decided to try and use the stock password file and like MAGIC
>lpsetup returned to earth. 
>
>I hope this saves someone out there a few headaches!!
>

Since I'd just spent some time making my 7300 talk to my parallel pritner, I
was curious about this.  I tried the experiment of moving the lp entry in 
/etc/passwd to line 10, and using the ua to define a serial printer on port0 
(tty000).  I had no problems (although I did not actually attach a printer on
the port).  Perhaps you were doing something different; any details might help
to clarify things.

As another note, I discovered that despite the fact that /dev/rawlp works a
lot better than /dev/lp for a parallel device; I used lpadmin to switch the
parallel printer device from /dev/lp (set up that way by the ua) to /dev/rawlp
and performance improved markedly.  Before the switch, I was experiencing 
erratic printing (one line, pause of 10 minutes, another line, etc. -- almost
as if /dev/lp were a block device, and the buffers were never being flushed).
After the switch, bingo! -- performs as expected.  Hope this saves someone 
some time and effort.

-bruce stewart


attempting something different, and ran

gil@limbic.UUCP (Gil Kloepfer Jr.) (12/15/89)

In article <4261@rtech.rtech.com> bruces@daneel.UUCP (Bruce Stewart) writes:
>As another note, I discovered that despite the fact that /dev/rawlp works a
>lot better than /dev/lp for a parallel device; I used lpadmin to switch the
>parallel printer device from /dev/lp (set up that way by the ua) to /dev/rawlp
>and performance improved markedly.

Important folks.../dev/lp doesn't seem to pass all characters without
translation (ie. it's NOT raw!!)...  Lenny and I tried to connect a
laser printer to the parallel port, and Lenny thought he had a bum
printer...  When we circumvented the lp spooler and directed the output
of the programs to /dev/rawlp, all worked (and worked WELL, at that).

> Keywords: Brain Damage - User Agent

Agreed...and anyone who is comfortable with UNIX at the command-level
should work on doing without it, or make the current UA scripts work
PROPERLY.  The system can be made a lot more versatile without the
UA. (flames to /dev/null ...)

Gil.

wjc@ho5cad.ATT.COM (Bill Carpenter) (12/17/89)

On 15 Dec 89 06:12:35 GMT, gil@limbic.UUCP (Gil Kloepfer Jr.) said:

gil> Important folks.../dev/lp doesn't seem to pass all characters
gil> without translation (ie. it's NOT raw!!)...  Lenny and I tried to
gil> connect a laser printer to the parallel port, and Lenny thought
gil> he had a bum printer...  When we circumvented the lp spooler and
gil> directed the output of the programs to /dev/rawlp, all worked
gil> (and worked WELL, at that).

This is documented, but you're not likely to happen upon it casually,
especially if you don't have the man pages the come with the
development set.

(1)  The differences between /dev/lp and /dev/rawlp are described in
lp(7M).  The "lp" command defaults to /dev/lp.

(2)  To get to a printer via rawlp using the "lp" command, you use a
"_R" suffix on the destination.  E.g., "lp -d waldo" goes to /dev/lp;
"lp -d waldo_R" goes to /dev/rawlp.  (I have done this and it works.)

(3)  For 3.51, you can get the same effect as (2) by using "-oRAW".
E.g., "lp -d waldo -oRAW".  (I haven't tried this personally, but it's
described in lpadmin(7M).  Might not work for all printer types.)

Until this discussion came up and I went looking in the man pages
again, I didn't notice that there were several things added to the
"lp" command between 3.5 and 3.51.  If you haven't been there in a
while, you might like to have a browse.  (The "_R" jazz has been there
for at least a couple releases, though.)
--
   Bill Carpenter         att!ho5cad!wjc  or  attmail!bill