SlideShare uma empresa Scribd logo
1 de 31
Baixar para ler offline
Intellectual Property of F/OSS
          Case Study: iText
 a Free/Open Source Java-PDF library
           Bruno Lowagie
F/OSS and IP

• iText was started by one person in 1998
• Another developer joined in 2000
• From then on the product grows organically:
  It’s a joined effort of many different people
• But who is the owner of the code?
  Who owns the Intellectual Property?
Your product

               White zone




                        Gray zone

                               Black zone
The White Zone

             White zone




                      Gray zone

                             Black zone
The White Zone

 • You have written the code yourself, but
   – What about your employer? Does your
     employer own (part of) the code? Do you have
     a formal agreement with your employer with
     respect to F/OSS?
   – Where did you get your inspiration? IBM
     developers are forbidden to look at any code
     that is not formally approved by IBM’s legal
     team. Good practice or burden?
Employers and IP
The Gray Zone

                White zone




                         Gray zone

                                Black zone
The Gray Zone

• The code was contributed, but:
  – Did the contributor agree with the license?
  – Did the contributor’s employer agree?
  – Where did the contributor get his inspiration?
• The code is taken from another project, but:
  – Are the licenses compatible?
  – Do you respect the other project’s license?
  – Where did the other project get its code from?
The Gray Zone

• Contributor License Agreements
  – The Apache Foundation demands contributors
    and their employers to sign a CLA
  – SUN demands contributors to sign an SCA from
    the moment the contributions contain more
    than 20 lines of code
• Check License Compatibility
  – Keep a detailed inventory of all F/OSS Projects
    (subset / derivative work)
The Black Zone

             White zone




                      Gray zone

                             Black zone
The Black Zone

 • Unfortunately it may happen that you
   weren’t allowed to use some specific code
   that is part of your project.
 • Solution:
   – either you ask (and get!) permission,
   – or you remove the code.
In practice

•   I’m a developer
•   I started writing a PDF library in 1998
•   It was first published online in 1999
•   It was completely refactored in 2000
•   Many people contributed, and…
•   IANAL!!! ( = I Am Not A Lawyer)
•   2006: who owns the IP of iText?
IP Project

• July 2006: Eclipse Simultaneous Release
  – “Callisto”; tested and approved by IBM
• Eclipse/BIRT (Actuate) is part of this release
  – Project led by Actuate
• iText is used in Eclipse/BIRT
  – License MPL: not acceptable for IBM
  – Research Agreement between Actuate and
    Ghent University with as deliverable: IP Review
Turning Gray and Black
      into White

                   White zone




                           Gray zone
                                       Black zone
Example 1

• State machine to parse XML quickly:
• Source taken from/inspired by:
  – http://www.javaworld.com/javaworld/javatips/
    jw-javatip128.html
• Read the fine print!
  – All contents of JavaWorld, including text, programs,
    applets, source code, and images are copyrighted and
    owned by IDG or the copyright holder specified, all
    rights reserved. No material may be reproduced
    electronically or in print without written permission
JavaWorld article
Copyright Notice
Solution 1

• Write JavaWorld and author, get permission!
• Note: there were many other places where
  licenses were incomplete or missing!
• It must become your second nature to ask
  for permission and to document! document!
  document!
Example 2

• Names and variables referring to RC4
  – RC4 was initially a trade secret, but in September 1994 a
    description of it was anonymously posted to the
    Cypherpunks mailing list.
  – It was soon posted on the sci.crypt newsgroup, and
    from there to many sites on the Internet. Because the
    algorithm is known, it is no longer a trade secret.
  – The name quot;RC4quot; is trademarked, however. The current
    status seems to be that quot;unofficialquot; implementations
    are legal, but cannot use the RC4 name.
Solution 2

• RC4 is often referred to as quot;ARCFOURquot; or
  quot;ARC4quot; (meaning Alleged RC4, because RSA
  has never officially released the algorithm),
  to avoid possible trademark problems.
• Change all class and variable names:
  for instance change RC4_ENCRYPTION into
  ARCFOUR_ENCRYPTION
