rlprm(1)

NAME
rlprm - remove jobs from a remote line printer spooling queue

SYNOPSIS
rlprm [-qNV] [-Hprinthost] [-Pprinter] [-Xproxyhost] [--debug] [--timeout=seconds] [--port=port] [-] [ job # ... ] [ username ... ]

DESCRIPTION

rlprm uses TCP/IP to remove jobs you own from printers anywhere on a network. Unlike lprm, it does not require that the remote printers be explicitly known to the local system (traditionally through /etc/printcap), and thus is considerably more flexible and requires less administration.

rlprm can be used anywhere a traditional lprm might be used, and is backwards compatible with traditional BSD lprm. If rlprm is invoked as lprm, it preserves all known lprm semantics, with the exceptions of those semantics mentioned in BUGS / LIMITATIONS below.

rlprm can be set up, installed, and used in the same two ways as rlpr(1) (that is, either with or without the rlprd(8) proxy daemon). Please see rlpr(1) for details, and to see whether you will need to use the rlprd(8) proxy daemon or not.

OPTIONS

  Environment/Setup

--debug
    Print gobs of debugging information.

-N, --no-bind
    Don't try to bind to privileged port before connecting to lpd. Please see the CONFIGURING A PROXY section in rlpr(1) for information on use of this option.

--port=number
    Select an alternate port (instead of 7290) to connect to, if using rlprd. Usually not needed.

-H, --printhost=host
    Select the host to print to (used with -P).

    Instead of using -H, one can specify the hostname directly including it with the printer name with the printer@hostname syntax.

-P, --printer=printername, --queue=printername
    Select the printer to print to (used with -H).

-X, --proxy=proxyhost, --proxyhost=proxyhost
    Select the proxy host to use, if necessary.

--timeout=seconds
    Set the inactivity timer. If the connection hangs for more than seconds seconds, then rlprm will give up. Use the special value `-1' to wait forever. Default timeout is 3 seconds.

-V, --version
    Print version and exit.

  Behavior

-   Remove all of your jobs. Note that this option must be specified immediately following the end of all other options. This option is a mutant supported only for compatibility. Instead of using this, include your username as the first argument to rlprm.

-q, --quiet, --silent
    Quiet mode - stay quiet (except for fatal errors). See BUGS / LIMITATIONS for problems using rlprm in silent-mode operation.

ENVIRONMENT VARIABLES
The following environment variables are used by rlprm:

RLPR_PRINTHOST
    Specifies the default host's queue to remove jobs from.

PRINTER or LPDEST
    Specifies the default printer to remove jobs from on the host.
    First PRINTER is consulted, then LPDEST.

    Note that one can also specify the host to examine by setting printer to be printer@hostname. This may be more convenient than setting RLPR_PRINTHOST, but will confuse the traditional BSD print commands.

RLPR_PROXYHOST
    Specifies a proxy host to use, if necessary.

FILES
~/.rlprrc	Personal printer/host database
/etc/hosts.lpd	Host-based security on printhost
/etc/hosts.equiv	Host-based security on printhost
/etc/passwd	Personal identification
/etc/rlprrc	System-wide printer/host database

SEE ALSO
rlpr(1), rlpq(1), rlprd(8), rlprrc(5)

AUTHOR
meem <meem@gnu.org>

BUGS / LIMITATIONS
Due to limitations in the current lpd protocol, it is not currently possible to tell whether or not the job removal succeeded when operating in silent mode.

Due to limitations in the current lpd protocol, it is not currently possible to emulate the superuser semantics for the `-' option. Instead, only root's jobs are removed.

Due to general niavete in the lpd protocol, rlprm(1) provides a lot of room for misbehavior; it is trivial to imagine how it can be used to remove jobs that do not belong to you. Unfortunately, any security added at this point is just sugar-coating -- the underlying protocol is flawed.