xkill - extended kill - kill processes or users, including Usenet posters.
xkill [-signal] pid ... xkill -l xkill username[@host] ... xkill -u [-qs] [-p] [newsgroup]
xkill sends a signal to a process or a terminal. The first two forms send a signal to a process. The functionality in this case is the same as kill(1).
When the command xkill is invoked with an username as argument, it attempts to locate the specified user on the local host. If the user is logged on, the signal ECUTE (electrocute, 666) is sent to the user's terminal. This will cause the keyboard to electrocute the user. If the user is not logged on, the appropriate line of the file /etc/passwd is marked. The first time the user logs on the ECUTE signal is sent to the terminal he is using.
When the command xkill is invoked with a remote username, in the form user@host, a connection with the remote host is attempted (see xkilld(8)), to send the ECUTE signal to the user's terminal.
The -u (Usenet) option is an extension of the concept of KILL file.
The program will attempt to locate a remote user by scanning the news spool area. When the user is located, a connection is attempted with the appropriate host, and the ECUTE (electrocute, 666) signal is sent to the appropriate user. The search only considers one newsgroup. If none is specified, rec.humor is assumed by default. The program attempts to locate people whose signature is too long, and who quote a whole article in order to comment on a single line. The option -s can be used to consider only the size of signatures, while the option -q can be used to consider only the size of the quotations. The option -qs corresponds to the default.
When the -p (post) switch is used, the user is electrocuted next time he post news. FILES
/etc/passwd to keep track of users marked for electrocution
/etc/hosts list of remote hosts
/usr/spool/news news spool directory; the news articles are stored here
To kill a remote user, it is sometimes better to use the command telnet(1c) using the standard xkilld port (number 666). When the connection is attempted by xkill(1) some gateways will explode after the user is electrocuted.
To decide what is a quotation, and what is a signature, a very complicated pattern matching is used. This does not always work, even if the program hasn't yet electrocuted somebody who is not guilty of bandwidth waste.