SlideShare a Scribd company logo
Protecode Inc. 2014
Where’s the License?!?
June 18th 2014
1
Protecode Inc. 2014
Agenda
 Why Licensing Matters
 What defines Free and Open Source Software
 Where to look
 What to do with licenses found
 Tools and Resources
 Q & A
2
Normand Glaude,
COO, Protecode
nglaude@protecode.com
Disclaimer: I am not a lawyer. The material presented in this webinar in for informational
purposes only and not for the purpose of providing legal advice.
Protecode Inc. 2014
Open Source Software
 The good: enables rapid software development
– Easy access to code, hundreds of thousands of projects
– Faster, more functional
– Enables new business models
 The challenge: Uncertain ownership structure
– Intellectual property - copyright, license
– Requires due diligence
3
Protecode Inc. 2014
Why Licensing Matters
 Copyright Laws are (mostly) Universal
– Governed by the WTO, 168 states parties to the
Berne Convention
• Copyright is automatic, whether registered or not
 Open Source Licenses
– Copyright owner’s way of giving right to use
– Most open source licenses have obligations
– May or may not suit your business model
4
Protecode Inc. 2014
FOSS, as in Free Software?
Free Software, according to the Free Software Foundation:
“Free software” means software that respects users' freedom and community.
Roughly, it means that the users have the freedom to run, copy, distribute,
study, change and improve the software. Thus, “free software” is a matter of
liberty, not price. To understand the concept, you should think of “free” as in
“free speech,” not as in “free beer”.
Source: http://www.gnu.org/philosophy/free-sw.html
“… Open Source misses the point of Free Software.”
Source: http://www.gnu.org/philosophy/open-source-misses-the-point.html
5
Protecode Inc. 2014
FOSS, as in Open Source Software?
The Open Source Definition, according to the Open Source
Initiative:
1. Free Redistribution
2. Source Code
3. Derived Works
4. Integrity of The Author's Source Code
5. No Discrimination Against Persons or Groups
6. No Discrimination Against Fields of Endeavor
7. Distribution of License
8. License Must Not Be Specific to a Product
9. License Must Not Restrict Other Software
10. License Must Be Technology-Neutral
Source: http://www.gnu.org/philosophy/open-source-misses-the-point.html
6
Protecode Inc. 2014
Where to find licensing information
 Everywhere!
– Any and every file in the package
• Source code, header files, license files, readme, archives…
– Even outside the package
• Website, forums
 Information to consider
– Full License Text
– References to licenses
– Documentation that clarifies licensing
– Location where references/text was found
– Documentation external to package
7
Protecode Inc. 2014
File License
 Reference to license information
– Typically found in the header section of the file
– Generally applies to the whole file (sometimes to code snippet)
– Impractical to include complete license text
8
Protecode Inc. 2014
License and Copyright Use
9
Source: Protecode GIPSTM Database
Protecode Inc. 2014
Full License Text
 Required by all licenses
– Web sites and links change over time
– A package is transferred as a unit == does not change
 Contains
– Permissions, conditions, obligations, disclaimers, exceptions,
etc.
 Location Matters!
– Where did you find the license file?
• At the root of the package?
• In a sub-folder?
• In a documentation folder?
– What is the scope of the license?
10
Protecode Inc. 2014
Full Text License Example
11
Protecode Inc. 2014
License Notices
 Documentation about licenses
– Often found at or near the root of a package
– Contain statements and clarification about licenses
• Are they it conjunctive (AND) or disjunctive (OR)
• Are 3rd party components included or packaged separately
– Understand structure of package
 Often depends on hosting forge and language
– Examples:
• Github  license.md, readme.md
• Ruby  packaged as Gem files with embedded license tags
 Internal and External References
12
Protecode Inc. 2014
License Notice Example
13
Protecode Inc. 2014
Project Types
 Simple
– Homogenous licensing
– Original content, no 3rd party included in packages
Example: Apache HTTPClient
 Composite
– Mixed or homogenous licensing
– Some original content, some 3rd party
Example: Vaadin
 Distributions
