diff --git a/.gitignore b/.gitignore index aa1f7a8..4cb94f3 100644 --- a/.gitignore +++ b/.gitignore @@ -1 +1 @@ -woff-code-latest.zip +/woff-code-latest.zip diff --git a/21.patch b/21.patch deleted file mode 100644 index 47ad6f7..0000000 --- a/21.patch +++ /dev/null @@ -1,82 +0,0 @@ -From a6a68208356f3d6e32bb3f32efbdb86cd9695f55 Mon Sep 17 00:00:00 2001 -From: "Benjamin A. Beasley" -Date: Sat, 10 May 2025 21:47:31 -0400 -Subject: [PATCH] Update GPL/LGPL license texts for remote-only FSF - -The FSF is now remote-only and no longer has a street address. - -The license texts LICENSE-WOFF-GPL and LICENSE-WOFF-LGPL are updated -from https://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt and -https://www.gnu.org/licenses/old-licenses/gpl-2.0.txt, respectively. ---- - LICENSE-WOFF-GPL | 9 ++++----- - LICENSE-WOFF-LGPL | 9 ++++----- - 2 files changed, 8 insertions(+), 10 deletions(-) - -diff --git a/LICENSE-WOFF-GPL b/LICENSE-WOFF-GPL -index d159169..9efa6fb 100644 ---- a/LICENSE-WOFF-GPL -+++ b/LICENSE-WOFF-GPL -@@ -2,7 +2,7 @@ - Version 2, June 1991 - - Copyright (C) 1989, 1991 Free Software Foundation, Inc., -- 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA -+ - Everyone is permitted to copy and distribute verbatim copies - of this license document, but changing it is not allowed. - -@@ -304,8 +304,7 @@ the "copyright" line and a pointer to where the full notice is found. - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License along -- with this program; if not, write to the Free Software Foundation, Inc., -- 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. -+ with this program; if not, see . - - Also add information on how to contact you by electronic and paper mail. - -@@ -329,8 +328,8 @@ necessary. Here is a sample; alter the names: - Yoyodyne, Inc., hereby disclaims all copyright interest in the program - `Gnomovision' (which makes passes at compilers) written by James Hacker. - -- , 1 April 1989 -- Ty Coon, President of Vice -+ , 1 April 1989 -+ Moe Ghoul, President of Vice - - This General Public License does not permit incorporating your program into - proprietary programs. If your program is a subroutine library, you may -diff --git a/LICENSE-WOFF-LGPL b/LICENSE-WOFF-LGPL -index 4362b49..f6683e7 100644 ---- a/LICENSE-WOFF-LGPL -+++ b/LICENSE-WOFF-LGPL -@@ -2,7 +2,7 @@ - Version 2.1, February 1999 - - Copyright (C) 1991, 1999 Free Software Foundation, Inc. -- 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA -+ - Everyone is permitted to copy and distribute verbatim copies - of this license document, but changing it is not allowed. - -@@ -484,8 +484,7 @@ convey the exclusion of warranty; and each file should have at least the - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public -- License along with this library; if not, write to the Free Software -- Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA -+ License along with this library; if not, see . - - Also add information on how to contact you by electronic and paper mail. - -@@ -496,7 +495,7 @@ necessary. Here is a sample; alter the names: - Yoyodyne, Inc., hereby disclaims all copyright interest in the - library `Frob' (a library for tweaking knobs) written by James Random Hacker. - -- , 1 April 1990 -- Ty Coon, President of Vice -+ , 1 April 1990 -+ Moe Ghoul, President of Vice - - That's all there is to it! diff --git a/7e08f1c944142c8e37050d9e02d91ec326d60ba5.patch b/7e08f1c944142c8e37050d9e02d91ec326d60ba5.patch deleted file mode 100644 index bfe690b..0000000 --- a/7e08f1c944142c8e37050d9e02d91ec326d60ba5.patch +++ /dev/null @@ -1,1348 +0,0 @@ -From 7e08f1c944142c8e37050d9e02d91ec326d60ba5 Mon Sep 17 00:00:00 2001 -From: Benjamin Beasley -Date: Tue, 20 Oct 2020 14:30:18 -0400 -Subject: [PATCH] Add full text of the three WOFF licenses: - - - LICENSE-WOFF-MPL, from - https://www.mozilla.org/media/MPL/1.1/index.0c5913925d40.txt - - LICENSE-WOFF-GPL, from - https://www.gnu.org/licenses/old-licenses/gpl-2.0.txt - - LICENSE-WOFF-LGPL, from - https://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt ---- - LICENSE-WOFF-GPL | 339 +++++++++++++++++++++++++++++++ - LICENSE-WOFF-LGPL | 502 ++++++++++++++++++++++++++++++++++++++++++++++ - LICENSE-WOFF-MPL | 469 +++++++++++++++++++++++++++++++++++++++++++ - 3 files changed, 1310 insertions(+) - create mode 100644 LICENSE-WOFF-GPL - create mode 100644 LICENSE-WOFF-LGPL - create mode 100644 LICENSE-WOFF-MPL - -diff --git a/LICENSE-WOFF-GPL b/LICENSE-WOFF-GPL -new file mode 100644 -index 0000000..d159169 ---- /dev/null -+++ b/LICENSE-WOFF-GPL -@@ -0,0 +1,339 @@ -+ GNU GENERAL PUBLIC LICENSE -+ Version 2, June 1991 -+ -+ Copyright (C) 1989, 1991 Free Software Foundation, Inc., -+ 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA -+ Everyone is permitted to copy and distribute verbatim copies -+ of this license document, but changing it is not allowed. -+ -+ Preamble -+ -+ The licenses for most software are designed to take away your -+freedom to share and change it. By contrast, the GNU General Public -+License is intended to guarantee your freedom to share and change free -+software--to make sure the software is free for all its users. This -+General Public License applies to most of the Free Software -+Foundation's software and to any other program whose authors commit to -+using it. (Some other Free Software Foundation software is covered by -+the GNU Lesser General Public License instead.) You can apply it to -+your programs, too. -+ -+ When we speak of free software, we are referring to freedom, not -+price. Our General Public Licenses are designed to make sure that you -+have the freedom to distribute copies of free software (and charge for -+this service if you wish), that you receive source code or can get it -+if you want it, that you can change the software or use pieces of it -+in new free programs; and that you know you can do these things. -+ -+ To protect your rights, we need to make restrictions that forbid -+anyone to deny you these rights or to ask you to surrender the rights. -+These restrictions translate to certain responsibilities for you if you -+distribute copies of the software, or if you modify it. -+ -+ For example, if you distribute copies of such a program, whether -+gratis or for a fee, you must give the recipients all the rights that -+you have. You must make sure that they, too, receive or can get the -+source code. And you must show them these terms so they know their -+rights. -+ -+ We protect your rights with two steps: (1) copyright the software, and -+(2) offer you this license which gives you legal permission to copy, -+distribute and/or modify the software. -+ -+ Also, for each author's protection and ours, we want to make certain -+that everyone understands that there is no warranty for this free -+software. If the software is modified by someone else and passed on, we -+want its recipients to know that what they have is not the original, so -+that any problems introduced by others will not reflect on the original -+authors' reputations. -+ -+ Finally, any free program is threatened constantly by software -+patents. We wish to avoid the danger that redistributors of a free -+program will individually obtain patent licenses, in effect making the -+program proprietary. To prevent this, we have made it clear that any -+patent must be licensed for everyone's free use or not licensed at all. -+ -+ The precise terms and conditions for copying, distribution and -+modification follow. -+ -+ GNU GENERAL PUBLIC LICENSE -+ TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION -+ -+ 0. This License applies to any program or other work which contains -+a notice placed by the copyright holder saying it may be distributed -+under the terms of this General Public License. The "Program", below, -+refers to any such program or work, and a "work based on the Program" -+means either the Program or any derivative work under copyright law: -+that is to say, a work containing the Program or a portion of it, -+either verbatim or with modifications and/or translated into another -+language. (Hereinafter, translation is included without limitation in -+the term "modification".) Each licensee is addressed as "you". -+ -+Activities other than copying, distribution and modification are not -+covered by this License; they are outside its scope. The act of -+running the Program is not restricted, and the output from the Program -+is covered only if its contents constitute a work based on the -+Program (independent of having been made by running the Program). -+Whether that is true depends on what the Program does. -+ -+ 1. You may copy and distribute verbatim copies of the Program's -+source code as you receive it, in any medium, provided that you -+conspicuously and appropriately publish on each copy an appropriate -+copyright notice and disclaimer of warranty; keep intact all the -+notices that refer to this License and to the absence of any warranty; -+and give any other recipients of the Program a copy of this License -+along with the Program. -+ -+You may charge a fee for the physical act of transferring a copy, and -+you may at your option offer warranty protection in exchange for a fee. -+ -+ 2. You may modify your copy or copies of the Program or any portion -+of it, thus forming a work based on the Program, and copy and -+distribute such modifications or work under the terms of Section 1 -+above, provided that you also meet all of these conditions: -+ -+ a) You must cause the modified files to carry prominent notices -+ stating that you changed the files and the date of any change. -+ -+ b) You must cause any work that you distribute or publish, that in -+ whole or in part contains or is derived from the Program or any -+ part thereof, to be licensed as a whole at no charge to all third -+ parties under the terms of this License. -+ -+ c) If the modified program normally reads commands interactively -+ when run, you must cause it, when started running for such -+ interactive use in the most ordinary way, to print or display an -+ announcement including an appropriate copyright notice and a -+ notice that there is no warranty (or else, saying that you provide -+ a warranty) and that users may redistribute the program under -+ these conditions, and telling the user how to view a copy of this -+ License. (Exception: if the Program itself is interactive but -+ does not normally print such an announcement, your work based on -+ the Program is not required to print an announcement.) -+ -+These requirements apply to the modified work as a whole. If -+identifiable sections of that work are not derived from the Program, -+and can be reasonably considered independent and separate works in -+themselves, then this License, and its terms, do not apply to those -+sections when you distribute them as separate works. But when you -+distribute the same sections as part of a whole which is a work based -+on the Program, the distribution of the whole must be on the terms of -+this License, whose permissions for other licensees extend to the -+entire whole, and thus to each and every part regardless of who wrote it. -+ -+Thus, it is not the intent of this section to claim rights or contest -+your rights to work written entirely by you; rather, the intent is to -+exercise the right to control the distribution of derivative or -+collective works based on the Program. -+ -+In addition, mere aggregation of another work not based on the Program -+with the Program (or with a work based on the Program) on a volume of -+a storage or distribution medium does not bring the other work under -+the scope of this License. -+ -+ 3. You may copy and distribute the Program (or a work based on it, -+under Section 2) in object code or executable form under the terms of -+Sections 1 and 2 above provided that you also do one of the following: -+ -+ a) Accompany it with the complete corresponding machine-readable -+ source code, which must be distributed under the terms of Sections -+ 1 and 2 above on a medium customarily used for software interchange; or, -+ -+ b) Accompany it with a written offer, valid for at least three -+ years, to give any third party, for a charge no more than your -+ cost of physically performing source distribution, a complete -+ machine-readable copy of the corresponding source code, to be -+ distributed under the terms of Sections 1 and 2 above on a medium -+ customarily used for software interchange; or, -+ -+ c) Accompany it with the information you received as to the offer -+ to distribute corresponding source code. (This alternative is -+ allowed only for noncommercial distribution and only if you -+ received the program in object code or executable form with such -+ an offer, in accord with Subsection b above.) -+ -+The source code for a work means the preferred form of the work for -+making modifications to it. For an executable work, complete source -+code means all the source code for all modules it contains, plus any -+associated interface definition files, plus the scripts used to -+control compilation and installation of the executable. However, as a -+special exception, the source code distributed need not include -+anything that is normally distributed (in either source or binary -+form) with the major components (compiler, kernel, and so on) of the -+operating system on which the executable runs, unless that component -+itself accompanies the executable. -+ -+If distribution of executable or object code is made by offering -+access to copy from a designated place, then offering equivalent -+access to copy the source code from the same place counts as -+distribution of the source code, even though third parties are not -+compelled to copy the source along with the object code. -+ -+ 4. You may not copy, modify, sublicense, or distribute the Program -+except as expressly provided under this License. Any attempt -+otherwise to copy, modify, sublicense or distribute the Program is -+void, and will automatically terminate your rights under this License. -+However, parties who have received copies, or rights, from you under -+this License will not have their licenses terminated so long as such -+parties remain in full compliance. -+ -+ 5. You are not required to accept this License, since you have not -+signed it. However, nothing else grants you permission to modify or -+distribute the Program or its derivative works. These actions are -+prohibited by law if you do not accept this License. Therefore, by -+modifying or distributing the Program (or any work based on the -+Program), you indicate your acceptance of this License to do so, and -+all its terms and conditions for copying, distributing or modifying -+the Program or works based on it. -+ -+ 6. Each time you redistribute the Program (or any work based on the -+Program), the recipient automatically receives a license from the -+original licensor to copy, distribute or modify the Program subject to -+these terms and conditions. You may not impose any further -+restrictions on the recipients' exercise of the rights granted herein. -+You are not responsible for enforcing compliance by third parties to -+this License. -+ -+ 7. If, as a consequence of a court judgment or allegation of patent -+infringement or for any other reason (not limited to patent issues), -+conditions are imposed on you (whether by court order, agreement or -+otherwise) that contradict the conditions of this License, they do not -+excuse you from the conditions of this License. If you cannot -+distribute so as to satisfy simultaneously your obligations under this -+License and any other pertinent obligations, then as a consequence you -+may not distribute the Program at all. For example, if a patent -+license would not permit royalty-free redistribution of the Program by -+all those who receive copies directly or indirectly through you, then -+the only way you could satisfy both it and this License would be to -+refrain entirely from distribution of the Program. -+ -+If any portion of this section is held invalid or unenforceable under -+any particular circumstance, the balance of the section is intended to -+apply and the section as a whole is intended to apply in other -+circumstances. -+ -+It is not the purpose of this section to induce you to infringe any -+patents or other property right claims or to contest validity of any -+such claims; this section has the sole purpose of protecting the -+integrity of the free software distribution system, which is -+implemented by public license practices. Many people have made -+generous contributions to the wide range of software distributed -+through that system in reliance on consistent application of that -+system; it is up to the author/donor to decide if he or she is willing -+to distribute software through any other system and a licensee cannot -+impose that choice. -+ -+This section is intended to make thoroughly clear what is believed to -+be a consequence of the rest of this License. -+ -+ 8. If the distribution and/or use of the Program is restricted in -+certain countries either by patents or by copyrighted interfaces, the -+original copyright holder who places the Program under this License -+may add an explicit geographical distribution limitation excluding -+those countries, so that distribution is permitted only in or among -+countries not thus excluded. In such case, this License incorporates -+the limitation as if written in the body of this License. -+ -+ 9. The Free Software Foundation may publish revised and/or new versions -+of the General Public License from time to time. Such new versions will -+be similar in spirit to the present version, but may differ in detail to -+address new problems or concerns. -+ -+Each version is given a distinguishing version number. If the Program -+specifies a version number of this License which applies to it and "any -+later version", you have the option of following the terms and conditions -+either of that version or of any later version published by the Free -+Software Foundation. If the Program does not specify a version number of -+this License, you may choose any version ever published by the Free Software -+Foundation. -+ -+ 10. If you wish to incorporate parts of the Program into other free -+programs whose distribution conditions are different, write to the author -+to ask for permission. For software which is copyrighted by the Free -+Software Foundation, write to the Free Software Foundation; we sometimes -+make exceptions for this. Our decision will be guided by the two goals -+of preserving the free status of all derivatives of our free software and -+of promoting the sharing and reuse of software generally. -+ -+ NO WARRANTY -+ -+ 11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY -+FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN -+OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES -+PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED -+OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF -+MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS -+TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE -+PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING, -+REPAIR OR CORRECTION. -+ -+ 12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING -+WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR -+REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, -+INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING -+OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED -+TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY -+YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER -+PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE -+POSSIBILITY OF SUCH DAMAGES. -+ -+ END OF TERMS AND CONDITIONS -+ -+ How to Apply These Terms to Your New Programs -+ -+ If you develop a new program, and you want it to be of the greatest -+possible use to the public, the best way to achieve this is to make it -+free software which everyone can redistribute and change under these terms. -+ -+ To do so, attach the following notices to the program. It is safest -+to attach them to the start of each source file to most effectively -+convey the exclusion of warranty; and each file should have at least -+the "copyright" line and a pointer to where the full notice is found. -+ -+ -+ Copyright (C) -+ -+ 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; if not, write to the Free Software Foundation, Inc., -+ 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. -+ -+Also add information on how to contact you by electronic and paper mail. -+ -+If the program is interactive, make it output a short notice like this -+when it starts in an interactive mode: -+ -+ Gnomovision version 69, Copyright (C) year name of author -+ Gnomovision comes with ABSOLUTELY NO WARRANTY; for details type `show w'. -+ This is free software, and you are welcome to redistribute it -+ under certain conditions; type `show c' for details. -+ -+The hypothetical commands `show w' and `show c' should show the appropriate -+parts of the General Public License. Of course, the commands you use may -+be called something other than `show w' and `show c'; they could even be -+mouse-clicks or menu items--whatever suits your program. -+ -+You should also get your employer (if you work as a programmer) or your -+school, if any, to sign a "copyright disclaimer" for the program, if -+necessary. Here is a sample; alter the names: -+ -+ Yoyodyne, Inc., hereby disclaims all copyright interest in the program -+ `Gnomovision' (which makes passes at compilers) written by James Hacker. -+ -+ , 1 April 1989 -+ Ty Coon, President of Vice -+ -+This General Public License does not permit incorporating your program into -+proprietary programs. If your program is a subroutine library, you may -+consider it more useful to permit linking proprietary applications with the -+library. If this is what you want to do, use the GNU Lesser General -+Public License instead of this License. -diff --git a/LICENSE-WOFF-LGPL b/LICENSE-WOFF-LGPL -new file mode 100644 -index 0000000..4362b49 ---- /dev/null -+++ b/LICENSE-WOFF-LGPL -@@ -0,0 +1,502 @@ -+ GNU LESSER GENERAL PUBLIC LICENSE -+ Version 2.1, February 1999 -+ -+ Copyright (C) 1991, 1999 Free Software Foundation, Inc. -+ 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA -+ Everyone is permitted to copy and distribute verbatim copies -+ of this license document, but changing it is not allowed. -+ -+[This is the first released version of the Lesser GPL. It also counts -+ as the successor of the GNU Library Public License, version 2, hence -+ the version number 2.1.] -+ -+ Preamble -+ -+ The licenses for most software are designed to take away your -+freedom to share and change it. By contrast, the GNU General Public -+Licenses are intended to guarantee your freedom to share and change -+free software--to make sure the software is free for all its users. -+ -+ This license, the Lesser General Public License, applies to some -+specially designated software packages--typically libraries--of the -+Free Software Foundation and other authors who decide to use it. You -+can use it too, but we suggest you first think carefully about whether -+this license or the ordinary General Public License is the better -+strategy to use in any particular case, based on the explanations below. -+ -+ When we speak of free software, we are referring to freedom of use, -+not price. Our General Public Licenses are designed to make sure that -+you have the freedom to distribute copies of free software (and charge -+for this service if you wish); that you receive source code or can get -+it if you want it; that you can change the software and use pieces of -+it in new free programs; and that you are informed that you can do -+these things. -+ -+ To protect your rights, we need to make restrictions that forbid -+distributors to deny you these rights or to ask you to surrender these -+rights. These restrictions translate to certain responsibilities for -+you if you distribute copies of the library or if you modify it. -+ -+ For example, if you distribute copies of the library, whether gratis -+or for a fee, you must give the recipients all the rights that we gave -+you. You must make sure that they, too, receive or can get the source -+code. If you link other code with the library, you must provide -+complete object files to the recipients, so that they can relink them -+with the library after making changes to the library and recompiling -+it. And you must show them these terms so they know their rights. -+ -+ We protect your rights with a two-step method: (1) we copyright the -+library, and (2) we offer you this license, which gives you legal -+permission to copy, distribute and/or modify the library. -+ -+ To protect each distributor, we want to make it very clear that -+there is no warranty for the free library. Also, if the library is -+modified by someone else and passed on, the recipients should know -+that what they have is not the original version, so that the original -+author's reputation will not be affected by problems that might be -+introduced by others. -+ -+ Finally, software patents pose a constant threat to the existence of -+any free program. We wish to make sure that a company cannot -+effectively restrict the users of a free program by obtaining a -+restrictive license from a patent holder. Therefore, we insist that -+any patent license obtained for a version of the library must be -+consistent with the full freedom of use specified in this license. -+ -+ Most GNU software, including some libraries, is covered by the -+ordinary GNU General Public License. This license, the GNU Lesser -+General Public License, applies to certain designated libraries, and -+is quite different from the ordinary General Public License. We use -+this license for certain libraries in order to permit linking those -+libraries into non-free programs. -+ -+ When a program is linked with a library, whether statically or using -+a shared library, the combination of the two is legally speaking a -+combined work, a derivative of the original library. The ordinary -+General Public License therefore permits such linking only if the -+entire combination fits its criteria of freedom. The Lesser General -+Public License permits more lax criteria for linking other code with -+the library. -+ -+ We call this license the "Lesser" General Public License because it -+does Less to protect the user's freedom than the ordinary General -+Public License. It also provides other free software developers Less -+of an advantage over competing non-free programs. These disadvantages -+are the reason we use the ordinary General Public License for many -+libraries. However, the Lesser license provides advantages in certain -+special circumstances. -+ -+ For example, on rare occasions, there may be a special need to -+encourage the widest possible use of a certain library, so that it becomes -+a de-facto standard. To achieve this, non-free programs must be -+allowed to use the library. A more frequent case is that a free -+library does the same job as widely used non-free libraries. In this -+case, there is little to gain by limiting the free library to free -+software only, so we use the Lesser General Public License. -+ -+ In other cases, permission to use a particular library in non-free -+programs enables a greater number of people to use a large body of -+free software. For example, permission to use the GNU C Library in -+non-free programs enables many more people to use the whole GNU -+operating system, as well as its variant, the GNU/Linux operating -+system. -+ -+ Although the Lesser General Public License is Less protective of the -+users' freedom, it does ensure that the user of a program that is -+linked with the Library has the freedom and the wherewithal to run -+that program using a modified version of the Library. -+ -+ The precise terms and conditions for copying, distribution and -+modification follow. Pay close attention to the difference between a -+"work based on the library" and a "work that uses the library". The -+former contains code derived from the library, whereas the latter must -+be combined with the library in order to run. -+ -+ GNU LESSER GENERAL PUBLIC LICENSE -+ TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION -+ -+ 0. This License Agreement applies to any software library or other -+program which contains a notice placed by the copyright holder or -+other authorized party saying it may be distributed under the terms of -+this Lesser General Public License (also called "this License"). -+Each licensee is addressed as "you". -+ -+ A "library" means a collection of software functions and/or data -+prepared so as to be conveniently linked with application programs -+(which use some of those functions and data) to form executables. -+ -+ The "Library", below, refers to any such software library or work -+which has been distributed under these terms. A "work based on the -+Library" means either the Library or any derivative work under -+copyright law: that is to say, a work containing the Library or a -+portion of it, either verbatim or with modifications and/or translated -+straightforwardly into another language. (Hereinafter, translation is -+included without limitation in the term "modification".) -+ -+ "Source code" for a work means the preferred form of the work for -+making modifications to it. For a library, complete source code means -+all the source code for all modules it contains, plus any associated -+interface definition files, plus the scripts used to control compilation -+and installation of the library. -+ -+ Activities other than copying, distribution and modification are not -+covered by this License; they are outside its scope. The act of -+running a program using the Library is not restricted, and output from -+such a program is covered only if its contents constitute a work based -+on the Library (independent of the use of the Library in a tool for -+writing it). Whether that is true depends on what the Library does -+and what the program that uses the Library does. -+ -+ 1. You may copy and distribute verbatim copies of the Library's -+complete source code as you receive it, in any medium, provided that -+you conspicuously and appropriately publish on each copy an -+appropriate copyright notice and disclaimer of warranty; keep intact -+all the notices that refer to this License and to the absence of any -+warranty; and distribute a copy of this License along with the -+Library. -+ -+ You may charge a fee for the physical act of transferring a copy, -+and you may at your option offer warranty protection in exchange for a -+fee. -+ -+ 2. You may modify your copy or copies of the Library or any portion -+of it, thus forming a work based on the Library, and copy and -+distribute such modifications or work under the terms of Section 1 -+above, provided that you also meet all of these conditions: -+ -+ a) The modified work must itself be a software library. -+ -+ b) You must cause the files modified to carry prominent notices -+ stating that you changed the files and the date of any change. -+ -+ c) You must cause the whole of the work to be licensed at no -+ charge to all third parties under the terms of this License. -+ -+ d) If a facility in the modified Library refers to a function or a -+ table of data to be supplied by an application program that uses -+ the facility, other than as an argument passed when the facility -+ is invoked, then you must make a good faith effort to ensure that, -+ in the event an application does not supply such function or -+ table, the facility still operates, and performs whatever part of -+ its purpose remains meaningful. -+ -+ (For example, a function in a library to compute square roots has -+ a purpose that is entirely well-defined independent of the -+ application. Therefore, Subsection 2d requires that any -+ application-supplied function or table used by this function must -+ be optional: if the application does not supply it, the square -+ root function must still compute square roots.) -+ -+These requirements apply to the modified work as a whole. If -+identifiable sections of that work are not derived from the Library, -+and can be reasonably considered independent and separate works in -+themselves, then this License, and its terms, do not apply to those -+sections when you distribute them as separate works. But when you -+distribute the same sections as part of a whole which is a work based -+on the Library, the distribution of the whole must be on the terms of -+this License, whose permissions for other licensees extend to the -+entire whole, and thus to each and every part regardless of who wrote -+it. -+ -+Thus, it is not the intent of this section to claim rights or contest -+your rights to work written entirely by you; rather, the intent is to -+exercise the right to control the distribution of derivative or -+collective works based on the Library. -+ -+In addition, mere aggregation of another work not based on the Library -+with the Library (or with a work based on the Library) on a volume of -+a storage or distribution medium does not bring the other work under -+the scope of this License. -+ -+ 3. You may opt to apply the terms of the ordinary GNU General Public -+License instead of this License to a given copy of the Library. To do -+this, you must alter all the notices that refer to this License, so -+that they refer to the ordinary GNU General Public License, version 2, -+instead of to this License. (If a newer version than version 2 of the -+ordinary GNU General Public License has appeared, then you can specify -+that version instead if you wish.) Do not make any other change in -+these notices. -+ -+ Once this change is made in a given copy, it is irreversible for -+that copy, so the ordinary GNU General Public License applies to all -+subsequent copies and derivative works made from that copy. -+ -+ This option is useful when you wish to copy part of the code of -+the Library into a program that is not a library. -+ -+ 4. You may copy and distribute the Library (or a portion or -+derivative of it, under Section 2) in object code or executable form -+under the terms of Sections 1 and 2 above provided that you accompany -+it with the complete corresponding machine-readable source code, which -+must be distributed under the terms of Sections 1 and 2 above on a -+medium customarily used for software interchange. -+ -+ If distribution of object code is made by offering access to copy -+from a designated place, then offering equivalent access to copy the -+source code from the same place satisfies the requirement to -+distribute the source code, even though third parties are not -+compelled to copy the source along with the object code. -+ -+ 5. A program that contains no derivative of any portion of the -+Library, but is designed to work with the Library by being compiled or -+linked with it, is called a "work that uses the Library". Such a -+work, in isolation, is not a derivative work of the Library, and -+therefore falls outside the scope of this License. -+ -+ However, linking a "work that uses the Library" with the Library -+creates an executable that is a derivative of the Library (because it -+contains portions of the Library), rather than a "work that uses the -+library". The executable is therefore covered by this License. -+Section 6 states terms for distribution of such executables. -+ -+ When a "work that uses the Library" uses material from a header file -+that is part of the Library, the object code for the work may be a -+derivative work of the Library even though the source code is not. -+Whether this is true is especially significant if the work can be -+linked without the Library, or if the work is itself a library. The -+threshold for this to be true is not precisely defined by law. -+ -+ If such an object file uses only numerical parameters, data -+structure layouts and accessors, and small macros and small inline -+functions (ten lines or less in length), then the use of the object -+file is unrestricted, regardless of whether it is legally a derivative -+work. (Executables containing this object code plus portions of the -+Library will still fall under Section 6.) -+ -+ Otherwise, if the work is a derivative of the Library, you may -+distribute the object code for the work under the terms of Section 6. -+Any executables containing that work also fall under Section 6, -+whether or not they are linked directly with the Library itself. -+ -+ 6. As an exception to the Sections above, you may also combine or -+link a "work that uses the Library" with the Library to produce a -+work containing portions of the Library, and distribute that work -+under terms of your choice, provided that the terms permit -+modification of the work for the customer's own use and reverse -+engineering for debugging such modifications. -+ -+ You must give prominent notice with each copy of the work that the -+Library is used in it and that the Library and its use are covered by -+this License. You must supply a copy of this License. If the work -+during execution displays copyright notices, you must include the -+copyright notice for the Library among them, as well as a reference -+directing the user to the copy of this License. Also, you must do one -+of these things: -+ -+ a) Accompany the work with the complete corresponding -+ machine-readable source code for the Library including whatever -+ changes were used in the work (which must be distributed under -+ Sections 1 and 2 above); and, if the work is an executable linked -+ with the Library, with the complete machine-readable "work that -+ uses the Library", as object code and/or source code, so that the -+ user can modify the Library and then relink to produce a modified -+ executable containing the modified Library. (It is understood -+ that the user who changes the contents of definitions files in the -+ Library will not necessarily be able to recompile the application -+ to use the modified definitions.) -+ -+ b) Use a suitable shared library mechanism for linking with the -+ Library. A suitable mechanism is one that (1) uses at run time a -+ copy of the library already present on the user's computer system, -+ rather than copying library functions into the executable, and (2) -+ will operate properly with a modified version of the library, if -+ the user installs one, as long as the modified version is -+ interface-compatible with the version that the work was made with. -+ -+ c) Accompany the work with a written offer, valid for at -+ least three years, to give the same user the materials -+ specified in Subsection 6a, above, for a charge no more -+ than the cost of performing this distribution. -+ -+ d) If distribution of the work is made by offering access to copy -+ from a designated place, offer equivalent access to copy the above -+ specified materials from the same place. -+ -+ e) Verify that the user has already received a copy of these -+ materials or that you have already sent this user a copy. -+ -+ For an executable, the required form of the "work that uses the -+Library" must include any data and utility programs needed for -+reproducing the executable from it. However, as a special exception, -+the materials to be distributed need not include anything that is -+normally distributed (in either source or binary form) with the major -+components (compiler, kernel, and so on) of the operating system on -+which the executable runs, unless that component itself accompanies -+the executable. -+ -+ It may happen that this requirement contradicts the license -+restrictions of other proprietary libraries that do not normally -+accompany the operating system. Such a contradiction means you cannot -+use both them and the Library together in an executable that you -+distribute. -+ -+ 7. You may place library facilities that are a work based on the -+Library side-by-side in a single library together with other library -+facilities not covered by this License, and distribute such a combined -+library, provided that the separate distribution of the work based on -+the Library and of the other library facilities is otherwise -+permitted, and provided that you do these two things: -+ -+ a) Accompany the combined library with a copy of the same work -+ based on the Library, uncombined with any other library -+ facilities. This must be distributed under the terms of the -+ Sections above. -+ -+ b) Give prominent notice with the combined library of the fact -+ that part of it is a work based on the Library, and explaining -+ where to find the accompanying uncombined form of the same work. -+ -+ 8. You may not copy, modify, sublicense, link with, or distribute -+the Library except as expressly provided under this License. Any -+attempt otherwise to copy, modify, sublicense, link with, or -+distribute the Library is void, and will automatically terminate your -+rights under this License. However, parties who have received copies, -+or rights, from you under this License will not have their licenses -+terminated so long as such parties remain in full compliance. -+ -+ 9. You are not required to accept this License, since you have not -+signed it. However, nothing else grants you permission to modify or -+distribute the Library or its derivative works. These actions are -+prohibited by law if you do not accept this License. Therefore, by -+modifying or distributing the Library (or any work based on the -+Library), you indicate your acceptance of this License to do so, and -+all its terms and conditions for copying, distributing or modifying -+the Library or works based on it. -+ -+ 10. Each time you redistribute the Library (or any work based on the -+Library), the recipient automatically receives a license from the -+original licensor to copy, distribute, link with or modify the Library -+subject to these terms and conditions. You may not impose any further -+restrictions on the recipients' exercise of the rights granted herein. -+You are not responsible for enforcing compliance by third parties with -+this License. -+ -+ 11. If, as a consequence of a court judgment or allegation of patent -+infringement or for any other reason (not limited to patent issues), -+conditions are imposed on you (whether by court order, agreement or -+otherwise) that contradict the conditions of this License, they do not -+excuse you from the conditions of this License. If you cannot -+distribute so as to satisfy simultaneously your obligations under this -+License and any other pertinent obligations, then as a consequence you -+may not distribute the Library at all. For example, if a patent -+license would not permit royalty-free redistribution of the Library by -+all those who receive copies directly or indirectly through you, then -+the only way you could satisfy both it and this License would be to -+refrain entirely from distribution of the Library. -+ -+If any portion of this section is held invalid or unenforceable under any -+particular circumstance, the balance of the section is intended to apply, -+and the section as a whole is intended to apply in other circumstances. -+ -+It is not the purpose of this section to induce you to infringe any -+patents or other property right claims or to contest validity of any -+such claims; this section has the sole purpose of protecting the -+integrity of the free software distribution system which is -+implemented by public license practices. Many people have made -+generous contributions to the wide range of software distributed -+through that system in reliance on consistent application of that -+system; it is up to the author/donor to decide if he or she is willing -+to distribute software through any other system and a licensee cannot -+impose that choice. -+ -+This section is intended to make thoroughly clear what is believed to -+be a consequence of the rest of this License. -+ -+ 12. If the distribution and/or use of the Library is restricted in -+certain countries either by patents or by copyrighted interfaces, the -+original copyright holder who places the Library under this License may add -+an explicit geographical distribution limitation excluding those countries, -+so that distribution is permitted only in or among countries not thus -+excluded. In such case, this License incorporates the limitation as if -+written in the body of this License. -+ -+ 13. The Free Software Foundation may publish revised and/or new -+versions of the Lesser General Public License from time to time. -+Such new versions will be similar in spirit to the present version, -+but may differ in detail to address new problems or concerns. -+ -+Each version is given a distinguishing version number. If the Library -+specifies a version number of this License which applies to it and -+"any later version", you have the option of following the terms and -+conditions either of that version or of any later version published by -+the Free Software Foundation. If the Library does not specify a -+license version number, you may choose any version ever published by -+the Free Software Foundation. -+ -+ 14. If you wish to incorporate parts of the Library into other free -+programs whose distribution conditions are incompatible with these, -+write to the author to ask for permission. For software which is -+copyrighted by the Free Software Foundation, write to the Free -+Software Foundation; we sometimes make exceptions for this. Our -+decision will be guided by the two goals of preserving the free status -+of all derivatives of our free software and of promoting the sharing -+and reuse of software generally. -+ -+ NO WARRANTY -+ -+ 15. BECAUSE THE LIBRARY IS LICENSED FREE OF CHARGE, THERE IS NO -+WARRANTY FOR THE LIBRARY, TO THE EXTENT PERMITTED BY APPLICABLE LAW. -+EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR -+OTHER PARTIES PROVIDE THE LIBRARY "AS IS" WITHOUT WARRANTY OF ANY -+KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE -+IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR -+PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE -+LIBRARY IS WITH YOU. SHOULD THE LIBRARY PROVE DEFECTIVE, YOU ASSUME -+THE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION. -+ -+ 16. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN -+WRITING WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY -+AND/OR REDISTRIBUTE THE LIBRARY AS PERMITTED ABOVE, BE LIABLE TO YOU -+FOR DAMAGES, INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR -+CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR INABILITY TO USE THE -+LIBRARY (INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA BEING -+RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A -+FAILURE OF THE LIBRARY TO OPERATE WITH ANY OTHER SOFTWARE), EVEN IF -+SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH -+DAMAGES. -+ -+ END OF TERMS AND CONDITIONS -+ -+ How to Apply These Terms to Your New Libraries -+ -+ If you develop a new library, and you want it to be of the greatest -+possible use to the public, we recommend making it free software that -+everyone can redistribute and change. You can do so by permitting -+redistribution under these terms (or, alternatively, under the terms of the -+ordinary General Public License). -+ -+ To apply these terms, attach the following notices to the library. It is -+safest to attach them to the start of each source file to most effectively -+convey the exclusion of warranty; and each file should have at least the -+"copyright" line and a pointer to where the full notice is found. -+ -+ -+ Copyright (C) -+ -+ This library is free software; you can redistribute it and/or -+ modify it under the terms of the GNU Lesser General Public -+ License as published by the Free Software Foundation; either -+ version 2.1 of the License, or (at your option) any later version. -+ -+ This library 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 -+ Lesser General Public License for more details. -+ -+ You should have received a copy of the GNU Lesser General Public -+ License along with this library; if not, write to the Free Software -+ Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA -+ -+Also add information on how to contact you by electronic and paper mail. -+ -+You should also get your employer (if you work as a programmer) or your -+school, if any, to sign a "copyright disclaimer" for the library, if -+necessary. Here is a sample; alter the names: -+ -+ Yoyodyne, Inc., hereby disclaims all copyright interest in the -+ library `Frob' (a library for tweaking knobs) written by James Random Hacker. -+ -+ , 1 April 1990 -+ Ty Coon, President of Vice -+ -+That's all there is to it! -diff --git a/LICENSE-WOFF-MPL b/LICENSE-WOFF-MPL -new file mode 100644 -index 0000000..5669081 ---- /dev/null -+++ b/LICENSE-WOFF-MPL -@@ -0,0 +1,469 @@ -+ MOZILLA PUBLIC LICENSE -+ Version 1.1 -+ -+ --------------- -+ -+1. Definitions. -+ -+ 1.0.1. "Commercial Use" means distribution or otherwise making the -+ Covered Code available to a third party. -+ -+ 1.1. "Contributor" means each entity that creates or contributes to -+ the creation of Modifications. -+ -+ 1.2. "Contributor Version" means the combination of the Original -+ Code, prior Modifications used by a Contributor, and the Modifications -+ made by that particular Contributor. -+ -+ 1.3. "Covered Code" means the Original Code or Modifications or the -+ combination of the Original Code and Modifications, in each case -+ including portions thereof. -+ -+ 1.4. "Electronic Distribution Mechanism" means a mechanism generally -+ accepted in the software development community for the electronic -+ transfer of data. -+ -+ 1.5. "Executable" means Covered Code in any form other than Source -+ Code. -+ -+ 1.6. "Initial Developer" means the individual or entity identified -+ as the Initial Developer in the Source Code notice required by Exhibit -+ A. -+ -+ 1.7. "Larger Work" means a work which combines Covered Code or -+ portions thereof with code not governed by the terms of this License. -+ -+ 1.8. "License" means this document. -+ -+ 1.8.1. "Licensable" means having the right to grant, to the maximum -+ extent possible, whether at the time of the initial grant or -+ subsequently acquired, any and all of the rights conveyed herein. -+ -+ 1.9. "Modifications" means any addition to or deletion from the -+ substance or structure of either the Original Code or any previous -+ Modifications. When Covered Code is released as a series of files, a -+ Modification is: -+ A. Any addition to or deletion from the contents of a file -+ containing Original Code or previous Modifications. -+ -+ B. Any new file that contains any part of the Original Code or -+ previous Modifications. -+ -+ 1.10. "Original Code" means Source Code of computer software code -+ which is described in the Source Code notice required by Exhibit A as -+ Original Code, and which, at the time of its release under this -+ License is not already Covered Code governed by this License. -+ -+ 1.10.1. "Patent Claims" means any patent claim(s), now owned or -+ hereafter acquired, including without limitation, method, process, -+ and apparatus claims, in any patent Licensable by grantor. -+ -+ 1.11. "Source Code" means the preferred form of the Covered Code for -+ making modifications to it, including all modules it contains, plus -+ any associated interface definition files, scripts used to control -+ compilation and installation of an Executable, or source code -+ differential comparisons against either the Original Code or another -+ well known, available Covered Code of the Contributor's choice. The -+ Source Code can be in a compressed or archival form, provided the -+ appropriate decompression or de-archiving software is widely available -+ for no charge. -+ -+ 1.12. "You" (or "Your") means an individual or a legal entity -+ exercising rights under, and complying with all of the terms of, this -+ License or a future version of this License issued under Section 6.1. -+ For legal entities, "You" includes any entity which controls, is -+ controlled by, or is under common control with You. For purposes of -+ this definition, "control" means (a) the power, direct or indirect, -+ to cause the direction or management of such entity, whether by -+ contract or otherwise, or (b) ownership of more than fifty percent -+ (50%) of the outstanding shares or beneficial ownership of such -+ entity. -+ -+2. Source Code License. -+ -+ 2.1. The Initial Developer Grant. -+ The Initial Developer hereby grants You a world-wide, royalty-free, -+ non-exclusive license, subject to third party intellectual property -+ claims: -+ (a) under intellectual property rights (other than patent or -+ trademark) Licensable by Initial Developer to use, reproduce, -+ modify, display, perform, sublicense and distribute the Original -+ Code (or portions thereof) with or without Modifications, and/or -+ as part of a Larger Work; and -+ -+ (b) under Patents Claims infringed by the making, using or -+ selling of Original Code, to make, have made, use, practice, -+ sell, and offer for sale, and/or otherwise dispose of the -+ Original Code (or portions thereof). -+ -+ (c) the licenses granted in this Section 2.1(a) and (b) are -+ effective on the date Initial Developer first distributes -+ Original Code under the terms of this License. -+ -+ (d) Notwithstanding Section 2.1(b) above, no patent license is -+ granted: 1) for code that You delete from the Original Code; 2) -+ separate from the Original Code; or 3) for infringements caused -+ by: i) the modification of the Original Code or ii) the -+ combination of the Original Code with other software or devices. -+ -+ 2.2. Contributor Grant. -+ Subject to third party intellectual property claims, each Contributor -+ hereby grants You a world-wide, royalty-free, non-exclusive license -+ -+ (a) under intellectual property rights (other than patent or -+ trademark) Licensable by Contributor, to use, reproduce, modify, -+ display, perform, sublicense and distribute the Modifications -+ created by such Contributor (or portions thereof) either on an -+ unmodified basis, with other Modifications, as Covered Code -+ and/or as part of a Larger Work; and -+ -+ (b) under Patent Claims infringed by the making, using, or -+ selling of Modifications made by that Contributor either alone -+ and/or in combination with its Contributor Version (or portions -+ of such combination), to make, use, sell, offer for sale, have -+ made, and/or otherwise dispose of: 1) Modifications made by that -+ Contributor (or portions thereof); and 2) the combination of -+ Modifications made by that Contributor with its Contributor -+ Version (or portions of such combination). -+ -+ (c) the licenses granted in Sections 2.2(a) and 2.2(b) are -+ effective on the date Contributor first makes Commercial Use of -+ the Covered Code. -+ -+ (d) Notwithstanding Section 2.2(b) above, no patent license is -+ granted: 1) for any code that Contributor has deleted from the -+ Contributor Version; 2) separate from the Contributor Version; -+ 3) for infringements caused by: i) third party modifications of -+ Contributor Version or ii) the combination of Modifications made -+ by that Contributor with other software (except as part of the -+ Contributor Version) or other devices; or 4) under Patent Claims -+ infringed by Covered Code in the absence of Modifications made by -+ that Contributor. -+ -+3. Distribution Obligations. -+ -+ 3.1. Application of License. -+ The Modifications which You create or to which You contribute are -+ governed by the terms of this License, including without limitation -+ Section 2.2. The Source Code version of Covered Code may be -+ distributed only under the terms of this License or a future version -+ of this License released under Section 6.1, and You must include a -+ copy of this License with every copy of the Source Code You -+ distribute. You may not offer or impose any terms on any Source Code -+ version that alters or restricts the applicable version of this -+ License or the recipients' rights hereunder. However, You may include -+ an additional document offering the additional rights described in -+ Section 3.5. -+ -+ 3.2. Availability of Source Code. -+ Any Modification which You create or to which You contribute must be -+ made available in Source Code form under the terms of this License -+ either on the same media as an Executable version or via an accepted -+ Electronic Distribution Mechanism to anyone to whom you made an -+ Executable version available; and if made available via Electronic -+ Distribution Mechanism, must remain available for at least twelve (12) -+ months after the date it initially became available, or at least six -+ (6) months after a subsequent version of that particular Modification -+ has been made available to such recipients. You are responsible for -+ ensuring that the Source Code version remains available even if the -+ Electronic Distribution Mechanism is maintained by a third party. -+ -+ 3.3. Description of Modifications. -+ You must cause all Covered Code to which You contribute to contain a -+ file documenting the changes You made to create that Covered Code and -+ the date of any change. You must include a prominent statement that -+ the Modification is derived, directly or indirectly, from Original -+ Code provided by the Initial Developer and including the name of the -+ Initial Developer in (a) the Source Code, and (b) in any notice in an -+ Executable version or related documentation in which You describe the -+ origin or ownership of the Covered Code. -+ -+ 3.4. Intellectual Property Matters -+ (a) Third Party Claims. -+ If Contributor has knowledge that a license under a third party's -+ intellectual property rights is required to exercise the rights -+ granted by such Contributor under Sections 2.1 or 2.2, -+ Contributor must include a text file with the Source Code -+ distribution titled "LEGAL" which describes the claim and the -+ party making the claim in sufficient detail that a recipient will -+ know whom to contact. If Contributor obtains such knowledge after -+ the Modification is made available as described in Section 3.2, -+ Contributor shall promptly modify the LEGAL file in all copies -+ Contributor makes available thereafter and shall take other steps -+ (such as notifying appropriate mailing lists or newsgroups) -+ reasonably calculated to inform those who received the Covered -+ Code that new knowledge has been obtained. -+ -+ (b) Contributor APIs. -+ If Contributor's Modifications include an application programming -+ interface and Contributor has knowledge of patent licenses which -+ are reasonably necessary to implement that API, Contributor must -+ also include this information in the LEGAL file. -+ -+ (c) Representations. -+ Contributor represents that, except as disclosed pursuant to -+ Section 3.4(a) above, Contributor believes that Contributor's -+ Modifications are Contributor's original creation(s) and/or -+ Contributor has sufficient rights to grant the rights conveyed by -+ this License. -+ -+ 3.5. Required Notices. -+ You must duplicate the notice in Exhibit A in each file of the Source -+ Code. If it is not possible to put such notice in a particular Source -+ Code file due to its structure, then You must include such notice in a -+ location (such as a relevant directory) where a user would be likely -+ to look for such a notice. If You created one or more Modification(s) -+ You may add your name as a Contributor to the notice described in -+ Exhibit A. You must also duplicate this License in any documentation -+ for the Source Code where You describe recipients' rights or ownership -+ rights relating to Covered Code. You may choose to offer, and to -+ charge a fee for, warranty, support, indemnity or liability -+ obligations to one or more recipients of Covered Code. However, You -+ may do so only on Your own behalf, and not on behalf of the Initial -+ Developer or any Contributor. You must make it absolutely clear than -+ any such warranty, support, indemnity or liability obligation is -+ offered by You alone, and You hereby agree to indemnify the Initial -+ Developer and every Contributor for any liability incurred by the -+ Initial Developer or such Contributor as a result of warranty, -+ support, indemnity or liability terms You offer. -+ -+ 3.6. Distribution of Executable Versions. -+ You may distribute Covered Code in Executable form only if the -+ requirements of Section 3.1-3.5 have been met for that Covered Code, -+ and if You include a notice stating that the Source Code version of -+ the Covered Code is available under the terms of this License, -+ including a description of how and where You have fulfilled the -+ obligations of Section 3.2. The notice must be conspicuously included -+ in any notice in an Executable version, related documentation or -+ collateral in which You describe recipients' rights relating to the -+ Covered Code. You may distribute the Executable version of Covered -+ Code or ownership rights under a license of Your choice, which may -+ contain terms different from this License, provided that You are in -+ compliance with the terms of this License and that the license for the -+ Executable version does not attempt to limit or alter the recipient's -+ rights in the Source Code version from the rights set forth in this -+ License. If You distribute the Executable version under a different -+ license You must make it absolutely clear that any terms which differ -+ from this License are offered by You alone, not by the Initial -+ Developer or any Contributor. You hereby agree to indemnify the -+ Initial Developer and every Contributor for any liability incurred by -+ the Initial Developer or such Contributor as a result of any such -+ terms You offer. -+ -+ 3.7. Larger Works. -+ You may create a Larger Work by combining Covered Code with other code -+ not governed by the terms of this License and distribute the Larger -+ Work as a single product. In such a case, You must make sure the -+ requirements of this License are fulfilled for the Covered Code. -+ -+4. Inability to Comply Due to Statute or Regulation. -+ -+ If it is impossible for You to comply with any of the terms of this -+ License with respect to some or all of the Covered Code due to -+ statute, judicial order, or regulation then You must: (a) comply with -+ the terms of this License to the maximum extent possible; and (b) -+ describe the limitations and the code they affect. Such description -+ must be included in the LEGAL file described in Section 3.4 and must -+ be included with all distributions of the Source Code. Except to the -+ extent prohibited by statute or regulation, such description must be -+ sufficiently detailed for a recipient of ordinary skill to be able to -+ understand it. -+ -+5. Application of this License. -+ -+ This License applies to code to which the Initial Developer has -+ attached the notice in Exhibit A and to related Covered Code. -+ -+6. Versions of the License. -+ -+ 6.1. New Versions. -+ Netscape Communications Corporation ("Netscape") may publish revised -+ and/or new versions of the License from time to time. Each version -+ will be given a distinguishing version number. -+ -+ 6.2. Effect of New Versions. -+ Once Covered Code has been published under a particular version of the -+ License, You may always continue to use it under the terms of that -+ version. You may also choose to use such Covered Code under the terms -+ of any subsequent version of the License published by Netscape. No one -+ other than Netscape has the right to modify the terms applicable to -+ Covered Code created under this License. -+ -+ 6.3. Derivative Works. -+ If You create or use a modified version of this License (which you may -+ only do in order to apply it to code which is not already Covered Code -+ governed by this License), You must (a) rename Your license so that -+ the phrases "Mozilla", "MOZILLAPL", "MOZPL", "Netscape", -+ "MPL", "NPL" or any confusingly similar phrase do not appear in your -+ license (except to note that your license differs from this License) -+ and (b) otherwise make it clear that Your version of the license -+ contains terms which differ from the Mozilla Public License and -+ Netscape Public License. (Filling in the name of the Initial -+ Developer, Original Code or Contributor in the notice described in -+ Exhibit A shall not of themselves be deemed to be modifications of -+ this License.) -+ -+7. DISCLAIMER OF WARRANTY. -+ -+ COVERED CODE IS PROVIDED UNDER THIS LICENSE ON AN "AS IS" BASIS, -+ WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, -+ WITHOUT LIMITATION, WARRANTIES THAT THE COVERED CODE IS FREE OF -+ DEFECTS, MERCHANTABLE, FIT FOR A PARTICULAR PURPOSE OR NON-INFRINGING. -+ THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE COVERED CODE -+ IS WITH YOU. SHOULD ANY COVERED CODE PROVE DEFECTIVE IN ANY RESPECT, -+ YOU (NOT THE INITIAL DEVELOPER OR ANY OTHER CONTRIBUTOR) ASSUME THE -+ COST OF ANY NECESSARY SERVICING, REPAIR OR CORRECTION. THIS DISCLAIMER -+ OF WARRANTY CONSTITUTES AN ESSENTIAL PART OF THIS LICENSE. NO USE OF -+ ANY COVERED CODE IS AUTHORIZED HEREUNDER EXCEPT UNDER THIS DISCLAIMER. -+ -+8. TERMINATION. -+ -+ 8.1. This License and the rights granted hereunder will terminate -+ automatically if You fail to comply with terms herein and fail to cure -+ such breach within 30 days of becoming aware of the breach. All -+ sublicenses to the Covered Code which are properly granted shall -+ survive any termination of this License. Provisions which, by their -+ nature, must remain in effect beyond the termination of this License -+ shall survive. -+ -+ 8.2. If You initiate litigation by asserting a patent infringement -+ claim (excluding declatory judgment actions) against Initial Developer -+ or a Contributor (the Initial Developer or Contributor against whom -+ You file such action is referred to as "Participant") alleging that: -+ -+ (a) such Participant's Contributor Version directly or indirectly -+ infringes any patent, then any and all rights granted by such -+ Participant to You under Sections 2.1 and/or 2.2 of this License -+ shall, upon 60 days notice from Participant terminate prospectively, -+ unless if within 60 days after receipt of notice You either: (i) -+ agree in writing to pay Participant a mutually agreeable reasonable -+ royalty for Your past and future use of Modifications made by such -+ Participant, or (ii) withdraw Your litigation claim with respect to -+ the Contributor Version against such Participant. If within 60 days -+ of notice, a reasonable royalty and payment arrangement are not -+ mutually agreed upon in writing by the parties or the litigation claim -+ is not withdrawn, the rights granted by Participant to You under -+ Sections 2.1 and/or 2.2 automatically terminate at the expiration of -+ the 60 day notice period specified above. -+ -+ (b) any software, hardware, or device, other than such Participant's -+ Contributor Version, directly or indirectly infringes any patent, then -+ any rights granted to You by such Participant under Sections 2.1(b) -+ and 2.2(b) are revoked effective as of the date You first made, used, -+ sold, distributed, or had made, Modifications made by that -+ Participant. -+ -+ 8.3. If You assert a patent infringement claim against Participant -+ alleging that such Participant's Contributor Version directly or -+ indirectly infringes any patent where such claim is resolved (such as -+ by license or settlement) prior to the initiation of patent -+ infringement litigation, then the reasonable value of the licenses -+ granted by such Participant under Sections 2.1 or 2.2 shall be taken -+ into account in determining the amount or value of any payment or -+ license. -+ -+ 8.4. In the event of termination under Sections 8.1 or 8.2 above, -+ all end user license agreements (excluding distributors and resellers) -+ which have been validly granted by You or any distributor hereunder -+ prior to termination shall survive termination. -+ -+9. LIMITATION OF LIABILITY. -+ -+ UNDER NO CIRCUMSTANCES AND UNDER NO LEGAL THEORY, WHETHER TORT -+ (INCLUDING NEGLIGENCE), CONTRACT, OR OTHERWISE, SHALL YOU, THE INITIAL -+ DEVELOPER, ANY OTHER CONTRIBUTOR, OR ANY DISTRIBUTOR OF COVERED CODE, -+ OR ANY SUPPLIER OF ANY OF SUCH PARTIES, BE LIABLE TO ANY PERSON FOR -+ ANY INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES OF ANY -+ CHARACTER INCLUDING, WITHOUT LIMITATION, DAMAGES FOR LOSS OF GOODWILL, -+ WORK STOPPAGE, COMPUTER FAILURE OR MALFUNCTION, OR ANY AND ALL OTHER -+ COMMERCIAL DAMAGES OR LOSSES, EVEN IF SUCH PARTY SHALL HAVE BEEN -+ INFORMED OF THE POSSIBILITY OF SUCH DAMAGES. THIS LIMITATION OF -+ LIABILITY SHALL NOT APPLY TO LIABILITY FOR DEATH OR PERSONAL INJURY -+ RESULTING FROM SUCH PARTY'S NEGLIGENCE TO THE EXTENT APPLICABLE LAW -+ PROHIBITS SUCH LIMITATION. SOME JURISDICTIONS DO NOT ALLOW THE -+ EXCLUSION OR LIMITATION OF INCIDENTAL OR CONSEQUENTIAL DAMAGES, SO -+ THIS EXCLUSION AND LIMITATION MAY NOT APPLY TO YOU. -+ -+10. U.S. GOVERNMENT END USERS. -+ -+ The Covered Code is a "commercial item," as that term is defined in -+ 48 C.F.R. 2.101 (Oct. 1995), consisting of "commercial computer -+ software" and "commercial computer software documentation," as such -+ terms are used in 48 C.F.R. 12.212 (Sept. 1995). Consistent with 48 -+ C.F.R. 12.212 and 48 C.F.R. 227.7202-1 through 227.7202-4 (June 1995), -+ all U.S. Government End Users acquire Covered Code with only those -+ rights set forth herein. -+ -+11. MISCELLANEOUS. -+ -+ This License represents the complete agreement concerning subject -+ matter hereof. If any provision of this License is held to be -+ unenforceable, such provision shall be reformed only to the extent -+ necessary to make it enforceable. This License shall be governed by -+ California law provisions (except to the extent applicable law, if -+ any, provides otherwise), excluding its conflict-of-law provisions. -+ With respect to disputes in which at least one party is a citizen of, -+ or an entity chartered or registered to do business in the United -+ States of America, any litigation relating to this License shall be -+ subject to the jurisdiction of the Federal Courts of the Northern -+ District of California, with venue lying in Santa Clara County, -+ California, with the losing party responsible for costs, including -+ without limitation, court costs and reasonable attorneys' fees and -+ expenses. The application of the United Nations Convention on -+ Contracts for the International Sale of Goods is expressly excluded. -+ Any law or regulation which provides that the language of a contract -+ shall be construed against the drafter shall not apply to this -+ License. -+ -+12. RESPONSIBILITY FOR CLAIMS. -+ -+ As between Initial Developer and the Contributors, each party is -+ responsible for claims and damages arising, directly or indirectly, -+ out of its utilization of rights under this License and You agree to -+ work with Initial Developer and Contributors to distribute such -+ responsibility on an equitable basis. Nothing herein is intended or -+ shall be deemed to constitute any admission of liability. -+ -+13. MULTIPLE-LICENSED CODE. -+ -+ Initial Developer may designate portions of the Covered Code as -+ "Multiple-Licensed". "Multiple-Licensed" means that the Initial -+ Developer permits you to utilize portions of the Covered Code under -+ Your choice of the MPL or the alternative licenses, if any, specified -+ by the Initial Developer in the file described in Exhibit A. -+ -+EXHIBIT A -Mozilla Public License. -+ -+ ``The contents of this file are subject to the Mozilla Public License -+ Version 1.1 (the "License"); you may not use this file except in -+ compliance with the License. You may obtain a copy of the License at -+ https://www.mozilla.org/MPL/ -+ -+ Software distributed under the License is distributed on an "AS IS" -+ basis, WITHOUT WARRANTY OF ANY KIND, either express or implied. See the -+ License for the specific language governing rights and limitations -+ under the License. -+ -+ The Original Code is ______________________________________. -+ -+ The Initial Developer of the Original Code is ________________________. -+ Portions created by ______________________ are Copyright (C) ______ -+ _______________________. All Rights Reserved. -+ -+ Contributor(s): ______________________________________. -+ -+ Alternatively, the contents of this file may be used under the terms -+ of the _____ license (the "[___] License"), in which case the -+ provisions of [______] License are applicable instead of those -+ above. If you wish to allow use of your version of this file only -+ under the terms of the [____] License and not to allow others to use -+ your version of this file under the MPL, indicate your decision by -+ deleting the provisions above and replace them with the notice and -+ other provisions required by the [___] License. If you do not delete -+ the provisions above, a recipient may use your version of this file -+ under either the MPL or the [___] License." -+ -+ [NOTE: The text of this Exhibit A may differ slightly from the text of -+ the notices in the Source Code files of the Original Code. You should -+ use the text of this Exhibit A rather than the text found in the -+ Original Code Source Code for Your Modifications.] diff --git a/CVE-2010-1028.patch b/CVE-2010-1028.patch deleted file mode 100644 index f895472..0000000 --- a/CVE-2010-1028.patch +++ /dev/null @@ -1,48 +0,0 @@ -Description: Fix CVE-2010-1028: WOFF heap corruption due to integer overflow -Origin: mozilla-central, https://hg.mozilla.org/releases/mozilla-1.9.2/rev/827a6883442f -Last-Update: 2013-04-09 - ---- a/woff.c -+++ b/woff.c -@@ -626,7 +626,7 @@ - const woffHeader * header; - uint16_t numTables, i; - const woffDirEntry * dirEntry; -- uint32_t tableTotal = 0; -+ uint64_t tableTotal = 0; - - if (!woffData || !woffLen) { - return eWOFF_bad_parameter; -@@ -652,17 +652,17 @@ - - dirEntry = (const woffDirEntry *) (woffData + sizeof(woffHeader)); - for (i = 0; i < numTables; ++i) { -- uint32_t offs = READ32BE(dirEntry->offset); -- uint32_t orig = READ32BE(dirEntry->origLen); -- uint32_t comp = READ32BE(dirEntry->compLen); -+ uint64_t offs = READ32BE(dirEntry->offset); -+ uint64_t orig = READ32BE(dirEntry->origLen); -+ uint64_t comp = READ32BE(dirEntry->compLen); - if (comp > orig || comp > woffLen || offs > woffLen - comp) { - return eWOFF_invalid; - } - orig = (orig + 3) & ~3; -- if (tableTotal > 0xffffffffU - orig) { -+ tableTotal += orig; -+ if (tableTotal > 0xffffffffU) { - return eWOFF_invalid; - } -- tableTotal += orig; - ++dirEntry; - } - ---- a/woff.h -+++ b/woff.h -@@ -48,6 +48,7 @@ - typedef unsigned char uint8_t; - typedef unsigned short uint16_t; - typedef unsigned int uint32_t; -+typedef unsigned __int64 uint64_t; - #else - #include - #endif diff --git a/add-overflow-checks.patch b/add-overflow-checks.patch deleted file mode 100644 index 6f1f7b2..0000000 --- a/add-overflow-checks.patch +++ /dev/null @@ -1,126 +0,0 @@ -Description: Add arithmetic overflow checks in woff encoding routines -Origin: mozilla-central, https://hg.mozilla.org/mozilla-central/rev/69eb050f2c0a -Last-Update: 2013-04-11 - ---- a/woff.c -+++ b/woff.c -@@ -89,10 +89,15 @@ - const uint32_t * csumPtr; - const uint32_t * csumEnd; - uint32_t csum = 0; -- uint32_t length = LONGALIGN(READ32BE(dirEntry->length)); -+ uint32_t length = READ32BE(dirEntry->length); - uint32_t offset = READ32BE(dirEntry->offset); - uint32_t tag; -- if ((offset & 3) != 0) { -+ if (LONGALIGN(length) < length) { /* overflow */ -+ return csum; -+ } else { -+ length = LONGALIGN(length); -+ } -+ if ((offset & 3) != 0) { /* invalid - not properly aligned */ - return csum; - } - if (length > sfntLen || offset > sfntLen - length) { -@@ -224,6 +229,9 @@ - if (tag == TABLE_TAG_DSIG) { - status |= eWOFF_warn_removed_DSIG; - removedDsigSize = READ32BE(sfntDir[tableIndex].length); -+ if (LONGALIGN(removedDsigSize) < removedDsigSize) { -+ FAIL(eWOFF_invalid); -+ } - continue; - } - } -@@ -235,6 +243,7 @@ - qsort(tableOrder, numTables, sizeof(tableOrderRec), compareOffsets); - - /* initially, allocate space for header and directory */ -+ /* cannot be too big because numTables is 16-bit */ - tableOffset = sizeof(woffHeader) + numTables * sizeof(woffDirEntry); - woffData = (uint8_t *) malloc(tableOffset); - if (!woffData) { -@@ -277,7 +286,15 @@ - if (sourceLen > sfntLen || sourceOffset > sfntLen - sourceLen) { - FAIL(eWOFF_invalid); - } -- destLen = LONGALIGN(compressBound(sourceLen)); -+ destLen = compressBound(sourceLen); -+ if (LONGALIGN(destLen) < destLen) { -+ /* something weird is going on if this overflows! */ -+ FAIL(eWOFF_invalid); -+ } -+ destLen = LONGALIGN(destLen); -+ if (tableOffset + destLen < tableOffset) { -+ FAIL(eWOFF_invalid); -+ } - woffData = (uint8_t *) realloc(woffData, tableOffset + destLen); - if (!woffData) { - FAIL(eWOFF_out_of_memory); -@@ -291,13 +308,19 @@ - } - if (destLen < sourceLen) { - /* compressed table was smaller */ -- tableOffset += destLen; -+ tableOffset += destLen; /* checked for potential overflow above */ - WOFFDIR[newIndex].compLen = READ32BE(destLen); - } else { - /* compression didn't make it smaller, so store original data instead */ -+ if (LONGALIGN(sourceLen) < sourceLen) { -+ FAIL(eWOFF_invalid); /* overflow, bail out */ -+ } - destLen = sourceLen; - /* reallocate to ensure enough space for the table, - plus potential padding after it */ -+ if (tableOffset + LONGALIGN(sourceLen) < tableOffset) { -+ FAIL(eWOFF_invalid); /* overflow, bail out */ -+ } - woffData = (uint8_t *) realloc(woffData, - tableOffset + LONGALIGN(sourceLen)); - if (!woffData) { -@@ -306,6 +329,9 @@ - /* copy the original data into place */ - memcpy(woffData + tableOffset, - sfntData + READ32BE(sfntDir[oldIndex].offset), sourceLen); -+ if (tableOffset + sourceLen < tableOffset) { -+ FAIL(eWOFF_invalid); /* overflow, bail out */ -+ } - tableOffset += sourceLen; - WOFFDIR[newIndex].compLen = WOFFDIR[newIndex].origLen; - } -@@ -316,7 +342,13 @@ - } - - /* update total size of uncompressed OpenType with table size */ -+ if (totalSfntSize + sourceLen < totalSfntSize) { -+ FAIL(eWOFF_invalid); /* overflow, bail out */ -+ } - totalSfntSize += sourceLen; -+ if (LONGALIGN(totalSfntSize) < totalSfntSize) { -+ FAIL(eWOFF_invalid); -+ } - totalSfntSize = LONGALIGN(totalSfntSize); - } - -@@ -442,10 +474,20 @@ - - totalSize = tableLimit; /* already long-aligned */ - if (metaCompLen) { -+ if (totalSize + metaCompLen < totalSize) { -+ FAIL(eWOFF_invalid); -+ } - totalSize += metaCompLen; - } - if (privLen) { -- totalSize = LONGALIGN(totalSize) + privLen; -+ if (LONGALIGN(totalSize) < totalSize) { -+ FAIL(eWOFF_invalid); -+ } -+ totalSize = LONGALIGN(totalSize); -+ if (totalSize + privLen < totalSize) { -+ FAIL(eWOFF_invalid); -+ } -+ totalSize += privLen; - } - newData = malloc(totalSize); - if (!newData) { diff --git a/changelog b/changelog index 6211e5b..ed7996d 100644 --- a/changelog +++ b/changelog @@ -1,85 +1,19 @@ -* Tue Nov 29 2022 Benjamin A. Beasley - 0.20091126-27 +* Tue Nov 29 2022 Benjamin A. Beasley - 0.20091126-6 - Clarify URL/Source situation, and do not claim to have a working source archive URL - General tidying of spec file; use modern macros and install HTML format description as documentation - Add hand-written man pages -* Sat Jul 23 2022 Fedora Release Engineering - 0.20091126-26 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild - -* Sun Jun 05 2022 Benson Muite - 0.20091126-26 +* Sun Jun 05 2022 Benson Muite - 0.20091126-5 - Source URL update -* Sat Jan 22 2022 Fedora Release Engineering - 0.20091126-25 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild - -* Fri Jul 23 2021 Fedora Release Engineering - 0.20091126-24 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild - -* Wed Jan 27 2021 Fedora Release Engineering - 0.20091126-23 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild - -* Wed Jul 29 2020 Fedora Release Engineering - 0.20091126-22 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild - -* Fri Jan 31 2020 Fedora Release Engineering - 0.20091126-21 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild - -* Sat Jul 27 2019 Fedora Release Engineering - 0.20091126-20 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild - -* Sun Feb 03 2019 Fedora Release Engineering - 0.20091126-19 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild - -* Sat Jul 14 2018 Fedora Release Engineering - 0.20091126-18 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild - -* Mon Feb 19 2018 Parag Nemade - 0.20091126-17 +* Mon Feb 19 2018 Parag Nemade - 0.20091126-4 - Add BuildRequires: gcc as per packaging guidelines -* Fri Feb 09 2018 Fedora Release Engineering - 0.20091126-16 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild - -* Thu Aug 03 2017 Fedora Release Engineering - 0.20091126-15 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Binutils_Mass_Rebuild - -* Thu Jul 27 2017 Fedora Release Engineering - 0.20091126-14 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild - -* Sat Feb 11 2017 Fedora Release Engineering - 0.20091126-13 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_26_Mass_Rebuild - -* Thu Feb 11 2016 Parag Nemade - 0.20091126-12 +* Thu Feb 11 2016 Parag Nemade - 0.20091126-3 - Clean the spec file -* Fri Feb 05 2016 Fedora Release Engineering - 0.20091126-11 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_24_Mass_Rebuild - -* Fri Jun 19 2015 Fedora Release Engineering - 0.20091126-10 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_23_Mass_Rebuild - -* Mon Aug 18 2014 Fedora Release Engineering - 0.20091126-9 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_22_Mass_Rebuild - -* Sun Jun 08 2014 Fedora Release Engineering - 0.20091126-8 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_Mass_Rebuild - -* Sun Aug 04 2013 Fedora Release Engineering - 0.20091126-7 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_20_Mass_Rebuild - -* Fri Feb 15 2013 Fedora Release Engineering - 0.20091126-6 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_19_Mass_Rebuild - -* Sun Jul 22 2012 Fedora Release Engineering - 0.20091126-5 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_18_Mass_Rebuild - -* Sat Jan 14 2012 Fedora Release Engineering - 0.20091126-4 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_17_Mass_Rebuild - -* Mon Feb 07 2011 Fedora Release Engineering - 0.20091126-3 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_15_Mass_Rebuild - * Sun Nov 29 2009 Parag Nemade - 0.20091126-2.fc12 - Added BR:zlib-devel diff --git a/fix-compiler-and-cppcheck-warnings.patch b/fix-compiler-and-cppcheck-warnings.patch deleted file mode 100644 index bd04a60..0000000 --- a/fix-compiler-and-cppcheck-warnings.patch +++ /dev/null @@ -1,61 +0,0 @@ -Description: fix some compiler and cppcheck warnings - - Remove two unused variables; - - Fix a memory leak when realloc() fails. -Author: Dmitry Shachnev -Forwarded: no -Last-Update: 2013-04-11 - ---- a/woff.c -+++ b/woff.c -@@ -127,6 +127,7 @@ - uint32_t * woffLen, uint32_t * pStatus) - { - uint8_t * woffData = NULL; -+ uint8_t * woffDataNew = NULL; - tableOrderRec * tableOrder = NULL; - - uint32_t tableOffset; -@@ -137,7 +138,6 @@ - uint16_t tableIndex; - uint16_t order; - const sfntDirEntry * sfntDir; -- uint32_t tableBase; - uint32_t checkSumAdjustment = 0; - woffHeader * newHeader; - uint32_t tag = 0; -@@ -295,8 +295,10 @@ - if (tableOffset + destLen < tableOffset) { - FAIL(eWOFF_invalid); - } -- woffData = (uint8_t *) realloc(woffData, tableOffset + destLen); -- if (!woffData) { -+ woffDataNew = (uint8_t *) realloc(woffData, tableOffset + destLen); -+ if (woffDataNew) { -+ woffData = woffDataNew; -+ } else { - FAIL(eWOFF_out_of_memory); - } - -@@ -321,9 +323,11 @@ - if (tableOffset + LONGALIGN(sourceLen) < tableOffset) { - FAIL(eWOFF_invalid); /* overflow, bail out */ - } -- woffData = (uint8_t *) realloc(woffData, -- tableOffset + LONGALIGN(sourceLen)); -- if (!woffData) { -+ woffDataNew = (uint8_t *) realloc(woffData, -+ tableOffset + LONGALIGN(sourceLen)); -+ if (woffDataNew) { -+ woffData = woffDataNew; -+ } else { - FAIL(eWOFF_out_of_memory); - } - /* copy the original data into place */ -@@ -435,7 +439,6 @@ - const woffHeader * origHeader; - const woffDirEntry * woffDir; - uint8_t * newData = NULL; -- uint8_t * tableData = NULL; - woffHeader * newHeader; - uint16_t numTables; - uint32_t tableLimit, totalSize, offset; diff --git a/segfault-debian-bug-785795.patch b/segfault-debian-bug-785795.patch deleted file mode 100644 index 1992430..0000000 --- a/segfault-debian-bug-785795.patch +++ /dev/null @@ -1,39 +0,0 @@ -diff -Naur a/woff.c b/woff.c ---- a/woff.c 2009-09-25 09:54:13.000000000 -0400 -+++ b/woff.c 2025-05-10 23:08:38.166716854 -0400 -@@ -174,6 +174,8 @@ - } - head = (const sfntHeadTable *)(sfntData + - READ32BE(sfntDir[tableIndex].offset)); -+ if ((uint8_t *)(head + 1) >= sfntData + sfntLen) -+ FAIL(eWOFF_invalid); - } - } - if (!head) { -@@ -752,7 +754,7 @@ - newHeader = (sfntHeader *) (sfntData); - newHeader->version = header->flavor; - newHeader->numTables = READ16BE(numTables); -- -+ - /* calculate header fields for binary search */ - searchRange = numTables; - searchRange |= (searchRange >> 1); -@@ -1015,7 +1017,7 @@ - if (pStatus) { - *pStatus = status; - } -- return NULL; -+ return NULL; - } - - const uint8_t * -@@ -1070,7 +1072,7 @@ - if (pStatus) { - *pStatus = status; - } -- return NULL; -+ return NULL; - } - - void diff --git a/woff.rpmlintrc b/woff.rpmlintrc deleted file mode 100644 index cdaa52f..0000000 --- a/woff.rpmlintrc +++ /dev/null @@ -1,2 +0,0 @@ -# Intentional, with a justifying spec-file comment -addFilter(r" no-%check-section") diff --git a/woff.spec b/woff.spec index 0cde48f..e213f93 100644 --- a/woff.spec +++ b/woff.spec @@ -20,46 +20,9 @@ Source2: woff2sfnt.1 # It’s possible that tableOrder could be freed twice if a failure occurs. Set # the pointer null after freeing it to prevent this. There is no current -# upstream to which this could be reported; however, this was reported to the -# sfnt2woff-zopfli fork: -# -# Fix a possible double free in woffEncode() -# https://github.com/bramstein/sfnt2woff-zopfli/pull/18 +# upstream to which this could be reported. Patch: possible-double-free.patch -# Add full text of the three WOFF licenses: -# - LICENSE-WOFF-MPL, from -# https://www.mozilla.org/media/MPL/1.1/index.0c5913925d40.txt -# - LICENSE-WOFF-GPL, from -# https://www.gnu.org/licenses/old-licenses/gpl-2.0.txt -# - LICENSE-WOFF-LGPL, from -# https://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt -# https://github.com/bramstein/sfnt2woff-zopfli/commit/7e08f1c944142c8e37050d9e02d91ec326d60ba5 -Patch: https://github.com/bramstein/sfnt2woff-zopfli/commit/7e08f1c944142c8e37050d9e02d91ec326d60ba5.patch -# Update GPL/LGPL license texts for remote-only FS -# https://github.com/bramstein/sfnt2woff-zopfli/pull/21 -Patch: https://github.com/bramstein/sfnt2woff-zopfli/pull/21.patch - -# Fix segfault due to https://bugs.debian.org/785795. -# Remaining Debian patch rollup -# https://github.com/bramstein/sfnt2woff-zopfli/pull/20 -# Since the patches from the sfnt2woff-zopfli do not apply directly, we link -# the patches Debian uses for woff (which they call woff-tools) where possible; -# see https://sources.debian.org/patches/woff-tools/0:2009.10.04-2. -# - Fix segfault due to https://bugs.debian.org/785795 -# https://github.com/bramstein/sfnt2woff-zopfli/pull/20/commits/51d74ebc4ab782f9e272fa4f135ee2375c991a5b -# Rebased from the sfnt2woff-zopfli fork onto the original woff release -Patch: segfault-debian-bug-785795.patch -# - Add arithmetic overflow checks in woff encoding routines -Patch: https://sources.debian.org/data/main/w/woff-tools/0%3A2009.10.04-2/debian/patches/add-overflow-checks.patch -# - Fix CVE-2010-1028: WOFF heap corruption due to integer overflow -Patch: https://sources.debian.org/data/main/w/woff-tools/0%3A2009.10.04-2/debian/patches/CVE-2010-1028.patch -# - fix some compiler and cppcheck warnings -Patch: https://sources.debian.org/data/main/w/woff-tools/0%3A2009.10.04-2/debian/patches/fix-compiler-and-cppcheck-warnings.patch - -# https://fedoraproject.org/wiki/Changes/EncourageI686LeafRemoval -ExcludeArch: %{ix86} - BuildRequires: make BuildRequires: gcc @@ -74,33 +37,20 @@ decoding Web Open Font Format (WOFF) files. %build +%set_build_flags %make_build CFLAGS="${CFLAGS}" -awk ' - /BEGIN LICENSE BLOCK/ { b = 1 } - b - /END LICENSE BLOCK/ { b = 0 }' woff.c | - tee LICENSE-WOFF %install # The Makefile has no install target. -install -D --preserve-timestamps \ - --target='%{buildroot}%{_bindir}' sfnt2woff woff2sfnt -install -D --preserve-timestamps --mode=0644 \ - --target='%{buildroot}%{_mandir}/man1' '%{SOURCE1}' '%{SOURCE2}' - - -# Upstream provides no tests +install -d '%{buildroot}%{_bindir}' +install -t '%{buildroot}%{_bindir}' -p sfnt2woff woff2sfnt +install -d '%{buildroot}%{_mandir}/man1' +install -t '%{buildroot}%{_mandir}/man1' -p -m 0644 '%{SOURCE1}' '%{SOURCE2}' %files -%license LICENSE-WOFF -%license LICENSE-WOFF-MPL -%license LICENSE-WOFF-GPL -%license LICENSE-WOFF-LGPL - %doc woff-2009-10-03.html - %{_bindir}/sfnt2woff %{_bindir}/woff2sfnt %{_mandir}/man1/sfnt2woff.1*