Welcome to the Brutus Server Trac
Overview
Where to start? Brutus will have the initial appearance of being somewhat big for a first casual look. Fortunately, most code is in the "filling", i.e. the same engineering principles applied again and again. Brutus is therefore actually quite easy to comprehend design-wise.
The first place to look is naturally at the MAPI documentation that is publicly available at no charge at MSDN. MSDN is the standard reference for MAPI documentation. Brutus is build as a wrapper library on top of MAPI and are designed to reflect the native behavior of MAPI as closely as possible. The functional documentation for all interfaces, methods and types must therefore be found at MSDN.
Developer documentation for the internal workings of Brutus, on the other hand, and of the design and use of the CORBA interfaces, are found here. The brutus mailing lists is the place to go for anyone interested in Brutus development, be it client or server code.
Developer support
Please go to the following pages to read more about support, mailing lists, development utilities and documentaion.
Contribute
You can contribute by testing or developing Brutus clients, by sharing your thoughts about the Brutus framework/design or just by participating actively in the mailing lists.
You can also contribute your source code. Whether it is a bug-fix, a new feature, code cleanup or something entirely new. There are just two small hurdles to jump, copyright assignment and code approval. You only need to do the copyright assignment once, but each source code contribution needs review and approval before being submitted to the source code repository.
Copyright assignment
We need you to assign your copyrights to 42tools for most code contributions. 42tools needs to be the sole copyright owner for all of our projects (numbering just Brutus at the time of writing). This is so that 42tools can enforce the copyright of the software. Otherwise we would need to bother you if we have to go to court to defend the GPL. It is also so that we can distribute the software under a commercial license.
42tools does not exist for long unless we are legally able to dual-license the software and thus generate revenue. That revenue will ensure that Brutus is freely available to the Open Source community in exchange for us being the sole copyright owner.
We are willing to consider distributing Brutus related software, which are independent works and to which we do not own the copyrights, subject to an individual evaluation by 42tools.
Very small, "obvious" and "trivial" source code contributions does not require copyright assignments. Examples of such contributions is:
- Less than 5 lines of code
- Spell corrections and other trivial changes
- Any collection of separate one-line changes
You only need to assign your copyrights once.
42tools will not assert any ownership over source code contributions from you which is rejected, for whatever reason, by the project maintainers or which is not submitted, in any media or form, for review and/or inclusion into the source code repository.
The Copyright Assignment Form must be downloaded, signed and send by mail to 42tools. Please contact us for the mailing address.
Source code approval
Any source code which is submitted to 42tools for approval and/or inclusion into the source code repository must be reviewed by the project maintainers. Changes, in style and/or content, to the source code contribution might be required before it is approved.
The following are minimum requirements for any source code contribution that are approved for inclusion into the source code repository:
- You must adhere to approximately the same coding style as the original source code. We strive to following a loosely defined style based upon the Linux Kernel Coding Style where appropriate. Yes, I know.. Hungarian notation and mixed-case names. They are two abominations that the initial problem space more or less pulled over my head.
- You must include a description of what your source code contribution does and why the program should do that.
- You should always prefix the subject line of any email containing a source code contribution with "[PATCH]" or "[SOURCE]" where appropriate.
Starting Points
- UsingLorica -- How to make Brutus use our IIOP firewall
For a complete list of local wiki pages, see TitleIndex.
