glassfish 0.9.5-universal-java → 1.0.0-universal-java

Sign up to get free protection for your applications and to get access to all the features.
Files changed (109) hide show
  1. data/History.txt +247 -0
  2. data/LICENSE.txt +774 -0
  3. data/README.txt +140 -0
  4. data/bin/gfrake +5 -1
  5. data/bin/glassfish +5 -7
  6. data/generators/gfrake/templates/glassfish.yml +39 -0
  7. data/lib/command_line_parser.rb +29 -40
  8. data/lib/config.rb +57 -63
  9. data/lib/glassfish.rb +3 -79
  10. data/{modules → lib/java}/akuma.jar +0 -0
  11. data/lib/java/gf-jruby-connector.jar +0 -0
  12. data/lib/java/glassfish-embedded-nucleus.jar +0 -0
  13. data/lib/java/glassfish-gem.jar +0 -0
  14. data/lib/java/grizzly-jruby-module.jar +0 -0
  15. data/lib/java/grizzly-jruby.jar +0 -0
  16. data/lib/jruby/rack/grizzly_helper.rb +230 -0
  17. data/lib/jruby/rack/merb.rb +34 -0
  18. data/lib/jruby/rack/rackup.rb +46 -0
  19. data/lib/jruby/rack/rails.rb +29 -0
  20. data/lib/jruby/rack/sinatra.rb +18 -0
  21. data/lib/jruby/rails_path.rb +11 -0
  22. data/lib/{templates/profile.properties → rack/adapter/merb.rb} +18 -7
  23. data/lib/rack/adapter/rails.rb +268 -0
  24. data/lib/rack/handler/grizzly.rb +59 -0
  25. data/lib/server.rb +164 -0
  26. data/lib/version.rb +1 -1
  27. metadata +83 -153
  28. data/bin/glassfish_rails +0 -61
  29. data/config/asadminenv.conf +0 -6
  30. data/config/asenv.bat +0 -29
  31. data/config/asenv.conf +0 -31
  32. data/config/glassfish.container +0 -4
  33. data/domains/domain1/config/admin-keyfile +0 -3
  34. data/domains/domain1/config/cacerts.jks +0 -0
  35. data/domains/domain1/config/default-web.xml +0 -1133
  36. data/domains/domain1/config/domain-passwords +0 -0
  37. data/domains/domain1/config/domain.xml +0 -190
  38. data/domains/domain1/config/glassfish_gem_version.yml +0 -7
  39. data/domains/domain1/config/keyfile +0 -6
  40. data/domains/domain1/config/keystore.jks +0 -0
  41. data/domains/domain1/config/logging.properties +0 -46
  42. data/domains/domain1/config/login.conf +0 -21
  43. data/domains/domain1/config/server.policy +0 -170
  44. data/domains/domain1/config/sun-acc.xml +0 -40
  45. data/domains/domain1/docroot/index.html +0 -83
  46. data/domains/domain1/master-password +0 -0
  47. data/lib/appclient/appclientlogin.conf +0 -10
  48. data/lib/appclient/client.policy +0 -79
  49. data/lib/appclient/wss-client-config-1.0.xml +0 -84
  50. data/lib/appclient/wss-client-config-2.0.xml +0 -96
  51. data/lib/registration/servicetag-registry.xml +0 -18
  52. data/lib/templates/cacerts.jks +0 -0
  53. data/lib/templates/default-web.xml +0 -1133
  54. data/lib/templates/docroot/index.html +0 -83
  55. data/lib/templates/domain.xml +0 -180
  56. data/lib/templates/domain.xml.xsl +0 -100
  57. data/lib/templates/keyfile +0 -6
  58. data/lib/templates/keystore.jks +0 -0
  59. data/lib/templates/logging.properties +0 -48
  60. data/lib/templates/login.conf +0 -21
  61. data/lib/templates/server.policy +0 -170
  62. data/lib/templates/sun-acc.xml +0 -40
  63. data/modules/admin-cli.jar +0 -0
  64. data/modules/api-exporter.jar +0 -0
  65. data/modules/asm-all-repackaged.jar +0 -0
  66. data/modules/auto-depends.jar +0 -0
  67. data/modules/bean-validator.jar +0 -0
  68. data/modules/branding.jar +0 -0
  69. data/modules/cli-framework.jar +0 -0
  70. data/modules/common-util.jar +0 -0
  71. data/modules/config-api.jar +0 -0
  72. data/modules/config.jar +0 -0
  73. data/modules/deployment-admin.jar +0 -0
  74. data/modules/deployment-autodeploy.jar +0 -0
  75. data/modules/deployment-common.jar +0 -0
  76. data/modules/flashlight-agent.jar +0 -0
  77. data/modules/flashlight-framework.jar +0 -0
  78. data/modules/gf-jruby-connector.jar +0 -0
  79. data/modules/gfprobe-provider-client.jar +0 -0
  80. data/modules/glassfish-api.jar +0 -0
  81. data/modules/glassfish-ee-api.jar +0 -0
  82. data/modules/glassfish-extra-jre-packages.jar +0 -0
  83. data/modules/glassfish-gem.jar +0 -0
  84. data/modules/glassfish.jar +0 -0
  85. data/modules/grizzly-comet.jar +0 -0
  86. data/modules/grizzly-cometd.jar +0 -0
  87. data/modules/grizzly-compat.jar +0 -0
  88. data/modules/grizzly-config.jar +0 -0
  89. data/modules/grizzly-framework.jar +0 -0
  90. data/modules/grizzly-http.jar +0 -0
  91. data/modules/grizzly-jruby-module.jar +0 -0
  92. data/modules/grizzly-jruby.jar +0 -0
  93. data/modules/grizzly-messagesbus.jar +0 -0
  94. data/modules/grizzly-portunif.jar +0 -0
  95. data/modules/grizzly-rcm.jar +0 -0
  96. data/modules/grizzly-utils.jar +0 -0
  97. data/modules/hk2-core.jar +0 -0
  98. data/modules/hk2.jar +0 -0
  99. data/modules/internal-api.jar +0 -0
  100. data/modules/kernel.jar +0 -0
  101. data/modules/launcher.jar +0 -0
  102. data/modules/org.apache.felix.configadmin.jar +0 -0
  103. data/modules/org.apache.felix.fileinstall.jar +0 -0
  104. data/modules/org.apache.felix.shell.jar +0 -0
  105. data/modules/org.apache.felix.shell.remote.jar +0 -0
  106. data/modules/org.apache.felix.shell.tui.jar +0 -0
  107. data/modules/osgi-main.jar +0 -0
  108. data/modules/pkg-client.jar +0 -0
  109. data/modules/tiger-types-osgi.jar +0 -0
