← Back to team overview

desktop-packages team mailing list archive

[Bug 1352809] Re: /usr/bin/lp on Trusty using -h option doesn't work as expected

 

Hello Michael, or anyone else affected,

Accepted cups into trusty-proposed. The package will build now and be
available at http://launchpad.net/ubuntu/+source/cups/1.7.2-0ubuntu1.4
in a few hours, and then in the -proposed repository.

Please help us by testing this new package.  See
https://wiki.ubuntu.com/Testing/EnableProposed for documentation how to
enable and use -proposed.  Your feedback will aid us getting this update
out to other Ubuntu users.

If this package fixes the bug for you, please add a comment to this bug,
mentioning the version of the package you tested, and change the tag
from verification-needed to verification-done. If it does not fix the
bug for you, please add a comment stating that, and change the tag to
verification-failed.  In either case, details of your testing will help
us make a better decision.

Further information regarding the verification process can be found at
https://wiki.ubuntu.com/QATeam/PerformingSRUVerification .  Thank you in
advance!

** Changed in: cups (Ubuntu Trusty)
       Status: In Progress => Fix Committed

-- 
You received this bug notification because you are a member of Desktop
Packages, which is subscribed to cups in Ubuntu.
https://bugs.launchpad.net/bugs/1352809

Title:
  /usr/bin/lp on Trusty using -h option doesn't work as expected

Status in cups package in Ubuntu:
  Fix Released
Status in cups source package in Trusty:
  Fix Committed
Status in cups source package in Utopic:
  Fix Committed

Bug description:
  [SRU justification]
  The -h option should override the value stored in the CUPS_SERVER environment variable

  [Impact]
  Without this fix, user is unable to define the printserver to use with the -h option

  [Fix]
  Verify if the -h option has defined the printserver before using CUPS_SERVER to define it.

  [Test Case]
  $ export CUPS_SERVER="blah"
  $ lp -h {valid printserver} -d {printqueue} /etc/hosts

  Without the fix :
  lp: No such file or directory

  With the fix :
  request id is {printqueue}-37 (1 file(s))

  [Regression]
  None expected. New code path (from upstream patch) is only triggered if
  -h option is used.

  [Original description of the problem]

  1) The release of Ubuntu you are using, via 'lsb_release -rd' or
  System -> About Ubuntu

  Description:	Ubuntu 14.04 LTS
  Release:	14.04
  Codename:	trusty

  2) The version of the package you are using, via 'apt-cache policy
  pkgname' or by checking in Software Center

  cups-client:
    Installed: 1.7.2-0ubuntu1.1

  3) What you expected to happen

  When using lp -h to send a print job to a printer, I expected to the
  job to be sent to the printer and to override any env variables set or
  conf file setting

  4) What happened instead

  To summarise the behaviour I'm seeing

  1) with CUPS_SERVER env variable unset and no ServerName set in /etc/cups/client.conf, we see that using lp -h with hostnames gives us error "lp: Error - add '/version=1.1' to server name."
  Using IPs sends the job to the printer as expected.

  2) with CUPS_SERVER env variable set using hostname with/without port
  and no ServerName set in /etc/cups/client.conf, we see that the only
  time it sends a job is when an IP and port are used. Otherwise it
  seems to error. I believe it's using the env variable, even though -h
  is being used.

  3) with CUPS_SERVER env variable set using IP address with/without
  port and no ServerName set in /etc/cups/client.conf we see that the
  job is always sent using lp -h but it is always sent to the value in
  env variable, thus ignoring the command line.

  ===

  with CUPS_SERVER env variable unset and no ServerName option set in
  /etc/cups/client.conf

  $ lp test2.txt
  lp: Error - scheduler not responding. (expected as no server is set or specified)

  Using hostname
  $ lp -h server1:631 test2.txt
  lp: Error - add '/version=1.1' to server name.

  $ lp -h server1 test2.txt
  lp: Error - add '/version=1.1' to server name.

  Using IP address
  $ lp -h 192.168.254.8 test2.txt
  request id is PDF-54 (1 file(s))

  $ lp -h 192.168.254.8:631 test2.txt
  request id is PDF-55 (1 file(s))

  ===

  With CUPS_SERVER env variable *set CUPS_SERVER=server1

  $ lp test2.txt
  lp: Error - add '/version=1.1' to server name.

  Using hostname
  $ lp -h server1 test2.txt
  lp: Error - add '/version=1.1' to server name.

  $ lp -h server1:631 test2.txt
  lp: Error - add '/version=1.1' to server name.

  Using IP address
  $ lp -h 192.168.254.8 test2.txt
  lp: Error - add '/version=1.1' to server name.

  $ lp -h 192.168.254.8:631 test2.txt
  request id is PDF-56 (1 file(s))

  ===

  With CUPS_SERVER env variable *set CUPS_SERVER=server:631

  Same results as above

  ===

  With CUPS_SERVER env variable *set CUPS_SERVER=192.168.254.8:631

  $ lp -h 555.555.555.555 test2.txt
  request id is PDF-66 (1 file(s))

  ===

  With CUPS_SERVER env variable *set CUPS_SERVER=192.168.254.8

  Same results as above

To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/cups/+bug/1352809/+subscriptions