[cups.bugs] [MOD] STR #2587: cupsd will no longer seems to accept requests from OLD cups clients

Jon Peatfield J.S.Peatfield at damtp.cam.ac.uk
Mon Nov 12 20:32:51 PST 2007


On Mon, 12 Nov 2007, Michael R Sweet wrote:

>>  Sadly we need to support clients were we can't force the users to upgrade
>>  their machines.  This seems to be a *new* feature in 1.3.4 - 1.3.3 didn't
>>  reject the jobs/requests.
>
> Right, and you'd get bogus titles, etc. in your output... :(

This is only a problem with the display of job meta-data (e.g. titles) etc 
isn't it?  Or is there a bigger issue/problem that I'm missing?

Annoying though having garbled titles (etc) is I personally think that it 
is preferable to not being able to print at all.  Of course I understand 
that I may be in a very tiny minority.

I'd be really really happy with an obscure config option like

  AllowBadCharsetsFromBrokenClientsUntilTheyAreFixed

so people wouldn't turn it on by default unless they needed it.  I'll 
offer a patch to implement something like that if you want -- it would 
have to be better than #ifdef'ing out the code which is what I'm doing 
while testing...

>>  If cups-1.3.x is not intended to accept jobs/requests from cups-1.1.x
>>  perhaps a big warning is needed to alert people who have a mixture of
>>  clients of different ages.
>
> Like I said, as long as you use UTF-8 for the encoding, everything
> will continue to work as before.  The mixed charset configurations
> are the problem (and never really worked, anyways...)

I'm probably missing something which is completely obvious to those more 
familiar with cups internals.

How should one set the locale to use UTF-8 - for older cups clients?

Just setting LANG or LC_MESSAGES to en_US.UTF-8 (or en_GB.UTF-8) doesn't 
work for me.  stracing the client it seems to look for (prefer) the locale 
files which came as part of cups itself so e.g. if I set LANG or 
LC_MESSAGES to en_GB.UTF-8 then it looks for:

   en_GB.UTF-8/cups_en_GB.UTF-8 (not present)
   en_GB/cups_en_GB             (not present)
   en/cups_en                   (appears to say to use iso-8859-1)

of the locale files included with cups-1.1.17-source.tar.bz2 only 
cups_zh_CN seems to say to use UTF-8 (I didn't check all of them so may 
have missed any others).

Indeed setting LC_MESSAGE=zh_CN does then allow an ancient lpq/lpstat to 
work against a cups-1.3.4 server but I have a feeling it probably affects 
a few other things that at least some users may care about (such as error 
messages).

In any case we don't control most of the client machines so we can't 
easily force them to set/fix the locale any more than we can easily get 
them to upgrade to a newer version of CUPS - in the short term anyway.

  -- Jon





More information about the cups mailing list