<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"/>
<title>About</title>
</head>
<body lang="EN-US">
<h2>About This Content</h2>

<p>June 18, 2020</p>	
<h3>License</h3>

<p>The Eclipse Foundation makes available all content in this plug-in
(&quot;Content&quot;). Unless otherwise indicated below, the Content
is provided to you under the terms and conditions of the Eclipse
Public License Version 2.0 (&quot;EPL&quot;). A copy of the EPL is
available at <a href="http://www.eclipse.org/legal/epl-2.0">http://www.eclipse.org/legal/epl-2.0</a>.
For purposes of the EPL, &quot;Program&quot; will mean the Content.</p>

<p>If you did not receive this Content directly from the Eclipse Foundation, the Content is 
being redistributed by another party (&quot;Redistributor&quot;) and different terms and conditions may
apply to your use of any object code in the Content.  Check the Redistributor's license that was 
provided with the Content.  If no such license exists, contact the Redistributor.  Unless otherwise
indicated below, the terms and conditions of the EPL still apply to any source code in the Content
and such source code may be obtained at <a href="http://www.eclipse.org">http://www.eclipse.org</a>.</p>

<h3>Third Party Content</h3>

<p>The Content includes items that have been sourced from third parties as set out below. If you 
did not receive this Content directly from the Eclipse Foundation, the following is provided 
for informational purposes only, and you should look to the Redistributor&rsquo;s license for 
terms and conditions of use.</p>

<h4>Cocoa Binding</h4>

<p>The &quot;Cocoa Binding&quot; is a binding to the Cocoa API.  The Content may include any or all of three portions of the Cocoa Binding:</p>

<p>The following files in the plug-in JAR shall be defined as the native code portion of the Cocoa Binding:</p>
<ul>
	<li>libswt-pi-cocoa-xxxx.jnilib (where &quot;xxxx&quot; is the version number)</li>	
</ul>

<p>The following files in both the plug-in JAR and the src.zip shall be defined respectively as the bytecode and source code portions of the Cocoa Binding:</p>

<ul>
	<li>The contents of the directory org/eclipse/swt/internal/cocoa (but not including any sub-directories)</li>
</ul>

<p>The Cocoa Binding contains portions of Apple Computer's Cocoa API header files which are:</p>

<blockquote>Copyright &copy; 1983-2002 Apple Computer, Inc.</blockquote>

<p>In addition to the terms and conditions of the EPL, the following notice applies to your use of the Cocoa Binding and must be retained and reproduced in its entirety with all redistributions of the
Cocoa Binding:</p>

<blockquote>
Copyright &copy; 2004 Apple Computer, Inc.<br>
This text and the following notice must be retained and reproduced in their entirety with all redistributions of this project:<br><br>
<strong>IMPORTANT NOTICE</strong>: This project, which consists of certain Java bindings, includes or otherwise makes references to application programming interfaces
(APIs) that are owned by Apple Computer, Inc., including but not limited to certain Apple Cocoa APIs. While you may use, copy, modify and redistribute
this Java bindings project in accordance with the terms of the Eclipse Public License (EPL) version 1.0, you are not granted any rights under any Apple or
third party intellectual property rights (including without limitation, patent, copyright, trademark and trade secret rights) to Apple's Cocoa API header files
themselves, nor to any underlying implementations of any Apple Cocoa APIs or to any functionality that is invoked by calling any of those APIs. Without
limiting the generality of the foregoing, you understand that it is not Apple's intention by way of this project to authorize the reverse engineering of the Java
bindings into Apple's original Cocoa.h header files.
</blockquote>

<h4>Independent JPEG Group's JPEG software release 6b</h4>

<p>This software is based in part on the work of the Independent JPEG Group's JPEG software release 6b (&quot;LIBJPEG&quot;).
LIBJPEG was used to implement the decoding of JPEG format files in Java (TM).  The Content does NOT include any portion of the LIBJPEG file ansi2knr.c.</p>

<p>Your use of LIBJPEG is subject to the terms and conditions located in the <a href="about_files/IJG_README">about_files/IJG_README</a> file which is included
with the Content.</p>

<p>The IJG's website is located at <a href="http://ijg.org/" target="_blank">http://ijg.org</a>.</p>

<p>The class org.eclipse.swt.internal.image.JPEGFileFormat is based on following files from LIBJPEG:</p>

<ul>
    <li>cderror.h</li>
    <li>cdjpeg.h</li>
    <li>jchuff.h</li>
    <li>jdcolor.c</li>
    <li>jdct.h</li>
    <li>jdhuff.h</li>
    <li>jerror.h</li>
    <li>jidctint.c</li>
    <li>jinclude.h</li>
    <li>jmemsys.h</li>
    <li>jmorecfg.h</li>
    <li>jpegint.h</li>
    <li>jpeglib.h</li>
    <li>jversion.h</li>
    <li>transupp.h</li>
