Thank you for trying to get the many JtR contributors to license their
code properly. I neglected to do it so far, for a variety of reasons,
and indeed I did not include that code into the official JtR.
As you work on this, you could want to be aware of my licensing
requirements to consider a piece of code for inclusion into JtR. In
short, not every free software license will do. I'd need to be able to
include the code into the free JtR, which is currently under GPLv2, but
I also want to retain the freedom to re-license JtR (or a derivative
work) differently (which I now have, being the copyright holder).
I currently exercise this freedom for JtR Pro, which is under a non-free
license - http://www.openwall.com/john/pro/doc/LICENSE
The possibilities for contributed code, to be considered for inclusion,
appear to be:
- public domain statement (in this case, the author should be mentioned,
but no copyright statement may be included; in fact, a copyright
disclaimer may be included along with the "placed in the public domain"
- a relaxed license compatible with GNU GPL v2+, but also allowing for
proprietary derivative works - e.g., the license I use for popa3d or
Matthew Kwan's micro-license found in nonstd.c in JtR;
- dual-license: "GNU GPL v2 or later" or a specific permissive license
allowing for proprietary derivative works at the user's discretion;
- copyright transferred to me (uncommon).
I am not happy about common choices for a "permissive license allowing
for proprietary derivative works", such as BSD, as those tend to have
specific requirements for attribution, which could make e.g. the license
for JtR Pro look complicated. If BSD is inevitable, then shorter forms
of it are preferred (2-clause).
I previously touched on this issue in the following posting:
Pkg-john-devel mailing list