Example 3
Code taken from ACME.com:
Class IntHashtable   //   This is 90% based on JavaSoft's java.util.Hashtable.
                     //   Visit the ACME Labs Java page for up-to-date versions
                     //   of this and other fine Java utilities:
                     //   http://www.acme.com/java/


                     JavaSoft is a name used by Sun in the past in
                         their Java activities.
                     Sun indicates use of the class java.util.Hashtable
                         which is subject to unfriendly Sun license
                     It is unlikely that this code is available under a
                         license that permits this use. Without
                         information indicating that Sun approved of
                         this usage the class should not be used.
Solution 3

• use the same class released by Apache
  under the APL in Apache-Commons instead
  of the ACME class.
EPS Functionality in iText
            Taken from an example released by SUN under a
               Sample License.
            The Sample License allowed the use of the code,
Problem 4
               but the source code contained this text:
            /*
             * Copyright 1998 by Sun Microsystems, Inc.,
             * 901 San Antonio Road, Palo Alto, California,
             * 94303, U.S.A. All rights reserved.
             *
             * This software is the confidential and proprietary
             * information of Sun Microsystems, Inc.
             * (quot;Confidential Informationquot;). You shall not
             * disclose such Confidential Information and shall
             * use it only in accordance with the terms of the
             * license agreement you entered into with Sun.
             */
            Solution: after a very long argument about this
              comment section versus the Sample License, EPS
              functionality was dropped.
Fedora Linux and nuclear facilities
            Some code involving TIFFs was taken from the JAI
              library originally released by SUN under a very
Problem 5
              liberal license. However, the license text contains
              the following clause:
            /*
             * You acknowledge that Software is not designed, licensed
             * or intended for use in the design, construction,
             * operation or maintenance of any nuclear facility.
             */


            As long as the word “licensed” isn’t removed, iText
               can’t be distributed with Fedora Linux.
            Solution: direct communication with the core
               developers to solve the problem.
Contributors
Contributions
Who did what?
Third Party Content
Result: 2007

• iText was shipped as part of Eclipse/BIRT with the
  Europa Simultaneous Release in 2007: IBM,
  Actuate and the Eclipse Foundation happy!
• No more doubts about the ownership iText.
  Maintaining a clear overview of the IP and avoiding
  possible IP issues in the future has become a
  ‘second nature’: Bruno happy!

• A valuable experience with a valuable result!
Thank you!
Questions are always welcome

Mais conteúdo relacionado

Mais procurados

