Contributing to Shorewall Development
This is a short article that outlines some of the ways that you can contribute to Shorewall's development.
Support
In IRC
The Shorewall community support channel is #shorewall. Members of the Shorewall development team and users congregate in the channel. The Shorewall developers spend a significant amount of time dealing with relatively basic user problems. One way in which you could help is by hanging out in the channel and helping out these users, especially if you are experienced with Shorewall. This would allow the Shorewall developers to focus more on fixing bugs and developing Shorewall code, instead of dealing with user support issues.
On the mailing lists
Much like in IRC, many users also bring support requests to the shorewall-users@lists.sourceforge.net mailing list. This support function also takes time away from developing Shorewall itself. If you are experienced with Shorewall, you can subscribe to the mailing list and help out users there as well.
Testing
The current stable release of Shorewall is the 4.4 series. However, development continues in the 4.5 series (which will be released as the 4.6. series). As development advances, various alpha, beta and release candidate versions will be released. These pre-releases are announced on the shorewall-devel@lists.sourceforge.net mailing list. Testing of those releases is always welcome as it helps to ensure that bugs are identified early and that the releases that are made from those test versions are as bug free as possible. Additionally, if you have a very complex Shorewall configuration, your testing is even more important as you are more likely to exercise little used features that may otherwise receive very limited testing. In any case, any bugs or suspected bugs that you encounter should be reported to the shorewall-devel@lists.sourceforge.net mailing list.
Coding
Generally, the Shorewall developers have the coding pretty well under control. However, additional help is always welcome. If you are good with Perl or POSIX sh, then feel free to join the IRC or shorewall-devel@lists.sourceforge.net mailing list and ask what you can do to help out. Patches can also be submitted to the mailing list. The Shorewall source code can be checked out from SourceForge's Git.
Documentation
Shorewall is extensively documented. However, additional documentation on certain topics would be good, as would reviews and copy editing of current documentation. If you want to document something that is not currently documented (e.g., using Shorewall with some new virtualization technology), then the best way is to start a page on this wiki (check the guidelines for contributing). If you want to propose an update or change to the existing documentation that is on the www.shorewall.net site, then the best way is to check out the code from SourceForge's subversion and submit patches to the XML sources to shorewall-devel@lists.sourceforge.net mailing list.
