[U-Boot-Users] [PATCH] add 'license' command to u-boot commandline

Wolfgang Denk wd at denx.de
Sun Jul 6 12:11:05 CEST 2008


Dear Harald,

in message <20080706075219.GC4167 at prithivi.gnumonks.org> you wrote:
> 
> [PATCH] add 'license' command to u-boot command line
> 
> The 'license' command includes the u-boot license (GPLv2) into the actual
> bootloader binary.  The license text can be shown interactively at the u-boot
> commandline.

When we started working on this boot loader (by then still under  the
name  8xxrom  or  maybe already PPCBoot, I don't remember exactly any
more) we decided not to implement such a feature because  of  (flash)
memory footprint reasons.

I still feel this is pretty heavy in terms of memory footprint versus
benefit ratio.

> For products where the commandline can actually be accessed by the end user,
> this helps to prevent inadvertent GPL violations, since the GPLv2 license text
> can no longer be 'forgotten' to be included into the product.
> 
> The 'license' command can be enabled by CONFIG_CMD_LICENSE.

Well, I bet 9:1 that some vendors (and I guess you and me know a  few
of   them   pretty   well)   may   simply   "forget"  to  enable  the
CONFIG_CMD_LICENSE option, or they ship  U-Boot  in  a  configuration
where access to an interactive console interface is difficult or even
impossible (completely unintentionally, of course).

So the benefit in such cases is really small,  especially  since  the
License  text  cannot  be  found  easily in the binary image (as it's
compressed).


So I have to admit that I'm realy biased here. Let's see what other's
say.

...
> diff --git a/include/license.h b/include/license.h
> new file mode 100644
> index 0000000..7a638eb
> --- /dev/null
> +++ b/include/license.h
> @@ -0,0 +1,583 @@
> +/* bin2header converting 'gpl.gz' */
> +unsigned char gpl_gz[] = {
> +	0x1f, 0x8b, 0x08, 0x08, 0xb2, 0x10, 0x0d, 0x46, 0x00, 0x03,
> +	0x67, 0x70, 0x6c, 0x00, 0x9d, 0x5b, 0x5d, 0x77, 0xdb, 0x46,
> +	0x92, 0x7d, 0x4e, 0xff, 0x8a, 0x3e, 0x7e, 0x89, 0x74, 0x0e,
...
> +	0xed, 0x4e, 0x3f, 0xa2, 0x44, 0x9f, 0x3f, 0xb3, 0xbd, 0x6f,
> +	0xfe, 0x17, 0x84, 0xf3, 0x1b, 0xef, 0x12, 0x3b, 0x00, 0x00,
> +};

But I definitely object against such a binary, i. e. unreadable copy
of some license which nobody can check, and which quickly gets out of
sync with the COPYING file included with the source code.

If we add such a command, I insist  that  the  included  (compressed)
licenzse  text  must  be  generated on the fly from the COPYING file,
i. e. I will reject all attempts that cause two (probably  different)
copies of the license text included with U-Boot.

Um... while we are at it - maybe we should  clean  up  /  update  the
license headers a bit...

Um... thinking more about this I guess we should create a "ToDo" page
in the U-Boot wiki listing things that need to be done - some of them
are pure janitor work and could be picked up by volunteers even  with
limited experience with U-Boot but with free resources?

Best regards,

Wolfgang Denk

-- 
DENX Software Engineering GmbH,     MD: Wolfgang Denk & Detlev Zundel
HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany
Phone: (+49)-8142-66989-10 Fax: (+49)-8142-66989-80 Email: wd at denx.de
Anarchy may not be the best form of government, but it's better  than
no government at all.




More information about the U-Boot mailing list