Report a bug

Bugs are found in any complex software project. Vyatta is not an exception.

They should be reported to the developers to let them know what is not working properly so they can fix it.

Make sure it really is a bug.
Consult the documentation and ask users and developers on forums or IRC whether it is a bug or expected behaviour. Developers are trying to make the system as predictable and easy to use as possible, but some features may require special settings to do complex tasks or require you to know how your feature interact with others (like firewall and NAT).

Make sure it is reproducible
Try to reproduce it. It may not be easy, but you should try. If you provide reproducing steps it will speed up the process for developers a lot.

Describe reproducing steps
Typically reproducing steps include configuration of affected feature before opearations that failed because of bug, commands you entered (and/or other operations you did like detaching hardware) and resulting configuration. Use the following template:
 * 1) What did you want to achieve?
 * 2) What was the config before you tried?
 * 3) What did you do?
 * 4) What you expected?
 * 5) What you got?

Remember that developers will do exactly what you say to reproduce the bug. That is why detailed information about conditions it appears is important. Try to identify those conditions as accurate as possible. Try your reproducing steps on newer version, on other hardware configuration, with different config.

For example, your bug may appear only with specific model, only with specific configuration of a feature (e.g. when logging for a rule is enabled), when another feature is enabled at the same time to affected feature etc.

Include diagnostics output
Include output of operational commands related to affected feature (e.g. "show ip route" for a routing issue, "show nat rules" and "show nat statistics" for a NAT issue, "show hardware pci" for a NIC-related issue).

There is also "show tech-support" command that shows a lot of debug information. You can save its output directly to a remote FTP or SSH server: show tech-support save ftp://user:password@host/path/to/file

More specific commands are preferred though since they require less time to read. E.g. if you have troubles with OSPF routes, include "show ip route ospf" instead of "show ip route".

If you suspect suspect some feature is not handling traffic correctly (e.g. dropping sessions it should not or corrupting packets), attach a traffic dump. You can do this right on your router by using operational command like show interfaces ethernet eth0 capture

Now I am sure it is a bug and want to report it, what should I do?


First create a bugtracker account. Vyatta bugtracker is at bugzilla.vyatta.com.

Then log in and follow "New" link from the top panel. You will get a report form you should fill.

Write a summary
Make it short and clear. Like "IPv6 interface route can not be deleted when configured". Avoid phrases like "not working" (unless the feature is really not working at all which is not seen in stable releases).

Write a description
Description is a place for detailed information about but. Write what you have found on the previous step: what is the bug and how to reproduce it.

Choose severity
Do not overestimate it. There are not as important bugs for you as your own, but severity is is set from the point of view of users in general.

General guideline for choosing severity is the following:
 * Trivial: Does not break anything. Like a mistype in help string.
 * Minor: Causes minor functionality loss, has easy workaround.
 * Major: Causes major functionality loss, workaround is difficult.
 * Critical: Breaks feature functioning entirely.
 * Blocker: Block release, users can't continue using the system until it is fixed.

Leave it "unassigned" if in doubt, someone of the developers will set it. Do not think bugs with higher severity set by user are viewed or fixed first.

Severity is not the same to priority, it specifies how bad it is but not how important it is. For example, major bugs that appear in a rare use case are likely to be fixed after minor bugs that affect everyone.

Choose the component
This is required. If not sure, try to guess, it can be changed easily in the future.

Add large files as attachments
Click "Add an attachment" button, choose your file and set description. Description is mandatory. Traffic dumps, configuration files or test cases are added this way.

Enhancement requests
Requests for enhancements or new features are filed similar to bugs, but with severity set to "enhancement". Write your feature suggestion and propose CLI syntax.