[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#711327: cups-client: the -h option has no effect



Control: retitle -1 cups-client: the -h option is overridden by _cupsSetDefaults settings when the port is not given
Control: found -1 2.0.3-8

On 2015-07-11 11:19:15 +0100, Brian Potkin wrote:
> From
> 
>  https://www.cups.org/documentation.php/doc-2.0/relnotes.html
> 
>    Fixed several issues with client.conf, CUPS_SERVER, and the
>    "-h" option of most commands (STR #4528)
> 
> Also
> 
>   https://cups.org/str.php?L4561
> 
> Please test with 2.0.3-6.

The problem still occurs with 2.0.3-8:

ypig:~> lpstat -h localhost -H -a
lipps.lip.ens-lyon.fr:443
[output: all remote printers]

ypig:~> lpstat -h localhost:631 -H -a
localhost:631
lpstat: No destinations added.

In latrace output, the first difference between the two invocations
occurs in cupsSetServer [/usr/lib/x86_64-linux-gnu/libcups.so.2],
here in cups/usersys.c:

    if (cg->server[0] != '/' && (port = strrchr(cg->server, ':')) != NULL &&
        !strchr(port, ']') && isdigit(port[1] & 255))
    {
      *port++ = '\0';

      cg->ipp_port = atoi(port);
    }

This is expected. The next difference occurs here in ippPort() in
cups/ipp-support.c:

  if (!cg->ipp_port)
    _cupsSetDefaults();

_cupsSetDefaults() is called only when the port is *not* provided.
This means that by default, cg->ipp_port is 0. The default port
should not be 0. This makes no sense!

-- 
Vincent Lefèvre <vincent@vinc17.net> - Web: <https://www.vinc17.net/>
100% accessible validated (X)HTML - Blog: <https://www.vinc17.net/blog/>
Work: CR INRIA - computer arithmetic / AriC project (LIP, ENS-Lyon)


Reply to: