[jcifs] Licensing question.

Michael B. Allen miallen at eskimo.com
Mon Jul 22 19:13:44 EST 2002

On Mon, 22 Jul 2002 08:44:15 +0200
Torgny Johansson <torjo845 at student.liu.se> wrote:

> Hi,
> I've written a small program using your library, and I was wondering how I'm
> allowed to distribute it.
> I've read the license, but I'm still a bit confused.
> I'm not allowed to distribute only your jcifs.jar file in my own package? Or
> am I?

Yes,  you  CAN  distribute  jcifs.jar only. You can also un-jar the jar and
re-jar the class files however you like. Or you could not use a jar at all.
Jar files are just packaging; the class files themselves are what count. 

And  you do not need to mention "jcifs" or otherwise give credit to anyone.
In  fact  I  would prefer that you did NOT mention "jcifs" or put any jcifs
associated  e-mail addresses in your distribution sources, READMEs, Release
Notes,  web  pages,  etc  ...  because  your clients should hold you solely
responsible  for  the  code you're giving them. That way, you can interpret
problems  before  redirecting to us if necessary. And if your code sucks it
doesn't make us look bad too :-) 

HOWEVER!  If you *modify* the jcifs library you have to give out the source
to  those  changes  along  with  the  binaries  (the new jar). If it's some
trivial  change like adding a property to change some setting or a mkdirs()
method  that  just  calls mkdir() recursively or similar triviality then no
one  will  care (but if you're asked, technically, your expected to produce
working  source  code).  If  you  just  change  the  access  modifiers from
'protected'  or nothing to 'public' just to expose lower level interfaces I
WILL  BE VERY UPSET because this is not the spirit of the LGPL  license. If
you write a DCE/RPC implementation and sell or give away the result outside
of  your  company,  government,  or  "entity",  then we definately want the
source and are legally entitled to it.

LEGAL DISCLAIMER: Assume that  nothing I've written here is correct. If you
want legal advise, hire a qualified attorney to instruct you on the meaning
of  the  GNU  LGPL in the context of your application. 

A  program should be written to model the concepts of the task it
performs rather than the physical world or a process because this
maximizes  the  potential  for it to be applied to tasks that are
conceptually  similar and more importantly to tasks that have not
yet been conceived. 

More information about the jcifs mailing list