– Mostly mixed licensing
– Mostly repackaged 3rd party
– Generally well structured, many packages
Example: 4MLinux
14
Protecode Inc. 2014
So, which license applies?
 Dual and multi-licensing
– Pick one
 Relicensing vs. sublicensing
– Pick
 Compatibility of licenses
– Incompatibilities mostly with copyleft licenses
– GPL incompatibilities well documented
 Files with no copyright
– Who’s creation?
 Ask for clarification!
15
Protecode Inc. 2014
Tooling
 Free Tools
– Perform a superficial scan of the source code
• Fossology (http://www.fossology.org)
• SPDX (http://spdx.org)
• Windriver (http://spdx.windriver.com)
• Ninka (http://ninka.turingmachine.org)
 Commercial tools
– Perform a deep scan of the source code,
archives and binaries
• Use a reference database
• Identify full file content AND code snippet
• Find project information,
– source repositories, security vulnerabilities, etc.
– Perform local scan of the source code
• Identify attributes of proprietary software, not found in reference DB
16
Protecode Inc. 2014
Automated Software Scanning
Automated Scan (Protecode Enterprise AnalyzerTM)
• Target files: source code, binaries, archives
• Information files
– README, COPYING, LICENCE.txt, etc.
• Two-step scan:
1. Local scrubbing of software files
2. Similarity with public-domain OSS
• Fast: ~ 4k files (100 – 200 Mbytes)/hour
Raw machine output
• OSS projects, packages, versions,
licenses, copyrights, vulnerabilities,
encryption content, etc.
• Modified/unmodified software
• Proprietary, unknowns, conflicting licenses, etc.
17
Protecode Inc. 2014
Typical Licensing Issues
Uncovered in Open Source
 OSS content with ambiguous / no license terms
– Software with copyrights but no licenses
– Software with authors but no copyrights / licenses
– Software with no pedigree information
– Software with conflicting license information
– Public domain software with proprietary licenses
 Licenses  business model mismatch
– i.e. modified restrictive/copyleft licensed content in
closed source commercial software
– Cloud deployments and newer license models
– Warranties and support models
– Attribution obligation
18
Protecode Inc. 2014
Open Source License Resources
19
Software Freedom and Intellectual Property Law
by Lawrence Rosen
• http://www.rosenlaw.com/oslbook.htm
Open Source Initiative
• http://opensource.org/licenses
Free Software Foundation
• https://www.fsf.org/
SPDX: Software Package Data Exchange®
• http://spdx.org
Fossology
• http://www.fossology.org/
Contact Us:
nglaude@protecode.com
http://protecode.com
Please type your questions into
the chat box to the right.
Protecode Inc. 2014 20
info@protecode.com
www.protecode.com

More Related Content

Similar to Where’s the license?

Open-Source Software Panel - IP Track
Open-Source Software Panel - IP TrackOpen-Source Software Panel - IP Track
Open-Source Software Panel - IP Track
Aaron G. Sauers, CLP
 
Best practices for simplifying software audits
Best practices for simplifying software auditsBest practices for simplifying software audits
Best practices for simplifying software audits
Tiberius Forrester
 
Optimizing The Cost Of Open Source Software Management
Optimizing The Cost Of Open Source Software ManagementOptimizing The Cost Of Open Source Software Management
Optimizing The Cost Of Open Source Software Management
Protecode
 
Software audit strategies: how often is enough?
Software audit strategies: how often is enough? Software audit strategies: how often is enough?
Software audit strategies: how often is enough?
Protecode
 
Managing Open Source Software Supply Chains
Managing Open Source Software Supply ChainsManaging Open Source Software Supply Chains
Managing Open Source Software Supply Chains
nexB Inc.
 
Components license
Components licenseComponents license
Components licensedmgerman
 
Leveraging Open Source Opportunity in the Public Sector Without the Risk
Leveraging Open Source Opportunity in the Public Sector Without the RiskLeveraging Open Source Opportunity in the Public Sector Without the Risk
Leveraging Open Source Opportunity in the Public Sector Without the Risk
Protecode
 
Open Source Software: What Are Your Obligations?
Open Source Software: What Are Your Obligations? Open Source Software: What Are Your Obligations?
Open Source Software: What Are Your Obligations?
Source Code Control Limited
 
Leveraging Open Source Opportunity in the Public Sector Without the Risk
Leveraging Open Source Opportunity in the Public Sector Without the RiskLeveraging Open Source Opportunity in the Public Sector Without the Risk
Leveraging Open Source Opportunity in the Public Sector Without the Risk
Source Code Control Limited
 
Ubucon 2013, licensing and packaging OSS
Ubucon 2013, licensing and packaging OSSUbucon 2013, licensing and packaging OSS
Ubucon 2013, licensing and packaging OSS
Nuno Brito
 
Open Source: What’s this all about?
Open Source: What’s this all about?Open Source: What’s this all about?
Open Source: What’s this all about?
Brad Montgomery
 
Rightsizing Open Source Software Identification
Rightsizing Open Source Software IdentificationRightsizing Open Source Software Identification
Rightsizing Open Source Software Identification
nexB Inc.
 
FOSSology and OSS-Tools for License Compliance and Automation
FOSSology and OSS-Tools for License Compliance and AutomationFOSSology and OSS-Tools for License Compliance and Automation
FOSSology and OSS-Tools for License Compliance and Automation
Gaurav Mishra
 
OpenChain Webinar: AboutCode and Beyond - End-to-End SCA
OpenChain Webinar: AboutCode and Beyond - End-to-End SCAOpenChain Webinar: AboutCode and Beyond - End-to-End SCA
OpenChain Webinar: AboutCode and Beyond - End-to-End SCA
Shane Coughlan
 
QL-1FCJtCuf
QL-1FCJtCufQL-1FCJtCuf
QL-1FCJtCuf
Robert Ridolfi
 
“State of the Tooling” in Open Source Automation
“State of the Tooling” in Open Source Automation“State of the Tooling” in Open Source Automation
“State of the Tooling” in Open Source Automation
Shane Coughlan
 
Open Source
Open SourceOpen Source
Open SourceJohn Gs
 
Open Source and Patent Rights: Collaboration with Consequences
Open Source and Patent Rights: Collaboration with ConsequencesOpen Source and Patent Rights: Collaboration with Consequences
Open Source and Patent Rights: Collaboration with Consequences
Aurora Consulting
 
Streamline Open Source Compliance with Package Pre-Approval
Streamline Open Source Compliance with Package Pre-ApprovalStreamline Open Source Compliance with Package Pre-Approval
Streamline Open Source Compliance with Package Pre-Approval
Protecode
 
Managing Software Inventories & Automating Open Source Software Compliance
Managing Software Inventories & Automating Open Source Software ComplianceManaging Software Inventories & Automating Open Source Software Compliance
Managing Software Inventories & Automating Open Source Software Compliance
nexB Inc.
 

Similar to Where’s the license? (20)

Open-Source Software Panel - IP Track
Open-Source Software Panel - IP TrackOpen-Source Software Panel - IP Track
Open-Source Software Panel - IP Track
 
Best practices for simplifying software audits
Best practices for simplifying software auditsBest practices for simplifying software audits
Best practices for simplifying software audits
 
Optimizing The Cost Of Open Source Software Management
Optimizing The Cost Of Open Source Software ManagementOptimizing The Cost Of Open Source Software Management
Optimizing The Cost Of Open Source Software Management
 
Software audit strategies: how often is enough?
Software audit strategies: how often is enough? Software audit strategies: how often is enough?
Software audit strategies: how often is enough?
 
Managing Open Source Software Supply Chains
Managing Open Source Software Supply ChainsManaging Open Source Software Supply Chains
Managing Open Source Software Supply Chains
 
Components license
Components licenseComponents license
Components license
 
Leveraging Open Source Opportunity in the Public Sector Without the Risk
Leveraging Open Source Opportunity in the Public Sector Without the RiskLeveraging Open Source Opportunity in the Public Sector Without the Risk
Leveraging Open Source Opportunity in the Public Sector Without the Risk
 
Open Source Software: What Are Your Obligations?
Open Source Software: What Are Your Obligations? Open Source Software: What Are Your Obligations?
Open Source Software: What Are Your Obligations?
 
Leveraging Open Source Opportunity in the Public Sector Without the Risk
Leveraging Open Source Opportunity in the Public Sector Without the RiskLeveraging Open Source Opportunity in the Public Sector Without the Risk
Leveraging Open Source Opportunity in the Public Sector Without the Risk
 
Ubucon 2013, licensing and packaging OSS
Ubucon 2013, licensing and packaging OSSUbucon 2013, licensing and packaging OSS
Ubucon 2013, licensing and packaging OSS
 
Open Source: What’s this all about?
Open Source: What’s this all about?Open Source: What’s this all about?
Open Source: What’s this all about?
 
Rightsizing Open Source Software Identification
Rightsizing Open Source Software IdentificationRightsizing Open Source Software Identification
Rightsizing Open Source Software Identification
 
FOSSology and OSS-Tools for License Compliance and Automation
FOSSology and OSS-Tools for License Compliance and AutomationFOSSology and OSS-Tools for License Compliance and Automation
FOSSology and OSS-Tools for License Compliance and Automation
 
OpenChain Webinar: AboutCode and Beyond - End-to-End SCA
OpenChain Webinar: AboutCode and Beyond - End-to-End SCAOpenChain Webinar: AboutCode and Beyond - End-to-End SCA
OpenChain Webinar: AboutCode and Beyond - End-to-End SCA
 
QL-1FCJtCuf
QL-1FCJtCufQL-1FCJtCuf
QL-1FCJtCuf
 
“State of the Tooling” in Open Source Automation
“State of the Tooling” in Open Source Automation“State of the Tooling” in Open Source Automation
“State of the Tooling” in Open Source Automation
 
Open Source
Open SourceOpen Source
Open Source
 
Open Source and Patent Rights: Collaboration with Consequences
Open Source and Patent Rights: Collaboration with ConsequencesOpen Source and Patent Rights: Collaboration with Consequences
Open Source and Patent Rights: Collaboration with Consequences
 
Streamline Open Source Compliance with Package Pre-Approval
Streamline Open Source Compliance with Package Pre-ApprovalStreamline Open Source Compliance with Package Pre-Approval
Streamline Open Source Compliance with Package Pre-Approval
 
Managing Software Inventories & Automating Open Source Software Compliance
Managing Software Inventories & Automating Open Source Software ComplianceManaging Software Inventories & Automating Open Source Software Compliance
Managing Software Inventories & Automating Open Source Software Compliance
 

Recently uploaded

AI Pilot Review: The World’s First Virtual Assistant Marketing Suite
AI Pilot Review: The World’s First Virtual Assistant Marketing SuiteAI Pilot Review: The World’s First Virtual Assistant Marketing Suite
AI Pilot Review: The World’s First Virtual Assistant Marketing Suite
Google
 
Beyond Event Sourcing - Embracing CRUD for Wix Platform - Java.IL
Beyond Event Sourcing - Embracing CRUD for Wix Platform - Java.ILBeyond Event Sourcing - Embracing CRUD for Wix Platform - Java.IL
Beyond Event Sourcing - Embracing CRUD for Wix Platform - Java.IL
Natan Silnitsky
 
TROUBLESHOOTING 9 TYPES OF OUTOFMEMORYERROR
TROUBLESHOOTING 9 TYPES OF OUTOFMEMORYERRORTROUBLESHOOTING 9 TYPES OF OUTOFMEMORYERROR
TROUBLESHOOTING 9 TYPES OF OUTOFMEMORYERROR
Tier1 app
 
Custom Healthcare Software for Managing Chronic Conditions and Remote Patient...
Custom Healthcare Software for Managing Chronic Conditions and Remote Patient...Custom Healthcare Software for Managing Chronic Conditions and Remote Patient...
Custom Healthcare Software for Managing Chronic Conditions and Remote Patient...
Mind IT Systems
 
Cyaniclab : Software Development Agency Portfolio.pdf
Cyaniclab : Software Development Agency Portfolio.pdfCyaniclab : Software Development Agency Portfolio.pdf
Cyaniclab : Software Development Agency Portfolio.pdf
Cyanic lab
 
Innovating Inference - Remote Triggering of Large Language Models on HPC Clus...
Innovating Inference - Remote Triggering of Large Language Models on HPC Clus...Innovating Inference - Remote Triggering of Large Language Models on HPC Clus...
Innovating Inference - Remote Triggering of Large Language Models on HPC Clus...
Globus
 
Quarkus Hidden and Forbidden Extensions
Quarkus Hidden and Forbidden ExtensionsQuarkus Hidden and Forbidden Extensions
Quarkus Hidden and Forbidden Extensions
Max Andersen
 
Into the Box 2024 - Keynote Day 2 Slides.pdf
Into the Box 2024 - Keynote Day 2 Slides.pdfInto the Box 2024 - Keynote Day 2 Slides.pdf
Into the Box 2024 - Keynote Day 2 Slides.pdf
Ortus Solutions, Corp
 
Top Features to Include in Your Winzo Clone App for Business Growth (4).pptx
Top Features to Include in Your Winzo Clone App for Business Growth (4).pptxTop Features to Include in Your Winzo Clone App for Business Growth (4).pptx
Top Features to Include in Your Winzo Clone App for Business Growth (4).pptx
rickgrimesss22
 
Accelerate Enterprise Software Engineering with Platformless
Accelerate Enterprise Software Engineering with PlatformlessAccelerate Enterprise Software Engineering with Platformless
Accelerate Enterprise Software Engineering with Platformless
WSO2
 
Orion Context Broker introduction 20240604
Orion Context Broker introduction 20240604Orion Context Broker introduction 20240604
Orion Context Broker introduction 20240604
Fermin Galan
 
How Recreation Management Software Can Streamline Your Operations.pptx
How Recreation Management Software Can Streamline Your Operations.pptxHow Recreation Management Software Can Streamline Your Operations.pptx
How Recreation Management Software Can Streamline Your Operations.pptx
wottaspaceseo
 
Providing Globus Services to Users of JASMIN for Environmental Data Analysis
Providing Globus Services to Users of JASMIN for Environmental Data AnalysisProviding Globus Services to Users of JASMIN for Environmental Data Analysis
Providing Globus Services to Users of JASMIN for Environmental Data Analysis
Globus
 
Paketo Buildpacks : la meilleure façon de construire des images OCI? DevopsDa...
Paketo Buildpacks : la meilleure façon de construire des images OCI? DevopsDa...Paketo Buildpacks : la meilleure façon de construire des images OCI? DevopsDa...
Paketo Buildpacks : la meilleure façon de construire des images OCI? DevopsDa...
Anthony Dahanne
 
Webinar: Salesforce Document Management 2.0 - Smarter, Faster, Better
Webinar: Salesforce Document Management 2.0 - Smarter, Faster, BetterWebinar: Salesforce Document Management 2.0 - Smarter, Faster, Better
Webinar: Salesforce Document Management 2.0 - Smarter, Faster, Better
XfilesPro
 
First Steps with Globus Compute Multi-User Endpoints
First Steps with Globus Compute Multi-User EndpointsFirst Steps with Globus Compute Multi-User Endpoints
First Steps with Globus Compute Multi-User Endpoints
Globus
 
A Sighting of filterA in Typelevel Rite of Passage
A Sighting of filterA in Typelevel Rite of PassageA Sighting of filterA in Typelevel Rite of Passage
A Sighting of filterA in Typelevel Rite of Passage
Philip Schwarz
 
Enterprise Resource Planning System in Telangana
Enterprise Resource Planning System in TelanganaEnterprise Resource Planning System in Telangana
Enterprise Resource Planning System in Telangana
NYGGS Automation Suite
 
Globus Compute wth IRI Workflows - GlobusWorld 2024
Globus Compute wth IRI Workflows - GlobusWorld 2024Globus Compute wth IRI Workflows - GlobusWorld 2024
Globus Compute wth IRI Workflows - GlobusWorld 2024
Globus
 
May Marketo Masterclass, London MUG May 22 2024.pdf
May Marketo Masterclass, London MUG May 22 2024.pdfMay Marketo Masterclass, London MUG May 22 2024.pdf
May Marketo Masterclass, London MUG May 22 2024.pdf
Adele Miller
 

Recently uploaded (20)

AI Pilot Review: The World’s First Virtual Assistant Marketing Suite
AI Pilot Review: The World’s First Virtual Assistant Marketing SuiteAI Pilot Review: The World’s First Virtual Assistant Marketing Suite
AI Pilot Review: The World’s First Virtual Assistant Marketing Suite
 
Beyond Event Sourcing - Embracing CRUD for Wix Platform - Java.IL
Beyond Event Sourcing - Embracing CRUD for Wix Platform - Java.ILBeyond Event Sourcing - Embracing CRUD for Wix Platform - Java.IL
Beyond Event Sourcing - Embracing CRUD for Wix Platform - Java.IL
 
TROUBLESHOOTING 9 TYPES OF OUTOFMEMORYERROR
TROUBLESHOOTING 9 TYPES OF OUTOFMEMORYERRORTROUBLESHOOTING 9 TYPES OF OUTOFMEMORYERROR
TROUBLESHOOTING 9 TYPES OF OUTOFMEMORYERROR
 
Custom Healthcare Software for Managing Chronic Conditions and Remote Patient...
Custom Healthcare Software for Managing Chronic Conditions and Remote Patient...Custom Healthcare Software for Managing Chronic Conditions and Remote Patient...
Custom Healthcare Software for Managing Chronic Conditions and Remote Patient...
 
Cyaniclab : Software Development Agency Portfolio.pdf
Cyaniclab : Software Development Agency Portfolio.pdfCyaniclab : Software Development Agency Portfolio.pdf
Cyaniclab : Software Development Agency Portfolio.pdf
 
Innovating Inference - Remote Triggering of Large Language Models on HPC Clus...
Innovating Inference - Remote Triggering of Large Language Models on HPC Clus...Innovating Inference - Remote Triggering of Large Language Models on HPC Clus...
Innovating Inference - Remote Triggering of Large Language Models on HPC Clus...
 
Quarkus Hidden and Forbidden Extensions
Quarkus Hidden and Forbidden ExtensionsQuarkus Hidden and Forbidden Extensions
Quarkus Hidden and Forbidden Extensions
 
Into the Box 2024 - Keynote Day 2 Slides.pdf
Into the Box 2024 - Keynote Day 2 Slides.pdfInto the Box 2024 - Keynote Day 2 Slides.pdf
Into the Box 2024 - Keynote Day 2 Slides.pdf
 
Top Features to Include in Your Winzo Clone App for Business Growth (4).pptx
Top Features to Include in Your Winzo Clone App for Business Growth (4).pptxTop Features to Include in Your Winzo Clone App for Business Growth (4).pptx
Top Features to Include in Your Winzo Clone App for Business Growth (4).pptx
 
Accelerate Enterprise Software Engineering with Platformless
Accelerate Enterprise Software Engineering with PlatformlessAccelerate Enterprise Software Engineering with Platformless
Accelerate Enterprise Software Engineering with Platformless
 
Orion Context Broker introduction 20240604
Orion Context Broker introduction 20240604Orion Context Broker introduction 20240604
Orion Context Broker introduction 20240604
 
How Recreation Management Software Can Streamline Your Operations.pptx
How Recreation Management Software Can Streamline Your Operations.pptxHow Recreation Management Software Can Streamline Your Operations.pptx
How Recreation Management Software Can Streamline Your Operations.pptx
 
Providing Globus Services to Users of JASMIN for Environmental Data Analysis
Providing Globus Services to Users of JASMIN for Environmental Data AnalysisProviding Globus Services to Users of JASMIN for Environmental Data Analysis
Providing Globus Services to Users of JASMIN for Environmental Data Analysis
 
Paketo Buildpacks : la meilleure façon de construire des images OCI? DevopsDa...
Paketo Buildpacks : la meilleure façon de construire des images OCI? DevopsDa...Paketo Buildpacks : la meilleure façon de construire des images OCI? DevopsDa...
Paketo Buildpacks : la meilleure façon de construire des images OCI? DevopsDa...
 
Webinar: Salesforce Document Management 2.0 - Smarter, Faster, Better
Webinar: Salesforce Document Management 2.0 - Smarter, Faster, BetterWebinar: Salesforce Document Management 2.0 - Smarter, Faster, Better
Webinar: Salesforce Document Management 2.0 - Smarter, Faster, Better
 
First Steps with Globus Compute Multi-User Endpoints
First Steps with Globus Compute Multi-User EndpointsFirst Steps with Globus Compute Multi-User Endpoints
First Steps with Globus Compute Multi-User Endpoints
 
A Sighting of filterA in Typelevel Rite of Passage
A Sighting of filterA in Typelevel Rite of PassageA Sighting of filterA in Typelevel Rite of Passage
A Sighting of filterA in Typelevel Rite of Passage
 
Enterprise Resource Planning System in Telangana
Enterprise Resource Planning System in TelanganaEnterprise Resource Planning System in Telangana
Enterprise Resource Planning System in Telangana
 
Globus Compute wth IRI Workflows - GlobusWorld 2024
Globus Compute wth IRI Workflows - GlobusWorld 2024Globus Compute wth IRI Workflows - GlobusWorld 2024
Globus Compute wth IRI Workflows - GlobusWorld 2024
 
May Marketo Masterclass, London MUG May 22 2024.pdf
May Marketo Masterclass, London MUG May 22 2024.pdfMay Marketo Masterclass, London MUG May 22 2024.pdf
May Marketo Masterclass, London MUG May 22 2024.pdf
 

Where’s the license?

  • 1. Protecode Inc. 2014 Where’s the License?!? June 18th 2014 1
  • 2. Protecode Inc. 2014 Agenda  Why Licensing Matters  What defines Free and Open Source Software  Where to look  What to do with licenses found  Tools and Resources  Q & A 2 Normand Glaude, COO, Protecode nglaude@protecode.com Disclaimer: I am not a lawyer. The material presented in this webinar in for informational purposes only and not for the purpose of providing legal advice.
  • 3. Protecode Inc. 2014 Open Source Software  The good: enables rapid software development – Easy access to code, hundreds of thousands of projects – Faster, more functional – Enables new business models  The challenge: Uncertain ownership structure – Intellectual property - copyright, license – Requires due diligence 3
  • 4. Protecode Inc. 2014 Why Licensing Matters  Copyright Laws are (mostly) Universal – Governed by the WTO, 168 states parties to the Berne Convention • Copyright is automatic, whether registered or not  Open Source Licenses – Copyright owner’s way of giving right to use – Most open source licenses have obligations – May or may not suit your business model 4
  • 5. Protecode Inc. 2014 FOSS, as in Free Software? Free Software, according to the Free Software Foundation: “Free software” means software that respects users' freedom and community. Roughly, it means that the users have the freedom to run, copy, distribute, study, change and improve the software. Thus, “free software” is a matter of liberty, not price. To understand the concept, you should think of “free” as in “free speech,” not as in “free beer”. Source: http://www.gnu.org/philosophy/free-sw.html “… Open Source misses the point of Free Software.” Source: http://www.gnu.org/philosophy/open-source-misses-the-point.html 5
  • 6. Protecode Inc. 2014 FOSS, as in Open Source Software? The Open Source Definition, according to the Open Source Initiative: 1. Free Redistribution 2. Source Code 3. Derived Works 4. Integrity of The Author's Source Code 5. No Discrimination Against Persons or Groups 6. No Discrimination Against Fields of Endeavor 7. Distribution of License 8. License Must Not Be Specific to a Product 9. License Must Not Restrict Other Software 10. License Must Be Technology-Neutral Source: http://www.gnu.org/philosophy/open-source-misses-the-point.html 6
  • 7. Protecode Inc. 2014 Where to find licensing information  Everywhere! – Any and every file in the package • Source code, header files, license files, readme, archives… – Even outside the package • Website, forums  Information to consider – Full License Text – References to licenses – Documentation that clarifies licensing – Location where references/text was found – Documentation external to package 7
  • 8. Protecode Inc. 2014 File License  Reference to license information – Typically found in the header section of the file – Generally applies to the whole file (sometimes to code snippet) – Impractical to include complete license text 8
  • 9. Protecode Inc. 2014 License and Copyright Use 9 Source: Protecode GIPSTM Database
  • 10. Protecode Inc. 2014 Full License Text  Required by all licenses – Web sites and links change over time – A package is transferred as a unit == does not change  Contains – Permissions, conditions, obligations, disclaimers, exceptions, etc.  Location Matters! – Where did you find the license file? • At the root of the package? • In a sub-folder? • In a documentation folder? – What is the scope of the license? 10
  • 11. Protecode Inc. 2014 Full Text License Example 11
  • 12. Protecode Inc. 2014 License Notices  Documentation about licenses – Often found at or near the root of a package – Contain statements and clarification about licenses • Are they it conjunctive (AND) or disjunctive (OR) • Are 3rd party components included or packaged separately – Understand structure of package  Often depends on hosting forge and language – Examples: • Github  license.md, readme.md • Ruby  packaged as Gem files with embedded license tags  Internal and External References 12
  • 13. Protecode Inc. 2014 License Notice Example 13
  • 14. Protecode Inc. 2014 Project Types  Simple – Homogenous licensing – Original content, no 3rd party included in packages Example: Apache HTTPClient  Composite – Mixed or homogenous licensing – Some original content, some 3rd party Example: Vaadin  Distributions – Mostly mixed licensing – Mostly repackaged 3rd party – Generally well structured, many packages Example: 4MLinux 14
  • 15. Protecode Inc. 2014 So, which license applies?  Dual and multi-licensing – Pick one  Relicensing vs. sublicensing – Pick  Compatibility of licenses – Incompatibilities mostly with copyleft licenses – GPL incompatibilities well documented  Files with no copyright – Who’s creation?  Ask for clarification! 15
  • 16. Protecode Inc. 2014 Tooling  Free Tools – Perform a superficial scan of the source code • Fossology (http://www.fossology.org) • SPDX (http://spdx.org) • Windriver (http://spdx.windriver.com) • Ninka (http://ninka.turingmachine.org)  Commercial tools – Perform a deep scan of the source code, archives and binaries • Use a reference database • Identify full file content AND code snippet • Find project information, – source repositories, security vulnerabilities, etc. – Perform local scan of the source code • Identify attributes of proprietary software, not found in reference DB 16
  • 17. Protecode Inc. 2014 Automated Software Scanning Automated Scan (Protecode Enterprise AnalyzerTM) • Target files: source code, binaries, archives • Information files – README, COPYING, LICENCE.txt, etc. • Two-step scan: 1. Local scrubbing of software files 2. Similarity with public-domain OSS • Fast: ~ 4k files (100 – 200 Mbytes)/hour Raw machine output • OSS projects, packages, versions, licenses, copyrights, vulnerabilities, encryption content, etc. • Modified/unmodified software • Proprietary, unknowns, conflicting licenses, etc. 17
  • 18. Protecode Inc. 2014 Typical Licensing Issues Uncovered in Open Source  OSS content with ambiguous / no license terms – Software with copyrights but no licenses – Software with authors but no copyrights / licenses – Software with no pedigree information – Software with conflicting license information – Public domain software with proprietary licenses  Licenses  business model mismatch – i.e. modified restrictive/copyleft licensed content in closed source commercial software – Cloud deployments and newer license models – Warranties and support models – Attribution obligation 18
  • 19. Protecode Inc. 2014 Open Source License Resources 19 Software Freedom and Intellectual Property Law by Lawrence Rosen • http://www.rosenlaw.com/oslbook.htm Open Source Initiative • http://opensource.org/licenses Free Software Foundation • https://www.fsf.org/ SPDX: Software Package Data Exchange® • http://spdx.org Fossology • http://www.fossology.org/ Contact Us: nglaude@protecode.com http://protecode.com Please type your questions into the chat box to the right.
  • 20. Protecode Inc. 2014 20 info@protecode.com www.protecode.com