It should also allow customers to make patches to the software and exchange patched with other customers.
And the developing company should be able to hold all the rights on source code and on all accepted patches.
It should also allow customers to make patches to the software and exchange patched with other customers.
And the developing company should be able to hold all the rights on source code and on all accepted patches.
Let your company hire some good lawyer(s) to write such a license.
The Artistic License (the same license used for Perl) gets you part of the way there. Primarily, it forces modifications to be made available to the original licensor so that he may include those modifications in the original software. The Artistic License allows re-distribution by licensees, though, so you'd have to modify the distribution terms to only allow distribution with other customers.