Bug 1004: Rewrite FSF code to avoid GPLv2 2. c)
commitc56f3928ecf345ec79b35ab8361397fa47092de8
authorKalle Olavi Niemitalo <kon@iki.fi>
Sun, 2 Nov 2008 20:15:38 +0000 (2 22:15 +0200)
committerKalle Olavi Niemitalo <Kalle@Astalo.kon.iki.fi>
Sun, 2 Nov 2008 20:15:38 +0000 (2 22:15 +0200)
tree6d4c3170e5ca1987e42b3f57e2958f5aab60acbe
parentffffa763e4841f5393fdbff26ba9133b55ab5fd2
Bug 1004: Rewrite FSF code to avoid GPLv2 2. c)

c_strcasecmp and c_strncasecmp were taken from GNU coreutils 6.9,
which is copyrighted by the Free Software Foundation and licensed
under GNU GPL version 2 or later.  It seems the programs in coreutils
do not normally read commands interactively.  So, including coreutils
code in an interactive program such as ELinks could trigger GPLv2
section 2. c), which would require ELinks to display a copyright
notice and a warranty disclaimer each time it is started.  Rewrite
those functions to remove the FSF-copyrighted code and make ELinks
not a work based on GNU coreutils.

Avoiding FSF code has the additional benefit that we won't have to ask
FSF for permission if we want to add a licence exception that allows
linking ELinks with OpenSSL.  So it seems a good idea even if my
interpretation of GPLv2 2. c) is overly strict.  I haven't checked
though whether there are other FSF-copyrighted portions in ELinks.
src/util/string.c
src/util/string.h