ESP8266TrueRandom icon indicating copy to clipboard operation
ESP8266TrueRandom copied to clipboard

Do i have to keep my iot device's source code open if i am using this library ?

Open arihantdaga opened this issue 5 years ago • 5 comments

Hello @marvinroger I am not expert at how liecence works. But in github it shows that i must keep source code of the software open if i use this library. Does that also mean that if i make an IOT Device and in that device's firmware if i am using this library i have to keep the source code open. ??

arihantdaga avatar Sep 20 '18 14:09 arihantdaga

Pretty much, yes. You can read this for a more detailed explanation : https://softwareengineering.stackexchange.com/a/86158

marvinroger avatar Sep 21 '18 13:09 marvinroger

This is not an issue, but just a simple question. Can you tell me if its safe to use this function for random? Does it have any vulnerabilities like Arduino random()?

chaymankala avatar Sep 25 '18 07:09 chaymankala

Yes, RANDOM_REG32 is an hardware random number generator, so it should be fine.

marvinroger avatar Sep 25 '18 08:09 marvinroger

Thank you so much for the help! :)

chaymankala avatar Sep 25 '18 08:09 chaymankala

@marvinroger No, that's not really true according to the gnu faq at http://www.gnu.org/licenses/gpl-faq.en.html#LGPLStaticVsDynamic

It is enough to just supply obj files to allow for re-linking. No source is necessary. But of course in the case of a ESP8266/Arduino application that is not easy to do - nor would it be easy to use either, but it would fulfill the absolute requirements.

Does the LGPL have different requirements for statically vs dynamically linked modules with a covered work? (#LGPLStaticVsDynamic) For the purpose of complying with the LGPL (any extant version: v2, v2.1 or v3):

(1) If you statically link against an LGPL'd library, you must also provide your application in an object (not necessarily source) format, so that a user has the opportunity to modify the library and relink the application.

And even the license-blurb explanation here on GitHub says the following:

However, a larger work using the licensed work through interfaces provided by the licensed work may be distributed under different terms and without source code for the larger work.

mengstr avatar Nov 15 '18 15:11 mengstr