@@ -0,0 +1,247 @@
1
+ == 1.0.0
2
+
3
+ This is 1.0.0 final release of GlassFish gem. This release is based on GlassFish v3 final release. See GlassFish project page[http://glassfish.dev.java.net].
4
+
5
+ === New features in this release
6
+
7
+ 1. Implemented using GlassFish v3 embedded API.
8
+
9
+ 2. Startup time improvement. Almost 15-18% faster startup.
10
+
11
+ 3. Fully Rack compliant
12
+
13
+ 4. Support for running GlassFish gem by passing code block
14
+
15
+ GlassFish::Server.start(:address=>"127.0.0.1", :port=>4000) do
16
+ use Rack::CommonLogger
17
+ use Rack::ShowExceptions
18
+ map "/lobster" do
19
+ use Rack::Lint
20
+ run HelloWorld.new
21
+ run Proc.new {[200, {"Content-Type" => "text/html"}, "Hello"]}
22
+ end
23
+ end
24
+
25
+ 5. Lots of fixes for Sinatra support (extensions, middleware etc.)
26
+
27
+ 6. New -a CLI switch to bind to a given IP address
28
+
29
+ 7. Grizzly (NIO based HTTP library) configuration thru glassfish.yml
30
+
31
+ $ gfrake config
32
+
33
+ Then look inside config/glassfish.yml.
34
+
35
+ 8. Improved support for running Rackup scripts
36
+
37
+ === Bug fixes
38
+
39
+ 25812[http://rubyforge.org/tracker/index.php?func=detail&aid=25812&group_id=5450&atid=21080] ActionController::Request.remote_ip is not set
40
+
41
+ 26147[http://rubyforge.org/tracker/index.php?func=detail&aid=26147&group_id=5450&atid=21080] Setting Hostname IP Address Incorrectly
42
+
43
+ 26149[http://rubyforge.org/tracker/index.php?func=detail&aid=26149&group_id=5450&atid=21080] Glassfish Gem fails to load Rails application in the production environment
44
+
45
+ 26208[http://rubyforge.org/tracker/index.php?func=detail&aid=26208&group_id=5450&atid=21080] Can't get glassfish to start rails in thread-safe mode
46
+
47
+ 26821[http://rubyforge.org/tracker/index.php?func=detail&aid=26821&group_id=5450&atid=21080] Error when running rack app
48
+
49
+ 26866[http://rubyforge.org/tracker/index.php?func=detail&aid=26866&group_id=5450&atid=21080] JVM crash probably due to log file running over limit
50
+
51
+ 26935[http://rubyforge.org/tracker/index.php?func=detail&aid=26935&group_id=5450&atid=21080] rack.run_once not getting set
52
+
53
+ 27030[http://rubyforge.org/tracker/index.php?func=detail&aid=27030&group_id=5450&atid=21080] Extending CLASSPATH poisons glassfish gem?
54
+
55
+ 27125[http://rubyforge.org/tracker/index.php?func=detail&aid=27125&group_id=5450&atid=21080] Application Environment not passed to Sinatra
56
+
57
+ == 0.9.5
58
+
59
+ This is a quick update to 0.9.4.
60
+
61
+ Main difference between 0.9.4 and 0.9.5 is that glassfish_rails exits in 0.9.4 where as in 0.9.5 it prints deprecation message and runs the application. This is so that NetBean 6.7 RC1 can still run glassfish gem.
62
+
63
+ 7380[https://glassfish.dev.java.net/issues/show_bug.cgi?id=7380] Duplicate glassfish scripts in JRUBY_HOME/bin
64
+
65
+
66
+ == 0.9.4
67
+
68
+ ====Bugs fixed in this release
69
+
70
+ 23754[http://rubyforge.org/tracker/index.php?func=detail&aid=23754&group_id=5450&atid=21080] glassfish gem rails dependencies defect
71
+
72
+ 24633[http://rubyforge.org/tracker/index.php?func=detail&aid=24633&group_id=5450&atid=21080] Better checking for arguments
73
+
74
+ 24787[http://rubyforge.org/tracker/index.php?func=detail&aid=24787&group_id=5450&atid=21080] Problem with config.load_paths
75
+
76
+ 24828[http://rubyforge.org/tracker/index.php?func=detail&aid=24828&group_id=5450&atid=21080] deadlock in GFFileHandler
77
+
78
+ 25068[http://rubyforge.org/tracker/index.php?func=detail&aid=25068&group_id=5450&atid=21080] --pid option never works
79
+
80
+ 25169[http://rubyforge.org/tracker/index.php?func=detail&aid=25169&group_id=5450&atid=21080] Add support for logging message on console
81
+
82
+ 25252[http://rubyforge.org/tracker/index.php?func=detail&aid=25252&group_id=5450&atid=21080] cannot start if glassfish gem file is readonly: \domains\domain1\config\logging.properties
83
+
84
+ 25253[http://rubyforge.org/tracker/index.php?func=detail&aid=25253&group_id=5450&atid=21080] extra initialization of Rails inside grizzly-jruby.jar causes problems
85
+
86
+ 25254[http://rubyforge.org/tracker/index.php?func=detail&aid=25254&group_id=5450&atid=21080] grizzly helper in grizzly-jruby.jar doesn't handle numeric headers
87
+
88
+ 25424[http://rubyforge.org/tracker/index.php?func=detail&aid=25424&group_id=5450&atid=21080] can't find header dir for ruby
89
+
90
+ 25560[http://rubyforge.org/tracker/index.php?func=detail&aid=25560&group_id=5450&atid=21080] Starting multiple glassfish instances seems to have logging problems
91
+
92
+ 25970[http://rubyforge.org/tracker/index.php?func=detail&aid=25970&group_id=5450&atid=21080] Debugging via NetBeans: setting breakpoints fails with error message on server console.
93
+
94
+ 5404[https://glassfish.dev.java.net/issues/show_bug.cgi?id=5404] SQLite3 with v3 Gem requires additional database configuration
95
+
96
+ 7380[https://glassfish.dev.java.net/issues/show_bug.cgi?id=7380] Duplicate glassfish scripts in JRUBY_HOME/bin
97
+
98
+
99
+ == 0.9.3
100
+
101
+ ===New features in this release
102
+
103
+ * Support for daemon mode (only linux and Solaris)
104
+ * Logging improvements. Direct the log to a file using -P option. Controle log
105
+ level using <tt>--log-level</tt> option
106
+ * Support for config file, glassfish.yml. Try gfrake config and use it as
107
+ template. Also see <tt>--config</tt> option. Now you can provide the JVM
108
+ properties for GlassFish in daemon mode inside glassfish.yml.
109
+ * GlassFish Rake command: gfrake. Create a config file and do the cleanup
110
+ of temporary files created by GlassFish. See,
111
+
112
+ <tt>$gfrake -T</tt>
113
+ * Support for Sinatra and framework auto-detection
114
+ * Improved server busy handling. During app load new requests give 503 along
115
+ with "Server busy loading...." page instead of 404.
116
+
117
+ ====Bugs fixed in this release
118
+
119
+ =====RubyForge
120
+ 23719[http://rubyforge.org/tracker/index.php?func=detail&aid=23719&group_id=5450&atid=21080] When starting app, gf shows the index.html page which it shouldn't
121
+
122
+ 23721[http://rubyforge.org/tracker/index.php?func=detail&aid=23721&group_id=5450&atid=21080] starting gf requires sudo
123
+
124
+ 23723[http://rubyforge.org/tracker/index.php?func=detail&aid=23723&group_id=5450&atid=21080] Support Daemon mode
125
+
126
+ == 0.9.2
127
+
128
+ ====Bugs fixed in this release
129
+
130
+ Startup improvements.
131
+ =====RubyForge Issues[http://rubyforge.org/tracker/index.php?group_id=5450&atid=21080]
132
+
133
+ 23279[http://rubyforge.org/tracker/index.php?func=detail&aid=23279&group_id=5450&atid=21080] com.sun.grizzly.jruby.rack.RackInitializationException: Bad file descriptor - Bad file descriptor
134
+
135
+ 23443[http://rubyforge.org/tracker/index.php?func=detail&aid=23443&group_id=5450&atid=21080] PUBLIC_ROOT variable not set correctly under mac osx in 0.9.1
136
+
137
+ ===== Java.net Issues[https://glassfish.dev.java.net/servlets/ProjectIssues]
138
+
139
+ 6959[https://glassfish.dev.java.net/issues/show_bug.cgi?id=6959] com.sun.grizzly.jruby.rack.RackInitializationException: Bad file descriptor - Bad file descriptor
140
+
141
+ == 0.9.1
142
+ * Performance improvements. The request message headers are passed on from java to ruby using byte[] to avoid extra
143
+ encoding resulting from String conversion.
144
+
145
+ ====Bugs fixed in this release
146
+
147
+ =====RubyForge Issues[http://rubyforge.org/tracker/index.php?group_id=5450&atid=21080]
148
+
149
+ 22724[http://rubyforge.org/tracker/index.php?func=detail&aid=22724&group_id=5450&atid=21080] "asadmin" in %JRUBY_HOME\bin should be renamed to avoid confliction
150
+
151
+ 22741[http://rubyforge.org/tracker/index.php?func=detail&aid=22741&group_id=5450&atid=21080] JRuby on Rails on Glassfish -- Unexplainable NameError
152
+
153
+ 22774[http://rubyforge.org/tracker/index.php?func=detail&aid=22774&group_id=5450&atid=21080] Gem 0.9.0 does not work in Production on Windows with JRuby 1.4+
154
+
155
+ 22793[http://rubyforge.org/tracker/index.php?func=detail&aid=22793&group_id=5450&atid=21080] 0.9.0 gem has 'Activator start error'
156
+
157
+ 22795[http://rubyforge.org/tracker/index.php?func=detail&aid=22795&group_id=5450&atid=21080] -p option throws BindException
158
+
159
+ 22836[http://rubyforge.org/tracker/index.php?func=detail&aid=22836&group_id=5450&atid=21080] Glassfish gem 0.9 problems on Ubuntu and Windows
160
+
161
+ 22861[http://rubyforge.org/tracker/index.php?func=detail&aid=22861&group_id=5450&atid=21080] Error if RAILS_GEM_VERSION isn't defined
162
+
163
+ 23007[http://rubyforge.org/tracker/index.php?func=detail&aid=23007&group_id=5450&atid=21080] uninitialized constant Rack while creating error app
164
+
165
+ 23090[http://rubyforge.org/tracker/index.php?func=detail&aid=23090&group_id=5450&atid=21080] Environment flag -e is not correctly used for Merb app
166
+
167
+ ===== Java.net Issues[https://glassfish.dev.java.net/servlets/ProjectIssues]
168
+ 6754[https://glassfish.dev.java.net/issues/show_bug.cgi?id=6754] Running Typo in GlassFish Gem throws multiple exceptions
169
+
170
+ 6764[https://glassfish.dev.java.net/issues/show_bug.cgi?id=6764] "Rails" text shows up when deploying anything
171
+
172
+ 6765[https://glassfish.dev.java.net/issues/show_bug.cgi?id=6765] GlassFish Gem does not list rack as a dependency
173
+
174
+ 6767[https://glassfish.dev.java.net/issues/show_bug.cgi?id=6767] Impossible to set production environment for merb
175
+
176
+ == 0.9.0
177
+ * Rack based
178
+ * Auto detection of Rails and Merb applications
179
+ * Merb support
180
+ * Just one command: 'glassfish' would deploy a Rails application or a Merb
181
+ application
182
+ * glassfish_rails deprecated but supported for backward compatibility
183
+ * JRuby Runtime Pool, see <tt>glassfish -h</tt>
184
+
185
+ Following issues fixed in this release
186
+
187
+ 3964[https://glassfish.dev.java.net/issues/show_bug.cgi?id=3964] Provide -port option to specify port for v3 gem
188
+
189
+ 6470[https://glassfish.dev.java.net/issues/show_bug.cgi?id=6470] HTTP keep-alive not honored
190
+
191
+ 4823[https://glassfish.dev.java.net/issues/show_bug.cgi?id=4823] glassfish_rails command should attempt to load the current directory if none specified
192
+
193
+ 5446[https://glassfish.dev.java.net/issues/show_bug.cgi?id=5446] JRuby on Rails show request header in page
194
+
195
+ Issues[http://rubyforge.org/tracker/index.php?group_id=5450&atid=21080] reported at rubyforge
196
+
197
+ == 0.3.1
198
+ * Scaffold adding duplicate entries with v3 gem 0.1.1
199
+
200
+ == 0.3.0
201
+ * 3976 Rails Gem: Static content not loading
202
+ * 5046 Two concurrent Rails apps are not accessible
203
+ * 5114 JRuby app directory deployment fails for both HK2 and Felix
204
+ * 5160 file uploading is not working when file size exceeds 10 KB
205
+
206
+ Issues reported at http://forums.java.net/jive/forum.jspa?forumID=138
207
+
208
+ * 19526 File upload problem using 0.1.2
209
+ * 20680 File uploading is not working when file size exceeds 10 KB
210
+ * Rails logs are wired thru the glassfish gem. Now you would be able to see the Rails log as part of glassfish_rails run.
211
+
212
+ == 0.1.2
213
+
214
+ * Scaffold created using Rails 2.0.2 adding duplicate entries with v3 gem 0.1.1
215
+ * After the execution of an Ajax request, all subsequent requests are also
216
+ treated as Ajax requests.
217
+ * When using observe_field for AJAX capabilities, it only works once and any
218
+ attempt afterwards returns the first selected dataset.
219
+ * Blank page returned if there are no Rails instances available.
220
+ * Based on comments from Thomas Enebo, have changed the way we were processing
221
+ requests as part of the gem.
222
+
223
+ == 0.1.1
224
+
225
+ * The name of the gem is being changed from GlassFish to glassfish. The rails
226
+ naming convention for the gems is with all lower case or with names that
227
+ contain underscore.
228
+ * Support for the applications to be deployed at the Root Context ("/") of the
229
+ server. The Webrick and Mongrel servers deploy the application to the root
230
+ context by default.
231
+ * Change the default port the server to be 3000 from 8080. Port 8080 has been
232
+ the default http port of the GlassFish application server, but since we are
233
+ targetting the Ruby on Rails market with this space, it is better to have the
234
+ http port set to 3000. At this stage I have also changed the SSL port from
235
+ the GlassFish default of 8181 to 3131 and the admin default port of 4848 to
236
+ be 3838.
237
+ * Provide command arguments to the script to specify the number of runtime to
238
+ be created. In v0.1.0 of the gem one could specify the number of runtimes if
239
+ it was passed in as a specified as a java system property. With this version
240
+ use could use the command -jruby -S glassfish_rails mephisto -n 2 to create 2
241
+ rails instance.
242
+ * Create instances of rails in parallel. This would speed up the startup of the
243
+ v3 gem
244
+
245
+ == 0.1.0
246
+
247
+ First release of GlassFish gem
@@ -0,0 +1,774 @@
1
+ COMMON DEVELOPMENT AND DISTRIBUTION LICENSE (CDDL) Version 1.0
2
+
3
+
4
+ 1. Definitions.
5
+
6
+ 1.1. "Contributor" means each individual or entity that
7
+ creates or contributes to the creation of Modifications.
8
+
9
+ 1.2. "Contributor Version" means the combination of the
10
+ Original Software, prior Modifications used by a
11
+ Contributor (if any), and the Modifications made by that
12
+ particular Contributor.
13
+
14
+ 1.3. "Covered Software" means (a) the Original Software, or
15
+ (b) Modifications, or (c) the combination of files
16
+ containing Original Software with files containing
17
+ Modifications, in each case including portions thereof.
18
+
19
+ 1.4. "Executable" means the Covered Software in any form
20
+ other than Source Code.
21
+
22
+ 1.5. "Initial Developer" means the individual or entity
23
+ that first makes Original Software available under this
24
+ License.
25
+
26
+ 1.6. "Larger Work" means a work which combines Covered
27
+ Software or portions thereof with code not governed by the
28
+ terms of this License.
29
+
30
+ 1.7. "License" means this document.
31
+
32
+ 1.8. "Licensable" means having the right to grant, to the
33
+ maximum extent possible, whether at the time of the initial
34
+ grant or subsequently acquired, any and all of the rights
35
+ conveyed herein.
36
+
37
+ 1.9. "Modifications" means the Source Code and Executable
38
+ form of any of the following:
39
+
40
+ A. Any file that results from an addition to,
41
+ deletion from or modification of the contents of a
42
+ file containing Original Software or previous
43
+ Modifications;
44
+
45
+ B. Any new file that contains any part of the
46
+ Original Software or previous Modification; or
47
+
48
+ C. Any new file that is contributed or otherwise made
49
+ available under the terms of this License.
50
+
51
+ 1.10. "Original Software" means the Source Code and
52
+ Executable form of computer software code that is
53
+ originally released under this License.
54
+
55
+ 1.11. "Patent Claims" means any patent claim(s), now owned
56
+ or hereafter acquired, including without limitation,
57
+ method, process, and apparatus claims, in any patent
58
+ Licensable by grantor.
59
+
60
+ 1.12. "Source Code" means (a) the common form of computer
61
+ software code in which modifications are made and (b)
62
+ associated documentation included in or with such code.
63
+
64
+ 1.13. "You" (or "Your") means an individual or a legal
65
+ entity exercising rights under, and complying with all of
66
+ the terms of, this License. For legal entities, "You"
67
+ includes any entity which controls, is controlled by, or is
68
+ under common control with You. For purposes of this
69
+ definition, "control" means (a) the power, direct or
70
+ indirect, to cause the direction or management of such
71
+ entity, whether by contract or otherwise, or (b) ownership
72
+ of more than fifty percent (50%) of the outstanding shares
73
+ or beneficial ownership of such entity.
74
+
75
+ 2. License Grants.
76
+
77
+ 2.1. The Initial Developer Grant.
78
+
79
+ Conditioned upon Your compliance with Section 3.1 below and
80
+ subject to third party intellectual property claims, the
81
+ Initial Developer hereby grants You a world-wide,
82
+ royalty-free, non-exclusive license:
83
+
84
+ (a) under intellectual property rights (other than
85
+ patent or trademark) Licensable by Initial Developer,
86
+ to use, reproduce, modify, display, perform,
87
+ sublicense and distribute the Original Software (or
88
+ portions thereof), with or without Modifications,
89
+ and/or as part of a Larger Work; and
90
+
91
+ (b) under Patent Claims infringed by the making,
92
+ using or selling of Original Software, to make, have
93
+ made, use, practice, sell, and offer for sale, and/or
94
+ otherwise dispose of the Original Software (or
95
+ portions thereof).
96
+
97
+ (c) The licenses granted in Sections 2.1(a) and (b)
98
+ are effective on the date Initial Developer first
99
+ distributes or otherwise makes the Original Software
100
+ available to a third party under the terms of this
101
+ License.
102
+
103
+ (d) Notwithstanding Section 2.1(b) above, no patent
104
+ license is granted: (1) for code that You delete from
105
+ the Original Software, or (2) for infringements
106
+ caused by: (i) the modification of the Original
107
+ Software, or (ii) the combination of the Original
108
+ Software with other software or devices.
109
+
110
+ 2.2. Contributor Grant.
111
+
112
+ Conditioned upon Your compliance with Section 3.1 below and
113
+ subject to third party intellectual property claims, each
114
+ Contributor hereby grants You a world-wide, royalty-free,
115
+ non-exclusive license:
116
+
117
+ (a) under intellectual property rights (other than
118
+ patent or trademark) Licensable by Contributor to
119
+ use, reproduce, modify, display, perform, sublicense
120
+ and distribute the Modifications created by such
121
+ Contributor (or portions thereof), either on an
122
+ unmodified basis, with other Modifications, as
123
+ Covered Software and/or as part of a Larger Work; and
124
+
125
+
126
+ (b) under Patent Claims infringed by the making,
127
+ using, or selling of Modifications made by that
128
+ Contributor either alone and/or in combination with
129
+ its Contributor Version (or portions of such
130
+ combination), to make, use, sell, offer for sale,
131
+ have made, and/or otherwise dispose of: (1)
132
+ Modifications made by that Contributor (or portions
133
+ thereof); and (2) the combination of Modifications
134
+ made by that Contributor with its Contributor Version
135
+ (or portions of such combination).
136
+
137
+ (c) The licenses granted in Sections 2.2(a) and
138
+ 2.2(b) are effective on the date Contributor first
139
+ distributes or otherwise makes the Modifications
140
+ available to a third party.
141
+
142
+ (d) Notwithstanding Section 2.2(b) above, no patent
143
+ license is granted: (1) for any code that Contributor
144
+ has deleted from the Contributor Version; (2) for
145
+ infringements caused by: (i) third party
146
+ modifications of Contributor Version, or (ii) the
147
+ combination of Modifications made by that Contributor
148
+ with other software (except as part of the
149
+ Contributor Version) or other devices; or (3) under
150
+ Patent Claims infringed by Covered Software in the
151
+ absence of Modifications made by that Contributor.
152
+
153
+ 3. Distribution Obligations.
154
+
155
+ 3.1. Availability of Source Code.
156
+
157
+ Any Covered Software that You distribute or otherwise make
158
+ available in Executable form must also be made available in
159
+ Source Code form and that Source Code form must be
160
+ distributed only under the terms of this License. You must
161
+ include a copy of this License with every copy of the
162
+ Source Code form of the Covered Software You distribute or
163
+ otherwise make available. You must inform recipients of any
164
+ such Covered Software in Executable form as to how they can
165
+ obtain such Covered Software in Source Code form in a
166
+ reasonable manner on or through a medium customarily used
167
+ for software exchange.
168
+
169
+ 3.2. Modifications.
170
+
171
+ The Modifications that You create or to which You
172
+ contribute are governed by the terms of this License. You
173
+ represent that You believe Your Modifications are Your
174
+ original creation(s) and/or You have sufficient rights to
175
+ grant the rights conveyed by this License.
176
+
177
+ 3.3. Required Notices.
178
+
179
+ You must include a notice in each of Your Modifications
180
+ that identifies You as the Contributor of the Modification.
181
+ You may not remove or alter any copyright, patent or
182
+ trademark notices contained within the Covered Software, or
183
+ any notices of licensing or any descriptive text giving
184
+ attribution to any Contributor or the Initial Developer.
185
+
186
+ 3.4. Application of Additional Terms.
187
+
188
+ You may not offer or impose any terms on any Covered
189
+ Software in Source Code form that alters or restricts the
190
+ applicable version of this License or the recipients�
191
+ rights hereunder. You may choose to offer, and to charge a
192
+ fee for, warranty, support, indemnity or liability
193
+ obligations to one or more recipients of Covered Software.
194
+ However, you may do so only on Your own behalf, and not on
195
+ behalf of the Initial Developer or any Contributor. You
196
+ must make it absolutely clear that any such warranty,
197
+ support, indemnity or liability obligation is offered by
198
+ You alone, and You hereby agree to indemnify the Initial
199
+ Developer and every Contributor for any liability incurred
200
+ by the Initial Developer or such Contributor as a result of
201
+ warranty, support, indemnity or liability terms You offer.
202
+
203
+
204
+ 3.5. Distribution of Executable Versions.
205
+
206
+ You may distribute the Executable form of the Covered
207
+ Software under the terms of this License or under the terms
208
+ of a license of Your choice, which may contain terms
209
+ different from this License, provided that You are in
210
+ compliance with the terms of this License and that the
211
+ license for the Executable form does not attempt to limit
212
+ or alter the recipient�s rights in the Source Code form
213
+ from the rights set forth in this License. If You
214
+ distribute the Covered Software in Executable form under a
215
+ different license, You must make it absolutely clear that
216
+ any terms which differ from this License are offered by You
217
+ alone, not by the Initial Developer or Contributor. You
218
+ hereby agree to indemnify the Initial Developer and every
219
+ Contributor for any liability incurred by the Initial
220
+ Developer or such Contributor as a result of any such terms
221
+ You offer.
222
+
223
+ 3.6. Larger Works.
224
+
225
+ You may create a Larger Work by combining Covered Software
226
+ with other code not governed by the terms of this License
227
+ and distribute the Larger Work as a single product. In such
228
+ a case, You must make sure the requirements of this License
229
+ are fulfilled for the Covered Software.
230
+
231
+ 4. Versions of the License.
232
+
233
+ 4.1. New Versions.
234
+
235
+ Sun Microsystems, Inc. is the initial license steward and
236
+ may publish revised and/or new versions of this License
237
+ from time to time. Each version will be given a
238
+ distinguishing version number. Except as provided in
239
+ Section 4.3, no one other than the license steward has the
240
+ right to modify this License.
241
+
242
+ 4.2. Effect of New Versions.
243
+
244
+ You may always continue to use, distribute or otherwise
245
+ make the Covered Software available under the terms of the
246
+ version of the License under which You originally received
247
+ the Covered Software. If the Initial Developer includes a
248
+ notice in the Original Software prohibiting it from being
249
+ distributed or otherwise made available under any
250
+ subsequent version of the License, You must distribute and
251
+ make the Covered Software available under the terms of the
252
+ version of the License under which You originally received
253
+ the Covered Software. Otherwise, You may also choose to
254
+ use, distribute or otherwise make the Covered Software
255
+ available under the terms of any subsequent version of the
256
+ License published by the license steward.
257
+
258
+ 4.3. Modified Versions.
259
+
260
+ When You are an Initial Developer and You want to create a
261
+ new license for Your Original Software, You may create and
262
+ use a modified version of this License if You: (a) rename
263
+ the license and remove any references to the name of the
264
+ license steward (except to note that the license differs
265
+ from this License); and (b) otherwise make it clear that
266
+ the license contains terms which differ from this License.
267
+
268
+
269
+ 5. DISCLAIMER OF WARRANTY.
270
+
271
+ COVERED SOFTWARE IS PROVIDED UNDER THIS LICENSE ON AN "AS IS"
272
+ BASIS, WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED,
273
+ INCLUDING, WITHOUT LIMITATION, WARRANTIES THAT THE COVERED
274
+ SOFTWARE IS FREE OF DEFECTS, MERCHANTABLE, FIT FOR A PARTICULAR
275
+ PURPOSE OR NON-INFRINGING. THE ENTIRE RISK AS TO THE QUALITY AND
276
+ PERFORMANCE OF THE COVERED SOFTWARE IS WITH YOU. SHOULD ANY
277
+ COVERED SOFTWARE PROVE DEFECTIVE IN ANY RESPECT, YOU (NOT THE
278
+ INITIAL DEVELOPER OR ANY OTHER CONTRIBUTOR) ASSUME THE COST OF
279
+ ANY NECESSARY SERVICING, REPAIR OR CORRECTION. THIS DISCLAIMER OF
280
+ WARRANTY CONSTITUTES AN ESSENTIAL PART OF THIS LICENSE. NO USE OF
281
+ ANY COVERED SOFTWARE IS AUTHORIZED HEREUNDER EXCEPT UNDER THIS
282
+ DISCLAIMER.
283
+
284
+ 6. TERMINATION.
285
+
286
+ 6.1. This License and the rights granted hereunder will
287
+ terminate automatically if You fail to comply with terms
288
+ herein and fail to cure such breach within 30 days of
289
+ becoming aware of the breach. Provisions which, by their
290
+ nature, must remain in effect beyond the termination of
291
+ this License shall survive.
292
+
293
+ 6.2. If You assert a patent infringement claim (excluding
294
+ declaratory judgment actions) against Initial Developer or
295
+ a Contributor (the Initial Developer or Contributor against
296
+ whom You assert such claim is referred to as "Participant")
297
+ alleging that the Participant Software (meaning the
298
+ Contributor Version where the Participant is a Contributor
299
+ or the Original Software where the Participant is the
300
+ Initial Developer) directly or indirectly infringes any
301
+ patent, then any and all rights granted directly or
302
+ indirectly to You by such Participant, the Initial
303
+ Developer (if the Initial Developer is not the Participant)
304
+ and all Contributors under Sections 2.1 and/or 2.2 of this
305
+ License shall, upon 60 days notice from Participant
306
+ terminate prospectively and automatically at the expiration
307
+ of such 60 day notice period, unless if within such 60 day
308
+ period You withdraw Your claim with respect to the
309
+ Participant Software against such Participant either
310
+ unilaterally or pursuant to a written agreement with
311
+ Participant.
312
+
313
+ 6.3. In the event of termination under Sections 6.1 or 6.2
314
+ above, all end user licenses that have been validly granted
315
+ by You or any distributor hereunder prior to termination
316
+ (excluding licenses granted to You by any distributor)
317
+ shall survive termination.
318
+
319
+ 7. LIMITATION OF LIABILITY.
320
+
321
+ UNDER NO CIRCUMSTANCES AND UNDER NO LEGAL THEORY, WHETHER TORT
322
+ (INCLUDING NEGLIGENCE), CONTRACT, OR OTHERWISE, SHALL YOU, THE
323
+ INITIAL DEVELOPER, ANY OTHER CONTRIBUTOR, OR ANY DISTRIBUTOR OF
324
+ COVERED SOFTWARE, OR ANY SUPPLIER OF ANY OF SUCH PARTIES, BE
325
+ LIABLE TO ANY PERSON FOR ANY INDIRECT, SPECIAL, INCIDENTAL, OR
326
+ CONSEQUENTIAL DAMAGES OF ANY CHARACTER INCLUDING, WITHOUT
327
+ LIMITATION, DAMAGES FOR LOST PROFITS, LOSS OF GOODWILL, WORK
328
+ STOPPAGE, COMPUTER FAILURE OR MALFUNCTION, OR ANY AND ALL OTHER
329
+ COMMERCIAL DAMAGES OR LOSSES, EVEN IF SUCH PARTY SHALL HAVE BEEN
330
+ INFORMED OF THE POSSIBILITY OF SUCH DAMAGES. THIS LIMITATION OF
331
+ LIABILITY SHALL NOT APPLY TO LIABILITY FOR DEATH OR PERSONAL
332
+ INJURY RESULTING FROM SUCH PARTY�S NEGLIGENCE TO THE EXTENT
333
+ APPLICABLE LAW PROHIBITS SUCH LIMITATION. SOME JURISDICTIONS DO
334
+ NOT ALLOW THE EXCLUSION OR LIMITATION OF INCIDENTAL OR
335
+ CONSEQUENTIAL DAMAGES, SO THIS EXCLUSION AND LIMITATION MAY NOT
336
+ APPLY TO YOU.
337
+
338
+ 8. U.S. GOVERNMENT END USERS.
339
+
340
+ The Covered Software is a "commercial item," as that term is
341
+ defined in 48 C.F.R. 2.101 (Oct. 1995), consisting of "commercial
342
+ computer software" (as that term is defined at 48 C.F.R. �
343
+ 252.227-7014(a)(1)) and "commercial computer software
344
+ documentation" as such terms are used in 48 C.F.R. 12.212 (Sept.
345
+ 1995). Consistent with 48 C.F.R. 12.212 and 48 C.F.R. 227.7202-1
346
+ through 227.7202-4 (June 1995), all U.S. Government End Users
347
+ acquire Covered Software with only those rights set forth herein.
348
+ This U.S. Government Rights clause is in lieu of, and supersedes,
349
+ any other FAR, DFAR, or other clause or provision that addresses
350
+ Government rights in computer software under this License.
351
+
352
+ 9. MISCELLANEOUS.
353
+
354
+ This License represents the complete agreement concerning subject
355
+ matter hereof. If any provision of this License is held to be
356
+ unenforceable, such provision shall be reformed only to the
357
+ extent necessary to make it enforceable. This License shall be
358
+ governed by the law of the jurisdiction specified in a notice
359
+ contained within the Original Software (except to the extent
360
+ applicable law, if any, provides otherwise), excluding such
361
+ jurisdiction�s conflict-of-law provisions. Any litigation
362
+ relating to this License shall be subject to the jurisdiction of
363
+ the courts located in the jurisdiction and venue specified in a
364
+ notice contained within the Original Software, with the losing
365
+ party responsible for costs, including, without limitation, court
366
+ costs and reasonable attorneys� fees and expenses. The
367
+ application of the United Nations Convention on Contracts for the
368
+ International Sale of Goods is expressly excluded. Any law or
369
+ regulation which provides that the language of a contract shall
370
+ be construed against the drafter shall not apply to this License.
371
+ You agree that You alone are responsible for compliance with the
372
+ United States export administration regulations (and the export
373
+ control laws and regulation of any other countries) when You use,
374
+ distribute or otherwise make available any Covered Software.
375
+
376
+ 10. RESPONSIBILITY FOR CLAIMS.
377
+
378
+ As between Initial Developer and the Contributors, each party is
379
+ responsible for claims and damages arising, directly or
380
+ indirectly, out of its utilization of rights under this License
381
+ and You agree to work with Initial Developer and Contributors to
382
+ distribute such responsibility on an equitable basis. Nothing
383
+ herein is intended or shall be deemed to constitute any admission
384
+ of liability.
385
+
386
+ NOTICE PURSUANT TO SECTION 9 OF THE COMMON DEVELOPMENT AND
387
+ DISTRIBUTION LICENSE (CDDL)
388
+
389
+ The code released under the CDDL shall be governed by the laws of
390
+ the State of California (excluding conflict-of-law provisions).
391
+ Any litigation relating to this License shall be subject to the
392
+ jurisdiction of the Federal Courts of the Northern District of
393
+ California and the state courts of the State of California, with
394
+ venue lying in Santa Clara County, California.
395
+
396
+
397
+
398
+
399
+
400
+
401
+
402
+ GNU GENERAL PUBLIC LICENSE
403
+ Version 2, June 1991
404
+
405
+ Copyright (C) 1989, 1991 Free Software Foundation, Inc.
406
+ 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA
407
+ Everyone is permitted to copy and distribute verbatim copies
408
+ of this license document, but changing it is not allowed.
409
+
410
+ Preamble
411
+
412
+ The licenses for most software are designed to take away your
413
+ freedom to share and change it. By contrast, the GNU General Public
414
+ License is intended to guarantee your freedom to share and change free
415
+ software--to make sure the software is free for all its users. This
416
+ General Public License applies to most of the Free Software
417
+ Foundation's software and to any other program whose authors commit to
418
+ using it. (Some other Free Software Foundation software is covered by
419
+ the GNU Library General Public License instead.) You can apply it to
420
+ your programs, too.
421
+
422
+ When we speak of free software, we are referring to freedom, not
423
+ price. Our General Public Licenses are designed to make sure that you
424
+ have the freedom to distribute copies of free software (and charge for
425
+ this service if you wish), that you receive source code or can get it
426
+ if you want it, that you can change the software or use pieces of it
427
+ in new free programs; and that you know you can do these things.
428
+
429
+ To protect your rights, we need to make restrictions that forbid
430
+ anyone to deny you these rights or to ask you to surrender the rights.
431
+ These restrictions translate to certain responsibilities for you if you
432
+ distribute copies of the software, or if you modify it.
433
+
434
+ For example, if you distribute copies of such a program, whether
435
+ gratis or for a fee, you must give the recipients all the rights that
436
+ you have. You must make sure that they, too, receive or can get the
437
+ source code. And you must show them these terms so they know their
438
+ rights.
439
+
440
+ We protect your rights with two steps: (1) copyright the software, and
441
+ (2) offer you this license which gives you legal permission to copy,
442
+ distribute and/or modify the software.
443
+
444
+ Also, for each author's protection and ours, we want to make certain
445
+ that everyone understands that there is no warranty for this free
446
+ software. If the software is modified by someone else and passed on, we
447
+ want its recipients to know that what they have is not the original, so
448
+ that any problems introduced by others will not reflect on the original
449
+ authors' reputations.
450
+
451
+ Finally, any free program is threatened constantly by software
452
+ patents. We wish to avoid the danger that redistributors of a free
453
+ program will individually obtain patent licenses, in effect making the
454
+ program proprietary. To prevent this, we have made it clear that any
455
+ patent must be licensed for everyone's free use or not licensed at all.
456
+
457
+ The precise terms and conditions for copying, distribution and
458
+ modification follow.
459
+
460
+ GNU GENERAL PUBLIC LICENSE
461
+ TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
462
+
463
+ 0. This License applies to any program or other work which contains
464
+ a notice placed by the copyright holder saying it may be distributed
465
+ under the terms of this General Public License. The "Program", below,
466
+ refers to any such program or work, and a "work based on the Program"
467
+ means either the Program or any derivative work under copyright law:
468
+ that is to say, a work containing the Program or a portion of it,
469
+ either verbatim or with modifications and/or translated into another
470
+ language. (Hereinafter, translation is included without limitation in
471
+ the term "modification".) Each licensee is addressed as "you".
472
+
473
+ Activities other than copying, distribution and modification are not
474
+ covered by this License; they are outside its scope. The act of
475
+ running the Program is not restricted, and the output from the Program
476
+ is covered only if its contents constitute a work based on the
477
+ Program (independent of having been made by running the Program).
478
+ Whether that is true depends on what the Program does.
479
+
480
+ 1. You may copy and distribute verbatim copies of the Program's
481
+ source code as you receive it, in any medium, provided that you
482
+ conspicuously and appropriately publish on each copy an appropriate
483
+ copyright notice and disclaimer of warranty; keep intact all the
484
+ notices that refer to this License and to the absence of any warranty;
485
+ and give any other recipients of the Program a copy of this License
486
+ along with the Program.
487
+
488
+ You may charge a fee for the physical act of transferring a copy, and
489
+ you may at your option offer warranty protection in exchange for a fee.
490
+
491
+ 2. You may modify your copy or copies of the Program or any portion
492
+ of it, thus forming a work based on the Program, and copy and
493
+ distribute such modifications or work under the terms of Section 1
494
+ above, provided that you also meet all of these conditions:
495
+
496
+ a) You must cause the modified files to carry prominent notices
497
+ stating that you changed the files and the date of any change.
498
+
499
+ b) You must cause any work that you distribute or publish, that in
500
+ whole or in part contains or is derived from the Program or any
501
+ part thereof, to be licensed as a whole at no charge to all third
502
+ parties under the terms of this License.
503
+
504
+ c) If the modified program normally reads commands interactively
505
+ when run, you must cause it, when started running for such
506
+ interactive use in the most ordinary way, to print or display an
507
+ announcement including an appropriate copyright notice and a
508
+ notice that there is no warranty (or else, saying that you provide
509
+ a warranty) and that users may redistribute the program under
510
+ these conditions, and telling the user how to view a copy of this
511
+ License. (Exception: if the Program itself is interactive but
512
+ does not normally print such an announcement, your work based on
513
+ the Program is not required to print an announcement.)
514
+
515
+ These requirements apply to the modified work as a whole. If
516
+ identifiable sections of that work are not derived from the Program,
517
+ and can be reasonably considered independent and separate works in
518
+ themselves, then this License, and its terms, do not apply to those
519
+ sections when you distribute them as separate works. But when you
520
+ distribute the same sections as part of a whole which is a work based
521
+ on the Program, the distribution of the whole must be on the terms of
522
+ this License, whose permissions for other licensees extend to the
523
+ entire whole, and thus to each and every part regardless of who wrote it.
524
+
525
+ Thus, it is not the intent of this section to claim rights or contest
526
+ your rights to work written entirely by you; rather, the intent is to
527
+ exercise the right to control the distribution of derivative or
528
+ collective works based on the Program.
529
+
530
+ In addition, mere aggregation of another work not based on the Program
531
+ with the Program (or with a work based on the Program) on a volume of
532
+ a storage or distribution medium does not bring the other work under
533
+ the scope of this License.
534
+
535
+ 3. You may copy and distribute the Program (or a work based on it,
536
+ under Section 2) in object code or executable form under the terms of
537
+ Sections 1 and 2 above provided that you also do one of the following:
538
+
539
+ a) Accompany it with the complete corresponding machine-readable
540
+ source code, which must be distributed under the terms of Sections
541
+ 1 and 2 above on a medium customarily used for software
542
+ interchange; or,
543
+
544
+ b) Accompany it with a written offer, valid for at least three
545
+ years, to give any third party, for a charge no more than your
546
+ cost of physically performing source distribution, a complete
547
+ machine-readable copy of the corresponding source code, to be
548
+ distributed under the terms of Sections 1 and 2 above on a medium
549
+ customarily used for software interchange; or,
550
+
551
+ c) Accompany it with the information you received as to the offer
552
+ to distribute corresponding source code. (This alternative is
553
+ allowed only for noncommercial distribution and only if you
554
+ received the program in object code or executable form with such
555
+ an offer, in accord with Subsection b above.)
556
+
557
+ The source code for a work means the preferred form of the work for
558
+ making modifications to it. For an executable work, complete source
559
+ code means all the source code for all modules it contains, plus any
560
+ associated interface definition files, plus the scripts used to
561
+ control compilation and installation of the executable. However, as a
562
+ special exception, the source code distributed need not include
563
+ anything that is normally distributed (in either source or binary
564
+ form) with the major components (compiler, kernel, and so on) of the
565
+ operating system on which the executable runs, unless that component
566
+ itself accompanies the executable.
567
+
568
+ If distribution of executable or object code is made by offering
569
+ access to copy from a designated place, then offering equivalent
570
+ access to copy the source code from the same place counts as
571
+ distribution of the source code, even though third parties are not
572
+ compelled to copy the source along with the object code.
573
+
574
+ 4. You may not copy, modify, sublicense, or distribute the Program
575
+ except as expressly provided under this License. Any attempt
576
+ otherwise to copy, modify, sublicense or distribute the Program is
577
+ void, and will automatically terminate your rights under this License.
578
+ However, parties who have received copies, or rights, from you under
579
+ this License will not have their licenses terminated so long as such
580
+ parties remain in full compliance.
581
+
582
+ 5. You are not required to accept this License, since you have not
583
+ signed it. However, nothing else grants you permission to modify or
584
+ distribute the Program or its derivative works. These actions are
585
+ prohibited by law if you do not accept this License. Therefore, by
586
+ modifying or distributing the Program (or any work based on the
587
+ Program), you indicate your acceptance of this License to do so, and
588
+ all its terms and conditions for copying, distributing or modifying
589
+ the Program or works based on it.
590
+
591
+ 6. Each time you redistribute the Program (or any work based on the
592
+ Program), the recipient automatically receives a license from the
593
+ original licensor to copy, distribute or modify the Program subject to
594
+ these terms and conditions. You may not impose any further
595
+ restrictions on the recipients' exercise of the rights granted herein.
596
+ You are not responsible for enforcing compliance by third parties to
597
+ this License.
598
+
599
+ 7. If, as a consequence of a court judgment or allegation of patent
600
+ infringement or for any other reason (not limited to patent issues),
601
+ conditions are imposed on you (whether by court order, agreement or
602
+ otherwise) that contradict the conditions of this License, they do not
603
+ excuse you from the conditions of this License. If you cannot
604
+ distribute so as to satisfy simultaneously your obligations under this
605
+ License and any other pertinent obligations, then as a consequence you
606
+ may not distribute the Program at all. For example, if a patent
607
+ license would not permit royalty-free redistribution of the Program by
608
+ all those who receive copies directly or indirectly through you, then
609
+ the only way you could satisfy both it and this License would be to
610
+ refrain entirely from distribution of the Program.
611
+
612
+ If any portion of this section is held invalid or unenforceable under
613
+ any particular circumstance, the balance of the section is intended to
614
+ apply and the section as a whole is intended to apply in other
615
+ circumstances.
616
+
617
+ It is not the purpose of this section to induce you to infringe any
618
+ patents or other property right claims or to contest validity of any
619
+ such claims; this section has the sole purpose of protecting the
620
+ integrity of the free software distribution system, which is
621
+ implemented by public license practices. Many people have made
622
+ generous contributions to the wide range of software distributed
623
+ through that system in reliance on consistent application of that
624
+ system; it is up to the author/donor to decide if he or she is willing
625
+ to distribute software through any other system and a licensee cannot
626
+ impose that choice.
627
+
628
+ This section is intended to make thoroughly clear what is believed to
629
+ be a consequence of the rest of this License.
630
+
631
+ 8. If the distribution and/or use of the Program is restricted in
632
+ certain countries either by patents or by copyrighted interfaces, the
633
+ original copyright holder who places the Program under this License
634
+ may add an explicit geographical distribution limitation excluding
635
+ those countries, so that distribution is permitted only in or among
636
+ countries not thus excluded. In such case, this License incorporates
637
+ the limitation as if written in the body of this License.
638
+
639
+ 9. The Free Software Foundation may publish revised and/or new versions
640
+ of the General Public License from time to time. Such new versions will
641
+ be similar in spirit to the present version, but may differ in detail to
642
+ address new problems or concerns.
643
+
644
+ Each version is given a distinguishing version number. If the Program
645
+ specifies a version number of this License which applies to it and
646
+ "any later version", you have the option of following the terms and
647
+ conditions either of that version or of any later version published by
648
+ the Free Software Foundation. If the Program does not specify a
649
+ version number of this License, you may choose any version ever
650
+ published by the Free Software Foundation.
651
+
652
+ 10. If you wish to incorporate parts of the Program into other free
653
+ programs whose distribution conditions are different, write to the author
654
+ to ask for permission. For software which is copyrighted by the Free
655
+ Software Foundation, write to the Free Software Foundation; we sometimes
656
+ make exceptions for this. Our decision will be guided by the two goals
657
+ of preserving the free status of all derivatives of our free software and
658
+ of promoting the sharing and reuse of software generally.
659
+
660
+ NO WARRANTY
661
+
662
+ 11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO
663
+ WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW.
664
+ EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR
665
+ OTHER PARTIES PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY
666
+ KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE
667
+ IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
668
+ PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE
669
+ PROGRAM IS WITH YOU. SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME
670
+ THE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION.
671
+
672
+ 12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN
673
+ WRITING WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY
674
+ AND/OR REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU
675
+ FOR DAMAGES, INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR
676
+ CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR INABILITY TO USE THE
677
+ PROGRAM (INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA BEING
678
+ RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A
679
+ FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER PROGRAMS), EVEN IF
680
+ SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH
681
+ DAMAGES.
682
+
683
+ END OF TERMS AND CONDITIONS
684
+
685
+ How to Apply These Terms to Your New Programs
686
+
687
+ If you develop a new program, and you want it to be of the greatest
688
+ possible use to the public, the best way to achieve this is to make it
689
+ free software which everyone can redistribute and change under these
690
+ terms.
691
+
692
+ To do so, attach the following notices to the program. It is safest
693
+ to attach them to the start of each source file to most effectively
694
+ convey the exclusion of warranty; and each file should have at least
695
+ the "copyright" line and a pointer to where the full notice is found.
696
+
697
+ <one line to give the program's name and a brief idea of what it does.>
698
+ Copyright (C) <year> <name of author>
699
+
700
+ This program is free software; you can redistribute it and/or modify
701
+ it under the terms of the GNU General Public License as published by
702
+ the Free Software Foundation; either version 2 of the License, or
703
+ (at your option) any later version.
704
+
705
+ This program is distributed in the hope that it will be useful,
706
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
707
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
708
+ GNU General Public License for more details.
709
+
710
+ You should have received a copy of the GNU General Public License
711
+ along with this program; if not, write to the Free Software
712
+ Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA
713
+
714
+
715
+ Also add information on how to contact you by electronic and paper mail.
716
+
717
+ If the program is interactive, make it output a short notice like this
718
+ when it starts in an interactive mode:
719
+
720
+ Gnomovision version 69, Copyright (C) year name of author
721
+ Gnomovision comes with ABSOLUTELY NO WARRANTY; for details type `show w'.
722
+ This is free software, and you are welcome to redistribute it
723
+ under certain conditions; type `show c' for details.
724
+
725
+ The hypothetical commands `show w' and `show c' should show the appropriate
726
+ parts of the General Public License. Of course, the commands you use may
727
+ be called something other than `show w' and `show c'; they could even be
728
+ mouse-clicks or menu items--whatever suits your program.
729
+
730
+ You should also get your employer (if you work as a programmer) or your
731
+ school, if any, to sign a "copyright disclaimer" for the program, if
732
+ necessary. Here is a sample; alter the names:
733
+
734
+ Yoyodyne, Inc., hereby disclaims all copyright interest in the program
735
+ `Gnomovision' (which makes passes at compilers) written by James Hacker.
736
+
737
+ <signature of Ty Coon>, 1 April 1989
738
+ Ty Coon, President of Vice
739
+
740
+ This General Public License does not permit incorporating your program into
741
+ proprietary programs. If your program is a subroutine library, you may
742
+ consider it more useful to permit linking proprietary applications with the
743
+ library. If this is what you want to do, use the GNU Library General
744
+ Public License instead of this License.
745
+
746
+
747
+
748
+ "CLASSPATH" EXCEPTION TO THE GPL VERSION 2
749
+
750
+ Certain source files distributed by Sun Microsystems, Inc. are subject
751
+ to the following clarification and special exception to the GPL Version
752
+ 2, but only where Sun has expressly included in the particular source
753
+ file's header the words
754
+
755
+ "Sun designates this particular file as subject to the "Classpath"
756
+ exception as provided by Sun in the License file that accompanied this
757
+ code."
758
+
759
+ Linking this library statically or dynamically with other modules is
760
+ making a combined work based on this library. Thus, the terms and
761
+ conditions of the GNU General Public License Version 2 cover the whole
762
+ combination.
763
+
764
+ As a special exception, the copyright holders of this library give you
765
+ permission to link this library with independent modules to produce an
766
+ executable, regardless of the license terms of these independent modules,
767
+ and to copy and distribute the resulting executable under terms of your
768
+ choice, provided that you also meet, for each linked independent module,
769
+ the terms and conditions of the license of that module.? An independent
770
+ module is a module which is not derived from or based on this library.?
771
+ If you modify this library, you may extend this exception to your
772
+ version of the library, but you are not obligated to do so.? If you do
773
+ not wish to do so, delete this exception statement from your version.
774
+