</ul>

<p>The class org.eclipse.swt.internal.image.JPEGDecoder is based on the following files from LIBJPEG:</p>

<ul>
	<li>jcapimin.c</li>
	<li>jcapistd.c</li>
	<li>jccoefct.c</li>
	<li>jccolor.c</li>
	<li>jcdctmgr.c</li>
	<li>jchuff.c</li>
	<li>jcinit.c</li>
	<li>jcmainct.c</li>
	<li>jcmarker.c</li>
	<li>jcmaster.c</li>
	<li>jcomapi.c</li>
	<li>jcparam.c</li>
	<li>jcphuff.c</li>
	<li>jcprepct.c</li>
	<li>jcsample.c</li>
	<li>jctrans.c</li>
	<li>jdapimin.c</li>
	<li>jdapistd.c</li>
	<li>jdatadst.c</li>
	<li>jdatasrc.c</li>
	<li>jdcoefct.c</li>
	<li>jdcolor.c</li>
	<li>jddctmgr.c</li>
	<li>jdhuff.c</li>
	<li>jdinput.c</li>
	<li>jdmainct.c</li>
	<li>jdmarker.c</li>
	<li>jdmaster.c</li>
	<li>jdmerge.c</li>
	<li>jdphuff.c</li>
	<li>jdpostct.c</li>
	<li>jdsample.c</li>
	<li>jdtrans.c</li>
	<li>jerror.c</li>
	<li>jfdctflt.c</li>
	<li>jfdctfst.c</li>
	<li>jfdctint.c</li>
	<li>jidctflt.c</li>
	<li>jidctfst.c</li>
	<li>jidctint.c</li>
	<li>jidctred.c</li>
	<li>jpegtran.c</li>
	<li>jquant1.c</li>
	<li>jquant2.c</li>
	<li>jutils.c</li>
	<li>cderror.h</li>
	<li>cdjpeg.h</li>
	<li>jchuff.h</li>
	<li>jconfig.h</li>
	<li>jdct.h</li>
	<li>jdhuff.h</li>
	<li>jerror.h</li>
	<li>jinclude.h</li>
	<li>jmorecfg.h</li>
	<li>jpegint.h</li>
	<li>jpeglib.h</li>
	<li>jversion.h</li>
	<li>transupp.h</li>
</ul>
	
<p>The following changes were made to the LIBJPEG code in the Content:</p>

<ol>
	<li>In Java, pointer math is not allowed so indexing was used instead.</li>
	<li>Function pointers were replaced with switch statements.</li>
	<li>The virtual memory, tracing and progress monitoring were removed.</li>
	<li>The error handling was simplified and now uses Java exceptions.</li>
</ol>

<h4>PuTTY 0.58 (derivative work)</h4>

<p>Portions of the SWT class org/eclipse/swt/internal/image/PngDeflater are based on PuTTY's sshzlib.c. PuTTY is made available by Mozilla.org.  Use of PuTTY is governed by the terms and
conditions of the the following MIT-style license:  </p>
<blockquote>
  <p><em>PuTTY is copyright 1997-2007 Simon Tatham.</em> </p>
  <p><em>Portions copyright Robert de Bath, Joris van Rantwijk, Delian  Delchev, Andreas Schultz, Jeroen Massar, Wez Furlong, Nicolas Barry,  Justin Bradford, Ben Harris, Malcolm Smith, Ahmad Khalifa, Markus Kuhn,  and CORE SDI S.A.</em> </p>
  <p><em>Permission is hereby granted, free of charge, to any person  obtaining a copy of this software and associated documentation files  (the &quot;Software&quot;), to deal in the Software without restriction,  including without limitation the rights to use, copy, modify, merge,  publish, distribute, sublicense, and/or sell copies of the Software,  and to permit persons to whom the Software is furnished to do so,  subject to the following conditions:</em> </p>
  <p><em>The above copyright notice and this permission notice shall be  included in all copies or substantial portions of the Software.</em> </p>
  <p><em>THE SOFTWARE IS PROVIDED &quot;AS IS&quot;, WITHOUT WARRANTY OF ANY KIND,  EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF  MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND  NONINFRINGEMENT.  IN NO EVENT SHALL SIMON TATHAM BE LIABLE FOR ANY  CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,  TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE  SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.</em> </p>
</blockquote>
<p>A copy of the license is also available at <a href="http://www.chiark.greenend.org.uk/~sgtatham/putty/licence.html" target="_blank">http://www.chiark.greenend.org.uk/~sgtatham/putty/licence.html</a>.</p>

<p><small>Java and all Java-based trademarks and logos are trademarks or registered trademarks of Sun Microsystems, Inc. in the United States and other countries.</small></p>

</body>
</html>