EOLE / OWF 12 - Viral licences – myth or reality - patrice-emmanuel schmitz (...
EOLE / OWF 12 - Viral licences – myth or reality - patrice-emmanuel schmitz (...EOLE / OWF 12 - Viral licences – myth or reality - patrice-emmanuel schmitz (...
EOLE / OWF 12 - Viral licences – myth or reality - patrice-emmanuel schmitz (...
Paris Open Source Summit
 
Business and Sustainability Models Around FOSS (1 of 2)
Business and Sustainability Models Around FOSS (1 of 2)Business and Sustainability Models Around FOSS (1 of 2)
Business and Sustainability Models Around FOSS (1 of 2)
Rowan Wilson
 

Mais procurados (19)

Monetizing open-source projects
Monetizing open-source projectsMonetizing open-source projects
Monetizing open-source projects
 
Top Open Source Licenses Explained
Top Open Source Licenses ExplainedTop Open Source Licenses Explained
Top Open Source Licenses Explained
 
Open Source Software Licenses
Open Source Software Licenses Open Source Software Licenses
Open Source Software Licenses
 
Understanding open source licenses
Understanding open source licensesUnderstanding open source licenses
Understanding open source licenses
 
Introduction To Open Source Licensing
Introduction To Open Source LicensingIntroduction To Open Source Licensing
Introduction To Open Source Licensing
 
Open Source SW Business
Open Source SW Business Open Source SW Business
Open Source SW Business
 
01-15 Bay Area OSS Meetup: Free and Open Source Software Licensing Overview
01-15 Bay Area OSS Meetup: Free and Open Source Software Licensing Overview01-15 Bay Area OSS Meetup: Free and Open Source Software Licensing Overview
01-15 Bay Area OSS Meetup: Free and Open Source Software Licensing Overview
 
Corporate Shenanigans
Corporate ShenanigansCorporate Shenanigans
Corporate Shenanigans
 
Digital Signatures: how it's done in PDF
Digital Signatures: how it's done in PDFDigital Signatures: how it's done in PDF
Digital Signatures: how it's done in PDF
 
Open Source Licences
Open Source LicencesOpen Source Licences
Open Source Licences
 
Open Source Your Project (With Jasig)
Open Source Your Project (With Jasig)Open Source Your Project (With Jasig)
Open Source Your Project (With Jasig)
 
EOLE / OWF 12 - Viral licences – myth or reality - patrice-emmanuel schmitz (...
EOLE / OWF 12 - Viral licences – myth or reality - patrice-emmanuel schmitz (...EOLE / OWF 12 - Viral licences – myth or reality - patrice-emmanuel schmitz (...
EOLE / OWF 12 - Viral licences – myth or reality - patrice-emmanuel schmitz (...
 
ZUGFeRD: an overview
ZUGFeRD: an overviewZUGFeRD: an overview
ZUGFeRD: an overview
 
Android and OSGi Can They Work Together - BJ Hargrave & Neil Bartlett
Android and OSGi Can They Work Together - BJ Hargrave & Neil BartlettAndroid and OSGi Can They Work Together - BJ Hargrave & Neil Bartlett
Android and OSGi Can They Work Together - BJ Hargrave & Neil Bartlett
 
Open Source Software - Avoiding Common Pitfalls
Open Source Software - Avoiding Common PitfallsOpen Source Software - Avoiding Common Pitfalls
Open Source Software - Avoiding Common Pitfalls
 
What is open source
What is open sourceWhat is open source
What is open source
 
Don't Screw Up Your Licensing
Don't Screw Up Your LicensingDon't Screw Up Your Licensing
Don't Screw Up Your Licensing
 
PDF is dead. Long live PDF... with Java!
PDF is dead. Long live PDF... with Java!PDF is dead. Long live PDF... with Java!
PDF is dead. Long live PDF... with Java!
 
Business and Sustainability Models Around FOSS (1 of 2)
Business and Sustainability Models Around FOSS (1 of 2)Business and Sustainability Models Around FOSS (1 of 2)
Business and Sustainability Models Around FOSS (1 of 2)
 

Semelhante a iText IP Review

worklight_development_environment
worklight_development_environmentworklight_development_environment
worklight_development_environment
Aravindharamanan S
 
Is Android the New King of Embedded OSes at Embedded World 2014
Is Android the New King of Embedded OSes at Embedded World 2014Is Android the New King of Embedded OSes at Embedded World 2014
Is Android the New King of Embedded OSes at Embedded World 2014
Opersys inc.
 
EclipseCon Europe 2012 Tabris Workshop
EclipseCon Europe 2012 Tabris WorkshopEclipseCon Europe 2012 Tabris Workshop
EclipseCon Europe 2012 Tabris Workshop
Holger Staudacher
 

Semelhante a iText IP Review (20)

FITT Toolbox: Open Source Business Case
FITT Toolbox: Open Source Business CaseFITT Toolbox: Open Source Business Case
FITT Toolbox: Open Source Business Case
 
Startup Legal and IP
Startup Legal and IPStartup Legal and IP
Startup Legal and IP
 
worklight_development_environment
worklight_development_environmentworklight_development_environment
worklight_development_environment
 
Conversation on Open Source - CU Boulder - Feb 2017
Conversation on Open Source - CU Boulder - Feb 2017Conversation on Open Source - CU Boulder - Feb 2017
Conversation on Open Source - CU Boulder - Feb 2017
 
App armor structure
App armor structureApp armor structure
App armor structure
 
Copyright, Open Source and APIs (towards an Interface Commons)
Copyright, Open Source and APIs (towards an Interface Commons)Copyright, Open Source and APIs (towards an Interface Commons)
Copyright, Open Source and APIs (towards an Interface Commons)
 
ITAM UK 2017 Open source alternatives_John Springall
ITAM UK 2017 Open source alternatives_John Springall ITAM UK 2017 Open source alternatives_John Springall
ITAM UK 2017 Open source alternatives_John Springall
 
Eclipse 3.7 : Tips and tricks
Eclipse 3.7 : Tips and tricksEclipse 3.7 : Tips and tricks
Eclipse 3.7 : Tips and tricks
 
Randstad Docker meetup - Serverless
Randstad Docker meetup - ServerlessRandstad Docker meetup - Serverless
Randstad Docker meetup - Serverless
 
Open source software 101: Compliance and risk management
Open source software 101: Compliance and risk managementOpen source software 101: Compliance and risk management
Open source software 101: Compliance and risk management
 
Opensource
OpensourceOpensource
Opensource
 
Multi Stage Docker Build
Multi Stage Docker Build Multi Stage Docker Build
Multi Stage Docker Build
 
Is Android the New King of Embedded OSes at Embedded World 2014
Is Android the New King of Embedded OSes at Embedded World 2014Is Android the New King of Embedded OSes at Embedded World 2014
Is Android the New King of Embedded OSes at Embedded World 2014
 
Open Source Software Licence Compliance: Art or science?
Open Source Software Licence Compliance: Art or science? Open Source Software Licence Compliance: Art or science?
Open Source Software Licence Compliance: Art or science?
 
Introduction to License Compliance and My research (D. German)
Introduction to License Compliance and My research (D. German)Introduction to License Compliance and My research (D. German)
Introduction to License Compliance and My research (D. German)
 
Legal Issues in Developing in a Hybrid Envionment with Open Source Software
Legal Issues in Developing in a Hybrid Envionment with Open Source SoftwareLegal Issues in Developing in a Hybrid Envionment with Open Source Software
Legal Issues in Developing in a Hybrid Envionment with Open Source Software
 
From the Eclipse Foundation to the Symbian Foundation
From the Eclipse Foundation to the Symbian FoundationFrom the Eclipse Foundation to the Symbian Foundation
From the Eclipse Foundation to the Symbian Foundation
 
EclipseCon Europe 2012 Tabris Workshop
EclipseCon Europe 2012 Tabris WorkshopEclipseCon Europe 2012 Tabris Workshop
EclipseCon Europe 2012 Tabris Workshop
 
OpenNTF Webinar 05/07/13: OpenNTF - The IBM Collaboration Solutions App Dev C...
OpenNTF Webinar 05/07/13: OpenNTF - The IBM Collaboration Solutions App Dev C...OpenNTF Webinar 05/07/13: OpenNTF - The IBM Collaboration Solutions App Dev C...
OpenNTF Webinar 05/07/13: OpenNTF - The IBM Collaboration Solutions App Dev C...
 
Java and Serverless - A Match Made In Heaven, Part 1
Java and Serverless - A Match Made In Heaven, Part 1Java and Serverless - A Match Made In Heaven, Part 1
Java and Serverless - A Match Made In Heaven, Part 1
 

Mais de Bruno Lowagie

Mais de Bruno Lowagie (20)

The Dark Magic of Start-Up Valuation
The Dark Magic of Start-Up ValuationThe Dark Magic of Start-Up Valuation
The Dark Magic of Start-Up Valuation
 
Open Source Survival: A Story from the Trenches
Open Source Survival: A Story from the TrenchesOpen Source Survival: A Story from the Trenches
Open Source Survival: A Story from the Trenches
 
Entreprenerd: presenting the book
Entreprenerd: presenting the bookEntreprenerd: presenting the book
Entreprenerd: presenting the book
 
The Secret of your Success
The Secret of your SuccessThe Secret of your Success
The Secret of your Success
 
Blockchain: use cases for the future
Blockchain: use cases for the futureBlockchain: use cases for the future
Blockchain: use cases for the future
 
Blockchain Fundamentals
Blockchain FundamentalsBlockchain Fundamentals
Blockchain Fundamentals
 
Digital Signatures in PDF: how it's done
Digital Signatures in PDF: how it's doneDigital Signatures in PDF: how it's done
Digital Signatures in PDF: how it's done
 
How can large open source projects be monetized?
How can large open source projects be monetized?How can large open source projects be monetized?
How can large open source projects be monetized?
 
Waarom iText de Leeuw van de Export 2016 moet winnen
Waarom iText de Leeuw van de Export 2016 moet winnenWaarom iText de Leeuw van de Export 2016 moet winnen
Waarom iText de Leeuw van de Export 2016 moet winnen
 
Belgium and the US: a mutual introduction
Belgium and the US: a mutual introductionBelgium and the US: a mutual introduction
Belgium and the US: a mutual introduction
 
Four failures and one hit
Four failures and one hitFour failures and one hit
Four failures and one hit
 
Startup Weekend Ghent
Startup Weekend GhentStartup Weekend Ghent
Startup Weekend Ghent
 
Doing business in the US: Yes, You Can!
Doing business in the US: Yes, You Can!Doing business in the US: Yes, You Can!
Doing business in the US: Yes, You Can!
 
Community Leadership Summit - Calistoga March 2013
Community Leadership Summit - Calistoga March 2013Community Leadership Summit - Calistoga March 2013
Community Leadership Summit - Calistoga March 2013
 
Bizcamp #8: The Founder's Dilemmas, Control vs. Wealth decisions
Bizcamp #8: The Founder's Dilemmas, Control vs. Wealth decisionsBizcamp #8: The Founder's Dilemmas, Control vs. Wealth decisions
Bizcamp #8: The Founder's Dilemmas, Control vs. Wealth decisions
 
Kruispunt Brugsepoortstraat
Kruispunt BrugsepoortstraatKruispunt Brugsepoortstraat
Kruispunt Brugsepoortstraat
 
What's new in PDF 2.0 regarding digital signatures
What's new in PDF 2.0 regarding digital signaturesWhat's new in PDF 2.0 regarding digital signatures
What's new in PDF 2.0 regarding digital signatures
 
GentM #9: Business Angels
GentM #9: Business AngelsGentM #9: Business Angels
GentM #9: Business Angels
 
De lijn
De lijnDe lijn
De lijn
 
Zenika - iText in Action
Zenika - iText in ActionZenika - iText in Action
Zenika - iText in Action
 

Último

Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Victor Rentea
 
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Victor Rentea
 

Último (20)

Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, AdobeApidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdf
 
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
 
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
 
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdfRising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
 
MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
 
ICT role in 21st century education and its challenges
ICT role in 21st century education and its challengesICT role in 21st century education and its challenges
ICT role in 21st century education and its challenges
 
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
 
AWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of Terraform
 
MS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectorsMS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectors
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century education
 
FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024
 
DBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor PresentationDBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor Presentation
 
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
 
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
 
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
 
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
 
DEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 AmsterdamDEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
 

iText IP Review

  • 1. Intellectual Property of F/OSS Case Study: iText a Free/Open Source Java-PDF library Bruno Lowagie
  • 2. F/OSS and IP • iText was started by one person in 1998 • Another developer joined in 2000 • From then on the product grows organically: It’s a joined effort of many different people • But who is the owner of the code? Who owns the Intellectual Property?
  • 3. Your product White zone Gray zone Black zone
  • 4. The White Zone White zone Gray zone Black zone
  • 5. The White Zone • You have written the code yourself, but – What about your employer? Does your employer own (part of) the code? Do you have a formal agreement with your employer with respect to F/OSS? – Where did you get your inspiration? IBM developers are forbidden to look at any code that is not formally approved by IBM’s legal team. Good practice or burden?
  • 7. The Gray Zone White zone Gray zone Black zone
  • 8. The Gray Zone • The code was contributed, but: – Did the contributor agree with the license? – Did the contributor’s employer agree? – Where did the contributor get his inspiration? • The code is taken from another project, but: – Are the licenses compatible? – Do you respect the other project’s license? – Where did the other project get its code from?
  • 9. The Gray Zone • Contributor License Agreements – The Apache Foundation demands contributors and their employers to sign a CLA – SUN demands contributors to sign an SCA from the moment the contributions contain more than 20 lines of code • Check License Compatibility – Keep a detailed inventory of all F/OSS Projects (subset / derivative work)
  • 10. The Black Zone White zone Gray zone Black zone
  • 11. The Black Zone • Unfortunately it may happen that you weren’t allowed to use some specific code that is part of your project. • Solution: – either you ask (and get!) permission, – or you remove the code.
  • 12. In practice • I’m a developer • I started writing a PDF library in 1998 • It was first published online in 1999 • It was completely refactored in 2000 • Many people contributed, and… • IANAL!!! ( = I Am Not A Lawyer) • 2006: who owns the IP of iText?
  • 13. IP Project • July 2006: Eclipse Simultaneous Release – “Callisto”; tested and approved by IBM • Eclipse/BIRT (Actuate) is part of this release – Project led by Actuate • iText is used in Eclipse/BIRT – License MPL: not acceptable for IBM – Research Agreement between Actuate and Ghent University with as deliverable: IP Review
  • 14. Turning Gray and Black into White White zone Gray zone Black zone
  • 15. Example 1 • State machine to parse XML quickly: • Source taken from/inspired by: – http://www.javaworld.com/javaworld/javatips/ jw-javatip128.html • Read the fine print! – All contents of JavaWorld, including text, programs, applets, source code, and images are copyrighted and owned by IDG or the copyright holder specified, all rights reserved. No material may be reproduced electronically or in print without written permission
  • 18. Solution 1 • Write JavaWorld and author, get permission! • Note: there were many other places where licenses were incomplete or missing! • It must become your second nature to ask for permission and to document! document! document!
  • 19. Example 2 • Names and variables referring to RC4 – RC4 was initially a trade secret, but in September 1994 a description of it was anonymously posted to the Cypherpunks mailing list. – It was soon posted on the sci.crypt newsgroup, and from there to many sites on the Internet. Because the algorithm is known, it is no longer a trade secret. – The name quot;RC4quot; is trademarked, however. The current status seems to be that quot;unofficialquot; implementations are legal, but cannot use the RC4 name.
  • 20. Solution 2 • RC4 is often referred to as quot;ARCFOURquot; or quot;ARC4quot; (meaning Alleged RC4, because RSA has never officially released the algorithm), to avoid possible trademark problems. • Change all class and variable names: for instance change RC4_ENCRYPTION into ARCFOUR_ENCRYPTION
  • 22. Code taken from ACME.com: Class IntHashtable // This is 90% based on JavaSoft's java.util.Hashtable. // Visit the ACME Labs Java page for up-to-date versions // of this and other fine Java utilities: // http://www.acme.com/java/ JavaSoft is a name used by Sun in the past in their Java activities. Sun indicates use of the class java.util.Hashtable which is subject to unfriendly Sun license It is unlikely that this code is available under a license that permits this use. Without information indicating that Sun approved of this usage the class should not be used.
  • 23. Solution 3 • use the same class released by Apache under the APL in Apache-Commons instead of the ACME class.
  • 24. EPS Functionality in iText Taken from an example released by SUN under a Sample License. The Sample License allowed the use of the code, Problem 4 but the source code contained this text: /* * Copyright 1998 by Sun Microsystems, Inc., * 901 San Antonio Road, Palo Alto, California, * 94303, U.S.A. All rights reserved. * * This software is the confidential and proprietary * information of Sun Microsystems, Inc. * (quot;Confidential Informationquot;). You shall not * disclose such Confidential Information and shall * use it only in accordance with the terms of the * license agreement you entered into with Sun. */ Solution: after a very long argument about this comment section versus the Sample License, EPS functionality was dropped.
  • 25. Fedora Linux and nuclear facilities Some code involving TIFFs was taken from the JAI library originally released by SUN under a very Problem 5 liberal license. However, the license text contains the following clause: /* * You acknowledge that Software is not designed, licensed * or intended for use in the design, construction, * operation or maintenance of any nuclear facility. */ As long as the word “licensed” isn’t removed, iText can’t be distributed with Fedora Linux. Solution: direct communication with the core developers to solve the problem.
  • 30. Result: 2007 • iText was shipped as part of Eclipse/BIRT with the Europa Simultaneous Release in 2007: IBM, Actuate and the Eclipse Foundation happy! • No more doubts about the ownership iText. Maintaining a clear overview of the IP and avoiding possible IP issues in the future has become a ‘second nature’: Bruno happy! • A valuable experience with a valuable result!
  • 31. Thank you! Questions are always welcome