REPORTBUG(1)

NAME
reportbug - prepare a bug report for sending to Acorn

SYNOPSIS
reportbug [ program ... ]
reportbug [ -o ] [ -t ]
reportbug -f [ file ... ]

INTRODUCTION
Reportbug provides a uniform method of reporting bugs in the RISC-iX kernel and utilities to Acorn. It determines whether the user is local to Acorn (on the local network), and if so enters the bug report directly into the central bug database, otherwise it prepares a text form of the report for mailing to Acorn.

At external sites reportbug will write a text file to the user's current working directory, and whilst terminating will print a message indicating the file name given. This file should be printed out and posted to Acorn, or put on a floppy disc and sent to Acorn. The floppy disc is preferable when supporting files are also to be sent.

The -o, -t and -f flags are for Acorn internal use only and are not available at external sites. The -o flag is for entering old pre-database bug reports, the -t flag is used to enter text form external bug reports, and the -f flag is used to enter any non-local bug database files into the main database.

The programs specified on the command line are a list of programs exhibiting a given problem. They should all have the same problem. DO NOT combine bug reports, all distinct problems should have a separate bug report. If no programs are specified, reportbug will prompt for them. If the problem relates to the kernel, specify `/vmunix' as the program with the problem. Reportbug will use which(1) to determine where the program causing the problem came from, and version(1) to produce a reference for Acorn of the exact binary being run.

Reportbug prompts for a priority of the bug. This should be set with the importance assigned to the bug by the user. Acorn reserve the right to assign a different priority to bugs!

Reportbug then prompts for a description of the bug. Type in as much information as possible on the problem to allow Acorn to duplicate the bug so that it can be fixed. Input is terminated by a `.' or a control-D on a line of its own.

The user is then prompted for any supporting information. This is a multiline field like the bug description above. This should be a list of accompanying files, such as C sources, which the user feels useful to Acorn to identify the bug. External bug reports should enclose machine readable copies of these files. Internal bug reports should specify a network accessible file name for the UNIX group to read directly.

Finally the user is prompted for a one line synopsis of the problem.

SUMMARY
Reportbug has three types of input:

options
    Here a prompt is displayed, followed by a list of options numbered from 1 upwards. The user should type in a number from 1 to the upper limit shown.

single line
    Here a prompt followed by a colon is displayed. A single line should be input terminated by `enter' or `return'. A null entry can be created by just typing `return'. A line of `~d' destroys any existing value and reprompts you for a new value.

multi line
    Here a prompt is displayed, followed by a line prompt `>>'. The line prompt is repeated for each line of input.

    Input is terminated by a line containing just a `.' or a control-D.

    If a line is entered containing just `~e' then the input so far is fed into your favorite editor (found in the environment variable EDITOR) for full screen editing. The editor can also be specified by typing its name after the `~e'. Quitting the editor (after resaving the file) returns to reportbug, the field is reprompted, and any further input is appended to the result of the editor session.

    Similarly `~v' calls up the program specified in the VISUAL environment variable.

    A line of just `~o' inserts the previous value of the field at the current point in the input text.

    A line of just `~p' prints out the input accumulated into this field so far.

    A line of `~w filename' appends the field accumulated so far to the named file.

    A line of `~r filename' appends the contents of the file named to the field accumulated so far.

    A line of `~! command' uses your current shell (found in environment variable SHELL) to execute the command given.

    A line of `~q' quits reportbug without sending the report.

    A line of just `~d' deletes any existing entry, abandons the lines typed so far, and reprompts.

Reportbug can be aborted at any time by pressing control-C. This prevents the sending of the report.

FILES
/tmp/BugEdit.*    temporary for editor escape
BUG*    textual report for sending to Acorn

AUTHOR
Andy Bray

BUGS
When using this program with a bug database present, the program will use lockd(8C) to administer file locking. This in turn requires the statd(8C) and portmap(8C) daemons to also be running. If any of these daemons are missing, reportbug will wait for them - potentially forever. Reportbug cannot even be killed in this state.