1This package, the EXT2 filesystem utilities, are made available under 2the GNU Public License version 2, with the exception of the lib/ext2fs 3and lib/e2p libraries, which are made available under the GNU Library 4General Public License Version 2, the lib/uuid library which is made 5available under a BSD-style license and the lib/et and lib/ss 6libraries which are made available under an MIT-style license. Please 7see lib/uuid/COPYING for more details for the license for the files 8comprising the libuuid library, and the source file headers of the 9libet and libss libraries for more information. 10 11The most recent officially distributed version can be found at 12http://e2fsprogs.sourceforge.net. If you need to make a distribution, 13that's the one you should use. If there is some reason why you'd like 14a more recent version that is still in ALPHA testing (i.e., either 15using the "WIP" test distributions or one from the hg or git 16repository from the development branch, please contact me 17(tytso@mit.edu) before you ship. The release schedules for this 18package are flexible, if you give me enough lead time. 19 20 21 Theodore Ts'o 22 23-June-2007 23 24---------------------------------------------------------------------- 25 26 GNU GENERAL PUBLIC LICENSE 27 Version 2, June 1991 28 29 Copyright (C) 1989, 1991 Free Software Foundation, Inc. 30 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA 31 Everyone is permitted to copy and distribute verbatim copies 32 of this license document, but changing it is not allowed. 33 34 Preamble 35 36 The licenses for most software are designed to take away your 37freedom to share and change it. By contrast, the GNU General Public 38License is intended to guarantee your freedom to share and change free 39software--to make sure the software is free for all its users. This 40General Public License applies to most of the Free Software 41Foundation's software and to any other program whose authors commit to 42using it. (Some other Free Software Foundation software is covered by 43the GNU Library General Public License instead.) You can apply it to 44your programs, too. 45 46 When we speak of free software, we are referring to freedom, not 47price. Our General Public Licenses are designed to make sure that you 48have the freedom to distribute copies of free software (and charge for 49this service if you wish), that you receive source code or can get it 50if you want it, that you can change the software or use pieces of it 51in new free programs; and that you know you can do these things. 52 53 To protect your rights, we need to make restrictions that forbid 54anyone to deny you these rights or to ask you to surrender the rights. 55These restrictions translate to certain responsibilities for you if you 56distribute copies of the software, or if you modify it. 57 58 For example, if you distribute copies of such a program, whether 59gratis or for a fee, you must give the recipients all the rights that 60you have. You must make sure that they, too, receive or can get the 61source code. And you must show them these terms so they know their 62rights. 63 64 We protect your rights with two steps: (1) copyright the software, and 65(2) offer you this license which gives you legal permission to copy, 66distribute and/or modify the software. 67 68 Also, for each author's protection and ours, we want to make certain 69that everyone understands that there is no warranty for this free 70software. If the software is modified by someone else and passed on, we 71want its recipients to know that what they have is not the original, so 72that any problems introduced by others will not reflect on the original 73authors' reputations. 74 75 Finally, any free program is threatened constantly by software 76patents. We wish to avoid the danger that redistributors of a free 77program will individually obtain patent licenses, in effect making the 78program proprietary. To prevent this, we have made it clear that any 79patent must be licensed for everyone's free use or not licensed at all. 80 81 The precise terms and conditions for copying, distribution and 82modification follow. 83 84 GNU GENERAL PUBLIC LICENSE 85 TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION 86 87 0. This License applies to any program or other work which contains 88a notice placed by the copyright holder saying it may be distributed 89under the terms of this General Public License. The "Program", below, 90refers to any such program or work, and a "work based on the Program" 91means either the Program or any derivative work under copyright law: 92that is to say, a work containing the Program or a portion of it, 93either verbatim or with modifications and/or translated into another 94language. (Hereinafter, translation is included without limitation in 95the term "modification".) Each licensee is addressed as "you". 96 97Activities other than copying, distribution and modification are not 98covered by this License; they are outside its scope. The act of 99running the Program is not restricted, and the output from the Program 100is covered only if its contents constitute a work based on the 101Program (independent of having been made by running the Program). 102Whether that is true depends on what the Program does. 103 104 1. You may copy and distribute verbatim copies of the Program's 105source code as you receive it, in any medium, provided that you 106conspicuously and appropriately publish on each copy an appropriate 107copyright notice and disclaimer of warranty; keep intact all the 108notices that refer to this License and to the absence of any warranty; 109and give any other recipients of the Program a copy of this License 110along with the Program. 111 112You may charge a fee for the physical act of transferring a copy, and 113you may at your option offer warranty protection in exchange for a fee. 114 115 2. You may modify your copy or copies of the Program or any portion 116of it, thus forming a work based on the Program, and copy and 117distribute such modifications or work under the terms of Section 1 118above, provided that you also meet all of these conditions: 119 120 a) You must cause the modified files to carry prominent notices 121 stating that you changed the files and the date of any change. 122 123 b) You must cause any work that you distribute or publish, that in 124 whole or in part contains or is derived from the Program or any 125 part thereof, to be licensed as a whole at no charge to all third 126 parties under the terms of this License. 127 128 c) If the modified program normally reads commands interactively 129 when run, you must cause it, when started running for such 130 interactive use in the most ordinary way, to print or display an 131 announcement including an appropriate copyright notice and a 132 notice that there is no warranty (or else, saying that you provide 133 a warranty) and that users may redistribute the program under 134 these conditions, and telling the user how to view a copy of this 135 License. (Exception: if the Program itself is interactive but 136 does not normally print such an announcement, your work based on 137 the Program is not required to print an announcement.) 138 139These requirements apply to the modified work as a whole. If 140identifiable sections of that work are not derived from the Program, 141and can be reasonably considered independent and separate works in 142themselves, then this License, and its terms, do not apply to those 143sections when you distribute them as separate works. But when you 144distribute the same sections as part of a whole which is a work based 145on the Program, the distribution of the whole must be on the terms of 146this License, whose permissions for other licensees extend to the 147entire whole, and thus to each and every part regardless of who wrote it. 148 149Thus, it is not the intent of this section to claim rights or contest 150your rights to work written entirely by you; rather, the intent is to 151exercise the right to control the distribution of derivative or 152collective works based on the Program. 153 154In addition, mere aggregation of another work not based on the Program 155with the Program (or with a work based on the Program) on a volume of 156a storage or distribution medium does not bring the other work under 157the scope of this License. 158 159 3. You may copy and distribute the Program (or a work based on it, 160under Section 2) in object code or executable form under the terms of 161Sections 1 and 2 above provided that you also do one of the following: 162 163 a) Accompany it with the complete corresponding machine-readable 164 source code, which must be distributed under the terms of Sections 165 1 and 2 above on a medium customarily used for software interchange; or, 166 167 b) Accompany it with a written offer, valid for at least three 168 years, to give any third party, for a charge no more than your 169 cost of physically performing source distribution, a complete 170 machine-readable copy of the corresponding source code, to be 171 distributed under the terms of Sections 1 and 2 above on a medium 172 customarily used for software interchange; or, 173 174 c) Accompany it with the information you received as to the offer 175 to distribute corresponding source code. (This alternative is 176 allowed only for noncommercial distribution and only if you 177 received the program in object code or executable form with such 178 an offer, in accord with Subsection b above.) 179 180The source code for a work means the preferred form of the work for 181making modifications to it. For an executable work, complete source 182code means all the source code for all modules it contains, plus any 183associated interface definition files, plus the scripts used to 184control compilation and installation of the executable. However, as a 185special exception, the source code distributed need not include 186anything that is normally distributed (in either source or binary 187form) with the major components (compiler, kernel, and so on) of the 188operating system on which the executable runs, unless that component 189itself accompanies the executable. 190 191If distribution of executable or object code is made by offering 192access to copy from a designated place, then offering equivalent 193access to copy the source code from the same place counts as 194distribution of the source code, even though third parties are not 195compelled to copy the source along with the object code. 196 197 4. You may not copy, modify, sublicense, or distribute the Program 198except as expressly provided under this License. Any attempt 199otherwise to copy, modify, sublicense or distribute the Program is 200void, and will automatically terminate your rights under this License. 201However, parties who have received copies, or rights, from you under 202this License will not have their licenses terminated so long as such 203parties remain in full compliance. 204 205 5. You are not required to accept this License, since you have not 206signed it. However, nothing else grants you permission to modify or 207distribute the Program or its derivative works. These actions are 208prohibited by law if you do not accept this License. Therefore, by 209modifying or distributing the Program (or any work based on the 210Program), you indicate your acceptance of this License to do so, and 211all its terms and conditions for copying, distributing or modifying 212the Program or works based on it. 213 214 6. Each time you redistribute the Program (or any work based on the 215Program), the recipient automatically receives a license from the 216original licensor to copy, distribute or modify the Program subject to 217these terms and conditions. You may not impose any further 218restrictions on the recipients' exercise of the rights granted herein. 219You are not responsible for enforcing compliance by third parties to 220this License. 221 222 7. If, as a consequence of a court judgment or allegation of patent 223infringement or for any other reason (not limited to patent issues), 224conditions are imposed on you (whether by court order, agreement or 225otherwise) that contradict the conditions of this License, they do not 226excuse you from the conditions of this License. If you cannot 227distribute so as to satisfy simultaneously your obligations under this 228License and any other pertinent obligations, then as a consequence you 229may not distribute the Program at all. For example, if a patent 230license would not permit royalty-free redistribution of the Program by 231all those who receive copies directly or indirectly through you, then 232the only way you could satisfy both it and this License would be to 233refrain entirely from distribution of the Program. 234 235If any portion of this section is held invalid or unenforceable under 236any particular circumstance, the balance of the section is intended to 237apply and the section as a whole is intended to apply in other 238circumstances. 239 240It is not the purpose of this section to induce you to infringe any 241patents or other property right claims or to contest validity of any 242such claims; this section has the sole purpose of protecting the 243integrity of the free software distribution system, which is 244implemented by public license practices. Many people have made 245generous contributions to the wide range of software distributed 246through that system in reliance on consistent application of that 247system; it is up to the author/donor to decide if he or she is willing 248to distribute software through any other system and a licensee cannot 249impose that choice. 250 251This section is intended to make thoroughly clear what is believed to 252be a consequence of the rest of this License. 253 254 8. If the distribution and/or use of the Program is restricted in 255certain countries either by patents or by copyrighted interfaces, the 256original copyright holder who places the Program under this License 257may add an explicit geographical distribution limitation excluding 258those countries, so that distribution is permitted only in or among 259countries not thus excluded. In such case, this License incorporates 260the limitation as if written in the body of this License. 261 262 9. The Free Software Foundation may publish revised and/or new versions 263of the General Public License from time to time. Such new versions will 264be similar in spirit to the present version, but may differ in detail to 265address new problems or concerns. 266 267Each version is given a distinguishing version number. If the Program 268specifies a version number of this License which applies to it and "any 269later version", you have the option of following the terms and conditions 270either of that version or of any later version published by the Free 271Software Foundation. If the Program does not specify a version number of 272this License, you may choose any version ever published by the Free Software 273Foundation. 274 275 10. If you wish to incorporate parts of the Program into other free 276programs whose distribution conditions are different, write to the author 277to ask for permission. For software which is copyrighted by the Free 278Software Foundation, write to the Free Software Foundation; we sometimes 279make exceptions for this. Our decision will be guided by the two goals 280of preserving the free status of all derivatives of our free software and 281of promoting the sharing and reuse of software generally. 282 283 NO WARRANTY 284 285 11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY 286FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN 287OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES 288PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED 289OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF 290MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS 291TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE 292PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING, 293REPAIR OR CORRECTION. 294 295 12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING 296WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR 297REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, 298INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING 299OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED 300TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY 301YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER 302PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE 303POSSIBILITY OF SUCH DAMAGES. 304 305 END OF TERMS AND CONDITIONS 306 307 How to Apply These Terms to Your New Programs 308 309 If you develop a new program, and you want it to be of the greatest 310possible use to the public, the best way to achieve this is to make it 311free software which everyone can redistribute and change under these terms. 312 313 To do so, attach the following notices to the program. It is safest 314to attach them to the start of each source file to most effectively 315convey the exclusion of warranty; and each file should have at least 316the "copyright" line and a pointer to where the full notice is found. 317 318 <one line to give the program's name and a brief idea of what it does.> 319 Copyright (C) <year> <name of author> 320 321 This program is free software; you can redistribute it and/or modify 322 it under the terms of the GNU General Public License as published by 323 the Free Software Foundation; either version 2 of the License, or 324 (at your option) any later version. 325 326 This program is distributed in the hope that it will be useful, 327 but WITHOUT ANY WARRANTY; without even the implied warranty of 328 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 329 GNU General Public License for more details. 330 331 You should have received a copy of the GNU General Public License 332 along with this program; if not, write to the Free Software 333 Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA 334 335 336Also add information on how to contact you by electronic and paper mail. 337 338If the program is interactive, make it output a short notice like this 339when it starts in an interactive mode: 340 341 Gnomovision version 69, Copyright (C) year name of author 342 Gnomovision comes with ABSOLUTELY NO WARRANTY; for details type `show w'. 343 This is free software, and you are welcome to redistribute it 344 under certain conditions; type `show c' for details. 345 346The hypothetical commands `show w' and `show c' should show the appropriate 347parts of the General Public License. Of course, the commands you use may 348be called something other than `show w' and `show c'; they could even be 349mouse-clicks or menu items--whatever suits your program. 350 351You should also get your employer (if you work as a programmer) or your 352school, if any, to sign a "copyright disclaimer" for the program, if 353necessary. Here is a sample; alter the names: 354 355 Yoyodyne, Inc., hereby disclaims all copyright interest in the program 356 `Gnomovision' (which makes passes at compilers) written by James Hacker. 357 358 <signature of Ty Coon>, 1 April 1989 359 Ty Coon, President of Vice 360 361This General Public License does not permit incorporating your program into 362proprietary programs. If your program is a subroutine library, you may 363consider it more useful to permit linking proprietary applications with the 364library. If this is what you want to do, use the GNU Library General 365Public License instead of this License. 366 367---------------------------------------------------------------------- 368 369 GNU LIBRARY GENERAL PUBLIC LICENSE 370 Version 2, June 1991 371 372 Copyright (C) 1991 Free Software Foundation, Inc. 373 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA 374 Everyone is permitted to copy and distribute verbatim copies 375 of this license document, but changing it is not allowed. 376 377[This is the first released version of the library GPL. It is 378 numbered 2 because it goes with version 2 of the ordinary GPL.] 379 380 Preamble 381 382 The licenses for most software are designed to take away your 383freedom to share and change it. By contrast, the GNU General Public 384Licenses are intended to guarantee your freedom to share and change 385free software--to make sure the software is free for all its users. 386 387 This license, the Library General Public License, applies to some 388specially designated Free Software Foundation software, and to any 389other libraries whose authors decide to use it. You can use it for 390your libraries, too. 391 392 When we speak of free software, we are referring to freedom, not 393price. Our General Public Licenses are designed to make sure that you 394have the freedom to distribute copies of free software (and charge for 395this service if you wish), that you receive source code or can get it 396if you want it, that you can change the software or use pieces of it 397in new free programs; and that you know you can do these things. 398 399 To protect your rights, we need to make restrictions that forbid 400anyone to deny you these rights or to ask you to surrender the rights. 401These restrictions translate to certain responsibilities for you if 402you distribute copies of the library, or if you modify it. 403 404 For example, if you distribute copies of the library, whether gratis 405or for a fee, you must give the recipients all the rights that we gave 406you. You must make sure that they, too, receive or can get the source 407code. If you link a program with the library, you must provide 408complete object files to the recipients so that they can relink them 409with the library, after making changes to the library and recompiling 410it. And you must show them these terms so they know their rights. 411 412 Our method of protecting your rights has two steps: (1) copyright 413the library, and (2) offer you this license which gives you legal 414permission to copy, distribute and/or modify the library. 415 416 Also, for each distributor's protection, we want to make certain 417that everyone understands that there is no warranty for this free 418library. If the library is modified by someone else and passed on, we 419want its recipients to know that what they have is not the original 420version, so that any problems introduced by others will not reflect on 421the original authors' reputations. 422 423 Finally, any free program is threatened constantly by software 424patents. We wish to avoid the danger that companies distributing free 425software will individually obtain patent licenses, thus in effect 426transforming the program into proprietary software. To prevent this, 427we have made it clear that any patent must be licensed for everyone's 428free use or not licensed at all. 429 430 Most GNU software, including some libraries, is covered by the ordinary 431GNU General Public License, which was designed for utility programs. This 432license, the GNU Library General Public License, applies to certain 433designated libraries. This license is quite different from the ordinary 434one; be sure to read it in full, and don't assume that anything in it is 435the same as in the ordinary license. 436 437 The reason we have a separate public license for some libraries is that 438they blur the distinction we usually make between modifying or adding to a 439program and simply using it. Linking a program with a library, without 440changing the library, is in some sense simply using the library, and is 441analogous to running a utility program or application program. However, in 442a textual and legal sense, the linked executable is a combined work, a 443derivative of the original library, and the ordinary General Public License 444treats it as such. 445 446 Because of this blurred distinction, using the ordinary General 447Public License for libraries did not effectively promote software 448sharing, because most developers did not use the libraries. We 449concluded that weaker conditions might promote sharing better. 450 451 However, unrestricted linking of non-free programs would deprive the 452users of those programs of all benefit from the free status of the 453libraries themselves. This Library General Public License is intended to 454permit developers of non-free programs to use free libraries, while 455preserving your freedom as a user of such programs to change the free 456libraries that are incorporated in them. (We have not seen how to achieve 457this as regards changes in header files, but we have achieved it as regards 458changes in the actual functions of the Library.) The hope is that this 459will lead to faster development of free libraries. 460 461 The precise terms and conditions for copying, distribution and 462modification follow. Pay close attention to the difference between a 463"work based on the library" and a "work that uses the library". The 464former contains code derived from the library, while the latter only 465works together with the library. 466 467 Note that it is possible for a library to be covered by the ordinary 468General Public License rather than by this special one. 469 470 GNU LIBRARY GENERAL PUBLIC LICENSE 471 TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION 472 473 0. This License Agreement applies to any software library which 474contains a notice placed by the copyright holder or other authorized 475party saying it may be distributed under the terms of this Library 476General Public License (also called "this License"). Each licensee is 477addressed as "you". 478 479 A "library" means a collection of software functions and/or data 480prepared so as to be conveniently linked with application programs 481(which use some of those functions and data) to form executables. 482 483 The "Library", below, refers to any such software library or work 484which has been distributed under these terms. A "work based on the 485Library" means either the Library or any derivative work under 486copyright law: that is to say, a work containing the Library or a 487portion of it, either verbatim or with modifications and/or translated 488straightforwardly into another language. (Hereinafter, translation is 489included without limitation in the term "modification".) 490 491 "Source code" for a work means the preferred form of the work for 492making modifications to it. For a library, complete source code means 493all the source code for all modules it contains, plus any associated 494interface definition files, plus the scripts used to control compilation 495and installation of the library. 496 497 Activities other than copying, distribution and modification are not 498covered by this License; they are outside its scope. The act of 499running a program using the Library is not restricted, and output from 500such a program is covered only if its contents constitute a work based 501on the Library (independent of the use of the Library in a tool for 502writing it). Whether that is true depends on what the Library does 503and what the program that uses the Library does. 504 505 1. You may copy and distribute verbatim copies of the Library's 506complete source code as you receive it, in any medium, provided that 507you conspicuously and appropriately publish on each copy an 508appropriate copyright notice and disclaimer of warranty; keep intact 509all the notices that refer to this License and to the absence of any 510warranty; and distribute a copy of this License along with the 511Library. 512 513 You may charge a fee for the physical act of transferring a copy, 514and you may at your option offer warranty protection in exchange for a 515fee. 516 517 2. You may modify your copy or copies of the Library or any portion 518of it, thus forming a work based on the Library, and copy and 519distribute such modifications or work under the terms of Section 1 520above, provided that you also meet all of these conditions: 521 522 a) The modified work must itself be a software library. 523 524 b) You must cause the files modified to carry prominent notices 525 stating that you changed the files and the date of any change. 526 527 c) You must cause the whole of the work to be licensed at no 528 charge to all third parties under the terms of this License. 529 530 d) If a facility in the modified Library refers to a function or a 531 table of data to be supplied by an application program that uses 532 the facility, other than as an argument passed when the facility 533 is invoked, then you must make a good faith effort to ensure that, 534 in the event an application does not supply such function or 535 table, the facility still operates, and performs whatever part of 536 its purpose remains meaningful. 537 538 (For example, a function in a library to compute square roots has 539 a purpose that is entirely well-defined independent of the 540 application. Therefore, Subsection 2d requires that any 541 application-supplied function or table used by this function must 542 be optional: if the application does not supply it, the square 543 root function must still compute square roots.) 544 545These requirements apply to the modified work as a whole. If 546identifiable sections of that work are not derived from the Library, 547and can be reasonably considered independent and separate works in 548themselves, then this License, and its terms, do not apply to those 549sections when you distribute them as separate works. But when you 550distribute the same sections as part of a whole which is a work based 551on the Library, the distribution of the whole must be on the terms of 552this License, whose permissions for other licensees extend to the 553entire whole, and thus to each and every part regardless of who wrote 554it. 555 556Thus, it is not the intent of this section to claim rights or contest 557your rights to work written entirely by you; rather, the intent is to 558exercise the right to control the distribution of derivative or 559collective works based on the Library. 560 561In addition, mere aggregation of another work not based on the Library 562with the Library (or with a work based on the Library) on a volume of 563a storage or distribution medium does not bring the other work under 564the scope of this License. 565 566 3. You may opt to apply the terms of the ordinary GNU General Public 567License instead of this License to a given copy of the Library. To do 568this, you must alter all the notices that refer to this License, so 569that they refer to the ordinary GNU General Public License, version 2, 570instead of to this License. (If a newer version than version 2 of the 571ordinary GNU General Public License has appeared, then you can specify 572that version instead if you wish.) Do not make any other change in 573these notices. 574 575 Once this change is made in a given copy, it is irreversible for 576that copy, so the ordinary GNU General Public License applies to all 577subsequent copies and derivative works made from that copy. 578 579 This option is useful when you wish to copy part of the code of 580the Library into a program that is not a library. 581 582 4. You may copy and distribute the Library (or a portion or 583derivative of it, under Section 2) in object code or executable form 584under the terms of Sections 1 and 2 above provided that you accompany 585it with the complete corresponding machine-readable source code, which 586must be distributed under the terms of Sections 1 and 2 above on a 587medium customarily used for software interchange. 588 589 If distribution of object code is made by offering access to copy 590from a designated place, then offering equivalent access to copy the 591source code from the same place satisfies the requirement to 592distribute the source code, even though third parties are not 593compelled to copy the source along with the object code. 594 595 5. A program that contains no derivative of any portion of the 596Library, but is designed to work with the Library by being compiled or 597linked with it, is called a "work that uses the Library". Such a 598work, in isolation, is not a derivative work of the Library, and 599therefore falls outside the scope of this License. 600 601 However, linking a "work that uses the Library" with the Library 602creates an executable that is a derivative of the Library (because it 603contains portions of the Library), rather than a "work that uses the 604library". The executable is therefore covered by this License. 605Section 6 states terms for distribution of such executables. 606 607 When a "work that uses the Library" uses material from a header file 608that is part of the Library, the object code for the work may be a 609derivative work of the Library even though the source code is not. 610Whether this is true is especially significant if the work can be 611linked without the Library, or if the work is itself a library. The 612threshold for this to be true is not precisely defined by law. 613 614 If such an object file uses only numerical parameters, data 615structure layouts and accessors, and small macros and small inline 616functions (ten lines or less in length), then the use of the object 617file is unrestricted, regardless of whether it is legally a derivative 618work. (Executables containing this object code plus portions of the 619Library will still fall under Section 6.) 620 621 Otherwise, if the work is a derivative of the Library, you may 622distribute the object code for the work under the terms of Section 6. 623Any executables containing that work also fall under Section 6, 624whether or not they are linked directly with the Library itself. 625 626 6. As an exception to the Sections above, you may also compile or 627link a "work that uses the Library" with the Library to produce a 628work containing portions of the Library, and distribute that work 629under terms of your choice, provided that the terms permit 630modification of the work for the customer's own use and reverse 631engineering for debugging such modifications. 632 633 You must give prominent notice with each copy of the work that the 634Library is used in it and that the Library and its use are covered by 635this License. You must supply a copy of this License. If the work 636during execution displays copyright notices, you must include the 637copyright notice for the Library among them, as well as a reference 638directing the user to the copy of this License. Also, you must do one 639of these things: 640 641 a) Accompany the work with the complete corresponding 642 machine-readable source code for the Library including whatever 643 changes were used in the work (which must be distributed under 644 Sections 1 and 2 above); and, if the work is an executable linked 645 with the Library, with the complete machine-readable "work that 646 uses the Library", as object code and/or source code, so that the 647 user can modify the Library and then relink to produce a modified 648 executable containing the modified Library. (It is understood 649 that the user who changes the contents of definitions files in the 650 Library will not necessarily be able to recompile the application 651 to use the modified definitions.) 652 653 b) Accompany the work with a written offer, valid for at 654 least three years, to give the same user the materials 655 specified in Subsection 6a, above, for a charge no more 656 than the cost of performing this distribution. 657 658 c) If distribution of the work is made by offering access to copy 659 from a designated place, offer equivalent access to copy the above 660 specified materials from the same place. 661 662 d) Verify that the user has already received a copy of these 663 materials or that you have already sent this user a copy. 664 665 For an executable, the required form of the "work that uses the 666Library" must include any data and utility programs needed for 667reproducing the executable from it. However, as a special exception, 668the source code distributed need not include anything that is normally 669distributed (in either source or binary form) with the major 670components (compiler, kernel, and so on) of the operating system on 671which the executable runs, unless that component itself accompanies 672the executable. 673 674 It may happen that this requirement contradicts the license 675restrictions of other proprietary libraries that do not normally 676accompany the operating system. Such a contradiction means you cannot 677use both them and the Library together in an executable that you 678distribute. 679 680 7. You may place library facilities that are a work based on the 681Library side-by-side in a single library together with other library 682facilities not covered by this License, and distribute such a combined 683library, provided that the separate distribution of the work based on 684the Library and of the other library facilities is otherwise 685permitted, and provided that you do these two things: 686 687 a) Accompany the combined library with a copy of the same work 688 based on the Library, uncombined with any other library 689 facilities. This must be distributed under the terms of the 690 Sections above. 691 692 b) Give prominent notice with the combined library of the fact 693 that part of it is a work based on the Library, and explaining 694 where to find the accompanying uncombined form of the same work. 695 696 8. You may not copy, modify, sublicense, link with, or distribute 697the Library except as expressly provided under this License. Any 698attempt otherwise to copy, modify, sublicense, link with, or 699distribute the Library is void, and will automatically terminate your 700rights under this License. However, parties who have received copies, 701or rights, from you under this License will not have their licenses 702terminated so long as such parties remain in full compliance. 703 704 9. You are not required to accept this License, since you have not 705signed it. However, nothing else grants you permission to modify or 706distribute the Library or its derivative works. These actions are 707prohibited by law if you do not accept this License. Therefore, by 708modifying or distributing the Library (or any work based on the 709Library), you indicate your acceptance of this License to do so, and 710all its terms and conditions for copying, distributing or modifying 711the Library or works based on it. 712 713 10. Each time you redistribute the Library (or any work based on the 714Library), the recipient automatically receives a license from the 715original licensor to copy, distribute, link with or modify the Library 716subject to these terms and conditions. You may not impose any further 717restrictions on the recipients' exercise of the rights granted herein. 718You are not responsible for enforcing compliance by third parties to 719this License. 720 721 11. If, as a consequence of a court judgment or allegation of patent 722infringement or for any other reason (not limited to patent issues), 723conditions are imposed on you (whether by court order, agreement or 724otherwise) that contradict the conditions of this License, they do not 725excuse you from the conditions of this License. If you cannot 726distribute so as to satisfy simultaneously your obligations under this 727License and any other pertinent obligations, then as a consequence you 728may not distribute the Library at all. For example, if a patent 729license would not permit royalty-free redistribution of the Library by 730all those who receive copies directly or indirectly through you, then 731the only way you could satisfy both it and this License would be to 732refrain entirely from distribution of the Library. 733 734If any portion of this section is held invalid or unenforceable under any 735particular circumstance, the balance of the section is intended to apply, 736and the section as a whole is intended to apply in other circumstances. 737 738It is not the purpose of this section to induce you to infringe any 739patents or other property right claims or to contest validity of any 740such claims; this section has the sole purpose of protecting the 741integrity of the free software distribution system which is 742implemented by public license practices. Many people have made 743generous contributions to the wide range of software distributed 744through that system in reliance on consistent application of that 745system; it is up to the author/donor to decide if he or she is willing 746to distribute software through any other system and a licensee cannot 747impose that choice. 748 749This section is intended to make thoroughly clear what is believed to 750be a consequence of the rest of this License. 751 752 12. If the distribution and/or use of the Library is restricted in 753certain countries either by patents or by copyrighted interfaces, the 754original copyright holder who places the Library under this License may add 755an explicit geographical distribution limitation excluding those countries, 756so that distribution is permitted only in or among countries not thus 757excluded. In such case, this License incorporates the limitation as if 758written in the body of this License. 759 760 13. The Free Software Foundation may publish revised and/or new 761versions of the Library General Public License from time to time. 762Such new versions will be similar in spirit to the present version, 763but may differ in detail to address new problems or concerns. 764 765Each version is given a distinguishing version number. If the Library 766specifies a version number of this License which applies to it and 767"any later version", you have the option of following the terms and 768conditions either of that version or of any later version published by 769the Free Software Foundation. If the Library does not specify a 770license version number, you may choose any version ever published by 771the Free Software Foundation. 772 773 14. If you wish to incorporate parts of the Library into other free 774programs whose distribution conditions are incompatible with these, 775write to the author to ask for permission. For software which is 776copyrighted by the Free Software Foundation, write to the Free 777Software Foundation; we sometimes make exceptions for this. Our 778decision will be guided by the two goals of preserving the free status 779of all derivatives of our free software and of promoting the sharing 780and reuse of software generally. 781 782 NO WARRANTY 783 784 15. BECAUSE THE LIBRARY IS LICENSED FREE OF CHARGE, THERE IS NO 785WARRANTY FOR THE LIBRARY, TO THE EXTENT PERMITTED BY APPLICABLE LAW. 786EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR 787OTHER PARTIES PROVIDE THE LIBRARY "AS IS" WITHOUT WARRANTY OF ANY 788KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE 789IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR 790PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE 791LIBRARY IS WITH YOU. SHOULD THE LIBRARY PROVE DEFECTIVE, YOU ASSUME 792THE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION. 793 794 16. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN 795WRITING WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY 796AND/OR REDISTRIBUTE THE LIBRARY AS PERMITTED ABOVE, BE LIABLE TO YOU 797FOR DAMAGES, INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR 798CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR INABILITY TO USE THE 799LIBRARY (INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA BEING 800RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A 801FAILURE OF THE LIBRARY TO OPERATE WITH ANY OTHER SOFTWARE), EVEN IF 802SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH 803DAMAGES. 804 805 END OF TERMS AND CONDITIONS 806 807 How to Apply These Terms to Your New Libraries 808 809 If you develop a new library, and you want it to be of the greatest 810possible use to the public, we recommend making it free software that 811everyone can redistribute and change. You can do so by permitting 812redistribution under these terms (or, alternatively, under the terms of the 813ordinary General Public License). 814 815 To apply these terms, attach the following notices to the library. It is 816safest to attach them to the start of each source file to most effectively 817convey the exclusion of warranty; and each file should have at least the 818"copyright" line and a pointer to where the full notice is found. 819 820 <one line to give the library's name and a brief idea of what it does.> 821 Copyright (C) <year> <name of author> 822 823 This library is free software; you can redistribute it and/or 824 modify it under the terms of the GNU Library General Public 825 License as published by the Free Software Foundation; either 826 version 2 of the License, or (at your option) any later version. 827 828 This library is distributed in the hope that it will be useful, 829 but WITHOUT ANY WARRANTY; without even the implied warranty of 830 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 831 Library General Public License for more details. 832 833 You should have received a copy of the GNU Library General Public 834 License along with this library; if not, write to the Free Software 835 Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA 836 837Also add information on how to contact you by electronic and paper mail. 838 839You should also get your employer (if you work as a programmer) or your 840school, if any, to sign a "copyright disclaimer" for the library, if 841necessary. Here is a sample; alter the names: 842 843 Yoyodyne, Inc., hereby disclaims all copyright interest in the 844 library `Frob' (a library for tweaking knobs) written by James Random Hacker. 845 846 <signature of Ty Coon>, 1 April 1990 847 Ty Coon, President of Vice 848 849That's all there is to it! 850