From b9c8bef7c3ca3a11fb0c74936b9aec9aaf794354 Mon Sep 17 00:00:00 2001 From: "Bradley M. Kuhn" Date: Wed, 14 Jan 2004 19:47:10 +0000 Subject: [PATCH] * Started course materisl for case study and ethics course --- Case-Study-Ethics/Makefile | 60 ++++++++ .../case-study-ethics-overview.txt | 126 +++++++++++++++ Case-Study-Ethics/case-study-ethics.tex | 143 ++++++++++++++++++ Case-Study-Ethics/filter-doc.plx | 44 ++++++ Case-Study-Ethics/generate-html-file.tex | 13 ++ Case-Study-Ethics/generate-pdf-file.tex | 17 +++ Case-Study-Ethics/generate-ps-file.tex | 7 + 7 files changed, 410 insertions(+) create mode 100644 Case-Study-Ethics/Makefile create mode 100644 Case-Study-Ethics/case-study-ethics-overview.txt create mode 100644 Case-Study-Ethics/case-study-ethics.tex create mode 100755 Case-Study-Ethics/filter-doc.plx create mode 100644 Case-Study-Ethics/generate-html-file.tex create mode 100644 Case-Study-Ethics/generate-pdf-file.tex create mode 100644 Case-Study-Ethics/generate-ps-file.tex diff --git a/Case-Study-Ethics/Makefile b/Case-Study-Ethics/Makefile new file mode 100644 index 0000000..7c43e71 --- /dev/null +++ b/Case-Study-Ethics/Makefile @@ -0,0 +1,60 @@ + +FILTER = ./filter-doc.plx +PDFLATEX = pdflatex +LATEX = latex +#BIBTEX = bibtex +BIBTEX = /bin/true +FIG2DEV = fig2dev +DVIPS=dvips + +all: case-study-ethics.pdf case-study-ethics.ps + +.SUFFIXES: .fig .postscript .eps .pdf .pstex_t .pstex + +.postscript.pdf: + ps2pdf $< $@ + +.postscript.eps: + ps2epsi $< $@ + +.fig.pdf: + $(FIG2DEV) -L pdf -p "portrait" -c $< > $@ + +.fig.pstex_t: + $(FIG2DEV) -L pstex_t $< > $@ + +.fig.pstex: + $(FIG2DEV) -L pstex $< > $@ + +PDF_FIGS = + +case-study-ethics.pdf: case-study-ethics-pdf.tex case-study-ethics-pdf.bbl $(PDF_FIGS) + $(PDFLATEX) case-study-ethics-pdf + $(PDFLATEX) case-study-ethics-pdf + /bin/mv case-study-ethics-pdf.pdf case-study-ethics.pdf + +case-study-ethics-pdf.tex: case-study-ethics.tex + cat case-study-ethics.tex | $(FILTER) PDF > case-study-ethics-pdf.tex + +case-study-ethics-pdf.bbl: case-study-ethics-pdf.tex $(PDF_FIGS) + $(PDFLATEX) case-study-ethics-pdf + $(BIBTEX) case-study-ethics-pdf + +PS_FIGS = + +case-study-ethics-ps.tex: case-study-ethics.tex + cat case-study-ethics.tex | $(FILTER) PS > case-study-ethics-ps.tex + +case-study-ethics-ps.bbl: case-study-ethics-ps.tex $(PS_FIGS) + $(LATEX) case-study-ethics-ps + $(BIBTEX) case-study-ethics-ps + +case-study-ethics-ps.dvi: case-study-ethics-ps.tex case-study-ethics-ps.bbl $(PS_FIGS) + $(LATEX) case-study-ethics-ps + $(LATEX) case-study-ethics-ps + +case-study-ethics.ps: case-study-ethics-ps.dvi + $(DVIPS) $< -o $@ + +clean: + /bin/rm -f case-study-ethics-ps.* case-study-ethics-pdf.* case-study-ethics.pdf case-study-ethics.ps $(PDF_FIGS) $(PS_FIGS) case-study-ethics.log texput.log diff --git a/Case-Study-Ethics/case-study-ethics-overview.txt b/Case-Study-Ethics/case-study-ethics-overview.txt new file mode 100644 index 0000000..7dd5971 --- /dev/null +++ b/Case-Study-Ethics/case-study-ethics-overview.txt @@ -0,0 +1,126 @@ + GPL Compliance Case Studies and Legal Ethics in Free Software Licensing + +This one-day course presents the details of five different GPL compliance +cases handled by FSF's GPL Compliance Laboratory. Each case offers unique +insights into problems that can arise when the terms of GPL are not +properly followed, and how diplomatic negotiation between the violator and +the copyright holder can yield positive results for both parties. + +This course also includes a unit on the ethical considerations for +attorneys who want to represent clients that make use of or sell Free +Software products. + +Prerequisites: + + Attendees should have successfully completely the course, a "Detailed + Study and Analysis of GPL and LGPL", as the material from that course + forms the building blocks for this material. + +Audience: + + The course is of most interest to lawyers who have clients or + employers that deal with Free Software on a regular basis. However, + technical managers and executives whose businesses use or distribute + Free Software will also find the course very helpful. + + +The course will include the topics listed below, along with ample time for +questions and discussions. Lunch is included, with a lunch speaker to be +announced. + + + GPL Compliance Case Studies: + + * Overview of FSF's GPL Compliance Lab (:20) + + We present a brief introduction to the work that FSF does to enforce + the GPL and defend the freedoms granted by Free Software. + + * GPL Violation Case Study A (1:00) + + In this case study, we consider one of the most complex and + longest-running violations that FSF has handled. Company A + distributed a derivative work of the GNU Complier Collection (GCC) + without complete corresponding source, and refused to distribute any + source at all to anyone who was not their direct customer. We + follow the slow movement toward compliance and explain how FSF deals + with sometimes belligerent violators. + + * GPL Violation Case Study B (:20) + + In this case study, we consider a contrasting violation to Case A. + Company B, who sold a complete GNU/Linux distribution, had worked + hard to be in compliance, but we had nevertheless found an + infraction in their compliance efforts. We explain how smoothly + violations of this type can be resolved and the process that an + otherwise friendly violator can expect. + + * GPL Violation Case Study C (:35) + + In this case study, we present a violation where an entire embedded + GNU/Linux distribution was included in a consumer electronic device. + We consider the problems faced regarding kernel modules for device + drivers for government-regulated hardware, and cases where both an + upstream provider and a downstream distributor are in violation on + separate matters. + + * GPL Violation Case Study D (:25) + + In this case study, we consider how to handle the inevitable + violations that can occur from a company that is generally committed + to doing Free Software as a regular part of its business, but -- due + to experimentation with new cutting edge business models, or because + of mere oversights -- has occasional GPL violations or + near-violations. + + * Good Practices for GPL Compliance (:10) + + After discussing the details of the various archetypes of GPL + compliance efforts undertaken by FSF, we generalize what we have + learned to advise on good practices to build a product from start to + finish in compliance with GPL, and how to build internal policies to + assure that your client or company is never faced with a violation + report. + + Ethical Considerations for the Attorney Practicing Free Software + + This portion of the course will focus on ethical issues that may arise + for attorneys counseling clients with respect to free software issues. + Many of these topics have more general application, but specific + discussion of the ways in which these issues may arise for free software + clients will be presented. + + * Part I: Representing Free Software Clients (1:00) + + An attorney's ethical duties run to not just their clients, but to + potential clients and the general public as well. Pro bono + representation of free software clients not only conforms with the + principles set forth by most Bar Associations, but also provides + many other benefits to an attorney. Once a client is retained, the + duty of loyalty attaches and conflicts, be they direct, indirect, + or political, should be identified and handled. + + * Part II: Practicing Free Software (1:00) + + Differing ethical issues arise in the context of counseling a + client who is a free software licensor as opposed to one who is a + free software licensee. Further still, representing a client who + is both licensor and licensee presents a combination of all of + these issues. Compliance investigation and enforcement strategies + must be implemented in accordance with both the duty of loyalty and + the duty of honesty. Likewise, performing exposure abatement while + also defending against charges of infringement may pose problems + within the attorney-client relationship. The ethical considerations + relevant to each of these situations will be presented and + discussed. + + * Part III: More General Ethical Considerations Relevant to Free + Software (1:00) + + Free software counseling is but one specialty within the realm of + intellectual property counseling in general. A review of various + topics of more general application, but with special relevance to + free software counseling, will be given along with a discussion of + the reasons why and ways in which such issues arise when + representing free software clients. Patent prosecution and + governing rules considerations are two such topics. diff --git a/Case-Study-Ethics/case-study-ethics.tex b/Case-Study-Ethics/case-study-ethics.tex new file mode 100644 index 0000000..f2e1f87 --- /dev/null +++ b/Case-Study-Ethics/case-study-ethics.tex @@ -0,0 +1,143 @@ +% case-study-ethics.tex -*- LaTeX -*- + +% Tutorial Text for GPL Compliance Case Studies +% and Legal Ethics in Free Software Licensing +% +% Copyright (C) 2004 Free Software Foundation, Inc. + +% Verbatim copying and distribution of this entire document is permitted in +% any medium, provided this notice is preserved. + +\documentclass[12pt]{report} +% FILTER_PS: \input{generate-ps-file} +% FILTER_PDF: \input{generate-pdf-file} +% FILTER_HTML: \input{generate-html-file} +\input{one-inch-margins} + +%\setlength\parskip{0.7em} +%\setlength\parindent{0pt} + +\newcommand{\defn}[1]{\emph{#1}} + +%\pagestyle{empty} + +\begin{document} + +\begin{titlepage} + + +\begin{center} + +\vspace{.5in} + +{\Large {\sc GPL Compliance Case Studies and Legal Ethics in Free Software + Licensing } \\ + +\vspace{.7in} + +Sponsored by the Free Software Foundation \\ + + +\vspace{.3in} + +Columbia Law School, New York, NY, USA \\ +\vspace{.1in} +Wednesday 21 January 2003 +} + +\vspace{.7in} + +{\large +Bradley M. Kuhn + +Executive Director + +Free Software Foundation +} + +\vspace{.3in} + + +{\large +Daniel Ravicher + +Senior Counsel + +Free Software Foundation +} + +\end{center} + +\vfill + +{\parindent 0in +Copyright \copyright{} 2004 \hspace{.2in} Free Software Foundation, Inc. + +\vspace{.3in} + +Verbatim copying and distribution of this entire document is permitted in +any medium, provided this notice is preserved. +} + +\end{titlepage} + +\pagestyle{plain} +\pagenumbering{roman} + +\begin{abstract} + + +This one-day course presents the details of five different GPL compliance +cases handled by FSF's GPL Compliance Laboratory. Each case offers unique +insights into problems that can arise when the terms of GPL are not +properly followed, and how diplomatic negotiation between the violator and +the copyright holder can yield positive results for both parties. + +This course also includes a unit on the ethical considerations for +attorneys who want to represent clients that make use of or sell Free +Software products. + +Attendees should have successfully completely the course, a ``Detailed +Study and Analysis of GPL and LGPL'', as the material from that course +forms the building blocks for this material. + +The course is of most interest to lawyers who have clients or employers +that deal with Free Software on a regular basis. However, technical +managers and executives whose businesses use or distribute Free Software +will also find the course very helpful. + +\end{abstract} + +\tableofcontents + +\pagebreak + +\pagenumbering{arabic} + +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +\chapter{Overview of FSF's GPL Compliance Lab} + +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +\chapter{Case Study A} + +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +\chapter{Case Study B} + +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +\chapter{Case Study C} + + +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +\chapter{Case Study D} + +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +\chapter{Good Practices for Compliance} +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +\chapter{Ethical Considerations for the Attorney Practicing Free Software} + +\end{document} + +% LocalWords: proprietarize redistributors sublicense yyyy Gnomovision EULAs +% LocalWords: Yoyodyne FrontPage improvers Berne copyrightable Stallman's GPLs +% LocalWords: Lessig Lessig's UCITA pre PDAs CDs reshifts GPL's Gentoo glibc +% LocalWords: TrollTech administrivia LGPL's MontaVista OpenTV diff --git a/Case-Study-Ethics/filter-doc.plx b/Case-Study-Ethics/filter-doc.plx new file mode 100755 index 0000000..6f4262a --- /dev/null +++ b/Case-Study-Ethics/filter-doc.plx @@ -0,0 +1,44 @@ +#!/usr/bin/perl -w +# Copyright (C) 200, 2001 Bradley M. Kuhn +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License along +# with this program (in the file, "COPYING"; if not, write to the Free +# Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA +# 02111-1307 USA + + +use strict; +use warnings; + +my $type = $ARGV[0]; + +unless (defined $type) { + print STDERR "usage: $0 TYPE\n"; + exit 1; +} +my $extraType; + +if ($type eq "PS" || $type eq "HTML") { + $extraType = "PS_HTML"; +} + +while (my $line = ) { + if ($line =~ /^\s*%+\s*FILTER[_\s]+$type\s*:\s+(.*)\s*$/) { + $line = "$1\n"; + } + if (defined $extraType and + $line =~ /^\s*%+\s*FILTER[_\s]+$extraType\s*:\s+(.*)\s*$/) { + $line = "$1\n"; + } + print $line; +} diff --git a/Case-Study-Ethics/generate-html-file.tex b/Case-Study-Ethics/generate-html-file.tex new file mode 100644 index 0000000..2c54c5d --- /dev/null +++ b/Case-Study-Ethics/generate-html-file.tex @@ -0,0 +1,13 @@ + +%\usepackage{html} + +%\usepackage[dvips]{graphicx} + +%\usepackage[latex2html]{hyperref} +\newcommand\href[2]{\htmladdnormallink{#1}{#2}} +%\renewcommand\cite[1]{\hypercite{#1}} +%\renewcommand\ref[1]{\hyperref{#1}} + +\usepackage[usenames]{color} + +%\input{/usr/share/texmf/tex/plain/dvips/colordvi.tex} diff --git a/Case-Study-Ethics/generate-pdf-file.tex b/Case-Study-Ethics/generate-pdf-file.tex new file mode 100644 index 0000000..4c96338 --- /dev/null +++ b/Case-Study-Ethics/generate-pdf-file.tex @@ -0,0 +1,17 @@ +\usepackage[pdftex]{graphicx} +\usepackage[ +pdftex=true, +latex2html=false, +pdftitle={The GNU General Public License for Businesspeople and Developers}, +pdfauthor={Bradley M. Kuhn}, +pdfsubject={GNU General Public License}, +pdfkeywords={computer, science, free, software, freedom, licensing, licenses, GPL, GNU, general, public, license} +]{hyperref} + +% I could not get this to work! +%\usepackage[pdftex,usenames]{color} +% So I used this: + +\input{/usr/share/texmf/pdftex/plain/misc/pdfcolor.tex} + +%\usepackage[ref]{backref} diff --git a/Case-Study-Ethics/generate-ps-file.tex b/Case-Study-Ethics/generate-ps-file.tex new file mode 100644 index 0000000..0774c0d --- /dev/null +++ b/Case-Study-Ethics/generate-ps-file.tex @@ -0,0 +1,7 @@ +\usepackage[dvips]{graphicx} + +\newcommand\href[2]{#2} + +%\newcommand\textcolor[2]{#2} + +\input{/usr/share/texmf/tex/plain/dvips/colordvi.tex}