client(l)

NAME
client - Client program for solving the RC5 challenge.

SYNOPSIS
client [-m]
client [-d] [-t job-length] [-e] [-l] [-L lockfile] [-K killfile] [-u] [-c n] [-n nicety] [-f] [-p port] [-S] [-T task-length] server [procs]

DESCRIPTION
client is the client program of an international distributed effort to win the RC5 48bit challenge. The program requests key space chunks from server using udp packets. These chunks are then searched for the unknown key. The chunks' size is calculated dynamically; each chunk will take twenty minutes of operation by default. client will terminate when it didn't receive a response from the server process for 24 hours or when it's sent a kiss-of-death packet by the server (usually this will be used if the key's been found).

On multi-processor hosts, the procs parameter may be used to specify the number of jobs to be performed in parallel.

The client will renice itself to a compiled-in value on start.

OPTIONS

-m  Measure the computer's speed. The client will perform a test run to find out how fast it runs on your machine. The server won't be connected. Additionally, an integrity check is performed.

-d  Debug mode. Currently, this means that the client will request small chunks (i.e., about 5 seconds of work per chunk) from the server. Don't use this in production, please.

-t job-length
    Change the length of the jobs requested to job-length minutes.

-e  Detach. The client will continue it's operation in background. The -l flag is implied by this.

-i  When detaching, print the child's (or children's) process id on standard out. Only effective if used together with -e.

-l  Lock against multiple executions.

-L lockfile
    Change the lock file location to lockfile.

-K killfile
    Change the kill file location to killfile. The client will terminate when finished with its current job if the killfile is present. This can be used to allow other users to kill the daemon whenever they need to.

-u  Remove the lock file when receiving a SIGUSR1 signal.

-c n
    Request exactly n jobs, then terminate.

-n nicety
    Increase the client's priority by nicety. Only the super-user can specify negative priorities.

-f  Fork after every key block. This can be used on machines where jobs accumulating too much computing power are killed. Note: This renders the -i option's output and most file locking efforts useless. Apply with care.

-p port
    Send the UDP packets to the specified port on the server.

-S  Log diagnostics using syslog(3).

-T task-length
    The client will terminate after task-length minutes.

SIGNALS
client can be told to exit after finishing the current key block by sending it a SIGUSR1. When the -u command line option is used, it will remove the lock file immediately.

NOTES
When running multiple jobs on a multi-processor machine using the procs command line argument, a numerical identifier between zero and procs is appended to the lock file name.

The server is currently running on kom30.ethz.ch. For best compatibility with your system administrator, renice the client to the lowest priority available and inform him. The program may run for several weeks.

If you are contributing computing time to the project, you should also consider to join the project's mailing list. To do so, send a short message containing the word `subscribe' to challenge-request@list.ee.ethz.ch.

BUGS
May be killed by your system administrator.

This manual page has been written in an absolutely horrible English.

AUTHOR
client has been written by Germano Caronni <gec@acm.org>. (Manpage by Thomas Roessler)

FILES
/tmp/.dic-client-lock
    The lock file's default location.
/tmp/.dic-client-kill
    The kill file's default location.

SEE ALSO
nice(1), syslog(3), ctluser(8); http://www.rsa.com/rsalabs/97challenge/, RSA Data Security, Inc.. http.//www.klammeraffe.org/challenge/, The Challenge Project.