Initial Windows agent repository
This commit is contained in:
commit
a0db0c2e5b
10589 changed files with 3844063 additions and 0 deletions
674
OGP64/usr/share/doc/Cygwin/COPYING
Normal file
674
OGP64/usr/share/doc/Cygwin/COPYING
Normal file
|
|
@ -0,0 +1,674 @@
|
|||
GNU GENERAL PUBLIC LICENSE
|
||||
Version 3, 29 June 2007
|
||||
|
||||
Copyright (C) 2007 Free Software Foundation, Inc. <http://fsf.org/>
|
||||
Everyone is permitted to copy and distribute verbatim copies
|
||||
of this license document, but changing it is not allowed.
|
||||
|
||||
Preamble
|
||||
|
||||
The GNU General Public License is a free, copyleft license for
|
||||
software and other kinds of works.
|
||||
|
||||
The licenses for most software and other practical works are designed
|
||||
to take away your freedom to share and change the works. By contrast,
|
||||
the GNU General Public License is intended to guarantee your freedom to
|
||||
share and change all versions of a program--to make sure it remains free
|
||||
software for all its users. We, the Free Software Foundation, use the
|
||||
GNU General Public License for most of our software; it applies also to
|
||||
any other work released this way by its authors. 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
|
||||
them 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 prevent others from denying you
|
||||
these rights or asking you to surrender the rights. Therefore, you have
|
||||
certain responsibilities if you distribute copies of the software, or if
|
||||
you modify it: responsibilities to respect the freedom of others.
|
||||
|
||||
For example, if you distribute copies of such a program, whether
|
||||
gratis or for a fee, you must pass on to the recipients the same
|
||||
freedoms that you received. 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.
|
||||
|
||||
Developers that use the GNU GPL protect your rights with two steps:
|
||||
(1) assert copyright on the software, and (2) offer you this License
|
||||
giving you legal permission to copy, distribute and/or modify it.
|
||||
|
||||
For the developers' and authors' protection, the GPL clearly explains
|
||||
that there is no warranty for this free software. For both users' and
|
||||
authors' sake, the GPL requires that modified versions be marked as
|
||||
changed, so that their problems will not be attributed erroneously to
|
||||
authors of previous versions.
|
||||
|
||||
Some devices are designed to deny users access to install or run
|
||||
modified versions of the software inside them, although the manufacturer
|
||||
can do so. This is fundamentally incompatible with the aim of
|
||||
protecting users' freedom to change the software. The systematic
|
||||
pattern of such abuse occurs in the area of products for individuals to
|
||||
use, which is precisely where it is most unacceptable. Therefore, we
|
||||
have designed this version of the GPL to prohibit the practice for those
|
||||
products. If such problems arise substantially in other domains, we
|
||||
stand ready to extend this provision to those domains in future versions
|
||||
of the GPL, as needed to protect the freedom of users.
|
||||
|
||||
Finally, every program is threatened constantly by software patents.
|
||||
States should not allow patents to restrict development and use of
|
||||
software on general-purpose computers, but in those that do, we wish to
|
||||
avoid the special danger that patents applied to a free program could
|
||||
make it effectively proprietary. To prevent this, the GPL assures that
|
||||
patents cannot be used to render the program non-free.
|
||||
|
||||
The precise terms and conditions for copying, distribution and
|
||||
modification follow.
|
||||
|
||||
TERMS AND CONDITIONS
|
||||
|
||||
0. Definitions.
|
||||
|
||||
"This License" refers to version 3 of the GNU General Public License.
|
||||
|
||||
"Copyright" also means copyright-like laws that apply to other kinds of
|
||||
works, such as semiconductor masks.
|
||||
|
||||
"The Program" refers to any copyrightable work licensed under this
|
||||
License. Each licensee is addressed as "you". "Licensees" and
|
||||
"recipients" may be individuals or organizations.
|
||||
|
||||
To "modify" a work means to copy from or adapt all or part of the work
|
||||
in a fashion requiring copyright permission, other than the making of an
|
||||
exact copy. The resulting work is called a "modified version" of the
|
||||
earlier work or a work "based on" the earlier work.
|
||||
|
||||
A "covered work" means either the unmodified Program or a work based
|
||||
on the Program.
|
||||
|
||||
To "propagate" a work means to do anything with it that, without
|
||||
permission, would make you directly or secondarily liable for
|
||||
infringement under applicable copyright law, except executing it on a
|
||||
computer or modifying a private copy. Propagation includes copying,
|
||||
distribution (with or without modification), making available to the
|
||||
public, and in some countries other activities as well.
|
||||
|
||||
To "convey" a work means any kind of propagation that enables other
|
||||
parties to make or receive copies. Mere interaction with a user through
|
||||
a computer network, with no transfer of a copy, is not conveying.
|
||||
|
||||
An interactive user interface displays "Appropriate Legal Notices"
|
||||
to the extent that it includes a convenient and prominently visible
|
||||
feature that (1) displays an appropriate copyright notice, and (2)
|
||||
tells the user that there is no warranty for the work (except to the
|
||||
extent that warranties are provided), that licensees may convey the
|
||||
work under this License, and how to view a copy of this License. If
|
||||
the interface presents a list of user commands or options, such as a
|
||||
menu, a prominent item in the list meets this criterion.
|
||||
|
||||
1. Source Code.
|
||||
|
||||
The "source code" for a work means the preferred form of the work
|
||||
for making modifications to it. "Object code" means any non-source
|
||||
form of a work.
|
||||
|
||||
A "Standard Interface" means an interface that either is an official
|
||||
standard defined by a recognized standards body, or, in the case of
|
||||
interfaces specified for a particular programming language, one that
|
||||
is widely used among developers working in that language.
|
||||
|
||||
The "System Libraries" of an executable work include anything, other
|
||||
than the work as a whole, that (a) is included in the normal form of
|
||||
packaging a Major Component, but which is not part of that Major
|
||||
Component, and (b) serves only to enable use of the work with that
|
||||
Major Component, or to implement a Standard Interface for which an
|
||||
implementation is available to the public in source code form. A
|
||||
"Major Component", in this context, means a major essential component
|
||||
(kernel, window system, and so on) of the specific operating system
|
||||
(if any) on which the executable work runs, or a compiler used to
|
||||
produce the work, or an object code interpreter used to run it.
|
||||
|
||||
The "Corresponding Source" for a work in object code form means all
|
||||
the source code needed to generate, install, and (for an executable
|
||||
work) run the object code and to modify the work, including scripts to
|
||||
control those activities. However, it does not include the work's
|
||||
System Libraries, or general-purpose tools or generally available free
|
||||
programs which are used unmodified in performing those activities but
|
||||
which are not part of the work. For example, Corresponding Source
|
||||
includes interface definition files associated with source files for
|
||||
the work, and the source code for shared libraries and dynamically
|
||||
linked subprograms that the work is specifically designed to require,
|
||||
such as by intimate data communication or control flow between those
|
||||
subprograms and other parts of the work.
|
||||
|
||||
The Corresponding Source need not include anything that users
|
||||
can regenerate automatically from other parts of the Corresponding
|
||||
Source.
|
||||
|
||||
The Corresponding Source for a work in source code form is that
|
||||
same work.
|
||||
|
||||
2. Basic Permissions.
|
||||
|
||||
All rights granted under this License are granted for the term of
|
||||
copyright on the Program, and are irrevocable provided the stated
|
||||
conditions are met. This License explicitly affirms your unlimited
|
||||
permission to run the unmodified Program. The output from running a
|
||||
covered work is covered by this License only if the output, given its
|
||||
content, constitutes a covered work. This License acknowledges your
|
||||
rights of fair use or other equivalent, as provided by copyright law.
|
||||
|
||||
You may make, run and propagate covered works that you do not
|
||||
convey, without conditions so long as your license otherwise remains
|
||||
in force. You may convey covered works to others for the sole purpose
|
||||
of having them make modifications exclusively for you, or provide you
|
||||
with facilities for running those works, provided that you comply with
|
||||
the terms of this License in conveying all material for which you do
|
||||
not control copyright. Those thus making or running the covered works
|
||||
for you must do so exclusively on your behalf, under your direction
|
||||
and control, on terms that prohibit them from making any copies of
|
||||
your copyrighted material outside their relationship with you.
|
||||
|
||||
Conveying under any other circumstances is permitted solely under
|
||||
the conditions stated below. Sublicensing is not allowed; section 10
|
||||
makes it unnecessary.
|
||||
|
||||
3. Protecting Users' Legal Rights From Anti-Circumvention Law.
|
||||
|
||||
No covered work shall be deemed part of an effective technological
|
||||
measure under any applicable law fulfilling obligations under article
|
||||
11 of the WIPO copyright treaty adopted on 20 December 1996, or
|
||||
similar laws prohibiting or restricting circumvention of such
|
||||
measures.
|
||||
|
||||
When you convey a covered work, you waive any legal power to forbid
|
||||
circumvention of technological measures to the extent such circumvention
|
||||
is effected by exercising rights under this License with respect to
|
||||
the covered work, and you disclaim any intention to limit operation or
|
||||
modification of the work as a means of enforcing, against the work's
|
||||
users, your or third parties' legal rights to forbid circumvention of
|
||||
technological measures.
|
||||
|
||||
4. Conveying Verbatim Copies.
|
||||
|
||||
You may convey 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;
|
||||
keep intact all notices stating that this License and any
|
||||
non-permissive terms added in accord with section 7 apply to the code;
|
||||
keep intact all notices of the absence of any warranty; and give all
|
||||
recipients a copy of this License along with the Program.
|
||||
|
||||
You may charge any price or no price for each copy that you convey,
|
||||
and you may offer support or warranty protection for a fee.
|
||||
|
||||
5. Conveying Modified Source Versions.
|
||||
|
||||
You may convey a work based on the Program, or the modifications to
|
||||
produce it from the Program, in the form of source code under the
|
||||
terms of section 4, provided that you also meet all of these conditions:
|
||||
|
||||
a) The work must carry prominent notices stating that you modified
|
||||
it, and giving a relevant date.
|
||||
|
||||
b) The work must carry prominent notices stating that it is
|
||||
released under this License and any conditions added under section
|
||||
7. This requirement modifies the requirement in section 4 to
|
||||
"keep intact all notices".
|
||||
|
||||
c) You must license the entire work, as a whole, under this
|
||||
License to anyone who comes into possession of a copy. This
|
||||
License will therefore apply, along with any applicable section 7
|
||||
additional terms, to the whole of the work, and all its parts,
|
||||
regardless of how they are packaged. This License gives no
|
||||
permission to license the work in any other way, but it does not
|
||||
invalidate such permission if you have separately received it.
|
||||
|
||||
d) If the work has interactive user interfaces, each must display
|
||||
Appropriate Legal Notices; however, if the Program has interactive
|
||||
interfaces that do not display Appropriate Legal Notices, your
|
||||
work need not make them do so.
|
||||
|
||||
A compilation of a covered work with other separate and independent
|
||||
works, which are not by their nature extensions of the covered work,
|
||||
and which are not combined with it such as to form a larger program,
|
||||
in or on a volume of a storage or distribution medium, is called an
|
||||
"aggregate" if the compilation and its resulting copyright are not
|
||||
used to limit the access or legal rights of the compilation's users
|
||||
beyond what the individual works permit. Inclusion of a covered work
|
||||
in an aggregate does not cause this License to apply to the other
|
||||
parts of the aggregate.
|
||||
|
||||
6. Conveying Non-Source Forms.
|
||||
|
||||
You may convey a covered work in object code form under the terms
|
||||
of sections 4 and 5, provided that you also convey the
|
||||
machine-readable Corresponding Source under the terms of this License,
|
||||
in one of these ways:
|
||||
|
||||
a) Convey the object code in, or embodied in, a physical product
|
||||
(including a physical distribution medium), accompanied by the
|
||||
Corresponding Source fixed on a durable physical medium
|
||||
customarily used for software interchange.
|
||||
|
||||
b) Convey the object code in, or embodied in, a physical product
|
||||
(including a physical distribution medium), accompanied by a
|
||||
written offer, valid for at least three years and valid for as
|
||||
long as you offer spare parts or customer support for that product
|
||||
model, to give anyone who possesses the object code either (1) a
|
||||
copy of the Corresponding Source for all the software in the
|
||||
product that is covered by this License, on a durable physical
|
||||
medium customarily used for software interchange, for a price no
|
||||
more than your reasonable cost of physically performing this
|
||||
conveying of source, or (2) access to copy the
|
||||
Corresponding Source from a network server at no charge.
|
||||
|
||||
c) Convey individual copies of the object code with a copy of the
|
||||
written offer to provide the Corresponding Source. This
|
||||
alternative is allowed only occasionally and noncommercially, and
|
||||
only if you received the object code with such an offer, in accord
|
||||
with subsection 6b.
|
||||
|
||||
d) Convey the object code by offering access from a designated
|
||||
place (gratis or for a charge), and offer equivalent access to the
|
||||
Corresponding Source in the same way through the same place at no
|
||||
further charge. You need not require recipients to copy the
|
||||
Corresponding Source along with the object code. If the place to
|
||||
copy the object code is a network server, the Corresponding Source
|
||||
may be on a different server (operated by you or a third party)
|
||||
that supports equivalent copying facilities, provided you maintain
|
||||
clear directions next to the object code saying where to find the
|
||||
Corresponding Source. Regardless of what server hosts the
|
||||
Corresponding Source, you remain obligated to ensure that it is
|
||||
available for as long as needed to satisfy these requirements.
|
||||
|
||||
e) Convey the object code using peer-to-peer transmission, provided
|
||||
you inform other peers where the object code and Corresponding
|
||||
Source of the work are being offered to the general public at no
|
||||
charge under subsection 6d.
|
||||
|
||||
A separable portion of the object code, whose source code is excluded
|
||||
from the Corresponding Source as a System Library, need not be
|
||||
included in conveying the object code work.
|
||||
|
||||
A "User Product" is either (1) a "consumer product", which means any
|
||||
tangible personal property which is normally used for personal, family,
|
||||
or household purposes, or (2) anything designed or sold for incorporation
|
||||
into a dwelling. In determining whether a product is a consumer product,
|
||||
doubtful cases shall be resolved in favor of coverage. For a particular
|
||||
product received by a particular user, "normally used" refers to a
|
||||
typical or common use of that class of product, regardless of the status
|
||||
of the particular user or of the way in which the particular user
|
||||
actually uses, or expects or is expected to use, the product. A product
|
||||
is a consumer product regardless of whether the product has substantial
|
||||
commercial, industrial or non-consumer uses, unless such uses represent
|
||||
the only significant mode of use of the product.
|
||||
|
||||
"Installation Information" for a User Product means any methods,
|
||||
procedures, authorization keys, or other information required to install
|
||||
and execute modified versions of a covered work in that User Product from
|
||||
a modified version of its Corresponding Source. The information must
|
||||
suffice to ensure that the continued functioning of the modified object
|
||||
code is in no case prevented or interfered with solely because
|
||||
modification has been made.
|
||||
|
||||
If you convey an object code work under this section in, or with, or
|
||||
specifically for use in, a User Product, and the conveying occurs as
|
||||
part of a transaction in which the right of possession and use of the
|
||||
User Product is transferred to the recipient in perpetuity or for a
|
||||
fixed term (regardless of how the transaction is characterized), the
|
||||
Corresponding Source conveyed under this section must be accompanied
|
||||
by the Installation Information. But this requirement does not apply
|
||||
if neither you nor any third party retains the ability to install
|
||||
modified object code on the User Product (for example, the work has
|
||||
been installed in ROM).
|
||||
|
||||
The requirement to provide Installation Information does not include a
|
||||
requirement to continue to provide support service, warranty, or updates
|
||||
for a work that has been modified or installed by the recipient, or for
|
||||
the User Product in which it has been modified or installed. Access to a
|
||||
network may be denied when the modification itself materially and
|
||||
adversely affects the operation of the network or violates the rules and
|
||||
protocols for communication across the network.
|
||||
|
||||
Corresponding Source conveyed, and Installation Information provided,
|
||||
in accord with this section must be in a format that is publicly
|
||||
documented (and with an implementation available to the public in
|
||||
source code form), and must require no special password or key for
|
||||
unpacking, reading or copying.
|
||||
|
||||
7. Additional Terms.
|
||||
|
||||
"Additional permissions" are terms that supplement the terms of this
|
||||
License by making exceptions from one or more of its conditions.
|
||||
Additional permissions that are applicable to the entire Program shall
|
||||
be treated as though they were included in this License, to the extent
|
||||
that they are valid under applicable law. If additional permissions
|
||||
apply only to part of the Program, that part may be used separately
|
||||
under those permissions, but the entire Program remains governed by
|
||||
this License without regard to the additional permissions.
|
||||
|
||||
When you convey a copy of a covered work, you may at your option
|
||||
remove any additional permissions from that copy, or from any part of
|
||||
it. (Additional permissions may be written to require their own
|
||||
removal in certain cases when you modify the work.) You may place
|
||||
additional permissions on material, added by you to a covered work,
|
||||
for which you have or can give appropriate copyright permission.
|
||||
|
||||
Notwithstanding any other provision of this License, for material you
|
||||
add to a covered work, you may (if authorized by the copyright holders of
|
||||
that material) supplement the terms of this License with terms:
|
||||
|
||||
a) Disclaiming warranty or limiting liability differently from the
|
||||
terms of sections 15 and 16 of this License; or
|
||||
|
||||
b) Requiring preservation of specified reasonable legal notices or
|
||||
author attributions in that material or in the Appropriate Legal
|
||||
Notices displayed by works containing it; or
|
||||
|
||||
c) Prohibiting misrepresentation of the origin of that material, or
|
||||
requiring that modified versions of such material be marked in
|
||||
reasonable ways as different from the original version; or
|
||||
|
||||
d) Limiting the use for publicity purposes of names of licensors or
|
||||
authors of the material; or
|
||||
|
||||
e) Declining to grant rights under trademark law for use of some
|
||||
trade names, trademarks, or service marks; or
|
||||
|
||||
f) Requiring indemnification of licensors and authors of that
|
||||
material by anyone who conveys the material (or modified versions of
|
||||
it) with contractual assumptions of liability to the recipient, for
|
||||
any liability that these contractual assumptions directly impose on
|
||||
those licensors and authors.
|
||||
|
||||
All other non-permissive additional terms are considered "further
|
||||
restrictions" within the meaning of section 10. If the Program as you
|
||||
received it, or any part of it, contains a notice stating that it is
|
||||
governed by this License along with a term that is a further
|
||||
restriction, you may remove that term. If a license document contains
|
||||
a further restriction but permits relicensing or conveying under this
|
||||
License, you may add to a covered work material governed by the terms
|
||||
of that license document, provided that the further restriction does
|
||||
not survive such relicensing or conveying.
|
||||
|
||||
If you add terms to a covered work in accord with this section, you
|
||||
must place, in the relevant source files, a statement of the
|
||||
additional terms that apply to those files, or a notice indicating
|
||||
where to find the applicable terms.
|
||||
|
||||
Additional terms, permissive or non-permissive, may be stated in the
|
||||
form of a separately written license, or stated as exceptions;
|
||||
the above requirements apply either way.
|
||||
|
||||
8. Termination.
|
||||
|
||||
You may not propagate or modify a covered work except as expressly
|
||||
provided under this License. Any attempt otherwise to propagate or
|
||||
modify it is void, and will automatically terminate your rights under
|
||||
this License (including any patent licenses granted under the third
|
||||
paragraph of section 11).
|
||||
|
||||
However, if you cease all violation of this License, then your
|
||||
license from a particular copyright holder is reinstated (a)
|
||||
provisionally, unless and until the copyright holder explicitly and
|
||||
finally terminates your license, and (b) permanently, if the copyright
|
||||
holder fails to notify you of the violation by some reasonable means
|
||||
prior to 60 days after the cessation.
|
||||
|
||||
Moreover, your license from a particular copyright holder is
|
||||
reinstated permanently if the copyright holder notifies you of the
|
||||
violation by some reasonable means, this is the first time you have
|
||||
received notice of violation of this License (for any work) from that
|
||||
copyright holder, and you cure the violation prior to 30 days after
|
||||
your receipt of the notice.
|
||||
|
||||
Termination of your rights under this section does not terminate the
|
||||
licenses of parties who have received copies or rights from you under
|
||||
this License. If your rights have been terminated and not permanently
|
||||
reinstated, you do not qualify to receive new licenses for the same
|
||||
material under section 10.
|
||||
|
||||
9. Acceptance Not Required for Having Copies.
|
||||
|
||||
You are not required to accept this License in order to receive or
|
||||
run a copy of the Program. Ancillary propagation of a covered work
|
||||
occurring solely as a consequence of using peer-to-peer transmission
|
||||
to receive a copy likewise does not require acceptance. However,
|
||||
nothing other than this License grants you permission to propagate or
|
||||
modify any covered work. These actions infringe copyright if you do
|
||||
not accept this License. Therefore, by modifying or propagating a
|
||||
covered work, you indicate your acceptance of this License to do so.
|
||||
|
||||
10. Automatic Licensing of Downstream Recipients.
|
||||
|
||||
Each time you convey a covered work, the recipient automatically
|
||||
receives a license from the original licensors, to run, modify and
|
||||
propagate that work, subject to this License. You are not responsible
|
||||
for enforcing compliance by third parties with this License.
|
||||
|
||||
An "entity transaction" is a transaction transferring control of an
|
||||
organization, or substantially all assets of one, or subdividing an
|
||||
organization, or merging organizations. If propagation of a covered
|
||||
work results from an entity transaction, each party to that
|
||||
transaction who receives a copy of the work also receives whatever
|
||||
licenses to the work the party's predecessor in interest had or could
|
||||
give under the previous paragraph, plus a right to possession of the
|
||||
Corresponding Source of the work from the predecessor in interest, if
|
||||
the predecessor has it or can get it with reasonable efforts.
|
||||
|
||||
You may not impose any further restrictions on the exercise of the
|
||||
rights granted or affirmed under this License. For example, you may
|
||||
not impose a license fee, royalty, or other charge for exercise of
|
||||
rights granted under this License, and you may not initiate litigation
|
||||
(including a cross-claim or counterclaim in a lawsuit) alleging that
|
||||
any patent claim is infringed by making, using, selling, offering for
|
||||
sale, or importing the Program or any portion of it.
|
||||
|
||||
11. Patents.
|
||||
|
||||
A "contributor" is a copyright holder who authorizes use under this
|
||||
License of the Program or a work on which the Program is based. The
|
||||
work thus licensed is called the contributor's "contributor version".
|
||||
|
||||
A contributor's "essential patent claims" are all patent claims
|
||||
owned or controlled by the contributor, whether already acquired or
|
||||
hereafter acquired, that would be infringed by some manner, permitted
|
||||
by this License, of making, using, or selling its contributor version,
|
||||
but do not include claims that would be infringed only as a
|
||||
consequence of further modification of the contributor version. For
|
||||
purposes of this definition, "control" includes the right to grant
|
||||
patent sublicenses in a manner consistent with the requirements of
|
||||
this License.
|
||||
|
||||
Each contributor grants you a non-exclusive, worldwide, royalty-free
|
||||
patent license under the contributor's essential patent claims, to
|
||||
make, use, sell, offer for sale, import and otherwise run, modify and
|
||||
propagate the contents of its contributor version.
|
||||
|
||||
In the following three paragraphs, a "patent license" is any express
|
||||
agreement or commitment, however denominated, not to enforce a patent
|
||||
(such as an express permission to practice a patent or covenant not to
|
||||
sue for patent infringement). To "grant" such a patent license to a
|
||||
party means to make such an agreement or commitment not to enforce a
|
||||
patent against the party.
|
||||
|
||||
If you convey a covered work, knowingly relying on a patent license,
|
||||
and the Corresponding Source of the work is not available for anyone
|
||||
to copy, free of charge and under the terms of this License, through a
|
||||
publicly available network server or other readily accessible means,
|
||||
then you must either (1) cause the Corresponding Source to be so
|
||||
available, or (2) arrange to deprive yourself of the benefit of the
|
||||
patent license for this particular work, or (3) arrange, in a manner
|
||||
consistent with the requirements of this License, to extend the patent
|
||||
license to downstream recipients. "Knowingly relying" means you have
|
||||
actual knowledge that, but for the patent license, your conveying the
|
||||
covered work in a country, or your recipient's use of the covered work
|
||||
in a country, would infringe one or more identifiable patents in that
|
||||
country that you have reason to believe are valid.
|
||||
|
||||
If, pursuant to or in connection with a single transaction or
|
||||
arrangement, you convey, or propagate by procuring conveyance of, a
|
||||
covered work, and grant a patent license to some of the parties
|
||||
receiving the covered work authorizing them to use, propagate, modify
|
||||
or convey a specific copy of the covered work, then the patent license
|
||||
you grant is automatically extended to all recipients of the covered
|
||||
work and works based on it.
|
||||
|
||||
A patent license is "discriminatory" if it does not include within
|
||||
the scope of its coverage, prohibits the exercise of, or is
|
||||
conditioned on the non-exercise of one or more of the rights that are
|
||||
specifically granted under this License. You may not convey a covered
|
||||
work if you are a party to an arrangement with a third party that is
|
||||
in the business of distributing software, under which you make payment
|
||||
to the third party based on the extent of your activity of conveying
|
||||
the work, and under which the third party grants, to any of the
|
||||
parties who would receive the covered work from you, a discriminatory
|
||||
patent license (a) in connection with copies of the covered work
|
||||
conveyed by you (or copies made from those copies), or (b) primarily
|
||||
for and in connection with specific products or compilations that
|
||||
contain the covered work, unless you entered into that arrangement,
|
||||
or that patent license was granted, prior to 28 March 2007.
|
||||
|
||||
Nothing in this License shall be construed as excluding or limiting
|
||||
any implied license or other defenses to infringement that may
|
||||
otherwise be available to you under applicable patent law.
|
||||
|
||||
12. No Surrender of Others' Freedom.
|
||||
|
||||
If 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 convey a
|
||||
covered work so as to satisfy simultaneously your obligations under this
|
||||
License and any other pertinent obligations, then as a consequence you may
|
||||
not convey it at all. For example, if you agree to terms that obligate you
|
||||
to collect a royalty for further conveying from those to whom you convey
|
||||
the Program, the only way you could satisfy both those terms and this
|
||||
License would be to refrain entirely from conveying the Program.
|
||||
|
||||
13. Use with the GNU Affero General Public License.
|
||||
|
||||
Notwithstanding any other provision of this License, you have
|
||||
permission to link or combine any covered work with a work licensed
|
||||
under version 3 of the GNU Affero General Public License into a single
|
||||
combined work, and to convey the resulting work. The terms of this
|
||||
License will continue to apply to the part which is the covered work,
|
||||
but the special requirements of the GNU Affero General Public License,
|
||||
section 13, concerning interaction through a network will apply to the
|
||||
combination as such.
|
||||
|
||||
14. Revised Versions of this License.
|
||||
|
||||
The Free Software Foundation may publish revised and/or new versions of
|
||||
the GNU 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 that a certain numbered version of the GNU General
|
||||
Public License "or any later version" applies to it, you have the
|
||||
option of following the terms and conditions either of that numbered
|
||||
version or of any later version published by the Free Software
|
||||
Foundation. If the Program does not specify a version number of the
|
||||
GNU General Public License, you may choose any version ever published
|
||||
by the Free Software Foundation.
|
||||
|
||||
If the Program specifies that a proxy can decide which future
|
||||
versions of the GNU General Public License can be used, that proxy's
|
||||
public statement of acceptance of a version permanently authorizes you
|
||||
to choose that version for the Program.
|
||||
|
||||
Later license versions may give you additional or different
|
||||
permissions. However, no additional obligations are imposed on any
|
||||
author or copyright holder as a result of your choosing to follow a
|
||||
later version.
|
||||
|
||||
15. Disclaimer of Warranty.
|
||||
|
||||
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.
|
||||
|
||||
16. Limitation of Liability.
|
||||
|
||||
IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING
|
||||
WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MODIFIES AND/OR CONVEYS
|
||||
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.
|
||||
|
||||
17. Interpretation of Sections 15 and 16.
|
||||
|
||||
If the disclaimer of warranty and limitation of liability provided
|
||||
above cannot be given local legal effect according to their terms,
|
||||
reviewing courts shall apply local law that most closely approximates
|
||||
an absolute waiver of all civil liability in connection with the
|
||||
Program, unless a warranty or assumption of liability accompanies a
|
||||
copy of the Program in return for a fee.
|
||||
|
||||
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
|
||||
state the exclusion of warranty; and each file should have at least
|
||||
the "copyright" line and a pointer to where the full notice is found.
|
||||
|
||||
<one line to give the program's name and a brief idea of what it does.>
|
||||
Copyright (C) <year> <name of author>
|
||||
|
||||
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 3 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, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
Also add information on how to contact you by electronic and paper mail.
|
||||
|
||||
If the program does terminal interaction, make it output a short
|
||||
notice like this when it starts in an interactive mode:
|
||||
|
||||
<program> Copyright (C) <year> <name of author>
|
||||
This program 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, your program's commands
|
||||
might be different; for a GUI interface, you would use an "about box".
|
||||
|
||||
You should also get your employer (if you work as a programmer) or school,
|
||||
if any, to sign a "copyright disclaimer" for the program, if necessary.
|
||||
For more information on this, and how to apply and follow the GNU GPL, see
|
||||
<http://www.gnu.org/licenses/>.
|
||||
|
||||
The GNU 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. But first, please read
|
||||
<http://www.gnu.org/philosophy/why-not-lgpl.html>.
|
||||
30
OGP64/usr/share/doc/Cygwin/CYGWIN_LICENSE
Normal file
30
OGP64/usr/share/doc/Cygwin/CYGWIN_LICENSE
Normal file
|
|
@ -0,0 +1,30 @@
|
|||
THIS SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESSED OR
|
||||
IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED
|
||||
WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
|
||||
|
||||
Unless stated otherwise, the sources under the cygwin subdirectory,
|
||||
as well as the sources under the cygserver subdirectory linked into
|
||||
the Cygwin DLL, are licensed under the Lesser Gnu Public License,
|
||||
version 3 or (at your option) any later version (LGPLv3+). See the
|
||||
COPYING.LIB file for the exact wording of that license.
|
||||
|
||||
Unless stated otherwise, the sources under the cygserver subdir not
|
||||
linked into the Cygwin DLL, as well as the sources under the lsaauth
|
||||
and the utils subdirectories are licensed under the Gnu Public License,
|
||||
version 3 or (at your option) any later version (GPLv3+). See the
|
||||
COPYING file for the exact wording of that license.
|
||||
|
||||
Parts of the sources in any subdirectory are licensed using a BSD-like
|
||||
license. The affected source files contain explicit copyright notices
|
||||
to that effect.
|
||||
|
||||
Linking Exception:
|
||||
|
||||
As a special exception, the copyright holders of the Cygwin library
|
||||
grant you additional permission to link libcygwin.a, crt0.o, and
|
||||
gcrt0.o with independent modules to produce an executable, and to
|
||||
convey the resulting executable under terms of your choice, without
|
||||
any need to comply with the conditions of LGPLv3 section 4. An
|
||||
independent module is a module which is not itself based on the
|
||||
Cygwin library.
|
||||
|
||||
52
OGP64/usr/share/doc/Cygwin/_autorebase.README
Normal file
52
OGP64/usr/share/doc/Cygwin/_autorebase.README
Normal file
|
|
@ -0,0 +1,52 @@
|
|||
_autorebase
|
||||
===========
|
||||
|
||||
This package provides scripts to keep the Cygwin system properly
|
||||
rebased. By default this happens incrementally, which means only
|
||||
dynamic objects that have been installed after the last run of rebase
|
||||
will be considered and the current rebase map takes account of the
|
||||
already rebased parts of the installation. The scripts must be run by
|
||||
the system administrator or from another account that has all the
|
||||
necessary access rights.
|
||||
|
||||
Over time the rebase map can fragment. By triggering a full rebase,
|
||||
all dynamic objects on the system are treated as newly installed and
|
||||
the existing rebase map is cleared before doing the rebase. To
|
||||
perform a full rebase, execute "rebase-trigger fullrebase". Then shut
|
||||
down Cygwin including any services you have installed and simply run
|
||||
setup.exe. The rebase will be performed even when the installation
|
||||
did not get modified in any way. Subsequent runs of setup.exe will
|
||||
again rebase in incremental mode.
|
||||
|
||||
Some programs allow the user to create or install dynamic objects
|
||||
after installation. Since these are not part of an installed package,
|
||||
they wouldn't be rebased automatically, as their location isn't known
|
||||
to the package system. Entire subtrees to be searched for dynamic
|
||||
objects can be advertised in /var/lib/rebase/dynpath.d/,
|
||||
/var/lib/rebase/localpath.d/ and /var/lib/rebase/userpath.d/ for
|
||||
packaged paths, locally provided paths and user paths, respectively.
|
||||
The format of files in these directories is one absolute path per
|
||||
line. The list of suffixes that files need to have to be considered
|
||||
dynamic objects in these locations is hardcoded as
|
||||
"dll|so|eln|oct|mex". Files that should be rebased, but do not have
|
||||
one of these suffixes can be advertised in /var/lib/dynfile.d,
|
||||
/var/lib/localfile.d and /var/lib/userfile.d for packaged files,
|
||||
locally provided files and user files, respectively. The format of
|
||||
files in these directories is one absolute file name per line.
|
||||
Packagers should name their files after the (main) application package
|
||||
that creates the dynamic objects at the advertised location and must
|
||||
not package anything in either the local*.d or user*.d directories.
|
||||
The local system administrator should only place files in local*.d
|
||||
directories and otherwise keep the naming scheme as used for packages.
|
||||
The user*.d file names should start with the account name of the user
|
||||
the advertised locations belong to.
|
||||
|
||||
The user running the installation must have full access rights to all
|
||||
such paths and all such locations must be available (e.g. remote or
|
||||
encrypted volumes must be mounted and unlocked, respectively).
|
||||
|
||||
The incremental rebase is controlled by the script /usr/bin/rebaselst.
|
||||
Except for debugging purposes this script should not be run directly
|
||||
by users. Like any other attempt at rebasing it doesn't work
|
||||
correctly on a live Cygwin system.
|
||||
|
||||
3
OGP64/usr/share/doc/Cygwin/alternatives.README
Normal file
3
OGP64/usr/share/doc/Cygwin/alternatives.README
Normal file
|
|
@ -0,0 +1,3 @@
|
|||
WARNING. The files in this directory are managed by
|
||||
the 'alternatives' program. Do not modify by hand.
|
||||
See 'man alternatives' and '/usr/sbin/alternatives --help'
|
||||
529
OGP64/usr/share/doc/Cygwin/cygrunsrv.README
Normal file
529
OGP64/usr/share/doc/Cygwin/cygrunsrv.README
Normal file
|
|
@ -0,0 +1,529 @@
|
|||
This file:
|
||||
What is cygrunsrv?
|
||||
What does it do?
|
||||
How do I use it?
|
||||
Informative options...
|
||||
Querying a service
|
||||
Removing a service
|
||||
Starting a service
|
||||
Stopping a service
|
||||
Installing a service
|
||||
General Notes
|
||||
Generic Examples (but very informative)
|
||||
Specific Examples (for common cygwin services)
|
||||
|
||||
**********************************************
|
||||
What is cygrunsrv?
|
||||
cygrunsrv is an implementation of an NT/W2K service starter, similar
|
||||
to Microsoft's INSTSRV and SRVANY programs, or the FireDaemon program.
|
||||
However, cygrunsrv is a cygwin program itself, so it obviously supports
|
||||
Cygwin applications better.
|
||||
|
||||
**********************************************
|
||||
What does it do?
|
||||
cygrunsrv can operate in two basic modes. The first is the
|
||||
'service management' or 'commandline' mode. This allows you
|
||||
to install and remove a service from the system registry, or
|
||||
to start and stop a previously installed service. The second
|
||||
mode is the 'run a service' or 'daemonize' mode. This mode is
|
||||
reached ONLY via a special entry point called by the Windows
|
||||
Service Mananger -- you can't put cygrunsrv in that mode from
|
||||
the command line. In the 'daemonize' mode, cygrunsrv sets up
|
||||
the environment (according to flags set via the 'commandline'
|
||||
mode). It adds '/bin' to the front of the PATH so that the
|
||||
target service can find cygwin1.dll easily. It (optionally)
|
||||
redirects stdout, stdin, and stderr to log files or to the
|
||||
NT/W2K Event Log (event log access not yet implemented).
|
||||
Finally, cygrunsrv starts the target daemon.
|
||||
|
||||
**********************************************
|
||||
How do I use it?
|
||||
As stated earlier, there are four basic operations that
|
||||
cygrunsrv can do in its 'service management' or 'commandline'
|
||||
mode: install a service (-I or --install), remove a service
|
||||
(-R or --remove), start a service (-S or --start), or stop
|
||||
a service (-E or --stop). In addition, the informative
|
||||
options return information about cygrunsrv itself.
|
||||
Each mode is discussed in turn, below:
|
||||
|
||||
**********************************************
|
||||
Informative Options
|
||||
|
||||
cygrunsrv -h
|
||||
cygrunsrv --help
|
||||
print comprehensive help/option listing for cygrunsrv
|
||||
|
||||
cygrunsrv -v
|
||||
cygrunsrv --version
|
||||
print version information about the cygrunsrv executable
|
||||
|
||||
**********************************************
|
||||
Query a service:
|
||||
|
||||
cygrunsrv -Q <svc_name>
|
||||
cygrunsrv --query <svc_name>
|
||||
reports on the existence and status of the service. Use the
|
||||
--verbose or -V flag to receive extra information.
|
||||
|
||||
<svc_name> can either specify a local service name, or it can be
|
||||
"server/svc_name" or "server\svc_name" to specify a service on a
|
||||
remote machine. The server name can be given as simple name or as
|
||||
fully qualified domain name (server.example.com).
|
||||
|
||||
**********************************************
|
||||
List services installed with cygrunsrv:
|
||||
|
||||
cygrunsrv -L [server]
|
||||
cygrunsrv --list [server]
|
||||
lists all services that have been installed with cygrunsrv,
|
||||
one per line. You can use this for example to stop all
|
||||
running cygwin services as follows:
|
||||
|
||||
$ cygrunsrv -L | (while read S; do cygrunsrv -E $S; done)
|
||||
|
||||
You can combine this with the -V / --verbose option to get
|
||||
full details of each service instead of just names.
|
||||
|
||||
You can optionally specify a server name to list services installed on
|
||||
a remote machine. The server name can be given as simple name or as
|
||||
fully qualified domain name (server.example.com).
|
||||
|
||||
**********************************************
|
||||
Remove a service:
|
||||
|
||||
cygrunsrv -R <svc_name>
|
||||
cygrunsrv --remove <svc_name>
|
||||
removes the service from the registry
|
||||
|
||||
<svc_name> can either specify a local service name, or it can be
|
||||
"server/svc_name" or "server\svc_name" to specify a service on a
|
||||
remote machine. The server name can be given as simple name or as
|
||||
fully qualified domain name (server.example.com).
|
||||
|
||||
**********************************************
|
||||
Start a service:
|
||||
|
||||
cygrunsrv -S <svc_name>
|
||||
cygrunsrv --start <svc_name>
|
||||
attempts to start a previously installed service
|
||||
|
||||
<svc_name> can either specify a local service name, or it can be
|
||||
"server/svc_name" or "server\svc_name" to specify a service on a
|
||||
remote machine. The server name can be given as simple name or as
|
||||
fully qualified domain name (server.example.com).
|
||||
|
||||
**********************************************
|
||||
Stop a service:
|
||||
|
||||
cygrunsrv -E <svc_name>
|
||||
cygrunsrv --stop <svc_name>
|
||||
attempts to stop a previously started service
|
||||
|
||||
<svc_name> can either specify a local service name, or it can be
|
||||
"server/svc_name" or "server\svc_name" to specify a service on a
|
||||
remote machine. The server name can be given as simple name or as
|
||||
fully qualified domain name (server.example.com).
|
||||
|
||||
**********************************************
|
||||
Install a service:
|
||||
At minimum, the following options and arguments MUST be specified
|
||||
(of course, the short options -I and -p can be used instead of the
|
||||
long options --install and --path):
|
||||
|
||||
cygrunsrv --install svc_name --path /cygwin/style/path/to/daemon.exe
|
||||
|
||||
Note that the "svc_name" is the name of the key in the registry under
|
||||
which the information for this service is stored. More importantly,
|
||||
it is the name that appears in the Service Manager control panel
|
||||
applet, and is the name that can be used by 'cygrunsrv --start' (or
|
||||
'net start') to start the service (* see --disp option). Note that
|
||||
the svc_name does not HAVE to be the same as the executable name,
|
||||
but by convention they are usually the same.
|
||||
|
||||
<svc_name> can either specify a local service name, or it can be
|
||||
"server/svc_name" or "server\svc_name" to specify a service on a
|
||||
remote machine. The server name can be given as simple name or as
|
||||
fully qualified domain name (server.example.com).
|
||||
|
||||
There are a number of additional, optional arguments that may be
|
||||
specified.
|
||||
|
||||
-------------------------------
|
||||
-P, --crs-path <path>
|
||||
Optional path to the cygrunsrv.exe executable. Specifying this can be
|
||||
useful in several situations.
|
||||
|
||||
On the local machine, the path to cygrunsrv is by default the path to
|
||||
the very executable you execute for the -I command. For testing
|
||||
purposes you could wish to use another cygrunsrv executable than the
|
||||
one which should be used for starting the service.
|
||||
|
||||
On a remote server, the path to cygrunsrv is by default the path in
|
||||
the system registry key for the Cygwin root directory (what you get
|
||||
when running `mount | grep " / "' on the remote machine), concatentated
|
||||
with "\bin\cygrunsrv.exe". This is not failsafe. It might be better
|
||||
to specify the path to cygrunsrv on the remote machine manually here.
|
||||
|
||||
The path can be given in POSIX or Win32 notation. For remote services
|
||||
it's advisable to use the Win32 notation.
|
||||
|
||||
-------------------------------
|
||||
-a, --args <args>
|
||||
Optional string with command line options which shall be passed
|
||||
to the target service when it is started. This option may only be
|
||||
specified one; to call the target service with two arguments, list
|
||||
both arguments surrounded by quotes. For example,
|
||||
|
||||
cygrunsrv -I foo -p /usr/bin/bar -a "-D -e"
|
||||
|
||||
calls with two arguments, as in "/usr/bin/bar -D -e". If you need
|
||||
to specify a single argument which contains spaces, you can
|
||||
protect it with single (') or double (") quotes:
|
||||
|
||||
(a) cygrunsrv -I foo -p /usr/bin/bar -a "\"foo bar\""
|
||||
(b) cygrunsrv -I foo -p /usr/bin/bar -a "'foo bar'"
|
||||
(c) cygrunsrv -I foo -p /usr/bin/bar -a '"foo bar"'
|
||||
|
||||
each result in
|
||||
|
||||
(a) /usr/bin/bar "foo bar"
|
||||
(b) /usr/bin/bar 'foo bar'
|
||||
(c) /usr/bin/bar "foo bar"
|
||||
|
||||
(symmetry suggests the following, but it doesn't work. Trust me)
|
||||
cygrunsrv -I foo -p /usr/bin/bar -a '\'foo bar\''
|
||||
|
||||
-------------------------------
|
||||
-e, --env <VAR=value>
|
||||
Optional environment strings which are added to the environment
|
||||
when the service is started. You can add up to 255 environment strings
|
||||
using multiple `--env' options. Note that '/bin:' is always appended
|
||||
to the path to allow started applications to find cygwin1.dll. You
|
||||
may also specify PATH=/a/path:/list if you like, but /bin WILL be
|
||||
appended.
|
||||
|
||||
cygrunsrv -I foo -p /usr/bin/bar -e HOME=/e/services -e TMP=/var/tmp
|
||||
|
||||
A single level of quoting with either single (') or double (") quotes
|
||||
is allowed:
|
||||
|
||||
cygrunsrv -I foo -p /usr/bin/bar -e BAR="\"/d/My Documents/services\""
|
||||
|
||||
results in an environment where BAR has the value
|
||||
"/d/My Documents/services" *including the quotes* (the \-escaping and
|
||||
the outer quotes are required to protect the command itself from bash).
|
||||
If you don't understand this discussion about quoting, don't worry --
|
||||
you probably don't need it.
|
||||
|
||||
-------------------------------
|
||||
-d, --disp <display name>
|
||||
Optional string which contains the display name of the service.
|
||||
The default value is the service name (svc_name).
|
||||
|
||||
cygrunsrv -I svc_name -p /usr/bin/svc.exe -d baz
|
||||
|
||||
results in a service whose parameters are stored under the registry key
|
||||
'svc_name', executes the daemon svc.exe, but shows up in the Services
|
||||
control panel applet with the name 'baz'. You can start/stop the daemon
|
||||
using 'cygrunsrv -S svc_name' or 'net start svc_name' -- but it will
|
||||
report 'The baz service is starting' etc.
|
||||
|
||||
-------------------------------
|
||||
-f, --desc <service description>
|
||||
Optional service description string. The description string is
|
||||
displayed in the Windows graphical display for starting and stopping
|
||||
the service.
|
||||
|
||||
-------------------------------
|
||||
-t, --type [auto|manual]
|
||||
Optional start type of service. Defaults to `auto' (e.g. this service
|
||||
will be automatically started at system bootup). 'manual' means the
|
||||
service must be explicitly started using 'cygrunsrv -S svc_name'
|
||||
|
||||
-------------------------------
|
||||
-u, --user <user name>
|
||||
Optional user name to start service as. Defaults to SYSTEM account
|
||||
(also known as the 'LocalSystem' account). The user must have the
|
||||
"Logon as a service" privilege.
|
||||
|
||||
The user name can be given as Cygwin user name as stored in /etc/passwd:
|
||||
|
||||
$ grep "LocalService" /etc/passwd
|
||||
ls:*:19:0:U-NT AUTHORITY\LocalService,S-1-5-19:/tmp:/bin/false
|
||||
$ cygrunsrv -I svc -p cmd -u ls
|
||||
|
||||
or it can be given in NT user name notation. The backslash used to
|
||||
separate doamin name and user name can be replaced with a slash.
|
||||
Examples:
|
||||
|
||||
$ cygrunsrv -I svc -p cmd -u MY_DOMAIN\\user
|
||||
$ cygrunsrv -I svc -p cmd -u MY_DOMAIN/user
|
||||
$ cygrunsrv -I svc -p cmd -u "NT AUTHORITY/LocalService"
|
||||
$ cygrunsrv -I svc -p cmd -u "NT AUTHORITY"\\LocalService
|
||||
|
||||
-------------------------------
|
||||
-w, --passwd <password>
|
||||
Optional password for user. Only needed if a user is given. If a
|
||||
user has an empty password, enter `-w ' with no <password>.
|
||||
|
||||
cygrunsrv -I svc_name -p /usr/bin/svc.exe -u foo -w ""
|
||||
|
||||
If a user is given but the -w option is not used, then cygrunsrv will
|
||||
ask for a password interactively. Note that the password is stored in
|
||||
encrypted form in the registry.
|
||||
|
||||
Beginning with Windows XP and 2003 Server, there's a new security setting
|
||||
turned on by default, which disallows starting services for accounts without
|
||||
passwords. When you start the Security Policy MMC Snap-In, you'll find it
|
||||
under Securiy Settings/Local Policies/Security Options. The setting is
|
||||
called "Accounts: Limit local account use of blank password to console
|
||||
logon only." You can disable it, but it's highly discouraged. There's
|
||||
usually no good reason to install a service under an account without
|
||||
password.
|
||||
|
||||
-------------------------------
|
||||
-0, --stdin <file>
|
||||
Optional input file used for stdin redirection. Default is /dev/null.
|
||||
|
||||
-------------------------------
|
||||
-1, --stdout <file>
|
||||
Optional output file used for stdout redirection. Default is
|
||||
/var/log/<svc_name>.log.
|
||||
|
||||
-------------------------------
|
||||
-2, --stderr <file>
|
||||
Optional output file used for stderr redirection. Default is
|
||||
/var/log/<svc_name>.log. (Thus, by default, both stdout and
|
||||
stderr are redirected to /var/log/<svc_name>.log).
|
||||
|
||||
Note, it may soon be possible to redirect thru a pipe to the
|
||||
logger program (which is part of the inetutils package) so that
|
||||
messages printed by the target service are stored in the NT/W2K
|
||||
Event Application Log. For example,
|
||||
|
||||
THIS IS NOT YET IMPLEMENTED!!!!
|
||||
cygrunsrv -I svc_name -p /usr/bin/foo.exe \
|
||||
--stderr "|/usr/bin/logger -p INFO -t svc_name"
|
||||
|
||||
-------------------------------
|
||||
-x, --pidfile <file>
|
||||
Optional path for .pid file written by application after fork().
|
||||
Default is that the application must not fork().
|
||||
|
||||
With this option, it is possible to run daemons not providing a
|
||||
(usually Cygwin-specific) option to prevent fork()ing.
|
||||
|
||||
-------------------------------
|
||||
-s, --termsig <signal>
|
||||
Optional signal to send to service application to stop
|
||||
the service. <signal> can be a number or a signal name such as
|
||||
HUP, INT, QUIT, etc. Default is TERM, which is appropriate for
|
||||
most daemons.
|
||||
|
||||
-------------------------------
|
||||
-z, --shutsig <signal>
|
||||
Optional signal to send to service application to stop the service
|
||||
in case of a system shutdown. This is useful if your service
|
||||
application wants to allow different actions to be taken on a normal
|
||||
service stop and on system shutdown. Note that the --shutsig option
|
||||
only has an effect if you use the --preshutdown or --shutdown option
|
||||
(see there for more information). The default signal on shutdown is the
|
||||
termination signal set with --termsig, TERM otherwise.
|
||||
|
||||
-------------------------------
|
||||
-y, --dep <svc_name2>
|
||||
Optional name of service that must be started before this
|
||||
new service. The --dep option may be given up to 16 times, listing
|
||||
another dependent service each time. Try to avoid dependency loops:
|
||||
that is, if svc_A depends on svc_B, but svc_B depends on svc_A...
|
||||
|
||||
-------------------------------
|
||||
-n, --neverexits
|
||||
|
||||
Optional flag that causes cygrunsrv to only report a successful
|
||||
shutdown of the service to windows when cygrunsrv itself was told
|
||||
to shutdown and the exec'ed process exited with a zero status. Use
|
||||
this option when the service should only be started or stopped via
|
||||
the Windows service mechanism (e.g. cygrunsrv -E, net stop, or via
|
||||
the services GUI).
|
||||
|
||||
-------------------------------
|
||||
-O, --preshutdown
|
||||
-o, --shutdown
|
||||
|
||||
Optional flags that causes cygrunsrv to terminate the service
|
||||
application during system shutdown. When in effect, cygrunsrv sends the
|
||||
shutdown signal (see --shutsig) to the application process when
|
||||
cygrunsrv learns that the system is shutting down. This gives the
|
||||
application a short time (usually not more than up to 20 secs) to clean
|
||||
up and exit gracefully. Note that each Cygwin process also sends SIGHUP
|
||||
to itself (implicitly) during system shutdown.
|
||||
|
||||
Starting with Windows Vista/Longhorn, the --preshutdown option allows to
|
||||
terminate the service before the real shutdown takes place, giving the
|
||||
service up to 3 minutes for its shutdown actions.
|
||||
|
||||
Only one of the --preshutdown/--shutdown options is allowed. If you use
|
||||
--preshutdown on operating systems prior to Windows Vista/Longhorn, it
|
||||
will be silently converted to --shutdown at service runtime.
|
||||
|
||||
-------------------------------
|
||||
-i, --interactive
|
||||
|
||||
Optional flag that allows cygrunsrv to interact with the desktop.
|
||||
When in effect, cygrunsrv can open windows and pop up message boxes.
|
||||
Equivalent to the "Allow service to interact with desktop" box.
|
||||
Cannot be used unless the service runs as SYSTEM.
|
||||
|
||||
NOTE: The interactive option has not the desired effect anymore,
|
||||
starting with Windows Vista/Longhorn. Interactive services which are
|
||||
allowed to interact with the local desktop are deprecated by Microsoft.
|
||||
To get desktop interaction, your service needs to use other means of
|
||||
interprocess communication between the actual service application and a
|
||||
desktop application running in the user context of the desktop user.
|
||||
|
||||
-------------------------------
|
||||
-j, --nohide
|
||||
|
||||
When running services interactively (see -i, --interactive option above),
|
||||
usually a console window pops up, which has been opened by the service
|
||||
control manager. Beginning with version 0.99, cygrunsrv hides that
|
||||
console window by default. If you need that console window open, use
|
||||
the -j or --nohide option. In that case, cygrunsrv keeps the console
|
||||
window untouched.
|
||||
|
||||
**********************************************
|
||||
Information on mounts:
|
||||
|
||||
Services by default are run as the local system account, not your regular
|
||||
user account. This means that if you have user-mode mounts (i.e. you
|
||||
selected 'Just Me' in setup.exe) the service will not see them and fail to
|
||||
start. Cygrunsrv will now attempt to detect this an warn you if /usr/bin
|
||||
is mounted in user mode. See also <http://cygwin.com/faq/faq.html#SEC33>.
|
||||
|
||||
**********************************************
|
||||
General Notes:
|
||||
|
||||
There's currently one caveat, though. If the application behaves as
|
||||
a "normal" unix daemon and exits after forking a child, cygrunsrv
|
||||
will immediately stop the service (but the actual daemon keeps running
|
||||
in the background). This means that you cannot then STOP the daemon
|
||||
using cygrunsrv, but you must explicit kill it via 'kill -9 <daemon_pid>'
|
||||
|
||||
If you fail to do this, you will probably see something like this in
|
||||
the Windows Application Event Log:
|
||||
Cygwin Apache : Win32 Process Id = 0xFE : Cygwin Process Id = 0xFE :
|
||||
`Cygwin Apache' service started.
|
||||
immediately followed by
|
||||
Cygwin Apache : Win32 Process Id = 0xFE : Cygwin Process Id = 0xFE :
|
||||
`Cygwin Apache' service stopped.
|
||||
but 'ps -eaf | grep httpd' shows that httpd IS still running.
|
||||
|
||||
To avoid this problem, you must start the application so that it
|
||||
doesn't fork a daemon but stays resident instead. sshd
|
||||
for example has to be called with the -D option. squid must be
|
||||
called with the -N option.
|
||||
|
||||
For example,
|
||||
cygrunsrv -I sshd -p /usr/sbin/sshd -a -D
|
||||
cygrunsrv -I squid -p /usr/bin/squid -a -N
|
||||
although other options may be necessary.
|
||||
|
||||
**********************************************
|
||||
Generic Examples
|
||||
|
||||
To install the Cygwin application /bin/foo as service "foo" running under
|
||||
LocalSystem account, no special options:
|
||||
|
||||
cygrunsrv -I foo -p /bin/foo
|
||||
|
||||
To install /bin/foo as a service "bar" which requires command line options:
|
||||
|
||||
cygrunsrv -I bar -p /bin/foo -a '--opt1 --opt2 -x'
|
||||
|
||||
To install /bin/foo as a service "baz" which requires a command line option
|
||||
which contains spaces:
|
||||
|
||||
cygrunsrv -I baz -p /bin/foo -a "-x 'this has spaces inside'"
|
||||
or
|
||||
cygrunsrv -I baz -p /bin/foo -a '-x "this has spaces inside"'
|
||||
|
||||
To install /bin/foo as a service "foo bar" which doesn't automatically
|
||||
startup when the system boots:
|
||||
|
||||
cygrunsrv -I "foo bar" -p /bin/foo -t manual
|
||||
|
||||
To install /bin/foo as a service "bongo" which requires settings for the
|
||||
environment variables "ENV_VAR_1" and "ENV_VAR_2" to run correctly:
|
||||
|
||||
cygrunsrv -I bongo -p /bin/foo -e "ENV_VAR_1=important_1" \
|
||||
-e "ENV_VAR_2=also_important"
|
||||
|
||||
To install sshd as service under user `joey' account:
|
||||
|
||||
cygrunsrv -I "Joey sshd" -p /usr/sbin/sshd -a '-d' -u joey
|
||||
|
||||
cygrunsrv asks for `joey's password interactively. If one wants
|
||||
to give joey's password (say, "privy23") on the command line:
|
||||
|
||||
cygrunsrv -I "Joey sshd" -p /usr/sbin/sshd -a '-D' -u joey -w privy23
|
||||
|
||||
To start the service `foo':
|
||||
|
||||
cygrunsrv -S foo
|
||||
|
||||
To stop the service `foo':
|
||||
|
||||
cygrunsrv -E foo
|
||||
|
||||
To uninstall the service `foo':
|
||||
|
||||
cygrunsrv -R foo
|
||||
|
||||
|
||||
**********************************************
|
||||
Specific Examples
|
||||
|
||||
Please add suggestions for this list...
|
||||
|
||||
------------
|
||||
postgresql:
|
||||
cygrunsrv --install postmaster \
|
||||
--path /usr/bin/postmaster \
|
||||
--args "-D /usr/share/postgresql/data -i" \
|
||||
--dep ipc-daemon --termsig INT --user postgresql --shutdown
|
||||
|
||||
------------
|
||||
sshd:
|
||||
cygrunsrv --install sshd \
|
||||
--path /usr/sbin/sshd \
|
||||
--args -D
|
||||
|
||||
------------
|
||||
xinetd:
|
||||
cygrunsrv --install xinetd \
|
||||
--pidfile /var/run/xinetd.pid \
|
||||
--path /usr/sbin/xinetd \
|
||||
--args "-pidfile /var/run/xinetd.pid"
|
||||
|
||||
Note that at present, ipc-daemon.exe and inetd.exe contain the
|
||||
appropriate code to run as Windows services WITHOUT the assistance
|
||||
of cygrunsrv.
|
||||
|
||||
**********************************************
|
||||
Troubleshooting
|
||||
|
||||
If the service fails to start, consider whether the service process
|
||||
depends on other services and reinstall the service using the `--dep'
|
||||
parameter to ensure that those other services are running first. In
|
||||
particular, any service application that uses network services (such
|
||||
as socket connections) depends on the "LanmanWorkstation" service; this
|
||||
dependency can be declared as `--dep LanmanWorkstation'. On systems
|
||||
where "LanmanWorkstation" isn't started you can try using a dependency
|
||||
on the "Tcpip" service. In that case just add `--dep Tcpip' to the
|
||||
command line when installing the service.
|
||||
|
||||
**********************************************
|
||||
Contact Information
|
||||
|
||||
For support, contact the cygwin mailing list cygwin@cygwin.com. cygrunsrv was originally created by Corinna Vinschen.
|
||||
198
OGP64/usr/share/doc/Cygwin/cygserver.README
Normal file
198
OGP64/usr/share/doc/Cygwin/cygserver.README
Normal file
|
|
@ -0,0 +1,198 @@
|
|||
What is Cygserver?
|
||||
|
||||
Cygserver is a program which is designed to run as a background service.
|
||||
It provides Cygwin applications with services which require security
|
||||
arbitration or which need to persist while no other cygwin application
|
||||
is running.
|
||||
|
||||
The implemented services so far are:
|
||||
|
||||
- Control slave tty/pty handle dispersal from tty owner to other
|
||||
processes without compromising the owner processes' security.
|
||||
- XSI IPC Message Queues.
|
||||
- XSI IPC Semaphores.
|
||||
- XSI IPC Shared Memory.
|
||||
- Allows non-privileged users to store obfuscated passwords in the
|
||||
registry to be used for setuid(2) to create user tokens with network
|
||||
credentials. This service is used by `passwd -R'. Using the stored
|
||||
passwords in setuid(2) does not require running cygserver. The
|
||||
registry storage is the same as Windows uses to store passwords for
|
||||
accounts running Windows services.
|
||||
|
||||
|
||||
Cygserver command line options:
|
||||
|
||||
Options to Cygserver take the normal UNIX-style `-X' or `--longoption' form.
|
||||
Nearly all options have a counterpart in the configuration file (see below)
|
||||
so setting them on the command line isn't really necessary. Command line
|
||||
options override settings from the Cygserver configuration file.
|
||||
|
||||
The one-character options are prepended by a single dash, the long variants
|
||||
are prepended with two dashes. Arguments to options are marked in angle
|
||||
brackets below. These are not part of the actual syntax but are used only to
|
||||
denote the arguments. Note that all arguments are required. Cygserver
|
||||
has no options with optional arguments.
|
||||
|
||||
The options recognized are:
|
||||
|
||||
-f, --config-file <file>
|
||||
|
||||
Use <file> as configuration file instead of the default configuration
|
||||
line. The default configuration file is /etc/cygserver.conf, typically.
|
||||
The --help and --version options will print the default configuration
|
||||
pathname.
|
||||
|
||||
This option has no counterpart in the configuration file, for obvious
|
||||
reasons.
|
||||
|
||||
-c, --cleanup-threads <num>
|
||||
|
||||
Number of threads started to perform cleanup tasks. Default is 2.
|
||||
Configuration file option: kern.srv.cleanup_threads
|
||||
|
||||
-r, --request-threads <num>
|
||||
|
||||
Number of threads started to serve application requests. Default is 10.
|
||||
The -c and -r options can be used to play with Cygserver's performance
|
||||
under heavy load conditions or on slow machines.
|
||||
Configuration file option: kern.srv.request_threads
|
||||
|
||||
-p, --process-cache <num>
|
||||
|
||||
Number of processes which can connect concurrently to cygserver.
|
||||
Default is 62. Each process connected to cygserver is a synchronization
|
||||
object which has to be maintained. The data structure to maintain these
|
||||
processes is the so-called "process cache". In theory, an arbitrary
|
||||
number of processes could connect to cygserver, but due to the need to
|
||||
synchronize, the higher the number of connected processes, the more
|
||||
synchronization overhead exists. By using this option, you can set an
|
||||
upper limit to the synchronization effort. If more than 62 processes
|
||||
try to connect to cygserver concurrently, two additional synchronization
|
||||
threads are necessary, and one for each further 62 concurrent
|
||||
processes. So, useful values for the --process-cache option are 62, 124,
|
||||
186, 248, 310. 310 is the maximum value.
|
||||
Configuration file option: kern.srv.process_cache_size
|
||||
|
||||
NOTE: The number of child processes of a single parent process is limited
|
||||
to 256. So in case of taking advantage of a process cache size beyond 256,
|
||||
keep in mind that not all of these processes can be child processes of one
|
||||
single parent process.
|
||||
|
||||
-d, --debug
|
||||
|
||||
Log debug messages to stderr. These will clutter your stderr output with
|
||||
a lot of information, typically only useful to developers.
|
||||
|
||||
-e, --stderr
|
||||
|
||||
Force logging to stderr. This is the default if stderr is connected to
|
||||
a tty. Otherwise, the default is logging to the system log. By using
|
||||
the -e, -E, -y, -Y options (or the appropriate settings in the
|
||||
configuration file), you can explicitely set the logging output as you
|
||||
like, even to both, stderr and syslog.
|
||||
Configuration file option: kern.log.stderr
|
||||
|
||||
-E, --no-stderr
|
||||
|
||||
Don't log to stderr. Configuration file option: kern.log.stderr
|
||||
|
||||
-y, --syslog
|
||||
|
||||
Force logging to the system log. This is the default, if stderr is not
|
||||
connected to a tty, e. g. redirected to a file.
|
||||
|
||||
-Y, --no-syslog
|
||||
|
||||
Don't log to syslog. Configuration file option: kern.log.syslog
|
||||
|
||||
-l, --log-level <level>
|
||||
|
||||
Set the verbosity level of the logging output. Valid values are between
|
||||
1 and 7. The default level is 6, which is relatively chatty. If you set
|
||||
it to 1, you will get only messages which are printed under severe conditions,
|
||||
which will result in stopping Cygserver itself.
|
||||
Configuration file option: kern.log.level
|
||||
|
||||
-m, --no-sharedmem
|
||||
|
||||
Don't start XSI IPC Shared Memory support. If you don't need XSI IPC
|
||||
Shared Memory support, you can switch it off here.
|
||||
Configuration file option: kern.srv.sharedmem
|
||||
|
||||
-q, --no-msgqueues
|
||||
|
||||
Don't start XSI IPC Message Queues.
|
||||
Configuration file option: kern.srv.msgqueues
|
||||
|
||||
-s, --no-semaphores
|
||||
|
||||
Don't start XSI IPC Semaphores.
|
||||
Configuration file option: kern.srv.semaphores
|
||||
|
||||
-S, --shutdown
|
||||
|
||||
Shutdown a running daemon and exit. Other methods are sending a SIGHUP
|
||||
to the Cygserver PID or, if running as service under NT, calling
|
||||
`net stop cygserver' or `cygrunsrv -E cygserver'.
|
||||
|
||||
-h, --help
|
||||
|
||||
Output usage information and exit.
|
||||
|
||||
-v, --version
|
||||
|
||||
Output version information and exit.
|
||||
|
||||
|
||||
How to start Cygserver:
|
||||
|
||||
Before you run Cygserver for the first time, you should run the
|
||||
/usr/bin/cygserver-config script once. It creates the default
|
||||
configuration file and, upon request, installs Cygserver as service
|
||||
when running under NT. The script only performs a default install,
|
||||
with no further options given to Cygserver when running as service.
|
||||
Due to the wide configurability by changing the configuration file,
|
||||
that's typically not necessary.
|
||||
|
||||
It's best practice to run Cygserver as a service under LocalSystem
|
||||
account. This is the way it is installed for you by the
|
||||
/usr/bin/cygserver-config script.
|
||||
|
||||
|
||||
The Cygserver configuration file:
|
||||
|
||||
Cygserver has many options, which allow to customize the server
|
||||
to your needs. Customization is accomplished by editing the configuration
|
||||
file, which is by default /etc/cygserver.conf. This file is read only
|
||||
once on startup of Cygserver. There's no option to re-read the file on
|
||||
runtime by, say, sending a signal to Cygserver.
|
||||
|
||||
The configuration file determines how Cygserver operates. There are
|
||||
options which set the number of threads running in parallel, options
|
||||
for setting how and what to log and options to set various maximum
|
||||
values for the IPC services.
|
||||
|
||||
The default configuration file delivered with Cygserver is installed
|
||||
to /etc/defaults/etc. The /usr/bin/cygserver-config script copies it to
|
||||
/etc, giving you the option to overwrite an already existing file or to
|
||||
leave it alone. Therefore, the /etc file is safe to be changed by you,
|
||||
since it will not be overwritten by a later update installation.
|
||||
|
||||
The default configuration file contains many comments which describe
|
||||
everything needed to understand the settings. A comment at the start of the
|
||||
file describes the syntax rules for the file. The default options are shown
|
||||
in the file but are commented out.
|
||||
|
||||
It is generally a good idea to uncomment only options which you intend to
|
||||
change from the default values. Since reading the options file on Cygserver
|
||||
startup doesn't take much time, it's also considered good practice to keep
|
||||
all other comments in the file. This keeps you from searching for clues
|
||||
in other sources.
|
||||
|
||||
|
||||
If you have problems with Cygserver, or you have found a bug, or you
|
||||
think you have found a bug, or you don't understand configuration file
|
||||
options, the mailing list <cygwin@cygwin.com> is the right place to ask
|
||||
questions.
|
||||
|
||||
Have fun!
|
||||
26
OGP64/usr/share/doc/Cygwin/editrights.README
Normal file
26
OGP64/usr/share/doc/Cygwin/editrights.README
Normal file
|
|
@ -0,0 +1,26 @@
|
|||
This small utility allows Windows NT user rights and privileges
|
||||
to be set from the command line.
|
||||
|
||||
Build:
|
||||
|
||||
To build editrights, run "make".
|
||||
To install it, run "make install".
|
||||
|
||||
Usage:
|
||||
|
||||
To list the access rights granted to a user (e.g. FRED)
|
||||
editrights -u FRED -l
|
||||
|
||||
To do this more verbosely
|
||||
editrights -u FRED -l -v
|
||||
|
||||
To give FRED the SeTcbPrivilege ("Act as part of the operating system")
|
||||
editrights -u FRED -a SeTcbPrivilege
|
||||
|
||||
To remove this right from FRED
|
||||
editrights -u FRED -r SeTcbPrivilege
|
||||
|
||||
To test whether FRED has the SeTcbPrivilege
|
||||
editrights -u FRED -t SeTcbPrivilege && echo 'FRED has SeTcb...'
|
||||
|
||||
CTR 23/Sep/2003.
|
||||
55
OGP64/usr/share/doc/Cygwin/hostname.README
Normal file
55
OGP64/usr/share/doc/Cygwin/hostname.README
Normal file
|
|
@ -0,0 +1,55 @@
|
|||
hostname
|
||||
----------------------------------------------------------------------
|
||||
Show host name, domain name or network addresses
|
||||
|
||||
This package provides the Debian version of the hostname command.
|
||||
It can be used to display the system's host name, DNS domain name or
|
||||
network addresses.
|
||||
|
||||
Runtime requirements (these or newer):
|
||||
cygwin-1.7.22-1
|
||||
coreutils-8.15-3 (older versions include /usr/bin/hostname)
|
||||
|
||||
Build requirements (these or newer):
|
||||
binutils-2.23.51-1
|
||||
coreutils-8.15-1
|
||||
cygport-0.13.0-1
|
||||
gcc4-core-4.7.3-1
|
||||
make-3.82.90-1
|
||||
tar-1.26-1
|
||||
|
||||
Canonical homepage:
|
||||
http://packages.debian.org/unstable/hostname
|
||||
|
||||
Canonical download:
|
||||
http://ftp.debian.org/debian/pool/main/h/hostname/
|
||||
|
||||
Upstream contact:
|
||||
Debian Hostname Team <hostname-devel@lists.alioth.debian.org>
|
||||
|
||||
License:
|
||||
GPLv2+
|
||||
|
||||
Language:
|
||||
C
|
||||
|
||||
---------------------------------------------
|
||||
|
||||
Port notes:
|
||||
|
||||
|
||||
-------- hostname-3.13-1 -- 2013-08-07 --------
|
||||
hostname 3.13 2013-06-08
|
||||
|
||||
-------- hostname-3.12-1 -- 2013-04-10 --------
|
||||
Compilation fixes (missing set*name, NIS)
|
||||
hostname 3.12 2012-12-06
|
||||
|
||||
|
||||
For more information about this package, see the upstream documentation in
|
||||
/usr/share/doc/hostname.
|
||||
|
||||
Cygwin port by: Christian Franke <chrfranke@users.sourceforge.net>
|
||||
|
||||
Please address all questions to the Cygwin mailing list at <cygwin@cygwin.com>.
|
||||
|
||||
91
OGP64/usr/share/doc/Cygwin/openssh.README
Normal file
91
OGP64/usr/share/doc/Cygwin/openssh.README
Normal file
|
|
@ -0,0 +1,91 @@
|
|||
This package describes important Cygwin specific stuff concerning OpenSSH.
|
||||
|
||||
The binary package is usually built for recent Cygwin versions and might
|
||||
not run on older versions. Please check http://cygwin.com/ for information
|
||||
about current Cygwin releases.
|
||||
|
||||
==================
|
||||
Host configuration
|
||||
==================
|
||||
|
||||
If you are installing OpenSSH the first time, you can generate global config
|
||||
files and server keys, as well as installing sshd as a service, by running
|
||||
|
||||
/usr/bin/ssh-host-config
|
||||
|
||||
Note that this binary archive doesn't contain default config files in /etc.
|
||||
That files are only created if ssh-host-config is started.
|
||||
|
||||
To support testing and unattended installation ssh-host-config got
|
||||
some options:
|
||||
|
||||
usage: ssh-host-config [OPTION]...
|
||||
Options:
|
||||
--debug -d Enable shell's debug output.
|
||||
--yes -y Answer all questions with "yes" automatically.
|
||||
--no -n Answer all questions with "no" automatically.
|
||||
--cygwin -c <options> Use "options" as value for CYGWIN environment var.
|
||||
--name -N <name> sshd windows service name.
|
||||
--port -p <n> sshd listens on port n.
|
||||
--user -u <account> privileged user for service, default 'cyg_server'.
|
||||
--pwd -w <passwd> Use "pwd" as password for privileged user.
|
||||
--privileged On Windows XP, require privileged user
|
||||
instead of LocalSystem for sshd service.
|
||||
|
||||
Installing sshd as daemon via ssh-host-config is recommended.
|
||||
|
||||
Alternatively you can start sshd via inetd, if you have the inetutils
|
||||
package installed. Just run ssh-host-config, but answer "no" when asked
|
||||
to install sshd as service. The ssh-host-config script also adds the
|
||||
required lines to /etc/inetd.conf and /etc/services.
|
||||
|
||||
==================
|
||||
User configuration
|
||||
==================
|
||||
|
||||
Any user can simplify creating the own private and public keys by running
|
||||
|
||||
/usr/bin/ssh-user-config
|
||||
|
||||
To support testing and unattended installation ssh-user-config got
|
||||
some options as well:
|
||||
|
||||
usage: ssh-user-config [OPTION]...
|
||||
Options:
|
||||
--debug -d Enable shell's debug output.
|
||||
--yes -y Answer all questions with "yes" automatically.
|
||||
--no -n Answer all questions with "no" automatically.
|
||||
--passphrase -p word Use "word" as passphrase automatically.
|
||||
|
||||
Please note that OpenSSH does never use the value of $HOME to
|
||||
search for the users configuration files! It always uses the
|
||||
value of the pw_dir field in /etc/passwd as the home directory.
|
||||
If no home directory is set in /etc/passwd, the root directory
|
||||
is used instead!
|
||||
|
||||
================
|
||||
Building OpenSSH
|
||||
================
|
||||
|
||||
Building from source is easy. Just unpack the source archive, cd to that
|
||||
directory, and call cygport:
|
||||
|
||||
cygport openssh.cygport all
|
||||
|
||||
You must have installed the following packages to be able to build OpenSSH
|
||||
with the aforementioned cygport script:
|
||||
|
||||
zlib
|
||||
crypt
|
||||
libssl-devel
|
||||
libedit-devel
|
||||
libkrb5-devel
|
||||
|
||||
Please send requests, error reports etc. to cygwin@cygwin.com.
|
||||
|
||||
|
||||
Have fun,
|
||||
|
||||
Corinna Vinschen
|
||||
Cygwin Developer
|
||||
Red Hat Inc.
|
||||
219
OGP64/usr/share/doc/Cygwin/rsync.README
Normal file
219
OGP64/usr/share/doc/Cygwin/rsync.README
Normal file
|
|
@ -0,0 +1,219 @@
|
|||
rsync
|
||||
------------------------------------------
|
||||
|
||||
fast, versatile file synchronizing tool
|
||||
|
||||
Fast and versatile file-copying tool which can copy locally and
|
||||
to/from a remote host. It offers many options to control its behavior,
|
||||
and its remote-update protocol can minimize network traffic to make
|
||||
transferring updates between machines fast and efficient. It is widely
|
||||
used for backups and mirroring and as an improved copy command for
|
||||
everyday use.
|
||||
|
||||
Mini-HOWTO for using the program as a service:
|
||||
|
||||
*) have a valid /etc/rsyncd.conf:
|
||||
man rsyncd.conf
|
||||
|
||||
*) install service:
|
||||
cygrunsrv --help
|
||||
cygrunsrv -I rsyncd -p /usr/bin/rsync -a "--daemon --no-detach"
|
||||
|
||||
*) remove service:
|
||||
cygrunsrv -R rsyncd
|
||||
|
||||
Runtime requirements:
|
||||
bash - rsync-ssl script
|
||||
libgcc1
|
||||
libiconv2
|
||||
liblz4_1
|
||||
libzstd1
|
||||
libssl1.1
|
||||
libxxhash0
|
||||
|
||||
Build requirements:
|
||||
python3*-commonmark (check /usr/bin/python3 which version)
|
||||
libiconv2-devel
|
||||
liblz4-devel
|
||||
libzstd-devel
|
||||
libllvm-devel
|
||||
|
||||
Canonical homepage:
|
||||
http://rsync.samba.org
|
||||
https://packages.debian.org/unstable/rsync
|
||||
|
||||
Canonical download:
|
||||
http://rsync.samba.org/ftp/rsync
|
||||
|
||||
Version control repository:
|
||||
git clone git://git.samba.org/rsync.git
|
||||
./support/git-set-file-times # optional
|
||||
./prepare-source
|
||||
|
||||
Mailing list:
|
||||
|
||||
Forum / Wiki:
|
||||
|
||||
IRC channel:
|
||||
|
||||
Upstream contact:
|
||||
Maintainer:
|
||||
Bugs: https://bugzilla.samba.org/enter_bug.cgi?product=rsync
|
||||
|
||||
License:
|
||||
GPL-3+
|
||||
|
||||
Language:
|
||||
C
|
||||
|
||||
------------------------------------------
|
||||
|
||||
Build instructions:
|
||||
unpack rsync-*-src.tar.*
|
||||
if you use setup to install this source package, it will be
|
||||
unpacked under /usr/src automatically
|
||||
cd /usr/src
|
||||
./rsync*.sh all
|
||||
|
||||
------------------------------------------
|
||||
|
||||
Files included in the binary distribution:
|
||||
See Cygwin package archive
|
||||
|
||||
------------------------------------------
|
||||
|
||||
Port Notes:
|
||||
|
||||
----- version 3.3.0-1 -----
|
||||
- New upstream release 2024-04-26 Jari Aalto
|
||||
|
||||
----- version 3.2.3+20200903+git9f9240b-4 -----
|
||||
- Compile with xxhah support (Cygwin now includes the library)
|
||||
|
||||
----- version 3.2.3+20200903+git9f9240b-3 -----
|
||||
- New upstream release 2020-09-07 Jari Aalto
|
||||
- Debian 3.2.3 patches included in sources, but NOT relevant to Cygwin
|
||||
+ disable_reconfigure_req.diff - Remove need to run reconfigure target
|
||||
+ perl_shebang.patch - Removes usage of env on perl shebang as per Debian Policy 10.4
|
||||
+ skip_devices_test.patch - Skip "devices" test as it fails on kfreebsd and hurd
|
||||
|
||||
----- version 3.2.3+20200903+git9f9240b-2 -----
|
||||
- New upstream release 2020-09-06 Jari Aalto
|
||||
- Compile with python36-commonmark
|
||||
|
||||
----- version 3.2.3+20200903+git9f9240b-1 -----
|
||||
- New upstream release 2020-09-05 Jari Aalto
|
||||
|
||||
----- version 3.1.3+20200429+gitf7746d0-1 -----
|
||||
- New upstream release 2020-05-05 Jari Aalto
|
||||
|
||||
----- version 3.1.2-1 -----
|
||||
- New upstream release 2016-01-29 Jari Aalto
|
||||
- Includes security fix CVE-2014-9512
|
||||
- Debian 3.1.1 patches included
|
||||
|
||||
logdir.patch
|
||||
- fix the location of the logdir
|
||||
|
||||
ssh-6-option.patch
|
||||
|
||||
- call ssh with -6 option if rsync was called
|
||||
with -6, ditto with -4
|
||||
|
||||
noatime.patch
|
||||
|
||||
- add an option --noatime to request the kernel not to update files'
|
||||
access times while reading them. See
|
||||
https://bugzilla.samba.org/show_bug.cgi?id=7249#c5
|
||||
|
||||
----- version 3.1.1-1 -----
|
||||
- New upstream release 2015-02-13 Jari Aalto
|
||||
|
||||
----- version 3.1.0-1 -----
|
||||
- New upstream release 2014-06-17 Jari Aalto
|
||||
|
||||
----- version 3.0.9-1 -----
|
||||
- New upstream release.
|
||||
|
||||
----- version 3.0.8-1 -----
|
||||
- New upstream release.
|
||||
|
||||
----- version 3.0.7-1 -----
|
||||
- New upstream release.
|
||||
|
||||
----- version 3.0.6-1 -----
|
||||
- New upstream release.
|
||||
Experimentally enabled xattr support (with a small patch).
|
||||
|
||||
----- version 3.0.4-2 -----
|
||||
- Cygwin 1.7 release.
|
||||
|
||||
----- version 3.0.4-1 -----
|
||||
- New upstream release.
|
||||
|
||||
----- version 3.0.2-0 -----
|
||||
- This release produced by: David Rothenberger <daveroth@acm.org>
|
||||
- As in message: http://www.cygwin.com/ml/cygwin/2008-05/msg00136.html
|
||||
New upstream release. Fixes a security issue with extended attribute
|
||||
support, which isn't enabled for Cygwin anyway.
|
||||
|
||||
----- version 3.0.1-0 -----
|
||||
New upstream release.
|
||||
|
||||
----- version 3.0.0-0 -----
|
||||
- New upstream release.
|
||||
|
||||
----- version 2.6.9-2 -----
|
||||
- Security fix patch (kudos to David Rothenberger for pointing it to me):
|
||||
http://www.suse.de/%7Ekrahmer/rsync-2.6.9-fname-obo.diffq
|
||||
|
||||
----- version 2.6.9-1 -----
|
||||
No patch used.
|
||||
|
||||
----- version 2.6.3-1 -----
|
||||
- Kept Sjoerd Mullender's patch for the textmode issue as the only patch.
|
||||
|
||||
----- version 2.6.2-3 -----
|
||||
- Added Sjoerd Mullender's patch for the new textmode issue:
|
||||
http://www.cygwin.com/ml/cygwin/2004-09/msg01022.html
|
||||
|
||||
----- version 2.6.2-2 -----
|
||||
- Added patch for the August 2004 security advisory:
|
||||
http://rsync.samba.org/#security_aug04
|
||||
|
||||
----- version 2.6.2-1 -----
|
||||
- No patch used.
|
||||
|
||||
----- version 2.6.0-1 -----
|
||||
- No patch used.
|
||||
|
||||
----- version 2.5.7-2 -----
|
||||
- Moved man pages under the /usr/share tree.
|
||||
|
||||
----- version 2.5.7-1 -----
|
||||
- Identical to 2.5.6-2, almost:
|
||||
1. security advisory:
|
||||
http://www.mail-archive.com/rsync@lists.samba.org/msg08782.html
|
||||
2. moved documentation under the /usr/share tree
|
||||
|
||||
----- version 2.5.6-2 -----
|
||||
- Compiled against cygwin-1.5.0 experimental library,
|
||||
with support for 64-bit file offsets and more.
|
||||
|
||||
----- version 2.5.6-1 -----
|
||||
- Compiled with gcc version 3.2 from now on
|
||||
|
||||
----- version 2.5.5-2 -----
|
||||
- Compiled with gcc version 3.2 20020818 (prerelease)
|
||||
- Included Anthony Heading's patch to avoid dead child processes
|
||||
http://sources.redhat.com/ml/cygwin/2002-09/msg01155.html
|
||||
|
||||
----- version 2.5.5-1 -----
|
||||
- No special patch was needed for this version.
|
||||
- Daemon mode sometimes produces "read error: Connection reset by peer" at the
|
||||
very end of transfer.
|
||||
|
||||
Licensed under GPL v2 or later
|
||||
Cygwin port maintained by Jari Aalto
|
||||
Copyright (C) 2014-2024 Jari Aalto <jari.aalto@cante.net>
|
||||
Copyright (C) 2002-2020 Lapo Luchini <lapo@lapo.it>
|
||||
BIN
OGP64/usr/share/doc/Cygwin/screen.README
Normal file
BIN
OGP64/usr/share/doc/Cygwin/screen.README
Normal file
Binary file not shown.
339
OGP64/usr/share/doc/alternatives/COPYING
Normal file
339
OGP64/usr/share/doc/alternatives/COPYING
Normal file
|
|
@ -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.
|
||||
|
||||
<one line to give the program's name and a brief idea of what it does.>
|
||||
Copyright (C) <year> <name of author>
|
||||
|
||||
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.
|
||||
|
||||
<signature of Ty Coon>, 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.
|
||||
1
OGP64/usr/share/doc/alternatives/README.md
Normal file
1
OGP64/usr/share/doc/alternatives/README.md
Normal file
|
|
@ -0,0 +1 @@
|
|||
# chkconfig | [](https://github.com/fedora-sysv/chkconfig/actions?query=workflow%3AIntegration+tests) [](https://github.com/fedora-sysv/chkconfig/actions/workflows/codeql.yml)
|
||||
293
OGP64/usr/share/doc/base-files/ChangeLog
Normal file
293
OGP64/usr/share/doc/base-files/ChangeLog
Normal file
|
|
@ -0,0 +1,293 @@
|
|||
Cygwin base system miscellaneous files
|
||||
--------------------------------------
|
||||
TODO:
|
||||
-----
|
||||
* Should future versions rely on /etc/mkshrc to set PS1 properly for mksh
|
||||
if mksh supports sourcing /etc/mkshrc for interactive-login sessions?
|
||||
* Ask zsh mantainer to put /etc/zprofile and /etc/zshrc in place during
|
||||
installation.
|
||||
* Should users with GID 544 have /usr/sbin in their paths?
|
||||
* Enhance admins' prompt (ideas include the known # sign and using another
|
||||
color, red?).
|
||||
|
||||
Change Log
|
||||
----------
|
||||
4.3-3 (bugfix release)
|
||||
* etc/defaults/etc/profile: Fix a bug so that the system variable
|
||||
CYGWIN_USEWINPATH actually does what it was supposed to do.
|
||||
4.3-2 (bugfix/feature release)
|
||||
* etc/defaults/etc/skel/.bashrc: Remove outdated comments on
|
||||
completion and mention the bash_completion package as a
|
||||
prerequisite. See cygwin.com/ml/cygwin/2016-03/msg00207.html
|
||||
* etc/postinstall/base-files-profile.sh: If a non-default file is
|
||||
kept, show a diff to the default version if /bin/diff is
|
||||
installed and the target is a plain file.
|
||||
* etc/postinstall/base-files-profile.sh: Do not touch file before
|
||||
installing so the modes are kept intact, like cygport is already
|
||||
doing for some time. Reported by Christian Franke, see
|
||||
cygwin.com/ml/cygwin/2016-09/msg00059.html
|
||||
4.3-1 (feature release)
|
||||
* Cygwin.bat: Add to base-files. This version is independent of
|
||||
the actual install path, see:
|
||||
cygwin.com/ml/cygwin/2016-08/msg00617.html
|
||||
* etc/defaults/etc/profile: Allow the use of the unaltered
|
||||
existing system PATH by setting the system variable
|
||||
CYGWIN_USEWINPATH.
|
||||
* etc/defaults/etc/profile: avoid second invocation of
|
||||
/usr/bin/hostname. Reported by Helmut Karlowski, see
|
||||
cygwin.com/ml/cygwin/2015-12/msg00080.html
|
||||
* etc/postinstall/base-files-mketc.sh (WINETC): Use /proc/cygdrive
|
||||
prefixed path which keeps working even if the user changes the
|
||||
/cygdrive prefix after installation.
|
||||
4.2-4 (bugfix release)
|
||||
* etc/postinstall/base-files-mketc.sh: Windows only uses 8 characters
|
||||
for files in the WINETC directory. Check if the symlink target
|
||||
exists and remove the symlink if not (to fix "protocols" where
|
||||
"protocol" should be used). Truncate the target file names to eight
|
||||
characters for new symlinks. Reported by Walter L., see
|
||||
cygwin.com/ml/cygwin/2015-09/msg00371.html
|
||||
* etc/defaults/etc/profile: Remove test for invalid user or group
|
||||
accounts and the instructions on how to create passwd and group file
|
||||
contents.
|
||||
4.2-3 (intermediate release)
|
||||
* remove MANPATH from /etc/profile
|
||||
see cygwin.com/ml/cygwin/2014-05/msg00352.html
|
||||
4.2-2 (bugfix release)
|
||||
* LC_ALL is set to "C" during profile.d execution so it can't be
|
||||
used for testing whether or not to set LANG
|
||||
see cygwin.com/ml/cygwin/2014-04/msg00550.html
|
||||
4.2-1
|
||||
* remove permission/ACL settings and corresponding files.
|
||||
see cygwin.com/ml/cygwin-apps/2014-03/msg00011.html
|
||||
4.1-3 (unreleased)
|
||||
* Eliminate Windows PATH from default PATH if CYGWIN_NOWINPATH is
|
||||
set. Record the Windows PATH in ORIGINAL_PATH unless that
|
||||
variable is already set.
|
||||
* Better guard for non-existent /etc/skel.
|
||||
* Improve profile_d function.
|
||||
cygwin.com/ml/cygwin/2012-08/msg00488.html
|
||||
* Add /etc/shells.
|
||||
cygwin.com/ml/cygwin/2014-03/msg00039.html
|
||||
* Use full path for tools and avoid DOS file warning when creating
|
||||
service files.
|
||||
cygwin.com/ml/cygwin/2013-07/msg00114.html
|
||||
4.1-2
|
||||
* Enforce a secure ACL in /home /tmp /usr/tmp /var/log /var/run
|
||||
using new files /etc/profile.d/1777fix.* written by Corinna Vinschen.
|
||||
See cygwin.com/ml/cygwin/2012-03/msg00103.html
|
||||
* Setting CYG_SYS_BASHRC in bash.bashrc has no effect because it is run
|
||||
in a subshell environment. Reported by Christian Franke. See
|
||||
cygwin.com/ml/cygwin/2012-02/msg00832.html
|
||||
4.1-1
|
||||
* Setting a system locale and a per-user locale breaks some configs
|
||||
and doesn't play well with mintty. Changed to a user-defined setting in
|
||||
/etc/profile.d/lang.* Reported by Peter Rosin and Andy Koppe. See
|
||||
cygwin.com/ml/cygwin/2012-02/msg00448.html
|
||||
4.0-9
|
||||
* Bug fix release.
|
||||
In profile.d/* scripts, calls to "locale" and "tzset"
|
||||
must use absolute paths - Harry G. McGavran, Jr.
|
||||
cygwin.com/ml/cygwin/2012-02/msg00352.html
|
||||
4.0-8
|
||||
* Bug fix release.
|
||||
Error in commad substitution in .bash_profile and .profile.
|
||||
Reported by Mike Kaganski and Tom Schutter. See
|
||||
cygwin.com/ml/cygwin/2012-02/msg00332.html
|
||||
cygwin.com/ml/cygwin/2012-02/msg00335.html
|
||||
Hardcoding SHELL from /etc/profile broke some configs. Rolled back.
|
||||
Reported by David Rothenberger. See
|
||||
cygwin.com/ml/cygwin/2012-02/msg00341.html
|
||||
4.0-7
|
||||
* Environment variable SHELL is now exported from /etc/profile.
|
||||
Improved profile_d() function in /etc/profile - Cyrille Lefevre
|
||||
cygwin.com/ml/cygwin/2011-11/msg00128.html
|
||||
* TMP and TEMP as defined in the Windows environment must be kept
|
||||
for windows apps, even if started from cygwin - Atry
|
||||
cygwin.com/ml/cygwin/2012-01/msg00201.html
|
||||
* Added two files under /etc/profile.d/ that use tzset, which
|
||||
uses the geographical location setting of the user to find the right
|
||||
mapping, rather than the locale setting. Only on Windows 2000 which
|
||||
doesn't know about the user's geographical location, or if fetching
|
||||
the geographical location fails, it falls back to the user's locale.
|
||||
Corrected error in var setting - Corinna Vinschen
|
||||
See cygwin.com/ml/cygwin-developers/2012-01/msg00042.html,
|
||||
cygwin.com/ml/cygwin-developers/2012-01/msg00044.html
|
||||
Updated manifest.
|
||||
* Added CC0 license header to scripts, and the CC0 license
|
||||
itself which is under /usr/share/doc/common-licenses/.
|
||||
Modified locale setting in /etc/profile.d/lang.{sh,csh} to
|
||||
honor the OS setting.
|
||||
Corrected some files' header info.
|
||||
Added Greg's Wiki's URL in /etc/profile.
|
||||
Bumped version number.
|
||||
4.0-6
|
||||
* Re-corrected PRINTER setting.
|
||||
* Dropped non-POSIX tests in /etc/profile - Eric Blake
|
||||
cygwin.com/ml/cygwin/2011-03/msg00510.html
|
||||
* Dropped user's homedir ownership test.
|
||||
4.0-5
|
||||
* Added test in /etc/profile PRINTER setting - Corinna Vinschen
|
||||
cygwin.com/ml/cygwin/2011-03/msg00397.html
|
||||
4.0-4
|
||||
* Set TMP and TEMP to /tmp in /etc/profile.
|
||||
* Dropped CVS stuff from /etc/profile - Andy Koppe
|
||||
4.0-3
|
||||
* Never released.
|
||||
* Reordered /etc/profile to properly initialise PS1 - Cyrille Lefevre
|
||||
* Supressed a fork in /etc/profile routine for copying skeletal files and
|
||||
added a test to `cd' command - Cyrille Lefevre
|
||||
* Removed /bin from path, as it is included via /usr/bin.
|
||||
4.0-2
|
||||
* Never released.
|
||||
* A modified version of a case switch to run shell dependent stuff based
|
||||
on ENV variables detection is back in /etc/profile, as proposed in
|
||||
cygwin.com/ml/cygwin/2010-11/msg00464.html - Daniel Colascione
|
||||
* Since SYS_BASHRC and SYS_BASH_LOGOUT will be enabled in bash-4.1
|
||||
.bash_logout (added in 4.0-1) has been deprecated in favour of
|
||||
/etc/bash.bash_logout.
|
||||
cygwin.com/ml/cygwin-apps/2010-12/msg00075.html
|
||||
* Added tests to /etc/profile, /etc/bash.bashrc, .bash_profile, .bashrc
|
||||
and .profile to check if they have been already sourced, as suggested by
|
||||
Andy Koppe in cygwin.com/ml/cygwin-apps/2010-12/msg00071.html
|
||||
* HOSTNAME definition back in /etc/profile.
|
||||
* Dropped .mkshrc. This has to be discussed with mksh mantainer.
|
||||
4.0-1
|
||||
* Never released.
|
||||
* Applied patch in base-files-mketc.sh to solve a problem with creation
|
||||
of symlinks in /etc for case-sensitive-enabled win7 systems.
|
||||
sourceware.org/ml/cygwin/2010-04/txt00011.txt - Shaddy Baddah
|
||||
* New file skel/.bash_logout clear the screen after logout.
|
||||
* New file skel/.profile set HOSTNAME for dash & posh.
|
||||
* New file skel/.mkshrc source /etc/mkshrc.
|
||||
* Updated the manifest.lst to include new files.
|
||||
* Moved the command for setting /tmp perms to
|
||||
postinstall/base-files-mketc.sh.
|
||||
cygwin.com/ml/cygwin/2010-11/msg00464.html - Daniel Colascione
|
||||
* Modified the PRINTER setting in /etc/profile. No case switch
|
||||
now.
|
||||
cygwin.com/ml/cygwin/2010-11/msg00464.html - Daniel Colascione
|
||||
* Added a WARNING in the conditional loop that creates $HOME for
|
||||
already existing homes that don't belong to the user.
|
||||
cygwin.com/ml/cygwin-developers/2010-09/msg00007.html -
|
||||
Corinna Vinschen & Andy Koppe
|
||||
* Added two hooks to source .bash_aliases and .bash_functions, if they
|
||||
exist.
|
||||
* Added an example function to .bashrc (enhanced cd command)
|
||||
* Backtick command substitution notation replaced with $(...)
|
||||
* All variable expansion is written within curly braces.
|
||||
* Case switch to detect which shell is running taken out of /etc/profile.
|
||||
* Bug regarding PS1 unset in interactive shells with a non-interactive
|
||||
ancestor solved. cygwin.com/ml/cygwin/2010-02/msg00503.html -
|
||||
Reported by Jon Turney
|
||||
* Bug regarding mksh a well-defined PS1 solved.
|
||||
sourceware.org/ml/cygwin/2010-05/msg00000.html - Reported by
|
||||
Chris Sutcliffe
|
||||
3.9-3
|
||||
* Removed X11R6 from $PATH - Angelo Graziosi
|
||||
* Fixed escaping \t in HISTIGNORE
|
||||
- Angelo Graziosi, Eric Blake
|
||||
3.9-2
|
||||
* Removed some 1.5 hold overs from /etc/postinstall/base-files-mketc.sh
|
||||
- Corinna Vinschen
|
||||
3.9-1
|
||||
* Set LANG scripts in /etc/profile.d/
|
||||
- Corinna Vinschen, Thomas Wolff, Christopher Faylor
|
||||
* Unset TMP and TEMP in ~/.bashrc
|
||||
- Angelo Graziosi, Robert Pendell, Ken Brown, Corinna Vinschen
|
||||
3.8-4
|
||||
* Fixed permissions - Corinna Vinschen
|
||||
3.8-3
|
||||
* Ensure that the destination directory exists during postinstall
|
||||
- Yitzchak Scott-Thoennes
|
||||
3.8-2
|
||||
* The skeleton files are copied even if the the mkdir has failed.
|
||||
This happens to network users who install Cygwin while connected,
|
||||
with HOME on a network drive, and then later use their laptop while
|
||||
disconnected. In that case the skeleton files are not copied, a
|
||||
warning issued and HOME set to "${TEMP}", "${TMP}", /tmp, or
|
||||
(finally) / - Pierre A. Humblet
|
||||
3.8-1
|
||||
* Update to Cygwin 1.7 version - Herb Maeder
|
||||
* Additional licenses
|
||||
3.7-1
|
||||
* Additional (commented out) settings taken from
|
||||
http://www.ukuug.org/events/linux2003/papers/bash_tips/index.html
|
||||
- Append history rather than overwrite
|
||||
- Append whenever displaying the prompt
|
||||
- 'Magic' Space. Inserts a space character and performs
|
||||
a history expansion in the line
|
||||
- Ignore small typos when cd'ing
|
||||
* Corrected settitle() function in .bashrc - Igor Peshansky
|
||||
* DIR_COLORS moved to the coreutils package - Eric Blake
|
||||
* Follow links in /etc/profile.d - Max Bowsher
|
||||
3.6-1
|
||||
* Typo - Eric Blake
|
||||
* Bash completion examples - Eric Blake
|
||||
3.5-1
|
||||
* Changed setup.hint from ash to bash
|
||||
* Toned down the warning about customisation
|
||||
- Rex Eastbourne Andrew Schulman, Igor Pechtchanski
|
||||
* Changed ${MANPATH}. Changed order and removed autotool
|
||||
- Igor Pechtchanski, Brian Dessent
|
||||
* Changed ${INFOPATH}. Changed order and removed autotool.
|
||||
* Fixed some mistakes in .inputrc and added some more
|
||||
examples - Igor Pechtchanski
|
||||
3.4-2
|
||||
* Redirected chmod errors to /dev/null caused by lack of
|
||||
admin rights - Angelo Graziosi, Igor Pechtchanski, Karl M
|
||||
* Removed the test around chmod 1777 /tmp - Igor Pechtchanski
|
||||
3.4-1
|
||||
* Removed stty erase ^H - lots!
|
||||
* chmod 1777 /tmp - Corinna Vinschen
|
||||
* Properly quote [:upper:] [:lower:] - Webb Roberts
|
||||
* Add local to the sort - Eric Blake
|
||||
* Various quote corrections - Eric Blake
|
||||
* Simplified the bash PS1 - Eric Blake
|
||||
* Made the SHELL switch more portable
|
||||
- Eric Blake, Cliff Hones, cfg, Igor Pechtchanski
|
||||
3.3-1 (Never uploaded)
|
||||
* Add a warning about editing base-files files
|
||||
* Add a note about where the originals are to be found
|
||||
* Add some more examples to skel/.bashrc - Chris Wilson
|
||||
3.2-1
|
||||
* Quote all ${variable}s. Except, ${PATH}, ${MANPATH} and ${INFOPATH}
|
||||
3.1-3
|
||||
* Change cd ${HOME} functionality for CHERE - Dave Kilroy
|
||||
3.1-2
|
||||
* Fix for zsh/ksh - Tero Niemela
|
||||
3.1-1
|
||||
* Never released - fixed spelling errors
|
||||
3.0-3
|
||||
* Fix not required for cp - Pierre A. Humblet
|
||||
3.0-2
|
||||
* Fix for security interactions when using cp - Thanks to
|
||||
Pierre A. Humblet
|
||||
3.0-1
|
||||
* Added several open source license files. These were sourced
|
||||
from http://www.opensource.org/licenses/
|
||||
Packages may contain minor variations on these files.
|
||||
* Added a preremove script to help keep the various scripts
|
||||
uptodate (unless they've been modified).
|
||||
* At Igor Pechtchanski's suggestion, all base-file scripts
|
||||
are now versioned.
|
||||
* Several patches, thanks to all. Now I'm keeping this
|
||||
changelog I'll be sure to add names! Appologies to all who
|
||||
helped with this version.
|
||||
|
||||
******************************************************
|
||||
* *
|
||||
* NOTE: if you want the automatic update script to *
|
||||
* keep files up to date, you *must* delete the *
|
||||
* following files and then reinstall the *
|
||||
* base-files package; *
|
||||
* /etc/bash.bashrc *
|
||||
* /etc/DIR_COLORS *
|
||||
* /etc/profile *
|
||||
* /etc/skel/.bashrc *
|
||||
* /etc/skel/.bash_profile *
|
||||
* /etc/skel/.inputrc *
|
||||
* *
|
||||
******************************************************
|
||||
|
||||
Prior to 3.0-1
|
||||
* Thanks to everyone who helped!
|
||||
6
OGP64/usr/share/doc/base-files/README
Normal file
6
OGP64/usr/share/doc/base-files/README
Normal file
|
|
@ -0,0 +1,6 @@
|
|||
Cygwin base system miscellaneous files
|
||||
--------------------------------------
|
||||
|
||||
This package contains some of the basic file of a Cygwin system,
|
||||
primarily /etc/profile.
|
||||
|
||||
466
OGP64/usr/share/doc/bash/AUTHORS
Normal file
466
OGP64/usr/share/doc/bash/AUTHORS
Normal file
|
|
@ -0,0 +1,466 @@
|
|||
#
|
||||
# Master author manifest for bash
|
||||
#
|
||||
# The files in lib/intl were taken from the GNU gettext distribution.
|
||||
#
|
||||
# Any files appearing in the bash distribution not listed in this file
|
||||
# were created by Chet Ramey.
|
||||
#
|
||||
# Filename authors (first is original author)
|
||||
#
|
||||
README Brian Fox, Chet Ramey
|
||||
INSTALL Brian Fox, Chet Ramey
|
||||
COPYING Brian Fox, Chet Ramey
|
||||
MANIFEST Brian Fox, Chet Ramey
|
||||
configure Chet Ramey
|
||||
Makefile.in Brian Fox, Chet Ramey
|
||||
configure.in Chet Ramey
|
||||
aclocal.m4 Chet Ramey
|
||||
config.h.top Chet Ramey
|
||||
config.h.bot Chet Ramey
|
||||
config.h.in Chet Ramey
|
||||
array.c Chet Ramey
|
||||
print_cmd.c Brian Fox, Chet Ramey
|
||||
general.c Brian Fox, Chet Ramey
|
||||
variables.c Brian Fox, Chet Ramey
|
||||
make_cmd.c Brian Fox, Chet Ramey
|
||||
copy_cmd.c Brian Fox, Chet Ramey
|
||||
unwind_prot.c Brian Fox, Chet Ramey
|
||||
dispose_cmd.c Brian Fox, Chet Ramey
|
||||
getcwd.c Roland McGrath, Brian Fox, Chet Ramey
|
||||
bashhist.c Chet Ramey
|
||||
hash.c Brian Fox, Chet Ramey
|
||||
parse.y Brian Fox, Chet Ramey
|
||||
subst.c Brian Fox, Chet Ramey
|
||||
shell.c Brian Fox, Chet Ramey
|
||||
sig.c Chet Ramey
|
||||
trap.c Brian Fox, Chet Ramey
|
||||
siglist.c Brian Fox, Chet Ramey
|
||||
version.c Brian Fox, Chet Ramey
|
||||
flags.c Brian Fox, Chet Ramey
|
||||
jobs.c Brian Fox, Chet Ramey
|
||||
input.c Chet Ramey
|
||||
mailcheck.c Brian Fox, Chet Ramey
|
||||
pathexp.c Chet Ramey
|
||||
test.c Brian Fox, Chet Ramey
|
||||
expr.c Chet Ramey, Brian Fox
|
||||
alias.c Brian Fox, Chet Ramey
|
||||
execute_cmd.c Brian Fox, Chet Ramey
|
||||
bashline.c Brian Fox, Chet Ramey
|
||||
braces.c Brian Fox, Chet Ramey
|
||||
bracecomp.c Brian Fox, Chet Ramey, Tom Tromey
|
||||
nojobs.c Brian Fox, Chet Ramey
|
||||
vprint.c Chet Ramey
|
||||
oslib.c Chet Ramey
|
||||
error.c Brian Fox, Chet Ramey
|
||||
xmalloc.c Brian Fox, Chet Ramey
|
||||
alias.h Brian Fox, Chet Ramey
|
||||
array.h Chet Ramey
|
||||
builtins.h Brian Fox, Chet Ramey
|
||||
parser.h Brian Fox, Chet Ramey
|
||||
variables.h Brian Fox, Chet Ramey
|
||||
machines.h Brian Fox, Chet Ramey
|
||||
jobs.h Brian Fox, Chet Ramey
|
||||
maxpath.h Brian Fox, Chet Ramey
|
||||
pathexp.h Chet Ramey
|
||||
mailcheck.h Chet Ramey
|
||||
filecntl.h Brian Fox, Chet Ramey
|
||||
hash.h Brian Fox, Chet Ramey
|
||||
quit.h Brian Fox, Chet Ramey
|
||||
flags.h Brian Fox, Chet Ramey
|
||||
shell.h Brian Fox, Chet Ramey
|
||||
bashjmp.h Chet Ramey
|
||||
sig.h Chet Ramey
|
||||
trap.h Brian Fox, Chet Ramey
|
||||
general.h Brian Fox, Chet Ramey
|
||||
unwind_prot.h Brian Fox, Chet Ramey
|
||||
input.h Brian Fox, Chet Ramey
|
||||
error.h Brian Fox, Chet Ramey
|
||||
command.h Brian Fox, Chet Ramey
|
||||
externs.h Chet Ramey
|
||||
siglist.h Chet Ramey
|
||||
subst.h Brian Fox, Chet Ramey
|
||||
dispose_cmd.h Brian Fox, Chet Ramey
|
||||
bashansi.h Brian Fox, Chet Ramey
|
||||
make_cmd.h Brian Fox, Chet Ramey
|
||||
bashhist.h Chet Ramey
|
||||
bashline.h Chet Ramey
|
||||
execute_cmd.h Chet Ramey
|
||||
bashtypes.h Chet Ramey
|
||||
bashtty.h Chet Ramey
|
||||
pathnames.h Chet Ramey
|
||||
y.tab.c Brian Fox, Chet Ramey
|
||||
y.tab.h Brian Fox, Chet Ramey
|
||||
parser-built Brian Fox, Chet Ramey
|
||||
posixstat.h Brian Fox, Chet Ramey
|
||||
stdc.h Chet Ramey
|
||||
ansi_stdlib.h Brian Fox, Chet Ramey
|
||||
memalloc.h Chet Ramey
|
||||
builtins/ChangeLog Brian Fox, Chet Ramey
|
||||
builtins/Makefile.in Brian Fox, Chet Ramey
|
||||
builtins/alias.def Brian Fox, Chet Ramey
|
||||
builtins/bind.def Brian Fox, Chet Ramey
|
||||
builtins/break.def Brian Fox, Chet Ramey
|
||||
builtins/builtin.def Brian Fox, Chet Ramey
|
||||
builtins/caller.def Rocky Bernstein, Chet Ramey
|
||||
builtins/cd.def Brian Fox, Chet Ramey
|
||||
builtins/colon.def Brian Fox, Chet Ramey
|
||||
builtins/command.def Brian Fox, Chet Ramey
|
||||
builtins/common.c Brian Fox, Chet Ramey
|
||||
builtins/declare.def Brian Fox, Chet Ramey
|
||||
builtins/echo.def Brian Fox, Chet Ramey
|
||||
builtins/enable.def Brian Fox, Chet Ramey
|
||||
builtins/eval.def Brian Fox, Chet Ramey
|
||||
builtins/exec.def Brian Fox, Chet Ramey
|
||||
builtins/exit.def Brian Fox, Chet Ramey
|
||||
builtins/fc.def Brian Fox, Chet Ramey
|
||||
builtins/fg_bg.def Brian Fox, Chet Ramey
|
||||
builtins/getopt.c Roland McGrath, Brian Fox, Chet Ramey
|
||||
builtins/getopt.h Roland McGrath, Brian Fox, Chet Ramey
|
||||
builtins/getopts.def Brian Fox, Chet Ramey
|
||||
builtins/hash.def Brian Fox, Chet Ramey
|
||||
builtins/hashcom.h Brian Fox, Chet Ramey
|
||||
builtins/help.def Brian Fox, Chet Ramey
|
||||
builtins/let.def Chet Ramey, Brian Fox
|
||||
builtins/history.def Brian Fox, Chet Ramey
|
||||
builtins/jobs.def Brian Fox, Chet Ramey
|
||||
builtins/kill.def Brian Fox, Chet Ramey
|
||||
builtins/mapfile.def Rocky Bernstein
|
||||
builtins/mkbuiltins.c Brian Fox, Chet Ramey
|
||||
builtins/pushd.def Brian Fox, Chet Ramey
|
||||
builtins/read.def Brian Fox, Chet Ramey
|
||||
builtins/reserved.def Brian Fox, Chet Ramey
|
||||
builtins/return.def Brian Fox, Chet Ramey
|
||||
builtins/set.def Brian Fox, Chet Ramey
|
||||
builtins/setattr.def Brian Fox, Chet Ramey
|
||||
builtins/shift.def Brian Fox, Chet Ramey
|
||||
builtins/shopt.def Chet Ramey
|
||||
builtins/source.def Brian Fox, Chet Ramey
|
||||
builtins/suspend.def Brian Fox, Chet Ramey
|
||||
builtins/test.def Brian Fox, Chet Ramey
|
||||
builtins/times.def Brian Fox, Chet Ramey
|
||||
builtins/trap.def Brian Fox, Chet Ramey
|
||||
builtins/type.def Brian Fox, Chet Ramey
|
||||
builtins/ulimit.def Chet Ramey, Brian Fox
|
||||
builtins/umask.def Brian Fox, Chet Ramey
|
||||
builtins/wait.def Brian Fox, Chet Ramey
|
||||
builtins/psize.c Chet Ramey, Brian Fox
|
||||
builtins/psize.sh Chet Ramey, Brian Fox
|
||||
builtins/inlib.def Chet Ramey
|
||||
builtins/bashgetopt.c Chet Ramey
|
||||
builtins/common.h Chet Ramey
|
||||
builtins/bashgetopt.h Chet Ramey
|
||||
lib/doc-support/texindex.c bug-texinfo@prep.ai.mit.edu, Chet Ramey
|
||||
lib/doc-support/Makefile.in Chet Ramey
|
||||
lib/doc-support/getopt.h Roland McGrath
|
||||
lib/doc-support/getopt.c Roland McGrath
|
||||
lib/doc-support/getopt1.c Roland McGrath
|
||||
lib/glob/ChangeLog Brian Fox, Chet Ramey
|
||||
lib/glob/Makefile.in Brian Fox, Chet Ramey
|
||||
lib/glob/strmatch.c Roland McGrath, Brian Fox, Chet Ramey
|
||||
lib/glob/strmatch.h Roland McGrath, Brian Fox, Chet Ramey
|
||||
lib/glob/glob.c Richard Stallman, Roland McGrath, Brian Fox, Chet Ramey
|
||||
lib/glob/glob.h Chet Ramey
|
||||
lib/glob/ndir.h Doug Gwyn, Richard Stallman
|
||||
lib/glob/doc/Makefile.in Brian Fox, Chet Ramey
|
||||
lib/glob/doc/glob.texi Brian Fox, Chet Ramey
|
||||
lib/malloc/Makefile.in Chet Ramey
|
||||
lib/malloc/alloca.c Doug Gwyn, Richard Stallman, Brian Fox, Chet Ramey
|
||||
lib/malloc/getpagesize.h Brian Fox, Chet Ramey
|
||||
lib/malloc/malloc.c Chris Kingsley, Mike Muuss, Richard Stallman, Brian Fox, Chet Ramey
|
||||
lib/malloc/gmalloc.c Mike Haertel, Roland McGrath
|
||||
lib/malloc/stub.c Chet Ramey
|
||||
lib/malloc/i386-alloca.s Richard Stallman
|
||||
lib/malloc/x386-alloca.s Chip Salzenberg, Richard Stallman
|
||||
lib/malloc/xmalloc.c Brian Fox, Chet Ramey
|
||||
lib/posixheaders/posixstat.h Brian Fox, Chet Ramey
|
||||
lib/posixheaders/ansi_stdlib.h Brian Fox, Chet Ramey
|
||||
lib/posixheaders/stdc.h Chet Ramey
|
||||
lib/posixheaders/memalloc.h Chet Ramey
|
||||
lib/posixheaders/filecntl.h Brian Fox, Chet Ramey
|
||||
lib/readline/Makefile.in Brian Fox, Chet Ramey
|
||||
lib/readline/COPYING Brian Fox, Chet Ramey
|
||||
lib/readline/ChangeLog Brian Fox, Chet Ramey
|
||||
lib/readline/readline.c Brian Fox, Chet Ramey
|
||||
lib/readline/vi_mode.c Brian Fox, Chet Ramey
|
||||
lib/readline/emacs_keymap.c Brian Fox, Chet Ramey
|
||||
lib/readline/vi_keymap.c Brian Fox, Chet Ramey
|
||||
lib/readline/funmap.c Brian Fox, Chet Ramey
|
||||
lib/readline/keymaps.c Brian Fox, Chet Ramey
|
||||
lib/readline/xmalloc.c Brian Fox, Chet Ramey
|
||||
lib/readline/search.c Brian Fox, Chet Ramey
|
||||
lib/readline/isearch.c Brian Fox, Chet Ramey
|
||||
lib/readline/parens.c Brian Fox, Chet Ramey
|
||||
lib/readline/rltty.c Brian Fox, Chet Ramey
|
||||
lib/readline/complete.c Brian Fox, Chet Ramey
|
||||
lib/readline/bind.c Brian Fox, Chet Ramey
|
||||
lib/readline/display.c Brian Fox, Chet Ramey
|
||||
lib/readline/signals.c Brian Fox, Chet Ramey
|
||||
lib/readline/kill.c Brian Fox, Chet Ramey
|
||||
lib/readline/undo.c Brian Fox, Chet Ramey
|
||||
lib/readline/input.c Brian Fox, Chet Ramey
|
||||
lib/readline/macro.c Brian Fox, Chet Ramey
|
||||
lib/readline/util.c Brian Fox, Chet Ramey
|
||||
lib/readline/callback.c Chet Ramey
|
||||
lib/readline/readline.h Brian Fox, Chet Ramey
|
||||
lib/readline/chardefs.h Brian Fox, Chet Ramey
|
||||
lib/readline/keymaps.h Brian Fox, Chet Ramey
|
||||
lib/readline/rldefs.h Brian Fox, Chet Ramey
|
||||
lib/readline/posixstat.h Brian Fox, Chet Ramey
|
||||
lib/readline/ansi_stdlib.h Brian Fox, Chet Ramey
|
||||
lib/readline/memalloc.h Chet Ramey
|
||||
lib/readline/rlconf.h Chet Ramey
|
||||
lib/readline/rltty.h Chet Ramey
|
||||
lib/readline/history.c Brian Fox, Chet Ramey
|
||||
lib/readline/histexpand.c Brian Fox, Chet Ramey
|
||||
lib/readline/histfile.c Brian Fox, Chet Ramey
|
||||
lib/readline/histsearch.c Brian Fox, Chet Ramey
|
||||
lib/readline/history.h Brian Fox, Chet Ramey
|
||||
lib/readline/histlib.h Brian Fox, Chet Ramey
|
||||
lib/readline/tilde.c Brian Fox, Chet Ramey
|
||||
lib/readline/tilde.h Brian Fox, Chet Ramey
|
||||
lib/readline/doc/texindex.c bug-texinfo@prep.ai.mit.edu, Chet Ramey
|
||||
lib/readline/doc/Makefile Brian Fox, Chet Ramey
|
||||
lib/readline/doc/rlman.texinfo Brian Fox, Chet Ramey
|
||||
lib/readline/doc/rltech.texinfo Brian Fox, Chet Ramey
|
||||
lib/readline/doc/rluser.texinfo Brian Fox, Chet Ramey
|
||||
lib/readline/doc/hist.texinfo Brian Fox, Chet Ramey
|
||||
lib/readline/doc/hstech.texinfo Brian Fox, Chet Ramey
|
||||
lib/readline/doc/hsuser.texinfo Brian Fox, Chet Ramey
|
||||
lib/readline/examples/Makefile Brian Fox
|
||||
lib/readline/examples/fileman.c Brian Fox
|
||||
lib/readline/examples/manexamp.c Brian Fox
|
||||
lib/readline/examples/histexamp.c Brian Fox, Chet Ramey
|
||||
lib/readline/examples/rltest.c Brian Fox, Chet Ramey
|
||||
lib/readline/examples/Inputrc Brian Fox, Chet Ramey
|
||||
lib/termcap/Makefile.in David MacKenzie, Chet Ramey
|
||||
lib/termcap/termcap.c David MacKenzie
|
||||
lib/termcap/termcap.h David MacKenzie
|
||||
lib/termcap/tparam.c David MacKenzie
|
||||
lib/termcap/version.c David MacKenzie
|
||||
lib/termcap/grot/termcap.info David MacKenzie
|
||||
lib/termcap/grot/termcap.info-1 David MacKenzie
|
||||
lib/termcap/grot/termcap.info-2 David MacKenzie
|
||||
lib/termcap/grot/termcap.info-3 David MacKenzie
|
||||
lib/termcap/grot/termcap.info-4 David MacKenzie
|
||||
lib/termcap/grot/NEWS David MacKenzie
|
||||
lib/termcap/grot/INSTALL David MacKenzie
|
||||
lib/termcap/grot/ChangeLog David MacKenzie
|
||||
lib/termcap/grot/texinfo.tex David MacKenzie
|
||||
lib/termcap/grot/termcap.texi David MacKenzie
|
||||
lib/termcap/grot/Makefile.in David MacKenzie
|
||||
lib/termcap/grot/configure David MacKenzie
|
||||
lib/termcap/grot/configure.in David MacKenzie
|
||||
lib/termcap/grot/COPYING David MacKenzie
|
||||
lib/termcap/grot/README David MacKenzie
|
||||
lib/tilde/ChangeLog Brian Fox, Chet Ramey
|
||||
lib/tilde/Makefile.in Brian Fox, Chet Ramey
|
||||
lib/tilde/doc/tilde.texi Brian Fox, Chet Ramey
|
||||
lib/tilde/doc/Makefile Brian Fox, Chet Ramey
|
||||
lib/tilde/tilde.c Brian Fox, Chet Ramey
|
||||
lib/tilde/tilde.h Brian Fox, Chet Ramey
|
||||
lib/tilde/memalloc.h Brian Fox, Chet Ramey
|
||||
CWRU/misc/open-files.c Chet Ramey
|
||||
CWRU/misc/sigs.c Chet Ramey
|
||||
CWRU/misc/pid.c Chet Ramey
|
||||
CWRU/misc/sigstat.c Chet Ramey
|
||||
CWRU/misc/bison Chet Ramey
|
||||
CWRU/misc/aux-machine-desc Chet Ramey
|
||||
CWRU/PLATFORMS Chet Ramey
|
||||
CWRU/README Chet Ramey
|
||||
CWRU/CWRU.CHANGES.051093 Chet Ramey
|
||||
CWRU/POSIX.NOTES Chet Ramey
|
||||
CWRU/CWRU.CHANGES.071193 Chet Ramey
|
||||
CWRU/CWRU.CHANGES.090393 Chet Ramey
|
||||
doc/Makefile.in Brian Fox, Chet Ramey
|
||||
doc/bash.1 Chet Ramey
|
||||
doc/builtins.1 Chet Ramey
|
||||
doc/bash.ps Chet Ramey
|
||||
doc/bash.txt Chet Ramey
|
||||
doc/readline.3 Chet Ramey
|
||||
doc/readline.ps Chet Ramey
|
||||
doc/readline.txt Chet Ramey
|
||||
doc/texinfo.tex Richard Stallman
|
||||
doc/features.texi Brian Fox, Chet Ramey
|
||||
doc/features.ps Brian Fox, Chet Ramey
|
||||
doc/features.info Brian Fox, Chet Ramey
|
||||
doc/features.dvi Brian Fox, Chet Ramey
|
||||
doc/bash_builtins.1 Chet Ramey
|
||||
doc/bash_builtins.ps Chet Ramey
|
||||
doc/bash_builtins.txt Chet Ramey
|
||||
doc/bash_builtins.readme Chet Ramey
|
||||
doc/article.ms Chet Ramey
|
||||
doc/FAQ Chet Ramey
|
||||
support/cat-s Brian Fox, Chet Ramey
|
||||
support/mksysdefs Brian Fox, Chet Ramey
|
||||
support/mkversion.c Brian Fox, Chet Ramey
|
||||
support/mksignames.c Brian Fox, Chet Ramey
|
||||
support/getcppsyms.c Brian Fox, Chet Ramey
|
||||
support/cppmagic Brian Fox, Chet Ramey
|
||||
support/pagesize.sh Chet Ramey, Brian Fox
|
||||
support/pagesize.c Chet Ramey, Brian Fox
|
||||
support/bash.xbm Brian Fox
|
||||
support/FAQ Brian Fox
|
||||
support/PORTING Brian Fox
|
||||
support/mklinks Brian Fox
|
||||
support/fixlinks Chet Ramey
|
||||
support/mkdirs Chet Ramey
|
||||
support/clone-bash Chet Ramey
|
||||
support/bashbug.sh Chet Ramey
|
||||
support/mkmachtype Chet Ramey
|
||||
support/recho.c Chet Ramey
|
||||
support/config.guess Per Bothner, Chet Ramey
|
||||
support/config.sub Richard Stallman, Chet Ramey
|
||||
support/install.sh MIT X Consortium (X11R5)
|
||||
support/endian.c Chet Ramey
|
||||
support/printenv Chet Ramey
|
||||
examples/precedence-tester Brian Fox, Chet Ramey
|
||||
examples/functions/substr Brian Fox, Chet Ramey
|
||||
examples/functions/kshenv Chet Ramey
|
||||
examples/functions/autoload Chet Ramey
|
||||
examples/functions/csh-compat Brian Fox, Chet Ramey
|
||||
examples/functions/shcat Chet Ramey
|
||||
examples/functions/substr2 Chet Ramey
|
||||
examples/functions/term Chet Ramey
|
||||
examples/functions/whatis Chet Ramey
|
||||
examples/functions/whence Chet Ramey
|
||||
examples/functions/func Chet Ramey
|
||||
examples/functions/dirname Brian Fox, Noah Friedman
|
||||
examples/functions/basename Brian Fox, Noah Friedman
|
||||
examples/functions/exitstat Noah Friedman, Roland McGrath
|
||||
examples/functions/external Noah Friedman
|
||||
examples/functions/fact Brian Fox
|
||||
examples/functions/manpage Tom Tromey
|
||||
examples/functions/fstty Chet Ramey
|
||||
examples/functions/jj.bash Chet Ramey
|
||||
examples/functions/notify.bash Chet Ramey
|
||||
examples/loadables/getconf.c J.T. Conklin
|
||||
examples/scripts/shprompt Chet Ramey
|
||||
examples/scripts/adventure.sh Chet Ramey, Doug Gwyn
|
||||
examples/scripts/bcsh.sh Chris Robertson, Chet Ramey
|
||||
examples/startup-files/Bashrc Brian Fox
|
||||
examples/startup-files/Bash_aliases Brian Fox
|
||||
examples/startup-files/Bash_profile Brian Fox
|
||||
examples/startup-files/bash-profile Brian Fox
|
||||
examples/startup-files/bashrc Chet Ramey
|
||||
examples/suncmd.termcap Brian Fox, Chet Ramey
|
||||
examples/alias-conv.sh Brian Fox, Chet Ramey
|
||||
tests/README Chet Ramey
|
||||
tests/arith.tests Chet Ramey
|
||||
tests/arith.right Chet Ramey
|
||||
tests/array.tests Chet Ramey
|
||||
tests/array.right Chet Ramey
|
||||
tests/dollar-at.sh Chet Ramey
|
||||
tests/dollar-star.sh Chet Ramey
|
||||
tests/dollar.right Chet Ramey
|
||||
tests/exp-tests Chet Ramey
|
||||
tests/exp.right Chet Ramey
|
||||
tests/glob-test Chet Ramey
|
||||
tests/glob.right Chet Ramey
|
||||
tests/ifs-test-1.sh Chet Ramey
|
||||
tests/ifs-test-2.sh Chet Ramey
|
||||
tests/ifs-test-3.sh Chet Ramey
|
||||
tests/ifs.1.right Chet Ramey
|
||||
tests/ifs.2.right Chet Ramey
|
||||
tests/ifs.3.right Chet Ramey
|
||||
tests/input-line.sh Chet Ramey
|
||||
tests/input-line.sub Chet Ramey
|
||||
tests/input.right Chet Ramey
|
||||
tests/minus-e Chet Ramey
|
||||
tests/minus-e.right Chet Ramey
|
||||
tests/new-exp.tests Chet Ramey
|
||||
tests/new-exp.right Chet Ramey
|
||||
tests/prec.right Chet Ramey
|
||||
tests/precedence Chet Ramey
|
||||
tests/run-all Chet Ramey
|
||||
tests/run-dollars Chet Ramey
|
||||
tests/run-exp-tests Chet Ramey
|
||||
tests/run-glob-test Chet Ramey
|
||||
tests/run-ifs-tests Chet Ramey
|
||||
tests/run-input-test Chet Ramey
|
||||
tests/run-minus-e Chet Ramey
|
||||
tests/run-new-exp Chet Ramey
|
||||
tests/run-precedence Chet Ramey
|
||||
tests/run-set-e-test Chet Ramey
|
||||
tests/run-strip Chet Ramey
|
||||
tests/run-varenv Chet Ramey
|
||||
tests/set-e-test Chet Ramey
|
||||
tests/set-e.right Chet Ramey
|
||||
tests/strip.tests Chet Ramey
|
||||
tests/strip.right Chet Ramey
|
||||
tests/tilde-tests Chet Ramey
|
||||
tests/tilde.right Chet Ramey
|
||||
tests/unicode1.sub Chet Ramey, John Kearney
|
||||
tests/varenv.right Chet Ramey
|
||||
tests/varenv.sh Chet Ramey
|
||||
tests/misc/chld-trap.sh Chet Ramey
|
||||
tests/misc/dot-test-1.sh Chet Ramey
|
||||
tests/misc/dot-test-1.sub Chet Ramey
|
||||
tests/misc/gotest Chet Ramey
|
||||
tests/misc/perf-script Chet Ramey
|
||||
tests/misc/redir.t1.sh Chet Ramey
|
||||
tests/misc/redir.t2.sh Chet Ramey
|
||||
tests/misc/redir.t3.sh Chet Ramey
|
||||
tests/misc/redir.t3.sub Chet Ramey
|
||||
tests/misc/redir.t4.sh Chet Ramey
|
||||
tests/misc/run.r1.sh Chet Ramey
|
||||
tests/misc/run.r2.sh Chet Ramey
|
||||
tests/misc/run.r3.sh Chet Ramey
|
||||
tests/misc/sigint.t1.sh Chet Ramey
|
||||
tests/misc/sigint.t2.sh Chet Ramey
|
||||
tests/misc/sigint.t3.sh Chet Ramey
|
||||
tests/misc/sigint.t4.sh Chet Ramey
|
||||
tests/misc/test-minus-e.1 Chet Ramey
|
||||
tests/misc/test-minus-e.2 Chet Ramey
|
||||
lib/sh/Makefile.in Chet Ramey
|
||||
lib/sh/clktck.c Chet Ramey
|
||||
lib/sh/clock.c Chet Ramey
|
||||
lib/sh/fmtullong.c Chet Ramey
|
||||
lib/sh/fmtulong.c Chet Ramey
|
||||
lib/sh/getcwd.c Chet Ramey, Roland McGrath
|
||||
lib/sh/getenv.c Chet Ramey, Brian Fox
|
||||
lib/sh/inet_aton.c Chet Ramey, Ulrich Drepper, Paul Vixie
|
||||
lib/sh/itos.c Chet Ramey
|
||||
lib/sh/mailstat.c Chet Ramey
|
||||
lib/sh/makepath.c Chet Ramey
|
||||
lib/sh/mktime.c Chet Ramey, Paul Eggert
|
||||
lib/sh/netconn.c Chet Ramey
|
||||
lib/sh/netopen.c Chet Ramey
|
||||
lib/sh/oslib.c Chet Ramey, Brian Fox
|
||||
lib/sh/pathcanon.c Chet Ramey
|
||||
lib/sh/pathphys.c Chet Ramey
|
||||
lib/sh/rename.c Chet Ramey
|
||||
lib/sh/setlinebuf.c Chet Ramey, Brian Fox
|
||||
lib/sh/shquote.c Chet Ramey
|
||||
lib/sh/shtty.c Chet Ramey
|
||||
lib/sh/snprintf.c Chet Ramey, Unknown
|
||||
lib/sh/spell.c Chet Ramey
|
||||
lib/sh/strcasecmp.c Chet Ramey, Brian Fox
|
||||
lib/sh/strerror.c Chet Ramey, Brian Fox
|
||||
lib/sh/strftime.c Arnold Robbins
|
||||
lib/sh/strindex.c Chet Ramey
|
||||
lib/sh/stringlist.c Chet Ramey
|
||||
lib/sh/stringvec.c Chet Ramey
|
||||
lib/sh/strpbrk.c Roland McGrath
|
||||
lib/sh/strtod.c Chet Ramey, Roland McGrath
|
||||
lib/sh/strtoimax.c Chet Ramey, Paul Eggert
|
||||
lib/sh/strtol.c Chet Ramey, Paul Eggert
|
||||
lib/sh/strtoll.c Chet Ramey, Paul Eggert
|
||||
lib/sh/strtoul.c Chet Ramey, Paul Eggert
|
||||
lib/sh/strtoull.c Chet Ramey, Paul Eggert
|
||||
lib/sh/strtoumax.c Chet Ramey, Paul Eggert
|
||||
lib/sh/strtrans.c Chet Ramey
|
||||
lib/sh/times.c Chet Ramey, Brian Fox
|
||||
lib/sh/timeval.c Chet Ramey
|
||||
lib/sh/tmpfile.c Chet Ramey
|
||||
lib/sh/vprint.c Chet Ramey, Brian Fox
|
||||
lib/sh/xstrchr.c Chet Ramey, Mitsuru Chinen
|
||||
lib/sh/zread.c Chet Ramey
|
||||
lib/sh/zwrite.c Chet Ramey
|
||||
|
||||
tests/posix-ifs.sh Glenn Fowler
|
||||
|
||||
support/checkbashisms Julian Gilbey, Debian Linux team
|
||||
|
||||
lib/readline/colors.c Richard Stallman, David MacKenzie
|
||||
lib/readline/parse-colors.c Richard Stallman, David MacKenzie
|
||||
10858
OGP64/usr/share/doc/bash/CHANGES
Normal file
10858
OGP64/usr/share/doc/bash/CHANGES
Normal file
File diff suppressed because it is too large
Load diff
596
OGP64/usr/share/doc/bash/COMPAT
Normal file
596
OGP64/usr/share/doc/bash/COMPAT
Normal file
|
|
@ -0,0 +1,596 @@
|
|||
Compatibility with previous versions
|
||||
====================================
|
||||
|
||||
This document details the incompatibilities between this version of bash,
|
||||
bash-5.2, and the previous widely-available versions, bash-3.2 (which is
|
||||
still the `standard' version for Mac OS X), 4.2/4.3 (which are still
|
||||
standard on a few Linux distributions), and bash-4.4/bash-5.0/bash-5.1,
|
||||
the current widely-available versions. These were discovered by users of
|
||||
bash-2.x through 5.x, so this list is not comprehensive. Some of these
|
||||
incompatibilities occur between the current version and versions 2.0 and
|
||||
above.
|
||||
|
||||
1. Bash uses a new quoting syntax, $"...", to do locale-specific
|
||||
string translation. Users who have relied on the (undocumented)
|
||||
behavior of bash-1.14 will have to change their scripts. For
|
||||
instance, if you are doing something like this to get the value of
|
||||
a variable whose name is the value of a second variable:
|
||||
|
||||
eval var2=$"$var1"
|
||||
|
||||
you will have to change to a different syntax.
|
||||
|
||||
This capability is directly supported by bash-2.0:
|
||||
|
||||
var2=${!var1}
|
||||
|
||||
This alternate syntax will work portably between bash-1.14 and bash-2.0:
|
||||
|
||||
eval var2=\$${var1}
|
||||
|
||||
2. One of the bugs fixed in the YACC grammar tightens up the rules
|
||||
concerning group commands ( {...} ). The `list' that composes the
|
||||
body of the group command must be terminated by a newline or
|
||||
semicolon. That's because the braces are reserved words, and are
|
||||
recognized as such only when a reserved word is legal. This means
|
||||
that while bash-1.14 accepted shell function definitions like this:
|
||||
|
||||
foo() { : }
|
||||
|
||||
bash-2.0 requires this:
|
||||
|
||||
foo() { :; }
|
||||
|
||||
This is also an issue for commands like this:
|
||||
|
||||
mkdir dir || { echo 'could not mkdir' ; exit 1; }
|
||||
|
||||
The syntax required by bash-2.0 is also accepted by bash-1.14.
|
||||
|
||||
3. The options to `bind' have changed to make them more consistent with
|
||||
the rest of the bash builtins. If you are using `bind -d' to list
|
||||
the readline key bindings in a form that can be re-read, use `bind -p'
|
||||
instead. If you were using `bind -v' to list the key bindings, use
|
||||
`bind -P' instead.
|
||||
|
||||
4. The `long' invocation options must now be prefixed by `--' instead
|
||||
of `-'. (The old form is still accepted, for the time being.)
|
||||
|
||||
5. There was a bug in the version of readline distributed with bash-1.14
|
||||
that caused it to write badly-formatted key bindings when using
|
||||
`bind -d'. The only key sequences that were affected are C-\ (which
|
||||
should appear as \C-\\ in a key binding) and C-" (which should appear
|
||||
as \C-\"). If these key sequences appear in your inputrc, as, for
|
||||
example,
|
||||
|
||||
"\C-\": self-insert
|
||||
|
||||
they will need to be changed to something like the following:
|
||||
|
||||
"\C-\\": self-insert
|
||||
|
||||
6. A number of people complained about having to use ESC to terminate an
|
||||
incremental search, and asked for an alternate mechanism. Bash-2.03
|
||||
uses the value of the settable readline variable `isearch-terminators'
|
||||
to decide which characters should terminate an incremental search. If
|
||||
that variable has not been set, ESC and Control-J will terminate a
|
||||
search.
|
||||
|
||||
7. Some variables have been removed: MAIL_WARNING, notify, history_control,
|
||||
command_oriented_history, glob_dot_filenames, allow_null_glob_expansion,
|
||||
nolinks, hostname_completion_file, noclobber, no_exit_on_failed_exec, and
|
||||
cdable_vars. Most of them are now implemented with the new `shopt'
|
||||
builtin; others were already implemented by `set'. Here is a list of
|
||||
correspondences:
|
||||
|
||||
MAIL_WARNING shopt mailwarn
|
||||
notify set -o notify
|
||||
history_control HISTCONTROL
|
||||
command_oriented_history shopt cmdhist
|
||||
glob_dot_filenames shopt dotglob
|
||||
allow_null_glob_expansion shopt nullglob
|
||||
nolinks set -o physical
|
||||
hostname_completion_file HOSTFILE
|
||||
noclobber set -o noclobber
|
||||
no_exit_on_failed_exec shopt execfail
|
||||
cdable_vars shopt cdable_vars
|
||||
|
||||
8. `ulimit' now sets both hard and soft limits and reports the soft limit
|
||||
by default (when neither -H nor -S is specified). This is compatible
|
||||
with versions of sh and ksh that implement `ulimit'. The bash-1.14
|
||||
behavior of, for example,
|
||||
|
||||
ulimit -c 0
|
||||
|
||||
can be obtained with
|
||||
|
||||
ulimit -S -c 0
|
||||
|
||||
It may be useful to define an alias:
|
||||
|
||||
alias ulimit="ulimit -S"
|
||||
|
||||
9. Bash-2.01 uses a new quoting syntax, $'...' to do ANSI-C string
|
||||
translation. Backslash-escaped characters in ... are expanded and
|
||||
replaced as specified by the ANSI C standard.
|
||||
|
||||
10. The sourcing of startup files has changed somewhat. This is explained
|
||||
more completely in the INVOCATION section of the manual page.
|
||||
|
||||
A non-interactive shell not named `sh' and not in posix mode reads
|
||||
and executes commands from the file named by $BASH_ENV. A
|
||||
non-interactive shell started by `su' and not in posix mode will read
|
||||
startup files. No other non-interactive shells read any startup files.
|
||||
|
||||
An interactive shell started in posix mode reads and executes commands
|
||||
from the file named by $ENV.
|
||||
|
||||
11. The <> redirection operator was changed to conform to the POSIX.2 spec.
|
||||
In the absence of any file descriptor specification preceding the `<>',
|
||||
file descriptor 0 is used. In bash-1.14, this was the behavior only
|
||||
when in POSIX mode. The bash-1.14 behavior may be obtained with
|
||||
|
||||
<>filename 1>&0
|
||||
|
||||
12. The `alias' builtin now checks for invalid options and takes a `-p'
|
||||
option to display output in POSIX mode. If you have old aliases beginning
|
||||
with `-' or `+', you will have to add the `--' to the alias command
|
||||
that declares them:
|
||||
|
||||
alias -x='chmod a-x' --> alias -- -x='chmod a-x'
|
||||
|
||||
13. The behavior of range specificiers within bracket matching expressions
|
||||
in the pattern matcher (e.g., [A-Z]) depends on the current locale,
|
||||
specifically the value of the LC_COLLATE environment variable. Setting
|
||||
this variable to C or POSIX will result in the traditional ASCII behavior
|
||||
for range comparisons. If the locale is set to something else, e.g.,
|
||||
en_US (specified by the LANG or LC_ALL variables), collation order is
|
||||
locale-dependent. For example, the en_US locale sorts the upper and
|
||||
lower case letters like this:
|
||||
|
||||
AaBb...Zz
|
||||
|
||||
so a range specification like [A-Z] will match every letter except `z'.
|
||||
Other locales collate like
|
||||
|
||||
aAbBcC...zZ
|
||||
|
||||
which means that [A-Z] matches every letter except `a'.
|
||||
|
||||
The portable way to specify upper case letters is [:upper:] instead of
|
||||
A-Z; lower case may be specified as [:lower:] instead of a-z.
|
||||
|
||||
Look at the manual pages for setlocale(3), strcoll(3), and, if it is
|
||||
present, locale(1).
|
||||
|
||||
You can find your current locale information by running locale(1):
|
||||
|
||||
caleb.ins.cwru.edu(2)$ locale
|
||||
LANG=en_US
|
||||
LC_CTYPE="en_US"
|
||||
LC_NUMERIC="en_US"
|
||||
LC_TIME="en_US"
|
||||
LC_COLLATE="en_US"
|
||||
LC_MONETARY="en_US"
|
||||
LC_MESSAGES="en_US"
|
||||
LC_ALL=en_US
|
||||
|
||||
My advice is to put
|
||||
|
||||
export LC_COLLATE=C
|
||||
|
||||
into /etc/profile and inspect any shell scripts run from cron for
|
||||
constructs like [A-Z]. This will prevent things like
|
||||
|
||||
rm [A-Z]*
|
||||
|
||||
from removing every file in the current directory except those beginning
|
||||
with `z' and still allow individual users to change the collation order.
|
||||
Users may put the above command into their own profiles as well, of course.
|
||||
|
||||
14. Bash versions up to 1.14.7 included an undocumented `-l' operator to
|
||||
the `test/[' builtin. It was a unary operator that expanded to the
|
||||
length of its string argument. This let you do things like
|
||||
|
||||
test -l $variable -lt 20
|
||||
|
||||
for example.
|
||||
|
||||
This was included for backwards compatibility with old versions of the
|
||||
Bourne shell, which did not provide an easy way to obtain the length of
|
||||
the value of a shell variable.
|
||||
|
||||
This operator is not part of the POSIX standard, because one can (and
|
||||
should) use ${#variable} to get the length of a variable's value.
|
||||
Bash-2.x does not support it.
|
||||
|
||||
15. Bash no longer auto-exports the HOME, PATH, SHELL, TERM, HOSTNAME,
|
||||
HOSTTYPE, MACHTYPE, or OSTYPE variables. If they appear in the initial
|
||||
environment, the export attribute will be set, but if bash provides a
|
||||
default value, they will remain local to the current shell.
|
||||
|
||||
16. Bash no longer initializes the FUNCNAME, GROUPS, or DIRSTACK variables
|
||||
to have special behavior if they appear in the initial environment.
|
||||
|
||||
17. Bash no longer removes the export attribute from the SSH_CLIENT or
|
||||
SSH2_CLIENT variables, and no longer attempts to discover whether or
|
||||
not it has been invoked by sshd in order to run the startup files.
|
||||
|
||||
18. Bash no longer requires that the body of a function be a group command;
|
||||
any compound command is accepted.
|
||||
|
||||
19. As of bash-3.0, the pattern substitution operators no longer perform
|
||||
quote removal on the pattern before attempting the match. This is the
|
||||
way the pattern removal functions behave, and is more consistent.
|
||||
|
||||
20. After bash-3.0 was released, I reimplemented tilde expansion, incorporating
|
||||
it into the mainline word expansion code. This fixes the bug that caused
|
||||
the results of tilde expansion to be re-expanded. There is one
|
||||
incompatibility: a ${paramOPword} expansion within double quotes will not
|
||||
perform tilde expansion on WORD. This is consistent with the other
|
||||
expansions, and what POSIX specifies.
|
||||
|
||||
21. A number of variables have the integer attribute by default, so the +=
|
||||
assignment operator returns expected results: RANDOM, LINENO, MAILCHECK,
|
||||
HISTCMD, OPTIND.
|
||||
|
||||
22. Bash-3.x is much stricter about $LINENO correctly reflecting the line
|
||||
number in a script; assignments to LINENO have little effect.
|
||||
|
||||
23. By default, readline binds the terminal special characters to their
|
||||
readline equivalents. As of bash-3.1/readline-5.1, this is optional and
|
||||
controlled by the bind-tty-special-chars readline variable.
|
||||
|
||||
24. The \W prompt string expansion abbreviates $HOME as `~'. The previous
|
||||
behavior is available with ${PWD##/*/}.
|
||||
|
||||
25. The arithmetic exponentiation operator is right-associative as of bash-3.1.
|
||||
|
||||
26. The rules concerning valid alias names are stricter, as per POSIX.2.
|
||||
|
||||
27. The Readline key binding functions now obey the convert-meta setting active
|
||||
when the binding takes place, as the dispatch code does when characters
|
||||
are read and processed.
|
||||
|
||||
28. The historical behavior of `trap' reverting signal disposition to the
|
||||
original handling in the absence of a valid first argument is implemented
|
||||
only if the first argument is a valid signal number.
|
||||
|
||||
29. In versions of bash after 3.1, the ${parameter//pattern/replacement}
|
||||
expansion does not interpret `%' or `#' specially. Those anchors don't
|
||||
have any real meaning when replacing every match.
|
||||
|
||||
30. Beginning with bash-3.1, the combination of posix mode and enabling the
|
||||
`xpg_echo' option causes echo to ignore all options, not looking for `-n'
|
||||
|
||||
31. Beginning with bash-3.2, bash follows the Bourne-shell-style (and POSIX-
|
||||
style) rules for parsing the contents of old-style backquoted command
|
||||
substitutions. Previous versions of bash attempted to recursively parse
|
||||
embedded quoted strings and shell constructs; bash-3.2 uses strict POSIX
|
||||
rules to find the closing backquote and simply passes the contents of the
|
||||
command substitution to a subshell for parsing and execution.
|
||||
|
||||
32. Beginning with bash-3.2, bash uses access(2) when executing primaries for
|
||||
the test builtin and the [[ compound command, rather than looking at the
|
||||
file permission bits obtained with stat(2). This obeys restrictions of
|
||||
the file system (e.g., read-only or noexec mounts) not available via stat.
|
||||
|
||||
33. Bash-3.2 adopts the convention used by other string and pattern matching
|
||||
operators for the `[[' compound command, and matches any quoted portion
|
||||
of the right-hand-side argument to the =~ operator as a string rather
|
||||
than a regular expression.
|
||||
|
||||
34. Bash-4.0 allows the behavior in the previous item to be modified using
|
||||
the notion of a shell `compatibility level'. If the compat31 shopt
|
||||
option is set, quoting the pattern has no special effect.
|
||||
|
||||
35. Bash-3.2 (patched) and Bash-4.0 fix a bug that leaves the shell in an
|
||||
inconsistent internal state following an assignment error. One of the
|
||||
changes means that compound commands or { ... } grouping commands are
|
||||
aborted under some circumstances in which they previously were not.
|
||||
This is what Posix specifies.
|
||||
|
||||
36. Bash-4.0 now allows process substitution constructs to pass unchanged
|
||||
through brace expansion, so any expansion of the contents will have to be
|
||||
separately specified, and each process substitution will have to be
|
||||
separately entered.
|
||||
|
||||
37. Bash-4.0 now allows SIGCHLD to interrupt the wait builtin, as Posix
|
||||
specifies, so the SIGCHLD trap is no longer always invoked once per
|
||||
exiting child if you are using `wait' to wait for all children. As
|
||||
of bash-4.2, this is the status quo only when in posix mode.
|
||||
|
||||
38. Since bash-4.0 now follows Posix rules for finding the closing delimiter
|
||||
of a $() command substitution, it will not behave as previous versions
|
||||
did, but will catch more syntax and parsing errors before spawning a
|
||||
subshell to evaluate the command substitution.
|
||||
|
||||
39. The programmable completion code uses the same set of delimiting characters
|
||||
as readline when breaking the command line into words, rather than the
|
||||
set of shell metacharacters, so programmable completion and readline
|
||||
should be more consistent.
|
||||
|
||||
40. When the read builtin times out, it attempts to assign any input read to
|
||||
specified variables, which also causes variables to be set to the empty
|
||||
string if there is not enough input. Previous versions discarded the
|
||||
characters read.
|
||||
|
||||
41. Beginning with bash-4.0, when one of the commands in a pipeline is killed
|
||||
by a SIGINT while executing a command list, the shell acts as if it
|
||||
received the interrupt. This can be disabled by setting the compat31 or
|
||||
compat32 shell options.
|
||||
|
||||
42. Bash-4.0 changes the handling of the set -e option so that the shell exits
|
||||
if a pipeline fails (and not just if the last command in the failing
|
||||
pipeline is a simple command). This is not as Posix specifies. There is
|
||||
work underway to update this portion of the standard; the bash-4.0
|
||||
behavior attempts to capture the consensus at the time of release.
|
||||
|
||||
43. Bash-4.0 fixes a Posix mode bug that caused the . (source) builtin to
|
||||
search the current directory for its filename argument, even if "." is
|
||||
not in $PATH. Posix says that the shell shouldn't look in $PWD in this
|
||||
case.
|
||||
|
||||
44. Bash-4.1 uses the current locale when comparing strings using the < and
|
||||
> operators to the `[[' command. This can be reverted to the previous
|
||||
behavior (ASCII collating and strcmp(3)) by setting one of the
|
||||
`compatNN' shopt options, where NN is less than 41.
|
||||
|
||||
45. Bash-4.1 conforms to the current Posix specification for `set -u':
|
||||
expansions of $@ and $* when there are no positional parameters do not
|
||||
cause the shell to exit.
|
||||
|
||||
46. Bash-4.1 implements the current Posix specification for `set -e' and
|
||||
exits when any command fails, not just a simple command or pipeline.
|
||||
|
||||
47. Command substitutions now remove the caller's trap strings when trap is
|
||||
run to set a new trap in the subshell. Previous to bash-4.2, the old
|
||||
trap strings persisted even though the actual signal handlers were reset.
|
||||
|
||||
48. When in Posix mode, a single quote is not treated specially in a
|
||||
double-quoted ${...} expansion, unless the expansion operator is
|
||||
# or % or the new `//', `^', or `,' expansions. In particular, it
|
||||
does not define a new quoting context. This is from Posix interpretation
|
||||
221.
|
||||
|
||||
49. Posix mode shells no longer exit if a variable assignment error occurs
|
||||
with an assignment preceding a command that is not a special builtin.
|
||||
|
||||
50. Bash-4.2 attempts to preserve what the user typed when performing word
|
||||
completion, instead of, for instance, expanding shell variable
|
||||
references to their value.
|
||||
|
||||
51. When in Posix mode, bash-4.2 exits if the filename supplied as an argument
|
||||
to `.' is not found and the shell is not interactive.
|
||||
|
||||
52. When compiled for strict Posix compatibility, bash-4.3 does not enable
|
||||
history expansion by default in interactive shells, since it results in
|
||||
a non-conforming environment.
|
||||
|
||||
53. Bash-4.3 runs the replacement string in the pattern substitution word
|
||||
expansion through quote removal. The code already treats quote
|
||||
characters in the replacement string as special; if it treats them as
|
||||
special, then quote removal should remove them.
|
||||
|
||||
54. Bash-4.4 no longer considers a reference to ${a[@]} or ${a[*]}, where `a'
|
||||
is an array without any elements set, to be a reference to an unset
|
||||
variable. This means that such a reference will not cause the shell to
|
||||
exit when the `-u' option is enabled.
|
||||
|
||||
55. Bash-4.4 allows double quotes to quote the history expansion character (!)
|
||||
when in Posix mode, since Posix specifies the effects of double quotes.
|
||||
|
||||
56. Bash-4.4 does not inherit $PS4 from the environment if running as root.
|
||||
|
||||
57. Bash-4.4 doesn't allow a `break' or `continue' in a function to affect
|
||||
loop execution in the calling context.
|
||||
|
||||
58. Bash-4.4 no longer expands tildes in $PATH elements when in Posix mode.
|
||||
|
||||
59. Bash-4.4 does not attempt to perform a compound array assignment if an
|
||||
argument to `declare' or a similar builtin expands to a word that looks
|
||||
like a compound array assignment (e.g. declare w=$x where x='(foo)').
|
||||
|
||||
60. Bash-5.0 only sets up BASH_ARGV and BASH_ARGC at startup if extended
|
||||
debugging mode is active. The old behavior of unconditionally setting
|
||||
BASH_ARGC and BASH_ARGV is available at compatibility levels less than
|
||||
or equal to 44.
|
||||
|
||||
61. Bash-5.0 doesn't allow a `break' or `continue' in a subshell to attempt
|
||||
to break or continue loop execution inherited from the calling context.
|
||||
|
||||
62. Bash-5.0 doesn't allow variable assignments preceding builtins like
|
||||
export and readonly to modify variables with the same name in preceding
|
||||
contexts (including the global context) unless the shell is in posix
|
||||
mode, since export and readonly are special builtins.
|
||||
|
||||
63. Bash-5.1 changes the way posix-mode shells handle assignment statements
|
||||
preceding shell function calls. Previous versions of POSIX specified that
|
||||
such assignments would persist after the function returned; subsequent
|
||||
versions of the standard removed that requirement (interpretation #654).
|
||||
Bash-5.1 posix mode assignment statements preceding shell function calls
|
||||
do not persist after the function returns.
|
||||
|
||||
64. Bash-5.1 reverts to the bash-4.4 treatment of pathname expansion of words
|
||||
containing backslashes but no other special globbing characters. This comes
|
||||
after a protracted discussion and a POSIX interpretation (#1234).
|
||||
|
||||
65. In bash-5.1, disabling posix mode attempts to restore the state of several
|
||||
options that posix mode modifies to the state they had before enabling
|
||||
posix mode. Previous versions restored these options to default values.
|
||||
|
||||
66. Bash-5.2 attempts to prevent double-expansion of array subscripts under
|
||||
certain circumstances, especially arithmetic evaluation, by acting as if
|
||||
the `assoc_expand_once' shell option were set.
|
||||
|
||||
67. The `unset' builtin in bash-5.2 treats array subscripts `@' and `*'
|
||||
differently than previous versions, and differently depending on whether
|
||||
the array is indexed or associative.
|
||||
|
||||
|
||||
Shell Compatibility Level
|
||||
=========================
|
||||
|
||||
Bash-4.0 introduced the concept of a `shell compatibility level', specified
|
||||
as a set of options to the shopt builtin (compat31, compat32, compat40,
|
||||
compat41, and so on). There is only one current compatibility level --
|
||||
each option is mutually exclusive. The compatibility level is intended to
|
||||
allow users to select behavior from previous versions that is incompatible
|
||||
with newer versions while they migrate scripts to use current features and
|
||||
behavior. It's intended to be a temporary solution.
|
||||
|
||||
This section does not mention behavior that is standard for a particular
|
||||
version (e.g., setting compat32 means that quoting the rhs of the regexp
|
||||
matching operator quotes special regexp characters in the word, which is
|
||||
default behavior in bash-3.2 and above).
|
||||
|
||||
If a user enables, say, compat32, it may affect the behavior of other
|
||||
compatibility levels up to and including the current compatibility level.
|
||||
The idea is that each compatibility level controls behavior that changed in
|
||||
that version of bash, but that behavior may have been present in earlier
|
||||
versions. For instance, the change to use locale-based comparisons with
|
||||
the `[[' command came in bash-4.1, and earlier versions used ASCII-based
|
||||
comparisons, so enabling compat32 will enable ASCII-based comparisons as
|
||||
well. That granularity may not be sufficient for all uses, and as a result
|
||||
users should employ compatibility levels carefully. Read the documentation
|
||||
for a particular feature to find out the current behavior.
|
||||
|
||||
Bash-4.3 introduced a new shell variable: BASH_COMPAT. The value assigned
|
||||
to this variable (a decimal version number like 4.2, or an integer
|
||||
corresponding to the compatNN option, like 42) determines the compatibility
|
||||
level.
|
||||
|
||||
Starting with bash-4.4, bash has begun deprecating older compatibility
|
||||
levels. Eventually, the options will be removed in favor of the
|
||||
BASH_COMPAT variable.
|
||||
|
||||
Bash-5.0 is the final version for which there will be an individual shopt
|
||||
option for the previous version. Users should use the BASH_COMPAT variable
|
||||
on bash-5.0 and later versions.
|
||||
|
||||
The following table describes the behavior changes controlled by each
|
||||
compatibility level setting. The `compatNN' tag is used as shorthand for
|
||||
setting the compatibility level to NN using one of the following
|
||||
mechanisms. For versions prior to bash-5.0, the compatibility level may be
|
||||
set using the corresponding compatNN shopt option. For bash-4.3 and later
|
||||
versions, the BASH_COMPAT variable is preferred, and it is required for
|
||||
bash-5.1 and later versions.
|
||||
|
||||
compat31
|
||||
- the < and > operators to the [[ command do not consider the current
|
||||
locale when comparing strings; they use ASCII ordering
|
||||
- quoting the rhs of the [[ command's regexp matching operator (=~)
|
||||
has no special effect
|
||||
|
||||
compat32
|
||||
- the < and > operators to the [[ command do not consider the current
|
||||
locale when comparing strings; they use ASCII ordering
|
||||
- interrupting a command list such as "a ; b ; c" causes the execution
|
||||
of the next command in the list (in bash-4.0 and later versions,
|
||||
the shell acts as if it received the interrupt, so interrupting
|
||||
one command in a list aborts the execution of the entire list)
|
||||
|
||||
compat40
|
||||
- the < and > operators to the [[ command do not consider the current
|
||||
locale when comparing strings; they use ASCII ordering.
|
||||
Bash versions prior to bash-4.1 use ASCII collation and strcmp(3);
|
||||
bash-4.1 and later use the current locale's collation sequence and
|
||||
strcoll(3).
|
||||
|
||||
compat41
|
||||
- in posix mode, `time' may be followed by options and still be
|
||||
recognized as a reserved word (this is POSIX interpretation 267)
|
||||
- in posix mode, the parser requires that an even number of single
|
||||
quotes occur in the `word' portion of a double-quoted ${...}
|
||||
parameter expansion and treats them specially, so that characters
|
||||
within the single quotes are considered quoted (this is POSIX
|
||||
interpretation 221)
|
||||
|
||||
compat42
|
||||
- the replacement string in double-quoted pattern substitution is not
|
||||
run through quote removal, as it is in versions after bash-4.2
|
||||
- in posix mode, single quotes are considered special when expanding
|
||||
the `word' portion of a double-quoted ${...} parameter expansion
|
||||
and can be used to quote a closing brace or other special character
|
||||
(this is part of POSIX interpretation 221); in later versions,
|
||||
single quotes are not special within double-quoted word expansions
|
||||
|
||||
compat43
|
||||
- the shell does not print a warning message if an attempt is made to
|
||||
use a quoted compound assignment as an argument to declare
|
||||
(declare -a foo='(1 2)'). Later versions warn that this usage is
|
||||
deprecated.
|
||||
- word expansion errors are considered non-fatal errors that cause the
|
||||
current command to fail, even in posix mode (the default behavior is
|
||||
to make them fatal errors that cause the shell to exit)
|
||||
- when executing a shell function, the loop state (while/until/etc.)
|
||||
is not reset, so `break' or `continue' in that function will break
|
||||
or continue loops in the calling context. Bash-4.4 and later reset
|
||||
the loop state to prevent this
|
||||
|
||||
compat44
|
||||
- the shell sets up the values used by BASH_ARGV and BASH_ARGC so
|
||||
they can expand to the shell's positional parameters even if extended
|
||||
debug mode is not enabled
|
||||
- a subshell inherits loops from its parent context, so `break'
|
||||
or `continue' will cause the subshell to exit. Bash-5.0 and later
|
||||
reset the loop state to prevent the exit
|
||||
- variable assignments preceding builtins like export and readonly
|
||||
that set attributes continue to affect variables with the same
|
||||
name in the calling environment even if the shell is not in posix
|
||||
mode
|
||||
|
||||
compat50 (set using BASH_COMPAT)
|
||||
- Bash-5.1 changed the way $RANDOM is generated to introduce slightly
|
||||
more randomness. If the shell compatibility level is set to 50 or
|
||||
lower, it reverts to the method from bash-5.0 and previous versions,
|
||||
so seeding the random number generator by assigning a value to
|
||||
RANDOM will produce the same sequence as in bash-5.0
|
||||
- If the command hash table is empty, bash versions prior to bash-5.1
|
||||
printed an informational message to that effect even when writing
|
||||
output in a format that can be reused as input (-l). Bash-5.1
|
||||
suppresses that message if -l is supplied
|
||||
- Bash-5.1 and later use pipes for here-documents and here-strings if
|
||||
they are smaller than the pipe capacity. If the shell compatibility
|
||||
level is set to 50 or lower, it reverts to using temporary files.
|
||||
|
||||
compat51 (set using BASH_COMPAT)
|
||||
- The `unset' builtin will unset the array a given an argument like
|
||||
`a[@]'. Bash-5.2 will unset an element with key `@' (associative
|
||||
arrays) or remove all the elements without unsetting the array
|
||||
(indexed arrays)
|
||||
- arithmetic commands ( ((...)) ) and the expressions in an arithmetic
|
||||
for statement can be expanded more than once
|
||||
- expressions used as arguments to arithmetic operators in the [[
|
||||
conditional command can be expanded more than once
|
||||
- indexed and associative array subscripts used as arguments to the
|
||||
operators in the [[ conditional command (e.g., `[[ -v') can be
|
||||
expanded more than once. Bash-5.2 behaves as if the
|
||||
`assoc_expand_once' option were enabled.
|
||||
- the expressions in substring parameter brace expansion can be
|
||||
expanded more than once
|
||||
- the expressions in the $(( ... )) word expansion can be expanded
|
||||
more than once
|
||||
- arithmetic expressions used as indexed array subscripts can be
|
||||
expanded more than once;
|
||||
- `test -v', when given an argument of A[@], where A is an existing
|
||||
associative array, will return true if the array has any set
|
||||
elements. Bash-5.2 will look for a key named `@';
|
||||
- the ${param[:]=value} word expansion will return VALUE, before any
|
||||
variable-specific transformations have been performed (e.g.,
|
||||
converting to lowercase). Bash-5.2 will return the final value
|
||||
assigned to the variable, as POSIX specifies;
|
||||
- Parsing command substitutions will act as if extended glob is
|
||||
enabled, so that parsing a command substitution containing an extglob
|
||||
pattern (say, as part of a shell function) will not fail. This
|
||||
assumes the intent is to enable extglob before the command is
|
||||
executed and word expansions are performed. It will fail at word
|
||||
expansion time if extglob hasn't been enabled by the time the
|
||||
command is executed.
|
||||
|
||||
-------------------------------------------------------------------------------
|
||||
|
||||
Copying and distribution of this file, with or without modification,
|
||||
are permitted in any medium without royalty provided the copyright
|
||||
notice and this notice are preserved. This file is offered as-is,
|
||||
without any warranty.
|
||||
674
OGP64/usr/share/doc/bash/COPYING
Normal file
674
OGP64/usr/share/doc/bash/COPYING
Normal file
|
|
@ -0,0 +1,674 @@
|
|||
GNU GENERAL PUBLIC LICENSE
|
||||
Version 3, 29 June 2007
|
||||
|
||||
Copyright (C) 2007 Free Software Foundation, Inc. <http://fsf.org/>
|
||||
Everyone is permitted to copy and distribute verbatim copies
|
||||
of this license document, but changing it is not allowed.
|
||||
|
||||
Preamble
|
||||
|
||||
The GNU General Public License is a free, copyleft license for
|
||||
software and other kinds of works.
|
||||
|
||||
The licenses for most software and other practical works are designed
|
||||
to take away your freedom to share and change the works. By contrast,
|
||||
the GNU General Public License is intended to guarantee your freedom to
|
||||
share and change all versions of a program--to make sure it remains free
|
||||
software for all its users. We, the Free Software Foundation, use the
|
||||
GNU General Public License for most of our software; it applies also to
|
||||
any other work released this way by its authors. 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
|
||||
them 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 prevent others from denying you
|
||||
these rights or asking you to surrender the rights. Therefore, you have
|
||||
certain responsibilities if you distribute copies of the software, or if
|
||||
you modify it: responsibilities to respect the freedom of others.
|
||||
|
||||
For example, if you distribute copies of such a program, whether
|
||||
gratis or for a fee, you must pass on to the recipients the same
|
||||
freedoms that you received. 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.
|
||||
|
||||
Developers that use the GNU GPL protect your rights with two steps:
|
||||
(1) assert copyright on the software, and (2) offer you this License
|
||||
giving you legal permission to copy, distribute and/or modify it.
|
||||
|
||||
For the developers' and authors' protection, the GPL clearly explains
|
||||
that there is no warranty for this free software. For both users' and
|
||||
authors' sake, the GPL requires that modified versions be marked as
|
||||
changed, so that their problems will not be attributed erroneously to
|
||||
authors of previous versions.
|
||||
|
||||
Some devices are designed to deny users access to install or run
|
||||
modified versions of the software inside them, although the manufacturer
|
||||
can do so. This is fundamentally incompatible with the aim of
|
||||
protecting users' freedom to change the software. The systematic
|
||||
pattern of such abuse occurs in the area of products for individuals to
|
||||
use, which is precisely where it is most unacceptable. Therefore, we
|
||||
have designed this version of the GPL to prohibit the practice for those
|
||||
products. If such problems arise substantially in other domains, we
|
||||
stand ready to extend this provision to those domains in future versions
|
||||
of the GPL, as needed to protect the freedom of users.
|
||||
|
||||
Finally, every program is threatened constantly by software patents.
|
||||
States should not allow patents to restrict development and use of
|
||||
software on general-purpose computers, but in those that do, we wish to
|
||||
avoid the special danger that patents applied to a free program could
|
||||
make it effectively proprietary. To prevent this, the GPL assures that
|
||||
patents cannot be used to render the program non-free.
|
||||
|
||||
The precise terms and conditions for copying, distribution and
|
||||
modification follow.
|
||||
|
||||
TERMS AND CONDITIONS
|
||||
|
||||
0. Definitions.
|
||||
|
||||
"This License" refers to version 3 of the GNU General Public License.
|
||||
|
||||
"Copyright" also means copyright-like laws that apply to other kinds of
|
||||
works, such as semiconductor masks.
|
||||
|
||||
"The Program" refers to any copyrightable work licensed under this
|
||||
License. Each licensee is addressed as "you". "Licensees" and
|
||||
"recipients" may be individuals or organizations.
|
||||
|
||||
To "modify" a work means to copy from or adapt all or part of the work
|
||||
in a fashion requiring copyright permission, other than the making of an
|
||||
exact copy. The resulting work is called a "modified version" of the
|
||||
earlier work or a work "based on" the earlier work.
|
||||
|
||||
A "covered work" means either the unmodified Program or a work based
|
||||
on the Program.
|
||||
|
||||
To "propagate" a work means to do anything with it that, without
|
||||
permission, would make you directly or secondarily liable for
|
||||
infringement under applicable copyright law, except executing it on a
|
||||
computer or modifying a private copy. Propagation includes copying,
|
||||
distribution (with or without modification), making available to the
|
||||
public, and in some countries other activities as well.
|
||||
|
||||
To "convey" a work means any kind of propagation that enables other
|
||||
parties to make or receive copies. Mere interaction with a user through
|
||||
a computer network, with no transfer of a copy, is not conveying.
|
||||
|
||||
An interactive user interface displays "Appropriate Legal Notices"
|
||||
to the extent that it includes a convenient and prominently visible
|
||||
feature that (1) displays an appropriate copyright notice, and (2)
|
||||
tells the user that there is no warranty for the work (except to the
|
||||
extent that warranties are provided), that licensees may convey the
|
||||
work under this License, and how to view a copy of this License. If
|
||||
the interface presents a list of user commands or options, such as a
|
||||
menu, a prominent item in the list meets this criterion.
|
||||
|
||||
1. Source Code.
|
||||
|
||||
The "source code" for a work means the preferred form of the work
|
||||
for making modifications to it. "Object code" means any non-source
|
||||
form of a work.
|
||||
|
||||
A "Standard Interface" means an interface that either is an official
|
||||
standard defined by a recognized standards body, or, in the case of
|
||||
interfaces specified for a particular programming language, one that
|
||||
is widely used among developers working in that language.
|
||||
|
||||
The "System Libraries" of an executable work include anything, other
|
||||
than the work as a whole, that (a) is included in the normal form of
|
||||
packaging a Major Component, but which is not part of that Major
|
||||
Component, and (b) serves only to enable use of the work with that
|
||||
Major Component, or to implement a Standard Interface for which an
|
||||
implementation is available to the public in source code form. A
|
||||
"Major Component", in this context, means a major essential component
|
||||
(kernel, window system, and so on) of the specific operating system
|
||||
(if any) on which the executable work runs, or a compiler used to
|
||||
produce the work, or an object code interpreter used to run it.
|
||||
|
||||
The "Corresponding Source" for a work in object code form means all
|
||||
the source code needed to generate, install, and (for an executable
|
||||
work) run the object code and to modify the work, including scripts to
|
||||
control those activities. However, it does not include the work's
|
||||
System Libraries, or general-purpose tools or generally available free
|
||||
programs which are used unmodified in performing those activities but
|
||||
which are not part of the work. For example, Corresponding Source
|
||||
includes interface definition files associated with source files for
|
||||
the work, and the source code for shared libraries and dynamically
|
||||
linked subprograms that the work is specifically designed to require,
|
||||
such as by intimate data communication or control flow between those
|
||||
subprograms and other parts of the work.
|
||||
|
||||
The Corresponding Source need not include anything that users
|
||||
can regenerate automatically from other parts of the Corresponding
|
||||
Source.
|
||||
|
||||
The Corresponding Source for a work in source code form is that
|
||||
same work.
|
||||
|
||||
2. Basic Permissions.
|
||||
|
||||
All rights granted under this License are granted for the term of
|
||||
copyright on the Program, and are irrevocable provided the stated
|
||||
conditions are met. This License explicitly affirms your unlimited
|
||||
permission to run the unmodified Program. The output from running a
|
||||
covered work is covered by this License only if the output, given its
|
||||
content, constitutes a covered work. This License acknowledges your
|
||||
rights of fair use or other equivalent, as provided by copyright law.
|
||||
|
||||
You may make, run and propagate covered works that you do not
|
||||
convey, without conditions so long as your license otherwise remains
|
||||
in force. You may convey covered works to others for the sole purpose
|
||||
of having them make modifications exclusively for you, or provide you
|
||||
with facilities for running those works, provided that you comply with
|
||||
the terms of this License in conveying all material for which you do
|
||||
not control copyright. Those thus making or running the covered works
|
||||
for you must do so exclusively on your behalf, under your direction
|
||||
and control, on terms that prohibit them from making any copies of
|
||||
your copyrighted material outside their relationship with you.
|
||||
|
||||
Conveying under any other circumstances is permitted solely under
|
||||
the conditions stated below. Sublicensing is not allowed; section 10
|
||||
makes it unnecessary.
|
||||
|
||||
3. Protecting Users' Legal Rights From Anti-Circumvention Law.
|
||||
|
||||
No covered work shall be deemed part of an effective technological
|
||||
measure under any applicable law fulfilling obligations under article
|
||||
11 of the WIPO copyright treaty adopted on 20 December 1996, or
|
||||
similar laws prohibiting or restricting circumvention of such
|
||||
measures.
|
||||
|
||||
When you convey a covered work, you waive any legal power to forbid
|
||||
circumvention of technological measures to the extent such circumvention
|
||||
is effected by exercising rights under this License with respect to
|
||||
the covered work, and you disclaim any intention to limit operation or
|
||||
modification of the work as a means of enforcing, against the work's
|
||||
users, your or third parties' legal rights to forbid circumvention of
|
||||
technological measures.
|
||||
|
||||
4. Conveying Verbatim Copies.
|
||||
|
||||
You may convey 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;
|
||||
keep intact all notices stating that this License and any
|
||||
non-permissive terms added in accord with section 7 apply to the code;
|
||||
keep intact all notices of the absence of any warranty; and give all
|
||||
recipients a copy of this License along with the Program.
|
||||
|
||||
You may charge any price or no price for each copy that you convey,
|
||||
and you may offer support or warranty protection for a fee.
|
||||
|
||||
5. Conveying Modified Source Versions.
|
||||
|
||||
You may convey a work based on the Program, or the modifications to
|
||||
produce it from the Program, in the form of source code under the
|
||||
terms of section 4, provided that you also meet all of these conditions:
|
||||
|
||||
a) The work must carry prominent notices stating that you modified
|
||||
it, and giving a relevant date.
|
||||
|
||||
b) The work must carry prominent notices stating that it is
|
||||
released under this License and any conditions added under section
|
||||
7. This requirement modifies the requirement in section 4 to
|
||||
"keep intact all notices".
|
||||
|
||||
c) You must license the entire work, as a whole, under this
|
||||
License to anyone who comes into possession of a copy. This
|
||||
License will therefore apply, along with any applicable section 7
|
||||
additional terms, to the whole of the work, and all its parts,
|
||||
regardless of how they are packaged. This License gives no
|
||||
permission to license the work in any other way, but it does not
|
||||
invalidate such permission if you have separately received it.
|
||||
|
||||
d) If the work has interactive user interfaces, each must display
|
||||
Appropriate Legal Notices; however, if the Program has interactive
|
||||
interfaces that do not display Appropriate Legal Notices, your
|
||||
work need not make them do so.
|
||||
|
||||
A compilation of a covered work with other separate and independent
|
||||
works, which are not by their nature extensions of the covered work,
|
||||
and which are not combined with it such as to form a larger program,
|
||||
in or on a volume of a storage or distribution medium, is called an
|
||||
"aggregate" if the compilation and its resulting copyright are not
|
||||
used to limit the access or legal rights of the compilation's users
|
||||
beyond what the individual works permit. Inclusion of a covered work
|
||||
in an aggregate does not cause this License to apply to the other
|
||||
parts of the aggregate.
|
||||
|
||||
6. Conveying Non-Source Forms.
|
||||
|
||||
You may convey a covered work in object code form under the terms
|
||||
of sections 4 and 5, provided that you also convey the
|
||||
machine-readable Corresponding Source under the terms of this License,
|
||||
in one of these ways:
|
||||
|
||||
a) Convey the object code in, or embodied in, a physical product
|
||||
(including a physical distribution medium), accompanied by the
|
||||
Corresponding Source fixed on a durable physical medium
|
||||
customarily used for software interchange.
|
||||
|
||||
b) Convey the object code in, or embodied in, a physical product
|
||||
(including a physical distribution medium), accompanied by a
|
||||
written offer, valid for at least three years and valid for as
|
||||
long as you offer spare parts or customer support for that product
|
||||
model, to give anyone who possesses the object code either (1) a
|
||||
copy of the Corresponding Source for all the software in the
|
||||
product that is covered by this License, on a durable physical
|
||||
medium customarily used for software interchange, for a price no
|
||||
more than your reasonable cost of physically performing this
|
||||
conveying of source, or (2) access to copy the
|
||||
Corresponding Source from a network server at no charge.
|
||||
|
||||
c) Convey individual copies of the object code with a copy of the
|
||||
written offer to provide the Corresponding Source. This
|
||||
alternative is allowed only occasionally and noncommercially, and
|
||||
only if you received the object code with such an offer, in accord
|
||||
with subsection 6b.
|
||||
|
||||
d) Convey the object code by offering access from a designated
|
||||
place (gratis or for a charge), and offer equivalent access to the
|
||||
Corresponding Source in the same way through the same place at no
|
||||
further charge. You need not require recipients to copy the
|
||||
Corresponding Source along with the object code. If the place to
|
||||
copy the object code is a network server, the Corresponding Source
|
||||
may be on a different server (operated by you or a third party)
|
||||
that supports equivalent copying facilities, provided you maintain
|
||||
clear directions next to the object code saying where to find the
|
||||
Corresponding Source. Regardless of what server hosts the
|
||||
Corresponding Source, you remain obligated to ensure that it is
|
||||
available for as long as needed to satisfy these requirements.
|
||||
|
||||
e) Convey the object code using peer-to-peer transmission, provided
|
||||
you inform other peers where the object code and Corresponding
|
||||
Source of the work are being offered to the general public at no
|
||||
charge under subsection 6d.
|
||||
|
||||
A separable portion of the object code, whose source code is excluded
|
||||
from the Corresponding Source as a System Library, need not be
|
||||
included in conveying the object code work.
|
||||
|
||||
A "User Product" is either (1) a "consumer product", which means any
|
||||
tangible personal property which is normally used for personal, family,
|
||||
or household purposes, or (2) anything designed or sold for incorporation
|
||||
into a dwelling. In determining whether a product is a consumer product,
|
||||
doubtful cases shall be resolved in favor of coverage. For a particular
|
||||
product received by a particular user, "normally used" refers to a
|
||||
typical or common use of that class of product, regardless of the status
|
||||
of the particular user or of the way in which the particular user
|
||||
actually uses, or expects or is expected to use, the product. A product
|
||||
is a consumer product regardless of whether the product has substantial
|
||||
commercial, industrial or non-consumer uses, unless such uses represent
|
||||
the only significant mode of use of the product.
|
||||
|
||||
"Installation Information" for a User Product means any methods,
|
||||
procedures, authorization keys, or other information required to install
|
||||
and execute modified versions of a covered work in that User Product from
|
||||
a modified version of its Corresponding Source. The information must
|
||||
suffice to ensure that the continued functioning of the modified object
|
||||
code is in no case prevented or interfered with solely because
|
||||
modification has been made.
|
||||
|
||||
If you convey an object code work under this section in, or with, or
|
||||
specifically for use in, a User Product, and the conveying occurs as
|
||||
part of a transaction in which the right of possession and use of the
|
||||
User Product is transferred to the recipient in perpetuity or for a
|
||||
fixed term (regardless of how the transaction is characterized), the
|
||||
Corresponding Source conveyed under this section must be accompanied
|
||||
by the Installation Information. But this requirement does not apply
|
||||
if neither you nor any third party retains the ability to install
|
||||
modified object code on the User Product (for example, the work has
|
||||
been installed in ROM).
|
||||
|
||||
The requirement to provide Installation Information does not include a
|
||||
requirement to continue to provide support service, warranty, or updates
|
||||
for a work that has been modified or installed by the recipient, or for
|
||||
the User Product in which it has been modified or installed. Access to a
|
||||
network may be denied when the modification itself materially and
|
||||
adversely affects the operation of the network or violates the rules and
|
||||
protocols for communication across the network.
|
||||
|
||||
Corresponding Source conveyed, and Installation Information provided,
|
||||
in accord with this section must be in a format that is publicly
|
||||
documented (and with an implementation available to the public in
|
||||
source code form), and must require no special password or key for
|
||||
unpacking, reading or copying.
|
||||
|
||||
7. Additional Terms.
|
||||
|
||||
"Additional permissions" are terms that supplement the terms of this
|
||||
License by making exceptions from one or more of its conditions.
|
||||
Additional permissions that are applicable to the entire Program shall
|
||||
be treated as though they were included in this License, to the extent
|
||||
that they are valid under applicable law. If additional permissions
|
||||
apply only to part of the Program, that part may be used separately
|
||||
under those permissions, but the entire Program remains governed by
|
||||
this License without regard to the additional permissions.
|
||||
|
||||
When you convey a copy of a covered work, you may at your option
|
||||
remove any additional permissions from that copy, or from any part of
|
||||
it. (Additional permissions may be written to require their own
|
||||
removal in certain cases when you modify the work.) You may place
|
||||
additional permissions on material, added by you to a covered work,
|
||||
for which you have or can give appropriate copyright permission.
|
||||
|
||||
Notwithstanding any other provision of this License, for material you
|
||||
add to a covered work, you may (if authorized by the copyright holders of
|
||||
that material) supplement the terms of this License with terms:
|
||||
|
||||
a) Disclaiming warranty or limiting liability differently from the
|
||||
terms of sections 15 and 16 of this License; or
|
||||
|
||||
b) Requiring preservation of specified reasonable legal notices or
|
||||
author attributions in that material or in the Appropriate Legal
|
||||
Notices displayed by works containing it; or
|
||||
|
||||
c) Prohibiting misrepresentation of the origin of that material, or
|
||||
requiring that modified versions of such material be marked in
|
||||
reasonable ways as different from the original version; or
|
||||
|
||||
d) Limiting the use for publicity purposes of names of licensors or
|
||||
authors of the material; or
|
||||
|
||||
e) Declining to grant rights under trademark law for use of some
|
||||
trade names, trademarks, or service marks; or
|
||||
|
||||
f) Requiring indemnification of licensors and authors of that
|
||||
material by anyone who conveys the material (or modified versions of
|
||||
it) with contractual assumptions of liability to the recipient, for
|
||||
any liability that these contractual assumptions directly impose on
|
||||
those licensors and authors.
|
||||
|
||||
All other non-permissive additional terms are considered "further
|
||||
restrictions" within the meaning of section 10. If the Program as you
|
||||
received it, or any part of it, contains a notice stating that it is
|
||||
governed by this License along with a term that is a further
|
||||
restriction, you may remove that term. If a license document contains
|
||||
a further restriction but permits relicensing or conveying under this
|
||||
License, you may add to a covered work material governed by the terms
|
||||
of that license document, provided that the further restriction does
|
||||
not survive such relicensing or conveying.
|
||||
|
||||
If you add terms to a covered work in accord with this section, you
|
||||
must place, in the relevant source files, a statement of the
|
||||
additional terms that apply to those files, or a notice indicating
|
||||
where to find the applicable terms.
|
||||
|
||||
Additional terms, permissive or non-permissive, may be stated in the
|
||||
form of a separately written license, or stated as exceptions;
|
||||
the above requirements apply either way.
|
||||
|
||||
8. Termination.
|
||||
|
||||
You may not propagate or modify a covered work except as expressly
|
||||
provided under this License. Any attempt otherwise to propagate or
|
||||
modify it is void, and will automatically terminate your rights under
|
||||
this License (including any patent licenses granted under the third
|
||||
paragraph of section 11).
|
||||
|
||||
However, if you cease all violation of this License, then your
|
||||
license from a particular copyright holder is reinstated (a)
|
||||
provisionally, unless and until the copyright holder explicitly and
|
||||
finally terminates your license, and (b) permanently, if the copyright
|
||||
holder fails to notify you of the violation by some reasonable means
|
||||
prior to 60 days after the cessation.
|
||||
|
||||
Moreover, your license from a particular copyright holder is
|
||||
reinstated permanently if the copyright holder notifies you of the
|
||||
violation by some reasonable means, this is the first time you have
|
||||
received notice of violation of this License (for any work) from that
|
||||
copyright holder, and you cure the violation prior to 30 days after
|
||||
your receipt of the notice.
|
||||
|
||||
Termination of your rights under this section does not terminate the
|
||||
licenses of parties who have received copies or rights from you under
|
||||
this License. If your rights have been terminated and not permanently
|
||||
reinstated, you do not qualify to receive new licenses for the same
|
||||
material under section 10.
|
||||
|
||||
9. Acceptance Not Required for Having Copies.
|
||||
|
||||
You are not required to accept this License in order to receive or
|
||||
run a copy of the Program. Ancillary propagation of a covered work
|
||||
occurring solely as a consequence of using peer-to-peer transmission
|
||||
to receive a copy likewise does not require acceptance. However,
|
||||
nothing other than this License grants you permission to propagate or
|
||||
modify any covered work. These actions infringe copyright if you do
|
||||
not accept this License. Therefore, by modifying or propagating a
|
||||
covered work, you indicate your acceptance of this License to do so.
|
||||
|
||||
10. Automatic Licensing of Downstream Recipients.
|
||||
|
||||
Each time you convey a covered work, the recipient automatically
|
||||
receives a license from the original licensors, to run, modify and
|
||||
propagate that work, subject to this License. You are not responsible
|
||||
for enforcing compliance by third parties with this License.
|
||||
|
||||
An "entity transaction" is a transaction transferring control of an
|
||||
organization, or substantially all assets of one, or subdividing an
|
||||
organization, or merging organizations. If propagation of a covered
|
||||
work results from an entity transaction, each party to that
|
||||
transaction who receives a copy of the work also receives whatever
|
||||
licenses to the work the party's predecessor in interest had or could
|
||||
give under the previous paragraph, plus a right to possession of the
|
||||
Corresponding Source of the work from the predecessor in interest, if
|
||||
the predecessor has it or can get it with reasonable efforts.
|
||||
|
||||
You may not impose any further restrictions on the exercise of the
|
||||
rights granted or affirmed under this License. For example, you may
|
||||
not impose a license fee, royalty, or other charge for exercise of
|
||||
rights granted under this License, and you may not initiate litigation
|
||||
(including a cross-claim or counterclaim in a lawsuit) alleging that
|
||||
any patent claim is infringed by making, using, selling, offering for
|
||||
sale, or importing the Program or any portion of it.
|
||||
|
||||
11. Patents.
|
||||
|
||||
A "contributor" is a copyright holder who authorizes use under this
|
||||
License of the Program or a work on which the Program is based. The
|
||||
work thus licensed is called the contributor's "contributor version".
|
||||
|
||||
A contributor's "essential patent claims" are all patent claims
|
||||
owned or controlled by the contributor, whether already acquired or
|
||||
hereafter acquired, that would be infringed by some manner, permitted
|
||||
by this License, of making, using, or selling its contributor version,
|
||||
but do not include claims that would be infringed only as a
|
||||
consequence of further modification of the contributor version. For
|
||||
purposes of this definition, "control" includes the right to grant
|
||||
patent sublicenses in a manner consistent with the requirements of
|
||||
this License.
|
||||
|
||||
Each contributor grants you a non-exclusive, worldwide, royalty-free
|
||||
patent license under the contributor's essential patent claims, to
|
||||
make, use, sell, offer for sale, import and otherwise run, modify and
|
||||
propagate the contents of its contributor version.
|
||||
|
||||
In the following three paragraphs, a "patent license" is any express
|
||||
agreement or commitment, however denominated, not to enforce a patent
|
||||
(such as an express permission to practice a patent or covenant not to
|
||||
sue for patent infringement). To "grant" such a patent license to a
|
||||
party means to make such an agreement or commitment not to enforce a
|
||||
patent against the party.
|
||||
|
||||
If you convey a covered work, knowingly relying on a patent license,
|
||||
and the Corresponding Source of the work is not available for anyone
|
||||
to copy, free of charge and under the terms of this License, through a
|
||||
publicly available network server or other readily accessible means,
|
||||
then you must either (1) cause the Corresponding Source to be so
|
||||
available, or (2) arrange to deprive yourself of the benefit of the
|
||||
patent license for this particular work, or (3) arrange, in a manner
|
||||
consistent with the requirements of this License, to extend the patent
|
||||
license to downstream recipients. "Knowingly relying" means you have
|
||||
actual knowledge that, but for the patent license, your conveying the
|
||||
covered work in a country, or your recipient's use of the covered work
|
||||
in a country, would infringe one or more identifiable patents in that
|
||||
country that you have reason to believe are valid.
|
||||
|
||||
If, pursuant to or in connection with a single transaction or
|
||||
arrangement, you convey, or propagate by procuring conveyance of, a
|
||||
covered work, and grant a patent license to some of the parties
|
||||
receiving the covered work authorizing them to use, propagate, modify
|
||||
or convey a specific copy of the covered work, then the patent license
|
||||
you grant is automatically extended to all recipients of the covered
|
||||
work and works based on it.
|
||||
|
||||
A patent license is "discriminatory" if it does not include within
|
||||
the scope of its coverage, prohibits the exercise of, or is
|
||||
conditioned on the non-exercise of one or more of the rights that are
|
||||
specifically granted under this License. You may not convey a covered
|
||||
work if you are a party to an arrangement with a third party that is
|
||||
in the business of distributing software, under which you make payment
|
||||
to the third party based on the extent of your activity of conveying
|
||||
the work, and under which the third party grants, to any of the
|
||||
parties who would receive the covered work from you, a discriminatory
|
||||
patent license (a) in connection with copies of the covered work
|
||||
conveyed by you (or copies made from those copies), or (b) primarily
|
||||
for and in connection with specific products or compilations that
|
||||
contain the covered work, unless you entered into that arrangement,
|
||||
or that patent license was granted, prior to 28 March 2007.
|
||||
|
||||
Nothing in this License shall be construed as excluding or limiting
|
||||
any implied license or other defenses to infringement that may
|
||||
otherwise be available to you under applicable patent law.
|
||||
|
||||
12. No Surrender of Others' Freedom.
|
||||
|
||||
If 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 convey a
|
||||
covered work so as to satisfy simultaneously your obligations under this
|
||||
License and any other pertinent obligations, then as a consequence you may
|
||||
not convey it at all. For example, if you agree to terms that obligate you
|
||||
to collect a royalty for further conveying from those to whom you convey
|
||||
the Program, the only way you could satisfy both those terms and this
|
||||
License would be to refrain entirely from conveying the Program.
|
||||
|
||||
13. Use with the GNU Affero General Public License.
|
||||
|
||||
Notwithstanding any other provision of this License, you have
|
||||
permission to link or combine any covered work with a work licensed
|
||||
under version 3 of the GNU Affero General Public License into a single
|
||||
combined work, and to convey the resulting work. The terms of this
|
||||
License will continue to apply to the part which is the covered work,
|
||||
but the special requirements of the GNU Affero General Public License,
|
||||
section 13, concerning interaction through a network will apply to the
|
||||
combination as such.
|
||||
|
||||
14. Revised Versions of this License.
|
||||
|
||||
The Free Software Foundation may publish revised and/or new versions of
|
||||
the GNU 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 that a certain numbered version of the GNU General
|
||||
Public License "or any later version" applies to it, you have the
|
||||
option of following the terms and conditions either of that numbered
|
||||
version or of any later version published by the Free Software
|
||||
Foundation. If the Program does not specify a version number of the
|
||||
GNU General Public License, you may choose any version ever published
|
||||
by the Free Software Foundation.
|
||||
|
||||
If the Program specifies that a proxy can decide which future
|
||||
versions of the GNU General Public License can be used, that proxy's
|
||||
public statement of acceptance of a version permanently authorizes you
|
||||
to choose that version for the Program.
|
||||
|
||||
Later license versions may give you additional or different
|
||||
permissions. However, no additional obligations are imposed on any
|
||||
author or copyright holder as a result of your choosing to follow a
|
||||
later version.
|
||||
|
||||
15. Disclaimer of Warranty.
|
||||
|
||||
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.
|
||||
|
||||
16. Limitation of Liability.
|
||||
|
||||
IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING
|
||||
WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MODIFIES AND/OR CONVEYS
|
||||
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.
|
||||
|
||||
17. Interpretation of Sections 15 and 16.
|
||||
|
||||
If the disclaimer of warranty and limitation of liability provided
|
||||
above cannot be given local legal effect according to their terms,
|
||||
reviewing courts shall apply local law that most closely approximates
|
||||
an absolute waiver of all civil liability in connection with the
|
||||
Program, unless a warranty or assumption of liability accompanies a
|
||||
copy of the Program in return for a fee.
|
||||
|
||||
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
|
||||
state the exclusion of warranty; and each file should have at least
|
||||
the "copyright" line and a pointer to where the full notice is found.
|
||||
|
||||
<one line to give the program's name and a brief idea of what it does.>
|
||||
Copyright (C) <year> <name of author>
|
||||
|
||||
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 3 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, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
Also add information on how to contact you by electronic and paper mail.
|
||||
|
||||
If the program does terminal interaction, make it output a short
|
||||
notice like this when it starts in an interactive mode:
|
||||
|
||||
<program> Copyright (C) <year> <name of author>
|
||||
This program 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, your program's commands
|
||||
might be different; for a GUI interface, you would use an "about box".
|
||||
|
||||
You should also get your employer (if you work as a programmer) or school,
|
||||
if any, to sign a "copyright disclaimer" for the program, if necessary.
|
||||
For more information on this, and how to apply and follow the GNU GPL, see
|
||||
<http://www.gnu.org/licenses/>.
|
||||
|
||||
The GNU 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. But first, please read
|
||||
<http://www.gnu.org/philosophy/why-not-lgpl.html>.
|
||||
3952
OGP64/usr/share/doc/bash/ChangeLog
Normal file
3952
OGP64/usr/share/doc/bash/ChangeLog
Normal file
File diff suppressed because it is too large
Load diff
2414
OGP64/usr/share/doc/bash/FAQ
Normal file
2414
OGP64/usr/share/doc/bash/FAQ
Normal file
File diff suppressed because it is too large
Load diff
187
OGP64/usr/share/doc/bash/INTRO
Normal file
187
OGP64/usr/share/doc/bash/INTRO
Normal file
|
|
@ -0,0 +1,187 @@
|
|||
BASH - The Bourne-Again Shell
|
||||
|
||||
Bash is the shell, or command language interpreter, that will appear
|
||||
in the GNU operating system. Bash is an sh-compatible shell that
|
||||
incorporates useful features from the Korn shell (ksh) and C shell
|
||||
(csh). It is intended to conform to the IEEE POSIX P1003.2/ISO 9945.2
|
||||
Shell and Tools standard. It offers functional improvements over sh
|
||||
for both programming and interactive use. In addition, most sh scripts
|
||||
can be run by Bash without modification.
|
||||
|
||||
Bash is quite portable. It uses a configuration system that discovers
|
||||
characteristics of the compilation platform at build time, and may
|
||||
therefore be built on nearly every version of UNIX. Ports to
|
||||
UNIX-like systems such as QNX and Minix and to non-UNIX systems such
|
||||
as OS/2, Windows 95, and Windows NT are available.
|
||||
|
||||
Bash includes the following features:
|
||||
|
||||
Editing and Completion
|
||||
|
||||
Bash offers a command-line editing facility which permits users to
|
||||
edit command lines using familiar emacs or vi-style editing commands.
|
||||
Editing allows corrections to be made without having to erase back
|
||||
to the point of error or start the command line anew. The editing
|
||||
facilities include a feature that allows users to complete command and
|
||||
file names.
|
||||
|
||||
The Bash line editing library is fully customizable. Users may define
|
||||
their own key bindings -- the action taken when a key is pressed. A
|
||||
number of variables to fine-tune editing behavior are also available.
|
||||
|
||||
History and Command Re-entry
|
||||
|
||||
The Bash history feature remembers commands entered to the shell and
|
||||
allows them to be recalled and re-executed. The history list may be
|
||||
of unlimited size. Bash allows users to search for previous commands
|
||||
and reuse portions of those commands when composing new ones. The
|
||||
history list may be saved across shell sessions.
|
||||
|
||||
Bash allows users to control which commands are saved on the history
|
||||
list.
|
||||
|
||||
Job Control
|
||||
|
||||
On systems that support it, Bash provides an interface to the
|
||||
operating system's job control facilities, which allow processes
|
||||
to be suspended and restarted, and moved between the foreground
|
||||
and background. Bash allows users to selectively `forget' about
|
||||
background jobs.
|
||||
|
||||
Shell Functions and Aliases
|
||||
|
||||
These mechanisms are available to bind a user-selected identifier to a
|
||||
list of commands that will be executed when the identifier is used as
|
||||
a command name. Functions allow local variables and recursion, and
|
||||
have access to the environment of the calling shell. Aliases may be
|
||||
used to create a mnemonic for a command name, expand a single word to
|
||||
a complex command, or ensure that a command is called with a basic set
|
||||
of options.
|
||||
|
||||
Arrays
|
||||
|
||||
Bash-2.0 supports indexed arrays of unlimited size. The subscript for
|
||||
an array is an arithmetic expression. Arrays may be assigned to with
|
||||
a new compound assignment syntax, and several builtins have options to
|
||||
operate on array variables. Bash includes a number of built-in array
|
||||
variables.
|
||||
|
||||
Arithmetic
|
||||
|
||||
Bash allows users to perform integer arithmetic in any base from two
|
||||
to sixty-four. Nearly all of the C language arithmetic operators are
|
||||
available with the same syntax and precedence as in C. Arithmetic
|
||||
expansion allows an arithmetic expression to be evaluated and the
|
||||
result substituted into the command line. Shell variables can be used
|
||||
as operands, and the value of an expression may be assigned to a
|
||||
variable.
|
||||
|
||||
An arithmetic expression may be used as a command; the exit status of
|
||||
the command is the value of the expression.
|
||||
|
||||
ANSI-C Quoting
|
||||
|
||||
There is a new quoting syntax that allows backslash-escaped characters
|
||||
in strings to be expanded according to the ANSI C standard.
|
||||
|
||||
Tilde Expansion
|
||||
|
||||
Users' home directories may be expanded using this feature. Words
|
||||
beginning with a tilde may also be expanded to the current or previous
|
||||
working directory.
|
||||
|
||||
Brace Expansion
|
||||
|
||||
Brace expansion is a convenient way to generate a list of strings that
|
||||
share a common prefix or suffix.
|
||||
|
||||
Substring Capabilities
|
||||
|
||||
Bash allows new strings to be created by removing leading or trailing
|
||||
substrings from existing variable values, or by specifying a starting
|
||||
offset and length. Portions of variable values may be matched against
|
||||
shell patterns and the matching portion removed or a new value
|
||||
substituted.
|
||||
|
||||
Indirect Variable Expansion
|
||||
|
||||
Bash makes it easy to find the value of a shell variable whose name is
|
||||
the value of another variable.
|
||||
|
||||
Expanded I/O Capabilities
|
||||
|
||||
Bash provides several input and output features not available in sh,
|
||||
including the ability to:
|
||||
|
||||
o specify a file or file descriptor for both input and output
|
||||
o read from or write to asynchronous processes using named pipes
|
||||
o read lines ending in backslash
|
||||
o display a prompt on the terminal before a read
|
||||
o format menus and interpret responses to them
|
||||
o echo lines exactly as input without escape processing
|
||||
|
||||
Control of Builtin Commands
|
||||
|
||||
Bash implements several builtin commands to give users more control
|
||||
over which commands are executed. The enable builtin allows other
|
||||
builtin commands to be selectively enabled or disabled. The command
|
||||
and builtin builtins change the order in which the shell searches for
|
||||
commands.
|
||||
|
||||
On systems that provide dynamic loading, new builtins may be loaded
|
||||
into a running shell from a shared object file. These new builtins
|
||||
have access to all of the shell facilities.
|
||||
|
||||
Help
|
||||
|
||||
Bash includes a built-in help facility.
|
||||
|
||||
Shell Optional Behavior
|
||||
|
||||
There is a great deal of customizable shell behavior. The shopt
|
||||
builtin command provides a unified interface that allows users to
|
||||
alter shell defaults.
|
||||
|
||||
Prompt Customization
|
||||
|
||||
Bash allows the primary and secondary prompts to be customized by
|
||||
interpreting a number of backslash-escaped special characters.
|
||||
Parameter and variable expansion is also performed on the values of
|
||||
the primary and secondary prompt strings before they are displayed.
|
||||
|
||||
Security
|
||||
|
||||
Bash provides a restricted shell environment. It is also possible to
|
||||
control the execution of setuid/setgid scripts.
|
||||
|
||||
Directory Stack
|
||||
|
||||
Bash provides a `directory stack', to which directories may be added
|
||||
and removed. The current directory may be changed to any directory in
|
||||
the stack. It is easy to toggle between two directories in the stack.
|
||||
The directory stack may be saved and restored across different shell
|
||||
invocations.
|
||||
|
||||
POSIX Mode
|
||||
|
||||
Bash is nearly completely conformant to POSIX.2. POSIX mode changes
|
||||
those few areas where the Bash default behavior differs from the
|
||||
standard to match the standard. In POSIX mode, Bash is POSIX.2
|
||||
compliant.
|
||||
|
||||
Internationalization
|
||||
|
||||
Bash provides a new quoting syntax that allows strings to be
|
||||
translated according to the current locale. The locale in which the
|
||||
shell itself runs may also be changed, so that the shell messages
|
||||
themselves may be language-specific.
|
||||
|
||||
The command-line editing facilities allow the input of eight-bit
|
||||
characters, so most of the ISO-8859 family of character sets are
|
||||
supported.
|
||||
|
||||
Command Timing
|
||||
|
||||
Bash allows external commands, shell builtin commands and shell functions
|
||||
to be timed. The format used to display the timing information may be
|
||||
changed by the user.
|
||||
2574
OGP64/usr/share/doc/bash/NEWS
Normal file
2574
OGP64/usr/share/doc/bash/NEWS
Normal file
File diff suppressed because it is too large
Load diff
352
OGP64/usr/share/doc/bash/NOTES
Normal file
352
OGP64/usr/share/doc/bash/NOTES
Normal file
|
|
@ -0,0 +1,352 @@
|
|||
Platform-Specific Configuration and Operation Notes [very dated]
|
||||
====================================================================
|
||||
|
||||
1. configure --without-gnu-malloc on:
|
||||
|
||||
alpha running OSF/1, Linux, or NetBSD (malloc needs 8-byte alignment;
|
||||
bash malloc has 8-byte alignment now, but I have no alphas to test on)
|
||||
|
||||
next running NeXT/OS; machines running Openstep
|
||||
|
||||
all machines running SunOS YP code: SunOS4, SunOS5, HP/UX, if you
|
||||
have problems with username completion or tilde expansion for
|
||||
usernames found via YP/NIS
|
||||
|
||||
linux (optional, but don't do it if you're using Doug Lea's malloc)
|
||||
|
||||
QNX 4.2
|
||||
other OSF/1 machines (KSR/1, HP, IBM AIX/ESA)
|
||||
AIX
|
||||
sparc SVR4, SVR4.2 (ICL reference port)
|
||||
DG/UX
|
||||
Cray
|
||||
Haiku OS
|
||||
|
||||
NetBSD/sparc (malloc needs 8-byte alignment; bash malloc has 8-byte
|
||||
alignment now, but I have no NetBSD machines to test on)
|
||||
|
||||
BSD/OS 2.1, 3.x if you want to use loadable builtins
|
||||
|
||||
Motorola m68k machines running System V.3. There is a file descriptor
|
||||
leak caused by using the bash malloc because closedir(3) needs to read
|
||||
freed memory to find the file descriptor to close
|
||||
|
||||
2. Configure using shlicc2 on BSD/OS 2.1 and BSD/OS 3.x to use loadable
|
||||
builtins
|
||||
|
||||
3. Bash cannot be built in a directory separate from the source directory
|
||||
using configure --srcdir=... unless the version of `make' you're using
|
||||
does $VPATH handling right. The script support/mkclone can be used to
|
||||
create a `build tree' using symlinks to get around this.
|
||||
|
||||
4. I've had reports that username completion (as well as tilde expansion
|
||||
and \u prompt expansion) does not work on IRIX 5.3 when linking with
|
||||
-lnsl. This is only a problem when you're running NIS, since
|
||||
apparently -lnsl supports only /etc/passwd and not the NIS functions
|
||||
for retrieving usernames and passwords. Editing the Makefile after
|
||||
configure runs and removing the `-lnsl' from the assignment to `LIBS'
|
||||
fixes the problem.
|
||||
|
||||
5. There is a problem with the `makewhatis' script in older (pre-7.0)
|
||||
versions of Red Hat Linux. Running `makewhatis' with bash-2.0 or
|
||||
later versions results in error messages like this:
|
||||
|
||||
/usr/sbin/makewhatis: cd: manpath: No such file or directory
|
||||
/usr/sbin/makewhatis: manpath/whatis: No such file or directory
|
||||
chmod: manpath/whatis: No such file or directory
|
||||
/usr/sbin/makewhatis: cd: catpath: No such file or directory
|
||||
/usr/sbin/makewhatis: catpath/whatis: No such file or directory
|
||||
chmod: catpath/whatis: No such file or directory
|
||||
|
||||
The problem is with `makewhatis'. Red Hat (and possibly other
|
||||
Linux distributors) uses a construct like this in the code:
|
||||
|
||||
eval path=$"$pages"path
|
||||
|
||||
to do indirect variable expansion. This `happened to work' in
|
||||
bash-1.14 and previous versions, but that was more an accident
|
||||
of implementation than anything else -- it was never supported
|
||||
and certainly is not portable.
|
||||
|
||||
Bash-2.0 has a new feature that gives a new meaning to $"...".
|
||||
This is explained more completely in item 1 in the COMPAT file.
|
||||
|
||||
The three lines in the `makewhatis' script that need to be changed
|
||||
look like this:
|
||||
|
||||
eval $topath=$"$topath":$name
|
||||
[...]
|
||||
eval path=$"$pages"path
|
||||
[...]
|
||||
eval path=$"$pages"path
|
||||
|
||||
The portable way to write this code is
|
||||
|
||||
eval $topath="\$$topath":$name
|
||||
eval path="\$$pages"path
|
||||
eval path="\$$pages"path
|
||||
|
||||
You could also experiment with another new bash feature: ${!var}.
|
||||
This does indirect variable expansion, making the use of eval
|
||||
unnecessary.
|
||||
|
||||
6. There is a problem with syslogd on many Linux distributions (Red Hat
|
||||
and Slackware are two that I have received reports about). syslogd
|
||||
sends a SIGINT to its parent process, which is waiting for the daemon
|
||||
to finish its initialization. The parent process then dies due to
|
||||
the SIGINT, and bash reports it, causing unexpected console output
|
||||
while the system is booting that looks something like
|
||||
|
||||
starting daemons: syslogd/etc/rc.d/rc.M: line 29: 38 Interrupt ${NET}/syslogd
|
||||
|
||||
Bash-2.0 reports events such as processes dying in scripts due to
|
||||
signals when the standard output is a tty. Bash-1.14.x and previous
|
||||
versions did not report such events.
|
||||
|
||||
This should probably be reported as a bug to whatever Linux distributor
|
||||
people see the problem on. In my opinion, syslogd should be changed to
|
||||
use some other method of communication, or the wrapper function (which
|
||||
appeared to be `daemon' when I looked at it some time ago) or script
|
||||
(which appeared to be `syslog') should catch SIGINT, since it's an
|
||||
expected event, and exit cleanly.
|
||||
|
||||
7. Several people have reported that `dip' (a program for SLIP/PPP
|
||||
on Linux) does not work with bash-2.0 installed as /bin/sh.
|
||||
|
||||
I don't run any Linux boxes myself, and do not have the dip
|
||||
code handy to look at, but the `problem' with bash-2.0, as
|
||||
it has been related to me, is that bash requires the `-p'
|
||||
option to be supplied at invocation if it is to run setuid
|
||||
or setgid.
|
||||
|
||||
This means, among other things, that setuid or setgid programs
|
||||
which call system(3) (a horrendously bad practice in any case)
|
||||
relinquish their setuid/setgid status in the child that's forked
|
||||
to execute /bin/sh.
|
||||
|
||||
The following is an *unofficial* patch to bash-2.0 that causes it
|
||||
to not require `-p' to run setuid or setgid if invoked as `sh'.
|
||||
It has been reported to work on Linux. It will make your system
|
||||
vulnerable to bogus system(3) calls in setuid executables.
|
||||
|
||||
--- ../bash-2.0.orig/shell.c Wed Dec 18 14:16:30 1996
|
||||
+++ shell.c Fri Mar 7 13:12:03 1997
|
||||
@@ -347,7 +347,7 @@
|
||||
if (posixly_correct)
|
||||
posix_initialize (posixly_correct);
|
||||
|
||||
- if (running_setuid && privileged_mode == 0)
|
||||
+ if (running_setuid && privileged_mode == 0 && act_like_sh == 0)
|
||||
disable_priv_mode ();
|
||||
|
||||
/* Need to get the argument to a -c option processed in the
|
||||
|
||||
8. Some people have asked about binding all of the keys in a PC-keyboard-
|
||||
style numeric keypad to readline functions. Here's something I
|
||||
received from the gnu-win32 list that may help. Insert the following
|
||||
lines into ~/.inputrc:
|
||||
|
||||
# home key
|
||||
"\e[1~":beginning-of-line
|
||||
# insert key
|
||||
"\e[2~":kill-whole-line
|
||||
# del key
|
||||
"\e[3~":delete-char
|
||||
# end key
|
||||
"\e[4~":end-of-line
|
||||
# pgup key
|
||||
"\e[5~":history-search-forward
|
||||
# pgdn key
|
||||
"\e[6~":history-search-backward
|
||||
|
||||
9. Hints for building under Minix 2.0 (Contributed by Terry R. McConnell,
|
||||
<tmc@barnyard.syr.edu>)
|
||||
|
||||
The version of /bin/sh distributed with Minix is not up to the job of
|
||||
running the configure script. The easiest solution is to swap /bin/sh
|
||||
with /usr/bin/ash. Then use chmem(1) to increase the memory allocated
|
||||
to /bin/sh. The following settings are known to work:
|
||||
|
||||
text data bss stack memory
|
||||
63552 9440 3304 65536 141832 /bin/sh
|
||||
|
||||
If you have problems with make or yacc it may be worthwhile first to
|
||||
install the GNU versions of these utilities before attempting to build
|
||||
bash. (As of this writing, all of these utilities are available for the
|
||||
i386 as pre-built binaries via anonymous ftp at math.syr.edu in the
|
||||
pub/mcconnell/minix directory. Note that the GNU version of yacc is called
|
||||
bison.)
|
||||
|
||||
Unless you want to see lots of warnings about old-style declarations,
|
||||
do LOCAL_CFLAGS=-wo; export LOCAL_CFLAGS before running configure.
|
||||
(These warnings are harmless, but annoying.)
|
||||
|
||||
configure will insist that you supply a host type. For example, do
|
||||
./configure --host=i386-pc-minix.
|
||||
|
||||
Minix does not support the system calls required for a proper
|
||||
implementation of ulimit(). The `ulimit' builtin will not be available.
|
||||
|
||||
Configure will fail to notice that many things like uid_t are indeed
|
||||
typedef'd in <sys/types.h>, because it uses egrep for this purpose
|
||||
and minix has no egrep. You could try making a link /usr/bin/egrep -->
|
||||
/usr/bin/grep. Better is to install the GNU version of grep in
|
||||
/usr/local/bin and make the link /usr/local/bin/egrep -->/usr/local/bin/grep.
|
||||
(These must be hard links, of course, since Minix does not support
|
||||
symbolic links.)
|
||||
|
||||
You will see many warnings of the form:
|
||||
warning: unknown s_type: 98
|
||||
I have no idea what this means, but it doesn't seem to matter.
|
||||
|
||||
10. If you do not have /usr/ccs/bin in your PATH when building on SunOS 5.x
|
||||
(Solaris 2), the configure script will be unable to find `ar' and
|
||||
`ranlib' (of course, ranlib is unnecessary). Make sure your $PATH
|
||||
includes /usr/ccs/bin on SunOS 5.x. This generally manifests itself
|
||||
with libraries not being built and make reporting errors like
|
||||
`cr: not found' when library construction is attempted.
|
||||
|
||||
11. Building a statically-linked bash on Solaris 2.5.x, 2.6, 7, or 8 is
|
||||
complicated.
|
||||
|
||||
It's not possible to build a completely statically-linked binary, since
|
||||
part of the C library depends on dynamic linking. The following recipe
|
||||
assumes that you're using gcc and the Solaris ld (/usr/ccs/bin/ld) on
|
||||
Solaris 2.5.x or 2.6:
|
||||
|
||||
configure --enable-static-link
|
||||
make STATIC_LD= LOCAL_LIBS='-Wl,-B,dynamic -ldl -Wl,-B,static'
|
||||
|
||||
This should result in a bash binary that depends only on libdl.so:
|
||||
|
||||
thor(2)$ ldd bash
|
||||
libdl.so.1 => /usr/lib/libdl.so.1
|
||||
|
||||
If you're using the Sun C Compiler (Sun WorkShop C Compiler version
|
||||
4.2 was what I used), you should be able to get away with using
|
||||
|
||||
configure --enable-static-link
|
||||
make STATIC_LD= LOCAL_LIBS='-B dynamic -ldl -B static'
|
||||
|
||||
If you want to completely remove any dependence on /usr, perhaps
|
||||
to put a copy of bash in /sbin and have it available when /usr is
|
||||
not mounted, force the build process to use the shared dl.so library
|
||||
in /etc/lib.
|
||||
|
||||
For gcc, this would be something like
|
||||
|
||||
configure --enable-static-link
|
||||
make STATIC_LD= LOCAL_LIBS='-Wl,-B,dynamic -Wl,-R/etc/lib -ldl -Wl,-B,static'
|
||||
|
||||
For Sun's WS4.2 cc
|
||||
|
||||
configure --enable-static-link
|
||||
make STATIC_LD= LOCAL_LIBS='-B dynamic -R/etc/lib -ldl -B static'
|
||||
|
||||
seems to work, at least on Solaris 2.5.1:
|
||||
|
||||
thor(2)$ ldd bash
|
||||
libdl.so.1 => /etc/lib/libdl.so.1
|
||||
|
||||
On Solaris 7 (Solaris 8, using the version of gcc on the free software
|
||||
CD-ROM), the following recipe appears to work for gcc:
|
||||
|
||||
configure --enable-static-link
|
||||
make STATIC_LD='-Wl,-Bstatic' LOCAL_LIBS='-Wl,-Bdynamic -Wl,-R/etc/lib -ldl -Wl,-Bstatic'
|
||||
|
||||
thor.ins.cwru.edu(2)$ ldd bash
|
||||
libdl.so.1 => /etc/lib/libdl.so.1
|
||||
|
||||
Make the analogous changes if you are running Sun's C Compiler.
|
||||
|
||||
I have received word that adding -L/etc/lib (or the equivalent
|
||||
-Wl,-L/etc/lib) might also be necessary, in addition to the -R/etc/lib.
|
||||
|
||||
On later versions of Solaris, it may be necessary to add -lnsl before
|
||||
-ldl; statically-linked versions of bash using libnsl are not guaranteed
|
||||
to work correctly on future versions of Solaris.
|
||||
|
||||
12. Configuring bash to build it in a cross environment. Currently only
|
||||
two native versions can be compiled this way, cygwin32 and x86 BeOS.
|
||||
For BeOS, you would configure it like this:
|
||||
|
||||
export RANLIB=i586-beos-ranlib
|
||||
export AR=i586-beos-ar
|
||||
export CC=i586-beos-gcc
|
||||
configure i586-beos
|
||||
|
||||
Similarly for cygwin32.
|
||||
|
||||
13. Bash-2.05 has reverted to the bash-2.03 behavior of honoring the current
|
||||
locale setting when processing ranges within pattern matching bracket
|
||||
expressions ([A-Z]). This is what POSIX.2 and SUSv2 specify.
|
||||
|
||||
The behavior of the matcher in bash-2.05 depends on the current LC_COLLATE
|
||||
setting. Setting this variable to `C' or `POSIX' will result in the
|
||||
traditional behavior ([A-Z] matches all uppercase ASCII characters).
|
||||
Many other locales, including the en_US locale (the default on many US
|
||||
versions of Linux) collate the upper and lower case letters like this:
|
||||
|
||||
AaBb...Zz
|
||||
|
||||
which means that [A-Z] matches every letter except `z'.
|
||||
|
||||
The portable way to specify upper case letters is [:upper:] instead of
|
||||
A-Z; lower case may be specified as [:lower:] instead of a-z.
|
||||
|
||||
Look at the manual pages for setlocale(3), strcoll(3), and, if it is
|
||||
present, locale(1). If you have locale(1), you can use it to find
|
||||
your current locale information even if you do not have any of the
|
||||
LC_ variables set.
|
||||
|
||||
My advice is to put
|
||||
|
||||
export LC_COLLATE=C
|
||||
|
||||
into /etc/profile and inspect any shell scripts run from cron for
|
||||
constructs like [A-Z]. This will prevent things like
|
||||
|
||||
rm [A-Z]*
|
||||
|
||||
from removing every file in the current directory except those beginning
|
||||
with `z' and still allow individual users to change the collation order.
|
||||
Users may put the above command into their own profiles as well, of course.
|
||||
|
||||
14. Building on Interix (nee OpenNT), which Microsoft bought from Softway
|
||||
Systems and has seemingly abandoned (thanks to Kevin Moore for this item).
|
||||
|
||||
1. cp cross-build/opennt.cache config.cache
|
||||
|
||||
2. If desired, edit pathnames.h to set the values of SYS_PROFILE and
|
||||
DEFAULT_HOSTS_FILE appropriately.
|
||||
|
||||
3. export CONFIG_SHELL=$INTERIX_ROOT/bin/sh
|
||||
|
||||
4. ./configure --prefix=$INTERIX_ROOT/usr/local (or wherever you
|
||||
want it).
|
||||
|
||||
5. make; make install; enjoy
|
||||
|
||||
15. Configure with `CC=xlc' if you don't have gcc on AIX 4.2 and later
|
||||
versions. `xlc' running in `cc' mode has trouble compiling error.c.
|
||||
|
||||
16. Configure --disable-multibyte on NetBSD versions (1.4 through at least
|
||||
1.6.1) that include wctype.h but do not define wctype_t.
|
||||
|
||||
17. Do NOT use bison-1.75. It builds a non-working parser. The most
|
||||
obvious effect is that constructs like "for i; do echo $i; done" don't
|
||||
loop over the positional parameters.
|
||||
|
||||
18. I have received reports that using -O2 with the MIPSpro results in a
|
||||
binary that fails in strange ways. Using -O1 seems to work.
|
||||
|
||||
19. There is special handling to ensure the shell links against static
|
||||
versions of the included readline and history libraries on Mac OS X;
|
||||
Apple ships inadequate dynamic libreadline and libhistory "replacements"
|
||||
as standard libraries.
|
||||
|
||||
20. If you're on a system like SGI Irix, and you get an error about not
|
||||
being able to refer to a dynamic symbol
|
||||
(ld: non-dynamic relocations refer to dynamic symbol PC), add
|
||||
-DNEED_EXTERN_PC to the LOCAL_CFLAGS variable in lib/readline/Makefile.in
|
||||
and rebuild.
|
||||
264
OGP64/usr/share/doc/bash/POSIX
Normal file
264
OGP64/usr/share/doc/bash/POSIX
Normal file
|
|
@ -0,0 +1,264 @@
|
|||
6.11 Bash POSIX Mode
|
||||
====================
|
||||
|
||||
Starting Bash with the '--posix' command-line option or executing 'set
|
||||
-o posix' while Bash is running will cause Bash to conform more closely
|
||||
to the POSIX standard by changing the behavior to match that specified
|
||||
by POSIX in areas where the Bash default differs.
|
||||
|
||||
When invoked as 'sh', Bash enters POSIX mode after reading the startup
|
||||
files.
|
||||
|
||||
The following list is what's changed when 'POSIX mode' is in effect:
|
||||
|
||||
1. Bash ensures that the 'POSIXLY_CORRECT' variable is set.
|
||||
|
||||
2. When a command in the hash table no longer exists, Bash will
|
||||
re-search '$PATH' to find the new location. This is also available
|
||||
with 'shopt -s checkhash'.
|
||||
|
||||
3. Bash will not insert a command without the execute bit set into the
|
||||
command hash table, even if it returns it as a (last-ditch) result
|
||||
from a '$PATH' search.
|
||||
|
||||
4. The message printed by the job control code and builtins when a job
|
||||
exits with a non-zero status is 'Done(status)'.
|
||||
|
||||
5. The message printed by the job control code and builtins when a job
|
||||
is stopped is 'Stopped(SIGNAME)', where SIGNAME is, for example,
|
||||
'SIGTSTP'.
|
||||
|
||||
6. Alias expansion is always enabled, even in non-interactive shells.
|
||||
|
||||
7. Reserved words appearing in a context where reserved words are
|
||||
recognized do not undergo alias expansion.
|
||||
|
||||
8. Alias expansion is performed when initially parsing a command
|
||||
substitution. The default mode generally defers it, when enabled,
|
||||
until the command substitution is executed. This means that
|
||||
command substitution will not expand aliases that are defined after
|
||||
the command substitution is initially parsed (e.g., as part of a
|
||||
function definition).
|
||||
|
||||
9. The POSIX 'PS1' and 'PS2' expansions of '!' to the history number
|
||||
and '!!' to '!' are enabled, and parameter expansion is performed
|
||||
on the values of 'PS1' and 'PS2' regardless of the setting of the
|
||||
'promptvars' option.
|
||||
|
||||
10. The POSIX startup files are executed ('$ENV') rather than the
|
||||
normal Bash files.
|
||||
|
||||
11. Tilde expansion is only performed on assignments preceding a
|
||||
command name, rather than on all assignment statements on the line.
|
||||
|
||||
12. The default history file is '~/.sh_history' (this is the default
|
||||
value of '$HISTFILE').
|
||||
|
||||
13. Redirection operators do not perform filename expansion on the
|
||||
word in the redirection unless the shell is interactive.
|
||||
|
||||
14. Redirection operators do not perform word splitting on the word in
|
||||
the redirection.
|
||||
|
||||
15. Function names must be valid shell 'name's. That is, they may not
|
||||
contain characters other than letters, digits, and underscores, and
|
||||
may not start with a digit. Declaring a function with an invalid
|
||||
name causes a fatal syntax error in non-interactive shells.
|
||||
|
||||
16. Function names may not be the same as one of the POSIX special
|
||||
builtins.
|
||||
|
||||
17. POSIX special builtins are found before shell functions during
|
||||
command lookup.
|
||||
|
||||
18. When printing shell function definitions (e.g., by 'type'), Bash
|
||||
does not print the 'function' keyword.
|
||||
|
||||
19. Literal tildes that appear as the first character in elements of
|
||||
the 'PATH' variable are not expanded as described above under *note
|
||||
Tilde Expansion::.
|
||||
|
||||
20. The 'time' reserved word may be used by itself as a command. When
|
||||
used in this way, it displays timing statistics for the shell and
|
||||
its completed children. The 'TIMEFORMAT' variable controls the
|
||||
format of the timing information.
|
||||
|
||||
21. When parsing and expanding a ${...} expansion that appears within
|
||||
double quotes, single quotes are no longer special and cannot be
|
||||
used to quote a closing brace or other special character, unless
|
||||
the operator is one of those defined to perform pattern removal.
|
||||
In this case, they do not have to appear as matched pairs.
|
||||
|
||||
22. The parser does not recognize 'time' as a reserved word if the
|
||||
next token begins with a '-'.
|
||||
|
||||
23. The '!' character does not introduce history expansion within a
|
||||
double-quoted string, even if the 'histexpand' option is enabled.
|
||||
|
||||
24. If a POSIX special builtin returns an error status, a
|
||||
non-interactive shell exits. The fatal errors are those listed in
|
||||
the POSIX standard, and include things like passing incorrect
|
||||
options, redirection errors, variable assignment errors for
|
||||
assignments preceding the command name, and so on.
|
||||
|
||||
25. A non-interactive shell exits with an error status if a variable
|
||||
assignment error occurs when no command name follows the assignment
|
||||
statements. A variable assignment error occurs, for example, when
|
||||
trying to assign a value to a readonly variable.
|
||||
|
||||
26. A non-interactive shell exits with an error status if a variable
|
||||
assignment error occurs in an assignment statement preceding a
|
||||
special builtin, but not with any other simple command. For any
|
||||
other simple command, the shell aborts execution of that command,
|
||||
and execution continues at the top level ("the shell shall not
|
||||
perform any further processing of the command in which the error
|
||||
occurred").
|
||||
|
||||
27. A non-interactive shell exits with an error status if the
|
||||
iteration variable in a 'for' statement or the selection variable
|
||||
in a 'select' statement is a readonly variable.
|
||||
|
||||
28. Non-interactive shells exit if FILENAME in '.' FILENAME is not
|
||||
found.
|
||||
|
||||
29. Non-interactive shells exit if a syntax error in an arithmetic
|
||||
expansion results in an invalid expression.
|
||||
|
||||
30. Non-interactive shells exit if a parameter expansion error occurs.
|
||||
|
||||
31. Non-interactive shells exit if there is a syntax error in a script
|
||||
read with the '.' or 'source' builtins, or in a string processed by
|
||||
the 'eval' builtin.
|
||||
|
||||
32. While variable indirection is available, it may not be applied to
|
||||
the '#' and '?' special parameters.
|
||||
|
||||
33. Expanding the '*' special parameter in a pattern context where the
|
||||
expansion is double-quoted does not treat the '$*' as if it were
|
||||
double-quoted.
|
||||
|
||||
34. Assignment statements preceding POSIX special builtins persist in
|
||||
the shell environment after the builtin completes.
|
||||
|
||||
35. The 'command' builtin does not prevent builtins that take
|
||||
assignment statements as arguments from expanding them as
|
||||
assignment statements; when not in POSIX mode, assignment builtins
|
||||
lose their assignment statement expansion properties when preceded
|
||||
by 'command'.
|
||||
|
||||
36. The 'bg' builtin uses the required format to describe each job
|
||||
placed in the background, which does not include an indication of
|
||||
whether the job is the current or previous job.
|
||||
|
||||
37. The output of 'kill -l' prints all the signal names on a single
|
||||
line, separated by spaces, without the 'SIG' prefix.
|
||||
|
||||
38. The 'kill' builtin does not accept signal names with a 'SIG'
|
||||
prefix.
|
||||
|
||||
39. The 'export' and 'readonly' builtin commands display their output
|
||||
in the format required by POSIX.
|
||||
|
||||
40. The 'trap' builtin displays signal names without the leading
|
||||
'SIG'.
|
||||
|
||||
41. The 'trap' builtin doesn't check the first argument for a possible
|
||||
signal specification and revert the signal handling to the original
|
||||
disposition if it is, unless that argument consists solely of
|
||||
digits and is a valid signal number. If users want to reset the
|
||||
handler for a given signal to the original disposition, they should
|
||||
use '-' as the first argument.
|
||||
|
||||
42. 'trap -p' displays signals whose dispositions are set to SIG_DFL
|
||||
and those that were ignored when the shell started.
|
||||
|
||||
43. The '.' and 'source' builtins do not search the current directory
|
||||
for the filename argument if it is not found by searching 'PATH'.
|
||||
|
||||
44. Enabling POSIX mode has the effect of setting the
|
||||
'inherit_errexit' option, so subshells spawned to execute command
|
||||
substitutions inherit the value of the '-e' option from the parent
|
||||
shell. When the 'inherit_errexit' option is not enabled, Bash
|
||||
clears the '-e' option in such subshells.
|
||||
|
||||
45. Enabling POSIX mode has the effect of setting the 'shift_verbose'
|
||||
option, so numeric arguments to 'shift' that exceed the number of
|
||||
positional parameters will result in an error message.
|
||||
|
||||
46. When the 'alias' builtin displays alias definitions, it does not
|
||||
display them with a leading 'alias ' unless the '-p' option is
|
||||
supplied.
|
||||
|
||||
47. When the 'set' builtin is invoked without options, it does not
|
||||
display shell function names and definitions.
|
||||
|
||||
48. When the 'set' builtin is invoked without options, it displays
|
||||
variable values without quotes, unless they contain shell
|
||||
metacharacters, even if the result contains nonprinting characters.
|
||||
|
||||
49. When the 'cd' builtin is invoked in logical mode, and the pathname
|
||||
constructed from '$PWD' and the directory name supplied as an
|
||||
argument does not refer to an existing directory, 'cd' will fail
|
||||
instead of falling back to physical mode.
|
||||
|
||||
50. When the 'cd' builtin cannot change a directory because the length
|
||||
of the pathname constructed from '$PWD' and the directory name
|
||||
supplied as an argument exceeds 'PATH_MAX' when all symbolic links
|
||||
are expanded, 'cd' will fail instead of attempting to use only the
|
||||
supplied directory name.
|
||||
|
||||
51. The 'pwd' builtin verifies that the value it prints is the same as
|
||||
the current directory, even if it is not asked to check the file
|
||||
system with the '-P' option.
|
||||
|
||||
52. When listing the history, the 'fc' builtin does not include an
|
||||
indication of whether or not a history entry has been modified.
|
||||
|
||||
53. The default editor used by 'fc' is 'ed'.
|
||||
|
||||
54. The 'type' and 'command' builtins will not report a non-executable
|
||||
file as having been found, though the shell will attempt to execute
|
||||
such a file if it is the only so-named file found in '$PATH'.
|
||||
|
||||
55. The 'vi' editing mode will invoke the 'vi' editor directly when
|
||||
the 'v' command is run, instead of checking '$VISUAL' and
|
||||
'$EDITOR'.
|
||||
|
||||
56. When the 'xpg_echo' option is enabled, Bash does not attempt to
|
||||
interpret any arguments to 'echo' as options. Each argument is
|
||||
displayed, after escape characters are converted.
|
||||
|
||||
57. The 'ulimit' builtin uses a block size of 512 bytes for the '-c'
|
||||
and '-f' options.
|
||||
|
||||
58. The arrival of 'SIGCHLD' when a trap is set on 'SIGCHLD' does not
|
||||
interrupt the 'wait' builtin and cause it to return immediately.
|
||||
The trap command is run once for each child that exits.
|
||||
|
||||
59. The 'read' builtin may be interrupted by a signal for which a trap
|
||||
has been set. If Bash receives a trapped signal while executing
|
||||
'read', the trap handler executes and 'read' returns an exit status
|
||||
greater than 128.
|
||||
|
||||
60. The 'printf' builtin uses 'double' (via 'strtod') to convert
|
||||
arguments corresponding to floating point conversion specifiers,
|
||||
instead of 'long double' if it's available. The 'L' length
|
||||
modifier forces 'printf' to use 'long double' if it's available.
|
||||
|
||||
61. Bash removes an exited background process's status from the list
|
||||
of such statuses after the 'wait' builtin is used to obtain it.
|
||||
|
||||
There is other POSIX behavior that Bash does not implement by default
|
||||
even when in POSIX mode. Specifically:
|
||||
|
||||
1. The 'fc' builtin checks '$EDITOR' as a program to edit history
|
||||
entries if 'FCEDIT' is unset, rather than defaulting directly to
|
||||
'ed'. 'fc' uses 'ed' if 'EDITOR' is unset.
|
||||
|
||||
2. As noted above, Bash requires the 'xpg_echo' option to be enabled
|
||||
for the 'echo' builtin to be fully conformant.
|
||||
|
||||
Bash can be configured to be POSIX-conformant by default, by specifying
|
||||
the '--enable-strict-posix-default' to 'configure' when building (*note
|
||||
Optional Features::).
|
||||
|
||||
52
OGP64/usr/share/doc/bash/RBASH
Normal file
52
OGP64/usr/share/doc/bash/RBASH
Normal file
|
|
@ -0,0 +1,52 @@
|
|||
6.10 The Restricted Shell
|
||||
=========================
|
||||
|
||||
If Bash is started with the name 'rbash', or the '--restricted' or '-r'
|
||||
option is supplied at invocation, the shell becomes restricted. A
|
||||
restricted shell is used to set up an environment more controlled than
|
||||
the standard shell. A restricted shell behaves identically to 'bash'
|
||||
with the exception that the following are disallowed or not performed:
|
||||
|
||||
* Changing directories with the 'cd' builtin.
|
||||
* Setting or unsetting the values of the 'SHELL', 'PATH', 'HISTFILE',
|
||||
'ENV', or 'BASH_ENV' variables.
|
||||
* Specifying command names containing slashes.
|
||||
* Specifying a filename containing a slash as an argument to the '.'
|
||||
builtin command.
|
||||
* Specifying a filename containing a slash as an argument to the
|
||||
'history' builtin command.
|
||||
* Specifying a filename containing a slash as an argument to the '-p'
|
||||
option to the 'hash' builtin command.
|
||||
* Importing function definitions from the shell environment at
|
||||
startup.
|
||||
* Parsing the value of 'SHELLOPTS' from the shell environment at
|
||||
startup.
|
||||
* Redirecting output using the '>', '>|', '<>', '>&', '&>', and '>>'
|
||||
redirection operators.
|
||||
* Using the 'exec' builtin to replace the shell with another command.
|
||||
* Adding or deleting builtin commands with the '-f' and '-d' options
|
||||
to the 'enable' builtin.
|
||||
* Using the 'enable' builtin command to enable disabled shell
|
||||
builtins.
|
||||
* Specifying the '-p' option to the 'command' builtin.
|
||||
* Turning off restricted mode with 'set +r' or 'shopt -u
|
||||
restricted_shell'.
|
||||
|
||||
These restrictions are enforced after any startup files are read.
|
||||
|
||||
When a command that is found to be a shell script is executed (*note
|
||||
Shell Scripts::), 'rbash' turns off any restrictions in the shell
|
||||
spawned to execute the script.
|
||||
|
||||
The restricted shell mode is only one component of a useful restricted
|
||||
environment. It should be accompanied by setting 'PATH' to a value that
|
||||
allows execution of only a few verified commands (commands that allow
|
||||
shell escapes are particularly vulnerable), changing the current
|
||||
directory to a non-writable directory other than '$HOME' after login,
|
||||
not allowing the restricted shell to execute shell scripts, and cleaning
|
||||
the environment of variables that cause some commands to modify their
|
||||
behavior (e.g., 'VISUAL' or 'PAGER').
|
||||
|
||||
Modern systems provide more secure ways to implement a restricted
|
||||
environment, such as 'jails', 'zones', or 'containers'.
|
||||
|
||||
112
OGP64/usr/share/doc/bash/README
Normal file
112
OGP64/usr/share/doc/bash/README
Normal file
|
|
@ -0,0 +1,112 @@
|
|||
Introduction
|
||||
============
|
||||
|
||||
This is GNU Bash, version 5.2. Bash is the GNU Project's Bourne
|
||||
Again SHell, a complete implementation of the POSIX shell spec,
|
||||
but also with interactive command line editing, job control on
|
||||
architectures that support it, csh-like features such as history
|
||||
substitution and brace expansion, and a slew of other features.
|
||||
For more information on the features of Bash that are new to this
|
||||
type of shell, see the file `doc/bashref.texi'. There is also a
|
||||
large Unix-style man page. The man page is the definitive description
|
||||
of the shell's features.
|
||||
|
||||
See the file POSIX for a discussion of how the Bash defaults differ
|
||||
from the POSIX spec and a description of the Bash `posix mode'.
|
||||
|
||||
There are some user-visible incompatibilities between this version
|
||||
of Bash and previous widely-distributed versions, bash-4.4, bash-5.0,
|
||||
and bash-5.1. For details, see the file COMPAT. The NEWS file tersely
|
||||
lists features that are new in this release.
|
||||
|
||||
Bash is free software, distributed under the terms of the [GNU] General
|
||||
Public License as published by the Free Software Foundation,
|
||||
version 3 of the License (or any later version). For more information,
|
||||
see the file COPYING.
|
||||
|
||||
A number of frequently-asked questions are answered in the file
|
||||
`doc/FAQ'. (That file is no longer updated.)
|
||||
|
||||
To compile Bash, type `./configure', then `make'. Bash auto-configures
|
||||
the build process, so no further intervention should be necessary. Bash
|
||||
builds with `gcc' by default if it is available. If you want to use `cc'
|
||||
instead, type
|
||||
|
||||
CC=cc ./configure
|
||||
|
||||
if you are using a Bourne-style shell. If you are not, the following
|
||||
may work:
|
||||
|
||||
env CC=cc ./configure
|
||||
|
||||
Read the file INSTALL in this directory for more information about how
|
||||
to customize and control the build process. The file NOTES contains
|
||||
platform-specific installation and configuration information.
|
||||
|
||||
If you are a csh user and wish to convert your csh aliases to Bash
|
||||
aliases, you may wish to use the script `examples/misc/alias-conv.sh'
|
||||
as a starting point. The script `examples/misc/cshtobash' is a
|
||||
more ambitious script that attempts to do a more complete job.
|
||||
|
||||
Reporting Bugs
|
||||
==============
|
||||
|
||||
Bug reports for bash should be sent to:
|
||||
|
||||
bug-bash@gnu.org
|
||||
|
||||
using the `bashbug' program that is built and installed at the same
|
||||
time as bash.
|
||||
|
||||
The discussion list `bug-bash@gnu.org' often contains information
|
||||
about new ports of Bash, or discussions of new features or behavior
|
||||
changes that people would like. This mailing list is also available
|
||||
as a usenet newsgroup: gnu.bash.bug.
|
||||
|
||||
When you send a bug report, please use the `bashbug' program that is
|
||||
built at the same time as bash. If bash fails to build, try building
|
||||
bashbug directly with `make bashbug'. If you cannot build `bashbug',
|
||||
please send mail to bug-bash@gnu.org with the following information:
|
||||
|
||||
* the version number and release status of Bash (e.g., 2.05a-release)
|
||||
* the machine and OS that it is running on (you may run
|
||||
`bashversion -l' from the bash build directory for this information)
|
||||
* a list of the compilation flags or the contents of `config.h', if
|
||||
appropriate
|
||||
* a description of the bug
|
||||
* a recipe for recreating the bug reliably
|
||||
* a fix for the bug if you have one!
|
||||
|
||||
The `bashbug' program includes much of this automatically.
|
||||
|
||||
Questions and requests for help with bash and bash programming may be
|
||||
sent to the help-bash@gnu.org mailing list.
|
||||
|
||||
If you would like to contact the Bash maintainers directly, send mail
|
||||
to bash-maintainers@gnu.org.
|
||||
|
||||
While the Bash maintainers do not promise to fix all bugs, we would
|
||||
like this shell to be the best that we can make it.
|
||||
|
||||
Other Packages
|
||||
==============
|
||||
|
||||
This distribution includes, in examples/bash-completion, a recent version
|
||||
of the `bash-completion' package, which provides programmable completions
|
||||
for a number of commands. It's available as a package in many distributions,
|
||||
and that is the first place from which to obtain it.
|
||||
|
||||
The latest version of bash-completion is always available from
|
||||
https://github.com/scop/bash-completion.
|
||||
|
||||
If it's not a package from your vendor, you may install the included version.
|
||||
|
||||
Enjoy!
|
||||
|
||||
Chet Ramey
|
||||
chet.ramey@case.edu
|
||||
|
||||
Copying and distribution of this file, with or without modification,
|
||||
are permitted in any medium without royalty provided the copyright
|
||||
notice and this notice are preserved. This file is offered as-is,
|
||||
without any warranty.
|
||||
14899
OGP64/usr/share/doc/bash/html/bash.html
Normal file
14899
OGP64/usr/share/doc/bash/html/bash.html
Normal file
File diff suppressed because it is too large
Load diff
16033
OGP64/usr/share/doc/bash/html/bashref.html
Normal file
16033
OGP64/usr/share/doc/bash/html/bashref.html
Normal file
File diff suppressed because it is too large
Load diff
356
OGP64/usr/share/doc/bzip2/CHANGES
Normal file
356
OGP64/usr/share/doc/bzip2/CHANGES
Normal file
|
|
@ -0,0 +1,356 @@
|
|||
------------------------------------------------------------------
|
||||
This file is part of bzip2/libbzip2, a program and library for
|
||||
lossless, block-sorting data compression.
|
||||
|
||||
bzip2/libbzip2 version 1.0.8 of 13 July 2019
|
||||
Copyright (C) 1996-2019 Julian Seward <jseward@acm.org>
|
||||
|
||||
Please read the WARNING, DISCLAIMER and PATENTS sections in the
|
||||
README file.
|
||||
|
||||
This program is released under the terms of the license contained
|
||||
in the file LICENSE.
|
||||
------------------------------------------------------------------
|
||||
|
||||
|
||||
0.9.0
|
||||
~~~~~
|
||||
First version.
|
||||
|
||||
|
||||
0.9.0a
|
||||
~~~~~~
|
||||
Removed 'ranlib' from Makefile, since most modern Unix-es
|
||||
don't need it, or even know about it.
|
||||
|
||||
|
||||
0.9.0b
|
||||
~~~~~~
|
||||
Fixed a problem with error reporting in bzip2.c. This does not effect
|
||||
the library in any way. Problem is: versions 0.9.0 and 0.9.0a (of the
|
||||
program proper) compress and decompress correctly, but give misleading
|
||||
error messages (internal panics) when an I/O error occurs, instead of
|
||||
reporting the problem correctly. This shouldn't give any data loss
|
||||
(as far as I can see), but is confusing.
|
||||
|
||||
Made the inline declarations disappear for non-GCC compilers.
|
||||
|
||||
|
||||
0.9.0c
|
||||
~~~~~~
|
||||
Fixed some problems in the library pertaining to some boundary cases.
|
||||
This makes the library behave more correctly in those situations. The
|
||||
fixes apply only to features (calls and parameters) not used by
|
||||
bzip2.c, so the non-fixedness of them in previous versions has no
|
||||
effect on reliability of bzip2.c.
|
||||
|
||||
In bzlib.c:
|
||||
* made zero-length BZ_FLUSH work correctly in bzCompress().
|
||||
* fixed bzWrite/bzRead to ignore zero-length requests.
|
||||
* fixed bzread to correctly handle read requests after EOF.
|
||||
* wrong parameter order in call to bzDecompressInit in
|
||||
bzBuffToBuffDecompress. Fixed.
|
||||
|
||||
In compress.c:
|
||||
* changed setting of nGroups in sendMTFValues() so as to
|
||||
do a bit better on small files. This _does_ effect
|
||||
bzip2.c.
|
||||
|
||||
|
||||
0.9.5a
|
||||
~~~~~~
|
||||
Major change: add a fallback sorting algorithm (blocksort.c)
|
||||
to give reasonable behaviour even for very repetitive inputs.
|
||||
Nuked --repetitive-best and --repetitive-fast since they are
|
||||
no longer useful.
|
||||
|
||||
Minor changes: mostly a whole bunch of small changes/
|
||||
bugfixes in the driver (bzip2.c). Changes pertaining to the
|
||||
user interface are:
|
||||
|
||||
allow decompression of symlink'd files to stdout
|
||||
decompress/test files even without .bz2 extension
|
||||
give more accurate error messages for I/O errors
|
||||
when compressing/decompressing to stdout, don't catch control-C
|
||||
read flags from BZIP2 and BZIP environment variables
|
||||
decline to break hard links to a file unless forced with -f
|
||||
allow -c flag even with no filenames
|
||||
preserve file ownerships as far as possible
|
||||
make -s -1 give the expected block size (100k)
|
||||
add a flag -q --quiet to suppress nonessential warnings
|
||||
stop decoding flags after --, so files beginning in - can be handled
|
||||
resolved inconsistent naming: bzcat or bz2cat ?
|
||||
bzip2 --help now returns 0
|
||||
|
||||
Programming-level changes are:
|
||||
|
||||
fixed syntax error in GET_LL4 for Borland C++ 5.02
|
||||
let bzBuffToBuffDecompress return BZ_DATA_ERROR{_MAGIC}
|
||||
fix overshoot of mode-string end in bzopen_or_bzdopen
|
||||
wrapped bzlib.h in #ifdef __cplusplus ... extern "C" { ... }
|
||||
close file handles under all error conditions
|
||||
added minor mods so it compiles with DJGPP out of the box
|
||||
fixed Makefile so it doesn't give problems with BSD make
|
||||
fix uninitialised memory reads in dlltest.c
|
||||
|
||||
0.9.5b
|
||||
~~~~~~
|
||||
Open stdin/stdout in binary mode for DJGPP.
|
||||
|
||||
0.9.5c
|
||||
~~~~~~
|
||||
Changed BZ_N_OVERSHOOT to be ... + 2 instead of ... + 1. The + 1
|
||||
version could cause the sorted order to be wrong in some extremely
|
||||
obscure cases. Also changed setting of quadrant in blocksort.c.
|
||||
|
||||
0.9.5d
|
||||
~~~~~~
|
||||
The only functional change is to make bzlibVersion() in the library
|
||||
return the correct string. This has no effect whatsoever on the
|
||||
functioning of the bzip2 program or library. Added a couple of casts
|
||||
so the library compiles without warnings at level 3 in MS Visual
|
||||
Studio 6.0. Included a Y2K statement in the file Y2K_INFO. All other
|
||||
changes are minor documentation changes.
|
||||
|
||||
1.0
|
||||
~~~
|
||||
Several minor bugfixes and enhancements:
|
||||
|
||||
* Large file support. The library uses 64-bit counters to
|
||||
count the volume of data passing through it. bzip2.c
|
||||
is now compiled with -D_FILE_OFFSET_BITS=64 to get large
|
||||
file support from the C library. -v correctly prints out
|
||||
file sizes greater than 4 gigabytes. All these changes have
|
||||
been made without assuming a 64-bit platform or a C compiler
|
||||
which supports 64-bit ints, so, except for the C library
|
||||
aspect, they are fully portable.
|
||||
|
||||
* Decompression robustness. The library/program should be
|
||||
robust to any corruption of compressed data, detecting and
|
||||
handling _all_ corruption, instead of merely relying on
|
||||
the CRCs. What this means is that the program should
|
||||
never crash, given corrupted data, and the library should
|
||||
always return BZ_DATA_ERROR.
|
||||
|
||||
* Fixed an obscure race-condition bug only ever observed on
|
||||
Solaris, in which, if you were very unlucky and issued
|
||||
control-C at exactly the wrong time, both input and output
|
||||
files would be deleted.
|
||||
|
||||
* Don't run out of file handles on test/decompression when
|
||||
large numbers of files have invalid magic numbers.
|
||||
|
||||
* Avoid library namespace pollution. Prefix all exported
|
||||
symbols with BZ2_.
|
||||
|
||||
* Minor sorting enhancements from my DCC2000 paper.
|
||||
|
||||
* Advance the version number to 1.0, so as to counteract the
|
||||
(false-in-this-case) impression some people have that programs
|
||||
with version numbers less than 1.0 are in some way, experimental,
|
||||
pre-release versions.
|
||||
|
||||
* Create an initial Makefile-libbz2_so to build a shared library.
|
||||
Yes, I know I should really use libtool et al ...
|
||||
|
||||
* Make the program exit with 2 instead of 0 when decompression
|
||||
fails due to a bad magic number (ie, an invalid bzip2 header).
|
||||
Also exit with 1 (as the manual claims :-) whenever a diagnostic
|
||||
message would have been printed AND the corresponding operation
|
||||
is aborted, for example
|
||||
bzip2: Output file xx already exists.
|
||||
When a diagnostic message is printed but the operation is not
|
||||
aborted, for example
|
||||
bzip2: Can't guess original name for wurble -- using wurble.out
|
||||
then the exit value 0 is returned, unless some other problem is
|
||||
also detected.
|
||||
|
||||
I think it corresponds more closely to what the manual claims now.
|
||||
|
||||
|
||||
1.0.1
|
||||
~~~~~
|
||||
* Modified dlltest.c so it uses the new BZ2_ naming scheme.
|
||||
* Modified makefile-msc to fix minor build probs on Win2k.
|
||||
* Updated README.COMPILATION.PROBLEMS.
|
||||
|
||||
There are no functionality changes or bug fixes relative to version
|
||||
1.0.0. This is just a documentation update + a fix for minor Win32
|
||||
build problems. For almost everyone, upgrading from 1.0.0 to 1.0.1 is
|
||||
utterly pointless. Don't bother.
|
||||
|
||||
|
||||
1.0.2
|
||||
~~~~~
|
||||
A bug fix release, addressing various minor issues which have appeared
|
||||
in the 18 or so months since 1.0.1 was released. Most of the fixes
|
||||
are to do with file-handling or documentation bugs. To the best of my
|
||||
knowledge, there have been no data-loss-causing bugs reported in the
|
||||
compression/decompression engine of 1.0.0 or 1.0.1.
|
||||
|
||||
Note that this release does not improve the rather crude build system
|
||||
for Unix platforms. The general plan here is to autoconfiscate/
|
||||
libtoolise 1.0.2 soon after release, and release the result as 1.1.0
|
||||
or perhaps 1.2.0. That, however, is still just a plan at this point.
|
||||
|
||||
Here are the changes in 1.0.2. Bug-reporters and/or patch-senders in
|
||||
parentheses.
|
||||
|
||||
* Fix an infinite segfault loop in 1.0.1 when a directory is
|
||||
encountered in -f (force) mode.
|
||||
(Trond Eivind Glomsrod, Nicholas Nethercote, Volker Schmidt)
|
||||
|
||||
* Avoid double fclose() of output file on certain I/O error paths.
|
||||
(Solar Designer)
|
||||
|
||||
* Don't fail with internal error 1007 when fed a long stream (> 48MB)
|
||||
of byte 251. Also print useful message suggesting that 1007s may be
|
||||
caused by bad memory.
|
||||
(noticed by Juan Pedro Vallejo, fixed by me)
|
||||
|
||||
* Fix uninitialised variable silly bug in demo prog dlltest.c.
|
||||
(Jorj Bauer)
|
||||
|
||||
* Remove 512-MB limitation on recovered file size for bzip2recover
|
||||
on selected platforms which support 64-bit ints. At the moment
|
||||
all GCC supported platforms, and Win32.
|
||||
(me, Alson van der Meulen)
|
||||
|
||||
* Hard-code header byte values, to give correct operation on platforms
|
||||
using EBCDIC as their native character set (IBM's OS/390).
|
||||
(Leland Lucius)
|
||||
|
||||
* Copy file access times correctly.
|
||||
(Marty Leisner)
|
||||
|
||||
* Add distclean and check targets to Makefile.
|
||||
(Michael Carmack)
|
||||
|
||||
* Parameterise use of ar and ranlib in Makefile. Also add $(LDFLAGS).
|
||||
(Rich Ireland, Bo Thorsen)
|
||||
|
||||
* Pass -p (create parent dirs as needed) to mkdir during make install.
|
||||
(Jeremy Fusco)
|
||||
|
||||
* Dereference symlinks when copying file permissions in -f mode.
|
||||
(Volker Schmidt)
|
||||
|
||||
* Majorly simplify implementation of uInt64_qrm10.
|
||||
(Bo Lindbergh)
|
||||
|
||||
* Check the input file still exists before deleting the output one,
|
||||
when aborting in cleanUpAndFail().
|
||||
(Joerg Prante, Robert Linden, Matthias Krings)
|
||||
|
||||
Also a bunch of patches courtesy of Philippe Troin, the Debian maintainer
|
||||
of bzip2:
|
||||
|
||||
* Wrapper scripts (with manpages): bzdiff, bzgrep, bzmore.
|
||||
|
||||
* Spelling changes and minor enhancements in bzip2.1.
|
||||
|
||||
* Avoid race condition between creating the output file and setting its
|
||||
interim permissions safely, by using fopen_output_safely().
|
||||
No changes to bzip2recover since there is no issue with file
|
||||
permissions there.
|
||||
|
||||
* do not print senseless report with -v when compressing an empty
|
||||
file.
|
||||
|
||||
* bzcat -f works on non-bzip2 files.
|
||||
|
||||
* do not try to escape shell meta-characters on unix (the shell takes
|
||||
care of these).
|
||||
|
||||
* added --fast and --best aliases for -1 -9 for gzip compatibility.
|
||||
|
||||
|
||||
1.0.3 (15 Feb 05)
|
||||
~~~~~~~~~~~~~~~~~
|
||||
Fixes some minor bugs since the last version, 1.0.2.
|
||||
|
||||
* Further robustification against corrupted compressed data.
|
||||
There are currently no known bitstreams which can cause the
|
||||
decompressor to crash, loop or access memory which does not
|
||||
belong to it. If you are using bzip2 or the library to
|
||||
decompress bitstreams from untrusted sources, an upgrade
|
||||
to 1.0.3 is recommended. This fixes CAN-2005-1260.
|
||||
|
||||
* The documentation has been converted to XML, from which html
|
||||
and pdf can be derived.
|
||||
|
||||
* Various minor bugs in the documentation have been fixed.
|
||||
|
||||
* Fixes for various compilation warnings with newer versions of
|
||||
gcc, and on 64-bit platforms.
|
||||
|
||||
* The BZ_NO_STDIO cpp symbol was not properly observed in 1.0.2.
|
||||
This has been fixed.
|
||||
|
||||
|
||||
1.0.4 (20 Dec 06)
|
||||
~~~~~~~~~~~~~~~~~
|
||||
Fixes some minor bugs since the last version, 1.0.3.
|
||||
|
||||
* Fix file permissions race problem (CAN-2005-0953).
|
||||
|
||||
* Avoid possible segfault in BZ2_bzclose. From Coverity's NetBSD
|
||||
scan.
|
||||
|
||||
* 'const'/prototype cleanups in the C code.
|
||||
|
||||
* Change default install location to /usr/local, and handle multiple
|
||||
'make install's without error.
|
||||
|
||||
* Sanitise file names more carefully in bzgrep. Fixes CAN-2005-0758
|
||||
to the extent that applies to bzgrep.
|
||||
|
||||
* Use 'mktemp' rather than 'tempfile' in bzdiff.
|
||||
|
||||
* Tighten up a couple of assertions in blocksort.c following automated
|
||||
analysis.
|
||||
|
||||
* Fix minor doc/comment bugs.
|
||||
|
||||
|
||||
1.0.5 (10 Dec 07)
|
||||
~~~~~~~~~~~~~~~~~
|
||||
Security fix only. Fixes CERT-FI 20469 as it applies to bzip2.
|
||||
|
||||
|
||||
1.0.6 (6 Sept 10)
|
||||
~~~~~~~~~~~~~~~~~
|
||||
|
||||
* Security fix for CVE-2010-0405. This was reported by Mikolaj
|
||||
Izdebski.
|
||||
|
||||
* Make the documentation build on Ubuntu 10.04
|
||||
|
||||
1.0.7 (27 Jun 19)
|
||||
~~~~~~~~~~~~~~~~~
|
||||
|
||||
* Fix undefined behavior in the macros SET_BH, CLEAR_BH, & ISSET_BH
|
||||
|
||||
* bzip2: Fix return value when combining --test,-t and -q.
|
||||
|
||||
* bzip2recover: Fix buffer overflow for large argv[0]
|
||||
|
||||
* bzip2recover: Fix use after free issue with outFile (CVE-2016-3189)
|
||||
|
||||
* Make sure nSelectors is not out of range (CVE-2019-12900)
|
||||
|
||||
1.0.8 (13 Jul 19)
|
||||
~~~~~~~~~~~~~~~~~
|
||||
|
||||
* Accept as many selectors as the file format allows.
|
||||
This relaxes the fix for CVE-2019-12900 from 1.0.7
|
||||
so that bzip2 allows decompression of bz2 files that
|
||||
use (too) many selectors again.
|
||||
|
||||
* Fix handling of large (> 4GB) files on Windows.
|
||||
|
||||
* Cleanup of bzdiff and bzgrep scripts so they don't use
|
||||
any bash extensions and handle multiple archives correctly.
|
||||
|
||||
* There is now a bz2-files testsuite at
|
||||
https://sourceware.org/git/bzip2-tests.git
|
||||
42
OGP64/usr/share/doc/bzip2/LICENSE
Normal file
42
OGP64/usr/share/doc/bzip2/LICENSE
Normal file
|
|
@ -0,0 +1,42 @@
|
|||
|
||||
--------------------------------------------------------------------------
|
||||
|
||||
This program, "bzip2", the associated library "libbzip2", and all
|
||||
documentation, are copyright (C) 1996-2019 Julian R Seward. All
|
||||
rights reserved.
|
||||
|
||||
Redistribution and use in source and binary forms, with or without
|
||||
modification, are permitted provided that the following conditions
|
||||
are met:
|
||||
|
||||
1. Redistributions of source code must retain the above copyright
|
||||
notice, this list of conditions and the following disclaimer.
|
||||
|
||||
2. The origin of this software must not be misrepresented; you must
|
||||
not claim that you wrote the original software. If you use this
|
||||
software in a product, an acknowledgment in the product
|
||||
documentation would be appreciated but is not required.
|
||||
|
||||
3. Altered source versions must be plainly marked as such, and must
|
||||
not be misrepresented as being the original software.
|
||||
|
||||
4. The name of the author may not be used to endorse or promote
|
||||
products derived from this software without specific prior written
|
||||
permission.
|
||||
|
||||
THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS
|
||||
OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
|
||||
WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
|
||||
ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY
|
||||
DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
|
||||
DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE
|
||||
GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
|
||||
INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
|
||||
WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
|
||||
NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
|
||||
SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
||||
|
||||
Julian Seward, jseward@acm.org
|
||||
bzip2/libbzip2 version 1.0.8 of 13 July 2019
|
||||
|
||||
--------------------------------------------------------------------------
|
||||
196
OGP64/usr/share/doc/bzip2/README
Normal file
196
OGP64/usr/share/doc/bzip2/README
Normal file
|
|
@ -0,0 +1,196 @@
|
|||
|
||||
This is the README for bzip2/libzip2.
|
||||
This version is fully compatible with the previous public releases.
|
||||
|
||||
------------------------------------------------------------------
|
||||
This file is part of bzip2/libbzip2, a program and library for
|
||||
lossless, block-sorting data compression.
|
||||
|
||||
bzip2/libbzip2 version 1.0.8 of 13 July 2019
|
||||
Copyright (C) 1996-2019 Julian Seward <jseward@acm.org>
|
||||
|
||||
Please read the WARNING, DISCLAIMER and PATENTS sections in this file.
|
||||
|
||||
This program is released under the terms of the license contained
|
||||
in the file LICENSE.
|
||||
------------------------------------------------------------------
|
||||
|
||||
Complete documentation is available in Postscript form (manual.ps),
|
||||
PDF (manual.pdf) or html (manual.html). A plain-text version of the
|
||||
manual page is available as bzip2.txt.
|
||||
|
||||
|
||||
HOW TO BUILD -- UNIX
|
||||
|
||||
Type 'make'. This builds the library libbz2.a and then the programs
|
||||
bzip2 and bzip2recover. Six self-tests are run. If the self-tests
|
||||
complete ok, carry on to installation:
|
||||
|
||||
To install in /usr/local/bin, /usr/local/lib, /usr/local/man and
|
||||
/usr/local/include, type
|
||||
|
||||
make install
|
||||
|
||||
To install somewhere else, eg, /xxx/yyy/{bin,lib,man,include}, type
|
||||
|
||||
make install PREFIX=/xxx/yyy
|
||||
|
||||
If you are (justifiably) paranoid and want to see what 'make install'
|
||||
is going to do, you can first do
|
||||
|
||||
make -n install or
|
||||
make -n install PREFIX=/xxx/yyy respectively.
|
||||
|
||||
The -n instructs make to show the commands it would execute, but not
|
||||
actually execute them.
|
||||
|
||||
|
||||
HOW TO BUILD -- UNIX, shared library libbz2.so.
|
||||
|
||||
Do 'make -f Makefile-libbz2_so'. This Makefile seems to work for
|
||||
Linux-ELF (RedHat 7.2 on an x86 box), with gcc. I make no claims
|
||||
that it works for any other platform, though I suspect it probably
|
||||
will work for most platforms employing both ELF and gcc.
|
||||
|
||||
bzip2-shared, a client of the shared library, is also built, but not
|
||||
self-tested. So I suggest you also build using the normal Makefile,
|
||||
since that conducts a self-test. A second reason to prefer the
|
||||
version statically linked to the library is that, on x86 platforms,
|
||||
building shared objects makes a valuable register (%ebx) unavailable
|
||||
to gcc, resulting in a slowdown of 10%-20%, at least for bzip2.
|
||||
|
||||
Important note for people upgrading .so's from 0.9.0/0.9.5 to version
|
||||
1.0.X. All the functions in the library have been renamed, from (eg)
|
||||
bzCompress to BZ2_bzCompress, to avoid namespace pollution.
|
||||
Unfortunately this means that the libbz2.so created by
|
||||
Makefile-libbz2_so will not work with any program which used an older
|
||||
version of the library. I do encourage library clients to make the
|
||||
effort to upgrade to use version 1.0, since it is both faster and more
|
||||
robust than previous versions.
|
||||
|
||||
|
||||
HOW TO BUILD -- Windows 95, NT, DOS, Mac, etc.
|
||||
|
||||
It's difficult for me to support compilation on all these platforms.
|
||||
My approach is to collect binaries for these platforms, and put them
|
||||
on the master web site (https://sourceware.org/bzip2/). Look there. However
|
||||
(FWIW), bzip2-1.0.X is very standard ANSI C and should compile
|
||||
unmodified with MS Visual C. If you have difficulties building, you
|
||||
might want to read README.COMPILATION.PROBLEMS.
|
||||
|
||||
At least using MS Visual C++ 6, you can build from the unmodified
|
||||
sources by issuing, in a command shell:
|
||||
|
||||
nmake -f makefile.msc
|
||||
|
||||
(you may need to first run the MSVC-provided script VCVARS32.BAT
|
||||
so as to set up paths to the MSVC tools correctly).
|
||||
|
||||
|
||||
VALIDATION
|
||||
|
||||
Correct operation, in the sense that a compressed file can always be
|
||||
decompressed to reproduce the original, is obviously of paramount
|
||||
importance. To validate bzip2, I used a modified version of Mark
|
||||
Nelson's churn program. Churn is an automated test driver which
|
||||
recursively traverses a directory structure, using bzip2 to compress
|
||||
and then decompress each file it encounters, and checking that the
|
||||
decompressed data is the same as the original.
|
||||
|
||||
|
||||
|
||||
Please read and be aware of the following:
|
||||
|
||||
WARNING:
|
||||
|
||||
This program and library (attempts to) compress data by
|
||||
performing several non-trivial transformations on it.
|
||||
Unless you are 100% familiar with *all* the algorithms
|
||||
contained herein, and with the consequences of modifying them,
|
||||
you should NOT meddle with the compression or decompression
|
||||
machinery. Incorrect changes can and very likely *will*
|
||||
lead to disastrous loss of data.
|
||||
|
||||
|
||||
DISCLAIMER:
|
||||
|
||||
I TAKE NO RESPONSIBILITY FOR ANY LOSS OF DATA ARISING FROM THE
|
||||
USE OF THIS PROGRAM/LIBRARY, HOWSOEVER CAUSED.
|
||||
|
||||
Every compression of a file implies an assumption that the
|
||||
compressed file can be decompressed to reproduce the original.
|
||||
Great efforts in design, coding and testing have been made to
|
||||
ensure that this program works correctly. However, the complexity
|
||||
of the algorithms, and, in particular, the presence of various
|
||||
special cases in the code which occur with very low but non-zero
|
||||
probability make it impossible to rule out the possibility of bugs
|
||||
remaining in the program. DO NOT COMPRESS ANY DATA WITH THIS
|
||||
PROGRAM UNLESS YOU ARE PREPARED TO ACCEPT THE POSSIBILITY, HOWEVER
|
||||
SMALL, THAT THE DATA WILL NOT BE RECOVERABLE.
|
||||
|
||||
That is not to say this program is inherently unreliable.
|
||||
Indeed, I very much hope the opposite is true. bzip2/libbzip2
|
||||
has been carefully constructed and extensively tested.
|
||||
|
||||
|
||||
PATENTS:
|
||||
|
||||
To the best of my knowledge, bzip2/libbzip2 does not use any
|
||||
patented algorithms. However, I do not have the resources
|
||||
to carry out a patent search. Therefore I cannot give any
|
||||
guarantee of the above statement.
|
||||
|
||||
|
||||
|
||||
WHAT'S NEW IN 0.9.0 (as compared to 0.1pl2) ?
|
||||
|
||||
* Approx 10% faster compression, 30% faster decompression
|
||||
* -t (test mode) is a lot quicker
|
||||
* Can decompress concatenated compressed files
|
||||
* Programming interface, so programs can directly read/write .bz2 files
|
||||
* Less restrictive (BSD-style) licensing
|
||||
* Flag handling more compatible with GNU gzip
|
||||
* Much more documentation, i.e., a proper user manual
|
||||
* Hopefully, improved portability (at least of the library)
|
||||
|
||||
WHAT'S NEW IN 0.9.5 ?
|
||||
|
||||
* Compression speed is much less sensitive to the input
|
||||
data than in previous versions. Specifically, the very
|
||||
slow performance caused by repetitive data is fixed.
|
||||
* Many small improvements in file and flag handling.
|
||||
* A Y2K statement.
|
||||
|
||||
WHAT'S NEW IN 1.0.x ?
|
||||
|
||||
See the CHANGES file.
|
||||
|
||||
I hope you find bzip2 useful. Feel free to contact the developers at
|
||||
bzip2-devel@sourceware.org
|
||||
if you have any suggestions or queries. Many people mailed me with
|
||||
comments, suggestions and patches after the releases of bzip-0.15,
|
||||
bzip-0.21, and bzip2 versions 0.1pl2, 0.9.0, 0.9.5, 1.0.0, 1.0.1,
|
||||
1.0.2 and 1.0.3, and the changes in bzip2 are largely a result of this
|
||||
feedback. I thank you for your comments.
|
||||
|
||||
bzip2's "home" is https://sourceware.org/bzip2/
|
||||
|
||||
Julian Seward
|
||||
jseward@acm.org
|
||||
Cambridge, UK.
|
||||
|
||||
18 July 1996 (version 0.15)
|
||||
25 August 1996 (version 0.21)
|
||||
7 August 1997 (bzip2, version 0.1)
|
||||
29 August 1997 (bzip2, version 0.1pl2)
|
||||
23 August 1998 (bzip2, version 0.9.0)
|
||||
8 June 1999 (bzip2, version 0.9.5)
|
||||
4 Sept 1999 (bzip2, version 0.9.5d)
|
||||
5 May 2000 (bzip2, version 1.0pre8)
|
||||
30 December 2001 (bzip2, version 1.0.2pre1)
|
||||
15 February 2005 (bzip2, version 1.0.3)
|
||||
20 December 2006 (bzip2, version 1.0.4)
|
||||
10 December 2007 (bzip2, version 1.0.5)
|
||||
6 Sept 2010 (bzip2, version 1.0.6)
|
||||
27 June 2019 (bzip2, version 1.0.7)
|
||||
13 July 2019 (bzip2, version 1.0.8)
|
||||
84
OGP64/usr/share/doc/c-ares/AUTHORS
Normal file
84
OGP64/usr/share/doc/c-ares/AUTHORS
Normal file
|
|
@ -0,0 +1,84 @@
|
|||
c-ares is based on ares, and these are the people that have worked on it since
|
||||
the fork was made:
|
||||
|
||||
Albert Chin
|
||||
Alex Loukissas
|
||||
Alexander Klauer
|
||||
Alexander Lazic
|
||||
Alexey Simak
|
||||
Andreas Rieke
|
||||
Andrew Andkjar
|
||||
Andrew Ayer
|
||||
Andrew C. Morrow
|
||||
Ashish Sharma
|
||||
Ben Greear
|
||||
Ben Noordhuis
|
||||
BogDan Vatra
|
||||
Brad House
|
||||
Brad Spencer
|
||||
Bram Matthys
|
||||
Chris Araman
|
||||
Dan Fandrich
|
||||
Daniel Johnson
|
||||
Daniel Stenberg
|
||||
David Drysdale
|
||||
David Stuart
|
||||
Denis Bilenko
|
||||
Dima Tisnek
|
||||
Dirk Manske
|
||||
Dominick Meglio
|
||||
Doug Goldstein
|
||||
Doug Kwan
|
||||
Duncan Wilcox
|
||||
Eino Tuominen
|
||||
Erik Kline
|
||||
Fedor Indutny
|
||||
Frederic Germain
|
||||
Geert Uytterhoeven
|
||||
George Neill
|
||||
Gisle Vanem
|
||||
Google LLC
|
||||
Gregor Jasny
|
||||
Guenter Knauf
|
||||
Guilherme Balena Versiani
|
||||
Gunter Knauf
|
||||
Henrik Stoerner
|
||||
Jakub Hrozek
|
||||
James Bursa
|
||||
Jérémy Lal
|
||||
John Schember
|
||||
Keith Shaw
|
||||
Lei Shi
|
||||
Marko Kreen
|
||||
Michael Wallner
|
||||
Mike Crowe
|
||||
Nick Alcock
|
||||
Nick Mathewson
|
||||
Nicolas "Pixel" Noble
|
||||
Ning Dong
|
||||
Oleg Pudeyev
|
||||
Patrick Valsecchi
|
||||
Patrik Thunstrom
|
||||
Paul Saab
|
||||
Peter Pentchev
|
||||
Phil Blundell
|
||||
Poul Thomas Lomholt
|
||||
Ravi Pratap
|
||||
Robin Cornelius
|
||||
Saúl Ibarra Corretgé
|
||||
Sebastian at basti79.de
|
||||
Shmulik Regev
|
||||
Stefan Bühler
|
||||
Steinar H. Gunderson
|
||||
Svante Karlsson
|
||||
Tofu Linden
|
||||
Tom Hughes
|
||||
Tor Arntsen
|
||||
Viktor Szakats
|
||||
Vlad Dinulescu
|
||||
William Ahern
|
||||
Yang Tse
|
||||
hpopescu at ixiacom.com
|
||||
liren at vivisimo.com
|
||||
nordsturm
|
||||
saghul
|
||||
472
OGP64/usr/share/doc/c-ares/INSTALL.md
Normal file
472
OGP64/usr/share/doc/c-ares/INSTALL.md
Normal file
|
|
@ -0,0 +1,472 @@
|
|||
```
|
||||
___ __ _ _ __ ___ ___
|
||||
/ __| ___ / _` | '__/ _ \/ __|
|
||||
| (_ |___| (_| | | | __/\__ \
|
||||
\___| \__,_|_| \___||___/
|
||||
|
||||
How To Compile
|
||||
```
|
||||
|
||||
Installing Binary Packages
|
||||
==========================
|
||||
|
||||
Lots of people download binary distributions of c-ares. This document
|
||||
does not describe how to install c-ares using such a binary package.
|
||||
This document describes how to compile, build and install c-ares from
|
||||
source code.
|
||||
|
||||
Building from Git
|
||||
=================
|
||||
|
||||
If you get your code off a Git repository rather than an official
|
||||
release tarball, see the [GIT-INFO](GIT-INFO) file in the root directory
|
||||
for specific instructions on how to proceed.
|
||||
|
||||
In particular, if not using CMake you will need to run `./buildconf` (Unix) or
|
||||
`buildconf.bat` (Windows) to generate build files, and for the former
|
||||
you will need a local installation of Autotools. If using CMake the steps are
|
||||
the same for both Git and official release tarballs.
|
||||
|
||||
AutoTools Build
|
||||
===============
|
||||
|
||||
### General Information, works on most Unix Platforms (Linux, FreeBSD, etc.)
|
||||
|
||||
A normal Unix installation is made in three or four steps (after you've
|
||||
unpacked the source archive):
|
||||
|
||||
./configure
|
||||
make
|
||||
make install
|
||||
|
||||
You probably need to be root when doing the last command.
|
||||
|
||||
If you have checked out the sources from the git repository, read the
|
||||
[GIT-INFO](GIT-INFO) on how to proceed.
|
||||
|
||||
Get a full listing of all available configure options by invoking it like:
|
||||
|
||||
./configure --help
|
||||
|
||||
If you want to install c-ares in a different file hierarchy than /usr/local,
|
||||
you need to specify that already when running configure:
|
||||
|
||||
./configure --prefix=/path/to/c-ares/tree
|
||||
|
||||
If you happen to have write permission in that directory, you can do `make
|
||||
install` without being root. An example of this would be to make a local
|
||||
installation in your own home directory:
|
||||
|
||||
./configure --prefix=$HOME
|
||||
make
|
||||
make install
|
||||
|
||||
### More Options
|
||||
|
||||
To force configure to use the standard cc compiler if both cc and gcc are
|
||||
present, run configure like
|
||||
|
||||
CC=cc ./configure
|
||||
# or
|
||||
env CC=cc ./configure
|
||||
|
||||
To force a static library compile, disable the shared library creation
|
||||
by running configure like:
|
||||
|
||||
./configure --disable-shared
|
||||
|
||||
If you're a c-ares developer and use gcc, you might want to enable more
|
||||
debug options with the `--enable-debug` option.
|
||||
|
||||
### Special Cases
|
||||
|
||||
Some versions of uClibc require configuring with `CPPFLAGS=-D_GNU_SOURCE=1`
|
||||
to get correct large file support.
|
||||
|
||||
The Open Watcom C compiler on Linux requires configuring with the variables:
|
||||
|
||||
./configure CC=owcc AR="$WATCOM/binl/wlib" AR_FLAGS=-q \
|
||||
RANLIB=/bin/true STRIP="$WATCOM/binl/wstrip" CFLAGS=-Wextra
|
||||
|
||||
|
||||
### CROSS COMPILE
|
||||
|
||||
(This section was graciously brought to us by Jim Duey, with additions by
|
||||
Dan Fandrich)
|
||||
|
||||
Download and unpack the c-ares package.
|
||||
|
||||
`cd` to the new directory. (e.g. `cd c-ares-1.7.6`)
|
||||
|
||||
Set environment variables to point to the cross-compile toolchain and call
|
||||
configure with any options you need. Be sure and specify the `--host` and
|
||||
`--build` parameters at configuration time. The following script is an
|
||||
example of cross-compiling for the IBM 405GP PowerPC processor using the
|
||||
toolchain from MonteVista for Hardhat Linux.
|
||||
|
||||
```sh
|
||||
#! /bin/sh
|
||||
|
||||
export PATH=$PATH:/opt/hardhat/devkit/ppc/405/bin
|
||||
export CPPFLAGS="-I/opt/hardhat/devkit/ppc/405/target/usr/include"
|
||||
export AR=ppc_405-ar
|
||||
export AS=ppc_405-as
|
||||
export LD=ppc_405-ld
|
||||
export RANLIB=ppc_405-ranlib
|
||||
export CC=ppc_405-gcc
|
||||
export NM=ppc_405-nm
|
||||
|
||||
./configure --target=powerpc-hardhat-linux \
|
||||
--host=powerpc-hardhat-linux \
|
||||
--build=i586-pc-linux-gnu \
|
||||
--prefix=/opt/hardhat/devkit/ppc/405/target/usr/local \
|
||||
--exec-prefix=/usr/local
|
||||
```
|
||||
|
||||
You may also need to provide a parameter like `--with-random=/dev/urandom`
|
||||
to configure as it cannot detect the presence of a random number
|
||||
generating device for a target system. The `--prefix` parameter
|
||||
specifies where c-ares will be installed. If `configure` completes
|
||||
successfully, do `make` and `make install` as usual.
|
||||
|
||||
In some cases, you may be able to simplify the above commands to as
|
||||
little as:
|
||||
|
||||
./configure --host=ARCH-OS
|
||||
|
||||
|
||||
### Cygwin (Windows)
|
||||
|
||||
Almost identical to the unix installation. Run the configure script in the
|
||||
c-ares root with `sh configure`. Make sure you have the sh executable in
|
||||
`/bin/` or you'll see the configure fail toward the end.
|
||||
|
||||
Run `make`
|
||||
|
||||
|
||||
### QNX
|
||||
|
||||
(This section was graciously brought to us by David Bentham)
|
||||
|
||||
As QNX is targeted for resource constrained environments, the QNX headers
|
||||
set conservative limits. This includes the `FD_SETSIZE` macro, set by default
|
||||
to 32. Socket descriptors returned within the c-ares library may exceed this,
|
||||
resulting in memory faults/SIGSEGV crashes when passed into `select(..)`
|
||||
calls using `fd_set` macros.
|
||||
|
||||
A good all-round solution to this is to override the default when building
|
||||
c-ares, by overriding `CFLAGS` during configure, example:
|
||||
|
||||
# configure CFLAGS='-DFD_SETSIZE=64 -g -O2'
|
||||
|
||||
|
||||
### RISC OS
|
||||
|
||||
The library can be cross-compiled using gccsdk as follows:
|
||||
|
||||
CC=riscos-gcc AR=riscos-ar RANLIB='riscos-ar -s' ./configure \
|
||||
--host=arm-riscos-aof --without-random --disable-shared
|
||||
make
|
||||
|
||||
where `riscos-gcc` and `riscos-ar` are links to the gccsdk tools.
|
||||
You can then link your program with `c-ares/lib/.libs/libcares.a`.
|
||||
|
||||
|
||||
### Android
|
||||
|
||||
Method using a configure cross-compile (tested with Android NDK r7b):
|
||||
|
||||
- prepare the toolchain of the Android NDK for standalone use; this can
|
||||
be done by invoking the script:
|
||||
|
||||
./tools/make-standalone-toolchain.sh
|
||||
|
||||
which creates a usual cross-compile toolchain. Let's assume that you put
|
||||
this toolchain below `/opt` then invoke configure with something
|
||||
like:
|
||||
|
||||
```
|
||||
export PATH=/opt/arm-linux-androideabi-4.4.3/bin:$PATH
|
||||
./configure --host=arm-linux-androideabi [more configure options]
|
||||
make
|
||||
```
|
||||
- if you want to compile directly from our GIT repo you might run into
|
||||
this issue with older automake stuff:
|
||||
|
||||
```
|
||||
checking host system type...
|
||||
Invalid configuration `arm-linux-androideabi':
|
||||
system `androideabi' not recognized
|
||||
configure: error: /bin/sh ./config.sub arm-linux-androideabi failed
|
||||
```
|
||||
this issue can be fixed with using more recent versions of `config.sub`
|
||||
and `config.guess` which can be obtained here:
|
||||
http://git.savannah.gnu.org/gitweb/?p=config.git;a=tree
|
||||
you need to replace your system-own versions which usually can be
|
||||
found in your automake folder:
|
||||
`find /usr -name config.sub`
|
||||
|
||||
|
||||
CMake builds
|
||||
============
|
||||
|
||||
Current releases of c-ares introduce a CMake v3+ build system that has been
|
||||
tested on most platforms including Windows, Linux, FreeBSD, macOS, AIX and
|
||||
Solaris.
|
||||
|
||||
In the most basic form, building with CMake might look like:
|
||||
|
||||
```sh
|
||||
cd /path/to/cmake/source
|
||||
mkdir build
|
||||
cd build
|
||||
cmake -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX=/usr/local/cares ..
|
||||
make
|
||||
sudo make install
|
||||
```
|
||||
|
||||
Options
|
||||
-------
|
||||
|
||||
Options to CMake are passed on the command line using "-D${OPTION}=${VALUE}".
|
||||
The values defined are all boolean and take values like On, Off, True, False.
|
||||
|
||||
| Option Name | Description | Default Value |
|
||||
|-----------------------------|-----------------------------------------------------------------------|----------------|
|
||||
| CARES_STATIC | Build the static library | Off |
|
||||
| CARES_SHARED | Build the shared library | On |
|
||||
| CARES_INSTALL | Hook in installation, useful to disable if chain building | On |
|
||||
| CARES_STATIC_PIC | Build the static library as position-independent | Off |
|
||||
| CARES_BUILD_TESTS | Build and run tests | Off |
|
||||
| CARES_BUILD_CONTAINER_TESTS | Build and run container tests (implies CARES_BUILD_TESTS, Linux only) | Off |
|
||||
| CARES_BUILD_TOOLS | Build tools | On |
|
||||
| CARES_SYMBOL_HIDING | Hide private symbols in shared libraries | Off |
|
||||
| CARES_THREADS | Build with thread-safety support | On |
|
||||
|
||||
Ninja
|
||||
-----
|
||||
|
||||
Ninja is the next-generation build system meant for generators like CMake that
|
||||
heavily parallelize builds. Its use is very similar to the normal build:
|
||||
|
||||
```sh
|
||||
cd /path/to/cmake/source
|
||||
mkdir build
|
||||
cd build
|
||||
cmake -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX=/usr/local/cares -G "Ninja" ..
|
||||
ninja
|
||||
sudo ninja install
|
||||
```
|
||||
|
||||
Windows MSVC Command Line
|
||||
-------------------------
|
||||
|
||||
```
|
||||
cd \path\to\cmake\source
|
||||
mkdir build
|
||||
cd build
|
||||
cmake -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX=C:\cares -G "NMake Makefiles" ..
|
||||
nmake
|
||||
nmake install
|
||||
```
|
||||
|
||||
Windows MinGW-w64 Command Line via MSYS
|
||||
---------------------------------------
|
||||
```
|
||||
cd \path\to\cmake\source
|
||||
mkdir build
|
||||
cd build
|
||||
cmake -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX=C:\cares -G "MSYS Makefiles" ..
|
||||
make
|
||||
make install
|
||||
```
|
||||
|
||||
|
||||
Platform-specific build systems
|
||||
===============================
|
||||
|
||||
Win32
|
||||
-----
|
||||
|
||||
### Building Windows DLLs and C run-time (CRT) linkage issues
|
||||
|
||||
As a general rule, building a DLL with static CRT linkage is highly
|
||||
discouraged, and intermixing CRTs in the same app is something to
|
||||
avoid at any cost.
|
||||
|
||||
Reading and comprehension of the following Microsoft Learn article
|
||||
is a must for any Windows developer. Especially
|
||||
important is full understanding if you are not going to follow the
|
||||
advice given above.
|
||||
|
||||
- [Use the C Run-Time](https://learn.microsoft.com/en-us/troubleshoot/developer/visualstudio/cpp/libraries/use-c-run-time)
|
||||
|
||||
If your app is misbehaving in some strange way, or it is suffering
|
||||
from memory corruption, before asking for further help, please try
|
||||
first to rebuild every single library your app uses as well as your
|
||||
app using the debug multithreaded dynamic C runtime.
|
||||
|
||||
|
||||
### MSYS
|
||||
|
||||
Building is supported for native windows via both AutoTools and CMake. When
|
||||
building with autotools, you can only build either a shared version or a static
|
||||
version (use `--disable-shared` or `--disable-static`). CMake can build both
|
||||
simultaneously.
|
||||
|
||||
All of the MSYS environments are supported: `MINGW32`, `MINGW64`, `UCRT64`,
|
||||
`CLANG32`, `CLANG64`, `CLANGARM64`.
|
||||
|
||||
### MingW32
|
||||
|
||||
Make sure that MinGW32's bin dir is in the search path, for example:
|
||||
|
||||
set PATH=c:\mingw32\bin;%PATH%
|
||||
|
||||
then run 'make -f Makefile.m32' in the root dir.
|
||||
|
||||
|
||||
### MSVC 6 caveats
|
||||
|
||||
If you use MSVC 6 it is required that you use the February 2003 edition PSDK:
|
||||
http://www.microsoft.com/msdownload/platformsdk/sdkupdate/psdk-full.htm
|
||||
|
||||
|
||||
### MSVC from command line
|
||||
|
||||
Run the `vcvars32.bat` file to get a proper environment. The
|
||||
`vcvars32.bat` file is part of the Microsoft development environment and
|
||||
you may find it in `C:\Program Files\Microsoft Visual Studio\vc98\bin`
|
||||
provided that you installed Visual C/C++ 6 in the default directory.
|
||||
|
||||
Further details in [README.msvc](README.msvc)
|
||||
|
||||
|
||||
### Important static c-ares usage note
|
||||
|
||||
When building an application that uses the static c-ares library, you must
|
||||
add `-DCARES_STATICLIB` to your `CFLAGS`. Otherwise the linker will look for
|
||||
dynamic import symbols.
|
||||
|
||||
|
||||
DOS
|
||||
---
|
||||
|
||||
c-ares supports building as a 32bit protected mode application via
|
||||
[DJGPP](https://www.delorie.com/djgpp/). It is recommended to use a DJGPP
|
||||
cross compiler from [Andrew Wu](https://github.com/andrewwutw/build-djgpp)
|
||||
as building directly in a DOS environment can be difficult.
|
||||
|
||||
It is required to also have [Watt-32](https://www.watt-32.net/) available
|
||||
built using the same compiler. It is recommended to build the latest `master`
|
||||
branch from [GitHub](https://github.com/sezero/watt32/tree/master).
|
||||
|
||||
Finally, the `DJ_PREFIX` and `WATT_ROOT` environment variables must be set
|
||||
appropriately before calling `make Makefile.dj` to build c-ares.
|
||||
|
||||
Please refer to our CI
|
||||
[GitHub Actions Workflow](https://github.com/c-ares/c-ares/blob/main/.github/workflows/djgpp.yml)
|
||||
for a full build example, including building the latest Watt-32 release.
|
||||
|
||||
|
||||
IBM OS/2
|
||||
--------
|
||||
|
||||
Building under OS/2 is not much different from building under unix.
|
||||
You need:
|
||||
|
||||
- emx 0.9d
|
||||
- GNU make
|
||||
- GNU patch
|
||||
- ksh
|
||||
- GNU bison
|
||||
- GNU file utilities
|
||||
- GNU sed
|
||||
- autoconf 2.13
|
||||
|
||||
If during the linking you get an error about `_errno` being an undefined
|
||||
symbol referenced from the text segment, you need to add `-D__ST_MT_ERRNO__`
|
||||
in your definitions.
|
||||
|
||||
If you're getting huge binaries, probably your makefiles have the `-g` in
|
||||
`CFLAGS`.
|
||||
|
||||
|
||||
NetWare
|
||||
-------
|
||||
|
||||
To compile `libcares.a` / `libcares.lib` you need:
|
||||
|
||||
- either any gcc / nlmconv, or CodeWarrior 7 PDK 4 or later.
|
||||
- gnu make and awk running on the platform you compile on;
|
||||
native Win32 versions can be downloaded from:
|
||||
http://www.gknw.net/development/prgtools/
|
||||
- recent Novell LibC SDK available from:
|
||||
http://developer.novell.com/ndk/libc.htm
|
||||
- or recent Novell CLib SDK available from:
|
||||
http://developer.novell.com/ndk/clib.htm
|
||||
|
||||
Set a search path to your compiler, linker and tools; on Linux make
|
||||
sure that the var `OSTYPE` contains the string 'linux'; set the var
|
||||
`NDKBASE` to point to the base of your Novell NDK; and then type
|
||||
`make -f Makefile.netware` from the top source directory;
|
||||
|
||||
VCPKG
|
||||
=====
|
||||
|
||||
You can build and install c-ares using [vcpkg](https://github.com/Microsoft/vcpkg/) dependency manager:
|
||||
|
||||
```sh or powershell
|
||||
git clone https://github.com/Microsoft/vcpkg.git
|
||||
cd vcpkg
|
||||
./bootstrap-vcpkg.sh
|
||||
./vcpkg integrate install
|
||||
./vcpkg install c-ares
|
||||
```
|
||||
|
||||
The c-ares port in vcpkg is kept up to date by Microsoft team members and community contributors. If the version is out of date, please [create an issue or pull request](https://github.com/Microsoft/vcpkg) on the vcpkg repository.
|
||||
|
||||
WATCOM
|
||||
=====
|
||||
|
||||
To build c-ares with OpenWatcom, you need to have at least version 1.9 of OpenWatcom. You can get the latest version from [http://openwatcom.org/ftp/install/](http://openwatcom.org/ftp/install/). Install the version that corresponds to your current host platform.
|
||||
|
||||
After installing OpenWatcom, open a new command prompt and execute the following commands:
|
||||
|
||||
```
|
||||
cd \path\to\cmake\source
|
||||
buildconf.bat
|
||||
wmake -u -f Makefile.Watcom
|
||||
```
|
||||
|
||||
After running wmake, you should get adig.exe, ahost.exe, and the static and dynamic versions of libcares.
|
||||
|
||||
PORTS
|
||||
=====
|
||||
|
||||
This is a probably incomplete list of known hardware and operating systems
|
||||
that c-ares has been compiled for. If you know a system c-ares compiles and
|
||||
runs on, that isn't listed, please let us know!
|
||||
|
||||
- Linux (i686, x86_64, AARCH64, and more)
|
||||
- MacOS 10.4+
|
||||
- iOS
|
||||
- Windows 8+ (i686, x86_64)
|
||||
- Android (ARM, AARCH64, x86_64)
|
||||
- FreeBSD
|
||||
- NetBSD
|
||||
- OpenBSD
|
||||
- Solaris (SPARC, x86_64)
|
||||
- AIX (POWER)
|
||||
- Tru64 (Alpha)
|
||||
- IRIX (MIPS)
|
||||
- Novell NetWare (i386)
|
||||
|
||||
|
||||
Useful URLs
|
||||
===========
|
||||
|
||||
- c-ares: https://c-ares.org/
|
||||
- MinGW-w64: http://mingw-w64.sourceforge.net/
|
||||
- MSYS2: https://msys2.org
|
||||
- OpenWatcom: http://www.openwatcom.org/
|
||||
24
OGP64/usr/share/doc/c-ares/LICENSE.md
Normal file
24
OGP64/usr/share/doc/c-ares/LICENSE.md
Normal file
|
|
@ -0,0 +1,24 @@
|
|||
MIT License
|
||||
|
||||
Copyright (c) 1998 Massachusetts Institute of Technology
|
||||
Copyright (c) 2007 - 2023 Daniel Stenberg with many contributors, see AUTHORS
|
||||
file.
|
||||
|
||||
Permission is hereby granted, free of charge, to any person obtaining a copy of
|
||||
this software and associated documentation files (the "Software"), to deal in
|
||||
the Software without restriction, including without limitation the rights to
|
||||
use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of
|
||||
the Software, and to permit persons to whom the Software is furnished to do so,
|
||||
subject to the following conditions:
|
||||
|
||||
The above copyright notice and this permission notice (including the next
|
||||
paragraph) shall be included in all copies or substantial portions of the
|
||||
Software.
|
||||
|
||||
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
||||
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
||||
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
||||
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
||||
SOFTWARE.
|
||||
158
OGP64/usr/share/doc/c-ares/README.md
Normal file
158
OGP64/usr/share/doc/c-ares/README.md
Normal file
|
|
@ -0,0 +1,158 @@
|
|||
# [](https://c-ares.org/)
|
||||
|
||||
[](https://cirrus-ci.com/github/c-ares/c-ares)
|
||||
[](https://ci.appveyor.com/project/c-ares/c-ares/branch/main)
|
||||
[](https://coveralls.io/github/c-ares/c-ares?branch=main)
|
||||
[](https://bestpractices.coreinfrastructure.org/projects/291)
|
||||
[](https://bugs.chromium.org/p/oss-fuzz/issues/list?sort=-opened&can=1&q=proj:c-ares)
|
||||
[](https://sonarcloud.io/summary/new_code?id=c-ares_c-ares)
|
||||
[](https://scan.coverity.com/projects/c-ares)
|
||||
|
||||
- [Overview](#overview)
|
||||
- [Code](#code)
|
||||
- [Communication](#communication)
|
||||
- [Release Keys](#release-keys)
|
||||
- [Verifying signatures](#verifying-signatures)
|
||||
- [Features](#features)
|
||||
- [RFCs and Proposals](#supported-rfcs-and-proposals)
|
||||
|
||||
## Overview
|
||||
[c-ares](https://c-ares.org) is a modern DNS (stub) resolver library, written in
|
||||
C. It provides interfaces for asynchronous queries while trying to abstract the
|
||||
intricacies of the underlying DNS protocol. It was originally intended for
|
||||
applications which need to perform DNS queries without blocking, or need to
|
||||
perform multiple DNS queries in parallel.
|
||||
|
||||
One of the goals of c-ares is to be a better DNS resolver than is provided by
|
||||
your system, regardless of which system you use. We recommend using
|
||||
the c-ares library in all network applications even if the initial goal of
|
||||
asynchronous resolution is not necessary to your application.
|
||||
|
||||
c-ares will build with any C89 compiler and is [MIT licensed](LICENSE.md),
|
||||
which makes it suitable for both free and commercial software. c-ares runs on
|
||||
Linux, FreeBSD, OpenBSD, MacOS, Solaris, AIX, Windows, Android, iOS and many
|
||||
more operating systems.
|
||||
|
||||
c-ares has a strong focus on security, implementing safe parsers and data
|
||||
builders used throughout the code, thus avoiding many of the common pitfalls
|
||||
of other C libraries. Through automated testing with our extensive testing
|
||||
framework, c-ares is constantly validated with a range of static and dynamic
|
||||
analyzers, as well as being constantly fuzzed by [OSS Fuzz](https://github.com/google/oss-fuzz).
|
||||
|
||||
While c-ares has been around for over 20 years, it has been actively maintained
|
||||
both in regards to the latest DNS RFCs as well as updated to follow the latest
|
||||
best practices in regards to C coding standards.
|
||||
|
||||
## Code
|
||||
|
||||
The full source code and revision history is available in our
|
||||
[GitHub repository](https://github.com/c-ares/c-ares). Our signed releases
|
||||
are available in the [release archives](https://c-ares.org/download/).
|
||||
|
||||
|
||||
See the [INSTALL.md](INSTALL.md) file for build information.
|
||||
|
||||
## Communication
|
||||
|
||||
**Issues** and **Feature Requests** should be reported to our
|
||||
[GitHub Issues](https://github.com/c-ares/c-ares/issues) page.
|
||||
|
||||
**Discussions** around c-ares and its use, are held on
|
||||
[GitHub Discussions](https://github.com/c-ares/c-ares/discussions/categories/q-a)
|
||||
or the [Mailing List](https://lists.haxx.se/mailman/listinfo/c-ares). Mailing
|
||||
List archive [here](https://lists.haxx.se/pipermail/c-ares/).
|
||||
Please, do not mail volunteers privately about c-ares.
|
||||
|
||||
**Security vulnerabilities** are treated according to our
|
||||
[Security Procedure](SECURITY.md), please email c-ares-security at
|
||||
haxx.se if you suspect one.
|
||||
|
||||
|
||||
## Release keys
|
||||
|
||||
Primary GPG keys for c-ares Releasers (some Releasers sign with subkeys):
|
||||
|
||||
* **Daniel Stenberg** <<daniel@haxx.se>>
|
||||
`27EDEAF22F3ABCEB50DB9A125CC908FDB71E12C2`
|
||||
* **Brad House** <<brad@brad-house.com>>
|
||||
`DA7D64E4C82C6294CB73A20E22E3D13B5411B7CA`
|
||||
|
||||
To import the full set of trusted release keys (including subkeys possibly used
|
||||
to sign releases):
|
||||
|
||||
```bash
|
||||
gpg --keyserver hkps://keyserver.ubuntu.com --recv-keys 27EDEAF22F3ABCEB50DB9A125CC908FDB71E12C2 # Daniel Stenberg
|
||||
gpg --keyserver hkps://keyserver.ubuntu.com --recv-keys DA7D64E4C82C6294CB73A20E22E3D13B5411B7CA # Brad House
|
||||
```
|
||||
|
||||
### Verifying signatures
|
||||
|
||||
For each release `c-ares-X.Y.Z.tar.gz` there is a corresponding
|
||||
`c-ares-X.Y.Z.tar.gz.asc` file which contains the detached signature for the
|
||||
release.
|
||||
|
||||
After fetching all of the possible valid signing keys and loading into your
|
||||
keychain as per the prior section, you can simply run the command below on
|
||||
the downloaded package and detached signature:
|
||||
|
||||
```bash
|
||||
% gpg -v --verify c-ares-1.29.0.tar.gz.asc c-ares-1.29.0.tar.gz
|
||||
gpg: enabled compatibility flags:
|
||||
gpg: Signature made Fri May 24 02:50:38 2024 EDT
|
||||
gpg: using RSA key 27EDEAF22F3ABCEB50DB9A125CC908FDB71E12C2
|
||||
gpg: using pgp trust model
|
||||
gpg: Good signature from "Daniel Stenberg <daniel@haxx.se>" [unknown]
|
||||
gpg: WARNING: This key is not certified with a trusted signature!
|
||||
gpg: There is no indication that the signature belongs to the owner.
|
||||
Primary key fingerprint: 27ED EAF2 2F3A BCEB 50DB 9A12 5CC9 08FD B71E 12C2
|
||||
gpg: binary signature, digest algorithm SHA512, key algorithm rsa2048
|
||||
```
|
||||
|
||||
## Features
|
||||
|
||||
See [Features](FEATURES.md)
|
||||
|
||||
### Supported RFCs and Proposals
|
||||
- [RFC1035](https://datatracker.ietf.org/doc/html/rfc1035).
|
||||
Initial/Base DNS RFC
|
||||
- [RFC2671](https://datatracker.ietf.org/doc/html/rfc2671),
|
||||
[RFC6891](https://datatracker.ietf.org/doc/html/rfc6891).
|
||||
EDNS0 option (meta-RR)
|
||||
- [RFC3596](https://datatracker.ietf.org/doc/html/rfc3596).
|
||||
IPv6 Address. `AAAA` Record.
|
||||
- [RFC2782](https://datatracker.ietf.org/doc/html/rfc2782).
|
||||
Server Selection. `SRV` Record.
|
||||
- [RFC3403](https://datatracker.ietf.org/doc/html/rfc3403).
|
||||
Naming Authority Pointer. `NAPTR` Record.
|
||||
- [RFC6698](https://datatracker.ietf.org/doc/html/rfc6698).
|
||||
DNS-Based Authentication of Named Entities (DANE) Transport Layer Security (TLS) Protocol.
|
||||
`TLSA` Record.
|
||||
- [RFC9460](https://datatracker.ietf.org/doc/html/rfc9460).
|
||||
General Purpose Service Binding, Service Binding type for use with HTTPS.
|
||||
`SVCB` and `HTTPS` Records.
|
||||
- [RFC7553](https://datatracker.ietf.org/doc/html/rfc7553).
|
||||
Uniform Resource Identifier. `URI` Record.
|
||||
- [RFC6844](https://datatracker.ietf.org/doc/html/rfc6844).
|
||||
Certification Authority Authorization. `CAA` Record.
|
||||
- [RFC2535](https://datatracker.ietf.org/doc/html/rfc2535),
|
||||
[RFC2931](https://datatracker.ietf.org/doc/html/rfc2931).
|
||||
`SIG0` Record. Only basic parser, not full implementation.
|
||||
- [RFC7873](https://datatracker.ietf.org/doc/html/rfc7873),
|
||||
[RFC9018](https://datatracker.ietf.org/doc/html/rfc9018).
|
||||
DNS Cookie off-path dns poisoning and amplification mitigation.
|
||||
- [draft-vixie-dnsext-dns0x20-00](https://datatracker.ietf.org/doc/html/draft-vixie-dnsext-dns0x20-00).
|
||||
DNS 0x20 query name case randomization to prevent cache poisioning attacks.
|
||||
- [RFC7686](https://datatracker.ietf.org/doc/html/rfc7686).
|
||||
Reject queries for `.onion` domain names with `NXDOMAIN`.
|
||||
- [RFC2606](https://datatracker.ietf.org/doc/html/rfc2606),
|
||||
[RFC6761](https://datatracker.ietf.org/doc/html/rfc6761).
|
||||
Special case treatment for `localhost`/`.localhost`.
|
||||
- [RFC2308](https://datatracker.ietf.org/doc/html/rfc2308),
|
||||
[RFC9520](https://datatracker.ietf.org/doc/html/rfc9520).
|
||||
Negative Caching of DNS Resolution Failures.
|
||||
- [RFC6724](https://datatracker.ietf.org/doc/html/rfc6724).
|
||||
IPv6 address sorting as used by `ares_getaddrinfo()`.
|
||||
- [RFC7413](https://datatracker.ietf.org/doc/html/rfc7413).
|
||||
TCP FastOpen (TFO) for 0-RTT TCP Connection Resumption.
|
||||
- [RFC3986](https://datatracker.ietf.org/doc/html/rfc3986).
|
||||
Uniform Resource Identifier (URI). Used for server configuration.
|
||||
42
OGP64/usr/share/doc/c-ares/RELEASE-NOTES.md
Normal file
42
OGP64/usr/share/doc/c-ares/RELEASE-NOTES.md
Normal file
|
|
@ -0,0 +1,42 @@
|
|||
## c-ares version 1.34.6 - December 8 2025
|
||||
|
||||
This is a security release.
|
||||
|
||||
Security:
|
||||
* CVE-2025-62408. A use-after-free bug has been uncovered in read_answers() that
|
||||
was introduced in v1.32.3. Please see https://github.com/c-ares/c-ares/security/advisories/GHSA-jq53-42q6-pqr5
|
||||
|
||||
Changes:
|
||||
* Ignore Windows IDN Search Domains until proper IDN support is added. [PR #1034](https://github.com/c-ares/c-ares/pull/1034)
|
||||
|
||||
Bugfixes:
|
||||
* Event Thread could stall when not notified of new queries on existing
|
||||
connections that are in a bad state
|
||||
[PR #1032](https://github.com/c-ares/c-ares/pull/1032)
|
||||
* fix conversion of invalid service to port number in ares_getaddrinfo()
|
||||
[PR #1029](https://github.com/c-ares/c-ares/pull/1029)
|
||||
* fix memory leak in ares_uri
|
||||
[PR #1012](https://github.com/c-ares/c-ares/pull/1012)
|
||||
* Ignore ares_event_configchg_init failures
|
||||
[PR #1009](https://github.com/c-ares/c-ares/pull/1009)
|
||||
* Use XOR for random seed generation on fallback logic.
|
||||
[PR #994](https://github.com/c-ares/c-ares/pull/994)
|
||||
* Fix clang build on windows.
|
||||
[PR #996](https://github.com/c-ares/c-ares/pull/996)
|
||||
* Fix IPv6 link-local nameservers in /etc/resolv.conf
|
||||
[PR #996](https://github.com/c-ares/c-ares/pull/997)
|
||||
* Fix a few build issues on MidnightBSD.
|
||||
[PR #983](https://github.com/c-ares/c-ares/pull/983)
|
||||
|
||||
Thanks go to these friendly people for their efforts and contributions for this
|
||||
release:
|
||||
|
||||
* Brad House (@bradh352)
|
||||
* (@F3lixTheCat)
|
||||
* Lucas Holt (@laffer1)
|
||||
* @oargon
|
||||
* Pavel P (@pps83)
|
||||
* Sean Harmer (@seanharmer)
|
||||
* Uwe (@nixblik)
|
||||
|
||||
|
||||
BIN
OGP64/usr/share/doc/common-licenses/AFL
Normal file
BIN
OGP64/usr/share/doc/common-licenses/AFL
Normal file
Binary file not shown.
114
OGP64/usr/share/doc/common-licenses/AFL-1.1
Normal file
114
OGP64/usr/share/doc/common-licenses/AFL-1.1
Normal file
|
|
@ -0,0 +1,114 @@
|
|||
Academic Free License
|
||||
Version 1.1
|
||||
|
||||
The Academic Free License applies to any original work of authorship
|
||||
(the "Original Work") whose owner (the "Licensor") has placed the
|
||||
following notice immediately following the copyright notice for the
|
||||
Original Work: "Licensed under the Academic Free License version 1.1."
|
||||
|
||||
Grant of License. Licensor hereby grants to any person obtaining a
|
||||
copy of the Original Work ("You") a world-wide, royalty-free,
|
||||
non-exclusive, perpetual, non-sublicenseable license (1) to use, copy,
|
||||
modify, merge, publish, perform, distribute and/or sell copies of the
|
||||
Original Work and derivative works thereof, and (2) under patent
|
||||
claims owned or controlled by the Licensor that are embodied in the
|
||||
Original Work as furnished by the Licensor, to make, use, sell and
|
||||
offer for sale the Original Work and derivative works thereof, subject
|
||||
to the following conditions.
|
||||
|
||||
Right of Attribution. Redistributions of the Original Work must
|
||||
reproduce all copyright notices in the Original Work as furnished by
|
||||
the Licensor, both in the Original Work itself and in any
|
||||
documentation and/or other materials provided with the distribution of
|
||||
the Original Work in executable form.
|
||||
|
||||
Exclusions from License Grant. Neither the names of Licensor, nor the
|
||||
names of any contributors to the Original Work, nor any of their
|
||||
trademarks or service marks, may be used to endorse or promote
|
||||
products derived from this Original Work without express prior written
|
||||
permission of the Licensor.
|
||||
|
||||
WARRANTY AND DISCLAIMERS. LICENSOR WARRANTS THAT THE COPYRIGHT IN AND
|
||||
TO THE ORIGINAL WORK IS OWNED BY THE LICENSOR OR THAT THE ORIGINAL
|
||||
WORK IS DISTRIBUTED BY LICENSOR UNDER A VALID CURRENT LICENSE FROM THE
|
||||
COPYRIGHT OWNER. EXCEPT AS EXPRESSLY STATED IN THE IMMEDIATELY
|
||||
PRECEEDING SENTENCE, THE ORIGINAL WORK IS PROVIDED UNDER THIS LICENSE
|
||||
ON AN "AS IS" BASIS, WITHOUT WARRANTY, EITHER EXPRESS OR IMPLIED,
|
||||
INCLUDING, WITHOUT LIMITATION, THE WARRANTY OF NON-INFRINGEMENT AND
|
||||
WARRANTIES THAT THE ORIGINAL WORK IS MERCHANTABLE OR FIT FOR A
|
||||
PARTICULAR PURPOSE. THE ENTIRE RISK AS TO THE QUALITY OF THE ORIGINAL
|
||||
WORK IS WITH YOU. THIS DISCLAIMER OF WARRANTY CONSTITUTES AN ESSENTIAL
|
||||
PART OF THIS LICENSE. NO LICENSE TO ORIGINAL WORK IS GRANTED HEREUNDER
|
||||
EXCEPT UNDER THIS DISCLAIMER.
|
||||
|
||||
LIMITATION OF LIABILITY. UNDER NO CIRCUMSTANCES AND UNDER NO LEGAL
|
||||
THEORY, WHETHER TORT (INCLUDING NEGLIGENCE), CONTRACT, OR OTHERWISE,
|
||||
SHALL THE LICENSOR BE LIABLE TO ANY PERSON FOR ANY DIRECT, INDIRECT,
|
||||
SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES OF ANY CHARACTER ARISING
|
||||
AS A RESULT OF THIS LICENSE OR THE USE OF THE ORIGINAL WORK 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 PERSON 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.
|
||||
|
||||
License to Source Code. The term "Source Code" means the preferred
|
||||
form of the Original Work for making modifications to it and all
|
||||
available documentation describing how to access and modify the
|
||||
Original Work. Licensor hereby agrees to provide a machine-readable
|
||||
copy of the Source Code of the Original Work along with each copy of
|
||||
the Original Work that Licensor distributes. Licensor reserves the
|
||||
right to satisfy this obligation by placing a machine-readable copy of
|
||||
the Source Code in an information repository reasonably calculated to
|
||||
permit inexpensive and convenient access by You for as long as
|
||||
Licensor continues to distribute the Original Work, and by publishing
|
||||
the address of that information repository in a notice immediately
|
||||
following the copyright notice that applies to the Original Work.
|
||||
|
||||
Mutual Termination for Patent Action. This License shall terminate
|
||||
automatically and You may no longer exercise any of the rights granted
|
||||
to You by this License if You file a lawsuit in any court alleging
|
||||
that any OSI Certified open source software that is licensed under any
|
||||
license containing this "Mutual Termination for Patent Action" clause
|
||||
infringes any patent claims that are essential to use that software.
|
||||
|
||||
This license is Copyright (C) 2002 Lawrence E. Rosen. All rights
|
||||
reserved. Permission is hereby granted to copy and distribute this
|
||||
license without modification. This license may not be modified without
|
||||
the express written permission of its copyright owner.
|
||||
|
||||
--
|
||||
END OF LICENSE. The following is intended to describe the essential
|
||||
differences between the Academic Free License (AFL) version 1.0 and
|
||||
other open source licenses:
|
||||
|
||||
The Academic Free License is similar to the BSD, MIT, UoI/NCSA and
|
||||
Apache licenses in many respects but it is intended to solve a few
|
||||
problems with those licenses.
|
||||
* The AFL is written so as to make it clear what software is being
|
||||
licensed (by the inclusion of a statement following the copyright
|
||||
notice in the software). This way, the license functions better
|
||||
than a template license. The BSD, MIT and UoI/NCSA licenses apply
|
||||
to unidentified software.
|
||||
* The AFL contains a complete copyright grant to the software. The
|
||||
BSD and Apache licenses are vague and incomplete in that respect.
|
||||
* The AFL contains a complete patent grant to the software. The BSD,
|
||||
MIT, UoI/NCSA and Apache licenses rely on an implied patent
|
||||
license and contain no explicit patent grant.
|
||||
* The AFL makes it clear that no trademark rights are granted to the
|
||||
licensor's trademarks. The Apache license contains such a
|
||||
provision, but the BSD, MIT and UoI/NCSA licenses do not.
|
||||
* The AFL includes the warranty by the licensor that it either owns
|
||||
the copyright or that it is distributing the software under a
|
||||
license. None of the other licenses contain that warranty. All
|
||||
other warranties are disclaimed, as is the case for the other
|
||||
licenses.
|
||||
* The AFL is itself copyrighted (with the right granted to copy and
|
||||
distribute without modification). This ensures that the owner of
|
||||
the copyright to the license will control changes. The Apache
|
||||
license contains a copyright notice, but the BSD, MIT and UoI/NCSA
|
||||
licenses do not.
|
||||
92
OGP64/usr/share/doc/common-licenses/AFL-1.2
Normal file
92
OGP64/usr/share/doc/common-licenses/AFL-1.2
Normal file
|
|
@ -0,0 +1,92 @@
|
|||
Academic Free License
Version 1.2
|
||||
|
||||
This Academic Free License applies to any original work of authorship
|
||||
(the "Original Work") whose owner (the "Licensor") has placed the
|
||||
following notice immediately following the copyright notice for the
|
||||
Original Work:
Licensed under the Academic Free License version 1.2
|
||||
Grant of License. Licensor hereby grants to any person obtaining a
|
||||
copy of the Original Work ("You") a world-wide, royalty-free,
|
||||
non-exclusive, perpetual, non-sublicenseable license (1) to use, copy,
|
||||
modify, merge, publish, perform, distribute and/or sell copies of the
|
||||
Original Work and derivative works thereof, and (2) under patent claims
|
||||
owned or controlled by the Licensor that are embodied in the Original
|
||||
Work as furnished by the Licensor, to make, use, sell and offer for
|
||||
sale the Original Work and derivative works thereof, subject to the
|
||||
following conditions.
Attribution Rights. You must retain, in the Source Code of any
|
||||
Derivative Works that You create, all copyright, patent or trademark
|
||||
notices from the Source Code of the Original Work, as well as any
|
||||
notices of licensing and any descriptive text identified therein as an
|
||||
"Attribution Notice." You must cause the Source Code for any Derivative
|
||||
Works that You create to carry a prominent Attribution Notice reasonably
|
||||
calculated to inform recipients that You have modified the Original Work.
Exclusions from License Grant. Neither the names of Licensor, nor the
|
||||
names of any contributors to the Original Work, nor any of their
|
||||
trademarks or service marks, may be used to endorse or promote products
|
||||
derived from this Original Work without express prior written permission
|
||||
of the Licensor.
Warranty and Disclaimer of Warranty. Licensor warrants that the copyright
|
||||
in and to the Original Work is owned by the Licensor or that the Original
|
||||
Work is distributed by Licensor under a valid current license from the
|
||||
copyright owner. Except as expressly stated in the immediately proceeding
|
||||
sentence, the Original Work is provided under this License on an "AS IS"
|
||||
BASIS and WITHOUT WARRANTY, either express or implied, including, without
|
||||
limitation, the warranties of NON-INFRINGEMENT, MERCHANTABILITY or FITNESS
|
||||
FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS TO THE QUALITY OF THE ORIGINAL
|
||||
WORK IS WITH YOU. This DISCLAIMER OF WARRANTY constitutes an essential part
|
||||
of this License. No license to Original Work is granted hereunder except
|
||||
under this disclaimer.
Limitation of Liability. Under no circumstances and under no legal theory,
|
||||
whether in tort (including negligence), contract, or otherwise, shall the
|
||||
Licensor be liable to any person for any direct, indirect, special,
|
||||
incidental, or consequential damages of any character arising as a result
|
||||
of this License or the use of the Original Work including, without
|
||||
limitation, damages for loss of goodwill, work stoppage, computer failure
|
||||
or malfunction, or any and all other commercial damages or losses. This
|
||||
limitation of liability shall not apply to liability for death or personal
|
||||
injury resulting from Licensor'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.
License to Source Code. The term "Source Code" means the preferred form of
|
||||
the Original Work for making modifications to it and all available
|
||||
documentation describing how to modify the Original Work. Licensor hereby
|
||||
agrees to provide a machine-readable copy of the Source Code of the Original
|
||||
Work along with each copy of the Original Work that Licensor distributes.
|
||||
Licensor reserves the right to satisfy this obligation by placing a
|
||||
machine-readable copy of the Source Code in an information repository
|
||||
reasonably calculated to permit inexpensive and convenient access by You for
|
||||
as long as Licensor continues to distribute the Original Work, and by
|
||||
publishing the address of that information repository in a notice immediately
|
||||
following the copyright notice that applies to the Original Work.
Mutual Termination for Patent Action. This License shall terminate
|
||||
automatically and You may no longer exercise any of the rights granted to You
|
||||
by this License if You file a lawsuit in any court alleging that any OSI
|
||||
Certified open source software that is licensed under any license containing
|
||||
this "Mutual Termination for Patent Action" clause infringes any patent
|
||||
claims that are essential to use that software.
Right to Use. You may use the Original Work in all ways not otherwise
|
||||
restricted or conditioned by this License or by law, and Licensor promises
|
||||
not to interfere with or be responsible for such uses by You.
This license is Copyright (C) 2002 Lawrence E. Rosen. All rights reserved.
|
||||
Permission is hereby granted to copy and distribute this license without
|
||||
modification. This license may not be modified without the express written
|
||||
permission of its copyright owner.
--
END OF LICENSE. The following is intended to describe the essential
|
||||
differences between the Academic Free License (AFL) version 1.0 and other
|
||||
open source licenses:
The Academic Free License is similar to the BSD, MIT, UoI/NCSA and Apache
|
||||
licenses in many respects but it is intended to solve a few problems with
|
||||
those licenses.
|
||||
|
||||
* The AFL is written so as to make it clear what software is being
|
||||
licensed (by the inclusion of a statement following the copyright notice
|
||||
in the software). This way, the license functions better than a template
|
||||
license. The BSD, MIT and UoI/NCSA licenses apply to unidentified software.
|
||||
* The AFL contains a complete copyright grant to the software. The BSD
|
||||
and Apache licenses are vague and incomplete in that respect.
|
||||
* The AFL contains a complete patent grant to the software. The BSD, MIT,
|
||||
UoI/NCSA and Apache licenses rely on an implied patent license and contain
|
||||
no explicit patent grant.
|
||||
* The AFL makes it clear that no trademark rights are granted to the
|
||||
licensor's trademarks. The Apache license contains such a provision, but the
|
||||
BSD, MIT and UoI/NCSA licenses do not.
|
||||
* The AFL includes the warranty by the licensor that it either owns the
|
||||
copyright or that it is distributing the software under a license. None of
|
||||
the other licenses contain that warranty. All other warranties are disclaimed,
|
||||
as is the case for the other licenses.
|
||||
|
||||
* The AFL is itself copyrighted (with the right granted to copy and distribute
|
||||
without modification). This ensures that the owner of the copyright to the
|
||||
license will control changes. The Apache license contains a copyright notice,
|
||||
but the BSD, MIT and UoI/NCSA licenses do not.
|
||||
46
OGP64/usr/share/doc/common-licenses/AFL-2.0
Normal file
46
OGP64/usr/share/doc/common-licenses/AFL-2.0
Normal file
|
|
@ -0,0 +1,46 @@
|
|||
The Academic Free License
|
||||
v. 2.0
|
||||
|
||||
This Academic Free License (the "License") applies to any original work of authorship (the "Original Work") whose owner (the "Licensor") has placed the following notice immediately following the copyright notice for the Original Work:
|
||||
Licensed under the Academic Free License version 2.0
|
||||
|
||||
1) Grant of Copyright License. Licensor hereby grants You a world-wide, royalty-free, non-exclusive, perpetual, sublicenseable license to do the following:
|
||||
a) to reproduce the Original Work in copies;
|
||||
|
||||
b) to prepare derivative works ("Derivative Works") based upon the Original Work;
|
||||
|
||||
c) to distribute copies of the Original Work and Derivative Works to the public;
|
||||
|
||||
d) to perform the Original Work publicly; and
|
||||
|
||||
e) to display the Original Work publicly.
|
||||
|
||||
2) Grant of Patent License. Licensor hereby grants You a world-wide, royalty-free, non-exclusive, perpetual, sublicenseable license, under patent claims owned or controlled by the Licensor that are embodied in the Original Work as furnished by the Licensor, to make, use, sell and offer for sale the Original Work and Derivative Works.
|
||||
|
||||
3) Grant of Source Code License. The term "Source Code" means the preferred form of the Original Work for making modifications to it and all available documentation describing how to modify the Original Work. Licensor hereby agrees to provide a machine-readable copy of the Source Code of the Original Work along with each copy of the Original Work that Licensor distributes. Licensor reserves the right to satisfy this obligation by placing a machine-readable copy of the Source Code in an information repository reasonably calculated to permit inexpensive and convenient access by You for as long as Licensor continues to distribute the Original Work, and by publishing the address of that information repository in a notice immediately following the copyright notice that applies to the Original Work.
|
||||
|
||||
4) Exclusions From License Grant. Neither the names of Licensor, nor the names of any contributors to the Original Work, nor any of their trademarks or service marks, may be used to endorse or promote products derived from this Original Work without express prior written permission of the Licensor. Nothing in this License shall be deemed to grant any rights to trademarks, copyrights, patents, trade secrets or any other intellectual property of Licensor except as expressly stated herein. No patent license is granted to make, use, sell or offer to sell embodiments of any patent claims other than the licensed claims defined in Section 2. No right is granted to the trademarks of Licensor even if such marks are included in the Original Work. Nothing in this License shall be interpreted to prohibit Licensor from licensing under different terms from this License any Original Work that Licensor otherwise would have a right to license.
|
||||
|
||||
5) This section intentionally omitted.
|
||||
|
||||
6) Attribution Rights. You must retain, in the Source Code of any Derivative Works that You create, all copyright, patent or trademark notices from the Source Code of the Original Work, as well as any notices of licensing and any descriptive text identified therein as an "Attribution Notice." You must cause the Source Code for any Derivative Works that You create to carry a prominent Attribution Notice reasonably calculated to inform recipients that You have modified the Original Work.
|
||||
|
||||
7) Warranty of Provenance and Disclaimer of Warranty. Licensor warrants that the copyright in and to the Original Work and the patent rights granted herein by Licensor are owned by the Licensor or are sublicensed to You under the terms of this License with the permission of the contributor(s) of those copyrights and patent rights. Except as expressly stated in the immediately proceeding sentence, the Original Work is provided under this License on an "AS IS" BASIS and WITHOUT WARRANTY, either express or implied, including, without limitation, the warranties of NON-INFRINGEMENT, MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS TO THE QUALITY OF THE ORIGINAL WORK IS WITH YOU. This DISCLAIMER OF WARRANTY constitutes an essential part of this License. No license to Original Work is granted hereunder except under this disclaimer.
|
||||
|
||||
8) Limitation of Liability. Under no circumstances and under no legal theory, whether in tort (including negligence), contract, or otherwise, shall the Licensor be liable to any person for any direct, indirect, special, incidental, or consequential damages of any character arising as a result of this License or the use of the Original Work including, without limitation, damages for loss of goodwill, work stoppage, computer failure or malfunction, or any and all other commercial damages or losses. This limitation of liability shall not apply to liability for death or personal injury resulting from Licensor'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.
|
||||
|
||||
9) Acceptance and Termination. If You distribute copies of the Original Work or a Derivative Work, You must make a reasonable effort under the circumstances to obtain the express assent of recipients to the terms of this License. Nothing else but this License (or another written agreement between Licensor and You) grants You permission to create Derivative Works based upon the Original Work or to exercise any of the rights granted in Section 1 herein, and any attempt to do so except under the terms of this License (or another written agreement between Licensor and You) is expressly prohibited by U.S. copyright law, the equivalent laws of other countries, and by international treaty. Therefore, by exercising any of the rights granted to You in Section 1 herein, You indicate Your acceptance of this License and all of its terms and conditions.
|
||||
|
||||
10) Termination for Patent Action. This License shall terminate automatically and You may no longer exercise any of the rights granted to You by this License as of the date You commence an action, including a cross-claim or counterclaim, for patent infringement (i) against Licensor with respect to a patent applicable to software or (ii) against any entity with respect to a patent applicable to the Original Work (but excluding combinations of the Original Work with other software or hardware).
|
||||
|
||||
11) Jurisdiction, Venue and Governing Law. Any action or suit relating to this License may be brought only in the courts of a jurisdiction wherein the Licensor resides or in which Licensor conducts its primary business, and under the laws of that jurisdiction excluding its conflict-of-law provisions. The application of the United Nations Convention on Contracts for the International Sale of Goods is expressly excluded. Any use of the Original Work outside the scope of this License or after its termination shall be subject to the requirements and penalties of the U.S. Copyright Act, 17 U.S.C. ¤ 101 et seq., the equivalent laws of other countries, and international treaty. This section shall survive the termination of this License.
|
||||
|
||||
12) Attorneys Fees. In any action to enforce the terms of this License or seeking damages relating thereto, the prevailing party shall be entitled to recover its costs and expenses, including, without limitation, reasonable attorneys' fees and costs incurred in connection with such action, including any appeal of such action. This section shall survive the termination of this License.
|
||||
|
||||
13) Miscellaneous. This License represents the complete agreement concerning the 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.
|
||||
|
||||
14) Definition of "You" in This License. "You" throughout this License, whether in upper or lower case, means an individual or a legal entity exercising rights under, and complying with all of the terms of, this License. For legal entities, "You" includes any entity that controls, is controlled by, or is under common control with you. For purposes of this definition, "control" means (i) the power, direct or indirect, to cause the direction or management of such entity, whether by contract or otherwise, or (ii) ownership of fifty percent (50%) or more of the outstanding shares, or (iii) beneficial ownership of such entity.
|
||||
|
||||
15) Right to Use. You may use the Original Work in all ways not otherwise restricted or conditioned by this License or by law, and Licensor promises not to interfere with or be responsible for such uses by You.
|
||||
|
||||
This license is Copyright (C) 2003 Lawrence E. Rosen. All rights reserved. Permission is hereby granted to copy and distribute this license without modification. This license may not be modified without the express written permission of its copyright owner.
|
||||
51
OGP64/usr/share/doc/common-licenses/AFL-2.1
Normal file
51
OGP64/usr/share/doc/common-licenses/AFL-2.1
Normal file
|
|
@ -0,0 +1,51 @@
|
|||
The Academic Free License
|
||||
v. 2.1
|
||||
|
||||
This Academic Free License (the "License") applies to any original work of authorship (the "Original Work") whose owner (the "Licensor") has placed the following notice immediately following the copyright notice for the Original Work:
|
||||
|
||||
Licensed under the Academic Free License version 2.1
|
||||
|
||||
1) Grant of Copyright License. Licensor hereby grants You a world-wide, royalty-free, non-exclusive, perpetual, sublicenseable license to do the following:
|
||||
|
||||
a) to reproduce the Original Work in copies;
|
||||
|
||||
b) to prepare derivative works ("Derivative Works") based upon the Original Work;
|
||||
|
||||
c) to distribute copies of the Original Work and Derivative Works to the public;
|
||||
|
||||
d) to perform the Original Work publicly; and
|
||||
|
||||
e) to display the Original Work publicly.
|
||||
|
||||
2) Grant of Patent License. Licensor hereby grants You a world-wide, royalty-free, non-exclusive, perpetual, sublicenseable license, under patent claims owned or controlled by the Licensor that are embodied in the Original Work as furnished by the Licensor, to make, use, sell and offer for sale the Original Work and Derivative Works.
|
||||
|
||||
3) Grant of Source Code License. The term "Source Code" means the preferred form of the Original Work for making modifications to it and all available documentation describing how to modify the Original Work. Licensor hereby agrees to provide a machine-readable copy of the Source Code of the Original Work along with each copy of the Original Work that Licensor distributes. Licensor reserves the right to satisfy this obligation by placing a machine-readable copy of the Source Code in an information repository reasonably calculated to permit inexpensive and convenient access by You for as long as Licensor continues to distribute the Original Work, and by publishing the address of that information repository in a notice immediately following the copyright notice that applies to the Original Work.
|
||||
|
||||
4) Exclusions From License Grant. Neither the names of Licensor, nor the names of any contributors to the Original Work, nor any of their trademarks or service marks, may be used to endorse or promote products derived from this Original Work without express prior written permission of the Licensor. Nothing in this License shall be deemed to grant any rights to trademarks, copyrights, patents, trade secrets or any other intellectual property of Licensor except as expressly stated herein. No patent license is granted to make, use, sell or offer to sell embodiments of any patent claims other than the licensed claims defined in Section 2. No right is granted to the trademarks of Licensor even if such marks are included in the Original Work. Nothing in this License shall be interpreted to prohibit Licensor from licensing under different terms from this License any Original Work that Licensor otherwise would have a right to license.
|
||||
|
||||
5) This section intentionally omitted.
|
||||
|
||||
6) Attribution Rights. You must retain, in the Source Code of any Derivative Works that You create, all copyright, patent or trademark notices from the Source Code of the Original Work, as well as any notices of licensing and any descriptive text identified therein as an "Attribution Notice." You must cause the Source Code for any Derivative Works that You create to carry a prominent Attribution Notice reasonably calculated to inform recipients that You have modified the Original Work.
|
||||
|
||||
7) Warranty of Provenance and Disclaimer of Warranty. Licensor warrants that the copyright in and to the Original Work and the patent rights granted herein by Licensor are owned by the Licensor or are sublicensed to You under the terms of this License with the permission of the contributor(s) of those copyrights and patent rights. Except as expressly stated in the immediately proceeding sentence, the Original Work is provided under this License on an "AS IS" BASIS and WITHOUT WARRANTY, either express or implied, including, without limitation, the warranties of NON-INFRINGEMENT, MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS TO THE QUALITY OF THE ORIGINAL WORK IS WITH YOU. This DISCLAIMER OF WARRANTY constitutes an essential part of this License. No license to Original Work is granted hereunder except under this disclaimer.
|
||||
|
||||
8) Limitation of Liability. Under no circumstances and under no legal theory, whether in tort (including negligence), contract, or otherwise, shall the Licensor be liable to any person for any direct, indirect, special, incidental, or consequential damages of any character arising as a result of this License or the use of the Original Work including, without limitation, damages for loss of goodwill, work stoppage, computer failure or malfunction, or any and all other commercial damages or losses. This limitation of liability shall not apply to liability for death or personal injury resulting from Licensor'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.
|
||||
|
||||
9) Acceptance and Termination. If You distribute copies of the Original Work or a Derivative Work, You must make a reasonable effort under the circumstances to obtain the express assent of recipients to the terms of this License. Nothing else but this License (or another written agreement between Licensor and You) grants You permission to create Derivative Works based upon the Original Work or to exercise any of the rights granted in Section 1 herein, and any attempt to do so except under the terms of this License (or another written agreement between Licensor and You) is expressly prohibited by U.S. copyright law, the equivalent laws of other countries, and by international treaty. Therefore, by exercising any of the rights granted to You in Section 1 herein, You indicate Your acceptance of this License and all of its terms and conditions.
|
||||
|
||||
10) Termination for Patent Action. This License shall terminate automatically and You may no longer exercise any of the rights granted to You by this License as of the date You commence an action, including a cross-claim or counterclaim, against Licensor or any licensee alleging that the Original Work infringes a patent. This termination provision shall not apply for an action alleging patent infringement by combinations of the Original Work with other software or hardware.
|
||||
|
||||
11) Jurisdiction, Venue and Governing Law. Any action or suit relating to this License may be brought only in the courts of a jurisdiction wherein the Licensor resides or in which Licensor conducts its primary business, and under the laws of that jurisdiction excluding its conflict-of-law provisions. The application of the United Nations Convention on Contracts for the International Sale of Goods is expressly excluded. Any use of the Original Work outside the scope of this License or after its termination shall be subject to the requirements and penalties of the U.S. Copyright Act, 17 U.S.C. § 101 et seq., the equivalent laws of other countries, and international treaty. This section shall survive the termination of this License.
|
||||
|
||||
12) Attorneys Fees. In any action to enforce the terms of this License or seeking damages relating thereto, the prevailing party shall be entitled to recover its costs and expenses, including, without limitation, reasonable attorneys' fees and costs incurred in connection with such action, including any appeal of such action. This section shall survive the termination of this License.
|
||||
|
||||
13) Miscellaneous. This License represents the complete agreement concerning the 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.
|
||||
|
||||
14) Definition of "You" in This License. "You" throughout this License, whether in upper or lower case, means an individual or a legal entity exercising rights under, and complying with all of the terms of, this License. For legal entities, "You" includes any entity that controls, is controlled by, or is under common control with you. For purposes of this definition, "control" means (i) the power, direct or indirect, to cause the direction or management of such entity, whether by contract or otherwise, or (ii) ownership of fifty percent (50%) or more of the outstanding shares, or (iii) beneficial ownership of such entity.
|
||||
|
||||
15) Right to Use. You may use the Original Work in all ways not otherwise restricted or conditioned by this License or by law, and Licensor promises not to interfere with or be responsible for such uses by You.
|
||||
|
||||
This license is Copyright (C) 2003-2004 Lawrence E. Rosen. All rights reserved. Permission is hereby granted to copy and distribute this license without modification. This license may not be modified without the express written permission of its copyright owner.
|
||||
|
||||
|
||||
|
||||
BIN
OGP64/usr/share/doc/common-licenses/Apache
Normal file
BIN
OGP64/usr/share/doc/common-licenses/Apache
Normal file
Binary file not shown.
59
OGP64/usr/share/doc/common-licenses/Apache-1.0
Normal file
59
OGP64/usr/share/doc/common-licenses/Apache-1.0
Normal file
|
|
@ -0,0 +1,59 @@
|
|||
/* ====================================================================
|
||||
* Copyright (c) 1995-1999 The Apache Group. All rights reserved.
|
||||
*
|
||||
* Redistribution and use in source and binary forms, with or without
|
||||
* modification, are permitted provided that the following conditions
|
||||
* are met:
|
||||
*
|
||||
* 1. Redistributions of source code must retain the above copyright
|
||||
* notice, this list of conditions and the following disclaimer.
|
||||
*
|
||||
* 2. Redistributions in binary form must reproduce the above copyright
|
||||
* notice, this list of conditions and the following disclaimer in
|
||||
* the documentation and/or other materials provided with the
|
||||
* distribution.
|
||||
*
|
||||
* 3. All advertising materials mentioning features or use of this
|
||||
* software must display the following acknowledgment:
|
||||
* "This product includes software developed by the Apache Group
|
||||
* for use in the Apache HTTP server project (http://www.apache.org/)."
|
||||
*
|
||||
* 4. The names "Apache Server" and "Apache Group" must not be used to
|
||||
* endorse or promote products derived from this software without
|
||||
* prior written permission. For written permission, please contact
|
||||
* apache@apache.org.
|
||||
*
|
||||
* 5. Products derived from this software may not be called "Apache"
|
||||
* nor may "Apache" appear in their names without prior written
|
||||
* permission of the Apache Group.
|
||||
*
|
||||
* 6. Redistributions of any form whatsoever must retain the following
|
||||
* acknowledgment:
|
||||
* "This product includes software developed by the Apache Group
|
||||
* for use in the Apache HTTP server project (http://www.apache.org/)."
|
||||
*
|
||||
* THIS SOFTWARE IS PROVIDED BY THE APACHE GROUP ``AS IS'' AND ANY
|
||||
* EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
|
||||
* IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
|
||||
* PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE APACHE GROUP OR
|
||||
* ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
|
||||
* SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
|
||||
* NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
|
||||
* LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
|
||||
* HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,
|
||||
* STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
|
||||
* ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED
|
||||
* OF THE POSSIBILITY OF SUCH DAMAGE.
|
||||
* ====================================================================
|
||||
*
|
||||
* This software consists of voluntary contributions made by many
|
||||
* individuals on behalf of the Apache Group and was originally based
|
||||
* on public domain software written at the National Center for
|
||||
* Supercomputing Applications, University of Illinois, Urbana-Champaign.
|
||||
* For more information on the Apache Group and the Apache HTTP server
|
||||
* project, please see <http://www.apache.org/>.
|
||||
*
|
||||
*/
|
||||
|
||||
|
||||
|
||||
58
OGP64/usr/share/doc/common-licenses/Apache-1.1
Normal file
58
OGP64/usr/share/doc/common-licenses/Apache-1.1
Normal file
|
|
@ -0,0 +1,58 @@
|
|||
/* ====================================================================
|
||||
* The Apache Software License, Version 1.1
|
||||
*
|
||||
* Copyright (c) 2000 The Apache Software Foundation. All rights
|
||||
* reserved.
|
||||
*
|
||||
* Redistribution and use in source and binary forms, with or without
|
||||
* modification, are permitted provided that the following conditions
|
||||
* are met:
|
||||
*
|
||||
* 1. Redistributions of source code must retain the above copyright
|
||||
* notice, this list of conditions and the following disclaimer.
|
||||
*
|
||||
* 2. Redistributions in binary form must reproduce the above copyright
|
||||
* notice, this list of conditions and the following disclaimer in
|
||||
* the documentation and/or other materials provided with the
|
||||
* distribution.
|
||||
*
|
||||
* 3. The end-user documentation included with the redistribution,
|
||||
* if any, must include the following acknowledgment:
|
||||
* "This product includes software developed by the
|
||||
* Apache Software Foundation (http://www.apache.org/)."
|
||||
* Alternately, this acknowledgment may appear in the software itself,
|
||||
* if and wherever such third-party acknowledgments normally appear.
|
||||
*
|
||||
* 4. The names "Apache" and "Apache Software Foundation" must
|
||||
* not be used to endorse or promote products derived from this
|
||||
* software without prior written permission. For written
|
||||
* permission, please contact apache@apache.org.
|
||||
*
|
||||
* 5. Products derived from this software may not be called "Apache",
|
||||
* nor may "Apache" appear in their name, without prior written
|
||||
* permission of the Apache Software Foundation.
|
||||
*
|
||||
* THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED
|
||||
* WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
|
||||
* OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
|
||||
* DISCLAIMED. IN NO EVENT SHALL THE APACHE SOFTWARE FOUNDATION OR
|
||||
* ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
|
||||
* SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
|
||||
* LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF
|
||||
* USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
|
||||
* ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
|
||||
* OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
|
||||
* OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
|
||||
* SUCH DAMAGE.
|
||||
* ====================================================================
|
||||
*
|
||||
* This software consists of voluntary contributions made by many
|
||||
* individuals on behalf of the Apache Software Foundation. For more
|
||||
* information on the Apache Software Foundation, please see
|
||||
* <http://www.apache.org/>.
|
||||
*
|
||||
* Portions of this software are based upon public domain software
|
||||
* originally written at the National Center for Supercomputing Applications,
|
||||
* University of Illinois, Urbana-Champaign.
|
||||
*/
|
||||
|
||||
202
OGP64/usr/share/doc/common-licenses/Apache-2.0
Normal file
202
OGP64/usr/share/doc/common-licenses/Apache-2.0
Normal file
|
|
@ -0,0 +1,202 @@
|
|||
|
||||
Apache License
|
||||
Version 2.0, January 2004
|
||||
http://www.apache.org/licenses/
|
||||
|
||||
TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION
|
||||
|
||||
1. Definitions.
|
||||
|
||||
"License" shall mean the terms and conditions for use, reproduction,
|
||||
and distribution as defined by Sections 1 through 9 of this document.
|
||||
|
||||
"Licensor" shall mean the copyright owner or entity authorized by
|
||||
the copyright owner that is granting the License.
|
||||
|
||||
"Legal Entity" shall mean the union of the acting entity and all
|
||||
other entities that control, are controlled by, or are under common
|
||||
control with that entity. For the purposes of this definition,
|
||||
"control" means (i) the power, direct or indirect, to cause the
|
||||
direction or management of such entity, whether by contract or
|
||||
otherwise, or (ii) ownership of fifty percent (50%) or more of the
|
||||
outstanding shares, or (iii) beneficial ownership of such entity.
|
||||
|
||||
"You" (or "Your") shall mean an individual or Legal Entity
|
||||
exercising permissions granted by this License.
|
||||
|
||||
"Source" form shall mean the preferred form for making modifications,
|
||||
including but not limited to software source code, documentation
|
||||
source, and configuration files.
|
||||
|
||||
"Object" form shall mean any form resulting from mechanical
|
||||
transformation or translation of a Source form, including but
|
||||
not limited to compiled object code, generated documentation,
|
||||
and conversions to other media types.
|
||||
|
||||
"Work" shall mean the work of authorship, whether in Source or
|
||||
Object form, made available under the License, as indicated by a
|
||||
copyright notice that is included in or attached to the work
|
||||
(an example is provided in the Appendix below).
|
||||
|
||||
"Derivative Works" shall mean any work, whether in Source or Object
|
||||
form, that is based on (or derived from) the Work and for which the
|
||||
editorial revisions, annotations, elaborations, or other modifications
|
||||
represent, as a whole, an original work of authorship. For the purposes
|
||||
of this License, Derivative Works shall not include works that remain
|
||||
separable from, or merely link (or bind by name) to the interfaces of,
|
||||
the Work and Derivative Works thereof.
|
||||
|
||||
"Contribution" shall mean any work of authorship, including
|
||||
the original version of the Work and any modifications or additions
|
||||
to that Work or Derivative Works thereof, that is intentionally
|
||||
submitted to Licensor for inclusion in the Work by the copyright owner
|
||||
or by an individual or Legal Entity authorized to submit on behalf of
|
||||
the copyright owner. For the purposes of this definition, "submitted"
|
||||
means any form of electronic, verbal, or written communication sent
|
||||
to the Licensor or its representatives, including but not limited to
|
||||
communication on electronic mailing lists, source code control systems,
|
||||
and issue tracking systems that are managed by, or on behalf of, the
|
||||
Licensor for the purpose of discussing and improving the Work, but
|
||||
excluding communication that is conspicuously marked or otherwise
|
||||
designated in writing by the copyright owner as "Not a Contribution."
|
||||
|
||||
"Contributor" shall mean Licensor and any individual or Legal Entity
|
||||
on behalf of whom a Contribution has been received by Licensor and
|
||||
subsequently incorporated within the Work.
|
||||
|
||||
2. Grant of Copyright License. Subject to the terms and conditions of
|
||||
this License, each Contributor hereby grants to You a perpetual,
|
||||
worldwide, non-exclusive, no-charge, royalty-free, irrevocable
|
||||
copyright license to reproduce, prepare Derivative Works of,
|
||||
publicly display, publicly perform, sublicense, and distribute the
|
||||
Work and such Derivative Works in Source or Object form.
|
||||
|
||||
3. Grant of Patent License. Subject to the terms and conditions of
|
||||
this License, each Contributor hereby grants to You a perpetual,
|
||||
worldwide, non-exclusive, no-charge, royalty-free, irrevocable
|
||||
(except as stated in this section) patent license to make, have made,
|
||||
use, offer to sell, sell, import, and otherwise transfer the Work,
|
||||
where such license applies only to those patent claims licensable
|
||||
by such Contributor that are necessarily infringed by their
|
||||
Contribution(s) alone or by combination of their Contribution(s)
|
||||
with the Work to which such Contribution(s) was submitted. If You
|
||||
institute patent litigation against any entity (including a
|
||||
cross-claim or counterclaim in a lawsuit) alleging that the Work
|
||||
or a Contribution incorporated within the Work constitutes direct
|
||||
or contributory patent infringement, then any patent licenses
|
||||
granted to You under this License for that Work shall terminate
|
||||
as of the date such litigation is filed.
|
||||
|
||||
4. Redistribution. You may reproduce and distribute copies of the
|
||||
Work or Derivative Works thereof in any medium, with or without
|
||||
modifications, and in Source or Object form, provided that You
|
||||
meet the following conditions:
|
||||
|
||||
(a) You must give any other recipients of the Work or
|
||||
Derivative Works a copy of this License; and
|
||||
|
||||
(b) You must cause any modified files to carry prominent notices
|
||||
stating that You changed the files; and
|
||||
|
||||
(c) You must retain, in the Source form of any Derivative Works
|
||||
that You distribute, all copyright, patent, trademark, and
|
||||
attribution notices from the Source form of the Work,
|
||||
excluding those notices that do not pertain to any part of
|
||||
the Derivative Works; and
|
||||
|
||||
(d) If the Work includes a "NOTICE" text file as part of its
|
||||
distribution, then any Derivative Works that You distribute must
|
||||
include a readable copy of the attribution notices contained
|
||||
within such NOTICE file, excluding those notices that do not
|
||||
pertain to any part of the Derivative Works, in at least one
|
||||
of the following places: within a NOTICE text file distributed
|
||||
as part of the Derivative Works; within the Source form or
|
||||
documentation, if provided along with the Derivative Works; or,
|
||||
within a display generated by the Derivative Works, if and
|
||||
wherever such third-party notices normally appear. The contents
|
||||
of the NOTICE file are for informational purposes only and
|
||||
do not modify the License. You may add Your own attribution
|
||||
notices within Derivative Works that You distribute, alongside
|
||||
or as an addendum to the NOTICE text from the Work, provided
|
||||
that such additional attribution notices cannot be construed
|
||||
as modifying the License.
|
||||
|
||||
You may add Your own copyright statement to Your modifications and
|
||||
may provide additional or different license terms and conditions
|
||||
for use, reproduction, or distribution of Your modifications, or
|
||||
for any such Derivative Works as a whole, provided Your use,
|
||||
reproduction, and distribution of the Work otherwise complies with
|
||||
the conditions stated in this License.
|
||||
|
||||
5. Submission of Contributions. Unless You explicitly state otherwise,
|
||||
any Contribution intentionally submitted for inclusion in the Work
|
||||
by You to the Licensor shall be under the terms and conditions of
|
||||
this License, without any additional terms or conditions.
|
||||
Notwithstanding the above, nothing herein shall supersede or modify
|
||||
the terms of any separate license agreement you may have executed
|
||||
with Licensor regarding such Contributions.
|
||||
|
||||
6. Trademarks. This License does not grant permission to use the trade
|
||||
names, trademarks, service marks, or product names of the Licensor,
|
||||
except as required for reasonable and customary use in describing the
|
||||
origin of the Work and reproducing the content of the NOTICE file.
|
||||
|
||||
7. Disclaimer of Warranty. Unless required by applicable law or
|
||||
agreed to in writing, Licensor provides the Work (and each
|
||||
Contributor provides its Contributions) on an "AS IS" BASIS,
|
||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
|
||||
implied, including, without limitation, any warranties or conditions
|
||||
of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A
|
||||
PARTICULAR PURPOSE. You are solely responsible for determining the
|
||||
appropriateness of using or redistributing the Work and assume any
|
||||
risks associated with Your exercise of permissions under this License.
|
||||
|
||||
8. Limitation of Liability. In no event and under no legal theory,
|
||||
whether in tort (including negligence), contract, or otherwise,
|
||||
unless required by applicable law (such as deliberate and grossly
|
||||
negligent acts) or agreed to in writing, shall any Contributor be
|
||||
liable to You for damages, including any direct, indirect, special,
|
||||
incidental, or consequential damages of any character arising as a
|
||||
result of this License or out of the use or inability to use the
|
||||
Work (including but not limited to damages for loss of goodwill,
|
||||
work stoppage, computer failure or malfunction, or any and all
|
||||
other commercial damages or losses), even if such Contributor
|
||||
has been advised of the possibility of such damages.
|
||||
|
||||
9. Accepting Warranty or Additional Liability. While redistributing
|
||||
the Work or Derivative Works thereof, You may choose to offer,
|
||||
and charge a fee for, acceptance of support, warranty, indemnity,
|
||||
or other liability obligations and/or rights consistent with this
|
||||
License. However, in accepting such obligations, You may act only
|
||||
on Your own behalf and on Your sole responsibility, not on behalf
|
||||
of any other Contributor, and only if You agree to indemnify,
|
||||
defend, and hold each Contributor harmless for any liability
|
||||
incurred by, or claims asserted against, such Contributor by reason
|
||||
of your accepting any such warranty or additional liability.
|
||||
|
||||
END OF TERMS AND CONDITIONS
|
||||
|
||||
APPENDIX: How to apply the Apache License to your work.
|
||||
|
||||
To apply the Apache License to your work, attach the following
|
||||
boilerplate notice, with the fields enclosed by brackets "[]"
|
||||
replaced with your own identifying information. (Don't include
|
||||
the brackets!) The text should be enclosed in the appropriate
|
||||
comment syntax for the file format. We also recommend that a
|
||||
file or class name and description of purpose be included on the
|
||||
same "printed page" as the copyright notice for easier
|
||||
identification within third-party archives.
|
||||
|
||||
Copyright [yyyy] [name of copyright owner]
|
||||
|
||||
Licensed under the Apache License, Version 2.0 (the "License");
|
||||
you may not use this file except in compliance with the License.
|
||||
You may obtain a copy of the License at
|
||||
|
||||
http://www.apache.org/licenses/LICENSE-2.0
|
||||
|
||||
Unless required by applicable law or agreed to in writing, software
|
||||
distributed under the License is distributed on an "AS IS" BASIS,
|
||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
See the License for the specific language governing permissions and
|
||||
limitations under the License.
|
||||
131
OGP64/usr/share/doc/common-licenses/Artistic
Normal file
131
OGP64/usr/share/doc/common-licenses/Artistic
Normal file
|
|
@ -0,0 +1,131 @@
|
|||
|
||||
|
||||
|
||||
|
||||
The "Artistic License"
|
||||
|
||||
Preamble
|
||||
|
||||
The intent of this document is to state the conditions under which a
|
||||
Package may be copied, such that the Copyright Holder maintains some
|
||||
semblance of artistic control over the development of the package,
|
||||
while giving the users of the package the right to use and distribute
|
||||
the Package in a more-or-less customary fashion, plus the right to make
|
||||
reasonable modifications.
|
||||
|
||||
Definitions:
|
||||
|
||||
"Package" refers to the collection of files distributed by the
|
||||
Copyright Holder, and derivatives of that collection of files
|
||||
created through textual modification.
|
||||
|
||||
"Standard Version" refers to such a Package if it has not been
|
||||
modified, or has been modified in accordance with the wishes
|
||||
of the Copyright Holder as specified below.
|
||||
|
||||
"Copyright Holder" is whoever is named in the copyright or
|
||||
copyrights for the package.
|
||||
|
||||
"You" is you, if you're thinking about copying or distributing
|
||||
this Package.
|
||||
|
||||
"Reasonable copying fee" is whatever you can justify on the
|
||||
basis of media cost, duplication charges, time of people involved,
|
||||
and so on. (You will not be required to justify it to the
|
||||
Copyright Holder, but only to the computing community at large
|
||||
as a market that must bear the fee.)
|
||||
|
||||
"Freely Available" means that no fee is charged for the item
|
||||
itself, though there may be fees involved in handling the item.
|
||||
It also means that recipients of the item may redistribute it
|
||||
under the same conditions they received it.
|
||||
|
||||
1. You may make and give away verbatim copies of the source form of the
|
||||
Standard Version of this Package without restriction, provided that you
|
||||
duplicate all of the original copyright notices and associated disclaimers.
|
||||
|
||||
2. You may apply bug fixes, portability fixes and other modifications
|
||||
derived from the Public Domain or from the Copyright Holder. A Package
|
||||
modified in such a way shall still be considered the Standard Version.
|
||||
|
||||
3. You may otherwise modify your copy of this Package in any way, provided
|
||||
that you insert a prominent notice in each changed file stating how and
|
||||
when you changed that file, and provided that you do at least ONE of the
|
||||
following:
|
||||
|
||||
a) place your modifications in the Public Domain or otherwise make them
|
||||
Freely Available, such as by posting said modifications to Usenet or
|
||||
an equivalent medium, or placing the modifications on a major archive
|
||||
site such as uunet.uu.net, or by allowing the Copyright Holder to include
|
||||
your modifications in the Standard Version of the Package.
|
||||
|
||||
b) use the modified Package only within your corporation or organization.
|
||||
|
||||
c) rename any non-standard executables so the names do not conflict
|
||||
with standard executables, which must also be provided, and provide
|
||||
a separate manual page for each non-standard executable that clearly
|
||||
documents how it differs from the Standard Version.
|
||||
|
||||
d) make other distribution arrangements with the Copyright Holder.
|
||||
|
||||
4. You may distribute the programs of this Package in object code or
|
||||
executable form, provided that you do at least ONE of the following:
|
||||
|
||||
a) distribute a Standard Version of the executables and library files,
|
||||
together with instructions (in the manual page or equivalent) on where
|
||||
to get the Standard Version.
|
||||
|
||||
b) accompany the distribution with the machine-readable source of
|
||||
the Package with your modifications.
|
||||
|
||||
c) give non-standard executables non-standard names, and clearly
|
||||
document the differences in manual pages (or equivalent), together
|
||||
with instructions on where to get the Standard Version.
|
||||
|
||||
d) make other distribution arrangements with the Copyright Holder.
|
||||
|
||||
5. You may charge a reasonable copying fee for any distribution of this
|
||||
Package. You may charge any fee you choose for support of this
|
||||
Package. You may not charge a fee for this Package itself. However,
|
||||
you may distribute this Package in aggregate with other (possibly
|
||||
commercial) programs as part of a larger (possibly commercial) software
|
||||
distribution provided that you do not advertise this Package as a
|
||||
product of your own. You may embed this Package's interpreter within
|
||||
an executable of yours (by linking); this shall be construed as a mere
|
||||
form of aggregation, provided that the complete Standard Version of the
|
||||
interpreter is so embedded.
|
||||
|
||||
6. The scripts and library files supplied as input to or produced as
|
||||
output from the programs of this Package do not automatically fall
|
||||
under the copyright of this Package, but belong to whoever generated
|
||||
them, and may be sold commercially, and may be aggregated with this
|
||||
Package. If such scripts or library files are aggregated with this
|
||||
Package via the so-called "undump" or "unexec" methods of producing a
|
||||
binary executable image, then distribution of such an image shall
|
||||
neither be construed as a distribution of this Package nor shall it
|
||||
fall under the restrictions of Paragraphs 3 and 4, provided that you do
|
||||
not represent such an executable image as a Standard Version of this
|
||||
Package.
|
||||
|
||||
7. C subroutines (or comparably compiled subroutines in other
|
||||
languages) supplied by you and linked into this Package in order to
|
||||
emulate subroutines and variables of the language defined by this
|
||||
Package shall not be considered part of this Package, but are the
|
||||
equivalent of input as in Paragraph 6, provided these subroutines do
|
||||
not change the language in any way that would cause it to fail the
|
||||
regression tests for the language.
|
||||
|
||||
8. Aggregation of this Package with a commercial distribution is always
|
||||
permitted provided that the use of this Package is embedded; that is,
|
||||
when no overt attempt is made to make this Package's interfaces visible
|
||||
to the end user of the commercial distribution. Such use shall not be
|
||||
construed as a distribution of this Package.
|
||||
|
||||
9. The name of the Copyright Holder may not be used to endorse or promote
|
||||
products derived from this software without specific prior written permission.
|
||||
|
||||
10. THIS PACKAGE IS PROVIDED "AS IS" AND WITHOUT ANY EXPRESS OR
|
||||
IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED
|
||||
WARRANTIES OF MERCHANTIBILITY AND FITNESS FOR A PARTICULAR PURPOSE.
|
||||
|
||||
The End
|
||||
26
OGP64/usr/share/doc/common-licenses/BSD
Normal file
26
OGP64/usr/share/doc/common-licenses/BSD
Normal file
|
|
@ -0,0 +1,26 @@
|
|||
Copyright (c) The Regents of the University of California.
|
||||
All rights reserved.
|
||||
|
||||
Redistribution and use in source and binary forms, with or without
|
||||
modification, are permitted provided that the following conditions
|
||||
are met:
|
||||
1. Redistributions of source code must retain the above copyright
|
||||
notice, this list of conditions and the following disclaimer.
|
||||
2. Redistributions in binary form must reproduce the above copyright
|
||||
notice, this list of conditions and the following disclaimer in the
|
||||
documentation and/or other materials provided with the distribution.
|
||||
3. Neither the name of the University nor the names of its contributors
|
||||
may be used to endorse or promote products derived from this software
|
||||
without specific prior written permission.
|
||||
|
||||
THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
|
||||
ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
|
||||
IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
|
||||
ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
|
||||
FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
|
||||
DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
|
||||
OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
|
||||
HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
|
||||
LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
|
||||
OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
|
||||
SUCH DAMAGE.
|
||||
BIN
OGP64/usr/share/doc/common-licenses/CC0
Normal file
BIN
OGP64/usr/share/doc/common-licenses/CC0
Normal file
Binary file not shown.
121
OGP64/usr/share/doc/common-licenses/CC0-1.0
Normal file
121
OGP64/usr/share/doc/common-licenses/CC0-1.0
Normal file
|
|
@ -0,0 +1,121 @@
|
|||
Creative Commons Legal Code
|
||||
|
||||
CC0 1.0 Universal
|
||||
|
||||
CREATIVE COMMONS CORPORATION IS NOT A LAW FIRM AND DOES NOT PROVIDE
|
||||
LEGAL SERVICES. DISTRIBUTION OF THIS DOCUMENT DOES NOT CREATE AN
|
||||
ATTORNEY-CLIENT RELATIONSHIP. CREATIVE COMMONS PROVIDES THIS
|
||||
INFORMATION ON AN "AS-IS" BASIS. CREATIVE COMMONS MAKES NO WARRANTIES
|
||||
REGARDING THE USE OF THIS DOCUMENT OR THE INFORMATION OR WORKS
|
||||
PROVIDED HEREUNDER, AND DISCLAIMS LIABILITY FOR DAMAGES RESULTING FROM
|
||||
THE USE OF THIS DOCUMENT OR THE INFORMATION OR WORKS PROVIDED
|
||||
HEREUNDER.
|
||||
|
||||
Statement of Purpose
|
||||
|
||||
The laws of most jurisdictions throughout the world automatically confer
|
||||
exclusive Copyright and Related Rights (defined below) upon the creator
|
||||
and subsequent owner(s) (each and all, an "owner") of an original work of
|
||||
authorship and/or a database (each, a "Work").
|
||||
|
||||
Certain owners wish to permanently relinquish those rights to a Work for
|
||||
the purpose of contributing to a commons of creative, cultural and
|
||||
scientific works ("Commons") that the public can reliably and without fear
|
||||
of later claims of infringement build upon, modify, incorporate in other
|
||||
works, reuse and redistribute as freely as possible in any form whatsoever
|
||||
and for any purposes, including without limitation commercial purposes.
|
||||
These owners may contribute to the Commons to promote the ideal of a free
|
||||
culture and the further production of creative, cultural and scientific
|
||||
works, or to gain reputation or greater distribution for their Work in
|
||||
part through the use and efforts of others.
|
||||
|
||||
For these and/or other purposes and motivations, and without any
|
||||
expectation of additional consideration or compensation, the person
|
||||
associating CC0 with a Work (the "Affirmer"), to the extent that he or she
|
||||
is an owner of Copyright and Related Rights in the Work, voluntarily
|
||||
elects to apply CC0 to the Work and publicly distribute the Work under its
|
||||
terms, with knowledge of his or her Copyright and Related Rights in the
|
||||
Work and the meaning and intended legal effect of CC0 on those rights.
|
||||
|
||||
1. Copyright and Related Rights. A Work made available under CC0 may be
|
||||
protected by copyright and related or neighboring rights ("Copyright and
|
||||
Related Rights"). Copyright and Related Rights include, but are not
|
||||
limited to, the following:
|
||||
|
||||
i. the right to reproduce, adapt, distribute, perform, display,
|
||||
communicate, and translate a Work;
|
||||
ii. moral rights retained by the original author(s) and/or performer(s);
|
||||
iii. publicity and privacy rights pertaining to a person's image or
|
||||
likeness depicted in a Work;
|
||||
iv. rights protecting against unfair competition in regards to a Work,
|
||||
subject to the limitations in paragraph 4(a), below;
|
||||
v. rights protecting the extraction, dissemination, use and reuse of data
|
||||
in a Work;
|
||||
vi. database rights (such as those arising under Directive 96/9/EC of the
|
||||
European Parliament and of the Council of 11 March 1996 on the legal
|
||||
protection of databases, and under any national implementation
|
||||
thereof, including any amended or successor version of such
|
||||
directive); and
|
||||
vii. other similar, equivalent or corresponding rights throughout the
|
||||
world based on applicable law or treaty, and any national
|
||||
implementations thereof.
|
||||
|
||||
2. Waiver. To the greatest extent permitted by, but not in contravention
|
||||
of, applicable law, Affirmer hereby overtly, fully, permanently,
|
||||
irrevocably and unconditionally waives, abandons, and surrenders all of
|
||||
Affirmer's Copyright and Related Rights and associated claims and causes
|
||||
of action, whether now known or unknown (including existing as well as
|
||||
future claims and causes of action), in the Work (i) in all territories
|
||||
worldwide, (ii) for the maximum duration provided by applicable law or
|
||||
treaty (including future time extensions), (iii) in any current or future
|
||||
medium and for any number of copies, and (iv) for any purpose whatsoever,
|
||||
including without limitation commercial, advertising or promotional
|
||||
purposes (the "Waiver"). Affirmer makes the Waiver for the benefit of each
|
||||
member of the public at large and to the detriment of Affirmer's heirs and
|
||||
successors, fully intending that such Waiver shall not be subject to
|
||||
revocation, rescission, cancellation, termination, or any other legal or
|
||||
equitable action to disrupt the quiet enjoyment of the Work by the public
|
||||
as contemplated by Affirmer's express Statement of Purpose.
|
||||
|
||||
3. Public License Fallback. Should any part of the Waiver for any reason
|
||||
be judged legally invalid or ineffective under applicable law, then the
|
||||
Waiver shall be preserved to the maximum extent permitted taking into
|
||||
account Affirmer's express Statement of Purpose. In addition, to the
|
||||
extent the Waiver is so judged Affirmer hereby grants to each affected
|
||||
person a royalty-free, non transferable, non sublicensable, non exclusive,
|
||||
irrevocable and unconditional license to exercise Affirmer's Copyright and
|
||||
Related Rights in the Work (i) in all territories worldwide, (ii) for the
|
||||
maximum duration provided by applicable law or treaty (including future
|
||||
time extensions), (iii) in any current or future medium and for any number
|
||||
of copies, and (iv) for any purpose whatsoever, including without
|
||||
limitation commercial, advertising or promotional purposes (the
|
||||
"License"). The License shall be deemed effective as of the date CC0 was
|
||||
applied by Affirmer to the Work. Should any part of the License for any
|
||||
reason be judged legally invalid or ineffective under applicable law, such
|
||||
partial invalidity or ineffectiveness shall not invalidate the remainder
|
||||
of the License, and in such case Affirmer hereby affirms that he or she
|
||||
will not (i) exercise any of his or her remaining Copyright and Related
|
||||
Rights in the Work or (ii) assert any associated claims and causes of
|
||||
action with respect to the Work, in either case contrary to Affirmer's
|
||||
express Statement of Purpose.
|
||||
|
||||
4. Limitations and Disclaimers.
|
||||
|
||||
a. No trademark or patent rights held by Affirmer are waived, abandoned,
|
||||
surrendered, licensed or otherwise affected by this document.
|
||||
b. Affirmer offers the Work as-is and makes no representations or
|
||||
warranties of any kind concerning the Work, express, implied,
|
||||
statutory or otherwise, including without limitation warranties of
|
||||
title, merchantability, fitness for a particular purpose, non
|
||||
infringement, or the absence of latent or other defects, accuracy, or
|
||||
the present or absence of errors, whether or not discoverable, all to
|
||||
the greatest extent permissible under applicable law.
|
||||
c. Affirmer disclaims responsibility for clearing rights of other persons
|
||||
that may apply to the Work or any use thereof, including without
|
||||
limitation any person's Copyright and Related Rights in the Work.
|
||||
Further, Affirmer disclaims responsibility for obtaining any necessary
|
||||
consents, permissions or other rights required for any use of the
|
||||
Work.
|
||||
d. Affirmer understands and acknowledges that Creative Commons is not a
|
||||
party to this document and has no duty or obligation with respect to
|
||||
this CC0 or use of the Work.
|
||||
BIN
OGP64/usr/share/doc/common-licenses/GPL
Normal file
BIN
OGP64/usr/share/doc/common-licenses/GPL
Normal file
Binary file not shown.
340
OGP64/usr/share/doc/common-licenses/GPL-2
Normal file
340
OGP64/usr/share/doc/common-licenses/GPL-2
Normal file
|
|
@ -0,0 +1,340 @@
|
|||
GNU GENERAL PUBLIC LICENSE
|
||||
Version 2, June 1991
|
||||
|
||||
Copyright (C) 1989, 1991 Free Software Foundation, Inc.
|
||||
59 Temple Place, Suite 330, Boston, MA 02111-1307 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 Library 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.
|
||||
|
||||
<one line to give the program's name and a brief idea of what it does.>
|
||||
Copyright (C) <year> <name of author>
|
||||
|
||||
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., 59 Temple Place, Suite 330, Boston, MA 02111-1307 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.
|
||||
|
||||
<signature of Ty Coon>, 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 Library General
|
||||
Public License instead of this License.
|
||||
340
OGP64/usr/share/doc/common-licenses/GPL-2.0
Normal file
340
OGP64/usr/share/doc/common-licenses/GPL-2.0
Normal file
|
|
@ -0,0 +1,340 @@
|
|||
GNU GENERAL PUBLIC LICENSE
|
||||
Version 2, June 1991
|
||||
|
||||
Copyright (C) 1989, 1991 Free Software Foundation, Inc.
|
||||
59 Temple Place, Suite 330, Boston, MA 02111-1307 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 Library 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.
|
||||
|
||||
<one line to give the program's name and a brief idea of what it does.>
|
||||
Copyright (C) <year> <name of author>
|
||||
|
||||
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., 59 Temple Place, Suite 330, Boston, MA 02111-1307 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.
|
||||
|
||||
<signature of Ty Coon>, 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 Library General
|
||||
Public License instead of this License.
|
||||
674
OGP64/usr/share/doc/common-licenses/GPL-3.0
Normal file
674
OGP64/usr/share/doc/common-licenses/GPL-3.0
Normal file
|
|
@ -0,0 +1,674 @@
|
|||
GNU GENERAL PUBLIC LICENSE
|
||||
Version 3, 29 June 2007
|
||||
|
||||
Copyright (C) 2007 Free Software Foundation, Inc. <http://fsf.org/>
|
||||
Everyone is permitted to copy and distribute verbatim copies
|
||||
of this license document, but changing it is not allowed.
|
||||
|
||||
Preamble
|
||||
|
||||
The GNU General Public License is a free, copyleft license for
|
||||
software and other kinds of works.
|
||||
|
||||
The licenses for most software and other practical works are designed
|
||||
to take away your freedom to share and change the works. By contrast,
|
||||
the GNU General Public License is intended to guarantee your freedom to
|
||||
share and change all versions of a program--to make sure it remains free
|
||||
software for all its users. We, the Free Software Foundation, use the
|
||||
GNU General Public License for most of our software; it applies also to
|
||||
any other work released this way by its authors. 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
|
||||
them 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 prevent others from denying you
|
||||
these rights or asking you to surrender the rights. Therefore, you have
|
||||
certain responsibilities if you distribute copies of the software, or if
|
||||
you modify it: responsibilities to respect the freedom of others.
|
||||
|
||||
For example, if you distribute copies of such a program, whether
|
||||
gratis or for a fee, you must pass on to the recipients the same
|
||||
freedoms that you received. 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.
|
||||
|
||||
Developers that use the GNU GPL protect your rights with two steps:
|
||||
(1) assert copyright on the software, and (2) offer you this License
|
||||
giving you legal permission to copy, distribute and/or modify it.
|
||||
|
||||
For the developers' and authors' protection, the GPL clearly explains
|
||||
that there is no warranty for this free software. For both users' and
|
||||
authors' sake, the GPL requires that modified versions be marked as
|
||||
changed, so that their problems will not be attributed erroneously to
|
||||
authors of previous versions.
|
||||
|
||||
Some devices are designed to deny users access to install or run
|
||||
modified versions of the software inside them, although the manufacturer
|
||||
can do so. This is fundamentally incompatible with the aim of
|
||||
protecting users' freedom to change the software. The systematic
|
||||
pattern of such abuse occurs in the area of products for individuals to
|
||||
use, which is precisely where it is most unacceptable. Therefore, we
|
||||
have designed this version of the GPL to prohibit the practice for those
|
||||
products. If such problems arise substantially in other domains, we
|
||||
stand ready to extend this provision to those domains in future versions
|
||||
of the GPL, as needed to protect the freedom of users.
|
||||
|
||||
Finally, every program is threatened constantly by software patents.
|
||||
States should not allow patents to restrict development and use of
|
||||
software on general-purpose computers, but in those that do, we wish to
|
||||
avoid the special danger that patents applied to a free program could
|
||||
make it effectively proprietary. To prevent this, the GPL assures that
|
||||
patents cannot be used to render the program non-free.
|
||||
|
||||
The precise terms and conditions for copying, distribution and
|
||||
modification follow.
|
||||
|
||||
TERMS AND CONDITIONS
|
||||
|
||||
0. Definitions.
|
||||
|
||||
"This License" refers to version 3 of the GNU General Public License.
|
||||
|
||||
"Copyright" also means copyright-like laws that apply to other kinds of
|
||||
works, such as semiconductor masks.
|
||||
|
||||
"The Program" refers to any copyrightable work licensed under this
|
||||
License. Each licensee is addressed as "you". "Licensees" and
|
||||
"recipients" may be individuals or organizations.
|
||||
|
||||
To "modify" a work means to copy from or adapt all or part of the work
|
||||
in a fashion requiring copyright permission, other than the making of an
|
||||
exact copy. The resulting work is called a "modified version" of the
|
||||
earlier work or a work "based on" the earlier work.
|
||||
|
||||
A "covered work" means either the unmodified Program or a work based
|
||||
on the Program.
|
||||
|
||||
To "propagate" a work means to do anything with it that, without
|
||||
permission, would make you directly or secondarily liable for
|
||||
infringement under applicable copyright law, except executing it on a
|
||||
computer or modifying a private copy. Propagation includes copying,
|
||||
distribution (with or without modification), making available to the
|
||||
public, and in some countries other activities as well.
|
||||
|
||||
To "convey" a work means any kind of propagation that enables other
|
||||
parties to make or receive copies. Mere interaction with a user through
|
||||
a computer network, with no transfer of a copy, is not conveying.
|
||||
|
||||
An interactive user interface displays "Appropriate Legal Notices"
|
||||
to the extent that it includes a convenient and prominently visible
|
||||
feature that (1) displays an appropriate copyright notice, and (2)
|
||||
tells the user that there is no warranty for the work (except to the
|
||||
extent that warranties are provided), that licensees may convey the
|
||||
work under this License, and how to view a copy of this License. If
|
||||
the interface presents a list of user commands or options, such as a
|
||||
menu, a prominent item in the list meets this criterion.
|
||||
|
||||
1. Source Code.
|
||||
|
||||
The "source code" for a work means the preferred form of the work
|
||||
for making modifications to it. "Object code" means any non-source
|
||||
form of a work.
|
||||
|
||||
A "Standard Interface" means an interface that either is an official
|
||||
standard defined by a recognized standards body, or, in the case of
|
||||
interfaces specified for a particular programming language, one that
|
||||
is widely used among developers working in that language.
|
||||
|
||||
The "System Libraries" of an executable work include anything, other
|
||||
than the work as a whole, that (a) is included in the normal form of
|
||||
packaging a Major Component, but which is not part of that Major
|
||||
Component, and (b) serves only to enable use of the work with that
|
||||
Major Component, or to implement a Standard Interface for which an
|
||||
implementation is available to the public in source code form. A
|
||||
"Major Component", in this context, means a major essential component
|
||||
(kernel, window system, and so on) of the specific operating system
|
||||
(if any) on which the executable work runs, or a compiler used to
|
||||
produce the work, or an object code interpreter used to run it.
|
||||
|
||||
The "Corresponding Source" for a work in object code form means all
|
||||
the source code needed to generate, install, and (for an executable
|
||||
work) run the object code and to modify the work, including scripts to
|
||||
control those activities. However, it does not include the work's
|
||||
System Libraries, or general-purpose tools or generally available free
|
||||
programs which are used unmodified in performing those activities but
|
||||
which are not part of the work. For example, Corresponding Source
|
||||
includes interface definition files associated with source files for
|
||||
the work, and the source code for shared libraries and dynamically
|
||||
linked subprograms that the work is specifically designed to require,
|
||||
such as by intimate data communication or control flow between those
|
||||
subprograms and other parts of the work.
|
||||
|
||||
The Corresponding Source need not include anything that users
|
||||
can regenerate automatically from other parts of the Corresponding
|
||||
Source.
|
||||
|
||||
The Corresponding Source for a work in source code form is that
|
||||
same work.
|
||||
|
||||
2. Basic Permissions.
|
||||
|
||||
All rights granted under this License are granted for the term of
|
||||
copyright on the Program, and are irrevocable provided the stated
|
||||
conditions are met. This License explicitly affirms your unlimited
|
||||
permission to run the unmodified Program. The output from running a
|
||||
covered work is covered by this License only if the output, given its
|
||||
content, constitutes a covered work. This License acknowledges your
|
||||
rights of fair use or other equivalent, as provided by copyright law.
|
||||
|
||||
You may make, run and propagate covered works that you do not
|
||||
convey, without conditions so long as your license otherwise remains
|
||||
in force. You may convey covered works to others for the sole purpose
|
||||
of having them make modifications exclusively for you, or provide you
|
||||
with facilities for running those works, provided that you comply with
|
||||
the terms of this License in conveying all material for which you do
|
||||
not control copyright. Those thus making or running the covered works
|
||||
for you must do so exclusively on your behalf, under your direction
|
||||
and control, on terms that prohibit them from making any copies of
|
||||
your copyrighted material outside their relationship with you.
|
||||
|
||||
Conveying under any other circumstances is permitted solely under
|
||||
the conditions stated below. Sublicensing is not allowed; section 10
|
||||
makes it unnecessary.
|
||||
|
||||
3. Protecting Users' Legal Rights From Anti-Circumvention Law.
|
||||
|
||||
No covered work shall be deemed part of an effective technological
|
||||
measure under any applicable law fulfilling obligations under article
|
||||
11 of the WIPO copyright treaty adopted on 20 December 1996, or
|
||||
similar laws prohibiting or restricting circumvention of such
|
||||
measures.
|
||||
|
||||
When you convey a covered work, you waive any legal power to forbid
|
||||
circumvention of technological measures to the extent such circumvention
|
||||
is effected by exercising rights under this License with respect to
|
||||
the covered work, and you disclaim any intention to limit operation or
|
||||
modification of the work as a means of enforcing, against the work's
|
||||
users, your or third parties' legal rights to forbid circumvention of
|
||||
technological measures.
|
||||
|
||||
4. Conveying Verbatim Copies.
|
||||
|
||||
You may convey 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;
|
||||
keep intact all notices stating that this License and any
|
||||
non-permissive terms added in accord with section 7 apply to the code;
|
||||
keep intact all notices of the absence of any warranty; and give all
|
||||
recipients a copy of this License along with the Program.
|
||||
|
||||
You may charge any price or no price for each copy that you convey,
|
||||
and you may offer support or warranty protection for a fee.
|
||||
|
||||
5. Conveying Modified Source Versions.
|
||||
|
||||
You may convey a work based on the Program, or the modifications to
|
||||
produce it from the Program, in the form of source code under the
|
||||
terms of section 4, provided that you also meet all of these conditions:
|
||||
|
||||
a) The work must carry prominent notices stating that you modified
|
||||
it, and giving a relevant date.
|
||||
|
||||
b) The work must carry prominent notices stating that it is
|
||||
released under this License and any conditions added under section
|
||||
7. This requirement modifies the requirement in section 4 to
|
||||
"keep intact all notices".
|
||||
|
||||
c) You must license the entire work, as a whole, under this
|
||||
License to anyone who comes into possession of a copy. This
|
||||
License will therefore apply, along with any applicable section 7
|
||||
additional terms, to the whole of the work, and all its parts,
|
||||
regardless of how they are packaged. This License gives no
|
||||
permission to license the work in any other way, but it does not
|
||||
invalidate such permission if you have separately received it.
|
||||
|
||||
d) If the work has interactive user interfaces, each must display
|
||||
Appropriate Legal Notices; however, if the Program has interactive
|
||||
interfaces that do not display Appropriate Legal Notices, your
|
||||
work need not make them do so.
|
||||
|
||||
A compilation of a covered work with other separate and independent
|
||||
works, which are not by their nature extensions of the covered work,
|
||||
and which are not combined with it such as to form a larger program,
|
||||
in or on a volume of a storage or distribution medium, is called an
|
||||
"aggregate" if the compilation and its resulting copyright are not
|
||||
used to limit the access or legal rights of the compilation's users
|
||||
beyond what the individual works permit. Inclusion of a covered work
|
||||
in an aggregate does not cause this License to apply to the other
|
||||
parts of the aggregate.
|
||||
|
||||
6. Conveying Non-Source Forms.
|
||||
|
||||
You may convey a covered work in object code form under the terms
|
||||
of sections 4 and 5, provided that you also convey the
|
||||
machine-readable Corresponding Source under the terms of this License,
|
||||
in one of these ways:
|
||||
|
||||
a) Convey the object code in, or embodied in, a physical product
|
||||
(including a physical distribution medium), accompanied by the
|
||||
Corresponding Source fixed on a durable physical medium
|
||||
customarily used for software interchange.
|
||||
|
||||
b) Convey the object code in, or embodied in, a physical product
|
||||
(including a physical distribution medium), accompanied by a
|
||||
written offer, valid for at least three years and valid for as
|
||||
long as you offer spare parts or customer support for that product
|
||||
model, to give anyone who possesses the object code either (1) a
|
||||
copy of the Corresponding Source for all the software in the
|
||||
product that is covered by this License, on a durable physical
|
||||
medium customarily used for software interchange, for a price no
|
||||
more than your reasonable cost of physically performing this
|
||||
conveying of source, or (2) access to copy the
|
||||
Corresponding Source from a network server at no charge.
|
||||
|
||||
c) Convey individual copies of the object code with a copy of the
|
||||
written offer to provide the Corresponding Source. This
|
||||
alternative is allowed only occasionally and noncommercially, and
|
||||
only if you received the object code with such an offer, in accord
|
||||
with subsection 6b.
|
||||
|
||||
d) Convey the object code by offering access from a designated
|
||||
place (gratis or for a charge), and offer equivalent access to the
|
||||
Corresponding Source in the same way through the same place at no
|
||||
further charge. You need not require recipients to copy the
|
||||
Corresponding Source along with the object code. If the place to
|
||||
copy the object code is a network server, the Corresponding Source
|
||||
may be on a different server (operated by you or a third party)
|
||||
that supports equivalent copying facilities, provided you maintain
|
||||
clear directions next to the object code saying where to find the
|
||||
Corresponding Source. Regardless of what server hosts the
|
||||
Corresponding Source, you remain obligated to ensure that it is
|
||||
available for as long as needed to satisfy these requirements.
|
||||
|
||||
e) Convey the object code using peer-to-peer transmission, provided
|
||||
you inform other peers where the object code and Corresponding
|
||||
Source of the work are being offered to the general public at no
|
||||
charge under subsection 6d.
|
||||
|
||||
A separable portion of the object code, whose source code is excluded
|
||||
from the Corresponding Source as a System Library, need not be
|
||||
included in conveying the object code work.
|
||||
|
||||
A "User Product" is either (1) a "consumer product", which means any
|
||||
tangible personal property which is normally used for personal, family,
|
||||
or household purposes, or (2) anything designed or sold for incorporation
|
||||
into a dwelling. In determining whether a product is a consumer product,
|
||||
doubtful cases shall be resolved in favor of coverage. For a particular
|
||||
product received by a particular user, "normally used" refers to a
|
||||
typical or common use of that class of product, regardless of the status
|
||||
of the particular user or of the way in which the particular user
|
||||
actually uses, or expects or is expected to use, the product. A product
|
||||
is a consumer product regardless of whether the product has substantial
|
||||
commercial, industrial or non-consumer uses, unless such uses represent
|
||||
the only significant mode of use of the product.
|
||||
|
||||
"Installation Information" for a User Product means any methods,
|
||||
procedures, authorization keys, or other information required to install
|
||||
and execute modified versions of a covered work in that User Product from
|
||||
a modified version of its Corresponding Source. The information must
|
||||
suffice to ensure that the continued functioning of the modified object
|
||||
code is in no case prevented or interfered with solely because
|
||||
modification has been made.
|
||||
|
||||
If you convey an object code work under this section in, or with, or
|
||||
specifically for use in, a User Product, and the conveying occurs as
|
||||
part of a transaction in which the right of possession and use of the
|
||||
User Product is transferred to the recipient in perpetuity or for a
|
||||
fixed term (regardless of how the transaction is characterized), the
|
||||
Corresponding Source conveyed under this section must be accompanied
|
||||
by the Installation Information. But this requirement does not apply
|
||||
if neither you nor any third party retains the ability to install
|
||||
modified object code on the User Product (for example, the work has
|
||||
been installed in ROM).
|
||||
|
||||
The requirement to provide Installation Information does not include a
|
||||
requirement to continue to provide support service, warranty, or updates
|
||||
for a work that has been modified or installed by the recipient, or for
|
||||
the User Product in which it has been modified or installed. Access to a
|
||||
network may be denied when the modification itself materially and
|
||||
adversely affects the operation of the network or violates the rules and
|
||||
protocols for communication across the network.
|
||||
|
||||
Corresponding Source conveyed, and Installation Information provided,
|
||||
in accord with this section must be in a format that is publicly
|
||||
documented (and with an implementation available to the public in
|
||||
source code form), and must require no special password or key for
|
||||
unpacking, reading or copying.
|
||||
|
||||
7. Additional Terms.
|
||||
|
||||
"Additional permissions" are terms that supplement the terms of this
|
||||
License by making exceptions from one or more of its conditions.
|
||||
Additional permissions that are applicable to the entire Program shall
|
||||
be treated as though they were included in this License, to the extent
|
||||
that they are valid under applicable law. If additional permissions
|
||||
apply only to part of the Program, that part may be used separately
|
||||
under those permissions, but the entire Program remains governed by
|
||||
this License without regard to the additional permissions.
|
||||
|
||||
When you convey a copy of a covered work, you may at your option
|
||||
remove any additional permissions from that copy, or from any part of
|
||||
it. (Additional permissions may be written to require their own
|
||||
removal in certain cases when you modify the work.) You may place
|
||||
additional permissions on material, added by you to a covered work,
|
||||
for which you have or can give appropriate copyright permission.
|
||||
|
||||
Notwithstanding any other provision of this License, for material you
|
||||
add to a covered work, you may (if authorized by the copyright holders of
|
||||
that material) supplement the terms of this License with terms:
|
||||
|
||||
a) Disclaiming warranty or limiting liability differently from the
|
||||
terms of sections 15 and 16 of this License; or
|
||||
|
||||
b) Requiring preservation of specified reasonable legal notices or
|
||||
author attributions in that material or in the Appropriate Legal
|
||||
Notices displayed by works containing it; or
|
||||
|
||||
c) Prohibiting misrepresentation of the origin of that material, or
|
||||
requiring that modified versions of such material be marked in
|
||||
reasonable ways as different from the original version; or
|
||||
|
||||
d) Limiting the use for publicity purposes of names of licensors or
|
||||
authors of the material; or
|
||||
|
||||
e) Declining to grant rights under trademark law for use of some
|
||||
trade names, trademarks, or service marks; or
|
||||
|
||||
f) Requiring indemnification of licensors and authors of that
|
||||
material by anyone who conveys the material (or modified versions of
|
||||
it) with contractual assumptions of liability to the recipient, for
|
||||
any liability that these contractual assumptions directly impose on
|
||||
those licensors and authors.
|
||||
|
||||
All other non-permissive additional terms are considered "further
|
||||
restrictions" within the meaning of section 10. If the Program as you
|
||||
received it, or any part of it, contains a notice stating that it is
|
||||
governed by this License along with a term that is a further
|
||||
restriction, you may remove that term. If a license document contains
|
||||
a further restriction but permits relicensing or conveying under this
|
||||
License, you may add to a covered work material governed by the terms
|
||||
of that license document, provided that the further restriction does
|
||||
not survive such relicensing or conveying.
|
||||
|
||||
If you add terms to a covered work in accord with this section, you
|
||||
must place, in the relevant source files, a statement of the
|
||||
additional terms that apply to those files, or a notice indicating
|
||||
where to find the applicable terms.
|
||||
|
||||
Additional terms, permissive or non-permissive, may be stated in the
|
||||
form of a separately written license, or stated as exceptions;
|
||||
the above requirements apply either way.
|
||||
|
||||
8. Termination.
|
||||
|
||||
You may not propagate or modify a covered work except as expressly
|
||||
provided under this License. Any attempt otherwise to propagate or
|
||||
modify it is void, and will automatically terminate your rights under
|
||||
this License (including any patent licenses granted under the third
|
||||
paragraph of section 11).
|
||||
|
||||
However, if you cease all violation of this License, then your
|
||||
license from a particular copyright holder is reinstated (a)
|
||||
provisionally, unless and until the copyright holder explicitly and
|
||||
finally terminates your license, and (b) permanently, if the copyright
|
||||
holder fails to notify you of the violation by some reasonable means
|
||||
prior to 60 days after the cessation.
|
||||
|
||||
Moreover, your license from a particular copyright holder is
|
||||
reinstated permanently if the copyright holder notifies you of the
|
||||
violation by some reasonable means, this is the first time you have
|
||||
received notice of violation of this License (for any work) from that
|
||||
copyright holder, and you cure the violation prior to 30 days after
|
||||
your receipt of the notice.
|
||||
|
||||
Termination of your rights under this section does not terminate the
|
||||
licenses of parties who have received copies or rights from you under
|
||||
this License. If your rights have been terminated and not permanently
|
||||
reinstated, you do not qualify to receive new licenses for the same
|
||||
material under section 10.
|
||||
|
||||
9. Acceptance Not Required for Having Copies.
|
||||
|
||||
You are not required to accept this License in order to receive or
|
||||
run a copy of the Program. Ancillary propagation of a covered work
|
||||
occurring solely as a consequence of using peer-to-peer transmission
|
||||
to receive a copy likewise does not require acceptance. However,
|
||||
nothing other than this License grants you permission to propagate or
|
||||
modify any covered work. These actions infringe copyright if you do
|
||||
not accept this License. Therefore, by modifying or propagating a
|
||||
covered work, you indicate your acceptance of this License to do so.
|
||||
|
||||
10. Automatic Licensing of Downstream Recipients.
|
||||
|
||||
Each time you convey a covered work, the recipient automatically
|
||||
receives a license from the original licensors, to run, modify and
|
||||
propagate that work, subject to this License. You are not responsible
|
||||
for enforcing compliance by third parties with this License.
|
||||
|
||||
An "entity transaction" is a transaction transferring control of an
|
||||
organization, or substantially all assets of one, or subdividing an
|
||||
organization, or merging organizations. If propagation of a covered
|
||||
work results from an entity transaction, each party to that
|
||||
transaction who receives a copy of the work also receives whatever
|
||||
licenses to the work the party's predecessor in interest had or could
|
||||
give under the previous paragraph, plus a right to possession of the
|
||||
Corresponding Source of the work from the predecessor in interest, if
|
||||
the predecessor has it or can get it with reasonable efforts.
|
||||
|
||||
You may not impose any further restrictions on the exercise of the
|
||||
rights granted or affirmed under this License. For example, you may
|
||||
not impose a license fee, royalty, or other charge for exercise of
|
||||
rights granted under this License, and you may not initiate litigation
|
||||
(including a cross-claim or counterclaim in a lawsuit) alleging that
|
||||
any patent claim is infringed by making, using, selling, offering for
|
||||
sale, or importing the Program or any portion of it.
|
||||
|
||||
11. Patents.
|
||||
|
||||
A "contributor" is a copyright holder who authorizes use under this
|
||||
License of the Program or a work on which the Program is based. The
|
||||
work thus licensed is called the contributor's "contributor version".
|
||||
|
||||
A contributor's "essential patent claims" are all patent claims
|
||||
owned or controlled by the contributor, whether already acquired or
|
||||
hereafter acquired, that would be infringed by some manner, permitted
|
||||
by this License, of making, using, or selling its contributor version,
|
||||
but do not include claims that would be infringed only as a
|
||||
consequence of further modification of the contributor version. For
|
||||
purposes of this definition, "control" includes the right to grant
|
||||
patent sublicenses in a manner consistent with the requirements of
|
||||
this License.
|
||||
|
||||
Each contributor grants you a non-exclusive, worldwide, royalty-free
|
||||
patent license under the contributor's essential patent claims, to
|
||||
make, use, sell, offer for sale, import and otherwise run, modify and
|
||||
propagate the contents of its contributor version.
|
||||
|
||||
In the following three paragraphs, a "patent license" is any express
|
||||
agreement or commitment, however denominated, not to enforce a patent
|
||||
(such as an express permission to practice a patent or covenant not to
|
||||
sue for patent infringement). To "grant" such a patent license to a
|
||||
party means to make such an agreement or commitment not to enforce a
|
||||
patent against the party.
|
||||
|
||||
If you convey a covered work, knowingly relying on a patent license,
|
||||
and the Corresponding Source of the work is not available for anyone
|
||||
to copy, free of charge and under the terms of this License, through a
|
||||
publicly available network server or other readily accessible means,
|
||||
then you must either (1) cause the Corresponding Source to be so
|
||||
available, or (2) arrange to deprive yourself of the benefit of the
|
||||
patent license for this particular work, or (3) arrange, in a manner
|
||||
consistent with the requirements of this License, to extend the patent
|
||||
license to downstream recipients. "Knowingly relying" means you have
|
||||
actual knowledge that, but for the patent license, your conveying the
|
||||
covered work in a country, or your recipient's use of the covered work
|
||||
in a country, would infringe one or more identifiable patents in that
|
||||
country that you have reason to believe are valid.
|
||||
|
||||
If, pursuant to or in connection with a single transaction or
|
||||
arrangement, you convey, or propagate by procuring conveyance of, a
|
||||
covered work, and grant a patent license to some of the parties
|
||||
receiving the covered work authorizing them to use, propagate, modify
|
||||
or convey a specific copy of the covered work, then the patent license
|
||||
you grant is automatically extended to all recipients of the covered
|
||||
work and works based on it.
|
||||
|
||||
A patent license is "discriminatory" if it does not include within
|
||||
the scope of its coverage, prohibits the exercise of, or is
|
||||
conditioned on the non-exercise of one or more of the rights that are
|
||||
specifically granted under this License. You may not convey a covered
|
||||
work if you are a party to an arrangement with a third party that is
|
||||
in the business of distributing software, under which you make payment
|
||||
to the third party based on the extent of your activity of conveying
|
||||
the work, and under which the third party grants, to any of the
|
||||
parties who would receive the covered work from you, a discriminatory
|
||||
patent license (a) in connection with copies of the covered work
|
||||
conveyed by you (or copies made from those copies), or (b) primarily
|
||||
for and in connection with specific products or compilations that
|
||||
contain the covered work, unless you entered into that arrangement,
|
||||
or that patent license was granted, prior to 28 March 2007.
|
||||
|
||||
Nothing in this License shall be construed as excluding or limiting
|
||||
any implied license or other defenses to infringement that may
|
||||
otherwise be available to you under applicable patent law.
|
||||
|
||||
12. No Surrender of Others' Freedom.
|
||||
|
||||
If 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 convey a
|
||||
covered work so as to satisfy simultaneously your obligations under this
|
||||
License and any other pertinent obligations, then as a consequence you may
|
||||
not convey it at all. For example, if you agree to terms that obligate you
|
||||
to collect a royalty for further conveying from those to whom you convey
|
||||
the Program, the only way you could satisfy both those terms and this
|
||||
License would be to refrain entirely from conveying the Program.
|
||||
|
||||
13. Use with the GNU Affero General Public License.
|
||||
|
||||
Notwithstanding any other provision of this License, you have
|
||||
permission to link or combine any covered work with a work licensed
|
||||
under version 3 of the GNU Affero General Public License into a single
|
||||
combined work, and to convey the resulting work. The terms of this
|
||||
License will continue to apply to the part which is the covered work,
|
||||
but the special requirements of the GNU Affero General Public License,
|
||||
section 13, concerning interaction through a network will apply to the
|
||||
combination as such.
|
||||
|
||||
14. Revised Versions of this License.
|
||||
|
||||
The Free Software Foundation may publish revised and/or new versions of
|
||||
the GNU 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 that a certain numbered version of the GNU General
|
||||
Public License "or any later version" applies to it, you have the
|
||||
option of following the terms and conditions either of that numbered
|
||||
version or of any later version published by the Free Software
|
||||
Foundation. If the Program does not specify a version number of the
|
||||
GNU General Public License, you may choose any version ever published
|
||||
by the Free Software Foundation.
|
||||
|
||||
If the Program specifies that a proxy can decide which future
|
||||
versions of the GNU General Public License can be used, that proxy's
|
||||
public statement of acceptance of a version permanently authorizes you
|
||||
to choose that version for the Program.
|
||||
|
||||
Later license versions may give you additional or different
|
||||
permissions. However, no additional obligations are imposed on any
|
||||
author or copyright holder as a result of your choosing to follow a
|
||||
later version.
|
||||
|
||||
15. Disclaimer of Warranty.
|
||||
|
||||
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.
|
||||
|
||||
16. Limitation of Liability.
|
||||
|
||||
IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING
|
||||
WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MODIFIES AND/OR CONVEYS
|
||||
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.
|
||||
|
||||
17. Interpretation of Sections 15 and 16.
|
||||
|
||||
If the disclaimer of warranty and limitation of liability provided
|
||||
above cannot be given local legal effect according to their terms,
|
||||
reviewing courts shall apply local law that most closely approximates
|
||||
an absolute waiver of all civil liability in connection with the
|
||||
Program, unless a warranty or assumption of liability accompanies a
|
||||
copy of the Program in return for a fee.
|
||||
|
||||
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
|
||||
state the exclusion of warranty; and each file should have at least
|
||||
the "copyright" line and a pointer to where the full notice is found.
|
||||
|
||||
<one line to give the program's name and a brief idea of what it does.>
|
||||
Copyright (C) <year> <name of author>
|
||||
|
||||
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 3 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, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
Also add information on how to contact you by electronic and paper mail.
|
||||
|
||||
If the program does terminal interaction, make it output a short
|
||||
notice like this when it starts in an interactive mode:
|
||||
|
||||
<program> Copyright (C) <year> <name of author>
|
||||
This program 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, your program's commands
|
||||
might be different; for a GUI interface, you would use an "about box".
|
||||
|
||||
You should also get your employer (if you work as a programmer) or school,
|
||||
if any, to sign a "copyright disclaimer" for the program, if necessary.
|
||||
For more information on this, and how to apply and follow the GNU GPL, see
|
||||
<http://www.gnu.org/licenses/>.
|
||||
|
||||
The GNU 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. But first, please read
|
||||
<http://www.gnu.org/philosophy/why-not-lgpl.html>.
|
||||
BIN
OGP64/usr/share/doc/common-licenses/LGPL
Normal file
BIN
OGP64/usr/share/doc/common-licenses/LGPL
Normal file
Binary file not shown.
481
OGP64/usr/share/doc/common-licenses/LGPL-2
Normal file
481
OGP64/usr/share/doc/common-licenses/LGPL-2
Normal file
|
|
@ -0,0 +1,481 @@
|
|||
GNU LIBRARY GENERAL PUBLIC LICENSE
|
||||
Version 2, June 1991
|
||||
|
||||
Copyright (C) 1991 Free Software Foundation, Inc.
|
||||
59 Temple Place, Suite 330, Boston, MA 02111-1307 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 library GPL. It is
|
||||
numbered 2 because it goes with version 2 of the ordinary GPL.]
|
||||
|
||||
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 Library General Public License, applies to some
|
||||
specially designated Free Software Foundation software, and to any
|
||||
other libraries whose authors decide to use it. You can use it for
|
||||
your libraries, 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 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 a program 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.
|
||||
|
||||
Our method of protecting your rights has two steps: (1) copyright
|
||||
the library, and (2) offer you this license which gives you legal
|
||||
permission to copy, distribute and/or modify the library.
|
||||
|
||||
Also, for each distributor's protection, we want to make certain
|
||||
that everyone understands that there is no warranty for this free
|
||||
library. If the library is modified by someone else and passed on, we
|
||||
want its recipients to know that what they have is not the original
|
||||
version, 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 companies distributing free
|
||||
software will individually obtain patent licenses, thus in effect
|
||||
transforming the program into proprietary software. To prevent this,
|
||||
we have made it clear that any patent must be licensed for everyone's
|
||||
free use or not licensed at all.
|
||||
|
||||
Most GNU software, including some libraries, is covered by the ordinary
|
||||
GNU General Public License, which was designed for utility programs. This
|
||||
license, the GNU Library General Public License, applies to certain
|
||||
designated libraries. This license is quite different from the ordinary
|
||||
one; be sure to read it in full, and don't assume that anything in it is
|
||||
the same as in the ordinary license.
|
||||
|
||||
The reason we have a separate public license for some libraries is that
|
||||
they blur the distinction we usually make between modifying or adding to a
|
||||
program and simply using it. Linking a program with a library, without
|
||||
changing the library, is in some sense simply using the library, and is
|
||||
analogous to running a utility program or application program. However, in
|
||||
a textual and legal sense, the linked executable is a combined work, a
|
||||
derivative of the original library, and the ordinary General Public License
|
||||
treats it as such.
|
||||
|
||||
Because of this blurred distinction, using the ordinary General
|
||||
Public License for libraries did not effectively promote software
|
||||
sharing, because most developers did not use the libraries. We
|
||||
concluded that weaker conditions might promote sharing better.
|
||||
|
||||
However, unrestricted linking of non-free programs would deprive the
|
||||
users of those programs of all benefit from the free status of the
|
||||
libraries themselves. This Library General Public License is intended to
|
||||
permit developers of non-free programs to use free libraries, while
|
||||
preserving your freedom as a user of such programs to change the free
|
||||
libraries that are incorporated in them. (We have not seen how to achieve
|
||||
this as regards changes in header files, but we have achieved it as regards
|
||||
changes in the actual functions of the Library.) The hope is that this
|
||||
will lead to faster development of free libraries.
|
||||
|
||||
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, while the latter only
|
||||
works together with the library.
|
||||
|
||||
Note that it is possible for a library to be covered by the ordinary
|
||||
General Public License rather than by this special one.
|
||||
|
||||
GNU LIBRARY GENERAL PUBLIC LICENSE
|
||||
TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
|
||||
|
||||
0. This License Agreement applies to any software library which
|
||||
contains a notice placed by the copyright holder or other authorized
|
||||
party saying it may be distributed under the terms of this Library
|
||||
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 compile 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) 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.
|
||||
|
||||
c) 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.
|
||||
|
||||
d) 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 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.
|
||||
|
||||
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 to
|
||||
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 Library 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.
|
||||
|
||||
<one line to give the library's name and a brief idea of what it does.>
|
||||
Copyright (C) <year> <name of author>
|
||||
|
||||
This library is free software; you can redistribute it and/or
|
||||
modify it under the terms of the GNU Library General Public
|
||||
License as published by the Free Software Foundation; either
|
||||
version 2 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
|
||||
Library General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU Library General Public
|
||||
License along with this library; if not, write to the Free Software
|
||||
Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 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.
|
||||
|
||||
<signature of Ty Coon>, 1 April 1990
|
||||
Ty Coon, President of Vice
|
||||
|
||||
That's all there is to it!
|
||||
481
OGP64/usr/share/doc/common-licenses/LGPL-2.0
Normal file
481
OGP64/usr/share/doc/common-licenses/LGPL-2.0
Normal file
|
|
@ -0,0 +1,481 @@
|
|||
GNU LIBRARY GENERAL PUBLIC LICENSE
|
||||
Version 2, June 1991
|
||||
|
||||
Copyright (C) 1991 Free Software Foundation, Inc.
|
||||
59 Temple Place, Suite 330, Boston, MA 02111-1307 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 library GPL. It is
|
||||
numbered 2 because it goes with version 2 of the ordinary GPL.]
|
||||
|
||||
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 Library General Public License, applies to some
|
||||
specially designated Free Software Foundation software, and to any
|
||||
other libraries whose authors decide to use it. You can use it for
|
||||
your libraries, 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 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 a program 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.
|
||||
|
||||
Our method of protecting your rights has two steps: (1) copyright
|
||||
the library, and (2) offer you this license which gives you legal
|
||||
permission to copy, distribute and/or modify the library.
|
||||
|
||||
Also, for each distributor's protection, we want to make certain
|
||||
that everyone understands that there is no warranty for this free
|
||||
library. If the library is modified by someone else and passed on, we
|
||||
want its recipients to know that what they have is not the original
|
||||
version, 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 companies distributing free
|
||||
software will individually obtain patent licenses, thus in effect
|
||||
transforming the program into proprietary software. To prevent this,
|
||||
we have made it clear that any patent must be licensed for everyone's
|
||||
free use or not licensed at all.
|
||||
|
||||
Most GNU software, including some libraries, is covered by the ordinary
|
||||
GNU General Public License, which was designed for utility programs. This
|
||||
license, the GNU Library General Public License, applies to certain
|
||||
designated libraries. This license is quite different from the ordinary
|
||||
one; be sure to read it in full, and don't assume that anything in it is
|
||||
the same as in the ordinary license.
|
||||
|
||||
The reason we have a separate public license for some libraries is that
|
||||
they blur the distinction we usually make between modifying or adding to a
|
||||
program and simply using it. Linking a program with a library, without
|
||||
changing the library, is in some sense simply using the library, and is
|
||||
analogous to running a utility program or application program. However, in
|
||||
a textual and legal sense, the linked executable is a combined work, a
|
||||
derivative of the original library, and the ordinary General Public License
|
||||
treats it as such.
|
||||
|
||||
Because of this blurred distinction, using the ordinary General
|
||||
Public License for libraries did not effectively promote software
|
||||
sharing, because most developers did not use the libraries. We
|
||||
concluded that weaker conditions might promote sharing better.
|
||||
|
||||
However, unrestricted linking of non-free programs would deprive the
|
||||
users of those programs of all benefit from the free status of the
|
||||
libraries themselves. This Library General Public License is intended to
|
||||
permit developers of non-free programs to use free libraries, while
|
||||
preserving your freedom as a user of such programs to change the free
|
||||
libraries that are incorporated in them. (We have not seen how to achieve
|
||||
this as regards changes in header files, but we have achieved it as regards
|
||||
changes in the actual functions of the Library.) The hope is that this
|
||||
will lead to faster development of free libraries.
|
||||
|
||||
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, while the latter only
|
||||
works together with the library.
|
||||
|
||||
Note that it is possible for a library to be covered by the ordinary
|
||||
General Public License rather than by this special one.
|
||||
|
||||
GNU LIBRARY GENERAL PUBLIC LICENSE
|
||||
TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
|
||||
|
||||
0. This License Agreement applies to any software library which
|
||||
contains a notice placed by the copyright holder or other authorized
|
||||
party saying it may be distributed under the terms of this Library
|
||||
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 compile 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) 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.
|
||||
|
||||
c) 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.
|
||||
|
||||
d) 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 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.
|
||||
|
||||
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 to
|
||||
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 Library 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.
|
||||
|
||||
<one line to give the library's name and a brief idea of what it does.>
|
||||
Copyright (C) <year> <name of author>
|
||||
|
||||
This library is free software; you can redistribute it and/or
|
||||
modify it under the terms of the GNU Library General Public
|
||||
License as published by the Free Software Foundation; either
|
||||
version 2 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
|
||||
Library General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU Library General Public
|
||||
License along with this library; if not, write to the Free Software
|
||||
Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 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.
|
||||
|
||||
<signature of Ty Coon>, 1 April 1990
|
||||
Ty Coon, President of Vice
|
||||
|
||||
That's all there is to it!
|
||||
510
OGP64/usr/share/doc/common-licenses/LGPL-2.1
Normal file
510
OGP64/usr/share/doc/common-licenses/LGPL-2.1
Normal file
|
|
@ -0,0 +1,510 @@
|
|||
|
||||
GNU LESSER GENERAL PUBLIC LICENSE
|
||||
Version 2.1, February 1999
|
||||
|
||||
Copyright (C) 1991, 1999 Free Software Foundation, Inc.
|
||||
59 Temple Place, Suite 330, Boston, MA 02111-1307 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.
|
||||
^L
|
||||
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.
|
||||
^L
|
||||
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.
|
||||
^L
|
||||
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.
|
||||
^L
|
||||
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.
|
||||
^L
|
||||
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.
|
||||
^L
|
||||
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.
|
||||
^L
|
||||
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
|
||||
^L
|
||||
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.
|
||||
|
||||
|
||||
<one line to give the library's name and a brief idea of what it does.>
|
||||
Copyright (C) <year> <name of author>
|
||||
|
||||
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., 59 Temple Place, Suite 330, Boston, MA 02111-1307 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.
|
||||
|
||||
<signature of Ty Coon>, 1 April 1990
|
||||
Ty Coon, President of Vice
|
||||
|
||||
That's all there is to it!
|
||||
|
||||
|
||||
165
OGP64/usr/share/doc/common-licenses/LGPL-3.0
Normal file
165
OGP64/usr/share/doc/common-licenses/LGPL-3.0
Normal file
|
|
@ -0,0 +1,165 @@
|
|||
GNU LESSER GENERAL PUBLIC LICENSE
|
||||
Version 3, 29 June 2007
|
||||
|
||||
Copyright (C) 2007 Free Software Foundation, Inc. <http://fsf.org/>
|
||||
Everyone is permitted to copy and distribute verbatim copies
|
||||
of this license document, but changing it is not allowed.
|
||||
|
||||
|
||||
This version of the GNU Lesser General Public License incorporates
|
||||
the terms and conditions of version 3 of the GNU General Public
|
||||
License, supplemented by the additional permissions listed below.
|
||||
|
||||
0. Additional Definitions.
|
||||
|
||||
As used herein, "this License" refers to version 3 of the GNU Lesser
|
||||
General Public License, and the "GNU GPL" refers to version 3 of the GNU
|
||||
General Public License.
|
||||
|
||||
"The Library" refers to a covered work governed by this License,
|
||||
other than an Application or a Combined Work as defined below.
|
||||
|
||||
An "Application" is any work that makes use of an interface provided
|
||||
by the Library, but which is not otherwise based on the Library.
|
||||
Defining a subclass of a class defined by the Library is deemed a mode
|
||||
of using an interface provided by the Library.
|
||||
|
||||
A "Combined Work" is a work produced by combining or linking an
|
||||
Application with the Library. The particular version of the Library
|
||||
with which the Combined Work was made is also called the "Linked
|
||||
Version".
|
||||
|
||||
The "Minimal Corresponding Source" for a Combined Work means the
|
||||
Corresponding Source for the Combined Work, excluding any source code
|
||||
for portions of the Combined Work that, considered in isolation, are
|
||||
based on the Application, and not on the Linked Version.
|
||||
|
||||
The "Corresponding Application Code" for a Combined Work means the
|
||||
object code and/or source code for the Application, including any data
|
||||
and utility programs needed for reproducing the Combined Work from the
|
||||
Application, but excluding the System Libraries of the Combined Work.
|
||||
|
||||
1. Exception to Section 3 of the GNU GPL.
|
||||
|
||||
You may convey a covered work under sections 3 and 4 of this License
|
||||
without being bound by section 3 of the GNU GPL.
|
||||
|
||||
2. Conveying Modified Versions.
|
||||
|
||||
If you modify a copy of the Library, and, in your modifications, a
|
||||
facility refers to a function or data to be supplied by an Application
|
||||
that uses the facility (other than as an argument passed when the
|
||||
facility is invoked), then you may convey a copy of the modified
|
||||
version:
|
||||
|
||||
a) under this License, provided that you make a good faith effort to
|
||||
ensure that, in the event an Application does not supply the
|
||||
function or data, the facility still operates, and performs
|
||||
whatever part of its purpose remains meaningful, or
|
||||
|
||||
b) under the GNU GPL, with none of the additional permissions of
|
||||
this License applicable to that copy.
|
||||
|
||||
3. Object Code Incorporating Material from Library Header Files.
|
||||
|
||||
The object code form of an Application may incorporate material from
|
||||
a header file that is part of the Library. You may convey such object
|
||||
code under terms of your choice, provided that, if the incorporated
|
||||
material is not limited to numerical parameters, data structure
|
||||
layouts and accessors, or small macros, inline functions and templates
|
||||
(ten or fewer lines in length), you do both of the following:
|
||||
|
||||
a) Give prominent notice with each copy of the object code that the
|
||||
Library is used in it and that the Library and its use are
|
||||
covered by this License.
|
||||
|
||||
b) Accompany the object code with a copy of the GNU GPL and this license
|
||||
document.
|
||||
|
||||
4. Combined Works.
|
||||
|
||||
You may convey a Combined Work under terms of your choice that,
|
||||
taken together, effectively do not restrict modification of the
|
||||
portions of the Library contained in the Combined Work and reverse
|
||||
engineering for debugging such modifications, if you also do each of
|
||||
the following:
|
||||
|
||||
a) Give prominent notice with each copy of the Combined Work that
|
||||
the Library is used in it and that the Library and its use are
|
||||
covered by this License.
|
||||
|
||||
b) Accompany the Combined Work with a copy of the GNU GPL and this license
|
||||
document.
|
||||
|
||||
c) For a Combined Work that displays copyright notices during
|
||||
execution, include the copyright notice for the Library among
|
||||
these notices, as well as a reference directing the user to the
|
||||
copies of the GNU GPL and this license document.
|
||||
|
||||
d) Do one of the following:
|
||||
|
||||
0) Convey the Minimal Corresponding Source under the terms of this
|
||||
License, and the Corresponding Application Code in a form
|
||||
suitable for, and under terms that permit, the user to
|
||||
recombine or relink the Application with a modified version of
|
||||
the Linked Version to produce a modified Combined Work, in the
|
||||
manner specified by section 6 of the GNU GPL for conveying
|
||||
Corresponding Source.
|
||||
|
||||
1) Use a suitable shared library mechanism for linking with the
|
||||
Library. A suitable mechanism is one that (a) uses at run time
|
||||
a copy of the Library already present on the user's computer
|
||||
system, and (b) will operate properly with a modified version
|
||||
of the Library that is interface-compatible with the Linked
|
||||
Version.
|
||||
|
||||
e) Provide Installation Information, but only if you would otherwise
|
||||
be required to provide such information under section 6 of the
|
||||
GNU GPL, and only to the extent that such information is
|
||||
necessary to install and execute a modified version of the
|
||||
Combined Work produced by recombining or relinking the
|
||||
Application with a modified version of the Linked Version. (If
|
||||
you use option 4d0, the Installation Information must accompany
|
||||
the Minimal Corresponding Source and Corresponding Application
|
||||
Code. If you use option 4d1, you must provide the Installation
|
||||
Information in the manner specified by section 6 of the GNU GPL
|
||||
for conveying Corresponding Source.)
|
||||
|
||||
5. Combined Libraries.
|
||||
|
||||
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 that are not Applications and are not covered by this
|
||||
License, and convey such a combined library under terms of your
|
||||
choice, if you do both of the following:
|
||||
|
||||
a) Accompany the combined library with a copy of the same work based
|
||||
on the Library, uncombined with any other library facilities,
|
||||
conveyed under the terms of this License.
|
||||
|
||||
b) Give prominent notice with the combined library that part of it
|
||||
is a work based on the Library, and explaining where to find the
|
||||
accompanying uncombined form of the same work.
|
||||
|
||||
6. Revised Versions of the GNU Lesser General Public License.
|
||||
|
||||
The Free Software Foundation may publish revised and/or new versions
|
||||
of the GNU 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 as you received it specifies that a certain numbered version
|
||||
of the GNU Lesser General Public License "or any later version"
|
||||
applies to it, you have the option of following the terms and
|
||||
conditions either of that published version or of any later version
|
||||
published by the Free Software Foundation. If the Library as you
|
||||
received it does not specify a version number of the GNU Lesser
|
||||
General Public License, you may choose any version of the GNU Lesser
|
||||
General Public License ever published by the Free Software Foundation.
|
||||
|
||||
If the Library as you received it specifies that a proxy can decide
|
||||
whether future versions of the GNU Lesser General Public License shall
|
||||
apply, that proxy's public statement of acceptance of any version is
|
||||
permanent authorization for you to choose that version for the
|
||||
Library.
|
||||
22
OGP64/usr/share/doc/common-licenses/MIT
Normal file
22
OGP64/usr/share/doc/common-licenses/MIT
Normal file
|
|
@ -0,0 +1,22 @@
|
|||
Copyright (c) 1998, 1999, 2000 Thai Open Source Software Center Ltd
|
||||
and Clark Cooper
|
||||
Copyright (c) 2001, 2002 Expat maintainers.
|
||||
|
||||
Permission is hereby granted, free of charge, to any person obtaining
|
||||
a copy of this software and associated documentation files (the
|
||||
"Software"), to deal in the Software without restriction, including
|
||||
without limitation the rights to use, copy, modify, merge, publish,
|
||||
distribute, sublicense, and/or sell copies of the Software, and to
|
||||
permit persons to whom the Software is furnished to do so, subject to
|
||||
the following conditions:
|
||||
|
||||
The above copyright notice and this permission notice shall be included
|
||||
in all copies or substantial portions of the Software.
|
||||
|
||||
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
|
||||
EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
|
||||
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
|
||||
IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY
|
||||
CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
|
||||
TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
|
||||
SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
||||
68
OGP64/usr/share/doc/common-licenses/PHP-3.0
Normal file
68
OGP64/usr/share/doc/common-licenses/PHP-3.0
Normal file
|
|
@ -0,0 +1,68 @@
|
|||
--------------------------------------------------------------------
|
||||
The PHP License, version 3.0
|
||||
Copyright (c) 1999 - 2003 The PHP Group. All rights reserved.
|
||||
--------------------------------------------------------------------
|
||||
|
||||
Redistribution and use in source and binary forms, with or without
|
||||
modification, is permitted provided that the following conditions
|
||||
are met:
|
||||
|
||||
1. Redistributions of source code must retain the above copyright
|
||||
notice, this list of conditions and the following disclaimer.
|
||||
|
||||
2. Redistributions in binary form must reproduce the above copyright
|
||||
notice, this list of conditions and the following disclaimer in
|
||||
the documentation and/or other materials provided with the
|
||||
distribution.
|
||||
|
||||
3. The name "PHP" must not be used to endorse or promote products
|
||||
derived from this software without prior written permission. For
|
||||
written permission, please contact group@php.net.
|
||||
|
||||
4. Products derived from this software may not be called "PHP", nor
|
||||
may "PHP" appear in their name, without prior written permission
|
||||
from group@php.net. You may indicate that your software works in
|
||||
conjunction with PHP by saying "Foo for PHP" instead of calling
|
||||
it "PHP Foo" or "phpfoo"
|
||||
|
||||
5. The PHP Group may publish revised and/or new versions of the
|
||||
license from time to time. Each version will be given a
|
||||
distinguishing version number.
|
||||
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 the PHP Group. No one other than the PHP Group has
|
||||
the right to modify the terms applicable to covered code created
|
||||
under this License.
|
||||
|
||||
6. Redistributions of any form whatsoever must retain the following
|
||||
acknowledgment:
|
||||
"This product includes PHP, freely available from
|
||||
<http://www.php.net/>".
|
||||
|
||||
THIS SOFTWARE IS PROVIDED BY THE PHP DEVELOPMENT TEAM ``AS IS'' AND
|
||||
ANY EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
|
||||
THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A
|
||||
PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE PHP
|
||||
DEVELOPMENT TEAM OR ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT,
|
||||
INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
|
||||
(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
|
||||
SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
|
||||
HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,
|
||||
STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
|
||||
ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED
|
||||
OF THE POSSIBILITY OF SUCH DAMAGE.
|
||||
|
||||
--------------------------------------------------------------------
|
||||
|
||||
This software consists of voluntary contributions made by many
|
||||
individuals on behalf of the PHP Group.
|
||||
|
||||
The PHP Group can be contacted via Email at group@php.net.
|
||||
|
||||
For more information on the PHP Group and the PHP project,
|
||||
please see <http://www.php.net>.
|
||||
|
||||
This product includes the Zend Engine, freely available at
|
||||
<http://www.zend.com>.
|
||||
6
OGP64/usr/share/doc/common-licenses/ReadMe.txt
Normal file
6
OGP64/usr/share/doc/common-licenses/ReadMe.txt
Normal file
|
|
@ -0,0 +1,6 @@
|
|||
If the license you need to read is not listed here,
|
||||
try http://www.opensource.org/licenses
|
||||
|
||||
If you would like it included in Cygwin as standard
|
||||
(so your package can reference it for example),
|
||||
please contact the cygwin email list.
|
||||
115
OGP64/usr/share/doc/coreutils/AUTHORS
Normal file
115
OGP64/usr/share/doc/coreutils/AUTHORS
Normal file
|
|
@ -0,0 +1,115 @@
|
|||
Here are the names of the programs in this package,
|
||||
each followed by the name(s) of its author(s).
|
||||
|
||||
arch: David MacKenzie, Karel Zak
|
||||
b2sum: Padraig Brady, Samuel Neves
|
||||
base32: Simon Josefsson
|
||||
base64: Simon Josefsson
|
||||
basename: David MacKenzie
|
||||
basenc: Simon Josefsson, Assaf Gordon
|
||||
cat: Torbjorn Granlund, Richard M. Stallman
|
||||
chcon: Russell Coker, Jim Meyering
|
||||
chgrp: David MacKenzie, Jim Meyering
|
||||
chmod: David MacKenzie, Jim Meyering
|
||||
chown: David MacKenzie, Jim Meyering
|
||||
chroot: Roland McGrath
|
||||
cksum: Padraig Brady, Q. Frank Xia
|
||||
comm: Richard M. Stallman, David MacKenzie
|
||||
coreutils: Alex Deymo
|
||||
cp: Torbjorn Granlund, David MacKenzie, Jim Meyering
|
||||
csplit: Stuart Kemp, David MacKenzie
|
||||
cut: David M. Ihnat, David MacKenzie, Jim Meyering
|
||||
date: David MacKenzie
|
||||
dd: Paul Rubin, David MacKenzie, Stuart Kemp
|
||||
df: Torbjorn Granlund, David MacKenzie, Paul Eggert
|
||||
dir: Richard M. Stallman, David MacKenzie
|
||||
dircolors: H. Peter Anvin
|
||||
dirname: David MacKenzie, Jim Meyering
|
||||
du: Torbjorn Granlund, David MacKenzie, Paul Eggert, Jim Meyering
|
||||
echo: Brian Fox, Chet Ramey
|
||||
env: Richard Mlynarik, David MacKenzie, Assaf Gordon
|
||||
expand: David MacKenzie
|
||||
expr: Mike Parker, James Youngman, Paul Eggert
|
||||
factor: Paul Rubin, Torbjörn Granlund, Niels Möller
|
||||
false: Jim Meyering
|
||||
fmt: Ross Paterson
|
||||
fold: David MacKenzie
|
||||
ginstall: David MacKenzie
|
||||
groups: David MacKenzie, James Youngman
|
||||
head: David MacKenzie, Jim Meyering
|
||||
hostid: Jim Meyering
|
||||
hostname: Jim Meyering
|
||||
id: Arnold Robbins, David MacKenzie
|
||||
join: Mike Haertel
|
||||
kill: Paul Eggert
|
||||
link: Michael Stone
|
||||
ln: Mike Parker, David MacKenzie
|
||||
logname: FIXME: unknown
|
||||
ls: Richard M. Stallman, David MacKenzie
|
||||
md5sum: Ulrich Drepper, Scott Miller, David Madore
|
||||
mkdir: David MacKenzie
|
||||
mkfifo: David MacKenzie
|
||||
mknod: David MacKenzie
|
||||
mktemp: Jim Meyering, Eric Blake
|
||||
mv: Mike Parker, David MacKenzie, Jim Meyering
|
||||
nice: David MacKenzie
|
||||
nl: Scott Bartram, David MacKenzie
|
||||
nohup: Jim Meyering
|
||||
nproc: Giuseppe Scrivano
|
||||
numfmt: Assaf Gordon
|
||||
od: Jim Meyering
|
||||
paste: David M. Ihnat, David MacKenzie
|
||||
pathchk: Paul Eggert, David MacKenzie, Jim Meyering
|
||||
pinky: Joseph Arceneaux, David MacKenzie, Kaveh Ghazi
|
||||
pr: Pete TerMaat, Roland Huebner
|
||||
printenv: David MacKenzie, Richard Mlynarik
|
||||
printf: David MacKenzie
|
||||
ptx: François Pinard
|
||||
pwd: Jim Meyering
|
||||
readlink: Dmitry V. Levin
|
||||
realpath: Padraig Brady
|
||||
rm: Paul Rubin, David MacKenzie, Richard M. Stallman, Jim Meyering
|
||||
rmdir: David MacKenzie
|
||||
runcon: Russell Coker
|
||||
seq: Ulrich Drepper
|
||||
sha1sum: Ulrich Drepper, Scott Miller, David Madore
|
||||
sha224sum: Ulrich Drepper, Scott Miller, David Madore
|
||||
sha256sum: Ulrich Drepper, Scott Miller, David Madore
|
||||
sha384sum: Ulrich Drepper, Scott Miller, David Madore
|
||||
sha512sum: Ulrich Drepper, Scott Miller, David Madore
|
||||
shred: Colin Plumb
|
||||
shuf: Paul Eggert
|
||||
sleep: Jim Meyering, Paul Eggert
|
||||
sort: Mike Haertel, Paul Eggert
|
||||
split: Torbjorn Granlund, Richard M. Stallman
|
||||
stat: Michael Meskes
|
||||
stdbuf: Padraig Brady
|
||||
stty: David MacKenzie
|
||||
sum: Kayvan Aghaiepour, David MacKenzie
|
||||
sync: Jim Meyering, Giuseppe Scrivano
|
||||
tac: Jay Lepreau, David MacKenzie
|
||||
tail: Paul Rubin, David MacKenzie, Ian Lance Taylor, Jim Meyering
|
||||
tee: Mike Parker, Richard M. Stallman, David MacKenzie
|
||||
test: Kevin Braunsdorf, Matthew Bradburn
|
||||
timeout: Padraig Brady
|
||||
touch: Paul Rubin, Arnold Robbins, Jim Kingdon, David MacKenzie, Randy Smith
|
||||
tr: Jim Meyering
|
||||
true: Jim Meyering
|
||||
truncate: Padraig Brady
|
||||
tsort: Mark Kettenis
|
||||
tty: David MacKenzie
|
||||
uname: David MacKenzie
|
||||
unexpand: David MacKenzie
|
||||
uniq: Richard M. Stallman, David MacKenzie
|
||||
unlink: Michael Stone
|
||||
uptime: Joseph Arceneaux, David MacKenzie, Kaveh Ghazi
|
||||
users: Joseph Arceneaux, David MacKenzie
|
||||
vdir: Richard M. Stallman, David MacKenzie
|
||||
wc: Paul Rubin, David MacKenzie
|
||||
who: Joseph Arceneaux, David MacKenzie, Michael Stone
|
||||
whoami: Richard Mlynarik
|
||||
yes: David MacKenzie
|
||||
|
||||
;; Local Variables:
|
||||
;; coding: utf-8
|
||||
;; End:
|
||||
674
OGP64/usr/share/doc/coreutils/COPYING
Normal file
674
OGP64/usr/share/doc/coreutils/COPYING
Normal file
|
|
@ -0,0 +1,674 @@
|
|||
GNU GENERAL PUBLIC LICENSE
|
||||
Version 3, 29 June 2007
|
||||
|
||||
Copyright (C) 2007 Free Software Foundation, Inc. <https://fsf.org/>
|
||||
Everyone is permitted to copy and distribute verbatim copies
|
||||
of this license document, but changing it is not allowed.
|
||||
|
||||
Preamble
|
||||
|
||||
The GNU General Public License is a free, copyleft license for
|
||||
software and other kinds of works.
|
||||
|
||||
The licenses for most software and other practical works are designed
|
||||
to take away your freedom to share and change the works. By contrast,
|
||||
the GNU General Public License is intended to guarantee your freedom to
|
||||
share and change all versions of a program--to make sure it remains free
|
||||
software for all its users. We, the Free Software Foundation, use the
|
||||
GNU General Public License for most of our software; it applies also to
|
||||
any other work released this way by its authors. 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
|
||||
them 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 prevent others from denying you
|
||||
these rights or asking you to surrender the rights. Therefore, you have
|
||||
certain responsibilities if you distribute copies of the software, or if
|
||||
you modify it: responsibilities to respect the freedom of others.
|
||||
|
||||
For example, if you distribute copies of such a program, whether
|
||||
gratis or for a fee, you must pass on to the recipients the same
|
||||
freedoms that you received. 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.
|
||||
|
||||
Developers that use the GNU GPL protect your rights with two steps:
|
||||
(1) assert copyright on the software, and (2) offer you this License
|
||||
giving you legal permission to copy, distribute and/or modify it.
|
||||
|
||||
For the developers' and authors' protection, the GPL clearly explains
|
||||
that there is no warranty for this free software. For both users' and
|
||||
authors' sake, the GPL requires that modified versions be marked as
|
||||
changed, so that their problems will not be attributed erroneously to
|
||||
authors of previous versions.
|
||||
|
||||
Some devices are designed to deny users access to install or run
|
||||
modified versions of the software inside them, although the manufacturer
|
||||
can do so. This is fundamentally incompatible with the aim of
|
||||
protecting users' freedom to change the software. The systematic
|
||||
pattern of such abuse occurs in the area of products for individuals to
|
||||
use, which is precisely where it is most unacceptable. Therefore, we
|
||||
have designed this version of the GPL to prohibit the practice for those
|
||||
products. If such problems arise substantially in other domains, we
|
||||
stand ready to extend this provision to those domains in future versions
|
||||
of the GPL, as needed to protect the freedom of users.
|
||||
|
||||
Finally, every program is threatened constantly by software patents.
|
||||
States should not allow patents to restrict development and use of
|
||||
software on general-purpose computers, but in those that do, we wish to
|
||||
avoid the special danger that patents applied to a free program could
|
||||
make it effectively proprietary. To prevent this, the GPL assures that
|
||||
patents cannot be used to render the program non-free.
|
||||
|
||||
The precise terms and conditions for copying, distribution and
|
||||
modification follow.
|
||||
|
||||
TERMS AND CONDITIONS
|
||||
|
||||
0. Definitions.
|
||||
|
||||
"This License" refers to version 3 of the GNU General Public License.
|
||||
|
||||
"Copyright" also means copyright-like laws that apply to other kinds of
|
||||
works, such as semiconductor masks.
|
||||
|
||||
"The Program" refers to any copyrightable work licensed under this
|
||||
License. Each licensee is addressed as "you". "Licensees" and
|
||||
"recipients" may be individuals or organizations.
|
||||
|
||||
To "modify" a work means to copy from or adapt all or part of the work
|
||||
in a fashion requiring copyright permission, other than the making of an
|
||||
exact copy. The resulting work is called a "modified version" of the
|
||||
earlier work or a work "based on" the earlier work.
|
||||
|
||||
A "covered work" means either the unmodified Program or a work based
|
||||
on the Program.
|
||||
|
||||
To "propagate" a work means to do anything with it that, without
|
||||
permission, would make you directly or secondarily liable for
|
||||
infringement under applicable copyright law, except executing it on a
|
||||
computer or modifying a private copy. Propagation includes copying,
|
||||
distribution (with or without modification), making available to the
|
||||
public, and in some countries other activities as well.
|
||||
|
||||
To "convey" a work means any kind of propagation that enables other
|
||||
parties to make or receive copies. Mere interaction with a user through
|
||||
a computer network, with no transfer of a copy, is not conveying.
|
||||
|
||||
An interactive user interface displays "Appropriate Legal Notices"
|
||||
to the extent that it includes a convenient and prominently visible
|
||||
feature that (1) displays an appropriate copyright notice, and (2)
|
||||
tells the user that there is no warranty for the work (except to the
|
||||
extent that warranties are provided), that licensees may convey the
|
||||
work under this License, and how to view a copy of this License. If
|
||||
the interface presents a list of user commands or options, such as a
|
||||
menu, a prominent item in the list meets this criterion.
|
||||
|
||||
1. Source Code.
|
||||
|
||||
The "source code" for a work means the preferred form of the work
|
||||
for making modifications to it. "Object code" means any non-source
|
||||
form of a work.
|
||||
|
||||
A "Standard Interface" means an interface that either is an official
|
||||
standard defined by a recognized standards body, or, in the case of
|
||||
interfaces specified for a particular programming language, one that
|
||||
is widely used among developers working in that language.
|
||||
|
||||
The "System Libraries" of an executable work include anything, other
|
||||
than the work as a whole, that (a) is included in the normal form of
|
||||
packaging a Major Component, but which is not part of that Major
|
||||
Component, and (b) serves only to enable use of the work with that
|
||||
Major Component, or to implement a Standard Interface for which an
|
||||
implementation is available to the public in source code form. A
|
||||
"Major Component", in this context, means a major essential component
|
||||
(kernel, window system, and so on) of the specific operating system
|
||||
(if any) on which the executable work runs, or a compiler used to
|
||||
produce the work, or an object code interpreter used to run it.
|
||||
|
||||
The "Corresponding Source" for a work in object code form means all
|
||||
the source code needed to generate, install, and (for an executable
|
||||
work) run the object code and to modify the work, including scripts to
|
||||
control those activities. However, it does not include the work's
|
||||
System Libraries, or general-purpose tools or generally available free
|
||||
programs which are used unmodified in performing those activities but
|
||||
which are not part of the work. For example, Corresponding Source
|
||||
includes interface definition files associated with source files for
|
||||
the work, and the source code for shared libraries and dynamically
|
||||
linked subprograms that the work is specifically designed to require,
|
||||
such as by intimate data communication or control flow between those
|
||||
subprograms and other parts of the work.
|
||||
|
||||
The Corresponding Source need not include anything that users
|
||||
can regenerate automatically from other parts of the Corresponding
|
||||
Source.
|
||||
|
||||
The Corresponding Source for a work in source code form is that
|
||||
same work.
|
||||
|
||||
2. Basic Permissions.
|
||||
|
||||
All rights granted under this License are granted for the term of
|
||||
copyright on the Program, and are irrevocable provided the stated
|
||||
conditions are met. This License explicitly affirms your unlimited
|
||||
permission to run the unmodified Program. The output from running a
|
||||
covered work is covered by this License only if the output, given its
|
||||
content, constitutes a covered work. This License acknowledges your
|
||||
rights of fair use or other equivalent, as provided by copyright law.
|
||||
|
||||
You may make, run and propagate covered works that you do not
|
||||
convey, without conditions so long as your license otherwise remains
|
||||
in force. You may convey covered works to others for the sole purpose
|
||||
of having them make modifications exclusively for you, or provide you
|
||||
with facilities for running those works, provided that you comply with
|
||||
the terms of this License in conveying all material for which you do
|
||||
not control copyright. Those thus making or running the covered works
|
||||
for you must do so exclusively on your behalf, under your direction
|
||||
and control, on terms that prohibit them from making any copies of
|
||||
your copyrighted material outside their relationship with you.
|
||||
|
||||
Conveying under any other circumstances is permitted solely under
|
||||
the conditions stated below. Sublicensing is not allowed; section 10
|
||||
makes it unnecessary.
|
||||
|
||||
3. Protecting Users' Legal Rights From Anti-Circumvention Law.
|
||||
|
||||
No covered work shall be deemed part of an effective technological
|
||||
measure under any applicable law fulfilling obligations under article
|
||||
11 of the WIPO copyright treaty adopted on 20 December 1996, or
|
||||
similar laws prohibiting or restricting circumvention of such
|
||||
measures.
|
||||
|
||||
When you convey a covered work, you waive any legal power to forbid
|
||||
circumvention of technological measures to the extent such circumvention
|
||||
is effected by exercising rights under this License with respect to
|
||||
the covered work, and you disclaim any intention to limit operation or
|
||||
modification of the work as a means of enforcing, against the work's
|
||||
users, your or third parties' legal rights to forbid circumvention of
|
||||
technological measures.
|
||||
|
||||
4. Conveying Verbatim Copies.
|
||||
|
||||
You may convey 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;
|
||||
keep intact all notices stating that this License and any
|
||||
non-permissive terms added in accord with section 7 apply to the code;
|
||||
keep intact all notices of the absence of any warranty; and give all
|
||||
recipients a copy of this License along with the Program.
|
||||
|
||||
You may charge any price or no price for each copy that you convey,
|
||||
and you may offer support or warranty protection for a fee.
|
||||
|
||||
5. Conveying Modified Source Versions.
|
||||
|
||||
You may convey a work based on the Program, or the modifications to
|
||||
produce it from the Program, in the form of source code under the
|
||||
terms of section 4, provided that you also meet all of these conditions:
|
||||
|
||||
a) The work must carry prominent notices stating that you modified
|
||||
it, and giving a relevant date.
|
||||
|
||||
b) The work must carry prominent notices stating that it is
|
||||
released under this License and any conditions added under section
|
||||
7. This requirement modifies the requirement in section 4 to
|
||||
"keep intact all notices".
|
||||
|
||||
c) You must license the entire work, as a whole, under this
|
||||
License to anyone who comes into possession of a copy. This
|
||||
License will therefore apply, along with any applicable section 7
|
||||
additional terms, to the whole of the work, and all its parts,
|
||||
regardless of how they are packaged. This License gives no
|
||||
permission to license the work in any other way, but it does not
|
||||
invalidate such permission if you have separately received it.
|
||||
|
||||
d) If the work has interactive user interfaces, each must display
|
||||
Appropriate Legal Notices; however, if the Program has interactive
|
||||
interfaces that do not display Appropriate Legal Notices, your
|
||||
work need not make them do so.
|
||||
|
||||
A compilation of a covered work with other separate and independent
|
||||
works, which are not by their nature extensions of the covered work,
|
||||
and which are not combined with it such as to form a larger program,
|
||||
in or on a volume of a storage or distribution medium, is called an
|
||||
"aggregate" if the compilation and its resulting copyright are not
|
||||
used to limit the access or legal rights of the compilation's users
|
||||
beyond what the individual works permit. Inclusion of a covered work
|
||||
in an aggregate does not cause this License to apply to the other
|
||||
parts of the aggregate.
|
||||
|
||||
6. Conveying Non-Source Forms.
|
||||
|
||||
You may convey a covered work in object code form under the terms
|
||||
of sections 4 and 5, provided that you also convey the
|
||||
machine-readable Corresponding Source under the terms of this License,
|
||||
in one of these ways:
|
||||
|
||||
a) Convey the object code in, or embodied in, a physical product
|
||||
(including a physical distribution medium), accompanied by the
|
||||
Corresponding Source fixed on a durable physical medium
|
||||
customarily used for software interchange.
|
||||
|
||||
b) Convey the object code in, or embodied in, a physical product
|
||||
(including a physical distribution medium), accompanied by a
|
||||
written offer, valid for at least three years and valid for as
|
||||
long as you offer spare parts or customer support for that product
|
||||
model, to give anyone who possesses the object code either (1) a
|
||||
copy of the Corresponding Source for all the software in the
|
||||
product that is covered by this License, on a durable physical
|
||||
medium customarily used for software interchange, for a price no
|
||||
more than your reasonable cost of physically performing this
|
||||
conveying of source, or (2) access to copy the
|
||||
Corresponding Source from a network server at no charge.
|
||||
|
||||
c) Convey individual copies of the object code with a copy of the
|
||||
written offer to provide the Corresponding Source. This
|
||||
alternative is allowed only occasionally and noncommercially, and
|
||||
only if you received the object code with such an offer, in accord
|
||||
with subsection 6b.
|
||||
|
||||
d) Convey the object code by offering access from a designated
|
||||
place (gratis or for a charge), and offer equivalent access to the
|
||||
Corresponding Source in the same way through the same place at no
|
||||
further charge. You need not require recipients to copy the
|
||||
Corresponding Source along with the object code. If the place to
|
||||
copy the object code is a network server, the Corresponding Source
|
||||
may be on a different server (operated by you or a third party)
|
||||
that supports equivalent copying facilities, provided you maintain
|
||||
clear directions next to the object code saying where to find the
|
||||
Corresponding Source. Regardless of what server hosts the
|
||||
Corresponding Source, you remain obligated to ensure that it is
|
||||
available for as long as needed to satisfy these requirements.
|
||||
|
||||
e) Convey the object code using peer-to-peer transmission, provided
|
||||
you inform other peers where the object code and Corresponding
|
||||
Source of the work are being offered to the general public at no
|
||||
charge under subsection 6d.
|
||||
|
||||
A separable portion of the object code, whose source code is excluded
|
||||
from the Corresponding Source as a System Library, need not be
|
||||
included in conveying the object code work.
|
||||
|
||||
A "User Product" is either (1) a "consumer product", which means any
|
||||
tangible personal property which is normally used for personal, family,
|
||||
or household purposes, or (2) anything designed or sold for incorporation
|
||||
into a dwelling. In determining whether a product is a consumer product,
|
||||
doubtful cases shall be resolved in favor of coverage. For a particular
|
||||
product received by a particular user, "normally used" refers to a
|
||||
typical or common use of that class of product, regardless of the status
|
||||
of the particular user or of the way in which the particular user
|
||||
actually uses, or expects or is expected to use, the product. A product
|
||||
is a consumer product regardless of whether the product has substantial
|
||||
commercial, industrial or non-consumer uses, unless such uses represent
|
||||
the only significant mode of use of the product.
|
||||
|
||||
"Installation Information" for a User Product means any methods,
|
||||
procedures, authorization keys, or other information required to install
|
||||
and execute modified versions of a covered work in that User Product from
|
||||
a modified version of its Corresponding Source. The information must
|
||||
suffice to ensure that the continued functioning of the modified object
|
||||
code is in no case prevented or interfered with solely because
|
||||
modification has been made.
|
||||
|
||||
If you convey an object code work under this section in, or with, or
|
||||
specifically for use in, a User Product, and the conveying occurs as
|
||||
part of a transaction in which the right of possession and use of the
|
||||
User Product is transferred to the recipient in perpetuity or for a
|
||||
fixed term (regardless of how the transaction is characterized), the
|
||||
Corresponding Source conveyed under this section must be accompanied
|
||||
by the Installation Information. But this requirement does not apply
|
||||
if neither you nor any third party retains the ability to install
|
||||
modified object code on the User Product (for example, the work has
|
||||
been installed in ROM).
|
||||
|
||||
The requirement to provide Installation Information does not include a
|
||||
requirement to continue to provide support service, warranty, or updates
|
||||
for a work that has been modified or installed by the recipient, or for
|
||||
the User Product in which it has been modified or installed. Access to a
|
||||
network may be denied when the modification itself materially and
|
||||
adversely affects the operation of the network or violates the rules and
|
||||
protocols for communication across the network.
|
||||
|
||||
Corresponding Source conveyed, and Installation Information provided,
|
||||
in accord with this section must be in a format that is publicly
|
||||
documented (and with an implementation available to the public in
|
||||
source code form), and must require no special password or key for
|
||||
unpacking, reading or copying.
|
||||
|
||||
7. Additional Terms.
|
||||
|
||||
"Additional permissions" are terms that supplement the terms of this
|
||||
License by making exceptions from one or more of its conditions.
|
||||
Additional permissions that are applicable to the entire Program shall
|
||||
be treated as though they were included in this License, to the extent
|
||||
that they are valid under applicable law. If additional permissions
|
||||
apply only to part of the Program, that part may be used separately
|
||||
under those permissions, but the entire Program remains governed by
|
||||
this License without regard to the additional permissions.
|
||||
|
||||
When you convey a copy of a covered work, you may at your option
|
||||
remove any additional permissions from that copy, or from any part of
|
||||
it. (Additional permissions may be written to require their own
|
||||
removal in certain cases when you modify the work.) You may place
|
||||
additional permissions on material, added by you to a covered work,
|
||||
for which you have or can give appropriate copyright permission.
|
||||
|
||||
Notwithstanding any other provision of this License, for material you
|
||||
add to a covered work, you may (if authorized by the copyright holders of
|
||||
that material) supplement the terms of this License with terms:
|
||||
|
||||
a) Disclaiming warranty or limiting liability differently from the
|
||||
terms of sections 15 and 16 of this License; or
|
||||
|
||||
b) Requiring preservation of specified reasonable legal notices or
|
||||
author attributions in that material or in the Appropriate Legal
|
||||
Notices displayed by works containing it; or
|
||||
|
||||
c) Prohibiting misrepresentation of the origin of that material, or
|
||||
requiring that modified versions of such material be marked in
|
||||
reasonable ways as different from the original version; or
|
||||
|
||||
d) Limiting the use for publicity purposes of names of licensors or
|
||||
authors of the material; or
|
||||
|
||||
e) Declining to grant rights under trademark law for use of some
|
||||
trade names, trademarks, or service marks; or
|
||||
|
||||
f) Requiring indemnification of licensors and authors of that
|
||||
material by anyone who conveys the material (or modified versions of
|
||||
it) with contractual assumptions of liability to the recipient, for
|
||||
any liability that these contractual assumptions directly impose on
|
||||
those licensors and authors.
|
||||
|
||||
All other non-permissive additional terms are considered "further
|
||||
restrictions" within the meaning of section 10. If the Program as you
|
||||
received it, or any part of it, contains a notice stating that it is
|
||||
governed by this License along with a term that is a further
|
||||
restriction, you may remove that term. If a license document contains
|
||||
a further restriction but permits relicensing or conveying under this
|
||||
License, you may add to a covered work material governed by the terms
|
||||
of that license document, provided that the further restriction does
|
||||
not survive such relicensing or conveying.
|
||||
|
||||
If you add terms to a covered work in accord with this section, you
|
||||
must place, in the relevant source files, a statement of the
|
||||
additional terms that apply to those files, or a notice indicating
|
||||
where to find the applicable terms.
|
||||
|
||||
Additional terms, permissive or non-permissive, may be stated in the
|
||||
form of a separately written license, or stated as exceptions;
|
||||
the above requirements apply either way.
|
||||
|
||||
8. Termination.
|
||||
|
||||
You may not propagate or modify a covered work except as expressly
|
||||
provided under this License. Any attempt otherwise to propagate or
|
||||
modify it is void, and will automatically terminate your rights under
|
||||
this License (including any patent licenses granted under the third
|
||||
paragraph of section 11).
|
||||
|
||||
However, if you cease all violation of this License, then your
|
||||
license from a particular copyright holder is reinstated (a)
|
||||
provisionally, unless and until the copyright holder explicitly and
|
||||
finally terminates your license, and (b) permanently, if the copyright
|
||||
holder fails to notify you of the violation by some reasonable means
|
||||
prior to 60 days after the cessation.
|
||||
|
||||
Moreover, your license from a particular copyright holder is
|
||||
reinstated permanently if the copyright holder notifies you of the
|
||||
violation by some reasonable means, this is the first time you have
|
||||
received notice of violation of this License (for any work) from that
|
||||
copyright holder, and you cure the violation prior to 30 days after
|
||||
your receipt of the notice.
|
||||
|
||||
Termination of your rights under this section does not terminate the
|
||||
licenses of parties who have received copies or rights from you under
|
||||
this License. If your rights have been terminated and not permanently
|
||||
reinstated, you do not qualify to receive new licenses for the same
|
||||
material under section 10.
|
||||
|
||||
9. Acceptance Not Required for Having Copies.
|
||||
|
||||
You are not required to accept this License in order to receive or
|
||||
run a copy of the Program. Ancillary propagation of a covered work
|
||||
occurring solely as a consequence of using peer-to-peer transmission
|
||||
to receive a copy likewise does not require acceptance. However,
|
||||
nothing other than this License grants you permission to propagate or
|
||||
modify any covered work. These actions infringe copyright if you do
|
||||
not accept this License. Therefore, by modifying or propagating a
|
||||
covered work, you indicate your acceptance of this License to do so.
|
||||
|
||||
10. Automatic Licensing of Downstream Recipients.
|
||||
|
||||
Each time you convey a covered work, the recipient automatically
|
||||
receives a license from the original licensors, to run, modify and
|
||||
propagate that work, subject to this License. You are not responsible
|
||||
for enforcing compliance by third parties with this License.
|
||||
|
||||
An "entity transaction" is a transaction transferring control of an
|
||||
organization, or substantially all assets of one, or subdividing an
|
||||
organization, or merging organizations. If propagation of a covered
|
||||
work results from an entity transaction, each party to that
|
||||
transaction who receives a copy of the work also receives whatever
|
||||
licenses to the work the party's predecessor in interest had or could
|
||||
give under the previous paragraph, plus a right to possession of the
|
||||
Corresponding Source of the work from the predecessor in interest, if
|
||||
the predecessor has it or can get it with reasonable efforts.
|
||||
|
||||
You may not impose any further restrictions on the exercise of the
|
||||
rights granted or affirmed under this License. For example, you may
|
||||
not impose a license fee, royalty, or other charge for exercise of
|
||||
rights granted under this License, and you may not initiate litigation
|
||||
(including a cross-claim or counterclaim in a lawsuit) alleging that
|
||||
any patent claim is infringed by making, using, selling, offering for
|
||||
sale, or importing the Program or any portion of it.
|
||||
|
||||
11. Patents.
|
||||
|
||||
A "contributor" is a copyright holder who authorizes use under this
|
||||
License of the Program or a work on which the Program is based. The
|
||||
work thus licensed is called the contributor's "contributor version".
|
||||
|
||||
A contributor's "essential patent claims" are all patent claims
|
||||
owned or controlled by the contributor, whether already acquired or
|
||||
hereafter acquired, that would be infringed by some manner, permitted
|
||||
by this License, of making, using, or selling its contributor version,
|
||||
but do not include claims that would be infringed only as a
|
||||
consequence of further modification of the contributor version. For
|
||||
purposes of this definition, "control" includes the right to grant
|
||||
patent sublicenses in a manner consistent with the requirements of
|
||||
this License.
|
||||
|
||||
Each contributor grants you a non-exclusive, worldwide, royalty-free
|
||||
patent license under the contributor's essential patent claims, to
|
||||
make, use, sell, offer for sale, import and otherwise run, modify and
|
||||
propagate the contents of its contributor version.
|
||||
|
||||
In the following three paragraphs, a "patent license" is any express
|
||||
agreement or commitment, however denominated, not to enforce a patent
|
||||
(such as an express permission to practice a patent or covenant not to
|
||||
sue for patent infringement). To "grant" such a patent license to a
|
||||
party means to make such an agreement or commitment not to enforce a
|
||||
patent against the party.
|
||||
|
||||
If you convey a covered work, knowingly relying on a patent license,
|
||||
and the Corresponding Source of the work is not available for anyone
|
||||
to copy, free of charge and under the terms of this License, through a
|
||||
publicly available network server or other readily accessible means,
|
||||
then you must either (1) cause the Corresponding Source to be so
|
||||
available, or (2) arrange to deprive yourself of the benefit of the
|
||||
patent license for this particular work, or (3) arrange, in a manner
|
||||
consistent with the requirements of this License, to extend the patent
|
||||
license to downstream recipients. "Knowingly relying" means you have
|
||||
actual knowledge that, but for the patent license, your conveying the
|
||||
covered work in a country, or your recipient's use of the covered work
|
||||
in a country, would infringe one or more identifiable patents in that
|
||||
country that you have reason to believe are valid.
|
||||
|
||||
If, pursuant to or in connection with a single transaction or
|
||||
arrangement, you convey, or propagate by procuring conveyance of, a
|
||||
covered work, and grant a patent license to some of the parties
|
||||
receiving the covered work authorizing them to use, propagate, modify
|
||||
or convey a specific copy of the covered work, then the patent license
|
||||
you grant is automatically extended to all recipients of the covered
|
||||
work and works based on it.
|
||||
|
||||
A patent license is "discriminatory" if it does not include within
|
||||
the scope of its coverage, prohibits the exercise of, or is
|
||||
conditioned on the non-exercise of one or more of the rights that are
|
||||
specifically granted under this License. You may not convey a covered
|
||||
work if you are a party to an arrangement with a third party that is
|
||||
in the business of distributing software, under which you make payment
|
||||
to the third party based on the extent of your activity of conveying
|
||||
the work, and under which the third party grants, to any of the
|
||||
parties who would receive the covered work from you, a discriminatory
|
||||
patent license (a) in connection with copies of the covered work
|
||||
conveyed by you (or copies made from those copies), or (b) primarily
|
||||
for and in connection with specific products or compilations that
|
||||
contain the covered work, unless you entered into that arrangement,
|
||||
or that patent license was granted, prior to 28 March 2007.
|
||||
|
||||
Nothing in this License shall be construed as excluding or limiting
|
||||
any implied license or other defenses to infringement that may
|
||||
otherwise be available to you under applicable patent law.
|
||||
|
||||
12. No Surrender of Others' Freedom.
|
||||
|
||||
If 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 convey a
|
||||
covered work so as to satisfy simultaneously your obligations under this
|
||||
License and any other pertinent obligations, then as a consequence you may
|
||||
not convey it at all. For example, if you agree to terms that obligate you
|
||||
to collect a royalty for further conveying from those to whom you convey
|
||||
the Program, the only way you could satisfy both those terms and this
|
||||
License would be to refrain entirely from conveying the Program.
|
||||
|
||||
13. Use with the GNU Affero General Public License.
|
||||
|
||||
Notwithstanding any other provision of this License, you have
|
||||
permission to link or combine any covered work with a work licensed
|
||||
under version 3 of the GNU Affero General Public License into a single
|
||||
combined work, and to convey the resulting work. The terms of this
|
||||
License will continue to apply to the part which is the covered work,
|
||||
but the special requirements of the GNU Affero General Public License,
|
||||
section 13, concerning interaction through a network will apply to the
|
||||
combination as such.
|
||||
|
||||
14. Revised Versions of this License.
|
||||
|
||||
The Free Software Foundation may publish revised and/or new versions of
|
||||
the GNU 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 that a certain numbered version of the GNU General
|
||||
Public License "or any later version" applies to it, you have the
|
||||
option of following the terms and conditions either of that numbered
|
||||
version or of any later version published by the Free Software
|
||||
Foundation. If the Program does not specify a version number of the
|
||||
GNU General Public License, you may choose any version ever published
|
||||
by the Free Software Foundation.
|
||||
|
||||
If the Program specifies that a proxy can decide which future
|
||||
versions of the GNU General Public License can be used, that proxy's
|
||||
public statement of acceptance of a version permanently authorizes you
|
||||
to choose that version for the Program.
|
||||
|
||||
Later license versions may give you additional or different
|
||||
permissions. However, no additional obligations are imposed on any
|
||||
author or copyright holder as a result of your choosing to follow a
|
||||
later version.
|
||||
|
||||
15. Disclaimer of Warranty.
|
||||
|
||||
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.
|
||||
|
||||
16. Limitation of Liability.
|
||||
|
||||
IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING
|
||||
WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MODIFIES AND/OR CONVEYS
|
||||
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.
|
||||
|
||||
17. Interpretation of Sections 15 and 16.
|
||||
|
||||
If the disclaimer of warranty and limitation of liability provided
|
||||
above cannot be given local legal effect according to their terms,
|
||||
reviewing courts shall apply local law that most closely approximates
|
||||
an absolute waiver of all civil liability in connection with the
|
||||
Program, unless a warranty or assumption of liability accompanies a
|
||||
copy of the Program in return for a fee.
|
||||
|
||||
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
|
||||
state the exclusion of warranty; and each file should have at least
|
||||
the "copyright" line and a pointer to where the full notice is found.
|
||||
|
||||
<one line to give the program's name and a brief idea of what it does.>
|
||||
Copyright (C) <year> <name of author>
|
||||
|
||||
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 3 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, see <https://www.gnu.org/licenses/>.
|
||||
|
||||
Also add information on how to contact you by electronic and paper mail.
|
||||
|
||||
If the program does terminal interaction, make it output a short
|
||||
notice like this when it starts in an interactive mode:
|
||||
|
||||
<program> Copyright (C) <year> <name of author>
|
||||
This program 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, your program's commands
|
||||
might be different; for a GUI interface, you would use an "about box".
|
||||
|
||||
You should also get your employer (if you work as a programmer) or school,
|
||||
if any, to sign a "copyright disclaimer" for the program, if necessary.
|
||||
For more information on this, and how to apply and follow the GNU GPL, see
|
||||
<https://www.gnu.org/licenses/>.
|
||||
|
||||
The GNU 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. But first, please read
|
||||
<https://www.gnu.org/licenses/why-not-lgpl.html>.
|
||||
8496
OGP64/usr/share/doc/coreutils/ChangeLog
Normal file
8496
OGP64/usr/share/doc/coreutils/ChangeLog
Normal file
File diff suppressed because it is too large
Load diff
5299
OGP64/usr/share/doc/coreutils/NEWS
Normal file
5299
OGP64/usr/share/doc/coreutils/NEWS
Normal file
File diff suppressed because it is too large
Load diff
242
OGP64/usr/share/doc/coreutils/README
Normal file
242
OGP64/usr/share/doc/coreutils/README
Normal file
|
|
@ -0,0 +1,242 @@
|
|||
These are the GNU core utilities. This package is the union of
|
||||
the GNU fileutils, sh-utils, and textutils packages.
|
||||
|
||||
Most of these programs have significant advantages over their Unix
|
||||
counterparts, such as greater speed, additional options, and fewer
|
||||
arbitrary limits.
|
||||
|
||||
The programs that can be built with this package are:
|
||||
|
||||
[ arch b2sum base32 base64 basename basenc cat chcon chgrp chmod chown
|
||||
chroot cksum comm coreutils cp csplit cut date dd df dir dircolors dirname
|
||||
du echo env expand expr factor false fmt fold groups head hostid hostname
|
||||
id install join kill link ln logname ls md5sum mkdir mkfifo mknod mktemp
|
||||
mv nice nl nohup nproc numfmt od paste pathchk pinky pr printenv printf ptx
|
||||
pwd readlink realpath rm rmdir runcon seq sha1sum sha224sum sha256sum
|
||||
sha384sum sha512sum shred shuf sleep sort split stat stdbuf stty sum sync
|
||||
tac tail tee test timeout touch tr true truncate tsort tty uname unexpand
|
||||
uniq unlink uptime users vdir wc who whoami yes
|
||||
|
||||
See the file NEWS for a list of major changes in the current release.
|
||||
|
||||
If you obtained this file as part of a "git clone", then see the
|
||||
README-hacking file. If this file came to you as part of a tar archive,
|
||||
then see the file INSTALL for compilation and installation instructions.
|
||||
|
||||
Like the rest of the GNU system, these programs mostly conform to
|
||||
POSIX, with BSD and other extensions. For closer conformance, or
|
||||
conformance to a particular POSIX version, set the POSIXLY_CORRECT
|
||||
and the _POSIX2_VERSION environment variables, as described in
|
||||
the documentation under "Standards conformance".
|
||||
|
||||
The ls, dir, and vdir commands are all separate executables instead of
|
||||
one program that checks argv[0] because people often rename these
|
||||
programs to things like gls, gnuls, l, etc. Renaming a program
|
||||
file shouldn't affect how it operates, so that people can get the
|
||||
behavior they want with whatever name they want.
|
||||
|
||||
Special thanks to Paul Eggert, Brian Matthews, Bruce Evans, Karl Berry,
|
||||
Kaveh Ghazi, and François Pinard for help with debugging and porting
|
||||
these programs. Many thanks to all of the people who have taken the
|
||||
time to submit problem reports and fixes. All contributed changes are
|
||||
attributed in the commit logs.
|
||||
|
||||
And thanks to the following people who have provided accounts for
|
||||
portability testing on many different types of systems: Bob Proulx,
|
||||
Christian Robert, François Pinard, Greg McGary, Harlan Stenn,
|
||||
Joel N. Weber, Mark D. Roth, Matt Schalit, Nelson H. F. Beebe,
|
||||
Réjean Payette, Sam Tardieu.
|
||||
|
||||
Thanks to Michael Stone for inflicting test releases of this package
|
||||
on Debian's unstable distribution, and to all the kind folks who used
|
||||
that distribution and found and reported bugs.
|
||||
|
||||
Note that each man page is now automatically generated from a template
|
||||
and from the corresponding --help usage message. Patches to the template
|
||||
files (man/*.x) are welcome. However, the authoritative documentation
|
||||
is in texinfo form in the doc directory.
|
||||
|
||||
|
||||
*********************
|
||||
Pre-C99 build failure
|
||||
---------------------
|
||||
|
||||
In 2009 we added this requirement:
|
||||
To build the coreutils from source, you must have a C99-conforming
|
||||
compiler, due to the use of declarations after non-declaration statements
|
||||
in several files in src/. There is code in configure to find and, if
|
||||
possible, enable an appropriate compiler. However, if configure doesn't
|
||||
find a C99 compiler, it continues nonetheless, and your build will fail.
|
||||
There used to be a "c99-to-c89.diff" patch you could apply to convert
|
||||
to code that even an old pre-c99 compiler can handle, but it was too
|
||||
tedious to maintain, so has been removed.
|
||||
|
||||
|
||||
***********************
|
||||
HPUX 11.x build failure
|
||||
-----------------------
|
||||
|
||||
A known problem exists when compiling on HPUX on both hppa and ia64
|
||||
in 64-bit mode (i.e., +DD64) on HP-UX 11.0, 11.11, and 11.23. This
|
||||
is not due to a bug in the package but instead due to a bug in the
|
||||
system header file which breaks things in 64-bit mode. The default
|
||||
compilation mode is 32-bit and the software compiles fine using the
|
||||
default mode. To build this software in 64-bit mode you will need
|
||||
to fix the system /usr/include/inttypes.h header file. After
|
||||
correcting that file the software also compiles fine in 64-bit mode.
|
||||
Here is one possible patch to correct the problem:
|
||||
|
||||
--- /usr/include/inttypes.h.orig Thu May 30 01:00:00 1996
|
||||
+++ /usr/include/inttypes.h Sun Mar 23 00:20:36 2003
|
||||
@@ -489 +489 @@
|
||||
-#ifndef __STDC_32_MODE__
|
||||
+#ifndef __LP64__
|
||||
|
||||
|
||||
************************
|
||||
OSF/1 4.0d and AIX build failures
|
||||
------------------------
|
||||
|
||||
If you use /usr/bin/make on these systems, the build will fail due
|
||||
to the presence of the "[" target. OSF/1 make(1) appears to
|
||||
treat "[" as some syntax relating to locks, while AIX make(1)
|
||||
appears to skip the "[" target. To work around these issues
|
||||
the best solution is to use GNU make. Otherwise, simply remove
|
||||
all mention of "[$(EXEEXT)" from src/Makefile.
|
||||
|
||||
|
||||
************************
|
||||
32 bit time_t build failures
|
||||
------------------------
|
||||
|
||||
On systems where it's determined that 64 bit time_t is supported
|
||||
(indicated by touch -t <some time after 2038>), but that coreutils
|
||||
would be built with a narrower time_t, the build will fail.
|
||||
This can be allowed by passing TIME_T_32_BIT_OK=yes to configure,
|
||||
or avoided by enabling 64 bit builds. For example GCC on AIX defaults
|
||||
to 32 bit, and to enable the 64 bit ABI one can use:
|
||||
./configure CFLAGS=-maix64 LDFLAGs=-maix64 AR='ar -X64'
|
||||
|
||||
|
||||
*************************************************
|
||||
"make check" failure on IRIX 6.5 and Solaris <= 9
|
||||
-------------------------------------------------
|
||||
|
||||
Using the vendor make program to run "make check" fails on these two systems.
|
||||
If you want to run all of the tests there, use GNU make.
|
||||
|
||||
|
||||
|
||||
**********************
|
||||
Running tests as root:
|
||||
----------------------
|
||||
|
||||
If you run the tests as root, note that a few of them create files
|
||||
and/or run programs as a non-root user, 'nobody' by default.
|
||||
If you want to use some other non-root username, specify it via
|
||||
the NON_ROOT_USERNAME environment variable. Depending on the
|
||||
permissions with which the working directories have been created,
|
||||
using 'nobody' may fail, because that user won't have the required
|
||||
read and write access to the build and test directories.
|
||||
I find that it is best to unpack and build as a non-privileged
|
||||
user, and then to run the following command as that user in order
|
||||
to run the privilege-requiring tests:
|
||||
|
||||
sudo env PATH="$PATH" NON_ROOT_USERNAME=$USER make -k check-root
|
||||
|
||||
If you can run the tests as root, please do so and report any
|
||||
problems. We get much less test coverage in that mode, and it's
|
||||
arguably more important that these tools work well when run by
|
||||
root than when run by less privileged users.
|
||||
|
||||
|
||||
***************
|
||||
Reporting bugs:
|
||||
---------------
|
||||
|
||||
Send bug reports, questions, comments, etc. to bug-coreutils@gnu.org.
|
||||
To suggest a patch, see the files README-hacking and HACKING for tips.
|
||||
|
||||
If you have a problem with 'sort', try running 'sort --debug', as it
|
||||
can often help find and fix problems without having to wait for an
|
||||
answer to a bug report. If the debug output does not suffice to fix
|
||||
the problem on your own, please compress and attach it to the rest of
|
||||
your bug report.
|
||||
|
||||
IMPORTANT: if you take the time to report a test failure,
|
||||
please be sure to include the output of running 'make check'
|
||||
in verbose mode for each failing test. For example,
|
||||
if the test that fails is tests/df/df-P.sh, then you would
|
||||
run this command:
|
||||
|
||||
make check TESTS=tests/df/df-P.sh VERBOSE=yes SUBDIRS=. >> log 2>&1
|
||||
|
||||
For some tests, you can get even more detail by adding DEBUG=yes.
|
||||
Then include the contents of the file 'log' in your bug report.
|
||||
|
||||
|
||||
***************************************
|
||||
|
||||
There are many tests, but nowhere near as many as we need.
|
||||
Additions and corrections are very welcome.
|
||||
|
||||
If you see a problem that you've already reported, feel free to re-report
|
||||
it -- it won't bother me to get a reminder. Besides, the more messages I
|
||||
get regarding a particular problem the sooner it'll be fixed -- usually.
|
||||
If you sent a complete patch and, after a couple weeks you haven't
|
||||
received any acknowledgement, please ping us. A complete patch includes
|
||||
a well-written ChangeLog entry, unified (diff -u format) diffs relative
|
||||
to the most recent test release (or, better, relative to the latest
|
||||
sources in the public repository), an explanation for why the patch is
|
||||
necessary or useful, and if at all possible, enough information to
|
||||
reproduce whatever problem prompted it. Plus, you'll earn lots of
|
||||
karma if you include a test case to exercise any bug(s) you fix.
|
||||
Here are instructions for checking out the latest development sources:
|
||||
|
||||
https://savannah.gnu.org/git/?group=coreutils
|
||||
|
||||
If your patch adds a new feature, please try to get some sort of consensus
|
||||
that it is a worthwhile change. One way to do that is to send mail to
|
||||
coreutils@gnu.org including as much description and justification
|
||||
as you can. Based on the feedback that generates, you may be able to
|
||||
convince us that it's worth adding. Please also consult the list of
|
||||
previously discussed but ultimately rejected feature requests at:
|
||||
https://www.gnu.org/software/coreutils/rejected_requests.html
|
||||
|
||||
|
||||
WARNING: Now that we use the ./bootstrap script, you should not run
|
||||
autoreconf manually. Doing that will overwrite essential source files
|
||||
with older versions, which may make the package unbuildable or introduce
|
||||
subtle bugs.
|
||||
|
||||
|
||||
WARNING: If you modify files like configure.in, m4/*.m4, aclocal.m4,
|
||||
or any Makefile.am, then don't be surprised if what gets regenerated no
|
||||
longer works. To make things work, you'll have to be using appropriate
|
||||
versions of the tools listed in bootstrap.conf's buildreq string.
|
||||
|
||||
All of these programs except 'test' recognize the '--version' option.
|
||||
When reporting bugs, please include in the subject line both the package
|
||||
name/version and the name of the program for which you found a problem.
|
||||
|
||||
For general documentation on the coding and usage standards
|
||||
this distribution follows, see the GNU Coding Standards at:
|
||||
https://www.gnu.org/prep/standards/
|
||||
|
||||
For any copyright year range specified as YYYY-ZZZZ in this package
|
||||
note that the range specifies every single year in that closed interval.
|
||||
|
||||
Mail suggestions and bug reports for these programs to
|
||||
the address on the last line of --help output.
|
||||
|
||||
|
||||
========================================================================
|
||||
|
||||
Copyright (C) 1998-2021 Free Software Foundation, Inc.
|
||||
|
||||
Permission is granted to copy, distribute and/or modify this document
|
||||
under the terms of the GNU Free Documentation License, Version 1.3 or
|
||||
any later version published by the Free Software Foundation; with no
|
||||
Invariant Sections, with no Front-Cover Texts, and with no Back-Cover
|
||||
Texts. A copy of the license is included in the "GNU Free
|
||||
Documentation License" file as part of this distribution.
|
||||
918
OGP64/usr/share/doc/coreutils/THANKS
Normal file
918
OGP64/usr/share/doc/coreutils/THANKS
Normal file
|
|
@ -0,0 +1,918 @@
|
|||
These people have contributed to the GNU coreutils (formerly, the fileutils,
|
||||
textutils, and/or sh-utils packages). Some have reported problems, others
|
||||
have contributed improvements to the documentation, actual code, and even
|
||||
complete programs. Those contributions are described in the version control
|
||||
logs and ChangeLog files. If your name has been left out, if you'd rather
|
||||
not be listed, or if you'd prefer a different address be used, please send a
|
||||
note to the GNU coreutils mailing list <coreutils@gnu.org>.
|
||||
|
||||
??? kytek@cybercomm.net
|
||||
A Costa agcosta@gis.net
|
||||
Aaron Burgemeister dajoker@gmail.com
|
||||
Aaron Davies aaron.davies@gmail.com
|
||||
Aaron Hawley ashawley@uvm.edu
|
||||
Achilles Gaikwad agaikwad@redhat.com
|
||||
Achim Blumensath blume@corona.oche.de
|
||||
Adam Borowski kilobyte@angband.pl
|
||||
Adam Jimerson vendion@charter.net
|
||||
Adam Klein aklein@debian.org
|
||||
Adam Sampson ats@offog.org
|
||||
Adrian Bunk bunk@stusta.de
|
||||
AIDA Shinra shinra@j10n.org
|
||||
Akim Demaille akim.demaille@gmail.com
|
||||
Alain Magloire alain@qnx.com
|
||||
Alan Curry pacman-cu@kosh.dhis.org
|
||||
Alan Iwi iwi@atm.ox.ac.uk
|
||||
Alan Jenkins alan-jenkins@tuffmail.co.uk
|
||||
Alban Bedel alban.bedel@avionic-design.de
|
||||
Albert Chin-A-Young china@thewrittenword.com
|
||||
Albert Hopkins ahopkins@dynacare.com
|
||||
Alberto Accomazzi alberto@cfa0.harvard.edu
|
||||
aldomel aldomel@ix.netcom.com
|
||||
Aleksej Serdjukov deletesoftware@yandex.ru
|
||||
Aleksej Shilin rootlexx@mail.ru
|
||||
Alen Muzinic zveki@fly.cc.fer.hr
|
||||
Alex Deymo deymo@chromium.org
|
||||
Alexander Nguyen vinh@seas.ucla.edu
|
||||
Alexander V. Lukyanov lav@netis.ru
|
||||
Alexandre Duret-Lutz duret_g@epita.fr
|
||||
Alexey Solovyov alekso@math.uu.se
|
||||
Alexey Vyskubov alexey@pippuri.mawhrin.net
|
||||
Alfred M. Szmidt ams@kemisten.nu
|
||||
Allen Hewes allen@decisiv.net
|
||||
Ambrose Feinstein ambrose@google.com
|
||||
Amr Ali amr.ali.cc@gmail.com
|
||||
Anders Jonsson anders.jonsson@norsjovallen.se
|
||||
Anders Kaseorg andersk@mit.edu
|
||||
Andi Kleen freitag@alancoxonachip.com
|
||||
Andre Novaes Cunha Andre.Cunha@br.global-one.net
|
||||
Andreas Dilger adilger@sun.com
|
||||
Andreas Dilger adilger@whamcloud.com
|
||||
Andreas Frische andreasfrische@gmail.com
|
||||
Andreas Gruenbacher andreas.gruenbacher@gmail.com
|
||||
Andreas Jaeger jaeger@gnu.org
|
||||
Andreas Luik luik@isa.de
|
||||
Andreas Mohr andi@lisas.de
|
||||
Andreas Schwab schwab@linux-m68k.org
|
||||
Andreas Stolcke stolcke@ICSI.Berkeley.EDU
|
||||
Andrei Gaponenko andr@triumf.ca
|
||||
Andres Soolo andres@soolo.matti.ee
|
||||
Andrew Burgess aab@cichlid.com
|
||||
Andrew Church achurch@achurch.org
|
||||
Andrew Dalke dalke@bioreason.com
|
||||
Andrew D Warshall warshall@99main.com
|
||||
Andrew Fabbro andrew@fabbro.org
|
||||
Andrew Pham andpha@us.ibm.com
|
||||
Andrew Tridgell tridge@samba.org
|
||||
Andrey Borzenkov arvidjaar@mail.ru
|
||||
Andries Brouwer Andries.Brouwer@cwi.nl
|
||||
Andy Longton alongton@metamark.com
|
||||
Ángel González keisial@gmail.com
|
||||
Anoop Sharma sendtoanoop@gmail.com
|
||||
Anthony Thyssen anthony@griffith.edu.au
|
||||
Anton Ovchinnikov revolver112@gmail.com
|
||||
Antonio Ospite ao2@ao2.it
|
||||
Antonio Rendas ajrendas@yahoo.com
|
||||
Ariel Faigon ariel@cthulhu.engr.sgi.com
|
||||
Arjan Opmeer arjan.opmeer@gmail.com
|
||||
Arkadiusz Miśkiewicz arekm@maven.pl
|
||||
Arman Absalan armanaxh@gmail.com
|
||||
Arne Henrik Juul arnej@imf.unit.no
|
||||
Arnold Robbins arnold@skeeve.com
|
||||
Arthur Pool pool@commerce.uq.edu.au
|
||||
Arun Sharma arun.sharma@intel.com
|
||||
Arvind Autar Autar022@planet.nl
|
||||
Assaf Gordon assafgordon@gmail.com
|
||||
Augey Mikus mikus@dqc.org
|
||||
Aurelien Jarno aurel32@debian.org
|
||||
Austin Donnelly Austin.Donnelly@cl.cam.ac.uk
|
||||
Axel Dörfler axeld@pinc-software.de
|
||||
Axel Kittenberger Anshil@gmx.net
|
||||
Ayappan ayappap2@in.ibm.com
|
||||
Barry Kelly http://blog.barrkel.com/
|
||||
Bauke Jan Douma bjdouma@xs4all.nl
|
||||
Ben Elliston bje@air.net.au
|
||||
Ben Harris bjh21@netbsd.org
|
||||
Ben Pfaff blp@cs.stanford.edu
|
||||
Ben Walton bdwalton@gmail.com
|
||||
Bengt Martensson bengt@mathematik.uni-Bremen.de
|
||||
Benjamin Cutler cutlerbc@simla.colostate.edu
|
||||
Benno Schulenberg bensberg@justemail.net
|
||||
Benno Schulenberg bensberg@telfort.nl
|
||||
Benoît Knecht benoit.knecht@fsfe.org
|
||||
Bernard Giroud bernard.giroud@creditlyonnais.ch
|
||||
Bernd Eckenfels ecki@debian.org
|
||||
Bernd Leibing bernd.leibing@rz.uni-ulm.de
|
||||
Bernd Melchers melchers@cis.fu-berlin.de
|
||||
Bernhard Baehr bernhard.baehr@gmx.de
|
||||
Bernhard Gabler bernhard@uni-koblenz.de
|
||||
Bernhard Marx berny@bernhard-marx.de
|
||||
Bernhard Rosenkraenzer bero@redhat.de
|
||||
Bernhard Voelker mail@bernhard-voelker.de
|
||||
Bert Deknuydt Bert.Deknuydt@esat.kuleuven.ac.be
|
||||
Bert Wesarg bert.wesarg@googlemail.com
|
||||
Bill Brelsford wb@k2di.net
|
||||
Bill Peters peters@gaffel.as.arizona.edu
|
||||
Bishop Bettini bishop.bettini@gmail.com
|
||||
Bjarni Ingi Gislason bjarniig@rhi.hi.is
|
||||
Bjorn Helgaas helgaas@rsn.hp.com
|
||||
Bo Borgerson gigabo@gmail.com
|
||||
Bo Rydberg bolry@hotmail.com
|
||||
Bob McCracken kerouac@ravenet.com
|
||||
Bob Proulx bob@proulx.com
|
||||
Bogdan Drozdowski bogdandr@op.pl
|
||||
Boris Ranto branto@redhat.com
|
||||
Branden Robinson branden@necrotic.deadbeast.net
|
||||
Brendan O'Dea bod@compusol.com.au
|
||||
Brent Petit brent.petit@hpe.com
|
||||
Brian Foster bfoster@redhat.com
|
||||
Brian Kimball bfk@footbag.org
|
||||
Brian M. Carlson sandals@crustytoothpaste.ath.cx
|
||||
Brian Silverman bsilverman@conceptxdesign.com
|
||||
Brian Youmans 3diff@gnu.org
|
||||
Britton Leo Kerin fsblk@aurora.uaf.edu
|
||||
Bruce Korb bkorb@gnu.org
|
||||
Bruce Robertson brucer@theodolite.dyndns.org
|
||||
Bruno Haible bruno@clisp.org
|
||||
Brynnen Owen owen@illinois.edu
|
||||
C de-Avillez hggdh2@gmail.com
|
||||
Carl Edquist edquist@cs.wisc.edu
|
||||
Carl Johnson carlj@cjlinux.home.org
|
||||
Carl Lowenstein cdl@mpl.UCSD.EDU
|
||||
Carl Roth roth@urs.us
|
||||
Carlos Canau Carlos.Canau@relay.puug.pt
|
||||
Carlos Santos casantos@datacom.com.br
|
||||
Charles Karney karney@pppl.gov
|
||||
Charles Randall crandall@matchlogic.com
|
||||
Chas. Owens chas.owens@gmail.com
|
||||
Chen Guo chen.guo.0625@gmail.com
|
||||
Chengwei Yang chengwei.yang@intel.com
|
||||
Chih-Hsuan Yen yan12125@gmail.com
|
||||
Chip Salzenberg chip@valinux.com
|
||||
Choi Jongu zoopi01@gmail.com
|
||||
Chris Clayton chris2553@googlemail.com
|
||||
Chris Davies chris@roaima.co.uk
|
||||
Chris Faylor cgf@cygnus.com
|
||||
Chris J. Bednar cjb@AdvancedDataSolutions.com
|
||||
Chris Jones cjns1989@gmail.com
|
||||
Chris Lesniewski ctl@mit.edu
|
||||
Chris Meyering christophe.meyering@gmail.com
|
||||
Chris Sylvain csylvain@umm.edu
|
||||
Chris Yeo cyeo@biking.org
|
||||
Christi Alice Scarborough christi@chiark.greenend.org.uk
|
||||
Christian Harkort christian.harkort@web.de
|
||||
Christian Jullien eligis@orange.fr
|
||||
Christian Krackowizer ckrackowiz@std.schuler-ag.com
|
||||
Christian Rose menthos@menthos.com
|
||||
Christian von Roques roques@pond.sub.org
|
||||
Christoph Anton Mitterer calestyo@scientia.net
|
||||
Christophe LYON christophe.lyon@st.com
|
||||
Chuck Hedrick hedrick@klinzhai.rutgers.edu
|
||||
Chusslove Illich caslav.ilic@gmx.net
|
||||
Clark Morgan cmorgan@aracnet.com
|
||||
Clement Wang clem.wang@overture.com
|
||||
Cliff Miller cbm@whatexit.org
|
||||
Cojocaru Alexandru xojoc@gmx.com
|
||||
Colin Leitner colin.leitner@googlemail.com
|
||||
Colin Plumb colin@nyx.net
|
||||
Colin Watson cjwatson@debian.org
|
||||
Collin Rogowski collin@rogowski.de
|
||||
Cray-Cyber Project http://www.cray-cyber.org
|
||||
Cristian Cadar cristic@stanford.edu
|
||||
Cyril Bouthors cyril@bouthors.org
|
||||
D. Hugh Redelmeier hugh@mimosa.com
|
||||
Daiki Ueno ueno@gnu.org
|
||||
Dale Scheetz dwarf@polaris.net
|
||||
Dameon G. Rogers dgr03@uark.edu
|
||||
Daming Yang lion@aosc.io
|
||||
Dan Hagerty hag@gnu.ai.it.edu
|
||||
Dan Hipschman dsh@linux.ucla.edu
|
||||
Dan Jacobson jidanni@jidanni.org
|
||||
Dan Pascu dan@services.iiruc.ro
|
||||
Daniel Bergstrom noa@melody.se
|
||||
Daniel Dunbar daniel@zuster.org
|
||||
Daniel J Walsh dwalsh@redhat.com
|
||||
Daniel Lockyer thisisdaniellockyer@gmail.com
|
||||
Daniel Mach dmach@redhat.com
|
||||
Daniel P. Berrangé berrange@redhat.com
|
||||
Daniel Schepler dschepler@gmail.com
|
||||
Daniel Stavrovski d@stavrovski.net
|
||||
Daniel Tschinder daniel.tschinder@project-a.com
|
||||
Dániel Varga danielv@axelero.hu
|
||||
Danny Levinson danny.levinson@overture.com
|
||||
Dario Giovannetti dariogiova@gmail.com
|
||||
Darrel Francis d.francis@cheerful.com
|
||||
Darren Salt ds@youmustbejoking.demon.co.uk
|
||||
Dave Beckett dajobe@dajobe.org
|
||||
Dave Chiluk chiluk@canonical.com
|
||||
David Alan Gilbert gilbertd@treblig.org
|
||||
David A. Wheeler dwheeler@dwheeler.com
|
||||
David Bartley dtbartle@csclub.uwaterloo.ca
|
||||
David Diggles david.diggles@dnrm.qld.gov.au
|
||||
David Dyck dcd@tc.fluke.COM
|
||||
David Eisner cradle@umd.edu
|
||||
David Flynn dav@chess.plus.com
|
||||
David Gast dgast@csulb.edu
|
||||
David Godfrey dave@delta.demon.co.uk
|
||||
David Luyer david_luyer@pacific.net.au
|
||||
David Madore david.madore@ens.fr
|
||||
David Malone dwmalone@cnri.dit.ie
|
||||
David Matei matei@cs.toronto.edu
|
||||
David Michael fedora.dm0@gmail.com
|
||||
David Sterba dsterba@suse.cz
|
||||
Davide Canova kc.canova@gmail.com
|
||||
Dawson Engler engler@stanford.edu
|
||||
Dean Gaudet dean-savannah@arctic.org
|
||||
Deepak Goel deego@gnufans.org
|
||||
Denis Excoffier gcc@Denis-Excoffier.org
|
||||
Denis McKeon dmckeon@swcp.com
|
||||
Dennis Clarke dclarke@blastwave.org
|
||||
Dennis Henriksen opus@flamingo.osrl.dk
|
||||
Dennis Smit ds@nerds-incorporated.org
|
||||
Derek Clegg dclegg@next.com
|
||||
Dick Streefland dick_streefland@tasking.com
|
||||
Dirk Lattermann dlatt@t-online.de
|
||||
Dirk-Jan Faber djfaber@snow.nl
|
||||
Dmitry Monakhov dmonakhov@openvz.org
|
||||
Dmitry Rutsky rutsky@school.ioffe.rssi.ru
|
||||
Dmitry V. Levin ldv@altlinux.org
|
||||
Don Parsons dparsons@synapse.kent.edu
|
||||
Donni Erpel donald@appc11.gsi.de
|
||||
Doug Coleman coleman@iarc1.ece.utexas.edu
|
||||
Doug McLaren dougmc@comco.com
|
||||
Dragos Harabor dharabor@us.oracle.com
|
||||
Duncan Roe duncanr@optimation.com.au
|
||||
Dylan Cali calid1984@gmail.com
|
||||
Dylan Simon dylan@dylex.net
|
||||
Ed Avis ed@membled.com
|
||||
Ed Santiago ed@edsantiago.com
|
||||
Edgars Irmejs edgars.irmejs@gmail.com
|
||||
Edward Schwartz edmcman@cmu.edu
|
||||
Edward Welbourne eddy@chaos.org.uk
|
||||
Edzer Pebesma Edzer.Pebesma@rivm.nl
|
||||
Egmont Koblinger egmont@uhulinux.hu
|
||||
Eirik Fuller eirik@hackrat.com
|
||||
Eivind eivindt@multinet.no
|
||||
Elbert Pol elbert.pol@gmail.com
|
||||
Eldon Stegall eldon@eldondev.com
|
||||
Eli Zaretskii eliz@is.elta.co.il
|
||||
Elias Pipping pipping@gentoo.org
|
||||
Emanuele Giacomelli vpooldyn-linux@yahoo.it
|
||||
Emil Engler me@emilengler.com
|
||||
Emile LeBlanc leblanc@math.toronto.edu
|
||||
Emmanuel Lacour elacour@home-dn.net
|
||||
Enrico Scholz enrico.scholz@informatik.tu-chemnitz.de
|
||||
Eric Backus ericb@lsid.hp.com
|
||||
Eric Bergen eric.bergen@gmail.com
|
||||
Eric Blake eblake@redhat.com
|
||||
Eric G. Miller egm2@jps.net
|
||||
Eric Pemente pemente@northpark.edu
|
||||
Eric S. Raymond esr@snark.thyrsus.com
|
||||
Erik Auerswald auerswal@unix-ag.uni-kl.de
|
||||
Erik Bennett bennett@cvo.oneworld.com
|
||||
Erik Bernstein erik@fscking.org
|
||||
Erik Corry erik@kroete2.freinet.de
|
||||
Evan Hunt ethanol@armory.com
|
||||
Federico Simoncelli fsimonce@redhat.com
|
||||
Felix Lee flee@teleport.com
|
||||
Felix Rauch Valenti frauch@cse.unsw.edu.au
|
||||
Ferdinand fw@scenic.mine.nu
|
||||
Filipp Gunbin fgunbin@fastmail.fm
|
||||
Filipus Klutiero chealer@gmail.com
|
||||
Fletcher Mattox fletcher@cs.utexas.edu
|
||||
Florent Bayle florent@sarcelle.net
|
||||
Florian Schlichting fschlich@cis.fu-berlin.de
|
||||
Florin Iucha fiucha@hsys.mic.ro
|
||||
Francesco Montorsi fr_m@hotmail.com
|
||||
François Pinard pinard@iro.umontreal.ca
|
||||
François Rigault rigault.francois@gmail.com
|
||||
Frank Adler fadler@allesklar.de
|
||||
Frank T Lofaro ftlofaro@snooks.Egr.UNLV.EDU
|
||||
Fred Fish fnf@ninemoons.com
|
||||
Frédéric L. W. Meunier 0@pervalidus.net
|
||||
Frederik Eaton frederik@caltech.edu
|
||||
Fridolin Pokorny fpokorny@redhat.com
|
||||
FUJIWARA Katsunori foozy@lares.dti.ne.jp
|
||||
Gabor Z. Papp gzp@gzp.org.hu
|
||||
Gaël Quéri gqueri@mail.dotcom.fr
|
||||
Galen Hazelwood galenh@micron.net
|
||||
Gary Anderson ganderson@clark.net
|
||||
Gary Johnson garyjohn@spk.agilent.com
|
||||
Gary V. Vaughan gary@gnu.org
|
||||
Gaute Hvoslef Kvalnes gaute@verdsveven.com
|
||||
Geoff Collyer geoff at collyer.net
|
||||
Geoff Kuenning geoff@cs.hmc.edu
|
||||
Geoff Odhner geoff@franklin.com
|
||||
Geoff Whale geoffw@cse.unsw.EDU.AU
|
||||
George Burgess IV gbiv@chromium.org
|
||||
Gerald Pfeifer gerald@pfeifer.com
|
||||
Gerhard Poul gpoul@gnu.org
|
||||
Germano Leichsenring germano@jedi.cs.kobe-u.ac.jp
|
||||
Gian Piero Carrubba gpiero@rm-rf.it
|
||||
Gilles Espinasse g.esp@free.fr
|
||||
Giuseppe Scrivano gscrivano@gnu.org
|
||||
Glen Lenker glen.lenker@gmail.com
|
||||
Göran Uddeborg goeran@uddeborg.se
|
||||
GOTO Masanori gotom@debian.or.jp
|
||||
G.P. Halkes buscom@ghalkes.nl
|
||||
Greg Louis glouis@dynamicro.on.ca
|
||||
Greg McGary gkm@gnu.org
|
||||
Greg Metcalfe metcalfegreg@qwest.net
|
||||
Greg Schafer gschafer@zip.com.au
|
||||
Greg Troxel gdt@bbn.com
|
||||
Greg Wooledge gawooledge@sherwin.com
|
||||
Gregory Leblanc gleblanc@cu-portland.edu
|
||||
Grigorii Sokolik g.sokol99@g-sokol.info
|
||||
Guenter Knauf lists@gknw.net
|
||||
Guido Leenders guido.leenders@invantive.com
|
||||
Guilherme de Almeida Suckevicz guito.linux@gmail.com
|
||||
Guntram Blohm Extern.Guntram.Blohm@AUDI.DE
|
||||
Guochun Shi gshi@ncsa.uiuc.edu
|
||||
H. J. Lu hjl@valinux.com
|
||||
Hans Ginzel hans@matfyz.cz
|
||||
Hans Lermen lermen@fgan.de
|
||||
Hans Verkuil hans@wyst.hobby.nl
|
||||
Harald Dunkel harald.dunkel@t-online.de
|
||||
Harald Hoyer harald@redhat.com
|
||||
Harry Liu rliu@lek.ugcs.caltech.edu
|
||||
Harti Brandt brandt@fokus.fraunhofer.de
|
||||
Harvey Eneman Harvey.Eneman@oracle.com
|
||||
Heikki Orsila heikki.orsila@iki.fi
|
||||
Heiko Marr h.marr@webmasters.de
|
||||
Helen Faulkner helen_ml_faulkner@yahoo.co.uk
|
||||
Herbert Xu herbert@gondor.apana.org.au
|
||||
Holger Berger hberger@ess.nec.de
|
||||
Hon-Yin Kok hkok@yoda.unl.edu
|
||||
Hugh Daniel hugh@xanadu.com
|
||||
Iain Calder ic56@rogers.com
|
||||
Ian Bruce ian.bruce@myrealbox.com
|
||||
Ian Jackson ijackson@chiark.greenend.org.uk
|
||||
Ian Kent ikent@redhat.com
|
||||
Ian Lance Taylor ian@cygnus.com
|
||||
Ian Turner vectro@pipeline.com
|
||||
Iida Yosiaki iida@gnu.org
|
||||
Illia Bobyr ibobyr@google.com
|
||||
Ilya N. Golubev gin@mo.msk.ru
|
||||
Ingo Saitz ingo@debian.org
|
||||
Ingo Weinhold ingo_weinhold@gmx.de
|
||||
Ivan Labath labath3@st.fmph.uniba.sk
|
||||
Ivan Sichmann Freitas ivansichfreitas@gmail.com
|
||||
Ivo Timmermans ivo@debian.org
|
||||
J. Scott Edwards qrw.software@gmail.com
|
||||
Jaak Ristioja jaak.ristioja@cyber.ee
|
||||
Jack Howarth howarth.mailing.lists@gmail.com
|
||||
Jacky Fong jacky.fong@utoronto.ca
|
||||
Jacob Keller jacob.e.keller@intel.com
|
||||
Jakob Truelsen jakob@scalgo.com
|
||||
James Antill jmanti%essex.ac.uk@seralph21.essex.ac.uk
|
||||
James Hunt jamesodhunt@hotmail.com
|
||||
James james@albion.glarp.com
|
||||
James Lemley James.Lemley@acxiom.com
|
||||
James Ralston ralston@pobox.com
|
||||
James R. Van Zandt jrv@debian.org
|
||||
James Sneeringer jvs@ocslink.com
|
||||
James Tanis jtt@soscorp.com
|
||||
James Youngman jay@gnu.org
|
||||
Jamie Lokier jamie@imbolc.ucc.ie
|
||||
Jamie McClelland jm@mayfirst.org
|
||||
Jan Blunck jblunck@suse.de
|
||||
Jan Engelhardt jengelh@medozas.de
|
||||
Jan Fedak J.Fedak@sh.cvut.cz
|
||||
Jan Moringen jan.moringen@uni-bielefeld.de
|
||||
Jan Nieuwenhuizen janneke@gnu.org
|
||||
Janne Snabb snabb@epipe.com
|
||||
Janos Farkas chexum@shadow.banki.hu
|
||||
Jan-Pawel Wrozstinski jpwroz@gmail.com
|
||||
Jari Aalto jari.aalto@cante.net
|
||||
Jarkko Hietaniemi jhi@epsilon.hut.fi
|
||||
Jarkko Sakkinen jarkko.sakkinen@iki.fi
|
||||
Jarod Wilson jwilson@redhat.com
|
||||
Jarosław Gruca jgruca1981@gmail.com
|
||||
Jason Kim git@jasonk.me
|
||||
Jason Smith jasonmsmith@google.com
|
||||
Javier López chilicuil@ubuntu.com
|
||||
Jean Charles Delepine delepine@u-picardie.fr
|
||||
Jean Delvare jdelvare@suse.de
|
||||
Jean-Pierre Tosoni jpt.7196@gmail.com
|
||||
Jeff Layton jlayton@kernel.org
|
||||
Jeff Liu jeff.liu@oracle.com
|
||||
Jeff Moore jbm@mordor.com
|
||||
Jeff Sheinberg jeff@bsrd.net
|
||||
Jens Elkner elkner@imsgroup.de
|
||||
Jens Schmidt jms@jsds.hamburg.com
|
||||
Jeph Cowan jeph@ucar.edu
|
||||
Jeremy Maitin-Shepard jbms@cmu.edu
|
||||
Jérémy Compostella jeremy.compostella@gmail.com
|
||||
Jérémy Magrin jeremy.magrin@epitech.eu
|
||||
Jerome Abela abela@hsc.fr
|
||||
Jérôme Zago bug-coreutils-ml@agt-the-walker.net
|
||||
Jerry Snitselaar dev@snitselaar.org
|
||||
Jesse Kornblum kornblum@usna.edu
|
||||
Jesse Thilo jgt2@eecs.lehigh.edu
|
||||
Jie Xu xuj@iag.net
|
||||
Jim Blandy jimb@cyclic.com
|
||||
Jim Dennis jimd@starshine.org
|
||||
Jim Meyering jim@meyering.net
|
||||
Jirka Hladky jhladky@redhat.com
|
||||
Joachim Schmitz jojo@schmitz-digital.de
|
||||
Joakim Rosqvist dvljrt@cs.umu.se
|
||||
Jochen Hein jochen@jochen.org
|
||||
Joe Orton joe@manyfish.co.uk
|
||||
Joel E. Denny jdenny@clemson.edu
|
||||
Joerg Sonnenberger joerg@britannica.bec.de
|
||||
Joey Degges jdegges@gmail.com
|
||||
Joey Hess joeyh@debian.org
|
||||
Johan Boule bohan@bohan.dyndns.org
|
||||
Johan Danielsson joda@pdc.kth.se
|
||||
Johannes Altmanninger aclopte@gmail.com
|
||||
John Bley jbb6@acpub.duke.edu
|
||||
John da_audiophile@yahoo.com
|
||||
John David Anglin dave.anglin@nrc.ca
|
||||
John Gatewood Ham zappaman@alphabox.compsci.buu.ac.th
|
||||
John Gotts jgotts@umich.edu
|
||||
John Kendall kendall@capps.com
|
||||
John Kodis kodis@acm.org
|
||||
John Murphy jam@philabs.research.philips.com
|
||||
John Roll john@panic.harvard.edu
|
||||
John Salmon johns@mullet.anu.edu.au
|
||||
John Stanley johnstops@verizon.net
|
||||
John Summerfield summer@OS2.ami.com.au
|
||||
Jon Peatfield J.S.Peatfield@damtp.cam.ac.uk
|
||||
Jon Ringuette jonr@scharp.org
|
||||
Joost van Baal joostvb@xs4all.nl
|
||||
Jordi Pujol jordipujolp@gmail.com
|
||||
Jorge Stolfi stolfi@ic.unicamp.br
|
||||
Josef Cejka jcejka@suse.com
|
||||
Joseph D. Wagner joe@josephdwagner.info
|
||||
Joseph S. Myers jsm28@cam.ac.uk
|
||||
Josh Triplett josh@freedesktop.org
|
||||
Joshua Hudson joshudson@gmail.com
|
||||
Josselin Mouette joss@debian.org
|
||||
Juan F. Codagnone juam@arnet.com.ar
|
||||
Juan M. Guerrero st001906@hrz1.hrz.tu-darmstadt.de
|
||||
Julian Bradfield jcb@inf.ed.ac.uk
|
||||
Julian Büning julian.buening@rwth-aachen.de
|
||||
Jungshik Shin jshin@pantheon.yale.edu
|
||||
Juraj Marko jmarko@redhat.com
|
||||
Jürgen Fluk louis@dachau.marco.de
|
||||
Jurriaan thunder7@xs4all.nl
|
||||
Justin Pryzby justinpryzby@users.sourceforge.net
|
||||
Justin Tracey j2tracey@gmail.com
|
||||
jvogel jvogel@linkny.com
|
||||
Kai Henningsen kai@debian.org
|
||||
Kai-Uwe Rommel rommel@informatik.tu-muenchen.de
|
||||
Kalle Olavi Niemitalo kon@iki.fi
|
||||
Kamal Paul Nigam Kamal_Paul_Nigam@gs35.sp.cs.cmu.edu
|
||||
Kamil Dudka kdudka@redhat.com
|
||||
Karel Zak kzak@redhat.com
|
||||
Karl Berry karl@gnu.org
|
||||
Karl Eichwalder keichwa@gmx.net
|
||||
Karl Heuer kwzh@gnu.org
|
||||
Karl-Michael Schneider schneide@phil.uni-passau.de
|
||||
Karsten Thygesen karthy@kom.auc.dk
|
||||
Kaveh R. Ghazi ghazi@caip.rutgers.edu
|
||||
Kaxandra Labat kaxandra.labat@gmail.com
|
||||
Keith M. Briggs keith.briggs@bt.com
|
||||
Keith Owens kaos@audio.apana.org.au
|
||||
Keith Thompson Keith.S.Thompson@gmail.com
|
||||
Ken Booth ken@booths.org.uk
|
||||
Ken Irving ken.irving@alaska.edu
|
||||
Ken Pizzini kenp@halcyon.com
|
||||
Kevin Locke kevin@kevinlocke.name
|
||||
Kevin Lyda kevin@ie.suberic.net
|
||||
Kevin Mudrick kmudrick@healthmarketscience.com
|
||||
Kim Hansen kim@i9.dk
|
||||
Kirk Kelsey kirk.kelsey@0x4b.net
|
||||
Kjetil Torgrim Homme kjetilho@ifi.uio.no
|
||||
KO Myung-Hun komh@chollian.net
|
||||
KOBAYASHI Takashi a1415tk@aiit.ac.jp
|
||||
Konrad Wróblewski coni@o2.pl
|
||||
Kristin E Thomas kristint@us.ibm.com
|
||||
Kristoffer Brånemyr ztion1@yahoo.se
|
||||
Kristoffer Rose kris@diku.dk
|
||||
Krzysztof Goj krzysztof.goj@gmail.com
|
||||
Ladislav Hagara ladislav.hagara@unob.cz
|
||||
Larry McVoy lm@sgi.com
|
||||
Lars Hecking lhecking@nmrc.ucc.ie
|
||||
Lasse Collin lasse.collin@tukaani.org
|
||||
Leah Q eequor@earthlink.net
|
||||
Lehti Rami rammer@cs.tut.fi
|
||||
Leonard N. Zubkoff lnz@dandelion.com
|
||||
Leonardo Milano lmilano@udel.edu
|
||||
Lluís Batlle viriketo@gmail.com
|
||||
Lorne Baker lbaker@nitro.avint.net
|
||||
Ludovic Courtès ludo@gnu.org
|
||||
Luke Hassell lukehassell@yahoo.com
|
||||
Luke Kendall lukekendall@optushome.com.au
|
||||
Luther Thompson lutheroto@gmail.com
|
||||
M. P. Suzuki mpsuzuki@hiroshima-u.ac.jp
|
||||
Maciej Kwapulinski pikpok@univ.gda.pl
|
||||
Manas Garg manas@cygsoft.com
|
||||
Manfred Hollstein manfred@s-direktnet.de
|
||||
Manolis Ragkousis manolis837@gmail.com
|
||||
Marc Boucher marc@mbsi.ca
|
||||
Marc Haber mh+debian-bugs@zugschlus.de
|
||||
Marc Kleine-Budde mkl@pengutronix.de
|
||||
Marc Lehman schmorp@schmorp.de
|
||||
Marc Mengel mengel@fnal.gov
|
||||
Marc Olzheim marcolz@stack.nl
|
||||
Marcel Böhme https://www.comp.nus.edu.sg/~mboehme
|
||||
Marco Franzen Marco.Franzen@Thyron.com
|
||||
Marcus Brinkmann https://www.marcus-brinkmann.de
|
||||
Marcus Daniels marcus@ee.pdx.edu
|
||||
Marek Polacek mpolacek@redhat.com
|
||||
Mark A. Thomas thommark@access.digex.net
|
||||
Mark Conty Mark_Conty@cargill.com
|
||||
Mark D. Roth roth@uiuc.edu
|
||||
Mark Funkenhauser mfunkenhauser@rogers.com
|
||||
Mark Harris mark@monitor.designacc.com
|
||||
Mark Hewitt mhewitt@armature.com
|
||||
Mark Hounschell markh@compro.net
|
||||
Mark Hubbart discord@mac.com
|
||||
Mark Kettenis kettenis@phys.uva.nl
|
||||
Mark Korenberg socketpair@gmail.com
|
||||
Mark Melahn mmelahn@gmail.com
|
||||
Mark Nudelman marknu@flash.net
|
||||
Mark W. Eichin eichin@cygnus.com
|
||||
Markus Demleitner msdemlei@auriga.ari.uni-heidelberg.de
|
||||
Markus Duft mduft@gentoo.org
|
||||
Martial Bornet mbornet.pro@gmail.com
|
||||
Martin Buck martin.buck@ascom.ch
|
||||
Martin Bukatovic martin.bukatovic@gmail.com
|
||||
Martin Castillo castilma@uni-bremen.de
|
||||
Martin Gallant martyg@goodbit.net
|
||||
Martin Hippe martin.hippe@schlund.de
|
||||
Martin Jacobs martin.jacobs@arcor.de
|
||||
Martin martin@dresden.nacamar.de
|
||||
Martin Michlmayr tbm@cyrius.com
|
||||
Martin Mitchell martin@debian.org
|
||||
Martin P.J. Zinser zinser@decus.de
|
||||
Marty Leisner leisner@sdsp.mc.xerox.com
|
||||
Masami Takikawa takikawm@CS.ORST.EDU
|
||||
Mate Wierdl mw@moni.msci.memphis.edu
|
||||
Matej Vela mvela@public.srce.hr
|
||||
Matěj Cepl mcepl@redhat.com
|
||||
Mathias Brodala info@noctus.net
|
||||
Mathieu Bridon bochecha@fedoraproject.org
|
||||
Matias A. Fonzo selk@dragora.org
|
||||
Matt Harden matth@mindspring.com
|
||||
Matt Kraai kraai@ftbfs.org
|
||||
Matt McCutchen matt@mattmccutchen.net
|
||||
Matt Perry matt@primefactor.com
|
||||
Matt Pham mattvpham@gmail.com
|
||||
Matt Schalit mschalit@pacbell.net
|
||||
Matt Swift swift@alum.mit.edu
|
||||
Matthew Arnison maffew@cat.org.au
|
||||
Matthew Braun matthew@ans.net
|
||||
Matthew Clarke Matthew_Clarke@mindlink.bc.ca
|
||||
Matthew M. Boedicker matthewm@boedicker.org
|
||||
Matthew Pfeiffer spferical@gmail.com
|
||||
Matthew S. Levine mslevine@theory.lcs.mit.edu
|
||||
Matthew Smith matts@bluesguitar.org
|
||||
Matthew Swift swift@alum.mit.edu
|
||||
Matthew Woehlke mw_triad@users.sourceforge.net
|
||||
Matthias Urlichs smurf@noris.de
|
||||
Matti Aarnio matti.aarnio@zmailer.org
|
||||
Mattias Wadenstein maswan@acc.umu.se
|
||||
Max Chang maxchang@ucla.edu
|
||||
Maxime de Roucy maxime.deroucy@gmail.com
|
||||
Meelis Roos mroos@tartu.cyber.ee
|
||||
Micah Cowan micah@cowan.name
|
||||
Michael Bacarella mbac@netgraft.com
|
||||
Michael Deutschmann michael@talamasca.ocis.net
|
||||
Michael Elizabeth Chastain mec.gnu@mindspring.com
|
||||
Michael Gaughen mgaughen@polyserve.com
|
||||
Michael Hasselberg mikelh@zonta.ping.de
|
||||
Michael Heimpold mhei@heimpold.de
|
||||
Michael Hohn hohn@math.utah.edu
|
||||
Michael J. Croghan mcroghan@usatoday.com
|
||||
Michael J. Daniel michael.j.daniel@comcast.net
|
||||
Michael McFarland sidlon@yahoo.com
|
||||
Michael McLagan mmclagan@invlogic.com
|
||||
Michael Meskes michael@fam-meskes.de
|
||||
Michael michael@aplatform.com
|
||||
Michael ??? michael@roka.net
|
||||
Michael Mol mikemol@gmail.com
|
||||
Michael Orlitzky michael@orlitzky.com
|
||||
Michael Piefel piefel@informatik.hu-berlin.de
|
||||
Michael Price mprice@atl.lmco.com
|
||||
Michael Speer knomenet@gmail.com
|
||||
Michael Steffens michael.steffens@s.netic.de
|
||||
Michael Stone mstone@debian.org
|
||||
Michael Stummvoll michael@stummi.org
|
||||
Michael Stutz stutz@dsl.org
|
||||
Michael van Elst mlelstv@dev.de.cw.net
|
||||
Michael Veksler mveksler@techunix.technion.ac.il
|
||||
Michael Witten mfwitten@gmail.com
|
||||
Michail Litvak mci@owl.openwall.com
|
||||
Michal Nazarewicz mina86@mina86.com
|
||||
Michal Politowski mpol@charybda.icm.edu.pl
|
||||
Michal Svec msvec@suse.cz
|
||||
Michal Trunecka mtruneck@redhat.com
|
||||
Michel Robitaille robitail@IRO.UMontreal.CA
|
||||
Michiel Bacchiani bacchian@raven.bu.edu
|
||||
Mikael Magnusson mikachu@gmail.com
|
||||
Mike Castle dalgoda@ix.netcom.com
|
||||
Mike Coleman mkc@mathdogs.com
|
||||
Mike Frysinger vapier@gentoo.org
|
||||
Mike Jetzer mjetzer@mke.catalystwms.com
|
||||
Mike Swanson mikeonthecomputer@gmail.com
|
||||
Mikko Tuumanen m@sorvankyla.yok.utu.fi
|
||||
Mikulas Patocka mikulas@artax.karlin.mff.cuni.cz
|
||||
Miles Bader miles@gnu.ai.mit.edu
|
||||
Minh Tran-Le tranle@intellicorp.com
|
||||
Mitchel Humpherys mitch.special@gmail.com
|
||||
Moritz Orbach ml-coreutils@apfelboymchen.homeunix.net
|
||||
Morten Welinder terra@diku.dk
|
||||
Nadav Har'El nyh@math.technion.ac.il
|
||||
Namhyung Kim namhyung@gmail.com
|
||||
Nao Nishijima nao.nishijima.xt@hitachi.com
|
||||
Neal H Walfield neal@cs.uml.edu
|
||||
Neil F. Brown neilb@suse.de
|
||||
Nelson H. F. Beebe beebe@math.utah.edu
|
||||
Nguyễn Thái Ngọc Duy pclouds@gmail.com
|
||||
Nick Alcock nick.alcock@oracle.com
|
||||
Nick Estes debian@nickstoys.com
|
||||
Nick Graham nick.d.graham@gmail.com
|
||||
Nick Lawes nlawes@silverplatter.com
|
||||
Nickolai Zeldovich nickolai@cs.stanford.edu
|
||||
Nicolas François nicolas.francois@centraliens.net
|
||||
Nicolas Iooss nicolas.iooss@m4x.org
|
||||
Niels Möller nisse@lysator.liu.se
|
||||
Niklas Edmundsson nikke@acc.umu.se
|
||||
Nikola Milutinovic Nikola.Milutinovic@ev.co.yu
|
||||
Nikolas Kallis nik@nikolaskallis.com
|
||||
Nikolaus Rath Nikolaus@rath.org
|
||||
Nikolay Nechaev Nikolay_Nechaev@mail.ru
|
||||
Nikos Mavrogiannopoulos nmav@redhat.com
|
||||
Nima Nikzad nnikzad@ucla.edu
|
||||
Nishant Nayan nishant.nayan@oracle.com
|
||||
Nix nix@esperi.org.uk
|
||||
nl6720 nl6720@gmail.com
|
||||
Noah Friedman friedman@splode.com
|
||||
Noel Cragg noel@red-bean.com
|
||||
Norbert Kiesel nkiesel@tbdnetworks.com
|
||||
Norihiro Kamae norihiro@nagater.net
|
||||
Olatunji Oluwabukunmi Ruwase tjruwase@stanford.edu
|
||||
Olav Morkrid olav@funcom.com
|
||||
Ole Laursen olau@hardworking.dk
|
||||
Oliver Kiddle okiddle@yahoo.co.uk
|
||||
Olivier Fourdan ofourdan@redhat.com
|
||||
Ondrej Oprala ooprala@redhat.com
|
||||
Ondřej Vašík ovasik@redhat.com
|
||||
Ørn E. Hansen oehansen@daimi.aau.dk
|
||||
Oskar Liljeblad osk@hem.passagen.se
|
||||
Otavio Salvador otavio@ossystems.com.br
|
||||
Pádraig Brady pbrady@fb.com
|
||||
Pádraig Brady P@draigBrady.com
|
||||
Paolo Bonzini bonzini@gnu.org
|
||||
Patrick Mauritz oxygene@studentenbude.ath.cx
|
||||
Patrick Schoenfeld schoenfeld@debian.org
|
||||
Patrick W. Plusnick II pwplusnick2@gmail.com
|
||||
Paul D. Smith psmith@gnu.org
|
||||
Paul Eggert eggert@cs.ucla.edu
|
||||
Paul Ghaleb paul.ghaleb@st.com
|
||||
Paul Jarc prj@po.cwru.edu
|
||||
Paul Marinescu paul.marinescu@imperial.ac.uk
|
||||
Paul Nevai nevai@ops.mps.ohio-state.edu
|
||||
Paul Sauer paul@alexa.com
|
||||
Paul Slootman paul@debian.org
|
||||
Paul Townsend aab@purdue.edu
|
||||
Paul Worrall paul@basilisk.uklinux.net
|
||||
Pawel Prokop pablo@wizard.ae.krakow.pl
|
||||
Peng Yu pengyu.ut@gmail.com
|
||||
Per Cederqvist ceder@lysator.liu.se
|
||||
Per Kristian Hove perhov@math.ntnu.no
|
||||
Per Starbäck starback@stp.lingfil.uu.se
|
||||
Peter Benie pjb1008@cam.ac.uk
|
||||
Peter Bray pdb_ml@yahoo.com.au
|
||||
Peter Breitenlohner peb@mppmu.mpg.de
|
||||
Peter Dyballa peter_dyballa@web.de
|
||||
Peter Eriksson peter@ifm.liu.se
|
||||
Peter Evans peter@ixp.jp
|
||||
Peter Fales psfales@alcatel-lucent.com
|
||||
Peter Horst peter@ointment.org
|
||||
Peter Moulder reiter@netspace.net.au
|
||||
Peter O'Gorman bug-coreutils@mlists.thewrittenword.com
|
||||
Peter Samuelson psamuels@sampo.creighton.edu
|
||||
Peter Seebach seebs@taniemarie.solon.com
|
||||
Petr Pisar petr.pisar@atlas.cz
|
||||
Petr Salinger Petr.Salinger@seznam.cz
|
||||
Petr Stodůlka pstodulk@redhat.com
|
||||
Petr Uzel petr.uzel@suse.cz
|
||||
Petter Reinholdtsen pere@hungry.com
|
||||
Phelippe Neveu pneveu@pcigeomatics.com
|
||||
Phil Richards phil.richards@vf.vodafone.co.uk
|
||||
Philip Rowlands phr@doc.ic.ac.uk
|
||||
Philipp Gortan gortan@gmail.com
|
||||
Philipp Thomas pth@suse.de
|
||||
Philippe De Muyter phdm@macqel.be
|
||||
Philippe Schnoebelen Philippe.Schnoebelen@imag.fr
|
||||
Phillip Jones mouse@datastacks.com
|
||||
Piergiorgio Sartor sartor@sony.de
|
||||
Pieter Bowman bowman@math.utah.edu
|
||||
Piotr Gackiewicz gacek@intertele.pl
|
||||
Piotr Kwapulinski kwap@univ.gda.pl
|
||||
Pozsár Balázs pozsy@uhulinux.hu
|
||||
Prashant TR tr@eth.net
|
||||
Prateek saxena prateeksaxena2@gmail.com
|
||||
Priit Jõerüüt jemm4jemm@yahoo.com
|
||||
Primoz PETERLIN primozz.peterlin@gmail.com
|
||||
Raimonds Miltins raimonds@pro-9.com
|
||||
Rainer Orth ro@TechFak.Uni-Bielefeld.DE
|
||||
Ralf Wildenhues Ralf.Wildenhues@gmx.de
|
||||
Ralf W. Stephan stephan@tmt.de
|
||||
Ralph Loader loader@maths.ox.ac.uk
|
||||
Rasmus Borup Hansen rbh@intomics.com
|
||||
Rasmus Villemoes rv@rasmusvillemoes.dk
|
||||
Raul Miller moth@magenta.com
|
||||
Raúl Núñez de Arenas Coronado raul@pleyades.net
|
||||
Rémy Lefevre lefevreremy@gmail.com
|
||||
Reuben Thomas rrt@sc3d.org
|
||||
ribalba geerd.dietger.hoffmann@gmail.com
|
||||
Rich Burridge rich.burridge@oracle.com
|
||||
Richard A Downing richard.downing@bcs.org.uk
|
||||
Richard Braakman dark@xs4all.nl
|
||||
Richard Dawe rich@phekda.freeserve.co.uk
|
||||
Richard J. Rauenzahn rrauenza@hairball.cup.hp.com
|
||||
Richard Neill rn214@hermes.cam.ac.uk
|
||||
Richard Russon rich@flatcap.org
|
||||
Richard Sharman rsharman@magmacom.com
|
||||
Rick Sladkey jrs@world.std.com
|
||||
Rick Stanley rstanley@rsiny.com
|
||||
Rik Faith faith@cs.unc.edu
|
||||
Rishabh Dave rishabhddave@gmail.com
|
||||
Risto Kankkunen kankkune@lingsoft.fi
|
||||
Rob Day robertkday@gmail.com
|
||||
Rob Wortman wyrm@haell.com
|
||||
Robert H. de Vries robert@and.nl
|
||||
Robert Lindgren robert@orcafat.com
|
||||
Robert Millan zeratul2@wanadoo.es
|
||||
Robert Schwebel r.schwebel@pengutronix.de
|
||||
Robin H. Johnson robbat2@gentoo.org
|
||||
Rodrigo Campos rodrigo@sdfg.com.ar
|
||||
Rogier Wolff R.E.Wolff@BitWizard.nl
|
||||
Roland Hieber rohieb@rohieb.name
|
||||
Roland Huebner ro-huebner@gmx.de
|
||||
Roland Turner raz.tah.bet@raz.cx
|
||||
Roman Rybalko devel@romanr.info
|
||||
Ronald F. Guilmette rfg@netcom.com
|
||||
Ross Alexander r.alexander@auckland.ac.nz
|
||||
Ross Paterson rap@doc.ic.ac.uk
|
||||
Ross Ridge rridge@calum.csclub.uwaterloo.ca
|
||||
Rudolf Kastl rkastl@redhat.com
|
||||
Ruediger Meier sweet_f_a@gmx.de
|
||||
Sahil Amoli sahilamoli@gmail.com
|
||||
Sami Farin sfarin@ratol.fi
|
||||
Sami Kerola kerolasa@iki.fi
|
||||
Samuel Neves sneves@dei.uc.pt
|
||||
Samuel Tardieu sam@rfc1149.net
|
||||
Samuel Thibault samuel.thibault@ens-lyon.org
|
||||
Samuli Karkkainen Samuli.Karkkainen@hut.fi
|
||||
Sander van Malssen svm@kozmix.ow.nl
|
||||
Santiago Vila Doncel sanvila@unex.es
|
||||
Savochkin Andrey Vladimirovich saw@msu.ru
|
||||
Scott Harrison scott.gnu.2009@scottrix.co.uk
|
||||
Scott Lurndal slurn@griffin.engr.sgi.com
|
||||
Sebastian Kisela skisela@redhat.com
|
||||
Sébastien Maret smaret@umich.edu
|
||||
Sergei Steshenko sergstesh@yahoo.com
|
||||
Sergey Vlasov vsu@altlinux.org
|
||||
Sergio Durigan Junior sergiodj@sergiodj.net
|
||||
Shane M Seymour shane.seymour@hp.com
|
||||
Shayan Pooya shayan@liveve.org
|
||||
Shing-Shong Shei shei@cs.indiana.edu
|
||||
Shugo Maeda shugo@ruby-lang.org
|
||||
Simon Josefsson simon@josefsson.org
|
||||
Soeren Sonnenburg sonnenburg@informatik.hu-berlin.de
|
||||
Solar Designer solar@owl.openwall.com
|
||||
Stanislav Ievlev inger@altlinux.ru
|
||||
Stavros Passas stabat@ics.forth.gr
|
||||
Stefan Vargyas stvar@yahoo.com
|
||||
Stefano Lattarini stefano.lattarini@gmail.com
|
||||
Stephan Krempel krempel@par-tec.com
|
||||
Stephane Chazelas stephane.chazelas@gmail.com
|
||||
Stéphane Aulery saulery@free.fr
|
||||
Stéphane Campinas stephane.campinas@gmail.com
|
||||
Stéphane Chazelas Stephane_CHAZELAS@yahoo.fr
|
||||
Stéphane Raimbault stephane.raimbault@gmail.com
|
||||
Stephen Depooter sbdep@myrealbox.com
|
||||
Stephen Eglen eglen@pcg.wustl.edu
|
||||
Stephen Gildea gildea@stop.mail-abuse.org
|
||||
Stephen Shirley kormat@gmail.com
|
||||
Stephen Smoogen smooge@mindspring.com
|
||||
Steve McConnel steve@acadcomp.sil.org
|
||||
Steve McIntyre steve@einval.com
|
||||
Steve Ward planet36@gmail.com
|
||||
Steven Drake sbd@users.sourceforge.net
|
||||
Steven G. Johnson stevenj@alum.mit.edu
|
||||
Steven Mocking ufo@quicknet.nl
|
||||
Steven Parkes smparkes@smparkes.net
|
||||
Steven P Watson steven@magelico.net
|
||||
Steven Schubiger schubiger@gmail.com
|
||||
Steven Schveighoffer schveiguy@yahoo.com
|
||||
Stuart Citrin ctrn3e8@gmail.com
|
||||
Stuart Kemp skemp@peter.bmc.com
|
||||
Stuart Shelton stuart@shelton.me
|
||||
Sven Breuner sven.breuner@itwm.fraunhofer.de
|
||||
Sven Joachim svenjoac@gmx.de
|
||||
Szakacsits Szabolcs szaka@sienet.hu
|
||||
Tadayoshi Funaba tadf@kt.rim.or.jp
|
||||
TAKAI Kousuke takai@vlsi.kuee.kyoto-u.ac.jp
|
||||
The Wanderer inverseparadox@comcast.net
|
||||
Theodore Ts'o tytso@rsts-11.mit.edu
|
||||
Theodoros V. Kalamatianos thkala@softlab.ece.ntua.gr
|
||||
Thiago Farina tfransosi@gmail.com
|
||||
Thien-Thi Nguyen ttn@gnuvola.org
|
||||
Thomas Bushnell thomas@gnu.ai.mit.edu
|
||||
Thomas Deutschmann whissi@gentoo.org
|
||||
Thomas Goerlich thomas@schnappmatik.de
|
||||
Thomas Hood jdthood@yahoo.co.uk
|
||||
Thomas Jarosch thomas.jarosch@intra2net.com
|
||||
Thomas Luzat thomas@luzat.com
|
||||
Thomas M.Ott thmo-13@gmx.de
|
||||
Thomas Quinot thomas@Cuivre.FR.EU.ORG
|
||||
Thomas Schwinge tschwinge@gnu.org
|
||||
Thomas Wolff mined@towo.net
|
||||
Tianjia Zhang tianjia.zhang@linux.alibaba.com
|
||||
Tiger Lee i@tigerlee.me
|
||||
Tim Gates tim.gates@iress.com
|
||||
Tim J. Robbins tjr@FreeBSD.org
|
||||
Tim Mooney mooney@dogbert.cc.ndsu.NoDak.edu
|
||||
Tim Ryan Tim_Ryan@bnz.co.nz
|
||||
Tim Smithers mouse@dmouse.com.au
|
||||
Tim Underwood timunderwood@gmail.com
|
||||
Tim Waugh twaugh@redhat
|
||||
Tobias Quathamer toddy@debian.org
|
||||
Tobias Stoeckmann tobias@stoeckmann.org
|
||||
Toby Peterson toby@opendarwin.org
|
||||
Todd A. Jacobs tjacobs@codegnome.org
|
||||
Tom Fitzhenry tom@tom-fitzhenry.me.uk
|
||||
Tom Haynes thomas@netapp.com
|
||||
Tom Quinn trq@dionysos.thphys.ox.ac.uk
|
||||
Tomas Pospisek tpo@sourcepole.ch
|
||||
Tomas Smetana t.smetana@gmail.com
|
||||
Tommi Kyntola tkyntola@cc.hut.fi
|
||||
Ton Hospel thospel@mail.dma.be
|
||||
Ton Nijkes ton@murphy.nl
|
||||
Tony Kocurko akocurko@mun.ca
|
||||
Tony Leneis tony@plaza.ds.adp.com
|
||||
Tony Robinson ajr@eng.cam.ac.uk
|
||||
Toomas Soome Toomas.Soome@Elion.ee
|
||||
Toralf Förster toralf.foerster@gmx.de
|
||||
Torbjorn Lindgren tl@funcom.no
|
||||
Torbjörn Granlund tg@gmplib.org
|
||||
Torsten Landschoff torsten@pclab.ifg.uni-kiel.de
|
||||
Travis Gummels tgummels@redhat.com
|
||||
Tristan Miller psychonaut@nothingisreal.com
|
||||
Tzvi Rotshtein tzvi.ro@gmail.com
|
||||
Ulrich Drepper drepper@gnu.org
|
||||
Ulrich Hermisson ulrich_hermisson@hotmail.com
|
||||
Urs Thuermann urs@isnogud.escape.de
|
||||
Uwe H. Steinfeld usteinfeld@gmx.net
|
||||
Vesselin Atanasov vesselin@bgnet.bg
|
||||
Ville Skyttä ville.skytta@iki.fi
|
||||
Vin Shelton acs@alumni.princeton.edu
|
||||
Vincent Lefevre vincent@vinc17.net
|
||||
Vineet Chadha chadha@acis.ufl.edu
|
||||
Vitali Lovich vlovich@gmail.com
|
||||
Vitaly A. Ostanin vyt@altlinux.org
|
||||
Vito Caputo vcaputo@pengaru.com
|
||||
Vlada Macek tuttle@bbs.fsik.cvut.cz
|
||||
Volker Borchert bt@teknon.de
|
||||
Volker Paul vpaul@dohle.com
|
||||
Wartan Hachaturow wart@tepkom.ru
|
||||
Wayne Stewart wstewa@atl.com
|
||||
Wenjun Zheng zwj@yahoo.com
|
||||
Werner Almesberger Werner.Almesberger@epfl.ch
|
||||
Wichert Akkerman wichert@cistron.nl
|
||||
Wieland Hoffmann themineo@gmail.com
|
||||
Will Edgington wedgingt@acm.org
|
||||
William Bader william@nscs.fast.net
|
||||
William Dowling will@franklin.com
|
||||
William Lewis wiml@omnigroup.com
|
||||
William R. Fraser wfraser@codewise.org
|
||||
wiregauze wiregauze@yahoo.com
|
||||
Wis Macomson wis.macomson@intel.com
|
||||
Wodry coreutils3422@runbox.com
|
||||
Wojciech Purczynski cliph@isec.pl
|
||||
Wolfram Kleff kleff@cs.uni-bonn.de
|
||||
Won-kyu Park wkpark@chem.skku.ac.kr
|
||||
Xu Zhongxing xu_zhong_xing@163.com
|
||||
Yang Ren ryang@redhat.com
|
||||
Yanko Kaneti yaneti@declera.com
|
||||
Yann Dirson dirson@debian.org
|
||||
Yigal Korman yigal@plexistor.com
|
||||
Youngjun Song mastojun@gmail.com
|
||||
Yunlian Jiang yunlian@chromium.org
|
||||
Yurij Goncharuk lnkgyv@gmail.com
|
||||
Yury Usishchev y.usishchev@samsung.com
|
||||
Yutaka Amanai yasai-itame1942@jade.plala.or.jp
|
||||
Zartaj Majeed zmajeed@sbcglobal.net
|
||||
Zooko zookog@gmail.com
|
||||
Zorro Lang zlang@redhat.com
|
||||
Zvi Har'El rl@math.technion.ac.il
|
||||
|
||||
;; Local Variables:
|
||||
;; coding: utf-8
|
||||
;; End:
|
||||
159
OGP64/usr/share/doc/coreutils/TODO
Normal file
159
OGP64/usr/share/doc/coreutils/TODO
Normal file
|
|
@ -0,0 +1,159 @@
|
|||
If you're interested in helping, here are some tasks that we've considered
|
||||
over the years. Beware: some are quite old and no longer valid. To avoid
|
||||
wasting your time by duplicating work or by working on a task that is no
|
||||
longer pertinent, please search the mailing list and post your intent
|
||||
before embarking on a big project.
|
||||
|
||||
==================================================
|
||||
Modify chmod so that it does not change an inode's st_ctime
|
||||
when the selected operation would have no other effect.
|
||||
First suggested by Hans Ecke <https://hans.ecke.ws> in
|
||||
https://lists.gnu.org/r/bug-coreutils/2004-09/msg00145.html
|
||||
Discussed more recently on <https://bugs.debian.org/497514>.
|
||||
|
||||
document the following in coreutils.texi:
|
||||
[
|
||||
pinky
|
||||
|
||||
Suggestion from Paul Eggert:
|
||||
More generally, there's not that much use for imaxtostr nowadays,
|
||||
since the inttypes module and newer versions of gettext allow things
|
||||
like _("truncating %s at %" PRIdMAX " bytes") to work portably.
|
||||
I suspect that (if someone cares to take the time) we can remove
|
||||
all instances of imaxtostr and umaxtostr in coreutils and gnulib.
|
||||
|
||||
cp --recursive: use fts and *at functions to perform directory traversals
|
||||
in source and destination hierarchy rather than forming full file names.
|
||||
The latter (current) approach fails unnecessarily when the names
|
||||
become very long, and requires space and time that is quadratic in the
|
||||
depth of the hierarchy. [Bo Borgerson is working on this]
|
||||
|
||||
printf:
|
||||
Now that gnulib supports *printf("%a"), import one of the
|
||||
*printf-posix modules so that printf(1) will support %a even on
|
||||
platforms where the native *printf(3) is deficient.
|
||||
Suggestion from Eric Blake.
|
||||
|
||||
consider adding some implementation of the "col" utility
|
||||
Suggested by Karl Berry.
|
||||
|
||||
doc/coreutils.texi:
|
||||
Address this comment: FIXME: mv's behavior in this case is system-dependent
|
||||
Better still: fix the code so it's *not* system-dependent.
|
||||
|
||||
ls: add --format=FORMAT option that controls how each line is printed.
|
||||
|
||||
copy.c: Address the FIXME-maybe comment in copy_internal.
|
||||
And once that's done, add an exclusion so that 'cp --link'
|
||||
no longer incurs the overhead of saving src. dev/ino and dest. filename
|
||||
in the hash table.
|
||||
|
||||
Write an autoconf test to work around build failure in HPUX's 64-bit mode.
|
||||
See notes in README -- and remove them once there's a work-around.
|
||||
|
||||
Integrate use of sendfile, suggested here:
|
||||
https://lists.gnu.org/r/bug-fileutils/2003-03/msg00030.html
|
||||
I don't plan to do that, since a few tests demonstrate no significant benefit.
|
||||
|
||||
printf: consider adapting builtins/printf.def from bash
|
||||
|
||||
tail: don't use xlseek; it *exits*.
|
||||
Instead, maybe use a macro and return nonzero.
|
||||
|
||||
tr: support nontrivial equivalence classes, e.g. [=e=] with LC_COLLATE=fr_FR
|
||||
|
||||
lib/strftime.c: Since %N is the only format that we need but that
|
||||
glibc's strftime doesn't support, consider using a wrapper that
|
||||
would expand /%(-_)?\d*N/ to the desired string and then pass the
|
||||
resulting string to glibc's strftime.
|
||||
|
||||
sort: Investigate better sorting algorithms; see Knuth vol. 3.
|
||||
|
||||
We tried list merge sort, but it was about 50% slower than the
|
||||
recursive algorithm currently used by sortlines, and it used more
|
||||
comparisons. We're not sure why this was, as the theory suggests it
|
||||
should do fewer comparisons, so perhaps this should be revisited.
|
||||
List merge sort was implemented in the style of Knuth algorithm
|
||||
5.2.4L, with the optimization suggested by exercise 5.2.4-22. The
|
||||
test case was 140,213,394 bytes, 426,4424 lines, text taken from the
|
||||
GCC 3.3 distribution, sort.c compiled with GCC 2.95.4 and running on
|
||||
Debian 3.0r1 GNU/Linux, 2.4GHz Pentium 4, single pass with no
|
||||
temporary files and plenty of RAM.
|
||||
|
||||
Since comparisons seem to be the bottleneck, perhaps the best
|
||||
algorithm to try next should be merge insertion. See Knuth section
|
||||
5.3.1, who credits Lester Ford, Jr. and Selmer Johnson, American
|
||||
Mathematical Monthly 66 (1959), 387-389.
|
||||
|
||||
shred: Update shred as described here to conform to DoD 5220 rules:
|
||||
https://lists.gnu.org/r/bug-coreutils/2007-05/msg00075.html
|
||||
|
||||
Remove suspicious uses of alloca (ones that may allocate more than
|
||||
about 4k)
|
||||
|
||||
Improve test coverage.
|
||||
See HACKING for instructions on generating an html test coverage report.
|
||||
Find a program that has poor coverage and improve.
|
||||
|
||||
Changes expected to go in, someday.
|
||||
======================================
|
||||
|
||||
dd patch from Olivier Delhomme
|
||||
|
||||
test/mv/*: clean up $other_partition_tmpdir in all cases
|
||||
|
||||
ls: when both -l and --dereference-command-line-symlink-to-dir are
|
||||
specified, consider whether to let the latter select whether to
|
||||
dereference command line symlinks to directories. Since -l has
|
||||
an implicit --NO-dereference-command-line-symlink-to-dir meaning.
|
||||
Pointed out by Karl Berry.
|
||||
|
||||
Pending copyright papers:
|
||||
------------------------
|
||||
getpwnam from Bruce Korb
|
||||
|
||||
pb (progress bar) from Miika Pekkarinen
|
||||
|
||||
------------------------------
|
||||
|
||||
Remove long-deprecated options. Search case-insensitive for
|
||||
'deprecated' and 'remove in '. Automate this.
|
||||
|
||||
Add a distcheck-time test to ensure that every distributed
|
||||
file is either read-only(indicating generated) or is
|
||||
version-controlled and up to date.
|
||||
|
||||
remove all uses of the 'register' keyword: Done. add a maint.mk rule
|
||||
for this, too.
|
||||
|
||||
remove or adjust chown's --changes option, since it
|
||||
can't always do what it currently says it does.
|
||||
|
||||
Support arbitrary-precision arithmetic in those tools for which it
|
||||
makes sense. Factor and expr already support this via libgmp.
|
||||
The "test" program is covered via its string-based comparison of
|
||||
integers. To be converted: seq.
|
||||
|
||||
Adapt tools like wc, tr, fmt, etc. (most of the textutils) to be
|
||||
multibyte aware. The problem is that I want to avoid duplicating
|
||||
significant blocks of logic, yet I also want to incur only minimal
|
||||
(preferably 'no') cost when operating in single-byte mode.
|
||||
|
||||
pr's use of nstrftime can make it malloc a very large (up to SIZE_MAX) buffer
|
||||
|
||||
-----
|
||||
|
||||
Copyright (C) 2002-2021 Free Software Foundation, Inc.
|
||||
|
||||
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 3 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, see <https://www.gnu.org/licenses/>.
|
||||
163
OGP64/usr/share/doc/crypt/COPYRIGHT
Normal file
163
OGP64/usr/share/doc/crypt/COPYRIGHT
Normal file
|
|
@ -0,0 +1,163 @@
|
|||
musl as a whole is licensed under the following standard MIT license:
|
||||
|
||||
----------------------------------------------------------------------
|
||||
Copyright © 2005-2014 Rich Felker, et al.
|
||||
|
||||
Permission is hereby granted, free of charge, to any person obtaining
|
||||
a copy of this software and associated documentation files (the
|
||||
"Software"), to deal in the Software without restriction, including
|
||||
without limitation the rights to use, copy, modify, merge, publish,
|
||||
distribute, sublicense, and/or sell copies of the Software, and to
|
||||
permit persons to whom the Software is furnished to do so, subject to
|
||||
the following conditions:
|
||||
|
||||
The above copyright notice and this permission notice shall be
|
||||
included in all copies or substantial portions of the Software.
|
||||
|
||||
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
|
||||
EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
|
||||
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
|
||||
IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY
|
||||
CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
|
||||
TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
|
||||
SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
||||
----------------------------------------------------------------------
|
||||
|
||||
Authors/contributors include:
|
||||
|
||||
Alex Dowad
|
||||
Alexander Monakov
|
||||
Anthony G. Basile
|
||||
Arvid Picciani
|
||||
Bobby Bingham
|
||||
Boris Brezillon
|
||||
Brent Cook
|
||||
Chris Spiegel
|
||||
Clément Vasseur
|
||||
Daniel Micay
|
||||
Denys Vlasenko
|
||||
Emil Renner Berthing
|
||||
Felix Fietkau
|
||||
Felix Janda
|
||||
Gianluca Anzolin
|
||||
Hauke Mehrtens
|
||||
Hiltjo Posthuma
|
||||
Isaac Dunham
|
||||
Jaydeep Patil
|
||||
Jens Gustedt
|
||||
Jeremy Huntwork
|
||||
Jo-Philipp Wich
|
||||
Joakim Sindholt
|
||||
John Spencer
|
||||
Josiah Worcester
|
||||
Justin Cormack
|
||||
Khem Raj
|
||||
Kylie McClain
|
||||
Luca Barbato
|
||||
Luka Perkov
|
||||
M Farkas-Dyck (Strake)
|
||||
Mahesh Bodapati
|
||||
Michael Forney
|
||||
Natanael Copa
|
||||
Nicholas J. Kain
|
||||
orc
|
||||
Pascal Cuoq
|
||||
Petr Hosek
|
||||
Pierre Carrier
|
||||
Rich Felker
|
||||
Richard Pennington
|
||||
Shiz
|
||||
sin
|
||||
Solar Designer
|
||||
Stefan Kristiansson
|
||||
Szabolcs Nagy
|
||||
Timo Teräs
|
||||
Trutz Behn
|
||||
Valentin Ochs
|
||||
William Haddon
|
||||
|
||||
Portions of this software are derived from third-party works licensed
|
||||
under terms compatible with the above MIT license:
|
||||
|
||||
The TRE regular expression implementation (src/regex/reg* and
|
||||
src/regex/tre*) is Copyright © 2001-2008 Ville Laurikari and licensed
|
||||
under a 2-clause BSD license (license text in the source files). The
|
||||
included version has been heavily modified by Rich Felker in 2012, in
|
||||
the interests of size, simplicity, and namespace cleanliness.
|
||||
|
||||
Much of the math library code (src/math/* and src/complex/*) is
|
||||
Copyright © 1993,2004 Sun Microsystems or
|
||||
Copyright © 2003-2011 David Schultz or
|
||||
Copyright © 2003-2009 Steven G. Kargl or
|
||||
Copyright © 2003-2009 Bruce D. Evans or
|
||||
Copyright © 2008 Stephen L. Moshier
|
||||
and labelled as such in comments in the individual source files. All
|
||||
have been licensed under extremely permissive terms.
|
||||
|
||||
The ARM memcpy code (src/string/arm/memcpy_el.S) is Copyright © 2008
|
||||
The Android Open Source Project and is licensed under a two-clause BSD
|
||||
license. It was taken from Bionic libc, used on Android.
|
||||
|
||||
The implementation of DES for crypt (src/crypt/crypt_des.c) is
|
||||
Copyright © 1994 David Burren. It is licensed under a BSD license.
|
||||
|
||||
The implementation of blowfish crypt (src/crypt/crypt_blowfish.c) was
|
||||
originally written by Solar Designer and placed into the public
|
||||
domain. The code also comes with a fallback permissive license for use
|
||||
in jurisdictions that may not recognize the public domain.
|
||||
|
||||
The smoothsort implementation (src/stdlib/qsort.c) is Copyright © 2011
|
||||
Valentin Ochs and is licensed under an MIT-style license.
|
||||
|
||||
The BSD PRNG implementation (src/prng/random.c) and XSI search API
|
||||
(src/search/*.c) functions are Copyright © 2011 Szabolcs Nagy and
|
||||
licensed under following terms: "Permission to use, copy, modify,
|
||||
and/or distribute this code for any purpose with or without fee is
|
||||
hereby granted. There is no warranty."
|
||||
|
||||
The x86_64 port was written by Nicholas J. Kain and is licensed under
|
||||
the standard MIT terms.
|
||||
|
||||
The mips and microblaze ports were originally written by Richard
|
||||
Pennington for use in the ellcc project. The original code was adapted
|
||||
by Rich Felker for build system and code conventions during upstream
|
||||
integration. It is licensed under the standard MIT terms.
|
||||
|
||||
The mips64 port was contributed by Imagination Technologies and is
|
||||
licensed under the standard MIT terms.
|
||||
|
||||
The powerpc port was also originally written by Richard Pennington,
|
||||
and later supplemented and integrated by John Spencer. It is licensed
|
||||
under the standard MIT terms.
|
||||
|
||||
All other files which have no copyright comments are original works
|
||||
produced specifically for use as part of this library, written either
|
||||
by Rich Felker, the main author of the library, or by one or more
|
||||
contibutors listed above. Details on authorship of individual files
|
||||
can be found in the git version control history of the project. The
|
||||
omission of copyright and license comments in each file is in the
|
||||
interest of source tree size.
|
||||
|
||||
In addition, permission is hereby granted for all public header files
|
||||
(include/* and arch/*/bits/*) and crt files intended to be linked into
|
||||
applications (crt/*, ldso/dlstart.c, and arch/*/crt_arch.h) to omit
|
||||
the copyright notice and permission notice otherwise required by the
|
||||
license, and to use these files without any requirement of
|
||||
attribution. These files include substantial contributions from:
|
||||
|
||||
Bobby Bingham
|
||||
John Spencer
|
||||
Nicholas J. Kain
|
||||
Rich Felker
|
||||
Richard Pennington
|
||||
Stefan Kristiansson
|
||||
Szabolcs Nagy
|
||||
|
||||
all of whom have explicitly granted such permission.
|
||||
|
||||
This file previously contained text expressing a belief that most of
|
||||
the files covered by the above exception were sufficiently trivial not
|
||||
to be subject to copyright, resulting in confusion over whether it
|
||||
negated the permissions granted in the license. In the spirit of
|
||||
permissive licensing, and of not having licensing issues being an
|
||||
obstacle to adoption, that text has been removed.
|
||||
20
OGP64/usr/share/doc/crypt/crypt.README
Normal file
20
OGP64/usr/share/doc/crypt/crypt.README
Normal file
|
|
@ -0,0 +1,20 @@
|
|||
This is the crypt package Version 2.1
|
||||
|
||||
It provides a static library libcrypt.a as well as a shared library
|
||||
cygcrypt-0.dll together with a link lib libcrypt.dll.a, which export
|
||||
the functions
|
||||
|
||||
crypt(3)
|
||||
crypt_r(3)
|
||||
encrypt(3)
|
||||
setkey(3)
|
||||
|
||||
The passwords created by crypt(3) are 100% identical to those created by
|
||||
the Linux crypt(). DES, MD5, Blowfish, SHA-256, and SHA-512 algorithms are
|
||||
supported.
|
||||
|
||||
Please send requests, error reports etc. to the mailing list
|
||||
cygwin@cygwin.com.
|
||||
|
||||
Have fun,
|
||||
Corinna Vinschen
|
||||
7
OGP64/usr/share/doc/crypto-policies/NEWS
Normal file
7
OGP64/usr/share/doc/crypto-policies/NEWS
Normal file
|
|
@ -0,0 +1,7 @@
|
|||
* Fedora 28:
|
||||
- Added Ed25519, and Ed448 signature algorithms
|
||||
- Added RSA-PSS signatures algorithms with SHA1 and SHA2
|
||||
- Added notion of groups (i.e., including FFDHE), replacing
|
||||
the notion of curves.
|
||||
- gnutls: updated for new signature algorithms and groups
|
||||
|
||||
58
OGP64/usr/share/doc/crypto-policies/README.md
Normal file
58
OGP64/usr/share/doc/crypto-policies/README.md
Normal file
|
|
@ -0,0 +1,58 @@
|
|||
This repository contains the crypto-policies data and scripts used in
|
||||
Fedora.
|
||||
|
||||
|Release|Status|
|
||||
|:-----:|:----:|
|
||||
|master|[](https://gitlab.com/redhat-sectech/fedora-crypto-policies/commits/master)|
|
||||
|F26|[](https://gitlab.com/redhat-sectech/fedora-crypto-policies/commits/fedora26)|
|
||||
|F27|[](https://gitlab.com/redhat-sectech/fedora-crypto-policies/commits/fedora27)|
|
||||
|F28|[](https://gitlab.com/redhat-sectech/fedora-crypto-policies/commits/fedora28)|
|
||||
|
||||
# Purpose
|
||||
|
||||
The purpose is to unify the crypto policies used by different applications
|
||||
and libraries. That is allow setting a consistent security level for crypto
|
||||
on all applications in a Fedora system, irrespective of the crypto library
|
||||
in use.
|
||||
|
||||
# Description
|
||||
|
||||
The idea is to have few predefined security policies such as LEGACY, DEFAULT
|
||||
and FUTURE which are set system-wide by the administrator. Then applications
|
||||
that have no special needs will follow these policies by default. That
|
||||
way the management of the various crypto applications and libraries used in a
|
||||
system simplifies significantly.
|
||||
|
||||
The current implementations works by setting the desired policy in
|
||||
/etc/crypto-policies/config. After this file is changed the script
|
||||
'update-crypto-policies' should be executed, and the new policies
|
||||
will activate.
|
||||
|
||||
The supported back ends in Fedora are:
|
||||
* GnuTLS
|
||||
* OpenSSL
|
||||
* NSS
|
||||
* BIND
|
||||
* libkrb5
|
||||
* OpenSSH
|
||||
* Java via OpenJDK
|
||||
|
||||
The documentation of crypto policies is at [update-crypto-policies.8.txt](update-crypto-policies.8.txt).
|
||||
|
||||
# Generating the policies
|
||||
|
||||
The policies are described in PERL at `back-ends/profiles/POLICYFILE.pl`,
|
||||
and they operate on strings defined in `back-ends/profiles/common.pm`.
|
||||
Individual application configuration generators are present in `back-ends/`.
|
||||
|
||||
To generate the policies per application use the script `./generate-policies.pl
|
||||
DESTDIR` or `make install`.
|
||||
|
||||
For testing purpose the generated policies per application with the current
|
||||
config are placed in `tests/outputs` and `make check` will verify whether the
|
||||
generated policies match the stored. To reset the outputs use `make
|
||||
reset-outputs` and `make check` to regenerate them.
|
||||
|
||||
# Contributing
|
||||
|
||||
See [our contribution guide](CONTRIBUTING.md).
|
||||
12
OGP64/usr/share/doc/csih/AUTHORS
Normal file
12
OGP64/usr/share/doc/csih/AUTHORS
Normal file
|
|
@ -0,0 +1,12 @@
|
|||
Charles Wilson
|
||||
|
||||
Contributors:
|
||||
Corinna Vinschen
|
||||
Julio Costa
|
||||
Herb Maeder
|
||||
|
||||
Original sources:
|
||||
Corinna Vinschen (ssh-host-config)
|
||||
Pierre Humblet (cron-config, exim-config)
|
||||
Mark Harig (cron-config: cron_diagnose)
|
||||
|
||||
26
OGP64/usr/share/doc/csih/COPYING
Normal file
26
OGP64/usr/share/doc/csih/COPYING
Normal file
|
|
@ -0,0 +1,26 @@
|
|||
The files included in this distribution are available
|
||||
under a number of different licenses.
|
||||
|
||||
native/getopt[1][.c|.h] : LGPL 2.1
|
||||
native/Win32Error.h : equivalent to MIT/X or BSD-2-clause
|
||||
native/getAccountName.cpp : MIT/X
|
||||
native/winProductName.c : MIT/X
|
||||
native/lookupAccountName[.h|.cpp] : MIT/X
|
||||
cygwin/getvolinfo.c : MIT/X
|
||||
|
||||
cygwin-service-installation-helper.sh : MIT/X
|
||||
portions derived from ---
|
||||
ssh-host-config (2008-02-25): BSD
|
||||
permission granted for distribing the portions of csih.sh
|
||||
derived from this script under MIT/X
|
||||
Corinna Vinschen 2008Apr08
|
||||
http://cygwin.com/ml/cygwin/2008-04/msg00228.html
|
||||
exim-config (2008-03-02) : not specified
|
||||
permission granted for distribing the portions of csih.sh
|
||||
derived from this script under MIT/X
|
||||
Pierre Humblett 2008Apr07 (private email)
|
||||
cron-config (2008-03-02) : not specified
|
||||
permission granted for distribing the portions of csih.sh
|
||||
derived from this script under MIT/X
|
||||
Pierre Humblett 2008Apr07 (private email)
|
||||
|
||||
504
OGP64/usr/share/doc/csih/COPYING.LGPLv2.1
Normal file
504
OGP64/usr/share/doc/csih/COPYING.LGPLv2.1
Normal file
|
|
@ -0,0 +1,504 @@
|
|||
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.
|
||||
|
||||
<one line to give the library's name and a brief idea of what it does.>
|
||||
Copyright (C) <year> <name of author>
|
||||
|
||||
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.
|
||||
|
||||
<signature of Ty Coon>, 1 April 1990
|
||||
Ty Coon, President of Vice
|
||||
|
||||
That's all there is to it!
|
||||
|
||||
|
||||
660
OGP64/usr/share/doc/csih/ChangeLog
Normal file
660
OGP64/usr/share/doc/csih/ChangeLog
Normal file
|
|
@ -0,0 +1,660 @@
|
|||
===============================================================================
|
||||
==== ====
|
||||
==== This file is deprecated ====
|
||||
==== ====
|
||||
===============================================================================
|
||||
|
||||
2015-08-30 Corinna Vinschen <vinschen@redhat.com>
|
||||
|
||||
* cygwin-service-installation-helper.sh: Throughout replace *server1014
|
||||
with *server1016.
|
||||
* native/winProductName.c (products): Add missing values since W10.
|
||||
(GetOSDisplayString): Rename Server 2014 to Server 2016.
|
||||
|
||||
2015-04-02 Achim Gratz <Stromeko@NexGo.DE>
|
||||
|
||||
* cygwin-service-installation-helper.sh
|
||||
(csih_create_privileged_user): Also add
|
||||
SeDenyInteractiveLogonRight to the service user. otherwise it will
|
||||
be shown on the logon screen in some versions of Windows.
|
||||
|
||||
2015-02-23 Achim Gratz <Stromeko@NexGo.DE>
|
||||
|
||||
* cygwin-service-installation-helper.sh (csih_use_file_etc):
|
||||
Correct the return value in the case that /etc/nsswitch.conf
|
||||
exists, but has no active line for that file. The default
|
||||
contains db, so use_file=1 must be maintained. Add a comment for
|
||||
that case.
|
||||
|
||||
2015-02-20 Achim Gratz <Stromeko@NexGo.DE>
|
||||
|
||||
* cygwin-service-installation-helper.sh
|
||||
(csih_get_system_and_admins_ids): Remove reference to
|
||||
/etc/{passwd/group} files.
|
||||
(csih_check_passwd_and_group): Branch code based on the result of
|
||||
csih_old_cygwin. Correct comment about the version that change
|
||||
happened in Cygwin.
|
||||
(csih_old_cygwin): Factor out check for Cygwin version that do not
|
||||
have DB-based user/group lookup. Correct version that code
|
||||
actually went into Cygwin.
|
||||
(csih_use_file_etc): Use csih_old_cygwin. Correct the check for
|
||||
nsswitch.conf content so that it confroms to the intended and
|
||||
commented behaviour.
|
||||
* cygwin-service-installation-helper.sh: Whitespace cleanup (only
|
||||
trailing spaces, consider tabification). Register new function
|
||||
"csih_old_cygwin".
|
||||
|
||||
2015-01-08 Henri ??? <houder@xs4all.nl>
|
||||
|
||||
* cygwin-service-installation-helper.sh (csih_use_file_etc): Fix regular
|
||||
expression to catch commented out "db" entry correctly.
|
||||
|
||||
2015-01-07 Corinna Vinschen <vinschen@redhat.com>
|
||||
|
||||
* version.h (VERSION_MICRO): Revert version bump.
|
||||
|
||||
2015-01-07 Corinna Vinschen <vinschen@redhat.com>
|
||||
|
||||
* cygwin-service-installation-helper.sh (csih_privileged_accounts):
|
||||
Fix copy/paste bug.
|
||||
(csih_create_privileged_user): Evaluate local Windows administrators
|
||||
group name instead of relying on Cygwin group name. Fix error message.
|
||||
* version.h (VERSION_MICRO): Bump to 9.
|
||||
|
||||
2014-12-11 Christian Franke <Christian.Franke@t-online.de>
|
||||
|
||||
* cygwin-service-installation-helper.sh (csih_create_local_group): Fix
|
||||
typo.
|
||||
|
||||
2014-12-10 Corinna Vinschen <vinschen@redhat.com>
|
||||
|
||||
* native/Makefile: More changes to allow cross-building (barely).
|
||||
|
||||
2014-12-10 Corinna Vinschen <vinschen@redhat.com>
|
||||
|
||||
* version.h (VERSION_MICRO): Bump to 8.
|
||||
* native/Makefile (LIBS): Drop default-manifest file.
|
||||
* native/Win32Error.h: Downcase header filenames to enable cross
|
||||
compiling.
|
||||
* native/getAccountName.cpp: Drop useless tchar.h include.
|
||||
|
||||
2014-12-10 Corinna Vinschen <vinschen@redhat.com>
|
||||
|
||||
* Makefile: Remove stray trailing backslash.
|
||||
* winProductName.c (GetOSDisplayString): Always call GetNativeSystemInfo
|
||||
since we're only supporting XP and later anyway. Drop checks for
|
||||
older OS-versions. Rearrange Major/Minor OS number check to accommodate
|
||||
the menacing OS version 10.x for Windows 10.
|
||||
|
||||
2014-11-24 Corinna Vinschen <vinschen@redhat.com>
|
||||
|
||||
* cygwin-service-installation-helper.sh: Drop global checks for NT and
|
||||
Cygwin version 1.7.
|
||||
(csih_VERSION): Bump to 0.9.8.
|
||||
(csih_PRIVILEGED_USERWINNAME): New global variable.
|
||||
(csih_PRIVILEGED_USERDOMAIN): Ditto.
|
||||
(csih_UNPRIVILEGED_USERNAME): Ditto.
|
||||
(csih_UNPRIVILEGED_USERWINNAME): Ditto.
|
||||
(csih_UNPRIVILEGED_USERDOMAIN): Ditto.
|
||||
(csih_LOCAL_GROUPNAME): Ditto.
|
||||
(csih_LOCAL_GROUPWINNAME): Ditto.
|
||||
(csih_LOCAL_GROUPDOMAIN): Ditto.
|
||||
(_csih_well_known_privileged_accounts): Add machinename-prefixed names.
|
||||
(_csih_well_known_privileged_accounts_quoted): Ditto.
|
||||
(_csih_sanity_check): Check for getent.
|
||||
(_csih_nt): Remove.
|
||||
(_csih_2k): Remove.
|
||||
(_csih_windows8_1): Add.
|
||||
(_csih_windows10): Add.
|
||||
(_csih_exactly_windows8_1): Add.
|
||||
(_csih_exactly_windows10): Add.
|
||||
(csih_is_nt): Always return 0.
|
||||
(csih_is_2k): Ditto.
|
||||
(csih_is_xp): Ditto.
|
||||
(csih_is_windows8_1): New function.
|
||||
(csih_is_windows10): Ditto.
|
||||
(csih_cygver_is_oneseven): Always return 0.
|
||||
(csih_is_exactly_windows8_1): New function.
|
||||
(csih_is_exactly_server2012r2): Ditto.
|
||||
(csih_is_exactly_windows10): Ditto.
|
||||
(csih_is_exactly_server2014): Ditto.
|
||||
(csih_check_sys_mount): Always return 0.
|
||||
(csih_use_file_etc): New function to check for /etc/passwd or
|
||||
/etc/group requirement.
|
||||
(csih_get_system_and_admins_ids): Don't require /etc/passwd or
|
||||
/etc/group. Allow new Cygwin usernames generated from Windows account
|
||||
DBs.
|
||||
(csih_check_passwd_and_group): Ditto.
|
||||
(csih_check_user): Ditto.
|
||||
(csih_privileged_accounts): Ditto.
|
||||
(csih_account_has_necessary_privileges): Ditto.
|
||||
(csih_select_privileged_username): Ditto.
|
||||
(csih_create_privileged_user): Ditto.
|
||||
(csih_create_unprivileged_user): Ditto.
|
||||
(csih_service_should_run_as): Ditto.
|
||||
(csih_create_local_group): New function.
|
||||
(_csih_late_initialization_code): Set new OS variables.
|
||||
|
||||
2014-11-10 Corinna Vinschen <vinschen@redhat.com>
|
||||
|
||||
* native/Makefile (LIBS): Add default-manifest file.
|
||||
(NTDLL): Define.
|
||||
(getAccountName): Add $(CFLAGS). Fix usage of $(LIBS) for
|
||||
PE/COFF platform.
|
||||
(winProductName): Ditto. Add $(NTDLL).
|
||||
* native/winProductName.c: Re-indent for better readability. Remove
|
||||
not working tchar.h overhead.
|
||||
(products): Drop "note"-type comments.
|
||||
(RtlGetVersion): Declare.
|
||||
(RtlGetProductInfo): Declare.
|
||||
(GetOSDisplayString): Use RtlGetVersion and RtlGetProductInfo. Explain
|
||||
why. Use switch statements rather than if/else if chains where
|
||||
applicable. Add support for Windows 8.1, Server 2012 R2, Windows 10 and
|
||||
Server 2014(?). Drop support for Windows versions prior to Windows XP.
|
||||
|
||||
2013-04-09 Charles Wilson <...>
|
||||
|
||||
0.9.7 release
|
||||
* cygwin/Makefile: Adapt for 64bit cross-compiling.
|
||||
* cygwin/getVolInfo.c: Avoid ddk headers and internal functions.
|
||||
* native/Makefile: Modify to support building with mingw64 toolchains.
|
||||
Auto-detect platform and choose wisely when not cross-compiling;
|
||||
otherwise rely on caller to set NATIVECC and NATIVECXX.
|
||||
* native/lookupAccountName.h: Don't redeclare WELL_KNOWN_SID_TYPE
|
||||
when win32api headers already do so. However, add new values to
|
||||
declaration if you do need to declare it.
|
||||
* native/lookupAccountName.h: Don't redeclare CreateWellKnownSid
|
||||
when w32api headers already do so.
|
||||
* native/getAccountName.cpp: Use hardcoded value to represent maximum
|
||||
WELL_KNOWN_SID_TYPE enumeration value, since the various w32api
|
||||
versions are all different.
|
||||
* native/winProductName.c: Add new macro values and strings for
|
||||
GetProductInfo dwType.
|
||||
(GetOSDisplayString): Use proper name for Windows Server 2012. Adapt
|
||||
to newly added values for GetProductInfo dwType.
|
||||
* cygwin-service-installation-helper.sh: Bump version number.
|
||||
(csih_cygwin_is_64bit): New function.
|
||||
(csih_is_exactly_windows8server): Rename to
|
||||
(csih_is_exactly_server2012): this.
|
||||
(_csih_late_initialization_code): Adapt to changes in winProductName.
|
||||
* version.h: Bump version.
|
||||
* NEWS: Document changes.
|
||||
|
||||
2012-03-26 Charles Wilson <...>
|
||||
|
||||
0.9.6 release
|
||||
* native/Makefile: Use static language runtime libraries.
|
||||
* cygwin/Makefile: Use static language runtime libraries.
|
||||
* cygwin-service-installation-helper.sh: Bump version.
|
||||
* version.h: Bump version.
|
||||
* NEWS: Document changes.
|
||||
|
||||
2012-02-09 Charles Wilson <...>
|
||||
|
||||
0.9.5 release.
|
||||
* native/Makefile: Avoid -mno-cygwin.
|
||||
* native/winProductName.c (GetOSDisplayString): Support
|
||||
Windows 8 and Windows Server 8. Improve support for various
|
||||
Microsoft OS products.
|
||||
* version.h: Bump version.
|
||||
* csih.sh: Bump version.
|
||||
(csih_is_windows8): New function.
|
||||
(csih_is_exactly_windows8): New function.
|
||||
(csih_is_exactly_windows8server): New function.
|
||||
(csih_account_has_necessary_privileges): Don't attempt to
|
||||
validate membership in Administrators group -- the test doesn't
|
||||
work properly on domains anyway. Just try to set the necessary
|
||||
rights and report error if the operation fails.
|
||||
(csih_create_privileged_user): Don't attempt to check whether
|
||||
/usr/bin/passwd has the -e option; all versions of passwd shipped
|
||||
with cygwin-1.7.x support it.
|
||||
(_csih_late_initialization_code): Fix bug related to the various
|
||||
existing csih_is_exactly_* functions. Support new Windows 8 related
|
||||
ones.
|
||||
|
||||
2011-02-13 Charles Wilson <...>
|
||||
|
||||
0.9.4 release
|
||||
* csih.sh: Bump version number.
|
||||
* version.h: ditto.
|
||||
|
||||
2011-02-12 Charles Wilson <...>
|
||||
|
||||
Add support for tmpfiles; remove obsolete code.
|
||||
* NEWS: Update documentation.
|
||||
* csih.sh: (csih_check_basic_mounts): Deprecate; replace with
|
||||
stub that issues warning message.
|
||||
(csih_writable_tmpdir): New function.
|
||||
(csih_mktemp): New function.
|
||||
(_csih_sanity_check): Check also chown, mktemp, mv.
|
||||
(_csih_warning_for_missing_ACL_support): Remove accomodations
|
||||
for cygwin-1.5.
|
||||
(_csih_setup): Don't call csih_check_basic_mounts.
|
||||
(csih_create_privileged_user): Use csih_mktemp instead of $$
|
||||
for temporary files. Take more care to preserve ownership,
|
||||
permissions, and ACLs when replacing /etc/passwd.
|
||||
|
||||
2011-02-11 Corinna Vinschen <...>
|
||||
Charles Wilson <...>
|
||||
|
||||
Verify external tools before using; invoke via full paths.
|
||||
* NEWS: Update documentation.
|
||||
* csih.sh: Massive reorganization to ensure that external
|
||||
applications are verified before using them to initialize
|
||||
variables. Initialization now has four distinct phases --
|
||||
First, the easy stuff. Then, stuff that requires external
|
||||
apps (e.g. coreutils) -- and the sanity check is performed
|
||||
during the phase. Third, stuff that requires the utilities
|
||||
shipped in this package, and csih_invoke_helper(). These
|
||||
three phases now occur which csih is sourced. The final
|
||||
phase is peformed by _csih_setup() which is called by public
|
||||
API functions when THEY are invoked by the client. Throughout,
|
||||
invoke external tools via full path to avoid conflicts in the
|
||||
presence of unexpected $PATH contents. Invoke net.exe via
|
||||
new csih_call_winsys32() function throughout.
|
||||
(csih_sanity_check): Deprecated (issues warning), replaced by...
|
||||
(_csih_sanity_check): New function. Issue warning message here,
|
||||
rather than in _csih_setup (reword and expand message to apply
|
||||
to both cygwin and Red Hat installations).
|
||||
(_csih_late_initialization_code): Initialize _csih_script_dir
|
||||
and _csih_exec_dir here, instead of 'inline'.
|
||||
(csih_check_program): Return 1 if specified program doesn't
|
||||
exist; 2 if it exists but can't be executed. Prefer full
|
||||
pathnames but use hash if relative pathname is supplied.
|
||||
(csih_check_program_or_warn, csih_check_program_or_error): Ripple
|
||||
from changes to csih_check_program; print appropriate warning or
|
||||
error messages.
|
||||
(_csih_setup): No longer call csih_sanity_check, since internal
|
||||
replacement _csih_sanity_check is now called when csih is sourced.
|
||||
(_csih_get_exec_dir): Use hash builtin to locate program in
|
||||
$PATH search fallback case, rather than csih_check_program.
|
||||
(csih_call_winsys32): New function used to invoke tools that
|
||||
reside in the ${SYSTEMROOT}/system32/ directory (such as net.exe).
|
||||
|
||||
2011-02-07 Corinna Vinschen <...>
|
||||
|
||||
0.9.3 release.
|
||||
* version.h: Bump version number.
|
||||
* csih.sh (csih_install_config): Not an error if user
|
||||
elects NOT to overwrite existing files; return success (0).
|
||||
* NEWS: Update documentation.
|
||||
|
||||
2010-11-16 Charles Wilson <...>
|
||||
|
||||
Actual 0.9.2 release.
|
||||
* cygwin/getVolInfo.c (main): Use cygwin_create_path
|
||||
instead of deprecated cygwin_conv_to_full_win32_path.
|
||||
* native/Makefile: Use gcc-3 and g++-3 explicitly.
|
||||
* NEWS: Update documentation.
|
||||
|
||||
2010-11-16 Charles Wilson <...>
|
||||
|
||||
* version.h: Bump version number.
|
||||
|
||||
2010-11-16 Charles Wilson <...>
|
||||
|
||||
* csih.sh (csih_account_has_necessary_privileges): Fix typo.
|
||||
(csih_create_privileged_user): Fix typo.
|
||||
|
||||
2010-11-16 Charles Wilson <...>
|
||||
|
||||
Document XP64/XP32 issues. Remove vestiges of Win9x.
|
||||
* TODO: Remove Win9x item.
|
||||
* NEWS: Update documentation.
|
||||
* csih.sh: Update version and copyright date. Update
|
||||
comments throughout to reflect that WinXP64 is included
|
||||
in "Windows NT Server 2003 or above).
|
||||
(csih_is_nt2003): Expand commentary to describe situation.
|
||||
(_csih_warning_for_win9x_perms): Removed.
|
||||
(csih_guest_account_active): Remove check for !csih_is_nt.
|
||||
(_csih_warning_for_missing_ACL_support): Ditto.
|
||||
(csih_privileged_accounts): Ditto.
|
||||
(csih_create_privileged_user): Ditto.
|
||||
(csih_create_unprivileged_user): Ditto.
|
||||
(csih_select_privileged_username): Remove check for !csih_is_nt.
|
||||
Update user messages regarding NT2003/XP64.
|
||||
(csih_service_should_run_as): Ditto.
|
||||
|
||||
2009-08-01 Charles Wilson <...>
|
||||
|
||||
Release 0.9.1
|
||||
* NEWS: Update.
|
||||
* csih.sh: Update version.
|
||||
* version.h: Update version.
|
||||
|
||||
2009-07-23 Corinna Vinschen <...>
|
||||
|
||||
* cygwin/getVolInfo.c: Check ZwOpenFile status code for
|
||||
STATUS_INVALID_PARAMETER and retry top open with FILE_READ_DATA
|
||||
access. Simply STATUS_NO_MEDIA_IN_DEVICE condition.
|
||||
|
||||
2009-05-03 Charles Wilson <...>
|
||||
|
||||
Add error checking for supported OS/cygwin version.
|
||||
* NEWS: Update.
|
||||
* csih.sh (csih_win_product_name): New function, allows
|
||||
to cache results of calling winProductName since we
|
||||
have to call it anyway.
|
||||
(_csih_late_initialization_code): set cache variable
|
||||
for use by csih_win_product_name().
|
||||
(main): Check that OS is at least WinNT, and cygwin
|
||||
version is at least 1.7.0, else issue error.
|
||||
|
||||
2009-05-03 Charles Wilson <...>
|
||||
|
||||
Update version number on trunk.
|
||||
* NEWS: Update.
|
||||
* csih.sh (main): Update csih_VERSION.
|
||||
* version.h: New file.
|
||||
* native/getAccountName.cpp: Use version.h to set
|
||||
version number.
|
||||
* native/winProductName.c: Ditto.
|
||||
|
||||
2009-05-03 Charles Wilson <...>
|
||||
|
||||
Release 0.2.0
|
||||
* NEWS: Update.
|
||||
* csih.sh (main): Update csih_VERSION.
|
||||
* native/getAccountName.cpp: Bump version number.
|
||||
* native/winProductName.c: Bump version number.
|
||||
|
||||
2009-03-29 Charles Wilson <...>
|
||||
|
||||
ACLs for /var/*; supress unnecessary info msgs
|
||||
* csih.sh (_csih_setup): Add ACLs for system user
|
||||
and Administrators group to /var/log, /var/run, and
|
||||
/var/empty.
|
||||
(csih_select_privileged_username): Supress informational
|
||||
messages about other privileged users when called with
|
||||
-u $specific_username_request.
|
||||
|
||||
2009-03-28 Charles Wilson <...>
|
||||
|
||||
* TODO: New.
|
||||
* AUTHORS: Updated.
|
||||
* csih.sh (main): Bump version number.
|
||||
(_csih_well_known_privileged_accounts[_quoted]): New.
|
||||
(csih_privileged_accounts): New -u $username option;
|
||||
check also the specified $username, as well as the
|
||||
'well known' accounts.
|
||||
(csih_privileged_account_exists): Modify semantics;
|
||||
now return true if account exists and has necessary
|
||||
privileges, even if it is not one of the 'well known'
|
||||
accounts.
|
||||
(csih_select_privileged_username): Add -u $default_user
|
||||
option. Allows to specify some (possibly not yet
|
||||
existing) account for the service to run under, IF
|
||||
if is not already installed. This allows to override
|
||||
the *default* default, cyg_server.
|
||||
(csih_is_windows7): New.
|
||||
(csih_is_exactly_windows7): New.
|
||||
(csih_is_exactly_server2008r2): New.
|
||||
* native/getAccountName.cpp: Bump version number.
|
||||
* native/winProductName.c: Bump version number.
|
||||
Update for Windows 7, Windows Server 2008 R2.
|
||||
* NEWS: Update documentation.
|
||||
|
||||
2009-03-28 Charles Wilson <...>
|
||||
|
||||
* csih.sh (csih_privileged_accounts): Issue
|
||||
warning if $username in /etc/passwd but not SAM.
|
||||
Reported by: Herb Maeder
|
||||
|
||||
2009-03-28 Julio Costa <...>
|
||||
|
||||
* csih.sh (csih_select_privileged_username): Add
|
||||
-f option.
|
||||
(csih_create_privileged_user): Expand comments.
|
||||
|
||||
2009-01-28 Corinna Vinschen <corinna-cygwin@cygwin.com>
|
||||
|
||||
* csih.sh (csih_get_cygenv): Don't check input for certain values.
|
||||
|
||||
2008-08-20 Charles Wilson <...>
|
||||
|
||||
* csih.sh (_csih_setup): suppress error messages
|
||||
from chmod (when run as normal user).
|
||||
|
||||
2008-08-20 Charles Wilson <...>
|
||||
|
||||
Correct csih_check_access behavior.
|
||||
|
||||
* csih.sh (csih_check_access): update documentation.
|
||||
Fix broken if-clauses -- [ fn -a $var -eq "foo" ]
|
||||
doesn't work; use ( fn && [ $var -eq "foo" ]).
|
||||
Remove test (and erroneous comments) concerning
|
||||
ACLs and 'other' permission bits.
|
||||
(csih_select_privileged_username): reformat messages.
|
||||
|
||||
2008-08-20 Charles Wilson <...>
|
||||
|
||||
csih-0.1.8 release
|
||||
|
||||
* csih.sh (main): bump version number
|
||||
|
||||
2008-08-20 Corinna Vinschen <corinna-cygwin@cygwin.com>
|
||||
|
||||
Better support for domain accounts.
|
||||
|
||||
* csih.sh (csih_create_privileged_user): return success
|
||||
if user already exists in /etc/passwd (allows to use
|
||||
pre-existing domain account as privileged user).
|
||||
(csih_create_unprivileged_user): return success
|
||||
if user already exists in /etc/passwd (allows to use
|
||||
pre-existing domain account as unpriv user).
|
||||
|
||||
2008-08-20 Charles Wilson <...>
|
||||
|
||||
* csih.sh (csih_create_unprivileged_user): detect
|
||||
if fail to add user to /etc/passwd.
|
||||
|
||||
2008-08-20 Charles Wilson <...>
|
||||
|
||||
* csih.sh (_csih_setup): Attempt to set correct permissions
|
||||
on /var/run, /var/log, /var/empty, and /etc.
|
||||
|
||||
2008-08-16 Charles Wilson <...>
|
||||
|
||||
csih-0.1.7 release
|
||||
Fix bugs and improve Vista and cygwin-1.7 support.
|
||||
|
||||
* csih.sh (main): update documentation, bump version
|
||||
number.
|
||||
(csih_cygver): new function.
|
||||
(csih_cygver_is_oneseven): new function.
|
||||
(csih_sanity_check): Check for stat program.
|
||||
(csih_get_system_and_admins_ids): Use 'stat -c %A'
|
||||
instead of 'ls -ld'.
|
||||
(csih_check_dir_perms): ditto.
|
||||
(csih_check_sys_mount): Document as cygwin-1.5.x
|
||||
specific. Unconditionally return 0 (true) for
|
||||
cygwin-1.7 and above.
|
||||
(csih_check_basic_mounts): ditto.
|
||||
(_csih_setup): Allow /var to have text bit set --
|
||||
iow, match permissions pattern 'd..x..x..[xt]'
|
||||
(csih_select_privileged_username): workaround bug in
|
||||
cygwin-1.7 mkpasswd. Reparagraph error user message,
|
||||
fix documentation typo.
|
||||
(csih_service_should_run_as): Return either privileged
|
||||
account name OR system, not both.
|
||||
* NEWS: Update documentation.
|
||||
|
||||
2008-08-07 Charles Wilson <...>
|
||||
|
||||
csih-0.1.6 release
|
||||
Add getVolInfo utility program. Use it to avoid
|
||||
checking permissions on volumes that do not support ACLs.
|
||||
|
||||
* csih.sh (main): update documentation.
|
||||
(csih_WIN32_VOLS_WITH_ACLS): new client-accessible var.
|
||||
(csih_WIN32_VOLS_WITHOUT_ACLS): ditto.
|
||||
(csih_path_supports_acls): new function.
|
||||
(_csih_convert_w32vol_to_shell_pattern): new function.
|
||||
(_csih_path_in_volumelist_core): new function.
|
||||
(_csih_path_in_volumelist): new function.
|
||||
(csih_get_system_and_admins_ids): update comments.
|
||||
No longer an error if Administrators group is not found
|
||||
in /etc/passwd.
|
||||
(_csih_warning_for_win9x_perms): new function.
|
||||
(_csih_warning_for_missing_ACL_support): new function.
|
||||
(csih_check_dir_perms): bail out early (returning success
|
||||
but with a warning) if on OS older than windows NT, or the
|
||||
specified file/dir is on a volume that does not support ACLs.
|
||||
(csih_check_access): ditto. Also, improve comments. If
|
||||
csih_ADMINSUID is empty, gracefully skip checking if file/dir
|
||||
is owned by the Administrators group.
|
||||
* cygwin/Makefile: new file.
|
||||
* cygwin/getVolInfo.c: new file.
|
||||
* COPYING: update documentation.
|
||||
* NEWS: update documentation.
|
||||
|
||||
2008-08-04 Charles Wilson <...>
|
||||
|
||||
Accept pre-existing privileged domain accounts.
|
||||
Default to privileged account on NT/2k/XP if exist.
|
||||
|
||||
* csih.sh (csih_privileged_accounts): Always look
|
||||
for privileged users if NT or better. Look in both
|
||||
/etc/passwd and local SAM.
|
||||
(csih_privileged_account_exists): Update documentation
|
||||
to reflect behavior change inherited from above.
|
||||
(csih_select_privileged_username): Attempt to return
|
||||
a username even on NT/2k/XP (but default to empty if
|
||||
no pre-existing privileged user on those OS's). Be more
|
||||
specific in the informational messages emitted. Look
|
||||
in both /etc/passwd and local SAM for accounts, if user
|
||||
specified one we don't know about already.
|
||||
(csih_create_privileged_user): Improve comments.
|
||||
(csih_create_unprivileged_user): Improve comments.
|
||||
See FIXME! (remove this line from ChangeLog when resolved)
|
||||
(csih_service_should_run_as): Improve comments. Check
|
||||
both /etc/passwd and local SAM if "answer" is an account
|
||||
that did not exist when script was launched. For NT/2k/XP,
|
||||
default to pre-existing privileged user (if one exists), and
|
||||
only report SYSTEM otherwise.
|
||||
* NEWS: Document new behavior
|
||||
|
||||
2008-07-19 Corinna Vinschen <corinna-cygwin@cygwin.com>
|
||||
|
||||
* csih.sh (csih_account_has_necessary_privileges): Don't
|
||||
explicitely test for SeDenyXXX rights, nor for
|
||||
SeIncreaseQuotaPrivilege.
|
||||
(csih_create_privileged_user): Drop setting
|
||||
SeDenyInteractiveLogonRight and SeIncreaseQuotaPrivilege.
|
||||
|
||||
2008-07-19 Charles Wilson <...>
|
||||
|
||||
csih-0.1.5 release
|
||||
|
||||
* cish.sh (csih_account_has_necessary_privileges):
|
||||
Use editrights -t instead of editrights -l and fgrep.
|
||||
|
||||
2008-07-19 Corinna Vinschen <corinna-cygwin@cygwin.com>
|
||||
|
||||
* csih.sh (csih_account_has_necessary_privileges,
|
||||
csih_create_privileged_user): Don't disallow network
|
||||
logon for service user account.
|
||||
|
||||
2008-04-14 Charles Wilson <...>
|
||||
|
||||
csih-0.1.4 release
|
||||
|
||||
* csih.sh: add MIT/X license text.
|
||||
(csih_error): Removed any direct heritage from cygport due to
|
||||
licensing concerns.
|
||||
(csih_warning): ditto
|
||||
(csih_inform): ditto
|
||||
(csih_verbose): ditto
|
||||
* COPYING: update documentation
|
||||
* NEWS: update documentation
|
||||
* COPYING.GPLv3: removed
|
||||
|
||||
2008-04-09 Charles Wilson <...>
|
||||
|
||||
* csih.sh (csih_account_has_necessary_privileges): new function
|
||||
(csih_select_privileged_username): new behavior if optionally
|
||||
specified service is installed.
|
||||
(csih_service_should_run_as): new optional argument service_name.
|
||||
If specified, checks to see if that service is already installed,
|
||||
and returns the installed account name if so. Otherwise, behavior
|
||||
is unchnaged.
|
||||
|
||||
2008-04-07 Corinna Vinschen <...>
|
||||
|
||||
* csih.sh (csih_create_privileged_user): fix typo
|
||||
(_csih_setup): fix typo
|
||||
|
||||
2008-04-07 Charles Wilson <...>
|
||||
|
||||
* csih.sh (csih_select_privileged_username): moved
|
||||
below _csih_setup so it can be a main entry point.
|
||||
Added option parsing: -q query mode, and service_name.
|
||||
Added caching; once csih_PRIVILEGED_USERNAME is set,
|
||||
avoid extra reprocessing.
|
||||
(csih_version_ge): new function for comparing version
|
||||
numbers. 'csih_version_ge A B' returns true if A >= B,
|
||||
where A and B are of the form x.y.z.
|
||||
(csih_version_le): ditto, for A <= B.
|
||||
(csih_version_gt): ditto, for A > B.
|
||||
(csih_version_lt): ditto, for A < B.
|
||||
(csih_version_eq): ditto, for A == B.
|
||||
|
||||
2008-04-02 Charles Wilson <...>
|
||||
|
||||
* csih.sh (csih_create_privileged_user): accept
|
||||
password as optional first argument.
|
||||
* native/winProductName.c (usage): new function
|
||||
(help, license, version): ditto
|
||||
(main): add support for basic option parsing and
|
||||
help.
|
||||
* native/Makefile: link winProductName against
|
||||
libnative (for getopt support).
|
||||
* NEWS: new file
|
||||
* AUTHORS: new file
|
||||
* COPYING: new file
|
||||
* COPYING.GPLv3: new file
|
||||
* COPYING.LGPLv2.1: new file
|
||||
* COPYING.MIT_X: new file
|
||||
|
||||
|
||||
2008-03-16 Charles Wilson <...>
|
||||
|
||||
csih-0.1.3 release
|
||||
|
||||
* csih.sh (_csih_late_initialization_code): new function.
|
||||
moved inline late initialization code to here.
|
||||
|
||||
2008-03-16 Charles Wilson <...>
|
||||
|
||||
csih-0.1.2 release
|
||||
|
||||
* native/winProductName.c: new file
|
||||
* native/Makefile: add rules for winProductName
|
||||
* csih.sh (csih_is_exactly_vista): new function
|
||||
* csih.sh (csih_is_exactly_server2008): new function
|
||||
* csih.sh: protect usage of $csih_progname against
|
||||
leading '-' character, throughout.
|
||||
* csih.sh (late initialization code): add new code
|
||||
block after definition of csih_invoke_helper().
|
||||
|
||||
2008-03-06 Charles Wilson <...>
|
||||
|
||||
csih-0.1.1 release
|
||||
|
||||
* native/getAccountName.cpp: new file
|
||||
* native/getopt.c: new file
|
||||
* native/getopt.h: new file
|
||||
* native/getopt1.c: new file
|
||||
* native/lookupAccountName.cpp: new file
|
||||
* native/lookupAccountName.h: new file
|
||||
* native/Makefile: new file
|
||||
* native/ReadMe.Win32Error.txt: new file
|
||||
* native/Win32Error.h: new file
|
||||
* csih.sh (csih_is_2k): new function
|
||||
(csih_is_xp): new function
|
||||
(csih_is_vista): new function
|
||||
(csih_invoke_helper): new function
|
||||
(csih_get_localized_account_name): new function
|
||||
(csih_get_guest_account_name): new function
|
||||
(csih_guest_account_active): new function
|
||||
|
||||
212
OGP64/usr/share/doc/csih/NEWS
Normal file
212
OGP64/usr/share/doc/csih/NEWS
Normal file
|
|
@ -0,0 +1,212 @@
|
|||
0.9.7:
|
||||
* winProductName: Better support for Windows Server 2012 variants.
|
||||
* getVolInfo: Adapt to new w32api; avoid ddk.
|
||||
* csih: Renamed csih_is_exactly_windows8server to csih_is_exactly_server2012.
|
||||
* csih: Added csih_cygwin_is_64bit.
|
||||
* Support cross-compilation; support cygwin64.
|
||||
* Use mingw64 toolchains by default for "native" executables.
|
||||
0.9.6:
|
||||
* Avoid language runtime dlls when compiling utility programs.
|
||||
|
||||
0.9.5:
|
||||
* winProductName now supports Windows 8 and Windows 8 Server.
|
||||
* Remove various obsolete tests.
|
||||
|
||||
0.9.4:
|
||||
* New function csih_call_winsys32() for invoking programs
|
||||
in C:\Windows\system32.
|
||||
* New function csih_writable_tmpdir() echos path to a temporary
|
||||
directory, using $TMP, $TEMP, $TMPDIR, $HOME, etc.
|
||||
* New function csih_mktemp() safely wraps /usr/bin/mktemp.
|
||||
* csih_sanity_check() deprecated (replaced by internal
|
||||
function).
|
||||
* csih_check_basic_mounts() deprecated (ditto).
|
||||
* New mutable variables csih_sanity_check_server and
|
||||
csih_required_commands[] for modifying the behavior of
|
||||
the internal replacement function for csih_sanity_check().
|
||||
* All external applications (mkpasswd, expr, tr, sed, etc)
|
||||
are now called by their full path, to avoid conflicts in
|
||||
the presence of unexpected $PATH contents.
|
||||
* (internal): massive reorganization, changing the order
|
||||
of intialization. Required because some initialization requires
|
||||
calling external programs, and we now verify these programs
|
||||
are accessible first.
|
||||
|
||||
0.9.3:
|
||||
* In csih_install_config(), don't treat as error when
|
||||
user elects elects NOT to overwrite existing files; instead
|
||||
return success. (Corinna Vinschen)
|
||||
|
||||
0.9.2:
|
||||
* Remove all vestiges of pre-NT support -- except
|
||||
for failure message if used on 9x platforms.
|
||||
* Update user messages and # comments to reflect new
|
||||
information: csih_is_nt2003 returns true for 64bit XP
|
||||
but not 32bit XP. This is because 64bit XP is actually
|
||||
more similar to Windows NT Server 2003 than XP32:
|
||||
especially with regards to the privileges of the SYSTEM
|
||||
account.
|
||||
* getVolInfo uses cygwin_create_path instead of deprecated
|
||||
cygwin_conv_to_full_win32_path.
|
||||
|
||||
0.9.1:
|
||||
* getVolInfo doesn't need file access rights to get
|
||||
just volume information. Open with reduced rights
|
||||
to work around issue with HGFS. (Corinna Vinschen)
|
||||
|
||||
0.9.0:
|
||||
* On-going development on the trunk is specific
|
||||
for cygwin-1.7. Bump version number to reflect
|
||||
that, but...
|
||||
* Only a few substantive changes relative to 0.2.0:
|
||||
- use common version.h file in compiled programs,
|
||||
to avoid having to increment the version number
|
||||
in too many places.
|
||||
- new csih_win_product_name() function caches result
|
||||
of calling winProductName.
|
||||
- Verify that OS is at least WinNT, and that cygwin
|
||||
version is at least 1.7.0, or error.
|
||||
|
||||
0.2.0:
|
||||
* Branch for cygwin-1.5-specific releases
|
||||
* No other changes with respect to package 0.1.9-2
|
||||
|
||||
0.1.9:
|
||||
* correct csih_check_access behavior.
|
||||
* suppress errors in _csih_setup
|
||||
* No longer restrict contents of CYGWIN variable
|
||||
* New -f option for csih_select_privileged_username to
|
||||
accomodate unattended installs
|
||||
* New '-u default_username' for csih_select_privileged_username,
|
||||
for another way of accomodating unattended installs, AND to
|
||||
allow foo-config to specify explicitly the --service-account
|
||||
to use. Note that csih_privileged_account_exists $username
|
||||
now returns true if $username exists, and has all necessary
|
||||
privileges, even if it is not one of the well-known cyg_server,
|
||||
cron_server, or sshd_server accounts.
|
||||
* New '-u username' for csih_privileged_accounts. Also checks
|
||||
username as well as 'well known' accounts for (a) existence,
|
||||
and (b) having necessary privileges.
|
||||
* Now warn user when an account is specified in /etc/passwd,
|
||||
but is not found in the SAM. This is ok if the account is
|
||||
a domain account, but the user should be aware of the issue.
|
||||
* Updated winProductName to reflect Windows 7, Server 2008 R2.
|
||||
* csih has new functions related to detecting Windows 7 and
|
||||
Server 2008 R2.
|
||||
|
||||
0.1.8:
|
||||
* explicitly set permissions on /var/[log|run|empty]
|
||||
and /etc. This simplifies code in most callers.
|
||||
* Better support for (pre-existing) domain accounts
|
||||
as privileged and unprivileged users.
|
||||
|
||||
0.1.7:
|
||||
* bug fixes
|
||||
* compatibility fixes and workarounds for cygwin-1.7
|
||||
|
||||
0.1.6:
|
||||
* more permissions tweaks for privileged user:
|
||||
See http://cygwin.com/ml/cygwin/2008-06/msg00453.html
|
||||
Users of earlier versions of csih may need to manually
|
||||
adjust their existing privileged users. Again:
|
||||
editrights -r SeDenyNetworkLogonRight -u cyg_server
|
||||
editrights -r SeDenyInteractiveLogonRight -u cyg_server
|
||||
editrights -r SeIncreaseQuotaPrivilege -u cyg_server
|
||||
|
||||
* Even on NT/2k/XP, prefer to use "privileged" user (cyg_server,
|
||||
sshd_server, cron_server, etc) if a suitable such user already
|
||||
exists. If not, then for these older OS's, fall back to SYSTEM.
|
||||
As always, by setting csih_FORCE_PRIVILEGED_USER -- usually done
|
||||
by the calling script via a command line argument, such as
|
||||
/usr/bin/iu-config -privileged
|
||||
the user can force NT/2k/XP to behave as Vista or Server2008: a
|
||||
privileged user is required, and if one does not exist it will
|
||||
be created.
|
||||
|
||||
* Also accept privileged accounts that exist only in /etc/passwd and
|
||||
are not present in the local SAM. That is, accept pre-existing
|
||||
privileged domain accounts.
|
||||
|
||||
* New utility program: getVolInfo
|
||||
http://cygwin.com/ml/cygwin/2007-08/msg00040.html
|
||||
|
||||
* New function: csih_path_supports_acls() returns 0 (success)
|
||||
if the specified path is located on a volume that supports
|
||||
ACLs. Uses getVolInfo. Behavior can be modified, when getVolInfo
|
||||
is incorrect, by setting user-accessible variables:
|
||||
csih_WIN32_VOLS_WITH_ACLS
|
||||
csih_WIN32_VOLS_WITHOUT_ACLS
|
||||
which each may contain ;-separated lists of win32 paths,
|
||||
specifying volumes in the relevant category.
|
||||
|
||||
* It is no longer a fatal error if, when checking the
|
||||
permissions or access rights of a file or directory, the
|
||||
target is located on a volume that does not support ACLs.
|
||||
A warning is issued, but operation continues.
|
||||
|
||||
* The Administrators group is no longer required to be in
|
||||
/etc/passwd. However, it is still required in /etc/group.
|
||||
SYSTEM is (still) required in both /etc/passwd and /etc/group.
|
||||
|
||||
0.1.5:
|
||||
* tweak permissions for privileged user (no longer deny
|
||||
NetworkLogonRight). Users of earlier versions may need to
|
||||
manually adjust their exising privileged users: that is,
|
||||
as an Administrator (or, on Vista with UAC, from a console
|
||||
launched via 'Run as Administrator' with valid UAC
|
||||
authentication):
|
||||
editrights -r SeDenyNetworkLogonRight -u cyg_server
|
||||
|
||||
0.1.4:
|
||||
* Add --help, --license, --version options to winProductName.
|
||||
* Caller can now specify the password when calling
|
||||
csih_create_privileged_user
|
||||
* csih_should_run_as now accepts optional [service_name] argument.
|
||||
If specified, then checks to see if [service_name] is already
|
||||
isntalled. If so, the user under which the service is installed
|
||||
is returned (if that user has the necessary privileges).
|
||||
Should call csih_select_privileged_username first, unless you are
|
||||
SURE that [service_name] has already been installed.
|
||||
* Add [-q] and [service_name] options to csih_select_privileged_username
|
||||
+ If the optional argument '-q' is specified, then
|
||||
csih_select_privileged_username will operate in query mode, which
|
||||
is more appropriate for user-config scripts that need information
|
||||
ABOUT a service, but do not themselves install the service or
|
||||
create privileged users.
|
||||
+ If the optional [service_name] argument is present, then that
|
||||
value may be used in some of the messages. Also,
|
||||
csih_select_privileged_username will then check to see if
|
||||
[service_name] is already installed. If so, it the
|
||||
account under which it is installed will be selected, assuming
|
||||
that account passes validation (has necessary permissions, group
|
||||
memberships, etc).
|
||||
+ Usually [-q] and [service_name] should be specified together.
|
||||
* Associated foo-config scripts that do not themselves install
|
||||
a service (such as ssh-user-config) can now query the 'expected'
|
||||
account that the associated service will run as. Recommended
|
||||
pattern:
|
||||
if csih_is_nt
|
||||
then
|
||||
if ! cygrunsrv -Q <service> >/dev/null 2>&1
|
||||
then
|
||||
csih_select_privileged_username -q <service>
|
||||
fi
|
||||
service_user=$(csih_service_should_run_as <service>)
|
||||
... continue ...
|
||||
fi
|
||||
* new functions for comparing x.y.z version numbers:
|
||||
csih_version_ge A B --> A >= B
|
||||
csih_version_le A B --> A <= B
|
||||
csih_version_gt A B --> A > B
|
||||
csih_version_lt A B --> A < B
|
||||
csih_version_ne A B --> A == B
|
||||
* Clarified licensing terms and attributions for csih.sh script
|
||||
Explicitly MIT/X.
|
||||
* Removed any direct heritage from cygport due to licensing concerns.
|
||||
|
||||
For an example of the usage of the new facilities, see the (proposed)
|
||||
ssh-host-config and ssh-user-config scripts:
|
||||
+ host: http://cygwin.com/ml/cygwin/2008-04/msg00079.html
|
||||
+ user: http://cygwin.com/ml/cygwin/2008-04/msg00219.html
|
||||
(Note that the official ssh-[host|user]-config scripts may not look
|
||||
anything like these two proposals...)
|
||||
4
OGP64/usr/share/doc/csih/TODO
Normal file
4
OGP64/usr/share/doc/csih/TODO
Normal file
|
|
@ -0,0 +1,4 @@
|
|||
* Needs serious refactoring. Code is way too complicated
|
||||
and nigh-on unmaintainable. However, refactoring may
|
||||
require coordinating API changes and release timing
|
||||
with client foo-config packages.
|
||||
278
OGP64/usr/share/doc/curl/CIPHERS.md
Normal file
278
OGP64/usr/share/doc/curl/CIPHERS.md
Normal file
|
|
@ -0,0 +1,278 @@
|
|||
<!--
|
||||
Copyright (C) Daniel Stenberg, <daniel@haxx.se>, et al.
|
||||
|
||||
SPDX-License-Identifier: curl
|
||||
-->
|
||||
|
||||
## curl cipher options
|
||||
|
||||
A TLS handshake involves many parameters which take part in the negotiation
|
||||
between client and server in order to agree on the TLS version and set of
|
||||
algorithms to use for a connection.
|
||||
|
||||
What has become known as a "cipher" or better "cipher suite" in TLS
|
||||
are names for specific combinations of
|
||||
[key exchange](https://en.wikipedia.org/wiki/Key_exchange),
|
||||
[bulk encryption](https://en.wikipedia.org/wiki/Link_encryption),
|
||||
[message authentication code](https://en.wikipedia.org/wiki/Message_authentication_code)
|
||||
and with TLSv1.3 the
|
||||
[authenticated encryption](https://en.wikipedia.org/wiki/Authenticated_encryption).
|
||||
In addition, there are other parameters that influence the TLS handshake, like
|
||||
[DHE](https://en.wikipedia.org/wiki/Diffie%e2%80%93Hellman_key_exchange) "groups"
|
||||
and [ECDHE](https://en.wikipedia.org/wiki/Elliptic-curve_Diffie%e2%80%93Hellman)
|
||||
with its "curves".
|
||||
|
||||
### History
|
||||
|
||||
curl's way of letting users configure these settings closely followed OpenSSL
|
||||
in its API. TLS learned new parameters, OpenSSL added new API functions and
|
||||
curl added command line options.
|
||||
|
||||
Several other TLS backends followed the OpenSSL approach, more or less closely,
|
||||
and curl maps the command line options to these TLS backends. Some TLS
|
||||
backends do not support all of it and command line options are either
|
||||
ignored or lead to an error.
|
||||
|
||||
Many examples below show the OpenSSL-like use of these options. GnuTLS
|
||||
however chose a different approach. These are described in a separate
|
||||
section further below.
|
||||
|
||||
## ciphers, the OpenSSL way
|
||||
|
||||
With curl's option
|
||||
[`--tls13-ciphers`](https://curl.se/docs/manpage.html#--tls13-ciphers)
|
||||
or
|
||||
[`CURLOPT_TLS13_CIPHERS`](https://curl.se/libcurl/c/CURLOPT_TLS13_CIPHERS.html)
|
||||
users can control which cipher suites to consider when negotiating TLS 1.3
|
||||
connections. With option
|
||||
[`--ciphers`](https://curl.se/docs/manpage.html#--ciphers)
|
||||
or
|
||||
[`CURLOPT_SSL_CIPHER_LIST`](https://curl.se/libcurl/c/CURLOPT_SSL_CIPHER_LIST.html)
|
||||
users can control which cipher suites to consider when negotiating
|
||||
TLS 1.2 (1.1, 1.0) connections.
|
||||
|
||||
By default, curl may negotiate TLS 1.3 and TLS 1.2 connections, so the cipher
|
||||
suites considered when negotiating a TLS connection are a union of the TLS 1.3
|
||||
and TLS 1.2 cipher suites. If you want curl to consider only TLS 1.3 cipher
|
||||
suites for the connection, you have to set the minimum TLS version to 1.3 by
|
||||
using [`--tlsv1.3`](https://curl.se/docs/manpage.html#--tlsv13)
|
||||
or [`CURLOPT_SSLVERSION`](https://curl.se/libcurl/c/CURLOPT_SSLVERSION.html)
|
||||
with `CURL_SSLVERSION_TLSv1_3`.
|
||||
|
||||
Both the TLS 1.3 and TLS 1.2 cipher options expect a list of cipher suites
|
||||
separated by colons (`:`). This list is parsed opportunistically, cipher suites
|
||||
that are not recognized or implemented are ignored. As long as there is at
|
||||
least one recognized cipher suite in the list, the list is considered valid.
|
||||
|
||||
For both the TLS 1.3 and TLS 1.2 cipher options, the order in which the
|
||||
cipher suites are specified determine the preference of them. When negotiating
|
||||
a TLS connection the server picks a cipher suite from the intersection of the
|
||||
cipher suites supported by the server and the cipher suites sent by curl. If
|
||||
the server is configured to honor the client's cipher preference, the first
|
||||
common cipher suite in the list sent by curl is chosen.
|
||||
|
||||
### TLS 1.3 cipher suites
|
||||
|
||||
Setting TLS 1.3 cipher suites is supported by curl with
|
||||
OpenSSL (1.1.1+, curl 7.61.0+), LibreSSL (3.4.1+, curl 8.3.0+),
|
||||
wolfSSL (curl 8.10.0+) and mbedTLS (3.6.0+, curl 8.10.0+).
|
||||
|
||||
The list of cipher suites that can be used for the `--tls13-ciphers` option:
|
||||
|
||||
```
|
||||
TLS_AES_128_GCM_SHA256
|
||||
TLS_AES_256_GCM_SHA384
|
||||
TLS_CHACHA20_POLY1305_SHA256
|
||||
TLS_AES_128_CCM_SHA256
|
||||
TLS_AES_128_CCM_8_SHA256
|
||||
```
|
||||
|
||||
#### wolfSSL notes
|
||||
|
||||
In addition to above list the following cipher suites can be used:
|
||||
`TLS_SM4_GCM_SM3` `TLS_SM4_CCM_SM3` `TLS_SHA256_SHA256` `TLS_SHA384_SHA384`.
|
||||
Usage of these cipher suites is not recommended. (The last two cipher suites
|
||||
are NULL ciphers, offering no encryption whatsoever.)
|
||||
|
||||
### TLS 1.2 (1.1, 1.0) cipher suites
|
||||
|
||||
Setting TLS 1.2 cipher suites is supported by curl with OpenSSL, LibreSSL,
|
||||
BoringSSL, mbedTLS (curl 8.8.0+), wolfSSL (curl 7.53.0+). Schannel does not
|
||||
support setting cipher suites directly, but does support setting algorithms
|
||||
(curl 7.61.0+), see Schannel notes below.
|
||||
|
||||
For TLS 1.2 cipher suites there are multiple naming schemes, the two most used
|
||||
are with OpenSSL names (e.g. `ECDHE-RSA-AES128-GCM-SHA256`) and IANA names
|
||||
(e.g. `TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256`). IANA names of TLS 1.2 cipher
|
||||
suites look similar to TLS 1.3 cipher suite names, to distinguish them note
|
||||
that TLS 1.2 names contain `_WITH_`, while TLS 1.3 names do not. When setting
|
||||
TLS 1.2 cipher suites with curl it is recommended that you use OpenSSL names
|
||||
as these are most widely recognized by the supported SSL backends.
|
||||
|
||||
The complete list of cipher suites that may be considered for the `--ciphers`
|
||||
option is extensive, it consists of more than 300 ciphers suites. Nowadays,
|
||||
most of them are discouraged, and support for a lot of them has been removed
|
||||
from the various SSL backends, if ever implemented at all.
|
||||
|
||||
A shortened list (based on [recommendations by
|
||||
Mozilla](https://wiki.mozilla.org/Security/Server_Side_TLS)) of cipher suites,
|
||||
which are (mostly) supported by all SSL backends, that can be used for the
|
||||
`--ciphers` option:
|
||||
|
||||
```
|
||||
ECDHE-ECDSA-AES128-GCM-SHA256
|
||||
ECDHE-RSA-AES128-GCM-SHA256
|
||||
ECDHE-ECDSA-AES256-GCM-SHA384
|
||||
ECDHE-RSA-AES256-GCM-SHA384
|
||||
ECDHE-ECDSA-CHACHA20-POLY1305
|
||||
ECDHE-RSA-CHACHA20-POLY1305
|
||||
DHE-RSA-AES128-GCM-SHA256
|
||||
DHE-RSA-AES256-GCM-SHA384
|
||||
DHE-RSA-CHACHA20-POLY1305
|
||||
ECDHE-ECDSA-AES128-SHA256
|
||||
ECDHE-RSA-AES128-SHA256
|
||||
ECDHE-ECDSA-AES128-SHA
|
||||
ECDHE-RSA-AES128-SHA
|
||||
ECDHE-ECDSA-AES256-SHA384
|
||||
ECDHE-RSA-AES256-SHA384
|
||||
ECDHE-ECDSA-AES256-SHA
|
||||
ECDHE-RSA-AES256-SHA
|
||||
DHE-RSA-AES128-SHA256
|
||||
DHE-RSA-AES256-SHA256
|
||||
AES128-GCM-SHA256
|
||||
AES256-GCM-SHA384
|
||||
AES128-SHA256
|
||||
AES256-SHA256
|
||||
AES128-SHA
|
||||
AES256-SHA
|
||||
DES-CBC3-SHA
|
||||
```
|
||||
|
||||
See this [list](https://github.com/curl/curl/blob/master/docs/CIPHERS-TLS12.md)
|
||||
for a complete list of TLS 1.2 cipher suites.
|
||||
|
||||
#### OpenSSL notes
|
||||
|
||||
In addition to specifying a list of cipher suites, OpenSSL also accepts a
|
||||
format with specific cipher strings (like `TLSv1.2`, `AESGCM`, `CHACHA20`) and
|
||||
`!`, `-` and `+` operators. Refer to the
|
||||
[OpenSSL cipher documentation](https://docs.openssl.org/master/man1/openssl-ciphers/#cipher-list-format)
|
||||
for further information on that format.
|
||||
|
||||
#### Schannel notes
|
||||
|
||||
Schannel does not support setting individual TLS 1.2 cipher suites directly.
|
||||
It only allows the enabling and disabling of encryption algorithms. These are
|
||||
in the form of `CALG_xxx`, see the [Schannel `ALG_ID`
|
||||
documentation](https://learn.microsoft.com/windows/win32/seccrypto/alg-id)
|
||||
for a list of these algorithms. Also, (since curl 7.77.0)
|
||||
`SCH_USE_STRONG_CRYPTO` can be given to pass that flag to Schannel, lookup the
|
||||
[documentation for the Windows version in
|
||||
use](https://learn.microsoft.com/windows/win32/secauthn/cipher-suites-in-schannel)
|
||||
to see how that affects the cipher suite selection. When not specifying the
|
||||
`--ciphers` and `--tls13-ciphers` options curl passes this flag by default.
|
||||
|
||||
### Examples
|
||||
|
||||
```sh
|
||||
curl \
|
||||
--tls13-ciphers TLS_AES_128_GCM_SHA256:TLS_CHACHA20_POLY1305_SHA256 \
|
||||
--ciphers ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:\
|
||||
ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305 \
|
||||
https://example.com/
|
||||
```
|
||||
|
||||
Restrict ciphers to `aes128-gcm` and `chacha20`. Works with OpenSSL, LibreSSL,
|
||||
mbedTLS and wolfSSL.
|
||||
|
||||
```sh
|
||||
curl \
|
||||
--tlsv1.3 \
|
||||
--tls13-ciphers TLS_AES_128_GCM_SHA256:TLS_CHACHA20_POLY1305_SHA256 \
|
||||
https://example.com/
|
||||
```
|
||||
|
||||
Restrict to only TLS 1.3 with `aes128-gcm` and `chacha20` ciphers. Works with
|
||||
OpenSSL, LibreSSL, mbedTLS, wolfSSL and Schannel.
|
||||
|
||||
```sh
|
||||
curl \
|
||||
--ciphers ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:\
|
||||
ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305 \
|
||||
https://example.com/
|
||||
```
|
||||
|
||||
Restrict TLS 1.2 ciphers to `aes128-gcm` and `chacha20`, use default TLS 1.3
|
||||
ciphers (if TLS 1.3 is available). Works with OpenSSL, LibreSSL, BoringSSL,
|
||||
mbedTLS and wolfSSL.
|
||||
|
||||
## ciphers, the GnuTLS way
|
||||
|
||||
With GnuTLS, curl allows configuration of all TLS parameters via option
|
||||
[`--ciphers`](https://curl.se/docs/manpage.html#--ciphers)
|
||||
or
|
||||
[`CURLOPT_SSL_CIPHER_LIST`](https://curl.se/libcurl/c/CURLOPT_SSL_CIPHER_LIST.html)
|
||||
only. The option
|
||||
[`--tls13-ciphers`](https://curl.se/docs/manpage.html#--tls13-ciphers)
|
||||
or
|
||||
[`CURLOPT_TLS13_CIPHERS`](https://curl.se/libcurl/c/CURLOPT_TLS13_CIPHERS.html)
|
||||
is being ignored.
|
||||
|
||||
`--ciphers` is used to set the GnuTLS **priority string** in
|
||||
the following way:
|
||||
|
||||
* When the set string starts with '+', '-' or '!' it is *appended* to the
|
||||
priority string libcurl itself generates (separated by ':'). This initial
|
||||
priority depends other settings such as CURLOPT_SSLVERSION(3),
|
||||
CURLOPT_TLSAUTH_USERNAME(3) (for SRP) or if HTTP/3 (QUIC)
|
||||
is being negotiated.
|
||||
* Otherwise, the set string fully *replaces* the libcurl generated one. While
|
||||
giving full control to the application, the set priority needs to
|
||||
provide for everything the transfer may need to negotiate. Example: if
|
||||
the set priority only allows TLSv1.2, all HTTP/3 attempts fail.
|
||||
|
||||
Users may specify via `--ciphers` anything that GnuTLS supports: ciphers,
|
||||
key exchange, MAC, compression, TLS versions, signature algorithms, groups,
|
||||
elliptic curves, certificate types. In addition, GnuTLS has a variety of
|
||||
other keywords that tweak its operations. Applications or a system
|
||||
may define new alias names for priority strings that can then be used here.
|
||||
|
||||
Since the order of items in priority strings is significant, it makes no
|
||||
sense for curl to puzzle other ssl options somehow together. `--ciphers`
|
||||
is the single way to change priority.
|
||||
|
||||
### Examples
|
||||
|
||||
```sh
|
||||
curl \
|
||||
--ciphers '-CIPHER_ALL:+AES-128-GCM:+CHACHA20-POLY1305' \
|
||||
https://example.com/
|
||||
```
|
||||
|
||||
Restrict ciphers to `aes128-gcm` and `chacha20` in GnuTLS.
|
||||
|
||||
```sh
|
||||
curl \
|
||||
--ciphers 'NORMAL:-VERS-ALL:+TLS1.3:-AES-256-GCM' \
|
||||
https://example.com/
|
||||
```
|
||||
|
||||
Restrict to only TLS 1.3 without the `aes256-gcm` cipher.
|
||||
|
||||
```sh
|
||||
curl \
|
||||
--ciphers 'NORMAL:-VERS-ALL:+TLS1.2:-CIPHER_ALL:+CAMELLIA-128-GCM' \
|
||||
https://example.com/
|
||||
```
|
||||
|
||||
Restrict to only TLS 1.2 with the `CAMELLIA-128-GCM` cipher.
|
||||
|
||||
## Further reading
|
||||
|
||||
- [OpenSSL cipher suite names documentation](https://docs.openssl.org/master/man1/openssl-ciphers/#cipher-suite-names)
|
||||
- [wolfSSL cipher support documentation](https://www.wolfssl.com/documentation/manuals/wolfssl/chapter04.html#cipher-support)
|
||||
- [mbedTLS cipher suites reference](https://mbed-tls.readthedocs.io/projects/api/en/development/api/file/ssl__ciphersuites_8h/)
|
||||
- [Schannel cipher suites documentation](https://learn.microsoft.com/windows/win32/secauthn/cipher-suites-in-schannel)
|
||||
- [IANA cipher suites list](https://www.iana.org/assignments/tls-parameters/tls-parameters.xhtml#tls-parameters-4)
|
||||
- [Wikipedia cipher suite article](https://en.wikipedia.org/wiki/Cipher_suite)
|
||||
- [GnuTLS Priority Strings](https://gnutls.org/manual/html_node/Priority-Strings.html)
|
||||
22
OGP64/usr/share/doc/curl/COPYING
Normal file
22
OGP64/usr/share/doc/curl/COPYING
Normal file
|
|
@ -0,0 +1,22 @@
|
|||
COPYRIGHT AND PERMISSION NOTICE
|
||||
|
||||
Copyright (c) 1996 - 2026, Daniel Stenberg, <daniel@haxx.se>, and many
|
||||
contributors, see the THANKS file.
|
||||
|
||||
All rights reserved.
|
||||
|
||||
Permission to use, copy, modify, and distribute this software for any purpose
|
||||
with or without fee is hereby granted, provided that the above copyright
|
||||
notice and this permission notice appear in all copies.
|
||||
|
||||
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF THIRD PARTY RIGHTS. IN
|
||||
NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM,
|
||||
DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR
|
||||
OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE
|
||||
OR OTHER DEALINGS IN THE SOFTWARE.
|
||||
|
||||
Except as contained in this notice, the name of a copyright holder shall not
|
||||
be used in advertising or otherwise to promote the sale, use or other dealings
|
||||
in this Software without prior written authorization of the copyright holder.
|
||||
1427
OGP64/usr/share/doc/curl/FAQ.md
Normal file
1427
OGP64/usr/share/doc/curl/FAQ.md
Normal file
File diff suppressed because it is too large
Load diff
249
OGP64/usr/share/doc/curl/FEATURES.md
Normal file
249
OGP64/usr/share/doc/curl/FEATURES.md
Normal file
|
|
@ -0,0 +1,249 @@
|
|||
<!--
|
||||
Copyright (C) Daniel Stenberg, <daniel@haxx.se>, et al.
|
||||
|
||||
SPDX-License-Identifier: curl
|
||||
-->
|
||||
|
||||
# Features -- what curl can do
|
||||
|
||||
## curl tool
|
||||
|
||||
- config file support
|
||||
- multiple URLs in a single command line
|
||||
- range "globbing" support: [0-13], {one,two,three}
|
||||
- multiple file upload on a single command line
|
||||
- redirect stderr
|
||||
- parallel transfers
|
||||
|
||||
## libcurl
|
||||
|
||||
- URL RFC 3986 syntax
|
||||
- custom maximum download time
|
||||
- custom lowest download speed acceptable
|
||||
- custom output result after completion
|
||||
- guesses protocol from hostname unless specified
|
||||
- supports .netrc
|
||||
- progress bar with time statistics while downloading
|
||||
- standard proxy environment variables support
|
||||
- have run on 101 operating systems and 28 CPU architectures
|
||||
- selectable network interface for outgoing traffic
|
||||
- IPv6 support on Unix and Windows
|
||||
- happy eyeballs dual-stack IPv4 + IPv6 connects
|
||||
- persistent connections
|
||||
- SOCKS 4 + 5 support, with or without local name resolving
|
||||
- *pre-proxy* support, for *proxy chaining*
|
||||
- supports username and password in proxy environment variables
|
||||
- operations through HTTP proxy "tunnel" (using CONNECT)
|
||||
- replaceable memory functions (malloc, free, realloc, etc)
|
||||
- asynchronous name resolving
|
||||
- both a push and a pull style interface
|
||||
- international domain names (IDN)
|
||||
- transfer rate limiting
|
||||
- stable API and ABI
|
||||
- TCP keep alive
|
||||
- TCP Fast Open
|
||||
- DNS cache (that can be shared between transfers)
|
||||
- non-blocking single-threaded parallel transfers
|
||||
- Unix domain sockets to server or proxy
|
||||
- DNS-over-HTTPS
|
||||
- uses non-blocking name resolves
|
||||
- selectable name resolver backend
|
||||
|
||||
## URL API
|
||||
|
||||
- parses RFC 3986 URLs
|
||||
- generates URLs from individual components
|
||||
- manages "redirects"
|
||||
|
||||
## Header API
|
||||
|
||||
- easy access to HTTP response headers, from all contexts
|
||||
- named headers
|
||||
- iterate over headers
|
||||
|
||||
## TLS
|
||||
|
||||
- selectable TLS backend(s)
|
||||
- TLS False Start
|
||||
- TLS version control
|
||||
- TLS session resumption
|
||||
- key pinning
|
||||
- mutual authentication
|
||||
- Use dedicated CA cert bundle
|
||||
- Use OS-provided CA store
|
||||
- separate TLS options for HTTPS proxy
|
||||
|
||||
## HTTP
|
||||
|
||||
- HTTP/0.9 responses are optionally accepted
|
||||
- HTTP/1.0
|
||||
- HTTP/1.1
|
||||
- HTTP/2, including multiplexing and server push
|
||||
- GET
|
||||
- PUT
|
||||
- HEAD
|
||||
- POST
|
||||
- multipart formpost (RFC 1867-style)
|
||||
- authentication: Basic, Digest, NTLM (9) and Negotiate (SPNEGO)
|
||||
to server and proxy
|
||||
- resume transfers
|
||||
- follow redirects
|
||||
- maximum amount of redirects to follow
|
||||
- custom HTTP request
|
||||
- cookie get/send fully parsed
|
||||
- reads/writes the Netscape cookie file format
|
||||
- custom headers (replace/remove internally generated headers)
|
||||
- custom user-agent string
|
||||
- custom referrer string
|
||||
- range
|
||||
- proxy authentication
|
||||
- time conditions
|
||||
- via HTTP proxy, HTTPS proxy or SOCKS proxy
|
||||
- HTTP/2 or HTTP/1.1 to HTTPS proxy
|
||||
- retrieve file modification date
|
||||
- Content-Encoding support for deflate, gzip, brotli and zstd
|
||||
- "Transfer-Encoding: chunked" support in uploads
|
||||
- HSTS
|
||||
- alt-svc
|
||||
- ETags
|
||||
- HTTP/1.1 trailers, both sending and getting
|
||||
|
||||
## HTTPS
|
||||
|
||||
- HTTP/3
|
||||
- using client certificates
|
||||
- verify server certificate
|
||||
- via HTTP proxy, HTTPS proxy or SOCKS proxy
|
||||
- select desired encryption
|
||||
- select usage of a specific TLS version
|
||||
- ECH
|
||||
|
||||
## FTP
|
||||
|
||||
- download
|
||||
- authentication
|
||||
- Kerberos 5
|
||||
- active/passive using PORT, EPRT, PASV or EPSV
|
||||
- single file size information (compare to HTTP HEAD)
|
||||
- 'type=' URL support
|
||||
- directory listing
|
||||
- directory listing names-only
|
||||
- upload
|
||||
- upload append
|
||||
- upload via http-proxy as HTTP PUT
|
||||
- download resume
|
||||
- upload resume
|
||||
- custom ftp commands (before and/or after the transfer)
|
||||
- simple "range" support
|
||||
- via HTTP proxy, HTTPS proxy or SOCKS proxy
|
||||
- all operations can be tunneled through proxy
|
||||
- customizable to retrieve file modification date
|
||||
- no directory depth limit
|
||||
|
||||
## FTPS
|
||||
|
||||
- implicit `ftps://` support that use SSL on both connections
|
||||
- explicit "AUTH TLS" and "AUTH SSL" usage to "upgrade" plain `ftp://`
|
||||
connection to use SSL for both or one of the connections
|
||||
|
||||
## SSH (both SCP and SFTP)
|
||||
|
||||
- selectable SSH backend
|
||||
- known hosts support
|
||||
- public key fingerprinting
|
||||
- both password and public key auth
|
||||
|
||||
## SFTP
|
||||
|
||||
- both password and public key auth
|
||||
- with custom commands sent before/after the transfer
|
||||
- directory listing
|
||||
|
||||
## TFTP
|
||||
|
||||
- download
|
||||
- upload
|
||||
|
||||
## TELNET
|
||||
|
||||
- connection negotiation
|
||||
- custom telnet options
|
||||
- stdin/stdout I/O
|
||||
|
||||
## LDAP
|
||||
|
||||
- full LDAP URL support
|
||||
|
||||
## DICT
|
||||
|
||||
- extended DICT URL support
|
||||
|
||||
## FILE
|
||||
|
||||
- URL support
|
||||
- upload
|
||||
- resume
|
||||
|
||||
## SMB
|
||||
|
||||
- SMBv1 over TCP and SSL
|
||||
- download
|
||||
- upload
|
||||
- authentication with NTLMv1
|
||||
|
||||
## SMTP
|
||||
|
||||
- authentication: Plain, Login, CRAM-MD5, Digest-MD5, NTLM, Kerberos 5 and
|
||||
External
|
||||
- send emails
|
||||
- mail from support
|
||||
- mail size support
|
||||
- mail auth support for trusted server-to-server relaying
|
||||
- multiple recipients
|
||||
- via http-proxy
|
||||
|
||||
## SMTPS
|
||||
|
||||
- implicit `smtps://` support
|
||||
- explicit "STARTTLS" usage to "upgrade" plain `smtp://` connections to use SSL
|
||||
- via http-proxy
|
||||
|
||||
## POP3
|
||||
|
||||
- authentication: Clear Text, APOP and SASL
|
||||
- SASL based authentication: Plain, Login, CRAM-MD5, Digest-MD5, NTLM,
|
||||
Kerberos 5 and External
|
||||
- list emails
|
||||
- retrieve emails
|
||||
- enhanced command support for: CAPA, DELE, TOP, STAT, UIDL and NOOP via
|
||||
custom requests
|
||||
- via http-proxy
|
||||
|
||||
## POP3S
|
||||
|
||||
- implicit `pop3s://` support
|
||||
- explicit `STLS` usage to "upgrade" plain `pop3://` connections to use SSL
|
||||
- via http-proxy
|
||||
|
||||
## IMAP
|
||||
|
||||
- authentication: Clear Text and SASL
|
||||
- SASL based authentication: Plain, Login, CRAM-MD5, Digest-MD5, NTLM,
|
||||
Kerberos 5 and External
|
||||
- list the folders of a mailbox
|
||||
- select a mailbox with support for verifying the `UIDVALIDITY`
|
||||
- fetch emails with support for specifying the UID and SECTION
|
||||
- upload emails via the append command
|
||||
- enhanced command support for: EXAMINE, CREATE, DELETE, RENAME, STATUS,
|
||||
STORE, COPY and UID via custom requests
|
||||
- via http-proxy
|
||||
|
||||
## IMAPS
|
||||
|
||||
- implicit `imaps://` support
|
||||
- explicit "STARTTLS" usage to "upgrade" plain `imap://` connections to use SSL
|
||||
- via http-proxy
|
||||
|
||||
## MQTT
|
||||
|
||||
- Subscribe to and publish topics using URL scheme `mqtt://broker/topic`
|
||||
171
OGP64/usr/share/doc/curl/HTTP-COOKIES.md
Normal file
171
OGP64/usr/share/doc/curl/HTTP-COOKIES.md
Normal file
|
|
@ -0,0 +1,171 @@
|
|||
<!--
|
||||
Copyright (C) Daniel Stenberg, <daniel@haxx.se>, et al.
|
||||
|
||||
SPDX-License-Identifier: curl
|
||||
-->
|
||||
|
||||
# HTTP Cookies
|
||||
|
||||
## Cookie overview
|
||||
|
||||
Cookies are `name=contents` pairs that an HTTP server tells the client to
|
||||
hold and then the client sends back those to the server on subsequent
|
||||
requests to the same domains and paths for which the cookies were set.
|
||||
|
||||
Cookies are either "session cookies" which typically are forgotten when the
|
||||
session is over which is often translated to equal when browser quits, or
|
||||
the cookies are not session cookies they have expiration dates after which
|
||||
the client throws them away.
|
||||
|
||||
Cookies are set to the client with the Set-Cookie: header and are sent to
|
||||
servers with the Cookie: header.
|
||||
|
||||
For a long time, the only spec explaining how to use cookies was the
|
||||
original [Netscape spec from 1994](https://curl.se/rfc/cookie_spec.html).
|
||||
|
||||
In 2011, [RFC 6265](https://datatracker.ietf.org/doc/html/rfc6265) was finally
|
||||
published and details how cookies work within HTTP. In 2016, an update which
|
||||
added support for prefixes was
|
||||
[proposed](https://datatracker.ietf.org/doc/html/draft-ietf-httpbis-cookie-prefixes-00),
|
||||
and in 2017, another update was
|
||||
[drafted](https://datatracker.ietf.org/doc/html/draft-ietf-httpbis-cookie-alone-01)
|
||||
to deprecate modification of 'secure' cookies from non-secure origins. Both
|
||||
of these drafts have been incorporated into a proposal to
|
||||
[replace](https://datatracker.ietf.org/doc/html/draft-ietf-httpbis-rfc6265bis-11)
|
||||
RFC 6265. Cookie prefixes and secure cookie modification protection has been
|
||||
implemented by curl.
|
||||
|
||||
curl considers `http://localhost` to be a *secure context*, meaning that it
|
||||
allows and uses cookies marked with the `secure` keyword even when done over
|
||||
plain HTTP for this host. curl does this to match how popular browsers work
|
||||
with secure cookies.
|
||||
|
||||
## Super cookies
|
||||
|
||||
A single cookie can be set for a domain that matches multiple hosts. Like if
|
||||
set for `example.com` it gets sent to both `aa.example.com` as well as
|
||||
`bb.example.com`.
|
||||
|
||||
A challenge with this concept is that there are certain domains for which
|
||||
cookies should not be allowed at all, because they are *Public
|
||||
Suffixes*. Similarly, a client never accepts cookies set directly for the
|
||||
top-level domain like for example `.com`. Cookies set for *too broad*
|
||||
domains are generally referred to as *super cookies*.
|
||||
|
||||
If curl is built with PSL (**Public Suffix List**) support, it detects and
|
||||
discards cookies that are specified for such suffix domains that should not
|
||||
be allowed to have cookies.
|
||||
|
||||
if curl is *not* built with PSL support, it has no ability to stop super
|
||||
cookies.
|
||||
|
||||
## Cookies saved to disk
|
||||
|
||||
Netscape once created a file format for storing cookies on disk so that they
|
||||
would survive browser restarts. curl adopted that file format to allow
|
||||
sharing the cookies with browsers, only to see browsers move away from that
|
||||
format. Modern browsers no longer use it, while curl still does.
|
||||
|
||||
The Netscape cookie file format stores one cookie per physical line in the
|
||||
file with a bunch of associated meta data, each field separated with
|
||||
TAB. That file is called the cookie jar in curl terminology.
|
||||
|
||||
When libcurl saves a cookie jar, it creates a file header of its own in
|
||||
which there is a URL mention that links to the web version of this document.
|
||||
|
||||
## Cookie file format
|
||||
|
||||
The cookie file format is text based and stores one cookie per line. Lines
|
||||
that start with `#` are treated as comments. An exception is lines that
|
||||
start with `#HttpOnly_`, which is a prefix for cookies that have the
|
||||
`HttpOnly` attribute set.
|
||||
|
||||
Each line that specifies a single cookie consists of seven text fields
|
||||
separated with TAB characters. A valid line must end with a newline
|
||||
character.
|
||||
|
||||
### Fields in the file
|
||||
|
||||
Field number, what type and example data and the meaning of it:
|
||||
|
||||
0. string `example.com` - the domain name
|
||||
1. boolean `FALSE` - include subdomains
|
||||
2. string `/foobar/` - path
|
||||
3. boolean `TRUE` - send/receive over HTTPS only
|
||||
4. number `1462299217` - expires at - seconds since Jan 1st 1970, or 0
|
||||
5. string `person` - name of the cookie
|
||||
6. string `daniel` - value of the cookie
|
||||
|
||||
## Cookies with curl the command line tool
|
||||
|
||||
curl has a full cookie "engine" built in. If you activate it, you can have
|
||||
curl receive and send cookies exactly as mandated in the specs.
|
||||
|
||||
Command line options:
|
||||
|
||||
[`-b, --cookie`](https://curl.se/docs/manpage.html#-b)
|
||||
|
||||
tell curl a file to read cookies from and start the cookie engine, or if it
|
||||
is not a file it passes on the given string. `-b name=var` works and so does
|
||||
`-b cookiefile`.
|
||||
|
||||
[`-j, --junk-session-cookies`](https://curl.se/docs/manpage.html#-j)
|
||||
|
||||
when used in combination with -b, it skips all "session cookies" on load so
|
||||
as to appear to start a new cookie session.
|
||||
|
||||
[`-c, --cookie-jar`](https://curl.se/docs/manpage.html#-c)
|
||||
|
||||
tell curl to start the cookie engine and write cookies to the given file
|
||||
after the request(s)
|
||||
|
||||
## Cookies with libcurl
|
||||
|
||||
libcurl offers several ways to enable and interface the cookie engine. These
|
||||
options are the ones provided by the native API. libcurl bindings may offer
|
||||
access to them using other means.
|
||||
|
||||
[`CURLOPT_COOKIE`](https://curl.se/libcurl/c/CURLOPT_COOKIE.html)
|
||||
|
||||
Is used when you want to specify the exact contents of a cookie header to
|
||||
send to the server.
|
||||
|
||||
[`CURLOPT_COOKIEFILE`](https://curl.se/libcurl/c/CURLOPT_COOKIEFILE.html)
|
||||
|
||||
Tell libcurl to activate the cookie engine, and to read the initial set of
|
||||
cookies from the given file. Read-only.
|
||||
|
||||
[`CURLOPT_COOKIEJAR`](https://curl.se/libcurl/c/CURLOPT_COOKIEJAR.html)
|
||||
|
||||
Tell libcurl to activate the cookie engine, and when the easy handle is
|
||||
closed save all known cookies to the given cookie jar file. Write-only.
|
||||
|
||||
[`CURLOPT_COOKIELIST`](https://curl.se/libcurl/c/CURLOPT_COOKIELIST.html)
|
||||
|
||||
Provide detailed information about a single cookie to add to the internal
|
||||
storage of cookies. Pass in the cookie as an HTTP header with all the
|
||||
details set, or pass in a line from a Netscape cookie file. This option can
|
||||
also be used to flush the cookies etc.
|
||||
|
||||
[`CURLOPT_COOKIESESSION`](https://curl.se/libcurl/c/CURLOPT_COOKIESESSION.html)
|
||||
|
||||
Tell libcurl to ignore all cookies it is about to load that are session
|
||||
cookies.
|
||||
|
||||
[`CURLINFO_COOKIELIST`](https://curl.se/libcurl/c/CURLINFO_COOKIELIST.html)
|
||||
|
||||
Extract cookie information from the internal cookie storage as a linked
|
||||
list.
|
||||
|
||||
## Cookies with JavaScript
|
||||
|
||||
These days a lot of the web is built up by JavaScript. The web browser loads
|
||||
complete programs that render the page you see. These JavaScript programs
|
||||
can also set and access cookies.
|
||||
|
||||
Since curl and libcurl are plain HTTP clients without any knowledge of or
|
||||
capability to handle JavaScript, such cookies are not detected or used.
|
||||
|
||||
Often, if you want to mimic what a browser does on such websites, you can
|
||||
record web browser HTTP traffic when using such a site and then repeat the
|
||||
cookie operations using curl or libcurl.
|
||||
582
OGP64/usr/share/doc/curl/KNOWN_BUGS.md
Normal file
582
OGP64/usr/share/doc/curl/KNOWN_BUGS.md
Normal file
|
|
@ -0,0 +1,582 @@
|
|||
<!--
|
||||
Copyright (C) Daniel Stenberg, <daniel@haxx.se>, et al.
|
||||
|
||||
SPDX-License-Identifier: curl
|
||||
-->
|
||||
|
||||
# Known bugs intro
|
||||
|
||||
These are problems and bugs known to exist at the time of this release. Feel
|
||||
free to join in and help us correct one or more of these. Also be sure to
|
||||
check the changelog of the current development status, as one or more of these
|
||||
problems may have been fixed or changed somewhat since this was written.
|
||||
|
||||
# TLS
|
||||
|
||||
## IMAPS connection fails with Rustls error
|
||||
|
||||
[curl issue 10457](https://github.com/curl/curl/issues/10457)
|
||||
|
||||
## Access violation sending client cert with Schannel
|
||||
|
||||
When using Schannel to do client certs, curl sets `PKCS12_NO_PERSIST_KEY` to
|
||||
avoid leaking the private key into the filesystem. Unfortunately that flag
|
||||
instead seems to trigger a crash.
|
||||
|
||||
See [curl issue 17626](https://github.com/curl/curl/issues/17626)
|
||||
|
||||
## Client cert handling with Issuer `DN` differs between backends
|
||||
|
||||
When the specified client certificate does not match any of the
|
||||
server-specified `DN` fields, the OpenSSL and GnuTLS backends behave
|
||||
differently. The GitHub discussion may contain a solution.
|
||||
|
||||
See [curl issue 1411](https://github.com/curl/curl/issues/1411)
|
||||
|
||||
## Client cert (MTLS) issues with Schannel
|
||||
|
||||
See [curl issue 3145](https://github.com/curl/curl/issues/3145)
|
||||
|
||||
## Schannel TLS 1.2 handshake bug in old Windows versions
|
||||
|
||||
In old versions of Windows such as 7 and 8.1 the Schannel TLS 1.2 handshake
|
||||
implementation likely has a bug that can rarely cause the key exchange to
|
||||
fail, resulting in error SEC_E_BUFFER_TOO_SMALL or SEC_E_MESSAGE_ALTERED.
|
||||
|
||||
[curl issue 5488](https://github.com/curl/curl/issues/5488)
|
||||
|
||||
## `CURLOPT_CERTINFO` results in `CURLE_OUT_OF_MEMORY` with Schannel
|
||||
|
||||
[curl issue 8741](https://github.com/curl/curl/issues/8741)
|
||||
|
||||
## mbedTLS and CURLE_AGAIN handling
|
||||
|
||||
[curl issue 15801](https://github.com/curl/curl/issues/15801)
|
||||
|
||||
## Native CA roots incomplete on Windows with OpenSSL (or fork)
|
||||
|
||||
Certain Windows installations may be missing CA roots.
|
||||
|
||||
[curl issue 20897](https://github.com/curl/curl/issues/20897)
|
||||
[curl issue 12303](https://github.com/curl/curl/issues/12303)
|
||||
|
||||
# Email protocols
|
||||
|
||||
## IMAP `SEARCH ALL` truncated response
|
||||
|
||||
IMAP `SEARCH ALL` truncates output on large boxes. "A quick search of the code
|
||||
reveals that `pingpong.c` contains some truncation code, at line 408, when it
|
||||
deems the server response to be too large truncating it to 40 characters"
|
||||
|
||||
https://curl.se/bug/view.cgi?id=1366
|
||||
|
||||
## No disconnect command
|
||||
|
||||
The disconnect commands (`LOGOUT` and `QUIT`) may not be sent by IMAP, POP3
|
||||
and SMTP if a failure occurs during the authentication phase of a connection.
|
||||
|
||||
## `AUTH PLAIN` for SMTP is not working on all servers
|
||||
|
||||
Specifying `--login-options AUTH=PLAIN` on the command line does not seem to
|
||||
work correctly.
|
||||
|
||||
See [curl issue 4080](https://github.com/curl/curl/issues/4080)
|
||||
|
||||
## `APOP` authentication fails on POP3
|
||||
|
||||
See [curl issue 10073](https://github.com/curl/curl/issues/10073)
|
||||
|
||||
## POP3 issue when reading small chunks
|
||||
|
||||
CURL_DBG_SOCK_RMAX=4 ./runtests.pl -v 982
|
||||
|
||||
See [curl issue 12063](https://github.com/curl/curl/issues/12063)
|
||||
|
||||
# Command line
|
||||
|
||||
## `-T /dev/stdin` may upload with an incorrect content length
|
||||
|
||||
`-T` stats the path to figure out its size in bytes to use it as
|
||||
`Content-Length` if it is a regular file.
|
||||
|
||||
The problem with that is that on BSD and some other UNIX systems (not Linux),
|
||||
open(path) may not give you a file descriptor with a 0 offset from the start
|
||||
of the file.
|
||||
|
||||
See [curl issue 12177](https://github.com/curl/curl/issues/12177)
|
||||
|
||||
## `-T -` always uploads chunked
|
||||
|
||||
When the `<` shell operator is used. curl should realize that stdin is a
|
||||
regular file in this case, and that it can do a non-chunked upload, like it
|
||||
would do if you used `-T` file.
|
||||
|
||||
See [curl issue 12171](https://github.com/curl/curl/issues/12171)
|
||||
|
||||
## Windows stdin relay accepts unauthenticated local connections
|
||||
|
||||
curl features a Windows-only stdin relay in `src/tool_doswin.c` that creates a
|
||||
loopback TCP listener and spawns a thread to accept the first incoming
|
||||
connection, then forwards stdin to it. There is no authentication or peer
|
||||
validation on the accepted socket. A local attacker can race to connect to the
|
||||
ephemeral loopback port (discoverable via local port enumeration/scan) before
|
||||
curl connects, causing the thread to send stdin/upload data to the attacker or
|
||||
to disrupt the transfer.
|
||||
|
||||
The function should verify the client-side with a random number similar to the
|
||||
socketpair emulation function in libcurl. It cannot verify the source address
|
||||
and port since there is this widespread habit on Windows to run tools that
|
||||
MITM even local TCP connections for security.
|
||||
|
||||
# Build and portability issues
|
||||
|
||||
## OS400 port requires deprecated IBM library
|
||||
|
||||
curl for OS400 requires `QADRT` to build, which provides ASCII wrappers for
|
||||
libc/POSIX functions in the ILE, but IBM no longer supports or even offers
|
||||
this library to download.
|
||||
|
||||
See [curl issue 5176](https://github.com/curl/curl/issues/5176)
|
||||
|
||||
## `curl-config --libs` contains private details
|
||||
|
||||
`curl-config --libs` include details set in `LDFLAGS` when configure is run
|
||||
that might be needed only for building libcurl. Further, `curl-config
|
||||
--cflags` suffers from the same effects with `CFLAGS`/`CPPFLAGS`.
|
||||
|
||||
## `LDFLAGS` passed too late making libs linked incorrectly
|
||||
|
||||
Compiling latest curl on HP-UX and linking against a custom OpenSSL (which is
|
||||
on the default loader/linker path), fails because the generated Makefile has
|
||||
`LDFLAGS` passed on after `LIBS`.
|
||||
|
||||
See [curl issue 14893](https://github.com/curl/curl/issues/14893)
|
||||
|
||||
## Cygwin: make install installs curl-config.1 twice
|
||||
|
||||
[curl issue 8839](https://github.com/curl/curl/issues/8839)
|
||||
|
||||
## flaky CI builds
|
||||
|
||||
We run many CI builds for each commit and PR on GitHub, and especially a
|
||||
number of the Windows builds are flaky. This means that we rarely get all CI
|
||||
builds go green and complete without errors. This is unfortunate as it makes
|
||||
us sometimes miss actual build problems and it is surprising to newcomers to
|
||||
the project who (rightfully) do not expect this.
|
||||
|
||||
See [curl issue 6972](https://github.com/curl/curl/issues/6972)
|
||||
|
||||
## long paths are not fully supported on Windows
|
||||
|
||||
curl on Windows cannot access long paths (paths longer than 260 characters).
|
||||
As a workaround, the Windows path prefix `\\?\` which disables all path
|
||||
interpretation may work to allow curl to access the path. For example:
|
||||
`\\?\c:\longpath`.
|
||||
|
||||
See [curl issue 8361](https://github.com/curl/curl/issues/8361)
|
||||
|
||||
## Unicode on Windows
|
||||
|
||||
Passing in a Unicode filename with -o:
|
||||
|
||||
[curl issue 11461](https://github.com/curl/curl/issues/11461)
|
||||
|
||||
Passing in Unicode character with -d:
|
||||
|
||||
[curl issue 12231](https://github.com/curl/curl/issues/12231)
|
||||
|
||||
Windows Unicode builds use the home directory in current locale.
|
||||
|
||||
The Windows Unicode builds of curl use the current locale, but expect Unicode
|
||||
UTF-8 encoded paths for internal use such as open, access and stat. The user's
|
||||
home directory is retrieved via curl_getenv in the current locale and not as
|
||||
UTF-8 encoded Unicode.
|
||||
|
||||
See [curl pull request 7252](https://github.com/curl/curl/pull/7252) and [curl pull request 7281](https://github.com/curl/curl/pull/7281)
|
||||
|
||||
Cannot handle Unicode arguments in non-Unicode builds on Windows
|
||||
|
||||
If a URL or filename cannot be encoded using the user's current code page then
|
||||
it can only be encoded properly in the Unicode character set. Windows uses
|
||||
UTF-16 encoding for Unicode and stores it in wide characters, however curl and
|
||||
libcurl are not equipped for that at the moment except when built with
|
||||
_UNICODE and UNICODE defined. Except for Cygwin, Windows cannot use UTF-8 as a
|
||||
locale.
|
||||
|
||||
https://curl.se/bug/?i=345
|
||||
https://curl.se/bug/?i=731
|
||||
https://curl.se/bug/?i=3747
|
||||
|
||||
NTLM authentication and Unicode
|
||||
|
||||
NTLM authentication involving Unicode username or password only works properly
|
||||
if built with UNICODE defined together with the Schannel backend. The original
|
||||
problem was mentioned in: https://curl.se/mail/lib-2009-10/0024.html and
|
||||
https://curl.se/bug/view.cgi?id=896
|
||||
|
||||
The Schannel version verified to work as mentioned in
|
||||
https://curl.se/mail/lib-2012-07/0073.html
|
||||
|
||||
# Authentication
|
||||
|
||||
## Digest `auth-int` for PUT/POST
|
||||
|
||||
We do not support auth-int for Digest using PUT or POST
|
||||
|
||||
## MIT Kerberos for Windows build
|
||||
|
||||
libcurl fails to build with MIT Kerberos for Windows (`KfW`) due to its
|
||||
library header files exporting symbols/macros that should be kept private to
|
||||
the library.
|
||||
|
||||
## NTLM in system context uses wrong name
|
||||
|
||||
NTLM authentication using SSPI (on Windows) when (lib)curl is running in
|
||||
"system context" makes it use wrong(?) username - at least when compared to
|
||||
what `winhttp` does. See https://curl.se/bug/view.cgi?id=535
|
||||
|
||||
## NTLM does not support password with Unicode 'SECTION SIGN' character
|
||||
|
||||
Code point: U+00A7
|
||||
|
||||
https://en.wikipedia.org/wiki/Section_sign
|
||||
[curl issue 2120](https://github.com/curl/curl/issues/2120)
|
||||
|
||||
## libcurl can fail to try alternatives with `--proxy-any`
|
||||
|
||||
When connecting via a proxy using `--proxy-any`, a failure to establish an
|
||||
authentication causes libcurl to abort trying other options if the failed
|
||||
method has a higher preference than the alternatives. As an example,
|
||||
`--proxy-any` against a proxy which advertise Negotiate and NTLM, but which
|
||||
fails to set up Kerberos authentication does not proceed to try authentication
|
||||
using NTLM.
|
||||
|
||||
[curl issue 876](https://github.com/curl/curl/issues/876)
|
||||
|
||||
## Do not clear digest for single realm
|
||||
|
||||
[curl issue 3267](https://github.com/curl/curl/issues/3267)
|
||||
|
||||
## SHA-256 digest not supported in Windows SSPI builds
|
||||
|
||||
Windows builds of curl that have SSPI enabled use the native Windows API calls
|
||||
to create authentication strings. The call to `InitializeSecurityContext` fails
|
||||
with `SEC_E_QOP_NOT_SUPPORTED` which causes curl to fail with
|
||||
`CURLE_AUTH_ERROR`.
|
||||
|
||||
Microsoft does not document supported digest algorithms and that `SEC_E` error
|
||||
code is not a documented error for `InitializeSecurityContext` (digest).
|
||||
|
||||
[curl issue 6302](https://github.com/curl/curl/issues/6302)
|
||||
|
||||
## curl never completes Negotiate over HTTP
|
||||
|
||||
Apparently it is not working correctly...?
|
||||
|
||||
See [curl issue 5235](https://github.com/curl/curl/issues/5235)
|
||||
|
||||
## Negotiate on Windows fails
|
||||
|
||||
When using `--negotiate` (or NTLM) with curl on Windows, SSL/TLS handshake
|
||||
fails despite having a valid kerberos ticket cached. Works without any issue
|
||||
in Unix/Linux.
|
||||
|
||||
[curl issue 5881](https://github.com/curl/curl/issues/5881)
|
||||
|
||||
## Negotiate authentication against Hadoop
|
||||
|
||||
[curl issue 8264](https://github.com/curl/curl/issues/8264)
|
||||
|
||||
# FTP
|
||||
|
||||
## FTP with ACCT
|
||||
|
||||
When doing an operation over FTP that requires the `ACCT` command (but not when
|
||||
logging in), the operation fails since libcurl does not detect this and thus
|
||||
fails to issue the correct command: https://curl.se/bug/view.cgi?id=635
|
||||
|
||||
## FTPS server compatibility on Windows with Schannel
|
||||
|
||||
FTPS is not widely used with the Schannel TLS backend and so there may be more
|
||||
bugs compared to other TLS backends such as OpenSSL. In the past users have
|
||||
reported hanging and failed connections. It is likely some changes to curl
|
||||
since then fixed the issues. None of the reported issues can be reproduced any
|
||||
longer.
|
||||
|
||||
If you encounter an issue connecting to your server via FTPS with the latest
|
||||
curl and Schannel then please search for open issues or file a new issue.
|
||||
|
||||
# SFTP and SCP
|
||||
|
||||
## SFTP does not do `CURLOPT_POSTQUOTE` correct
|
||||
|
||||
When libcurl sends `CURLOPT_POSTQUOTE` commands when connected to an SFTP
|
||||
server using the multi interface, the commands are not being sent correctly
|
||||
and instead the connection is canceled (the operation is considered done)
|
||||
prematurely. There is a half-baked (busy-looping) patch provided in the bug
|
||||
report but it cannot be accepted as-is. See
|
||||
https://curl.se/bug/view.cgi?id=748
|
||||
|
||||
## Remote recursive folder creation with SFTP
|
||||
|
||||
On this servers, the curl fails to create directories on the remote server
|
||||
even when the `CURLOPT_FTP_CREATE_MISSING_DIRS` option is set.
|
||||
|
||||
See [curl issue 5204](https://github.com/curl/curl/issues/5204)
|
||||
|
||||
## libssh blocking and infinite loop problem
|
||||
|
||||
In the `SSH_SFTP_INIT` state for libssh, the ssh session working mode is set
|
||||
to blocking mode. If the network is suddenly disconnected during sftp
|
||||
transmission, curl is stuck, even if curl is configured with a timeout.
|
||||
|
||||
[curl issue 8632](https://github.com/curl/curl/issues/8632)
|
||||
|
||||
## Cygwin: "WARNING: UNPROTECTED PRIVATE KEY FILE!"
|
||||
|
||||
Running SCP and SFTP tests on Cygwin makes this warning message appear.
|
||||
|
||||
[curl issue 11244](https://github.com/curl/curl/issues/11244)
|
||||
|
||||
# Connection
|
||||
|
||||
## `--interface` with link-scoped IPv6 address
|
||||
|
||||
When you give the `--interface` option telling curl to use a specific
|
||||
interface for its outgoing traffic in combination with an IPv6 address in the
|
||||
URL that uses a link-local scope, curl might pick the wrong address from the
|
||||
named interface and the subsequent transfer fails.
|
||||
|
||||
Example command line:
|
||||
|
||||
curl --interface eth0 'http://[fe80:928d:xxff:fexx:xxxx]/'
|
||||
|
||||
The fact that the given IP address is link-scoped should probably be used as
|
||||
input to somehow make curl make a better choice for this.
|
||||
|
||||
[curl issue 14782](https://github.com/curl/curl/issues/14782)
|
||||
|
||||
## Does not acknowledge getaddrinfo sorting policy
|
||||
|
||||
Even if a user edits `/etc/gai.conf` to prefer IPv4, curl still prefers and
|
||||
tries IPv6 addresses first.
|
||||
|
||||
[curl issue 16718](https://github.com/curl/curl/issues/16718)
|
||||
|
||||
## SOCKS-SSPI discards the security context
|
||||
|
||||
After a successful SSPI/GSS-API exchange, the function queries and logs the
|
||||
authenticated username and reports the supported data-protection level, but
|
||||
then immediately deletes the negotiated SSPI security context and frees the
|
||||
credentials before returning. The negotiated context is not stored on the
|
||||
connection and is therefore never used to protect later SOCKS5 traffic.
|
||||
|
||||
## cannot use absolute Unix domain filename for SOCKS on Windows
|
||||
|
||||
curl supports using a Unix domain socket path for speaking SOCKS to a proxy,
|
||||
by providing a filename in the URL used for `-x` (`CURLOPT_PROXY`), but that
|
||||
path cannot be a proper absolute Windows path with a drive letter etc.
|
||||
|
||||
A solution for this probably requires that we add and provide a
|
||||
`--unix-socket` (`CURLOPT_UNIX_SOCKET_PATH`) option alternative for proxy
|
||||
communication.
|
||||
|
||||
See [curl issue 19825](https://github.com/curl/curl/issues/19825)
|
||||
|
||||
# Internals
|
||||
|
||||
## GSSAPI library name + version is missing in `curl_version_info()`
|
||||
|
||||
The struct needs to be expanded and code added to store this info.
|
||||
|
||||
See [curl issue 13492](https://github.com/curl/curl/issues/13492)
|
||||
|
||||
## error buffer not set if connection to multiple addresses fails
|
||||
|
||||
If you ask libcurl to resolve a hostname like example.com to IPv6 addresses
|
||||
when you only have IPv4 connectivity. libcurl fails with
|
||||
`CURLE_COULDNT_CONNECT`, but the error buffer set by `CURLOPT_ERRORBUFFER`
|
||||
remains empty. Issue: [curl issue 544](https://github.com/curl/curl/issues/544)
|
||||
|
||||
## HTTP test server 'connection-monitor' problems
|
||||
|
||||
The `connection-monitor` feature of the HTTP test server does not work
|
||||
properly if some tests are run in unexpected order. Like 1509 and then 1525.
|
||||
|
||||
See [curl issue 868](https://github.com/curl/curl/issues/868)
|
||||
|
||||
## Connection information when using TCP Fast Open
|
||||
|
||||
`CURLINFO_LOCAL_PORT` (and possibly a few other) fails when TCP Fast Open is
|
||||
enabled.
|
||||
|
||||
See [curl issue 1332](https://github.com/curl/curl/issues/1332) and
|
||||
[curl issue 4296](https://github.com/curl/curl/issues/4296)
|
||||
|
||||
## test cases sometimes timeout
|
||||
|
||||
Occasionally, one of the tests timeouts. Inexplicably.
|
||||
|
||||
See [curl issue 13350](https://github.com/curl/curl/issues/13350)
|
||||
|
||||
## `CURLOPT_CONNECT_TO` does not work for HTTPS proxy
|
||||
|
||||
It is unclear if the same option should even cover the proxy connection or if
|
||||
if requires a separate option.
|
||||
|
||||
See [curl issue 14481](https://github.com/curl/curl/issues/14481)
|
||||
|
||||
## WinIDN test failures
|
||||
|
||||
Test 165 disabled when built with WinIDN.
|
||||
|
||||
## setting a disabled option should return `CURLE_NOT_BUILT_IN`
|
||||
|
||||
When curl has been built with specific features or protocols disabled, setting
|
||||
such options with `curl_easy_setopt()` should rather return
|
||||
`CURLE_NOT_BUILT_IN` instead of `CURLE_UNKNOWN_OPTION` to signal the
|
||||
difference to the application
|
||||
|
||||
See [curl issue 15472](https://github.com/curl/curl/issues/15472)
|
||||
|
||||
# LDAP
|
||||
|
||||
## OpenLDAP hangs after returning results
|
||||
|
||||
By configuration defaults, OpenLDAP automatically chase referrals on secondary
|
||||
socket descriptors. The OpenLDAP backend is asynchronous and thus should
|
||||
monitor all socket descriptors involved. Currently, these secondary
|
||||
descriptors are not monitored, causing OpenLDAP library to never receive data
|
||||
from them.
|
||||
|
||||
As a temporary workaround, disable referrals chasing by configuration.
|
||||
|
||||
The fix is not easy: proper automatic referrals chasing requires a synchronous
|
||||
bind callback and monitoring an arbitrary number of socket descriptors for a
|
||||
single easy handle (currently limited to 5).
|
||||
|
||||
Generic LDAP is synchronous: OK.
|
||||
|
||||
See [curl issue 622](https://github.com/curl/curl/issues/622) and
|
||||
https://curl.se/mail/lib-2016-01/0101.html
|
||||
|
||||
## LDAP on Windows does authentication wrong?
|
||||
|
||||
[curl issue 3116](https://github.com/curl/curl/issues/3116)
|
||||
|
||||
## LDAP on Windows does not work
|
||||
|
||||
A simple curl command line getting `ldap://ldap.forumsys.com` returns an error
|
||||
that says `no memory` !
|
||||
|
||||
[curl issue 4261](https://github.com/curl/curl/issues/4261)
|
||||
|
||||
## LDAPS requests to Active Directory server hang
|
||||
|
||||
[curl issue 9580](https://github.com/curl/curl/issues/9580)
|
||||
|
||||
# TCP/IP
|
||||
|
||||
## telnet code does not handle partial writes properly
|
||||
|
||||
It probably does not happen too easily because of how slow and infrequent
|
||||
sends are normally performed.
|
||||
|
||||
## Trying local ports fails on Windows
|
||||
|
||||
This makes `--local-port [range]` to not work since curl cannot properly
|
||||
detect if a port is already in use, so it tries the first port, uses that and
|
||||
then subsequently fails anyway if that was actually in use.
|
||||
|
||||
[curl issue 8112](https://github.com/curl/curl/issues/8112)
|
||||
|
||||
# CMake
|
||||
|
||||
## cmake outputs: no version information available
|
||||
|
||||
Something in the SONAME generation seems to be wrong in the cmake build.
|
||||
|
||||
[curl issue 11158](https://github.com/curl/curl/issues/11158)
|
||||
|
||||
## uses `-lpthread` instead of `Threads::Threads`
|
||||
|
||||
See [curl issue 6166](https://github.com/curl/curl/issues/6166)
|
||||
|
||||
## generated `.pc` file contains strange entries
|
||||
|
||||
The `Libs.private` field of the generated `.pc` file contains `-lgcc -lgcc_s
|
||||
-lc -lgcc -lgcc_s`.
|
||||
|
||||
See [curl issue 6167](https://github.com/curl/curl/issues/6167)
|
||||
|
||||
## CMake build with MIT Kerberos does not work
|
||||
|
||||
Minimum CMake version was bumped in curl 7.71.0 (#5358) Since CMake 3.2
|
||||
try_compile started respecting the `CMAKE_EXE_FLAGS`. The code dealing with
|
||||
MIT Kerberos detection sets few variables to potentially weird mix of space,
|
||||
and ;-separated flags. It had to blow up at some point. All the CMake checks
|
||||
that involve compilation are doomed from that point, the configured tree
|
||||
cannot be built.
|
||||
|
||||
[curl issue 6904](https://github.com/curl/curl/issues/6904)
|
||||
|
||||
# Authentication
|
||||
|
||||
## `--aws-sigv4` does not handle multipart/form-data correctly
|
||||
|
||||
[curl issue 13351](https://github.com/curl/curl/issues/13351)
|
||||
|
||||
# HTTP/2
|
||||
|
||||
## HTTP/2 prior knowledge over proxy
|
||||
|
||||
[curl issue 12641](https://github.com/curl/curl/issues/12641)
|
||||
|
||||
## HTTP/2 frames while in the connection pool kill reuse
|
||||
|
||||
If the server sends HTTP/2 frames (like for example an HTTP/2 PING frame) to
|
||||
curl while the connection is held in curl's connection pool, the socket is
|
||||
found readable when considered for reuse and that makes curl think it is dead
|
||||
and then it is closed and a new connection gets created instead.
|
||||
|
||||
This is *best* fixed by adding monitoring to connections while they are kept
|
||||
in the pool so that pings can be responded to appropriately.
|
||||
|
||||
## `ENHANCE_YOUR_CALM` causes infinite retries
|
||||
|
||||
Infinite retries with 2 parallel requests on one connection receiving `GOAWAY`
|
||||
with `ENHANCE_YOUR_CALM` error code.
|
||||
|
||||
See [curl issue 5119](https://github.com/curl/curl/issues/5119)
|
||||
|
||||
## HTTP/2 + TLS spends a lot of time in recv
|
||||
|
||||
It has been observed that by making the speed limit less accurate we could
|
||||
improve this performance. (by reverting
|
||||
[db5c9f4f9e0779](https://github.com/curl/curl/commit/db5c9f4f9e0779b49624752b135281a0717b277b))
|
||||
Can we find a golden middle ground?
|
||||
|
||||
See https://curl.se/mail/lib-2024-05/0026.html and
|
||||
[curl issue 13416](https://github.com/curl/curl/issues/13416)
|
||||
|
||||
# HTTP/3
|
||||
|
||||
## connection migration does not work
|
||||
|
||||
[curl issue 7695](https://github.com/curl/curl/issues/7695)
|
||||
|
||||
## quiche: QUIC connection is draining
|
||||
|
||||
The transfer ends with error "QUIC connection is draining".
|
||||
|
||||
[curl issue 12037](https://github.com/curl/curl/issues/12037)
|
||||
|
||||
# RTSP
|
||||
|
||||
## Some methods do not support response bodies
|
||||
|
||||
The RTSP implementation is written to assume that a number of RTSP methods
|
||||
always get responses without bodies, even though there seems to be no
|
||||
indication in the RFC that this is always the case.
|
||||
|
||||
[curl issue 12414](https://github.com/curl/curl/issues/12414)
|
||||
257
OGP64/usr/share/doc/curl/MAIL-ETIQUETTE.md
Normal file
257
OGP64/usr/share/doc/curl/MAIL-ETIQUETTE.md
Normal file
|
|
@ -0,0 +1,257 @@
|
|||
<!--
|
||||
Copyright (C) Daniel Stenberg, <daniel@haxx.se>, et al.
|
||||
|
||||
SPDX-License-Identifier: curl
|
||||
-->
|
||||
|
||||
# Mail etiquette
|
||||
|
||||
## About the lists
|
||||
|
||||
### Mailing Lists
|
||||
|
||||
The mailing lists we have are all listed and described on the [curl
|
||||
website](https://curl.se/mail/).
|
||||
|
||||
Each mailing list is targeted to a specific set of users and subjects, please
|
||||
use the one or the ones that suit you the most.
|
||||
|
||||
Each mailing list has hundreds up to thousands of readers, meaning that each
|
||||
mail sent is received and read by a large number of people. People from
|
||||
various cultures, regions, religions and continents.
|
||||
|
||||
### Netiquette
|
||||
|
||||
Netiquette is a common term for how to behave on the Internet. Of course, in
|
||||
each particular group and subculture there are differences in what is
|
||||
acceptable and what is considered good manners.
|
||||
|
||||
This document outlines what we in the curl project consider to be good
|
||||
etiquette, and primarily this focus on how to behave on and how to use our
|
||||
mailing lists.
|
||||
|
||||
### Do Not Mail a Single Individual
|
||||
|
||||
Many people send one question to one person. One person gets many mails, and
|
||||
there is only one person who can give you a reply. The question may be
|
||||
something that other people would also like to ask. These other people have no
|
||||
way to read the reply, but to ask the one person the question. The one person
|
||||
consequently gets overloaded with mail.
|
||||
|
||||
If you really want to contact an individual and perhaps pay for his or her
|
||||
services, by all means go ahead, but if it is another curl question, take it
|
||||
to a suitable list instead.
|
||||
|
||||
### Subscription Required
|
||||
|
||||
All curl mailing lists require that you are subscribed to allow a mail to go
|
||||
through to all the subscribers.
|
||||
|
||||
If you post without being subscribed (or from a different mail address than
|
||||
the one you are subscribed with), your mail is silently discarded. You
|
||||
have to subscribe first, then post.
|
||||
|
||||
The reason for this unfortunate and strict subscription policy is of course to
|
||||
stop spam from pestering the lists.
|
||||
|
||||
### Moderation of new posters
|
||||
|
||||
Several of the curl mailing lists automatically make all posts from new
|
||||
subscribers be moderated. After you have subscribed and sent your first mail
|
||||
to a list, that mail is not let through to the list until a mailing list
|
||||
administrator has verified that it is OK and permits it to get posted.
|
||||
|
||||
Once a first post has been made that proves the sender is actually talking
|
||||
about curl-related subjects, the moderation "flag" is switched off and future
|
||||
posts go through without being moderated.
|
||||
|
||||
The reason for this moderation policy is that we do suffer from spammers who
|
||||
actually subscribe and send spam to our lists.
|
||||
|
||||
### Handling trolls and spam
|
||||
|
||||
Despite our good intentions and hard work to keep spam off the lists and to
|
||||
maintain a friendly and positive atmosphere, there are times when spam and or
|
||||
trolls get through.
|
||||
|
||||
Troll - "someone who posts inflammatory, extraneous, or off-topic messages in
|
||||
an online community"
|
||||
|
||||
Spam - "use of electronic messaging systems to send unsolicited bulk messages"
|
||||
|
||||
No matter what, we NEVER EVER respond to trolls or spammers on the list. If
|
||||
you believe the list admin should do something in particular, contact them
|
||||
off-list. The subject is taken care of as much as possible to prevent repeated
|
||||
offenses, but responding on the list to such messages never leads to anything
|
||||
good and only puts the light even more on the offender: which was the entire
|
||||
purpose of it getting sent to the list in the first place.
|
||||
|
||||
Do not feed the trolls.
|
||||
|
||||
### How to unsubscribe
|
||||
|
||||
You can unsubscribe the same way you subscribed in the first place. You go to
|
||||
the page for the particular mailing list you are subscribed to and you enter
|
||||
your email address and password and press the unsubscribe button.
|
||||
|
||||
Also, the instructions to unsubscribe are included in the headers of every
|
||||
mail that is sent out to all curl related mailing lists and there is a footer
|
||||
in each mail that links to the "admin" page on which you can unsubscribe and
|
||||
change other options.
|
||||
|
||||
You NEVER EVER email the mailing list requesting someone else to take you off
|
||||
the list.
|
||||
|
||||
### I posted, now what?
|
||||
|
||||
If you are not subscribed with the same email address that you used to send
|
||||
the email, your post is silently discarded.
|
||||
|
||||
If you posted for the first time to the mailing list, you first need to wait
|
||||
for an administrator to allow your email to go through (moderated). This
|
||||
normally happens quickly but in case we are asleep, you may have to wait a few
|
||||
hours.
|
||||
|
||||
Once your email goes through it is sent out to several hundred or even
|
||||
thousands of recipients. Your email may cover an area that not that many
|
||||
people know about or are interested in. Or possibly the person who knows about
|
||||
it is on vacation or under a heavy work load right now. You may have to wait
|
||||
for a response and you should not expect to get a response at all. Ideally,
|
||||
you get an answer within a couple of days.
|
||||
|
||||
You do yourself and all of us a service when you include as many details as
|
||||
possible already in your first email. Mention your operating system and
|
||||
environment. Tell us which curl version you are using and tell us what you
|
||||
did, what happened and what you expected would happen. Preferably, show us
|
||||
what you did with details enough to allow others to help point out the problem
|
||||
or repeat the steps in their locations.
|
||||
|
||||
Failing to include details only delays responses and make people respond and
|
||||
ask for more details and you have to send follow-up emails that include them.
|
||||
|
||||
Expect the responses to primarily help YOU debug the issue, or ask YOU
|
||||
questions that can lead you or others towards a solution or explanation to
|
||||
whatever you experience.
|
||||
|
||||
If you are a repeat offender to the guidelines outlined in this document,
|
||||
chances are that people ignore you and your chances to get responses in the
|
||||
future greatly diminish.
|
||||
|
||||
### Your emails are public
|
||||
|
||||
Your email, its contents and all its headers and the details in those headers
|
||||
are received by every subscriber of the mailing list that you send your email
|
||||
to.
|
||||
|
||||
Your email as sent to a curl mailing list ends up in mail archives, on the
|
||||
curl website and elsewhere, for others to see and read. Today and in the
|
||||
future. In addition to the archives, the mail is sent out to thousands of
|
||||
individuals. There is no way to undo a sent email.
|
||||
|
||||
When sending emails to a curl mailing list, do not include sensitive
|
||||
information such as usernames and passwords; use fake ones, temporary ones or
|
||||
remove them completely from the mail. Note that this includes base64 encoded
|
||||
HTTP Basic auth headers.
|
||||
|
||||
This public nature of the curl mailing lists makes automatically inserted mail
|
||||
footers about mails being "private" or "only meant for the recipient" or
|
||||
similar even more silly than usual. Because they are absolutely not private
|
||||
when sent to a public mailing list.
|
||||
|
||||
## Sending mail
|
||||
|
||||
### Reply or New Mail
|
||||
|
||||
Please do not reply to an existing message as a short-cut to post a message to
|
||||
the lists.
|
||||
|
||||
Many mail programs and web archivers use information within mails to keep them
|
||||
together as "threads", as collections of posts that discuss a certain subject.
|
||||
If you do not intend to reply on the same or similar subject, do not hit reply
|
||||
on an existing mail and change the subject, create a new mail.
|
||||
|
||||
### Reply to the List
|
||||
|
||||
When replying to a message from the list, make sure that you do "group reply"
|
||||
or "reply to all", and not reply to the author of the single mail you reply
|
||||
to.
|
||||
|
||||
We are actively discouraging replying to the single person by setting the
|
||||
correct field in outgoing mails back asking for replies to get sent to the
|
||||
mailing list address, making it harder for people to reply to the author only
|
||||
by mistake.
|
||||
|
||||
### Use a Sensible Subject
|
||||
|
||||
Please use a subject of the mail that makes sense and that is related to the
|
||||
contents of your mail. It makes it a lot easier to find your mail afterwards
|
||||
and it makes it easier to track mail threads and topics.
|
||||
|
||||
### Do Not Top-Post
|
||||
|
||||
If you reply to a message, do not use top-posting. Top-posting is when you
|
||||
write the new text at the top of a mail and you insert the previous quoted
|
||||
mail conversation below. It forces users to read the mail in a backwards order
|
||||
to properly understand it.
|
||||
|
||||
This is why top posting is so bad (in top posting order):
|
||||
|
||||
A: Because it messes up the order in which people normally read text.
|
||||
Q: Why is top-posting such a bad thing?
|
||||
A: Top-posting.
|
||||
Q: What is the most annoying thing in email?
|
||||
|
||||
Apart from the screwed up read order (especially when mixed together in a
|
||||
thread when someone responds using the mandated bottom-posting style), it also
|
||||
makes it impossible to quote only parts of the original mail.
|
||||
|
||||
When you reply to a mail. You let the mail client insert the previous mail
|
||||
quoted. Then you put the cursor on the first line of the mail and you move
|
||||
down through the mail, deleting all parts of the quotes that do not add
|
||||
context for your comments. When you want to add a comment you do so, inline,
|
||||
right after the quotes that relate to your comment. Then you continue
|
||||
downwards again.
|
||||
|
||||
When most of the quotes have been removed and you have added your own words,
|
||||
you are done.
|
||||
|
||||
### HTML is not for mails
|
||||
|
||||
Please switch off those HTML encoded messages. You can mail all those funny
|
||||
mails to your friends. We speak plain text mails.
|
||||
|
||||
### Quoting
|
||||
|
||||
Quote as little as possible. Enough to provide the context you cannot leave
|
||||
out.
|
||||
|
||||
### Digest
|
||||
|
||||
We allow subscribers to subscribe to the "digest" version of the mailing
|
||||
lists. A digest is a collection of mails lumped together in one single mail.
|
||||
|
||||
Should you decide to reply to a mail sent out as a digest, there are two
|
||||
things you MUST consider if you really, really cannot subscribe normally
|
||||
instead:
|
||||
|
||||
Cut off all mails and chatter that is not related to the mail you want to
|
||||
reply to.
|
||||
|
||||
Change the subject name to something sensible and related to the subject,
|
||||
preferably even the actual subject of the single mail you wanted to reply to
|
||||
|
||||
### Please Tell Us How You Solved The Problem
|
||||
|
||||
Many people mail questions to the list, people spend some of their time and
|
||||
make an effort in providing good answers to these questions.
|
||||
|
||||
If you are the one who asks, please consider responding once more in case one
|
||||
of the hints was what solved your problems. The guys who write answers feel
|
||||
good to know that they provided a good answer and that you fixed the problem.
|
||||
Far too often, the person who asked the question is never heard from again,
|
||||
and we never get to know if they are gone because the problem was solved or
|
||||
perhaps because the problem was unsolvable.
|
||||
|
||||
Getting the solution posted also helps other users that experience the same
|
||||
problem(s). They get to see (possibly in the web archives) that the suggested
|
||||
fixes actually have helped at least one person.
|
||||
1007
OGP64/usr/share/doc/curl/MANUAL.md
Normal file
1007
OGP64/usr/share/doc/curl/MANUAL.md
Normal file
File diff suppressed because it is too large
Load diff
50
OGP64/usr/share/doc/curl/README
Normal file
50
OGP64/usr/share/doc/curl/README
Normal file
|
|
@ -0,0 +1,50 @@
|
|||
_ _ ____ _
|
||||
___| | | | _ \| |
|
||||
/ __| | | | |_) | |
|
||||
| (__| |_| | _ <| |___
|
||||
\___|\___/|_| \_\_____|
|
||||
|
||||
README
|
||||
|
||||
Curl is a command line tool for transferring data specified with URL
|
||||
syntax. Find out how to use curl by reading the curl.1 man page or the
|
||||
MANUAL document. Find out how to install Curl by reading the INSTALL
|
||||
document.
|
||||
|
||||
libcurl is the library curl is using to do its job. It is readily
|
||||
available to be used by your software. Read the libcurl.3 man page to
|
||||
learn how.
|
||||
|
||||
You find answers to the most frequent questions we get in the FAQ.md
|
||||
document.
|
||||
|
||||
Study the COPYING file for distribution terms.
|
||||
|
||||
Those documents and more can be found in the docs/ directory.
|
||||
|
||||
CONTACT
|
||||
|
||||
If you have problems, questions, ideas or suggestions, please contact us
|
||||
by posting to a suitable mailing list. See https://curl.se/mail/
|
||||
|
||||
All contributors to the project are listed in the THANKS document.
|
||||
|
||||
WEBSITE
|
||||
|
||||
Visit the curl website for the latest news and downloads:
|
||||
|
||||
https://curl.se/
|
||||
|
||||
GIT
|
||||
|
||||
To download the latest source code off the GIT server, do this:
|
||||
|
||||
git clone https://github.com/curl/curl
|
||||
|
||||
(you will get a directory named curl created, filled with the source code)
|
||||
|
||||
SECURITY PROBLEMS
|
||||
|
||||
Report suspected security problems privately and not in public.
|
||||
|
||||
https://curl.se/dev/vuln-disclosure.html
|
||||
18
OGP64/usr/share/doc/curl/README.md
Normal file
18
OGP64/usr/share/doc/curl/README.md
Normal file
|
|
@ -0,0 +1,18 @@
|
|||
<!--
|
||||
Copyright (C) Daniel Stenberg, <daniel@haxx.se>, et al.
|
||||
|
||||
SPDX-License-Identifier: curl
|
||||
-->
|
||||
|
||||

|
||||
|
||||
# Documentation
|
||||
|
||||
You find a mix of various documentation in this directory and subdirectories,
|
||||
using several different formats. Some of them are not ideal for reading
|
||||
directly in your browser.
|
||||
|
||||
If you would rather see the rendered version of the documentation, check out the
|
||||
curl website's [documentation section](https://curl.se/docs/) for
|
||||
general curl stuff or the [libcurl section](https://curl.se/libcurl/) for
|
||||
libcurl related documentation.
|
||||
628
OGP64/usr/share/doc/curl/RELEASE-NOTES
Normal file
628
OGP64/usr/share/doc/curl/RELEASE-NOTES
Normal file
|
|
@ -0,0 +1,628 @@
|
|||
curl and libcurl 8.20.0
|
||||
|
||||
Public curl releases: 274
|
||||
Command line options: 273
|
||||
curl_easy_setopt() options: 308
|
||||
Public functions in libcurl: 100
|
||||
Authors: 1463
|
||||
Contributors: 3664
|
||||
|
||||
This release includes the following changes:
|
||||
|
||||
o async-thrdd: use thread queue for resolving [144]
|
||||
o build: make NTLM disabled by default [90]
|
||||
o cmake: drop support for CMake 3.17 and older [108]
|
||||
o lib: add thread pool and queue [74]
|
||||
o lib: drop support for < c-ares 1.16.0 [64]
|
||||
o lib: make SMB support opt-in [18]
|
||||
o multi.h: add CURLMNWC_CLEAR_ALL [127]
|
||||
o rtmp: drop support [91]
|
||||
|
||||
This release includes the following bugfixes:
|
||||
|
||||
o altsvc: cap the list at 5,000 entries [183]
|
||||
o altsvc: drop the prio field from the struct [185]
|
||||
o altsvc: skip expired entries read from file [187]
|
||||
o asyn-ares: connect async [220]
|
||||
o asyn-ares: drop orphaned variable references [86]
|
||||
o asyn-ares: fix HTTPS-lookup when not on port 443 [100]
|
||||
o asyn-thrdd: drop redundant `result` check [291]
|
||||
o asyn-thrdd: fix clang-tidy unused value warning [125]
|
||||
o async-ares: fix query counter handling [195]
|
||||
o autotools: limit checksrc target to ignore non-repo test sources [12]
|
||||
o badwords-all: exit with correct code on errors [50]
|
||||
o badwords: combine the whitelisting into a single regex [1]
|
||||
o badwords: detect the the and with with [51]
|
||||
o badwords: only check comments and strings in source code [61]
|
||||
o badwords: rework exceptions, fix many of them [15]
|
||||
o boringssl: fix more coexist cases with Schannel/WinCrypt [170]
|
||||
o build: adjust/add casts to fix `-Wformat-signedness` [218]
|
||||
o build: assume `snprintf()` in `mprintf`, drop feature check [107]
|
||||
o build: compiler warning silencing tidy-ups [4]
|
||||
o build: drop `openssl` module dependency for BoringSSL from `libcurl.pc` [33]
|
||||
o build: drop duplicate `pthread.h` includes [158]
|
||||
o build: drop redundant `USE_QUICHE` guards [159]
|
||||
o build: enable `-Wimplicit-int-enum-cast` compiler warning, fix issues [84]
|
||||
o build: fix `-Wformat-signedness` by adjusting printf masks [226]
|
||||
o build: link `bcrypt.lib` via vcxproj files [239]
|
||||
o build: skip detecting `pipe2()` for Apple targets [227]
|
||||
o build: stop building and installing `runtests.1` and `testcurl.1` [235]
|
||||
o cf-https-connect: silence `-Wimplicit-int-enum-cast` with HTTPS-RR [132]
|
||||
o cf-https-connect: silence `-Wimplicit-int-enum-cast` with HTTPS-RR [63]
|
||||
o cf-ip-happy: limit concurrent attempts [191]
|
||||
o cf-socket: avoid low risk integer overflow on ancient Solaris [56]
|
||||
o cfilters: fix Curl_pollset_poll() return code mixup [206]
|
||||
o clang-tidy: avoid assignments in `if` expressions [175]
|
||||
o clang-tidy: enable more checks, fix fallouts [254]
|
||||
o cmake: add CMake Config-based dependency detection [87]
|
||||
o cmake: add CMake Config-based dependency detection for c-ares, wolfSSL [134]
|
||||
o cmake: do not install `wcurl` when `BUILD_CURL_EXE=OFF` [265]
|
||||
o cmake: do not install shell completions when `BUILD_CURL_EXE=OFF` [263]
|
||||
o cmake: document functions used from Windows system DLLs [103]
|
||||
o cmake: enable pthreads for BoringSSL/AWS-LC [196]
|
||||
o cmake: resolve targets recursively when generating `libcurl.pc` [45]
|
||||
o cmake: rework binutils ld hack to not read `LOCATION` property [41]
|
||||
o cmake: silence bad library `Threads::Threads` warning [131]
|
||||
o cmake: use `AIX` built-in variable (with CMake 4.0+) [163]
|
||||
o config2setopts: make --capath work in proxy disabled builds [113]
|
||||
o configure: fix `--with-ngtcp2=<path>` option for crypto libs [26]
|
||||
o configure: fix LibreSSL ngtcp2 1.15.0+ crypto lib selection logic [3]
|
||||
o configure: prefer dependency-specific variables over `$withval` [35]
|
||||
o configure: remove superfluous experimental warning for HTTP/3 [169]
|
||||
o configure: silence useless clang warnings in C89 builds [156]
|
||||
o configure: tidy up comments [202]
|
||||
o connect: fix typo on error message
|
||||
o cookie: fix rejection when tabs in value [189]
|
||||
o curl-wolfssl.m4: fix to use the correct value for pkg-config directory [36]
|
||||
o curl.h: replace macros with C++-friendly method to enforce 3 args [110]
|
||||
o curl_ctype.h: fix spelling in a couple of locally used macros [28]
|
||||
o curl_get_line: error out on read errors [9]
|
||||
o curl_get_line: fix potential infinite loop when filename is a directory [46]
|
||||
o curl_ngtcp2: extend and update callbacks for 1.22.0+ [165]
|
||||
o curl_ntlm_core: drop redundant PP condition [140]
|
||||
o curl_ntlm_core: use wolfCrypt DES API with wolfSSL [200]
|
||||
o curl_setup.h: drop stray/unused `USE_OPENSSL_QUIC` guard [210]
|
||||
o curl_sha512_256: support delegating to wolfSSL API [149]
|
||||
o curl_version_info.md: clarify age details [69]
|
||||
o CURLOPT_HAPROXY_CLIENT_IP.md: mention assumption on data format [96]
|
||||
o CURLOPT_RTSP_SESSION_ID.md: clarify reuse "dangers" [270]
|
||||
o CURLOPT_RTSP_SESSION_ID.md: expand the comment [267]
|
||||
o CURLOPT_RTSP_SESSION_ID.md: minor language fix
|
||||
o CURLOPT_SOCKS5_AUTH.md: an access property [212]
|
||||
o CURLOPT_SSL_CTX_FUNCTION.md: expand on effects connection reuse [105]
|
||||
o CURLOPT_UPLOAD_FLAGS.md: expand [223]
|
||||
o curlx_now(), prevent zero timestamp [93]
|
||||
o DEPRECATE: fix minor release number typo
|
||||
o digest: pass in the user name quoted (as well) [34]
|
||||
o dns: https-eyeballing async [229]
|
||||
o dnscache: own source file, improvements [116]
|
||||
o docs/cmdline-opts/write-out.md: tls_earlydata was adeded in 8.13.0
|
||||
o docs/cmdline-opts: tidy up retry-connrefused [190]
|
||||
o docs/lib: fix typos [53]
|
||||
o docs/libcurl: improve easy setopt examples [266]
|
||||
o docs: clarify retry-max-time timing [294]
|
||||
o docs: CURLOPT_LOGIN_OPTIONS is a login property [228]
|
||||
o docs: enable more compiler warnings for C snippets, fix 3 finds [71]
|
||||
o docs: list more dependencies for running Python HTTP tests [123]
|
||||
o docs: mention more zip bomb precautions [166]
|
||||
o docs: minor wording tweaks
|
||||
o docs: noproxy wants the punycoded hostname version [214]
|
||||
o docs: SSH host verification is done at connect time [197]
|
||||
o docs: use the correct CURLOPT_WRITEFUNCTION signature [142]
|
||||
o doh: fix memory-leak when doing a second DoH resolve [55]
|
||||
o doh: remove superfluous doh_req check [222]
|
||||
o examples/websocket: fix to sleep more on Windows [92]
|
||||
o examples: drop warning silencers no longer hit [14]
|
||||
o examples: fix typo in comment [75]
|
||||
o file: init fd to -1 to prevent close fd 0 on early failure [40]
|
||||
o fopen: for temp files, inherit permissions only for owner [146]
|
||||
o ftp: do not strdup DATA hostname [29]
|
||||
o ftp: make the MDTM date parser stricter (again) [115]
|
||||
o ftp: reject PWD responses containing control characters [95]
|
||||
o gcc: guard `#pragma diagnostic` in core code for <4.6 [94]
|
||||
o generate.bat: remove extra % from VC11 and VC12 runs
|
||||
o genserv.pl: make external calls safe [119]
|
||||
o getinfo: initialize `PureInfo` field `used_proxy` [43]
|
||||
o getinfo: repair CURLINFO_TLS_SESSION [193]
|
||||
o gnutls: fix clang-tidy warning with !verbose [126]
|
||||
o gtls: fail for large files in `load_file()` [174]
|
||||
o h3: HTTPS-RR use in HTTP/3 [221]
|
||||
o Happy Eyeballs: add resolution time delay [238]
|
||||
o haproxy: use correct ip version on client supplied address [275]
|
||||
o hostip: clear the sockaddr_in6 structure before use [20]
|
||||
o hostip: init the curl_jmpenv_lock appropriately [278]
|
||||
o hostip: resolve user supplied ip addresses [259]
|
||||
o HSTS: cap the list [177]
|
||||
o hsts: make the HSTS read callback handle name dupes [141]
|
||||
o hsts: skip expired HSTS entries read from file [188]
|
||||
o hsts: when a dupe host adds subdomains, use that [130]
|
||||
o http2: clear the h2 session at delete [99]
|
||||
o http2: prevent secure schemes pushed over insecure connections [181]
|
||||
o http2: return error on OOM in push headers [65]
|
||||
o HTTP3.md: drop outdated mentions of OpenSSL-QUIC [2]
|
||||
o http: clear credentials better on redirect [204]
|
||||
o http: clear digest nonce on cross-orgin redirect [269]
|
||||
o http: clear the proxy credentials as well on port or scheme change [246]
|
||||
o http: fix auth_used and auth_avail [154]
|
||||
o http: fix Curl_compareheader for multi value headers [11]
|
||||
o http: make Curl_compareheader handle multiple commas in header
|
||||
o http: on 303, switch to GET [208]
|
||||
o http: use header_has_value() instead of duplicate code [251]
|
||||
o imap: reset the UIDVALIDITY state between transfers [7]
|
||||
o include: drop 'will' from public headers [73]
|
||||
o INSTALL.md: update Cygwin instructions [198]
|
||||
o keylog.h: replace literal number with macro in declaration [171]
|
||||
o keylog: drop unused/redundant includes and guards [172]
|
||||
o ldap: drop duplicate `ldap_set_option()` on Windows [42]
|
||||
o ldap: fix to initialize cleartext connection on Windows [49]
|
||||
o lib1560: fix comment typo
|
||||
o lib1960: fix test failure [255]
|
||||
o lib: accept larger input to md5/hmac/sha256/sha512 functions [194]
|
||||
o lib: always use Curl_1st_fatal instead of Curl_1st_err [89]
|
||||
o lib: fix typos in comments [240]
|
||||
o lib: make resolving HTTPS DNS records reliable: [176]
|
||||
o lib: minor comment typos [237]
|
||||
o lib: move request specific allocations to the request struct [256]
|
||||
o lib: replace `PRI*32` printf masks with C89 ones [201]
|
||||
o libssh2: allocate libssh2-friendly memory in kbd_callback [225]
|
||||
o libssh2: fix error handling on quote errors [21]
|
||||
o libssh: fix 64-bit printf mask for mingw-w64 <=6.0.0 [215]
|
||||
o libssh: fix `-Wsign-compare` in 32-bit builds [217]
|
||||
o libssh: path length precaution [164]
|
||||
o libssh: propagate error back in SFTP function [178]
|
||||
o libtest: drop duplicate include [111]
|
||||
o location/follow: mention netrc [138]
|
||||
o man: fix argument type for `CURLSHOPT_[UN]SHARE` options [211]
|
||||
o mbedtls: cleanup more without care for 'initialized' [262]
|
||||
o mbedtls: fix ECJPAKE matching [135]
|
||||
o mbedtls: remove failf() call with first argument as NULL [249]
|
||||
o md4, md5: switch to wolfCrypt API in wolfSSL builds [139]
|
||||
o mime: only allow 40 levels of calls [241]
|
||||
o misc: fix code quality findings [209]
|
||||
o mk-ca-bundle.pl: make `ca-bundle.crt` timestamp match `certdata.txt`'s [44]
|
||||
o multi: enhance pending handles fairness [284]
|
||||
o multi: fix connection retry for non-http [180]
|
||||
o multi: improve wakeup and wait code [118]
|
||||
o netrc: find login-less password when user is given in URL [6]
|
||||
o netrc: remove unused parsenetrc() macro for netrc-disabled [121]
|
||||
o netrc: skip malformed macdef lines [67]
|
||||
o openssl channel_binding: lookup digest algorithm without NID [117]
|
||||
o openssl: drop obsolete SSLv2 logic [27]
|
||||
o openssl: fix build with 4.0.0-beta1 no-deprecated [184]
|
||||
o openssl: fix memory leaks in ECH code (OpenSSL 3) [78]
|
||||
o openssl: fix unused variable warnings in !verbose builds [252]
|
||||
o openssl: trace count of found / imported Windows native CA roots [8]
|
||||
o OS400: add new definitions to the ILE/RPG binding. [153]
|
||||
o os400sys: fix typo in comment (symetry -> symmetry) [58]
|
||||
o parsedate: bsearch the time zones [232]
|
||||
o parsedate: fix wrong treatment of "military time zones" [182]
|
||||
o parsedate: refactor [230]
|
||||
o perl: harden external command invocations [133]
|
||||
o progress: count amount of data "delivered" to application [66]
|
||||
o protocol.h: fix the CURLPROTO_MASK [31]
|
||||
o protocol: disable connection reuse for SMB(S) [199]
|
||||
o protocol: use scheme names lowercase [38]
|
||||
o proxy: chunked response, error code [143]
|
||||
o pytest: add additional quiche check for flaky test_05_01 [22]
|
||||
o pytest: check 429 handling [268]
|
||||
o rand: use `BCryptGenRandom()` in UWP builds [88]
|
||||
o ratelimit: reset on start [150]
|
||||
o request: reset resp_trailer in new requests [186]
|
||||
o runtests: skip setting ed25519 SSH key format [264]
|
||||
o rustls: fix memory leak on repeated SSLKEYLOGFILE fails [280]
|
||||
o rustls: handle EOF during initial handshake [203]
|
||||
o schannel: increase renegotiation timeout to 60 seconds [261]
|
||||
o scripts: drop redundant double-quotes: `"$var"` -> `$var` (Perl) [109]
|
||||
o scripts: harden / tidy up more Perl `system()` calls [70]
|
||||
o sectrust: fail on missing OCSP stapling [250]
|
||||
o sendf: fix CR detection if no LF is in the chunk [219]
|
||||
o setopt: clear proxy auth properties when switching [192]
|
||||
o setopt: fix typos in comments [257]
|
||||
o setopt: move CURLOPT_CURLU [260]
|
||||
o setup connection filter: mark as setup [234]
|
||||
o sha256, sha512_256: switch to wolfCrypt API [147]
|
||||
o sha256: support delegating to wolfSSL API [148]
|
||||
o share: concurrency handling, easy updates [104]
|
||||
o share: do bitshifts after the type is checked to be valid [216]
|
||||
o socks: reject zero-length GSSAPI/SSPI tokens from proxy [157]
|
||||
o socks: use dns filter for resolving [244]
|
||||
o spelling: fix typos [173]
|
||||
o src: use ftruncate() unconditionally [128]
|
||||
o sshserver.pl: harden more `system()` calls [81]
|
||||
o sshserver.pl: pass command-line to `system()` safely [82]
|
||||
o strerr: correct the strerror_s() return code condition [25]
|
||||
o sws: fix potential OOB write [80]
|
||||
o synctime: fix off-by-one read and write to a read-only buffer (Windows) [85]
|
||||
o test 766: flag as timing-dependent [136]
|
||||
o test1675: unit tests for URL API helper functions [248]
|
||||
o test459: switch to mode="warn" for stderr check [5]
|
||||
o testcurl.pl: replace shell commands with Perl `rmtree()` [76]
|
||||
o tests/unit/README: describe how to unit test static functions [60]
|
||||
o tests: avoid infinite recursion for `make check` [253]
|
||||
o tests: use %b64[] instead of "raw" base64 [245]
|
||||
o tool: check for curlinfo->age when determining if ssh backend [77]
|
||||
o tool: fix memory mixups [106]
|
||||
o tool: fix retries in parallel mode [137]
|
||||
o tool: fix two more allocator mismatches [155]
|
||||
o tool_cb_hdr: only truncate etags output when regular file [129]
|
||||
o tool_cb_rea: make waitfd() return void [168]
|
||||
o tool_cb_wrt: fix no-clobber error handling [39]
|
||||
o tool_cfgable: free the SSL signature algorithms [62]
|
||||
o tool_dirhie: fix to create drive-relative directory [276]
|
||||
o tool_formparse: propagate my_get_line errors when reading headers [102]
|
||||
o tool_getparam: use correct free function for libcurl memory [68]
|
||||
o tool_ipfs: accept IPFS gateway URL without set port number [13]
|
||||
o tool_msgs: avoid null pointer deref for early errors [98]
|
||||
o tool_operate: actually apply the --parallel-max-host limit [167]
|
||||
o tool_operate: drop the scheme-guessing in the -G handling [54]
|
||||
o tool_operate: fix condition for loading `curl-ca-bundle.crt` (Windows) [79]
|
||||
o tool_operate: fix memory-leak on failed uploads [124]
|
||||
o tool_operate: fix minor memory-leak on early error [23]
|
||||
o tool_operate: reset the upload glob counter for next URL [162]
|
||||
o tool_operhlp: fix `add_file_name_to_url()` result on OOM [32]
|
||||
o tool_operhlp: iterate through all slashes to find name [114]
|
||||
o tool_operhlp: propagate low-level OOM in `add_file_name_to_url()` [112]
|
||||
o tool_setopt: return error on OOM correctly [152]
|
||||
o tool_urlglob: fix memory-leak on glob range overflow [19]
|
||||
o top-complexity: prevent filename-based shell injection risk [101]
|
||||
o transfer: clear the old autoreferer [236]
|
||||
o transfer: clear the URL pointer in OOM to avoid UAF [179]
|
||||
o transfer: enable custom methods again on next transfer [30]
|
||||
o transfer: enhance secure check [10]
|
||||
o unit1675: fix `-Wformat-signedness` [274]
|
||||
o url: do not reuse a non-tls starttls connection if new requires TLS [145]
|
||||
o url: improve connection reuse on negotiate [160]
|
||||
o url: init req.no_body in DO so that it works for h2 push [161]
|
||||
o url: set default upload flags to CURLULFLAG_SEEN [224]
|
||||
o url: use the socks type for socks proxy [47]
|
||||
o url: use URL for url even in comments [52]
|
||||
o urlapi: fix handling of "file:///" [122]
|
||||
o urlapi: make dedotdotify handle leading dots correctly [97]
|
||||
o urlapi: same origin tests [213]
|
||||
o urlapi: stop extracting hostname from file:// URLs on Windows [247]
|
||||
o urlapi: verify the last letter of a scheme when set explicitly [16]
|
||||
o urldata.h: fix typo and lingering backtick [279]
|
||||
o urldata: connection bit ipv6_ip is wrong [59]
|
||||
o urldata: import port types and conn destination format [57]
|
||||
o urldata: make hstslist only present in HSTS builds [120]
|
||||
o urldata: make speeder_c uint32 [37]
|
||||
o urldata: move cookiehost to struct SingleRequest [242]
|
||||
o urldata: remove trailers_state [17]
|
||||
o vquic: fix variable name in fallback code [207]
|
||||
o vtls: fix comment typos and tidy up a type [285]
|
||||
o vtls: log when key logging is enabled. [288]
|
||||
o vtls_scache: check reentrancy [243]
|
||||
o vtls_scache: include cert_blob independently of verifypeer [231]
|
||||
o wolfssl: document v5.0.0 (2021-11-01) as minimum required [151]
|
||||
o wolfssl: fix `-Wmissing-prototypes` [233]
|
||||
o wolfssl: fix handling of abrupt connection close [24]
|
||||
o write-out.md: minor language fix [273]
|
||||
o write-out.md: tls_earlydata was adeded in 8.13.0
|
||||
o ws: fix a blocking curl_ws_send() to report written length correctly [258]
|
||||
o x509asn1: fix to return error in an error case from `encodeOID()` [83]
|
||||
o x509asn1: fixed and adapted for ASN1tostr unit testing [48]
|
||||
o x509asn1: improve encodeOID [72]
|
||||
|
||||
This release includes the following known bugs:
|
||||
|
||||
See https://curl.se/docs/knownbugs.html
|
||||
|
||||
For all changes ever done in curl:
|
||||
|
||||
See https://curl.se/changes.html
|
||||
|
||||
Planned upcoming removals include:
|
||||
|
||||
o local crypto implementations
|
||||
o NTLM
|
||||
o SMB
|
||||
o TLS-SRP support
|
||||
|
||||
See https://curl.se/dev/deprecate.html
|
||||
|
||||
This release would not have looked like this without help, code, reports and
|
||||
advice from friends like these:
|
||||
|
||||
Alex Hamilton, am-perip on hackerone, Arkadi Vainbrand, bird on github,
|
||||
BlackFuffey on github, Carlos Carrillo, Carlos Henrique Lima Melara,
|
||||
crawfordxx, Cutiapreta on hackerone, Dag-Erling Smørgrav, Dan Arnfield,
|
||||
Dan Fandrich, Daniel McCarney, Daniel Schulte, Daniel Stenberg,
|
||||
dependabot[bot], Dexter Gerig, Dio Putra, Dwij Mehta, Ercan Ermis,
|
||||
fds242 on github, finkjsc on github, Fiona Klute, Flavio Amieiro,
|
||||
Geeknik Labs, Greg Kroah-Hartman, Harry Sintonen, Henrique Pereira,
|
||||
herbenderbler on github, Ian Spence, Izan on hackerone, James Fuller,
|
||||
Jason Stangroome, John Haugabook, Juan Belón, Kai Pastor, Kaixuan Li, kpcyrd,
|
||||
lg_oled77c5pua on hackerone, M42kL33 on hackerone, m777m0 on hackerone,
|
||||
Marcel Raad, Martin Dürrmeier, Mehtab Zafar, Michael Hendricks,
|
||||
Michael Kaufmann, Muhamad Arga Reksapati, Ngoc Hieu, nitrogene on github,
|
||||
Orgad Shaneh, Osama Hamad, Otis Cui Lei, Patrick Monnerat, Quac Tran,
|
||||
Ray Satiro, renovate[bot], Richard Tollerton, Rob Crittenden,
|
||||
Samuel Henrique, Scott Boudreaux, Sergey Fedorov, sergio-nsk on github,
|
||||
Stefan Eissing, Ted Lyngmo, Terrance Wong, Tim Omta, Viktor Szakats,
|
||||
Vladimír Marek, xkilua on hackerone, Yalguun Tumenkhuu, Yedaya Katsman,
|
||||
Yiwei Hou, Yoshiro Yoneya
|
||||
(73 contributors)
|
||||
|
||||
References to bug reports and discussions on issues:
|
||||
|
||||
[1] = https://curl.se/bug/?i=20880
|
||||
[2] = https://curl.se/bug/?i=20914
|
||||
[3] = https://curl.se/bug/?i=20889
|
||||
[4] = https://curl.se/bug/?i=20908
|
||||
[5] = https://curl.se/bug/?i=20910
|
||||
[6] = https://curl.se/bug/?i=20950
|
||||
[7] = https://curl.se/bug/?i=20962
|
||||
[8] = https://curl.se/bug/?i=20899
|
||||
[9] = https://curl.se/bug/?i=20958
|
||||
[10] = https://curl.se/bug/?i=20951
|
||||
[11] = https://curl.se/bug/?i=20894
|
||||
[12] = https://curl.se/bug/?i=20898
|
||||
[13] = https://curl.se/bug/?i=20957
|
||||
[14] = https://curl.se/bug/?i=20896
|
||||
[15] = https://curl.se/bug/?i=20886
|
||||
[16] = https://curl.se/bug/?i=20893
|
||||
[17] = https://curl.se/bug/?i=20960
|
||||
[18] = https://curl.se/bug/?i=20846
|
||||
[19] = https://curl.se/bug/?i=20956
|
||||
[20] = https://curl.se/bug/?i=20885
|
||||
[21] = https://curl.se/bug/?i=20883
|
||||
[22] = https://curl.se/bug/?i=20952
|
||||
[23] = https://curl.se/bug/?i=20954
|
||||
[24] = https://curl.se/bug/?i=21002
|
||||
[25] = https://curl.se/bug/?i=20955
|
||||
[26] = https://curl.se/bug/?i=18022
|
||||
[27] = https://curl.se/bug/?i=20945
|
||||
[28] = https://curl.se/bug/?i=20810
|
||||
[29] = https://curl.se/bug/?i=20953
|
||||
[30] = https://curl.se/bug/?i=21037
|
||||
[31] = https://curl.se/bug/?i=21031
|
||||
[32] = https://curl.se/bug/?i=21011
|
||||
[33] = https://curl.se/bug/?i=20926
|
||||
[34] = https://curl.se/bug/?i=20940
|
||||
[35] = https://curl.se/bug/?i=20944
|
||||
[36] = https://curl.se/bug/?i=20943
|
||||
[37] = https://curl.se/bug/?i=21036
|
||||
[38] = https://curl.se/bug/?i=21033
|
||||
[39] = https://curl.se/bug/?i=20939
|
||||
[40] = https://curl.se/bug/?i=21029
|
||||
[41] = https://curl.se/bug/?i=20839
|
||||
[42] = https://curl.se/bug/?i=20930
|
||||
[43] = https://curl.se/bug/?i=21020
|
||||
[44] = https://curl.se/bug/?i=20528
|
||||
[45] = https://curl.se/bug/?i=20840
|
||||
[46] = https://curl.se/bug/?i=20823
|
||||
[47] = https://curl.se/bug/?i=21025
|
||||
[48] = https://curl.se/bug/?i=21013
|
||||
[49] = https://curl.se/bug/?i=20927
|
||||
[50] = https://curl.se/bug/?i=20934
|
||||
[51] = https://curl.se/bug/?i=20934
|
||||
[52] = https://curl.se/bug/?i=20935
|
||||
[53] = https://curl.se/bug/?i=20933
|
||||
[54] = https://curl.se/bug/?i=20992
|
||||
[55] = https://curl.se/bug/?i=20929
|
||||
[56] = https://curl.se/bug/?i=21111
|
||||
[57] = https://curl.se/bug/?i=20918
|
||||
[58] = https://curl.se/bug/?i=20923
|
||||
[59] = https://curl.se/bug/?i=20919
|
||||
[60] = https://curl.se/bug/?i=21018
|
||||
[61] = https://curl.se/bug/?i=20909
|
||||
[62] = https://curl.se/bug/?i=20915
|
||||
[63] = https://curl.se/bug/?i=21057
|
||||
[64] = https://curl.se/bug/?i=20911
|
||||
[65] = https://hackerone.com/reports/3636044
|
||||
[66] = https://curl.se/bug/?i=20787
|
||||
[67] = https://curl.se/bug/?i=21049
|
||||
[68] = https://curl.se/bug/?i=21075
|
||||
[69] = https://curl.se/bug/?i=21052
|
||||
[70] = https://curl.se/bug/?i=21007
|
||||
[71] = https://curl.se/bug/?i=21006
|
||||
[72] = https://curl.se/bug/?i=21003
|
||||
[73] = https://curl.se/bug/?i=21005
|
||||
[74] = https://curl.se/bug/?i=20916
|
||||
[75] = https://curl.se/bug/?i=21001
|
||||
[76] = https://curl.se/bug/?i=21053
|
||||
[77] = https://curl.se/bug/?i=21050
|
||||
[78] = https://curl.se/bug/?i=20993
|
||||
[79] = https://curl.se/bug/?i=20989
|
||||
[80] = https://curl.se/bug/?i=20988
|
||||
[81] = https://curl.se/bug/?i=20997
|
||||
[82] = https://curl.se/bug/?i=20996
|
||||
[83] = https://curl.se/bug/?i=20991
|
||||
[84] = https://curl.se/bug/?i=20990
|
||||
[85] = https://curl.se/bug/?i=20987
|
||||
[86] = https://curl.se/bug/?i=20999
|
||||
[87] = https://curl.se/bug/?i=20814
|
||||
[88] = https://curl.se/bug/?i=20983
|
||||
[89] = https://curl.se/bug/?i=20980
|
||||
[90] = https://curl.se/bug/?i=20698
|
||||
[91] = https://curl.se/bug/?i=20673
|
||||
[92] = https://curl.se/bug/?i=20978
|
||||
[93] = https://curl.se/bug/?i=21034
|
||||
[94] = https://curl.se/bug/?i=20892
|
||||
[95] = https://curl.se/bug/?i=20949
|
||||
[96] = https://curl.se/bug/?i=21042
|
||||
[97] = https://curl.se/bug/?i=20974
|
||||
[98] = https://curl.se/bug/?i=20967
|
||||
[99] = https://curl.se/bug/?i=20975
|
||||
[100] = https://curl.se/bug/?i=20966
|
||||
[101] = https://curl.se/bug/?i=20969
|
||||
[102] = https://curl.se/bug/?i=20963
|
||||
[103] = https://curl.se/bug/?i=20965
|
||||
[104] = https://curl.se/bug/?i=20870
|
||||
[105] = https://curl.se/bug/?i=21164
|
||||
[106] = https://curl.se/bug/?i=21099
|
||||
[107] = https://curl.se/bug/?i=20763
|
||||
[108] = https://curl.se/bug/?i=20407
|
||||
[109] = https://curl.se/bug/?i=21009
|
||||
[110] = https://curl.se/bug/?i=20709
|
||||
[111] = https://curl.se/bug/?i=21046
|
||||
[112] = https://curl.se/bug/?i=21011
|
||||
[113] = https://curl.se/bug/?i=21063
|
||||
[114] = https://curl.se/bug/?i=21165
|
||||
[115] = https://curl.se/bug/?i=21041
|
||||
[116] = https://curl.se/bug/?i=20864
|
||||
[117] = https://curl.se/bug/?i=20590
|
||||
[118] = https://curl.se/bug/?i=20832
|
||||
[119] = https://curl.se/bug/?i=20971
|
||||
[120] = https://curl.se/bug/?i=21068
|
||||
[121] = https://curl.se/bug/?i=21067
|
||||
[122] = https://curl.se/bug/?i=21070
|
||||
[123] = https://curl.se/bug/?i=21110
|
||||
[124] = https://curl.se/bug/?i=21062
|
||||
[125] = https://curl.se/bug/?i=21061
|
||||
[126] = https://curl.se/bug/?i=21060
|
||||
[127] = https://curl.se/bug/?i=20968
|
||||
[128] = https://curl.se/bug/?i=21109
|
||||
[129] = https://curl.se/bug/?i=21103
|
||||
[130] = https://curl.se/bug/?i=21108
|
||||
[131] = https://curl.se/bug/?i=21170
|
||||
[132] = https://curl.se/bug/?i=21167
|
||||
[133] = https://curl.se/bug/?i=21097
|
||||
[134] = https://curl.se/bug/?i=21098
|
||||
[135] = https://curl.se/bug/?i=21264
|
||||
[136] = https://curl.se/bug/?i=21155
|
||||
[137] = https://curl.se/bug/?i=20669
|
||||
[138] = https://curl.se/bug/?i=21091
|
||||
[139] = https://curl.se/bug/?i=21093
|
||||
[140] = https://curl.se/bug/?i=21096
|
||||
[141] = https://curl.se/bug/?i=21201
|
||||
[142] = https://curl.se/bug/?i=21265
|
||||
[143] = https://curl.se/bug/?i=21084
|
||||
[144] = https://curl.se/bug/?i=20936
|
||||
[145] = https://curl.se/bug/?i=21082
|
||||
[146] = https://curl.se/bug/?i=21092
|
||||
[147] = https://curl.se/bug/?i=21090
|
||||
[148] = https://curl.se/bug/?i=21078
|
||||
[149] = https://curl.se/bug/?i=21077
|
||||
[150] = https://curl.se/bug/?i=21086
|
||||
[151] = https://curl.se/bug/?i=21080
|
||||
[152] = https://curl.se/bug/?i=21083
|
||||
[153] = https://curl.se/bug/?i=20672
|
||||
[154] = https://curl.se/bug/?i=21274
|
||||
[155] = https://curl.se/bug/?i=21150
|
||||
[156] = https://curl.se/bug/?i=21263
|
||||
[157] = https://curl.se/bug/?i=21159
|
||||
[158] = https://curl.se/bug/?i=21144
|
||||
[159] = https://curl.se/bug/?i=21135
|
||||
[160] = https://curl.se/bug/?i=21203
|
||||
[161] = https://curl.se/bug/?i=21194
|
||||
[162] = https://curl.se/bug/?i=21402
|
||||
[163] = https://curl.se/bug/?i=21134
|
||||
[164] = https://curl.se/bug/?i=21193
|
||||
[165] = https://curl.se/bug/?i=21152
|
||||
[166] = https://curl.se/bug/?i=21143
|
||||
[167] = https://curl.se/bug/?i=21147
|
||||
[168] = https://curl.se/bug/?i=21127
|
||||
[169] = https://curl.se/bug/?i=21139
|
||||
[170] = https://curl.se/bug/?i=21136
|
||||
[171] = https://curl.se/bug/?i=21141
|
||||
[172] = https://curl.se/bug/?i=21137
|
||||
[173] = https://curl.se/bug/?i=21198
|
||||
[174] = https://curl.se/bug/?i=21256
|
||||
[175] = https://curl.se/bug/?i=21256
|
||||
[176] = https://curl.se/bug/?i=21175
|
||||
[177] = https://curl.se/bug/?i=21190
|
||||
[178] = https://curl.se/bug/?i=21122
|
||||
[179] = https://curl.se/bug/?i=21123
|
||||
[180] = https://curl.se/bug/?i=21121
|
||||
[181] = https://curl.se/bug/?i=21113
|
||||
[182] = https://curl.se/bug/?i=21251
|
||||
[183] = https://curl.se/bug/?i=21183
|
||||
[184] = https://curl.se/bug/?i=21119
|
||||
[185] = https://curl.se/bug/?i=21188
|
||||
[186] = https://curl.se/bug/?i=21112
|
||||
[187] = https://curl.se/bug/?i=21187
|
||||
[188] = https://curl.se/bug/?i=21186
|
||||
[189] = https://curl.se/bug/?i=21185
|
||||
[190] = https://curl.se/bug/?i=21182
|
||||
[191] = https://curl.se/bug/?i=21252
|
||||
[192] = https://curl.se/bug/?i=21453
|
||||
[193] = https://curl.se/bug/?i=21290
|
||||
[194] = https://curl.se/bug/?i=21174
|
||||
[195] = https://curl.se/bug/?i=21399
|
||||
[196] = https://curl.se/bug/?i=21168
|
||||
[197] = https://curl.se/bug/?i=21173
|
||||
[198] = https://curl.se/bug/?i=20995
|
||||
[199] = https://curl.se/bug/?i=21238
|
||||
[200] = https://curl.se/bug/?i=21247
|
||||
[201] = https://curl.se/bug/?i=21234
|
||||
[202] = https://curl.se/bug/?i=21246
|
||||
[203] = https://curl.se/bug/?i=21242
|
||||
[204] = https://curl.se/bug/?i=21345
|
||||
[206] = https://curl.se/bug/?i=21231
|
||||
[207] = https://curl.se/bug/?i=21281
|
||||
[208] = https://curl.se/bug/?i=20715
|
||||
[209] = https://curl.se/bug/?i=21393
|
||||
[210] = https://curl.se/bug/?i=21235
|
||||
[211] = https://curl.se/bug/?i=21232
|
||||
[212] = https://curl.se/bug/?i=21230
|
||||
[213] = https://curl.se/bug/?i=21328
|
||||
[214] = https://curl.se/bug/?i=21228
|
||||
[215] = https://curl.se/bug/?i=21229
|
||||
[216] = https://curl.se/bug/?i=21224
|
||||
[217] = https://curl.se/bug/?i=21225
|
||||
[218] = https://curl.se/bug/?i=21339
|
||||
[219] = https://curl.se/bug/?i=21221
|
||||
[220] = https://curl.se/bug/?i=21205
|
||||
[221] = https://curl.se/bug/?i=21253
|
||||
[222] = https://curl.se/bug/?i=21216
|
||||
[223] = https://curl.se/bug/?i=21218
|
||||
[224] = https://curl.se/bug/?i=21217
|
||||
[225] = https://curl.se/bug/?i=21336
|
||||
[226] = https://curl.se/bug/?i=21335
|
||||
[227] = https://curl.se/bug/?i=21236
|
||||
[228] = https://curl.se/bug/?i=21215
|
||||
[229] = https://curl.se/bug/?i=21267
|
||||
[230] = https://curl.se/bug/?i=21394
|
||||
[231] = https://curl.se/bug/?i=21222
|
||||
[232] = https://curl.se/bug/?i=21266
|
||||
[233] = https://curl.se/bug/?i=21392
|
||||
[234] = https://curl.se/bug/?i=21437
|
||||
[235] = https://curl.se/bug/?i=21461
|
||||
[236] = https://curl.se/bug/?i=21322
|
||||
[237] = https://curl.se/bug/?i=21388
|
||||
[238] = https://curl.se/bug/?i=21354
|
||||
[239] = https://curl.se/bug/?i=21386
|
||||
[240] = https://curl.se/bug/?i=21385
|
||||
[241] = https://curl.se/bug/?i=21384
|
||||
[242] = https://curl.se/bug/?i=21312
|
||||
[243] = https://curl.se/bug/?i=21383
|
||||
[244] = https://curl.se/bug/?i=21297
|
||||
[245] = https://curl.se/bug/?i=21313
|
||||
[246] = https://curl.se/bug/?i=21304
|
||||
[247] = https://curl.se/bug/?i=21296
|
||||
[248] = https://curl.se/bug/?i=21296
|
||||
[249] = https://curl.se/bug/?i=21441
|
||||
[250] = https://curl.se/bug/?i=21444
|
||||
[251] = https://curl.se/bug/?i=21302
|
||||
[252] = https://curl.se/bug/?i=21380
|
||||
[253] = https://curl.se/bug/?i=21378
|
||||
[254] = https://curl.se/bug/?i=20794
|
||||
[255] = https://curl.se/bug/?i=21377
|
||||
[256] = https://curl.se/bug/?i=21301
|
||||
[257] = https://curl.se/bug/?i=21303
|
||||
[258] = https://curl.se/bug/?i=21372
|
||||
[259] = https://curl.se/bug/?i=21146
|
||||
[260] = https://curl.se/bug/?i=21298
|
||||
[261] = https://curl.se/bug/?i=21270
|
||||
[262] = https://curl.se/bug/?i=21440
|
||||
[263] = https://curl.se/bug/?i=21460
|
||||
[264] = https://curl.se/bug/?i=21360
|
||||
[265] = https://curl.se/bug/?i=21458
|
||||
[266] = https://curl.se/bug/?i=21364
|
||||
[267] = https://curl.se/bug/?i=21363
|
||||
[268] = https://curl.se/bug/?i=21357
|
||||
[269] = https://curl.se/bug/?i=21359
|
||||
[270] = https://curl.se/bug/?i=21358
|
||||
[273] = https://curl.se/bug/?i=21455
|
||||
[274] = https://curl.se/bug/?i=21351
|
||||
[275] = https://curl.se/bug/?i=21340
|
||||
[276] = https://curl.se/bug/?i=21449
|
||||
[278] = https://curl.se/bug/?i=21432
|
||||
[279] = https://curl.se/bug/?i=21430
|
||||
[280] = https://curl.se/bug/?i=21427
|
||||
[284] = https://curl.se/bug/?i=21396
|
||||
[285] = https://curl.se/bug/?i=21421
|
||||
[288] = https://curl.se/bug/?i=19814
|
||||
[291] = https://curl.se/bug/?i=21415
|
||||
[294] = https://curl.se/bug/?i=21411
|
||||
97
OGP64/usr/share/doc/curl/SSL-PROBLEMS.md
Normal file
97
OGP64/usr/share/doc/curl/SSL-PROBLEMS.md
Normal file
|
|
@ -0,0 +1,97 @@
|
|||
<!--
|
||||
Copyright (C) Daniel Stenberg, <daniel@haxx.se>, et al.
|
||||
|
||||
SPDX-License-Identifier: curl
|
||||
-->
|
||||
|
||||
# SSL problems
|
||||
|
||||
First, let's establish that we often refer to TLS and SSL interchangeably as
|
||||
SSL here. The current protocol is called TLS, it was called SSL a long time
|
||||
ago.
|
||||
|
||||
There are several known reasons why a connection that involves SSL might
|
||||
fail. This is a document that attempts to detail the most common ones and
|
||||
how to mitigate them.
|
||||
|
||||
## CA certs
|
||||
|
||||
CA certs are used to digitally verify the server's certificate. You need a
|
||||
"ca bundle" for this. See lots of more details on this in the `SSLCERTS`
|
||||
document.
|
||||
|
||||
## CA bundle missing intermediate certificates
|
||||
|
||||
When using said CA bundle to verify a server cert, you may experience
|
||||
problems if your CA store does not contain the certificates for the
|
||||
intermediates if the server does not provide them.
|
||||
|
||||
The TLS protocol mandates that the intermediate certificates are sent in the
|
||||
handshake, but as browsers have ways to survive or work around such
|
||||
omissions, missing intermediates in TLS handshakes still happen that browser
|
||||
users do not notice.
|
||||
|
||||
Browsers work around this problem in two ways: they cache intermediate
|
||||
certificates from previous transfers and some implement the TLS "AIA"
|
||||
extension that lets the client explicitly download such certificates on
|
||||
demand.
|
||||
|
||||
## Protocol version
|
||||
|
||||
Some broken servers fail to support the protocol negotiation properly that
|
||||
SSL servers are supposed to handle. This may cause the connection to fail
|
||||
completely. Sometimes you may need to explicitly select an SSL version to
|
||||
use when connecting to make the connection succeed.
|
||||
|
||||
An additional complication can be that modern SSL libraries sometimes are
|
||||
built with support for older SSL and TLS versions disabled.
|
||||
|
||||
All versions of SSL and the TLS versions before 1.2 are considered insecure
|
||||
and should be avoided. Use TLS 1.2 or later.
|
||||
|
||||
## Ciphers
|
||||
|
||||
Clients give servers a list of ciphers to select from. If the list does not
|
||||
include any ciphers the server wants/can use, the connection handshake
|
||||
fails.
|
||||
|
||||
curl has recently disabled the user of a whole bunch of seriously insecure
|
||||
ciphers from its default set (slightly depending on SSL backend in use).
|
||||
|
||||
You may have to explicitly provide an alternative list of ciphers for curl
|
||||
to use to allow the server to use a weak cipher for you.
|
||||
|
||||
Note that these weak ciphers are identified as flawed. For example, this
|
||||
includes symmetric ciphers with less than 128-bit keys and RC4.
|
||||
|
||||
Schannel in Windows XP is not able to connect to servers that no longer
|
||||
support the legacy handshakes and algorithms used by those versions, so we
|
||||
advise against building curl to use Schannel on really old Windows versions.
|
||||
|
||||
Reference: [Prohibiting RC4 Cipher
|
||||
Suites](https://datatracker.ietf.org/doc/html/draft-popov-tls-prohibiting-rc4-01)
|
||||
|
||||
## Allow BEAST
|
||||
|
||||
BEAST is the name of a TLS 1.0 attack that surfaced 2011. When adding means
|
||||
to mitigate this attack, it turned out that some broken servers out there in
|
||||
the wild did not work properly with the BEAST mitigation in place.
|
||||
|
||||
To make such broken servers work, the --ssl-allow-beast option was
|
||||
introduced. Exactly as it sounds, it re-introduces the BEAST vulnerability
|
||||
but on the other hand it allows curl to connect to that kind of strange
|
||||
servers.
|
||||
|
||||
## Disabling certificate revocation checks
|
||||
|
||||
Some SSL backends may do certificate revocation checks (CRL, OCSP, etc)
|
||||
depending on the OS or build configuration. The --ssl-no-revoke option was
|
||||
introduced in 7.44.0 to disable revocation checking but currently is only
|
||||
supported for Schannel (the native Windows SSL library), with an exception
|
||||
in the case of Windows' Untrusted Publishers block list which it seems cannot
|
||||
be bypassed. This option may have broader support to accommodate other SSL
|
||||
backends in the future.
|
||||
|
||||
References:
|
||||
|
||||
https://curl.se/docs/ssl-compared.html
|
||||
155
OGP64/usr/share/doc/curl/SSLCERTS.md
Normal file
155
OGP64/usr/share/doc/curl/SSLCERTS.md
Normal file
|
|
@ -0,0 +1,155 @@
|
|||
<!--
|
||||
Copyright (C) Daniel Stenberg, <daniel@haxx.se>, et al.
|
||||
|
||||
SPDX-License-Identifier: curl
|
||||
-->
|
||||
|
||||
# TLS Certificate Verification
|
||||
|
||||
## Native vs file based
|
||||
|
||||
If curl was built with Schannel support, then curl uses the Windows native CA
|
||||
store for verification. On Apple operating systems, it is possible to use Apple's
|
||||
"SecTrust" services for certain TLS backends, details below.
|
||||
All other TLS libraries use a file based CA store by
|
||||
default.
|
||||
|
||||
## Verification
|
||||
|
||||
Every trusted server certificate is digitally signed by a Certificate
|
||||
Authority, a CA.
|
||||
|
||||
In your local CA store you have a collection of certificates from *trusted*
|
||||
certificate authorities that TLS clients like curl use to verify servers.
|
||||
|
||||
curl does certificate verification by default. This is done by verifying the
|
||||
signature and making sure the certificate was crafted for the server name
|
||||
provided in the URL.
|
||||
|
||||
If you communicate with HTTPS, FTPS or other TLS-using servers using
|
||||
certificates signed by a CA whose certificate is present in the store, you can
|
||||
be sure that the remote server really is the one it claims to be.
|
||||
|
||||
If the remote server uses a self-signed certificate, if you do not install a
|
||||
CA cert store, if the server uses a certificate signed by a CA that is not
|
||||
included in the store you use or if the remote host is an impostor
|
||||
impersonating your favorite site, the certificate check fails and reports an
|
||||
error.
|
||||
|
||||
If you think it wrongly failed the verification, consider one of the following
|
||||
sections.
|
||||
|
||||
### Skip verification
|
||||
|
||||
Tell curl to *not* verify the peer with `-k`/`--insecure`.
|
||||
|
||||
We **strongly** recommend this is avoided and that even if you end up doing
|
||||
this for experimentation or development, **never** skip verification in
|
||||
production.
|
||||
|
||||
### Use a custom CA store
|
||||
|
||||
Get a CA certificate that can verify the remote server and use the proper
|
||||
option to point out this CA cert for verification when connecting - for this
|
||||
specific transfer only.
|
||||
|
||||
With the curl command line tool: `--cacert [file]`
|
||||
|
||||
If you use the curl command line tool without a native CA store, then you can
|
||||
specify your own CA cert file by setting the environment variable
|
||||
`CURL_CA_BUNDLE` to the path of your choice. `SSL_CERT_FILE` and `SSL_CERT_DIR`
|
||||
are also supported.
|
||||
|
||||
If you are using the curl command line tool on Windows, curl searches for a CA
|
||||
cert file named `curl-ca-bundle.crt` in these directories and in this order:
|
||||
1. application's directory
|
||||
2. current working directory
|
||||
3. Windows System directory (e.g. C:\Windows\System32)
|
||||
4. Windows Directory (e.g. C:\Windows)
|
||||
5. all directories along %PATH%
|
||||
|
||||
curl 8.11.0 added a build-time option to disable this search behavior, and
|
||||
another option to restrict search to the application's directory.
|
||||
|
||||
### Use the native store
|
||||
|
||||
In several environments, in particular on Microsoft and Apple operating
|
||||
systems, you can ask curl to use the system's native CA store when verifying
|
||||
the certificate. Depending on how curl was built, this may already be the
|
||||
default.
|
||||
|
||||
With the curl command line tool: `--ca-native`.
|
||||
|
||||
### Modify the CA store
|
||||
|
||||
Add the CA cert for your server to the existing default CA certificate store.
|
||||
|
||||
Usually you can figure out the path to the local CA store by looking at the
|
||||
verbose output that `curl -v` shows when you connect to an HTTPS site.
|
||||
|
||||
### Change curl's default CA store
|
||||
|
||||
The default CA certificate store curl uses is set at build time. When you
|
||||
build curl you can point out your preferred path.
|
||||
|
||||
### Extract CA cert from a server
|
||||
|
||||
curl -w %{certs} https://example.com > cacert.pem
|
||||
|
||||
The certificate has `BEGIN CERTIFICATE` and `END CERTIFICATE` markers.
|
||||
|
||||
### Get the Mozilla CA store
|
||||
|
||||
Download a version of the Firefox CA store converted to PEM format on the [CA
|
||||
Extract](https://curl.se/docs/caextract.html) page. It always features the
|
||||
latest Firefox bundle.
|
||||
|
||||
## Native CA store
|
||||
|
||||
### Windows + Schannel
|
||||
|
||||
If curl was built with Schannel, then curl uses the certificates that are
|
||||
built into the OS. These are the same certificates that appear in the
|
||||
Internet Options control panel (under Windows).
|
||||
Any custom security rules for certificates are honored.
|
||||
|
||||
Schannel runs CRL checks on certificates unless peer verification is disabled.
|
||||
|
||||
### Apple + OpenSSL/GnuTLS
|
||||
|
||||
When curl is built with Apple SecTrust enabled and uses an OpenSSL compatible
|
||||
TLS backend or GnuTLS, the default verification is handled by that Apple
|
||||
service. As in:
|
||||
|
||||
curl https://example.com
|
||||
|
||||
You may still provide your own certificates on the command line, such as:
|
||||
|
||||
curl --cacert mycerts.pem https://example.com
|
||||
|
||||
In this situation, Apple SecTrust is **not** used and verification is done
|
||||
**only** with the trust anchors found in `mycerts.pem`. If you want **both**
|
||||
Apple SecTrust and your own file to be considered, use:
|
||||
|
||||
curl --ca-native --cacert mycerts.pem https://example.com
|
||||
|
||||
#### Other Combinations
|
||||
|
||||
How well the use of native CA stores work in all other combinations depends
|
||||
on the TLS backend and the OS. Many TLS backends offer functionality to access
|
||||
the native CA on a range of operating systems. Some provide this only on specific
|
||||
configurations.
|
||||
|
||||
Specific support in curl exists for Windows and OpenSSL compatible TLS backends.
|
||||
It tries to load the certificates from the Windows "CA" and "ROOT" stores for
|
||||
transfers requesting the native CA. Due to Window's delayed population of those
|
||||
stores, this might not always find all certificates.
|
||||
|
||||
## HTTPS proxy
|
||||
|
||||
curl can do HTTPS to the proxy separately from the connection to the server.
|
||||
This TLS connection is handled and verified separately from the server
|
||||
connection so instead of `--insecure` and `--cacert` to control the
|
||||
certificate verification, you use `--proxy-insecure` and `--proxy-cacert`.
|
||||
With these options, you make sure that the TLS connection and the trust of the
|
||||
proxy can be kept totally separate from the TLS connection to the server.
|
||||
708
OGP64/usr/share/doc/curl/TheArtOfHttpScripting.md
Normal file
708
OGP64/usr/share/doc/curl/TheArtOfHttpScripting.md
Normal file
|
|
@ -0,0 +1,708 @@
|
|||
<!--
|
||||
Copyright (C) Daniel Stenberg, <daniel@haxx.se>, et al.
|
||||
|
||||
SPDX-License-Identifier: curl
|
||||
-->
|
||||
|
||||
# The Art Of Scripting HTTP Requests Using curl
|
||||
|
||||
## Background
|
||||
|
||||
This document assumes that you are familiar with HTML and general networking.
|
||||
|
||||
The increasing amount of applications moving to the web has made "HTTP
|
||||
Scripting" more frequently requested and wanted. To be able to automatically
|
||||
extract information from the web, to fake users, to post or upload data to
|
||||
web servers are all important tasks today.
|
||||
|
||||
curl is a command line tool for doing all sorts of URL manipulations and
|
||||
transfers, but this particular document focuses on how to use it when doing
|
||||
HTTP requests for fun and profit. This documents assumes that you know how to
|
||||
invoke `curl --help` or `curl --manual` to get basic information about it.
|
||||
|
||||
curl is not written to do everything for you. It makes the requests, it gets
|
||||
the data, it sends data and it retrieves the information. You probably need
|
||||
to glue everything together using some kind of script language or repeated
|
||||
manual invokes.
|
||||
|
||||
## The HTTP Protocol
|
||||
|
||||
HTTP is the protocol used to fetch data from web servers. It is a simple
|
||||
protocol that is built upon TCP/IP. The protocol also allows information to
|
||||
get sent to the server from the client using a few different methods, as is
|
||||
shown here.
|
||||
|
||||
HTTP is plain ASCII text lines being sent by the client to a server to
|
||||
request a particular action, and then the server replies a few text lines
|
||||
before the actual requested content is sent to the client.
|
||||
|
||||
The client, curl, sends an HTTP request. The request contains a method (like
|
||||
GET, POST, HEAD etc), a number of request headers and sometimes a request
|
||||
body. The HTTP server responds with a status line (indicating if things went
|
||||
well), response headers and most often also a response body. The "body" part
|
||||
is the plain data you requested, like the actual HTML or the image etc.
|
||||
|
||||
## See the Protocol
|
||||
|
||||
Using curl's option [`--verbose`](https://curl.se/docs/manpage.html#-v) (`-v`
|
||||
as a short option) displays what kind of commands curl sends to the server,
|
||||
as well as a few other informational texts.
|
||||
|
||||
`--verbose` is the single most useful option when it comes to debug or even
|
||||
understand the curl<->server interaction.
|
||||
|
||||
Sometimes even `--verbose` is not enough. Then
|
||||
[`--trace`](https://curl.se/docs/manpage.html#-trace) and
|
||||
[`--trace-ascii`](https://curl.se/docs/manpage.html#--trace-ascii)
|
||||
offer even more details as they show **everything** curl sends and
|
||||
receives. Use it like this:
|
||||
|
||||
curl --trace-ascii debugdump.txt https://www.example.com/
|
||||
|
||||
## See the Timing
|
||||
|
||||
Many times you may wonder what exactly is taking all the time, or you want to
|
||||
know the amount of milliseconds between two points in a transfer. For those,
|
||||
and other similar situations, the
|
||||
[`--trace-time`](https://curl.se/docs/manpage.html#--trace-time) option is
|
||||
what you need. It prepends the time to each trace output line:
|
||||
|
||||
curl --trace-ascii d.txt --trace-time https://example.com/
|
||||
|
||||
## See which Transfer
|
||||
|
||||
When doing parallel transfers, it is relevant to see which transfer is doing
|
||||
what. When response headers are received (and logged) you need to know which
|
||||
transfer these are for.
|
||||
[`--trace-ids`](https://curl.se/docs/manpage.html#--trace-ids) option is what
|
||||
you need. It prepends the transfer and connection identifier to each trace
|
||||
output line:
|
||||
|
||||
curl --trace-ascii d.txt --trace-ids https://example.com/
|
||||
|
||||
## See the Response
|
||||
|
||||
By default curl sends the response to stdout. You need to redirect it
|
||||
somewhere to avoid that, most often that is done with `-o` or `-O`.
|
||||
|
||||
# URL
|
||||
|
||||
## Spec
|
||||
|
||||
The Uniform Resource Locator format is how you specify the address of a
|
||||
particular resource on the Internet. You know these, you have seen URLs like
|
||||
https://curl.se/ or https://example.com/ a million times. RFC 3986 is the
|
||||
canonical spec. The formal name is not URL, it is **URI**.
|
||||
|
||||
## Host
|
||||
|
||||
The hostname is usually resolved using DNS or your /etc/hosts file to an IP
|
||||
address and that is what curl communicates with. Alternatively you specify
|
||||
the IP address directly in the URL instead of a name.
|
||||
|
||||
For development and other trying out situations, you can point to a different
|
||||
IP address for a hostname than what would otherwise be used, by using curl's
|
||||
[`--resolve`](https://curl.se/docs/manpage.html#--resolve) option:
|
||||
|
||||
curl --resolve www.example.org:80:127.0.0.1 https://www.example.org/
|
||||
|
||||
## Port number
|
||||
|
||||
Each protocol curl supports operates on a default port number, be it over TCP
|
||||
or in some cases UDP. Normally you do not have to take that into
|
||||
consideration, but at times you run test servers on other ports or
|
||||
similar. Then you can specify the port number in the URL with a colon and a
|
||||
number immediately following the hostname. Like when doing HTTP to port
|
||||
1234:
|
||||
|
||||
curl https://www.example.org:1234/
|
||||
|
||||
The port number you specify in the URL is the number that the server uses to
|
||||
offer its services. Sometimes you may use a proxy, and then you may
|
||||
need to specify that proxy's port number separately from what curl needs to
|
||||
connect to the server. Like when using an HTTP proxy on port 4321:
|
||||
|
||||
curl --proxy http://proxy.example.org:4321 https://remote.example.org/
|
||||
|
||||
## Username and password
|
||||
|
||||
Some services are setup to require HTTP authentication and then you need to
|
||||
provide name and password which is then transferred to the remote site in
|
||||
various ways depending on the exact authentication protocol used.
|
||||
|
||||
You can opt to either insert the user and password in the URL or you can
|
||||
provide them separately:
|
||||
|
||||
curl https://user:password@example.org/
|
||||
|
||||
or
|
||||
|
||||
curl -u user:password https://example.org/
|
||||
|
||||
You need to pay attention that this kind of HTTP authentication is not what
|
||||
is usually done and requested by user-oriented websites these days. They tend
|
||||
to use forms and cookies instead.
|
||||
|
||||
## Path part
|
||||
|
||||
The path part is sent off to the server to request that it sends back the
|
||||
associated response. The path is what is to the right side of the slash that
|
||||
follows the hostname and possibly port number.
|
||||
|
||||
# Fetch a page
|
||||
|
||||
## GET
|
||||
|
||||
The simplest and most common request/operation made using HTTP is to GET a
|
||||
URL. The URL could itself refer to a webpage, an image or a file. The client
|
||||
issues a GET request to the server and receives the document it asked for.
|
||||
If you issue the command line
|
||||
|
||||
curl https://curl.se/
|
||||
|
||||
you get a webpage returned in your terminal window. The entire HTML document
|
||||
this URL identifies.
|
||||
|
||||
All HTTP replies contain a set of response headers that are normally hidden,
|
||||
use curl's [`--include`](https://curl.se/docs/manpage.html#-i) (`-i`)
|
||||
option to display them as well as the rest of the document.
|
||||
|
||||
## HEAD
|
||||
|
||||
You can ask the remote server for ONLY the headers by using the
|
||||
[`--head`](https://curl.se/docs/manpage.html#-I) (`-I`) option which makes
|
||||
curl issue a HEAD request. In some special cases servers deny the HEAD method
|
||||
while others still work, which is a particular kind of annoyance.
|
||||
|
||||
The HEAD method is defined and made so that the server returns the headers
|
||||
exactly the way it would do for a GET, but without a body. It means that you
|
||||
may see a `Content-Length:` in the response headers, but there must not be an
|
||||
actual body in the HEAD response.
|
||||
|
||||
## Multiple URLs in a single command line
|
||||
|
||||
A single curl command line may involve one or many URLs. The most common case
|
||||
is probably to use one, but you can specify any amount of URLs. Yes any. No
|
||||
limits. You then get requests repeated over and over for all the given URLs.
|
||||
|
||||
Example, send two GET requests:
|
||||
|
||||
curl https://url1.example.com https://url2.example.com
|
||||
|
||||
If you use [`--data`](https://curl.se/docs/manpage.html#-d) to POST to
|
||||
the URL, using multiple URLs means that you send that same POST to all the
|
||||
given URLs.
|
||||
|
||||
Example, send two POSTs:
|
||||
|
||||
curl --data name=curl https://url1.example.com https://url2.example.com
|
||||
|
||||
## Multiple HTTP methods in a single command line
|
||||
|
||||
Sometimes you need to operate on several URLs in a single command line and do
|
||||
different HTTP methods on each. For this, you might enjoy the
|
||||
[`--next`](https://curl.se/docs/manpage.html#-:) option. It is a separator
|
||||
that separates a bunch of options from the next. All the URLs before `--next`
|
||||
get the same method and get all the POST data merged into one.
|
||||
|
||||
When curl reaches the `--next` on the command line, it resets the method and
|
||||
the POST data and allow a new set.
|
||||
|
||||
Perhaps this is best shown with a few examples. To send first a HEAD and then
|
||||
a GET:
|
||||
|
||||
curl -I https://example.com --next https://example.com
|
||||
|
||||
To first send a POST and then a GET:
|
||||
|
||||
curl -d score=10 https://example.com/post.cgi --next https://example.com/results.html
|
||||
|
||||
# HTML forms
|
||||
|
||||
## Forms explained
|
||||
|
||||
Forms are the general way a website can present an HTML page with fields for
|
||||
the user to enter data in, and then press some kind of 'OK' or 'Submit'
|
||||
button to get that data sent to the server. The server then typically uses
|
||||
the posted data to decide how to act. Like using the entered words to search
|
||||
in a database, or to add the info in a bug tracking system, display the
|
||||
entered address on a map or using the info as a login-prompt verifying that
|
||||
the user is allowed to see what it is about to see.
|
||||
|
||||
Of course there has to be some kind of program on the server end to receive
|
||||
the data you send. You cannot invent something out of the air.
|
||||
|
||||
## GET
|
||||
|
||||
A GET-form uses the method GET, as specified in HTML like:
|
||||
|
||||
```html
|
||||
<form method="GET" action="junk.cgi">
|
||||
<input type=text name="birthyear">
|
||||
<input type=submit name=press value="OK">
|
||||
</form>
|
||||
```
|
||||
|
||||
In your favorite browser, this form appears with a text box to fill in and a
|
||||
press-button labeled "OK". If you fill in '1905' and press the OK button,
|
||||
your browser then creates a new URL to get for you. The URL gets
|
||||
`junk.cgi?birthyear=1905&press=OK` appended to the path part of the previous
|
||||
URL.
|
||||
|
||||
If the original form was seen on the page `www.example.com/when/birth.html`,
|
||||
the second page you get becomes
|
||||
`www.example.com/when/junk.cgi?birthyear=1905&press=OK`.
|
||||
|
||||
Most search engines work this way.
|
||||
|
||||
To make curl do the GET form post for you, enter the expected created URL:
|
||||
|
||||
curl "https://www.example.com/when/junk.cgi?birthyear=1905&press=OK"
|
||||
|
||||
## POST
|
||||
|
||||
The GET method makes all input field names get displayed in the URL field of
|
||||
your browser. That is generally a good thing when you want to be able to
|
||||
bookmark that page with your given data, but it is an obvious disadvantage if
|
||||
you entered secret information in one of the fields or if there are a large
|
||||
amount of fields creating a long and unreadable URL.
|
||||
|
||||
The HTTP protocol then offers the POST method. This way the client sends the
|
||||
data separated from the URL and thus you do not see any of it in the URL
|
||||
address field.
|
||||
|
||||
The form would look similar to the previous one:
|
||||
|
||||
```html
|
||||
<form method="POST" action="junk.cgi">
|
||||
<input type=text name="birthyear">
|
||||
<input type=submit name=press value=" OK ">
|
||||
</form>
|
||||
```
|
||||
|
||||
To use curl to post this form with the same data filled in as before, we
|
||||
could do it like:
|
||||
|
||||
curl --data "birthyear=1905&press=%20OK%20" https://www.example.com/when/junk.cgi
|
||||
|
||||
This kind of POST uses the Content-Type `application/x-www-form-urlencoded`
|
||||
and is the most widely used POST kind.
|
||||
|
||||
The data you send to the server MUST already be properly encoded, curl does
|
||||
not do that for you. For example, if you want the data to contain a space,
|
||||
you need to replace that space with `%20`, etc. Failing to comply with this
|
||||
most likely causes your data to be received wrongly and messed up.
|
||||
|
||||
Recent curl versions can in fact URL encode POST data for you, like this:
|
||||
|
||||
curl --data-urlencode "name=I am Daniel" https://www.example.com
|
||||
|
||||
If you repeat `--data` several times on the command line, curl concatenates
|
||||
all the given data pieces - and put a `&` symbol between each data segment.
|
||||
|
||||
## File Upload POST
|
||||
|
||||
Back in late 1995 they defined an additional way to post data over HTTP. It
|
||||
is documented in the RFC 1867, why this method sometimes is referred to as
|
||||
RFC 1867-posting.
|
||||
|
||||
This method is mainly designed to better support file uploads. A form that
|
||||
allows a user to upload a file could be written like this in HTML:
|
||||
|
||||
<form method="POST" enctype='multipart/form-data' action="upload.cgi">
|
||||
<input name=upload type=file>
|
||||
<input type=submit name=press value="OK">
|
||||
</form>
|
||||
|
||||
This clearly shows that the Content-Type about to be sent is
|
||||
`multipart/form-data`.
|
||||
|
||||
To post to a form like this with curl, you enter a command line like:
|
||||
|
||||
curl --form upload=@localfilename --form press=OK [URL]
|
||||
|
||||
## Hidden Fields
|
||||
|
||||
A common way for HTML based applications to pass state information between
|
||||
pages is to add hidden fields to the forms. Hidden fields are already filled
|
||||
in, they are not displayed to the user and they get passed along as all the
|
||||
other fields.
|
||||
|
||||
A similar example form with one visible field, one hidden field and one
|
||||
submit button could look like:
|
||||
|
||||
```html
|
||||
<form method="POST" action="foobar.cgi">
|
||||
<input type=text name="birthyear">
|
||||
<input type=hidden name="person" value="daniel">
|
||||
<input type=submit name="press" value="OK">
|
||||
</form>
|
||||
```
|
||||
|
||||
To POST this with curl, you do not have to think about if the fields are
|
||||
hidden or not. To curl they are all the same:
|
||||
|
||||
curl --data "birthyear=1905&press=OK&person=daniel" [URL]
|
||||
|
||||
## Figure Out What A POST Looks Like
|
||||
|
||||
When you are about to fill in a form and send it to a server by using curl
|
||||
instead of a browser, you are of course interested in sending a POST exactly
|
||||
the way your browser does.
|
||||
|
||||
An easy way to get to see this, is to save the HTML page with the form on
|
||||
your local disk, modify the 'method' to a GET, and press the submit button
|
||||
(you could also change the action URL if you want to).
|
||||
|
||||
You then clearly see the data get appended to the URL, separated with a
|
||||
`?`-letter as GET forms are supposed to.
|
||||
|
||||
# HTTP upload
|
||||
|
||||
## PUT
|
||||
|
||||
Perhaps the best way to upload data to an HTTP server is to use PUT. Then
|
||||
again, this of course requires that someone put a program or script on the
|
||||
server end that knows how to receive an HTTP PUT stream.
|
||||
|
||||
Put a file to an HTTP server with curl:
|
||||
|
||||
curl --upload-file uploadfile https://www.example.com/receive.cgi
|
||||
|
||||
# HTTP Authentication
|
||||
|
||||
## Basic Authentication
|
||||
|
||||
HTTP Authentication is the ability to tell the server your username and
|
||||
password so that it can verify that you are allowed to do the request you are
|
||||
doing. The Basic authentication used in HTTP (which is the type curl uses by
|
||||
default) is **plain text** based, which means it sends username and password
|
||||
only slightly obfuscated, but still fully readable by anyone that sniffs on
|
||||
the network between you and the remote server.
|
||||
|
||||
To tell curl to use a user and password for authentication:
|
||||
|
||||
curl --user myname:password https://www.example.com
|
||||
|
||||
## Other Authentication
|
||||
|
||||
The site might require a different authentication method (check the headers
|
||||
returned by the server), and then
|
||||
[`--ntlm`](https://curl.se/docs/manpage.html#--ntlm),
|
||||
[`--digest`](https://curl.se/docs/manpage.html#--digest),
|
||||
[`--negotiate`](https://curl.se/docs/manpage.html#--negotiate) or even
|
||||
[`--anyauth`](https://curl.se/docs/manpage.html#--anyauth) might be
|
||||
options that suit you.
|
||||
|
||||
## Proxy Authentication
|
||||
|
||||
Sometimes your HTTP access is only available through the use of an HTTP
|
||||
proxy. This seems to be especially common at various companies. An HTTP proxy
|
||||
may require its own user and password to allow the client to get through to
|
||||
the Internet. To specify those with curl, run something like:
|
||||
|
||||
curl --proxy-user proxyuser:proxypassword curl.se
|
||||
|
||||
If your proxy requires the authentication to be done using the NTLM method,
|
||||
use [`--proxy-ntlm`](https://curl.se/docs/manpage.html#--proxy-ntlm), if
|
||||
it requires Digest use
|
||||
[`--proxy-digest`](https://curl.se/docs/manpage.html#--proxy-digest).
|
||||
|
||||
If you use any one of these user+password options but leave out the password
|
||||
part, curl prompts for the password interactively.
|
||||
|
||||
## Hiding credentials
|
||||
|
||||
Do note that when a program is run, its parameters might be possible to see
|
||||
when listing the running processes of the system. Thus, other users may be
|
||||
able to watch your passwords if you pass them as plain command line
|
||||
options. There are ways to circumvent this.
|
||||
|
||||
It is worth noting that while this is how HTTP Authentication works, many
|
||||
websites do not use this concept when they provide logins etc. See the Web
|
||||
Login chapter further below for more details on that.
|
||||
|
||||
# More HTTP Headers
|
||||
|
||||
## Referer
|
||||
|
||||
An HTTP request may include a 'referer' field (yes it is misspelled), which
|
||||
can be used to tell from which URL the client got to this particular
|
||||
resource. Some programs/scripts check the referer field of requests to verify
|
||||
that this was not arriving from an external site or an unknown page. While
|
||||
this is a stupid way to check something so easily forged, many scripts still
|
||||
do it. Using curl, you can put anything you want in the referer-field and
|
||||
thus more easily be able to fool the server into serving your request.
|
||||
|
||||
Use curl to set the referer field with:
|
||||
|
||||
curl --referer https://www.example.come https://www.example.com
|
||||
|
||||
## User Agent
|
||||
|
||||
Similar to the referer field, all HTTP requests may set the User-Agent
|
||||
field. It names what user agent (client) that is being used. Many
|
||||
applications use this information to decide how to display pages. Silly web
|
||||
programmers try to make different pages for users of different browsers to
|
||||
make them look the best possible for their particular browsers. They usually
|
||||
also do different kinds of JavaScript etc.
|
||||
|
||||
At times, you may learn that getting a page with curl does not return the
|
||||
same page that you see when getting the page with your browser. Then you know
|
||||
it is time to set the User Agent field to fool the server into thinking you
|
||||
are one of those browsers.
|
||||
|
||||
By default, curl uses curl/VERSION, such as User-Agent: curl/8.11.0.
|
||||
|
||||
To make curl look like Internet Explorer 5 on a Windows 2000 box:
|
||||
|
||||
curl --user-agent "Mozilla/4.0 (compatible; MSIE 5.01; Windows NT 5.0)" [URL]
|
||||
|
||||
Or why not look like you are using Netscape 4.73 on an old Linux box:
|
||||
|
||||
curl --user-agent "Mozilla/4.73 [en] (X11; U; Linux 2.2.15 i686)" [URL]
|
||||
|
||||
## Redirects
|
||||
|
||||
## Location header
|
||||
|
||||
When a resource is requested from a server, the reply from the server may
|
||||
include a hint about where the browser should go next to find this page, or a
|
||||
new page keeping newly generated output. The header that tells the browser to
|
||||
redirect is `Location:`.
|
||||
|
||||
curl does not follow `Location:` headers by default, but displays such
|
||||
pages in the same manner it displays all HTTP replies. It does however
|
||||
feature an option that makes it attempt to follow the `Location:` pointers.
|
||||
|
||||
To tell curl to follow a Location:
|
||||
|
||||
curl --location https://www.example.com
|
||||
|
||||
If you use curl to POST to a site that immediately redirects you to another
|
||||
page, you can safely use [`--location`](https://curl.se/docs/manpage.html#-L)
|
||||
(`-L`) and `--data`/`--form` together. curl only uses POST in the first
|
||||
request, and then revert to GET in the following operations.
|
||||
|
||||
## Other redirects
|
||||
|
||||
Browsers typically support at least two other ways of redirects that curl
|
||||
does not: first the html may contain a meta refresh tag that asks the browser
|
||||
to load a specific URL after a set number of seconds, or it may use
|
||||
JavaScript to do it.
|
||||
|
||||
# Cookies
|
||||
|
||||
## Cookie Basics
|
||||
|
||||
The way the web browsers do "client side state control" is by using cookies.
|
||||
Cookies are names with associated contents. The cookies are sent to the client
|
||||
by the server. The server tells the client for what path and hostname it wants
|
||||
the cookie sent back, and it also sends an expiration date and a few more
|
||||
properties.
|
||||
|
||||
When a client communicates with a server with a name and path as previously
|
||||
specified in a received cookie, the client sends back the cookies and their
|
||||
contents to the server, unless of course they are expired.
|
||||
|
||||
Many applications and servers use this method to connect a series of requests
|
||||
into a single logical session. To be able to use curl in such occasions, we
|
||||
must be able to record and send back cookies the way the web application
|
||||
expects them. The same way browsers deal with them.
|
||||
|
||||
## Cookie options
|
||||
|
||||
The simplest way to send a few cookies to the server when getting a page with
|
||||
curl is to add them on the command line like:
|
||||
|
||||
curl --cookie "name=Daniel" https://www.example.com
|
||||
|
||||
Cookies are sent as common HTTP headers. This is practical as it allows curl
|
||||
to record cookies by recording headers. Record cookies with curl by
|
||||
using the [`--dump-header`](https://curl.se/docs/manpage.html#-D) (`-D`)
|
||||
option like:
|
||||
|
||||
curl --dump-header headers_and_cookies https://www.example.com
|
||||
|
||||
(Take note that the
|
||||
[`--cookie-jar`](https://curl.se/docs/manpage.html#-c) option described
|
||||
below is a better way to store cookies.)
|
||||
|
||||
curl has a full blown cookie parsing engine built-in that comes in use if you
|
||||
want to reconnect to a server and use cookies that were stored from a
|
||||
previous connection (or hand-crafted manually to fool the server into
|
||||
believing you had a previous connection). To use previously stored cookies,
|
||||
you run curl like:
|
||||
|
||||
curl --cookie stored_cookies_in_file https://www.example.com
|
||||
|
||||
curl's "cookie engine" gets enabled when you use the
|
||||
[`--cookie`](https://curl.se/docs/manpage.html#-b) option. If you only
|
||||
want curl to understand received cookies, use `--cookie` with a file that
|
||||
does not exist. Example, if you want to let curl understand cookies from a
|
||||
page and follow a location (and thus possibly send back cookies it received),
|
||||
you can invoke it like:
|
||||
|
||||
curl --cookie nada --location https://www.example.com
|
||||
|
||||
curl has the ability to read and write cookie files that use the same file
|
||||
format that Netscape and Mozilla once used. It is a convenient way to share
|
||||
cookies between scripts or invokes. The `--cookie` (`-b`) switch
|
||||
automatically detects if a given file is such a cookie file and parses it,
|
||||
and by using the `--cookie-jar` (`-c`) option you make curl write a new
|
||||
cookie file at the end of an operation:
|
||||
|
||||
curl --cookie cookies.txt --cookie-jar newcookies.txt \
|
||||
https://www.example.com
|
||||
|
||||
# HTTPS
|
||||
|
||||
## HTTPS is HTTP secure
|
||||
|
||||
There are a few ways to do secure HTTP transfers. By far the most common
|
||||
protocol for doing this is what is generally known as HTTPS, HTTP over
|
||||
SSL. SSL encrypts all the data that is sent and received over the network and
|
||||
thus makes it harder for attackers to spy on sensitive information.
|
||||
|
||||
SSL (or TLS as the current version of the standard is called) offers a set of
|
||||
advanced features to do secure transfers over HTTP.
|
||||
|
||||
curl supports encrypted fetches when built to use a TLS library and it can be
|
||||
built to use one out of a fairly large set of libraries - `curl -V` shows
|
||||
which one your curl was built to use (if any). To get a page from an HTTPS
|
||||
server, run curl like:
|
||||
|
||||
curl https://secure.example.com
|
||||
|
||||
## Certificates
|
||||
|
||||
In the HTTPS world, you use certificates to validate that you are the one you
|
||||
claim to be, as an addition to normal passwords. curl supports client- side
|
||||
certificates. All certificates are locked with a passphrase, which you need
|
||||
to enter before the certificate can be used by curl. The passphrase can be
|
||||
specified on the command line or if not, entered interactively when curl
|
||||
queries for it. Use a certificate with curl on an HTTPS server like:
|
||||
|
||||
curl --cert mycert.pem https://secure.example.com
|
||||
|
||||
curl also tries to verify that the server is who it claims to be, by
|
||||
verifying the server's certificate against a locally stored CA cert bundle.
|
||||
Failing the verification causes curl to deny the connection. You must then
|
||||
use [`--insecure`](https://curl.se/docs/manpage.html#-k) (`-k`) in case you
|
||||
want to tell curl to ignore that the server cannot be verified.
|
||||
|
||||
More about server certificate verification and ca cert bundles can be read in
|
||||
the [`SSLCERTS` document](https://curl.se/docs/sslcerts.html).
|
||||
|
||||
At times you may end up with your own CA cert store and then you can tell
|
||||
curl to use that to verify the server's certificate:
|
||||
|
||||
curl --cacert ca-bundle.pem https://example.com/
|
||||
|
||||
# Custom Request Elements
|
||||
|
||||
## Modify method and headers
|
||||
|
||||
Doing fancy stuff, you may need to add or change elements of a single curl
|
||||
request.
|
||||
|
||||
For example, you can change the POST method to `PROPFIND` and send the data
|
||||
as `Content-Type: text/xml` (instead of the default `Content-Type`) like
|
||||
this:
|
||||
|
||||
curl --data "<xml>" --header "Content-Type: text/xml" \
|
||||
--request PROPFIND example.com
|
||||
|
||||
You can delete a default header by providing one without content. Like you
|
||||
can ruin the request by chopping off the `Host:` header:
|
||||
|
||||
curl --header "Host:" https://www.example.com
|
||||
|
||||
You can add headers the same way. Your server may want a `Destination:`
|
||||
header, and you can add it:
|
||||
|
||||
curl --header "Destination: nowhere" https://example.com
|
||||
|
||||
## More on changed methods
|
||||
|
||||
It should be noted that curl selects which methods to use on its own
|
||||
depending on what action to ask for. `-d` makes a POST, `-I` makes a HEAD and
|
||||
so on. If you use the [`--request`](https://curl.se/docs/manpage.html#-X) /
|
||||
`-X` option you can change the method keyword curl selects, but you do not
|
||||
modify curl's behavior. This means that if you for example use -d "data" to
|
||||
do a POST, you can modify the method to a `PROPFIND` with `-X` and curl still
|
||||
thinks it sends a POST. You can change the normal GET to a POST method by
|
||||
adding `-X POST` in a command line like:
|
||||
|
||||
curl -X POST https://example.org/
|
||||
|
||||
curl however still acts as if it sent a GET so it does not send any request
|
||||
body etc.
|
||||
|
||||
# Web Login
|
||||
|
||||
## Some login tricks
|
||||
|
||||
While not strictly HTTP related, it still causes a lot of people problems so
|
||||
here's the executive run-down of how the vast majority of all login forms work
|
||||
and how to login to them using curl.
|
||||
|
||||
It can also be noted that to do this properly in an automated fashion, you
|
||||
most certainly need to script things and do multiple curl invokes etc.
|
||||
|
||||
First, servers mostly use cookies to track the logged-in status of the
|
||||
client, so you need to capture the cookies you receive in the responses.
|
||||
Then, many sites also set a special cookie on the login page (to make sure
|
||||
you got there through their login page) so you should make a habit of first
|
||||
getting the login-form page to capture the cookies set there.
|
||||
|
||||
Some web-based login systems feature various amounts of JavaScript, and
|
||||
sometimes they use such code to set or modify cookie contents. Possibly they
|
||||
do that to prevent programmed logins, like this manual describes how to...
|
||||
Anyway, if reading the code is not enough to let you repeat the behavior
|
||||
manually, capturing the HTTP requests done by your browsers and analyzing the
|
||||
sent cookies is usually a working method to work out how to shortcut the
|
||||
JavaScript need.
|
||||
|
||||
In the actual `<form>` tag for the login, lots of sites fill-in
|
||||
random/session or otherwise secretly generated hidden tags and you may need
|
||||
to first capture the HTML code for the login form and extract all the hidden
|
||||
fields to be able to do a proper login POST. Remember that the contents need
|
||||
to be URL encoded when sent in a normal POST.
|
||||
|
||||
# Debug
|
||||
|
||||
## Some debug tricks
|
||||
|
||||
Many times when you run curl on a site, you notice that the site does not
|
||||
seem to respond the same way to your curl requests as it does to your
|
||||
browser's.
|
||||
|
||||
Then you need to start making your curl requests more similar to your
|
||||
browser's requests:
|
||||
|
||||
- Use the `--trace-ascii` option to store fully detailed logs of the requests
|
||||
for easier analyzing and better understanding
|
||||
|
||||
- Make sure you check for and use cookies when needed (both reading with
|
||||
`--cookie` and writing with `--cookie-jar`)
|
||||
|
||||
- Set user-agent (with [`-A`](https://curl.se/docs/manpage.html#-A)) to
|
||||
one like a recent popular browser does
|
||||
|
||||
- Set referer (with [`-E`](https://curl.se/docs/manpage.html#-E)) like
|
||||
it is set by the browser
|
||||
|
||||
- If you use POST, make sure you send all the fields and in the same order as
|
||||
the browser does it.
|
||||
|
||||
## Check what the browsers do
|
||||
|
||||
A good helper to make sure you do this right, is the web browsers' developers
|
||||
tools that let you view all headers you send and receive (even when using
|
||||
HTTPS).
|
||||
|
||||
A more raw approach is to capture the HTTP traffic on the network with tools
|
||||
such as Wireshark or tcpdump and check what headers that were sent and
|
||||
received by the browser. (HTTPS forces you to use `SSLKEYLOGFILE` to do
|
||||
that.)
|
||||
7758
OGP64/usr/share/doc/curl/curl.txt
Normal file
7758
OGP64/usr/share/doc/curl/curl.txt
Normal file
File diff suppressed because it is too large
Load diff
BIN
OGP64/usr/share/doc/curl/everything-curl.epub
Normal file
BIN
OGP64/usr/share/doc/curl/everything-curl.epub
Normal file
Binary file not shown.
BIN
OGP64/usr/share/doc/curl/everything-curl.pdf
Normal file
BIN
OGP64/usr/share/doc/curl/everything-curl.pdf
Normal file
Binary file not shown.
154
OGP64/usr/share/doc/curl/wcurl.md
Normal file
154
OGP64/usr/share/doc/curl/wcurl.md
Normal file
|
|
@ -0,0 +1,154 @@
|
|||
---
|
||||
c: Copyright (C) Samuel Henrique <samueloph@debian.org>, Sergio Durigan Junior <sergiodj@debian.org> and many contributors, see the AUTHORS file.
|
||||
SPDX-License-Identifier: curl
|
||||
Title: wcurl
|
||||
Section: 1
|
||||
Source: wcurl
|
||||
See-also:
|
||||
- curl (1)
|
||||
- trurl (1)
|
||||
Added-in: n/a
|
||||
---
|
||||
|
||||
# NAME
|
||||
|
||||
**wcurl** - a simple wrapper around curl to easily download files.
|
||||
|
||||
# SYNOPSIS
|
||||
|
||||
**wcurl \<URL\>...**
|
||||
|
||||
**wcurl [--curl-options \<CURL_OPTIONS\>]... [--dry-run] [--no-decode-filename] [-o|-O|--output \<PATH\>] [--] \<URL\>...**
|
||||
|
||||
**wcurl [--curl-options=\<CURL_OPTIONS\>]... [--dry-run] [--no-decode-filename] [--output=\<PATH\>] [--] \<URL\>...**
|
||||
|
||||
**wcurl -V|--version**
|
||||
|
||||
**wcurl -h|--help**
|
||||
|
||||
# DESCRIPTION
|
||||
|
||||
**wcurl** is a simple curl wrapper which lets you use curl to download files
|
||||
without having to remember any parameters.
|
||||
|
||||
Call **wcurl** with a list of URLs you want to download and **wcurl**
|
||||
picks sane defaults.
|
||||
|
||||
If you need anything more complex, you can provide any of curl's supported
|
||||
parameters via the **--curl-options** option. Beware that you likely should be
|
||||
using curl directly if your use case is not covered.
|
||||
|
||||
By default, **wcurl** does:
|
||||
|
||||
## * Percent-encode whitespace in URLs;
|
||||
|
||||
## * Download multiple URLs in parallel
|
||||
if the installed curl's version is \>= 7.66.0 (--parallel);
|
||||
|
||||
## * Use a total number of 5 parallel connections to the same protocol + hostname + port number target
|
||||
if the installed curl's version is \>= 8.16.0 (--parallel-max-host);
|
||||
|
||||
## * Follow redirects;
|
||||
|
||||
## * Automatically choose a filename as output;
|
||||
|
||||
## * Avoid overwriting files
|
||||
if the installed curl's version is \>= 7.83.0 (--no-clobber);
|
||||
|
||||
## * Perform retries;
|
||||
|
||||
## * Set the downloaded file timestamp
|
||||
to the value provided by the server, if available;
|
||||
|
||||
## * Default to https
|
||||
if the URL does not contain any scheme;
|
||||
|
||||
## * Disable curl's URL globbing parser
|
||||
so {} and [] characters in URLs are not treated specially;
|
||||
|
||||
## * Percent-decode the resulting filename;
|
||||
|
||||
## * Use 'index.html' as the default filename
|
||||
if there is none in the URL.
|
||||
|
||||
# OPTIONS
|
||||
|
||||
## --curl-options, --curl-options=\<CURL_OPTIONS\>...
|
||||
|
||||
Specify extra options to be passed when invoking curl. May be specified more
|
||||
than once.
|
||||
|
||||
## -o, -O, --output, --output=\<PATH\>
|
||||
|
||||
Use the provided output path instead of getting it from the URL. If multiple
|
||||
URLs are provided, resulting files share the same name with a number appended to
|
||||
the end (curl \>= 7.83.0). If this option is provided multiple times, only the
|
||||
last value is considered.
|
||||
|
||||
## --no-decode-filename
|
||||
|
||||
Do not percent-decode the output filename, even if the percent-encoding in the
|
||||
URL was done by **wcurl**, e.g.: The URL contained whitespace.
|
||||
|
||||
## --dry-run
|
||||
|
||||
Do not actually execute curl, print what would be invoked.
|
||||
|
||||
## -V, \--version
|
||||
|
||||
Print version information.
|
||||
|
||||
## -h, \--help
|
||||
|
||||
Print help message.
|
||||
|
||||
# CURL_OPTIONS
|
||||
|
||||
Any option supported by curl can be set here. This is not used by **wcurl**; it
|
||||
is instead forwarded to the curl invocation.
|
||||
|
||||
# URL
|
||||
|
||||
URL to be downloaded. Anything that is not a parameter is considered
|
||||
an URL. Whitespace is percent-encoded and the URL is passed to curl, which
|
||||
then performs the parsing. May be specified more than once.
|
||||
|
||||
# EXAMPLES
|
||||
|
||||
Download a single file:
|
||||
|
||||
**wcurl example.com/filename.txt**
|
||||
|
||||
Download two files in parallel:
|
||||
|
||||
**wcurl example.com/filename1.txt example.com/filename2.txt**
|
||||
|
||||
Download a file passing the **--progress-bar** and **--http2** flags to curl:
|
||||
|
||||
**wcurl --curl-options="--progress-bar --http2" example.com/filename.txt**
|
||||
|
||||
Resume from an interrupted download. The options necessary to resume the download
|
||||
(`--clobber --continue-at -`) must be the **last** options specified in `--curl-options`.
|
||||
Note that the only way to resume interrupted downloads is to allow wcurl to overwrite
|
||||
the destination file:
|
||||
|
||||
**wcurl --curl-options="--clobber --continue-at -" example.com/filename.txt**
|
||||
|
||||
Download multiple files without a limit of concurrent connections per host (the default limit is 5):
|
||||
|
||||
**wcurl --curl-options="--parallel-max-host 0" example.com/filename1.txt example.com/filename2.txt**
|
||||
|
||||
# AUTHORS
|
||||
|
||||
Samuel Henrique \<samueloph@debian.org\>
|
||||
Sergio Durigan Junior \<sergiodj@debian.org\>
|
||||
and many contributors, see the AUTHORS file.
|
||||
|
||||
# REPORTING BUGS
|
||||
|
||||
If you experience any problems with **wcurl** that you do not experience with
|
||||
curl, submit an issue on GitHub: https://github.com/curl/wcurl
|
||||
|
||||
# COPYRIGHT
|
||||
|
||||
**wcurl** is licensed under the curl license
|
||||
674
OGP64/usr/share/doc/cygrunsrv/COPYING
Normal file
674
OGP64/usr/share/doc/cygrunsrv/COPYING
Normal file
|
|
@ -0,0 +1,674 @@
|
|||
GNU GENERAL PUBLIC LICENSE
|
||||
Version 3, 29 June 2007
|
||||
|
||||
Copyright (C) 2007 Free Software Foundation, Inc. <http://fsf.org/>
|
||||
Everyone is permitted to copy and distribute verbatim copies
|
||||
of this license document, but changing it is not allowed.
|
||||
|
||||
Preamble
|
||||
|
||||
The GNU General Public License is a free, copyleft license for
|
||||
software and other kinds of works.
|
||||
|
||||
The licenses for most software and other practical works are designed
|
||||
to take away your freedom to share and change the works. By contrast,
|
||||
the GNU General Public License is intended to guarantee your freedom to
|
||||
share and change all versions of a program--to make sure it remains free
|
||||
software for all its users. We, the Free Software Foundation, use the
|
||||
GNU General Public License for most of our software; it applies also to
|
||||
any other work released this way by its authors. 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
|
||||
them 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 prevent others from denying you
|
||||
these rights or asking you to surrender the rights. Therefore, you have
|
||||
certain responsibilities if you distribute copies of the software, or if
|
||||
you modify it: responsibilities to respect the freedom of others.
|
||||
|
||||
For example, if you distribute copies of such a program, whether
|
||||
gratis or for a fee, you must pass on to the recipients the same
|
||||
freedoms that you received. 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.
|
||||
|
||||
Developers that use the GNU GPL protect your rights with two steps:
|
||||
(1) assert copyright on the software, and (2) offer you this License
|
||||
giving you legal permission to copy, distribute and/or modify it.
|
||||
|
||||
For the developers' and authors' protection, the GPL clearly explains
|
||||
that there is no warranty for this free software. For both users' and
|
||||
authors' sake, the GPL requires that modified versions be marked as
|
||||
changed, so that their problems will not be attributed erroneously to
|
||||
authors of previous versions.
|
||||
|
||||
Some devices are designed to deny users access to install or run
|
||||
modified versions of the software inside them, although the manufacturer
|
||||
can do so. This is fundamentally incompatible with the aim of
|
||||
protecting users' freedom to change the software. The systematic
|
||||
pattern of such abuse occurs in the area of products for individuals to
|
||||
use, which is precisely where it is most unacceptable. Therefore, we
|
||||
have designed this version of the GPL to prohibit the practice for those
|
||||
products. If such problems arise substantially in other domains, we
|
||||
stand ready to extend this provision to those domains in future versions
|
||||
of the GPL, as needed to protect the freedom of users.
|
||||
|
||||
Finally, every program is threatened constantly by software patents.
|
||||
States should not allow patents to restrict development and use of
|
||||
software on general-purpose computers, but in those that do, we wish to
|
||||
avoid the special danger that patents applied to a free program could
|
||||
make it effectively proprietary. To prevent this, the GPL assures that
|
||||
patents cannot be used to render the program non-free.
|
||||
|
||||
The precise terms and conditions for copying, distribution and
|
||||
modification follow.
|
||||
|
||||
TERMS AND CONDITIONS
|
||||
|
||||
0. Definitions.
|
||||
|
||||
"This License" refers to version 3 of the GNU General Public License.
|
||||
|
||||
"Copyright" also means copyright-like laws that apply to other kinds of
|
||||
works, such as semiconductor masks.
|
||||
|
||||
"The Program" refers to any copyrightable work licensed under this
|
||||
License. Each licensee is addressed as "you". "Licensees" and
|
||||
"recipients" may be individuals or organizations.
|
||||
|
||||
To "modify" a work means to copy from or adapt all or part of the work
|
||||
in a fashion requiring copyright permission, other than the making of an
|
||||
exact copy. The resulting work is called a "modified version" of the
|
||||
earlier work or a work "based on" the earlier work.
|
||||
|
||||
A "covered work" means either the unmodified Program or a work based
|
||||
on the Program.
|
||||
|
||||
To "propagate" a work means to do anything with it that, without
|
||||
permission, would make you directly or secondarily liable for
|
||||
infringement under applicable copyright law, except executing it on a
|
||||
computer or modifying a private copy. Propagation includes copying,
|
||||
distribution (with or without modification), making available to the
|
||||
public, and in some countries other activities as well.
|
||||
|
||||
To "convey" a work means any kind of propagation that enables other
|
||||
parties to make or receive copies. Mere interaction with a user through
|
||||
a computer network, with no transfer of a copy, is not conveying.
|
||||
|
||||
An interactive user interface displays "Appropriate Legal Notices"
|
||||
to the extent that it includes a convenient and prominently visible
|
||||
feature that (1) displays an appropriate copyright notice, and (2)
|
||||
tells the user that there is no warranty for the work (except to the
|
||||
extent that warranties are provided), that licensees may convey the
|
||||
work under this License, and how to view a copy of this License. If
|
||||
the interface presents a list of user commands or options, such as a
|
||||
menu, a prominent item in the list meets this criterion.
|
||||
|
||||
1. Source Code.
|
||||
|
||||
The "source code" for a work means the preferred form of the work
|
||||
for making modifications to it. "Object code" means any non-source
|
||||
form of a work.
|
||||
|
||||
A "Standard Interface" means an interface that either is an official
|
||||
standard defined by a recognized standards body, or, in the case of
|
||||
interfaces specified for a particular programming language, one that
|
||||
is widely used among developers working in that language.
|
||||
|
||||
The "System Libraries" of an executable work include anything, other
|
||||
than the work as a whole, that (a) is included in the normal form of
|
||||
packaging a Major Component, but which is not part of that Major
|
||||
Component, and (b) serves only to enable use of the work with that
|
||||
Major Component, or to implement a Standard Interface for which an
|
||||
implementation is available to the public in source code form. A
|
||||
"Major Component", in this context, means a major essential component
|
||||
(kernel, window system, and so on) of the specific operating system
|
||||
(if any) on which the executable work runs, or a compiler used to
|
||||
produce the work, or an object code interpreter used to run it.
|
||||
|
||||
The "Corresponding Source" for a work in object code form means all
|
||||
the source code needed to generate, install, and (for an executable
|
||||
work) run the object code and to modify the work, including scripts to
|
||||
control those activities. However, it does not include the work's
|
||||
System Libraries, or general-purpose tools or generally available free
|
||||
programs which are used unmodified in performing those activities but
|
||||
which are not part of the work. For example, Corresponding Source
|
||||
includes interface definition files associated with source files for
|
||||
the work, and the source code for shared libraries and dynamically
|
||||
linked subprograms that the work is specifically designed to require,
|
||||
such as by intimate data communication or control flow between those
|
||||
subprograms and other parts of the work.
|
||||
|
||||
The Corresponding Source need not include anything that users
|
||||
can regenerate automatically from other parts of the Corresponding
|
||||
Source.
|
||||
|
||||
The Corresponding Source for a work in source code form is that
|
||||
same work.
|
||||
|
||||
2. Basic Permissions.
|
||||
|
||||
All rights granted under this License are granted for the term of
|
||||
copyright on the Program, and are irrevocable provided the stated
|
||||
conditions are met. This License explicitly affirms your unlimited
|
||||
permission to run the unmodified Program. The output from running a
|
||||
covered work is covered by this License only if the output, given its
|
||||
content, constitutes a covered work. This License acknowledges your
|
||||
rights of fair use or other equivalent, as provided by copyright law.
|
||||
|
||||
You may make, run and propagate covered works that you do not
|
||||
convey, without conditions so long as your license otherwise remains
|
||||
in force. You may convey covered works to others for the sole purpose
|
||||
of having them make modifications exclusively for you, or provide you
|
||||
with facilities for running those works, provided that you comply with
|
||||
the terms of this License in conveying all material for which you do
|
||||
not control copyright. Those thus making or running the covered works
|
||||
for you must do so exclusively on your behalf, under your direction
|
||||
and control, on terms that prohibit them from making any copies of
|
||||
your copyrighted material outside their relationship with you.
|
||||
|
||||
Conveying under any other circumstances is permitted solely under
|
||||
the conditions stated below. Sublicensing is not allowed; section 10
|
||||
makes it unnecessary.
|
||||
|
||||
3. Protecting Users' Legal Rights From Anti-Circumvention Law.
|
||||
|
||||
No covered work shall be deemed part of an effective technological
|
||||
measure under any applicable law fulfilling obligations under article
|
||||
11 of the WIPO copyright treaty adopted on 20 December 1996, or
|
||||
similar laws prohibiting or restricting circumvention of such
|
||||
measures.
|
||||
|
||||
When you convey a covered work, you waive any legal power to forbid
|
||||
circumvention of technological measures to the extent such circumvention
|
||||
is effected by exercising rights under this License with respect to
|
||||
the covered work, and you disclaim any intention to limit operation or
|
||||
modification of the work as a means of enforcing, against the work's
|
||||
users, your or third parties' legal rights to forbid circumvention of
|
||||
technological measures.
|
||||
|
||||
4. Conveying Verbatim Copies.
|
||||
|
||||
You may convey 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;
|
||||
keep intact all notices stating that this License and any
|
||||
non-permissive terms added in accord with section 7 apply to the code;
|
||||
keep intact all notices of the absence of any warranty; and give all
|
||||
recipients a copy of this License along with the Program.
|
||||
|
||||
You may charge any price or no price for each copy that you convey,
|
||||
and you may offer support or warranty protection for a fee.
|
||||
|
||||
5. Conveying Modified Source Versions.
|
||||
|
||||
You may convey a work based on the Program, or the modifications to
|
||||
produce it from the Program, in the form of source code under the
|
||||
terms of section 4, provided that you also meet all of these conditions:
|
||||
|
||||
a) The work must carry prominent notices stating that you modified
|
||||
it, and giving a relevant date.
|
||||
|
||||
b) The work must carry prominent notices stating that it is
|
||||
released under this License and any conditions added under section
|
||||
7. This requirement modifies the requirement in section 4 to
|
||||
"keep intact all notices".
|
||||
|
||||
c) You must license the entire work, as a whole, under this
|
||||
License to anyone who comes into possession of a copy. This
|
||||
License will therefore apply, along with any applicable section 7
|
||||
additional terms, to the whole of the work, and all its parts,
|
||||
regardless of how they are packaged. This License gives no
|
||||
permission to license the work in any other way, but it does not
|
||||
invalidate such permission if you have separately received it.
|
||||
|
||||
d) If the work has interactive user interfaces, each must display
|
||||
Appropriate Legal Notices; however, if the Program has interactive
|
||||
interfaces that do not display Appropriate Legal Notices, your
|
||||
work need not make them do so.
|
||||
|
||||
A compilation of a covered work with other separate and independent
|
||||
works, which are not by their nature extensions of the covered work,
|
||||
and which are not combined with it such as to form a larger program,
|
||||
in or on a volume of a storage or distribution medium, is called an
|
||||
"aggregate" if the compilation and its resulting copyright are not
|
||||
used to limit the access or legal rights of the compilation's users
|
||||
beyond what the individual works permit. Inclusion of a covered work
|
||||
in an aggregate does not cause this License to apply to the other
|
||||
parts of the aggregate.
|
||||
|
||||
6. Conveying Non-Source Forms.
|
||||
|
||||
You may convey a covered work in object code form under the terms
|
||||
of sections 4 and 5, provided that you also convey the
|
||||
machine-readable Corresponding Source under the terms of this License,
|
||||
in one of these ways:
|
||||
|
||||
a) Convey the object code in, or embodied in, a physical product
|
||||
(including a physical distribution medium), accompanied by the
|
||||
Corresponding Source fixed on a durable physical medium
|
||||
customarily used for software interchange.
|
||||
|
||||
b) Convey the object code in, or embodied in, a physical product
|
||||
(including a physical distribution medium), accompanied by a
|
||||
written offer, valid for at least three years and valid for as
|
||||
long as you offer spare parts or customer support for that product
|
||||
model, to give anyone who possesses the object code either (1) a
|
||||
copy of the Corresponding Source for all the software in the
|
||||
product that is covered by this License, on a durable physical
|
||||
medium customarily used for software interchange, for a price no
|
||||
more than your reasonable cost of physically performing this
|
||||
conveying of source, or (2) access to copy the
|
||||
Corresponding Source from a network server at no charge.
|
||||
|
||||
c) Convey individual copies of the object code with a copy of the
|
||||
written offer to provide the Corresponding Source. This
|
||||
alternative is allowed only occasionally and noncommercially, and
|
||||
only if you received the object code with such an offer, in accord
|
||||
with subsection 6b.
|
||||
|
||||
d) Convey the object code by offering access from a designated
|
||||
place (gratis or for a charge), and offer equivalent access to the
|
||||
Corresponding Source in the same way through the same place at no
|
||||
further charge. You need not require recipients to copy the
|
||||
Corresponding Source along with the object code. If the place to
|
||||
copy the object code is a network server, the Corresponding Source
|
||||
may be on a different server (operated by you or a third party)
|
||||
that supports equivalent copying facilities, provided you maintain
|
||||
clear directions next to the object code saying where to find the
|
||||
Corresponding Source. Regardless of what server hosts the
|
||||
Corresponding Source, you remain obligated to ensure that it is
|
||||
available for as long as needed to satisfy these requirements.
|
||||
|
||||
e) Convey the object code using peer-to-peer transmission, provided
|
||||
you inform other peers where the object code and Corresponding
|
||||
Source of the work are being offered to the general public at no
|
||||
charge under subsection 6d.
|
||||
|
||||
A separable portion of the object code, whose source code is excluded
|
||||
from the Corresponding Source as a System Library, need not be
|
||||
included in conveying the object code work.
|
||||
|
||||
A "User Product" is either (1) a "consumer product", which means any
|
||||
tangible personal property which is normally used for personal, family,
|
||||
or household purposes, or (2) anything designed or sold for incorporation
|
||||
into a dwelling. In determining whether a product is a consumer product,
|
||||
doubtful cases shall be resolved in favor of coverage. For a particular
|
||||
product received by a particular user, "normally used" refers to a
|
||||
typical or common use of that class of product, regardless of the status
|
||||
of the particular user or of the way in which the particular user
|
||||
actually uses, or expects or is expected to use, the product. A product
|
||||
is a consumer product regardless of whether the product has substantial
|
||||
commercial, industrial or non-consumer uses, unless such uses represent
|
||||
the only significant mode of use of the product.
|
||||
|
||||
"Installation Information" for a User Product means any methods,
|
||||
procedures, authorization keys, or other information required to install
|
||||
and execute modified versions of a covered work in that User Product from
|
||||
a modified version of its Corresponding Source. The information must
|
||||
suffice to ensure that the continued functioning of the modified object
|
||||
code is in no case prevented or interfered with solely because
|
||||
modification has been made.
|
||||
|
||||
If you convey an object code work under this section in, or with, or
|
||||
specifically for use in, a User Product, and the conveying occurs as
|
||||
part of a transaction in which the right of possession and use of the
|
||||
User Product is transferred to the recipient in perpetuity or for a
|
||||
fixed term (regardless of how the transaction is characterized), the
|
||||
Corresponding Source conveyed under this section must be accompanied
|
||||
by the Installation Information. But this requirement does not apply
|
||||
if neither you nor any third party retains the ability to install
|
||||
modified object code on the User Product (for example, the work has
|
||||
been installed in ROM).
|
||||
|
||||
The requirement to provide Installation Information does not include a
|
||||
requirement to continue to provide support service, warranty, or updates
|
||||
for a work that has been modified or installed by the recipient, or for
|
||||
the User Product in which it has been modified or installed. Access to a
|
||||
network may be denied when the modification itself materially and
|
||||
adversely affects the operation of the network or violates the rules and
|
||||
protocols for communication across the network.
|
||||
|
||||
Corresponding Source conveyed, and Installation Information provided,
|
||||
in accord with this section must be in a format that is publicly
|
||||
documented (and with an implementation available to the public in
|
||||
source code form), and must require no special password or key for
|
||||
unpacking, reading or copying.
|
||||
|
||||
7. Additional Terms.
|
||||
|
||||
"Additional permissions" are terms that supplement the terms of this
|
||||
License by making exceptions from one or more of its conditions.
|
||||
Additional permissions that are applicable to the entire Program shall
|
||||
be treated as though they were included in this License, to the extent
|
||||
that they are valid under applicable law. If additional permissions
|
||||
apply only to part of the Program, that part may be used separately
|
||||
under those permissions, but the entire Program remains governed by
|
||||
this License without regard to the additional permissions.
|
||||
|
||||
When you convey a copy of a covered work, you may at your option
|
||||
remove any additional permissions from that copy, or from any part of
|
||||
it. (Additional permissions may be written to require their own
|
||||
removal in certain cases when you modify the work.) You may place
|
||||
additional permissions on material, added by you to a covered work,
|
||||
for which you have or can give appropriate copyright permission.
|
||||
|
||||
Notwithstanding any other provision of this License, for material you
|
||||
add to a covered work, you may (if authorized by the copyright holders of
|
||||
that material) supplement the terms of this License with terms:
|
||||
|
||||
a) Disclaiming warranty or limiting liability differently from the
|
||||
terms of sections 15 and 16 of this License; or
|
||||
|
||||
b) Requiring preservation of specified reasonable legal notices or
|
||||
author attributions in that material or in the Appropriate Legal
|
||||
Notices displayed by works containing it; or
|
||||
|
||||
c) Prohibiting misrepresentation of the origin of that material, or
|
||||
requiring that modified versions of such material be marked in
|
||||
reasonable ways as different from the original version; or
|
||||
|
||||
d) Limiting the use for publicity purposes of names of licensors or
|
||||
authors of the material; or
|
||||
|
||||
e) Declining to grant rights under trademark law for use of some
|
||||
trade names, trademarks, or service marks; or
|
||||
|
||||
f) Requiring indemnification of licensors and authors of that
|
||||
material by anyone who conveys the material (or modified versions of
|
||||
it) with contractual assumptions of liability to the recipient, for
|
||||
any liability that these contractual assumptions directly impose on
|
||||
those licensors and authors.
|
||||
|
||||
All other non-permissive additional terms are considered "further
|
||||
restrictions" within the meaning of section 10. If the Program as you
|
||||
received it, or any part of it, contains a notice stating that it is
|
||||
governed by this License along with a term that is a further
|
||||
restriction, you may remove that term. If a license document contains
|
||||
a further restriction but permits relicensing or conveying under this
|
||||
License, you may add to a covered work material governed by the terms
|
||||
of that license document, provided that the further restriction does
|
||||
not survive such relicensing or conveying.
|
||||
|
||||
If you add terms to a covered work in accord with this section, you
|
||||
must place, in the relevant source files, a statement of the
|
||||
additional terms that apply to those files, or a notice indicating
|
||||
where to find the applicable terms.
|
||||
|
||||
Additional terms, permissive or non-permissive, may be stated in the
|
||||
form of a separately written license, or stated as exceptions;
|
||||
the above requirements apply either way.
|
||||
|
||||
8. Termination.
|
||||
|
||||
You may not propagate or modify a covered work except as expressly
|
||||
provided under this License. Any attempt otherwise to propagate or
|
||||
modify it is void, and will automatically terminate your rights under
|
||||
this License (including any patent licenses granted under the third
|
||||
paragraph of section 11).
|
||||
|
||||
However, if you cease all violation of this License, then your
|
||||
license from a particular copyright holder is reinstated (a)
|
||||
provisionally, unless and until the copyright holder explicitly and
|
||||
finally terminates your license, and (b) permanently, if the copyright
|
||||
holder fails to notify you of the violation by some reasonable means
|
||||
prior to 60 days after the cessation.
|
||||
|
||||
Moreover, your license from a particular copyright holder is
|
||||
reinstated permanently if the copyright holder notifies you of the
|
||||
violation by some reasonable means, this is the first time you have
|
||||
received notice of violation of this License (for any work) from that
|
||||
copyright holder, and you cure the violation prior to 30 days after
|
||||
your receipt of the notice.
|
||||
|
||||
Termination of your rights under this section does not terminate the
|
||||
licenses of parties who have received copies or rights from you under
|
||||
this License. If your rights have been terminated and not permanently
|
||||
reinstated, you do not qualify to receive new licenses for the same
|
||||
material under section 10.
|
||||
|
||||
9. Acceptance Not Required for Having Copies.
|
||||
|
||||
You are not required to accept this License in order to receive or
|
||||
run a copy of the Program. Ancillary propagation of a covered work
|
||||
occurring solely as a consequence of using peer-to-peer transmission
|
||||
to receive a copy likewise does not require acceptance. However,
|
||||
nothing other than this License grants you permission to propagate or
|
||||
modify any covered work. These actions infringe copyright if you do
|
||||
not accept this License. Therefore, by modifying or propagating a
|
||||
covered work, you indicate your acceptance of this License to do so.
|
||||
|
||||
10. Automatic Licensing of Downstream Recipients.
|
||||
|
||||
Each time you convey a covered work, the recipient automatically
|
||||
receives a license from the original licensors, to run, modify and
|
||||
propagate that work, subject to this License. You are not responsible
|
||||
for enforcing compliance by third parties with this License.
|
||||
|
||||
An "entity transaction" is a transaction transferring control of an
|
||||
organization, or substantially all assets of one, or subdividing an
|
||||
organization, or merging organizations. If propagation of a covered
|
||||
work results from an entity transaction, each party to that
|
||||
transaction who receives a copy of the work also receives whatever
|
||||
licenses to the work the party's predecessor in interest had or could
|
||||
give under the previous paragraph, plus a right to possession of the
|
||||
Corresponding Source of the work from the predecessor in interest, if
|
||||
the predecessor has it or can get it with reasonable efforts.
|
||||
|
||||
You may not impose any further restrictions on the exercise of the
|
||||
rights granted or affirmed under this License. For example, you may
|
||||
not impose a license fee, royalty, or other charge for exercise of
|
||||
rights granted under this License, and you may not initiate litigation
|
||||
(including a cross-claim or counterclaim in a lawsuit) alleging that
|
||||
any patent claim is infringed by making, using, selling, offering for
|
||||
sale, or importing the Program or any portion of it.
|
||||
|
||||
11. Patents.
|
||||
|
||||
A "contributor" is a copyright holder who authorizes use under this
|
||||
License of the Program or a work on which the Program is based. The
|
||||
work thus licensed is called the contributor's "contributor version".
|
||||
|
||||
A contributor's "essential patent claims" are all patent claims
|
||||
owned or controlled by the contributor, whether already acquired or
|
||||
hereafter acquired, that would be infringed by some manner, permitted
|
||||
by this License, of making, using, or selling its contributor version,
|
||||
but do not include claims that would be infringed only as a
|
||||
consequence of further modification of the contributor version. For
|
||||
purposes of this definition, "control" includes the right to grant
|
||||
patent sublicenses in a manner consistent with the requirements of
|
||||
this License.
|
||||
|
||||
Each contributor grants you a non-exclusive, worldwide, royalty-free
|
||||
patent license under the contributor's essential patent claims, to
|
||||
make, use, sell, offer for sale, import and otherwise run, modify and
|
||||
propagate the contents of its contributor version.
|
||||
|
||||
In the following three paragraphs, a "patent license" is any express
|
||||
agreement or commitment, however denominated, not to enforce a patent
|
||||
(such as an express permission to practice a patent or covenant not to
|
||||
sue for patent infringement). To "grant" such a patent license to a
|
||||
party means to make such an agreement or commitment not to enforce a
|
||||
patent against the party.
|
||||
|
||||
If you convey a covered work, knowingly relying on a patent license,
|
||||
and the Corresponding Source of the work is not available for anyone
|
||||
to copy, free of charge and under the terms of this License, through a
|
||||
publicly available network server or other readily accessible means,
|
||||
then you must either (1) cause the Corresponding Source to be so
|
||||
available, or (2) arrange to deprive yourself of the benefit of the
|
||||
patent license for this particular work, or (3) arrange, in a manner
|
||||
consistent with the requirements of this License, to extend the patent
|
||||
license to downstream recipients. "Knowingly relying" means you have
|
||||
actual knowledge that, but for the patent license, your conveying the
|
||||
covered work in a country, or your recipient's use of the covered work
|
||||
in a country, would infringe one or more identifiable patents in that
|
||||
country that you have reason to believe are valid.
|
||||
|
||||
If, pursuant to or in connection with a single transaction or
|
||||
arrangement, you convey, or propagate by procuring conveyance of, a
|
||||
covered work, and grant a patent license to some of the parties
|
||||
receiving the covered work authorizing them to use, propagate, modify
|
||||
or convey a specific copy of the covered work, then the patent license
|
||||
you grant is automatically extended to all recipients of the covered
|
||||
work and works based on it.
|
||||
|
||||
A patent license is "discriminatory" if it does not include within
|
||||
the scope of its coverage, prohibits the exercise of, or is
|
||||
conditioned on the non-exercise of one or more of the rights that are
|
||||
specifically granted under this License. You may not convey a covered
|
||||
work if you are a party to an arrangement with a third party that is
|
||||
in the business of distributing software, under which you make payment
|
||||
to the third party based on the extent of your activity of conveying
|
||||
the work, and under which the third party grants, to any of the
|
||||
parties who would receive the covered work from you, a discriminatory
|
||||
patent license (a) in connection with copies of the covered work
|
||||
conveyed by you (or copies made from those copies), or (b) primarily
|
||||
for and in connection with specific products or compilations that
|
||||
contain the covered work, unless you entered into that arrangement,
|
||||
or that patent license was granted, prior to 28 March 2007.
|
||||
|
||||
Nothing in this License shall be construed as excluding or limiting
|
||||
any implied license or other defenses to infringement that may
|
||||
otherwise be available to you under applicable patent law.
|
||||
|
||||
12. No Surrender of Others' Freedom.
|
||||
|
||||
If 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 convey a
|
||||
covered work so as to satisfy simultaneously your obligations under this
|
||||
License and any other pertinent obligations, then as a consequence you may
|
||||
not convey it at all. For example, if you agree to terms that obligate you
|
||||
to collect a royalty for further conveying from those to whom you convey
|
||||
the Program, the only way you could satisfy both those terms and this
|
||||
License would be to refrain entirely from conveying the Program.
|
||||
|
||||
13. Use with the GNU Affero General Public License.
|
||||
|
||||
Notwithstanding any other provision of this License, you have
|
||||
permission to link or combine any covered work with a work licensed
|
||||
under version 3 of the GNU Affero General Public License into a single
|
||||
combined work, and to convey the resulting work. The terms of this
|
||||
License will continue to apply to the part which is the covered work,
|
||||
but the special requirements of the GNU Affero General Public License,
|
||||
section 13, concerning interaction through a network will apply to the
|
||||
combination as such.
|
||||
|
||||
14. Revised Versions of this License.
|
||||
|
||||
The Free Software Foundation may publish revised and/or new versions of
|
||||
the GNU 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 that a certain numbered version of the GNU General
|
||||
Public License "or any later version" applies to it, you have the
|
||||
option of following the terms and conditions either of that numbered
|
||||
version or of any later version published by the Free Software
|
||||
Foundation. If the Program does not specify a version number of the
|
||||
GNU General Public License, you may choose any version ever published
|
||||
by the Free Software Foundation.
|
||||
|
||||
If the Program specifies that a proxy can decide which future
|
||||
versions of the GNU General Public License can be used, that proxy's
|
||||
public statement of acceptance of a version permanently authorizes you
|
||||
to choose that version for the Program.
|
||||
|
||||
Later license versions may give you additional or different
|
||||
permissions. However, no additional obligations are imposed on any
|
||||
author or copyright holder as a result of your choosing to follow a
|
||||
later version.
|
||||
|
||||
15. Disclaimer of Warranty.
|
||||
|
||||
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.
|
||||
|
||||
16. Limitation of Liability.
|
||||
|
||||
IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING
|
||||
WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MODIFIES AND/OR CONVEYS
|
||||
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.
|
||||
|
||||
17. Interpretation of Sections 15 and 16.
|
||||
|
||||
If the disclaimer of warranty and limitation of liability provided
|
||||
above cannot be given local legal effect according to their terms,
|
||||
reviewing courts shall apply local law that most closely approximates
|
||||
an absolute waiver of all civil liability in connection with the
|
||||
Program, unless a warranty or assumption of liability accompanies a
|
||||
copy of the Program in return for a fee.
|
||||
|
||||
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
|
||||
state the exclusion of warranty; and each file should have at least
|
||||
the "copyright" line and a pointer to where the full notice is found.
|
||||
|
||||
<one line to give the program's name and a brief idea of what it does.>
|
||||
Copyright (C) <year> <name of author>
|
||||
|
||||
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 3 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, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
Also add information on how to contact you by electronic and paper mail.
|
||||
|
||||
If the program does terminal interaction, make it output a short
|
||||
notice like this when it starts in an interactive mode:
|
||||
|
||||
<program> Copyright (C) <year> <name of author>
|
||||
This program 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, your program's commands
|
||||
might be different; for a GUI interface, you would use an "about box".
|
||||
|
||||
You should also get your employer (if you work as a programmer) or school,
|
||||
if any, to sign a "copyright disclaimer" for the program, if necessary.
|
||||
For more information on this, and how to apply and follow the GNU GPL, see
|
||||
<http://www.gnu.org/licenses/>.
|
||||
|
||||
The GNU 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. But first, please read
|
||||
<http://www.gnu.org/philosophy/why-not-lgpl.html>.
|
||||
768
OGP64/usr/share/doc/cygrunsrv/ChangeLog
Normal file
768
OGP64/usr/share/doc/cygrunsrv/ChangeLog
Normal file
|
|
@ -0,0 +1,768 @@
|
|||
2019-11-12 Anton Lavrentiev <lavr@ncbi.nlm.nih.gov>
|
||||
|
||||
* Added the -T (for timeout) and the -X (for stop timeout) options
|
||||
* cygrunsrv.cc: issue no "premature exit" error when stopped by SCM
|
||||
(and daemon catches the internal signal then exits)
|
||||
|
||||
2015-01-28 Corinna Vinschen <corinna@vinschen.de>
|
||||
|
||||
* cygrunsrv.README: Fix typo.
|
||||
|
||||
2015-01-28 Corinna Vinschen <corinna@vinschen.de>
|
||||
|
||||
* cygrunsrv.cc: Bump version to 1.62.
|
||||
(service_main): Forcefully exit from service_main in neverexits case
|
||||
even when receiving a signal other than the termination or shutdown
|
||||
signal.
|
||||
|
||||
2014-08-21 Corinna Vinschen <corinna@vinschen.de>
|
||||
|
||||
* cygrunsrv.cc: Bump version to 1.61.
|
||||
(service_fork_thread): Append /bin if explicit PATH value got loaded
|
||||
from registry. Prepend /bin otherwise.
|
||||
* utils.cc (uprint): Delete.
|
||||
(usage): Convert to a single fprintf call.
|
||||
|
||||
2014-08-14 Corinna Vinschen <corinna@vinschen.de>
|
||||
|
||||
* cygrunsrv.cc: Bump version to 1.60. Drop all special exception
|
||||
handling code since it's disabled in newer Cygwin versions (actually,
|
||||
since 2005 *blush*) anyway.
|
||||
(service_fork_thread): Prepend /bin to $PATH, rather than appending,
|
||||
as it has been claimed in the README forever. Duh.
|
||||
|
||||
2013-10-30 Corinna Vinschen <corinna@vinschen.de>
|
||||
|
||||
* cygrunsrv.cc: Bump version to 1.50.
|
||||
(print_service): Take additional parameter "mypath". Check path of
|
||||
cygrunsrv in service entry with mypath and print additional
|
||||
"Installation path" if they differ. Fix formatting.
|
||||
(query_service): Store own Win32 pathname and add to print_service call.
|
||||
(same_filename): Use strcasecmp, not stricmp.
|
||||
(list_services): Only print warning message if OpenService failed with
|
||||
an error other than ERROR_ACCESS_DENIED. Print service name in
|
||||
parenthesis if it's started by another cygrunsrv and verbose is not set.
|
||||
Call print_service with additional parameter mypath.
|
||||
(service_fork_thread): Copy POSIX to Win32 environment before exec'ing
|
||||
service process.
|
||||
|
||||
2013-03-19 Corinna Vinschen <corinna@vinschen.de>
|
||||
|
||||
* config.guess: Update.
|
||||
* config.sub: Update.
|
||||
* configure: Regenerate with autoconf 2.69.
|
||||
|
||||
2013-03-09 Corinna Vinschen <corinna@vinschen.de>
|
||||
|
||||
* Makefile.in ($(srcdir)/configure): Depend on configure.ac.
|
||||
* cygrunsrv.cc: Bump version to 1.42.
|
||||
(is_managed_service_account): New function to check for Managed Service
|
||||
Account.
|
||||
(install_service): Check for accounts which require a NULL password
|
||||
and don't ask for password for any of them. Rename buf to pwdbuf.
|
||||
Allow to give NULL password to CreateService for non-empty username.
|
||||
(main): Call setlocale.
|
||||
|
||||
2013-03-05 Corinna Vinschen <corinna@vinschen.de>
|
||||
|
||||
* configure.ac: Rename from configure.in. Check for g++ target-cpu
|
||||
independently.
|
||||
* configure: Regenerate
|
||||
* cygrunsrv.cc: Bump version to 1.41.
|
||||
(version): Bump copyright date.
|
||||
(list_services): Change formatting for DWORD value target independently.
|
||||
* utils.cc (error): Ditto.
|
||||
|
||||
2012-03-07 Corinna Vinschen <corinna@vinschen.de>
|
||||
|
||||
Throughout change comments to GPL v3 and fix copyright.
|
||||
* COPYING: New version for GPL v3.
|
||||
* Makefile.in (LDFLAGS): Add -static.
|
||||
* cygrunsrv.cc: Bump version to 1.40.
|
||||
(version): Fix copyright string.
|
||||
(thread_args): New static struct.
|
||||
(service_fork_thread): New thread function to fork service process.
|
||||
(service_main): Start service_fork_thread as pthread to fork service
|
||||
process. Explain why.
|
||||
|
||||
2012-02-21 Corinna Vinschen <corinna@vinschen.de>
|
||||
|
||||
* cygrunsrv.cc: Bump version to 1.36.
|
||||
(service_handler): Remove obsolete function.
|
||||
(pRegisterServiceCtrlHandlerExA): Remove.
|
||||
(service_main): Just call RegisterServiceCtrlHandlerExA, otherwise
|
||||
handler function doesn't receive SERVICE_CONTROL_PRESHUTDOWN control
|
||||
code.
|
||||
|
||||
2009-04-06 Corinna Vinschen <corinna@vinschen.de>
|
||||
|
||||
* configure.in (CXX): Prefer i686-pc-cygwin-g++ over g++ to simplify
|
||||
cross builds.
|
||||
* configure: Regenerate.
|
||||
* cygrunsrv.cc: Fix gcc-4 compiler warnings throughout.
|
||||
Use Cygwin 1.7 cygwin_conv_path rather than deprecated
|
||||
cygwin_conv_to_full_win32_path call. Bump version to 1.35.
|
||||
* utils.cc (reason_list): Constify to fix gcc-4 compiler warning.
|
||||
|
||||
2008-03-18 Corinna Vinschen <corinna@vinschen.de>
|
||||
|
||||
* cygrunsrv.README: Explain the user name given to -u/--user option.
|
||||
* cygrunsrv.cc: Fix copyright in header. Bump version to 1.34.
|
||||
(version): Fix copyright.
|
||||
(install_service): Convert slash in username to backslash.
|
||||
|
||||
2008-03-17 Corinna Vinschen <corinna@vinschen.de>
|
||||
|
||||
* cygrunsrv.README: Add words for clarifying server name in <svc_name>.
|
||||
Add the server name hint to -Q/--query option. Add desription for
|
||||
-P/--crs-path option.
|
||||
* cygrunsrv.cc: Bump version to 1.33.
|
||||
(longopts): Add --crs-path option.
|
||||
(opts): Add -P option.
|
||||
(install_registry_keys): Fix error code handling for registry access
|
||||
functions.
|
||||
(check_system_mounts): Use strcasecmp.
|
||||
(install_service): Add code to handle setting distinct path to
|
||||
cygrunsrv. Don't test system mounts when accessing remote service
|
||||
manager.
|
||||
(main): Handle -P/--crs-path option. Don't check validity of service
|
||||
application path when installing service on remote server.
|
||||
* cygrunsrv.h (CYG_ROOT): Define.
|
||||
(CYG_ROOT_VAL): Define.
|
||||
* utils.cc (reason_list): Add reason texts for -P/--crs-path option.
|
||||
(usage): Add usage for -P/--crs-path option.
|
||||
* utils.h (reason_t): Add reason codes for -P/--crs-path option.
|
||||
|
||||
2008-03-17 Corinna Vinschen <corinna@vinschen.de>
|
||||
|
||||
* cygrunsrv.README: Document capability to connect to remote machine.
|
||||
* cygrunsrv.cc: Bump version to 1.30.
|
||||
(version): Fix copyright.
|
||||
(class server_and_name): New helper class to extract server name and
|
||||
service name from incoming string, as well as to create registry key
|
||||
necessary to connect to local or remote registry. Use throughout were
|
||||
appropriate.
|
||||
(main): Handle optional argument to -L/--list option.
|
||||
* utils.cc (reason_list): Add reason text for failing connection to
|
||||
remote machine.
|
||||
(usage): Accommodate optional argument to -L/--list. Add helping text
|
||||
for remote access.
|
||||
* utils.h (reason_t): Add reason code for failing connection to
|
||||
remote machine.
|
||||
|
||||
2008-02-19 Corinna Vinschen <corinna@vinschen.de>
|
||||
|
||||
* cygrunsrv.cc: Bump version to 1.21.
|
||||
(service_handler_ex): On SERVICE_CONTROL_INTERROGATE don't send signal
|
||||
to child process, just return NO_ERROR.
|
||||
|
||||
2008-02-17 Corinna Vinschen <corinna@vinschen.de>
|
||||
|
||||
* Makefile.in: Add automatic file dependencies.
|
||||
(datarootdir): Replace datadir.
|
||||
(CFLAGS): Define. Always add -MMD -pipe options.
|
||||
* configure.in: Require autoconf 2.60. Prefer g++ over c++. Set
|
||||
CFLAGS to contain -Wall -Werror by default. Set CXXFLAGS so that
|
||||
CFLAGS is used indirectly.
|
||||
* configure: Regenerate.
|
||||
* crit.cc (set_service_controls_accepted): Take and handle preshutdown
|
||||
parameter.
|
||||
* crit.h (SERVICE_ACCEPT_PRESHUTDOWN): Define conditionally.
|
||||
(SERVICE_CONTROL_PRESHUTDOWN): Define conditionally.
|
||||
(set_service_controls_accepted): Change declaration.
|
||||
* cygrunsrv.README: Document --shutsig and --preshutdown options.
|
||||
Note post-Vista behaviour related to --interactive option.
|
||||
* cygrunsrv.cc: Bump version to 1.20. Throughout avoid compiler
|
||||
warnings.
|
||||
(longopts): Add '--shutsig' and '--preshutdown' options.
|
||||
(opts): Add '-O' and '-z' options.
|
||||
(shutsig): New variable.
|
||||
(shutsig_sent): New variable.
|
||||
(preshutdown): New variable.
|
||||
(install_registry_keys): Handle new shutsig and preshutdown options.
|
||||
(get_reg_entries): Ditto.
|
||||
(ControlsAccepted_desc): Add entry for SERVICE_ACCEPT_PRESHUTDOWN.
|
||||
(print_service): Handle new shutsig and preshutdown options.
|
||||
(terminate_child): Get signal to send to service process as parameter.
|
||||
Set termsig_sent or shutsig_sent according to that signal.
|
||||
(sigterm_handler): Send termsig to terminate_child.
|
||||
(service_handler_ex): New service handler which also handles
|
||||
SERVICE_CONTROL_PRESHUTDOWN.
|
||||
(service_handler_ex): Handle SERVICE_CONTROL_PRESHUTDOWN. Call
|
||||
terminate_child with termsig or shutsig dependent on control code.
|
||||
(service_handler): Just call service_handler_ex.
|
||||
(pRegisterServiceCtrlHandlerExA): New variable.
|
||||
(service_main): Load RegisterServiceCtrlHandlerExA and use instead of
|
||||
RegisterServiceCtrlHandlerA if available.
|
||||
Check WTERMSIG for termsig or shutsig.
|
||||
(main): Handle --shutsig and --preshutdown options. Add appropriate
|
||||
error checking.
|
||||
* cygrunsrv.h (PARAM_SHUTSIG): Define.
|
||||
(PARAM_PRESHUTDOWN): Define.
|
||||
* utils.cc (reason_list): Add --shutsig/--preshutdown error messages.
|
||||
(uprint): Redefine.
|
||||
(usage): Use fprintf for first usage line. Add help text for
|
||||
--shutsig and --preshutdown options. Add Vista/Longhorn hint to
|
||||
--interactive help text.
|
||||
* utils.h (reason_t): Add --shutsig/--preshutdown error values.
|
||||
|
||||
2008-01-21 Corinna Vinschen <corinna@vinschen.de>
|
||||
|
||||
* cygrunsrv.cc (list_services): Set sh to 0 after closing to avoid
|
||||
double closing.
|
||||
Bump version to 1.18.
|
||||
|
||||
2007-04-19 Brian Dessent <brian@dessent.net>
|
||||
|
||||
* cygrunsrv.cc (list_services): Make failure of OpenService or
|
||||
QueryServiceConfig nonfatal.
|
||||
|
||||
2007-04-17 Pierre Humblet <Pierre.Humblet@ieee.org>
|
||||
|
||||
* cygrunsrv.cc (check_cygwin1): New function.
|
||||
(service_main): Call check_cygwin1.
|
||||
|
||||
2006-06-19 Corinna Vinschen <corinna@vinschen.de>
|
||||
|
||||
* cygrunsrv.cc: Bump version to 1.17.
|
||||
|
||||
2006-06-19 Ben Hochstedler <ben.hochstedler@med.ge.com>
|
||||
|
||||
* cygrunsrv.cc (service_main): When fork fails, exit with non-zero
|
||||
exit code. Report correct error value to syslog.
|
||||
|
||||
2006-04-27 Corinna Vinschen <corinna@vinschen.de>
|
||||
|
||||
* cygrunsrv.cc: Bump version to 1.16.
|
||||
(service_main): Don't try to kill a process group which doesn't exist.
|
||||
|
||||
2006-03-30 Corinna Vinschen <corinna@vinschen.de>
|
||||
|
||||
* cygrunsrv.cc: Bump version to 1.15.
|
||||
(title): Remove here.
|
||||
(prepare_daemon): Don't set console title here.
|
||||
(hide_console): Remove.
|
||||
(service_main): Instead of hiding console , create new console
|
||||
here if --nohide is set and rely on Cygwin to do the rest.
|
||||
|
||||
2006-03-28 Corinna Vinschen <corinna@vinschen.de>
|
||||
|
||||
* cygrunsrv.cc (version): Fix copyright date.
|
||||
|
||||
2006-03-27 Corinna Vinschen <corinna@vinschen.de>
|
||||
|
||||
* cygrunsrv.cc: Bump version to 1.14.
|
||||
(service_main): Don't call setpgrp for interactive services.
|
||||
|
||||
2006-03-26 Corinna Vinschen <corinna@vinschen.de>
|
||||
|
||||
* cygrunsrv.cc: Bump version to 1.13.
|
||||
(title): New global variable used for the console title.
|
||||
(prepare_daemon): Move allocating console to cygwin_premain0.
|
||||
Set console title here.
|
||||
(hide_console): Just use console title set in prepare_daemon.
|
||||
(cygwin_premain0): New function to allocate console so that Cygwin
|
||||
doesn't create an invisible console on an invisible WindowStation.
|
||||
Also try to maintain window focus and Z-order.
|
||||
|
||||
2006-03-26 Lev Bishop <lev.bishop@gmail.com>
|
||||
|
||||
* cygrunsrv.cc (print_service): Fix conditional.
|
||||
(main): Ditto.
|
||||
|
||||
2005-11-28 Corinna Vinschen <corinna@vinschen.de>
|
||||
|
||||
* cygrunsrv.cc: Bump version to 1.12.
|
||||
* TODO: Drop the item about forking children.
|
||||
|
||||
2005-11-28 Christian Franke <franke@computer.org>
|
||||
|
||||
* cygrunsrv.cc: Add '--pidfile' option to run daemons which
|
||||
fork() and report the child pid in a /var/run/daemon.pid file.
|
||||
* cygrunsrv.h: Ditto.
|
||||
* utils.cc: Ditto.
|
||||
* waitanypid.cc: New file containing helper function to wait for
|
||||
non-child processes.
|
||||
* waitanypid.h: Ditto.
|
||||
* Makefile.in: Add waitanypid.o.
|
||||
|
||||
2005-11-23 Christian Franke <franke@computer.org>
|
||||
|
||||
* cygrunsrv.cc: Add '--pidfile' option to run daemons which
|
||||
fork() and report the child pid in a /var/run/daemon.pid file.
|
||||
* cygrunsrv.h: Ditto.
|
||||
* utils.cc: Ditto.
|
||||
* waitanypid.cc: New file containing helper function to wait for
|
||||
non-child processes.
|
||||
* waitanypid.h: Ditto.
|
||||
* Makefile.in: Add waitanypid.o.
|
||||
|
||||
2005-11-13 Corinna Vinschen <corinna@vinschen.de>
|
||||
|
||||
* cygrunsrv.cc: Bump version to 1.11.
|
||||
* TODO: Add a remark about using ChangeServiceConfig2.
|
||||
|
||||
2005-11-13 Corinna Vinschen <corinna@vinschen.de>
|
||||
Christian Franke <franke@computer.org>
|
||||
|
||||
* cygrunsrv.cc (service_main): Simplify waitpid return value
|
||||
evaluation. Always set service status to SERVICE_STOPPED,
|
||||
except in the neverexits case. Forcefully exit from
|
||||
service_main in neverexits case. Move the set_service_status
|
||||
call to be always the last action in service_main.
|
||||
|
||||
2005-06-07 Corinna Vinschen <corinna@vinschen.de>
|
||||
|
||||
* cygrunsrv.README: Add paragraph about starting services using
|
||||
accounts with no password under XP and 2K3.
|
||||
|
||||
2005-05-16 Corinna Vinschen <corinna@vinschen.de>
|
||||
|
||||
* cygrunsrv.cc: Bump version to 1.10.
|
||||
|
||||
2005-05-22 Brian Dessent <brian@dessent.net>
|
||||
|
||||
* cygrunsrv.cc: Add includes.
|
||||
(longopts): Add '--list' and '--verbose' options.
|
||||
(opts): Add '-L' and '-V' options; keep order consistent with above.
|
||||
(action_t): Add 'List'.
|
||||
(err_out_set_error): Define version of 'err_out' macro that allows for
|
||||
convenient setting the error code.
|
||||
(get_description): New function.
|
||||
(check_system_mounts): Ditto.
|
||||
(install_service): Check mounts and warn if problem found. Use
|
||||
'err_out_set_error' throughout.
|
||||
(start_service): Ditto.
|
||||
(stop_service): Ditto.
|
||||
(ServiceType_desc): Add. Use structs to map DWORD fields onto strings.
|
||||
(StartType_desc): Ditto.
|
||||
(CurrentState_desc): Ditto.
|
||||
(ControlsAccepted_desc): Ditto.
|
||||
(make_desc): Add new function that generalizes the task of creating
|
||||
a textual field from a binary DWORD.
|
||||
(serviceTypeToString): Remove.
|
||||
(serviceStateToString): Ditto.
|
||||
(controlsToString): Ditto.
|
||||
(parsedoublenull): Add new helper function for parsing lists of
|
||||
strings, which is used below when printing the 'lpDependencies' value.
|
||||
(print_service): Add new function that is responsible for generating
|
||||
the formatted output for --list and --query commands.
|
||||
(QSC_BUF_SIZE): Add.
|
||||
(query_service): Add verbosity parameter. Remove printf output from
|
||||
here, call 'print_service' instead. Call QueryServiceConfig to
|
||||
retrieve more detail on the service.
|
||||
(same_filename): New function.
|
||||
(list_services): Add new function that implements -L,--list command.
|
||||
Call EnumServicesStatus to get names of all services, and then
|
||||
determine which ones are cygrunsrv services. List their names, or
|
||||
call print_service() if verbosity was requested.
|
||||
(main): Declare new variable 'verbosity'. Support new command line
|
||||
switches. Pass on verbosity information to query_service and
|
||||
list_services.
|
||||
* utils.cc (reason_list): Update error text.
|
||||
(usage): Document new switches in the help text.
|
||||
* utils.h (reason_t): Add new symbolic name for error text.
|
||||
* cygrunsrv.README: Update documentation for new flags and mount
|
||||
information.
|
||||
|
||||
2005-05-16 Corinna Vinschen <corinna@vinschen.de>
|
||||
|
||||
* cygrunsrv.cc: Bump version to 1.02.
|
||||
(service_main): Also initiate correct exiting from service when
|
||||
receiving another signal than the "official" exit signal.
|
||||
|
||||
2005-02-27 Chris Faylor <cgf@timesys.com>
|
||||
|
||||
* cygrunsrv.cc: Bump version to 1.01.
|
||||
(service_main_exitval): New global variable.
|
||||
(service_main): Drop exit_val. Set exit value in service_main_exitval
|
||||
instead. Don't exit but return.
|
||||
(main): Return service_main_exitval.
|
||||
|
||||
2004-05-17 Ben Hochstedler <hochstrb@cs.rose-hulman.edu>
|
||||
|
||||
* cygrunsrv.cc (start_service): Change calls to OpenSCManager and
|
||||
OpenService to require only necessary rights.
|
||||
(stop_service): Ditto. Remove unneeded call to LockServiceDatabase.
|
||||
(query_service): Ditto.
|
||||
(install_service): Ditto.
|
||||
(remove_service): Ditto.
|
||||
(remove_service): Ditto.
|
||||
|
||||
2004-04-18 Corinna Vinschen <corinna@vinschen.de>
|
||||
|
||||
* cygrunsrv.cc: Bump version to 1.0.
|
||||
(get_reg_entries): Allow environment variable name
|
||||
length of up to the maximum possible (16K). Allow arbitrarily sized
|
||||
environment variable length. Disallow non-REG_SZ types in environment.
|
||||
Remove useless strcpys.
|
||||
|
||||
2004-04-07 Corinna Vinschen <corinna@vinschen.de>
|
||||
|
||||
* cygrunsrv.cc: Bump version to 0.99.
|
||||
|
||||
2004-04-07 Corinna Vinschen <corinna@vinschen.de>
|
||||
|
||||
* cygrunsrv.README: Add description for -j, --nohide option.
|
||||
* cygrunsrv.cc (longopts): Add '--nohide' option.
|
||||
(opts): Add -j option.
|
||||
(showcons): New global variable.
|
||||
(install_registry_keys): Add 'showcons' parameter. Write it to
|
||||
registry.
|
||||
(get_reg_entries): Add 'showcons_p' parameter. Read it from registry.
|
||||
(hide_console): New function.
|
||||
(service_main): Call hide_console if showcons is 0.
|
||||
(main): Add handling for '--nohide' parameter. Fix indentation.
|
||||
* cygrunsrv.h (PARAM_SHOWCONS): New registry name for nohide parameter.
|
||||
* utils_cc (reason_list): Add error strings for --nohide.
|
||||
* (usage): Add help text for --nohide option. Fix output to fit in
|
||||
80 columns.
|
||||
* utils.h (reason_t): Add error codes for --nohide errors.
|
||||
|
||||
2004-03-18 Igor Pechtchanski <pechtcha@cs.nyu.edu>
|
||||
|
||||
* cygrunsrv.cc (service_main): Fix typo in comment.
|
||||
(main): Check that "--user" is not specified with
|
||||
"--interactive" (thanks to Peter Wisnovsky).
|
||||
* utils.h (reason_t): Add NoInteractiveWithUser value.
|
||||
* utils.cc (reason_list): Add description string for the
|
||||
NoInteractiveWithUser value. Fix typos in descriptions
|
||||
for the NeverExitsNotAllowed and OnlyOneNeverExits values.
|
||||
* cygrunsrv.README: Add comment about the "--interactive"
|
||||
option only being valid with a SYSTEM service.
|
||||
|
||||
2004-03-17 Corinna Vinschen <corinna@vinschen.de>
|
||||
|
||||
* cygrunsrv.cc (service_main): Set exit_status to 1 by default.
|
||||
Terminate service correctly if child terminated as a result of
|
||||
cygrunsrv's signal.
|
||||
|
||||
2004-03-17 Corinna Vinschen <corinna@vinschen.de>
|
||||
|
||||
* cygrunsrv.cc (termsig_sent): New variable;
|
||||
(terminate_child): Set termsig_sent right before sending the signal.
|
||||
(service_main): If the child terminated due to a signal, only log
|
||||
error in case it wasn't our own termination signal.
|
||||
|
||||
2004-03-13 Corinna Vinschen <corinna@vinschen.de>
|
||||
|
||||
Thanks to Tony Silva <tony_silva@alum.mit.edu>:
|
||||
* utils.cc (usage): Fix typo in help message.
|
||||
|
||||
2004-02-04 Corinna Vinschen <corinna@vinschen.de>
|
||||
|
||||
* Bump version to 0.98.
|
||||
|
||||
2004-01-30 Ben Hochstedler <hochstrb@cs.rose-hulman.edu>
|
||||
|
||||
* cygrunsrv.cc (get_reg_entries): Add neverexits entry.
|
||||
(install_registry_keys): Add neverexits entry.
|
||||
(service_main): Add better error handling of child exit.
|
||||
If neverexits is set, it will only report SERVICE_STOPPED if
|
||||
cygrunsrv itself is shutting down.
|
||||
* cygrunsrv.h (PARAM_NEVEREXITS): Add for neverexits option.
|
||||
* utils.cc (usage): Add neverexits option.
|
||||
* utils.h (reason_t): Add errors for neverexits option.
|
||||
* cygrunsrv.README: Add a description for the --neverexits option.
|
||||
|
||||
2003-12-07 Corinna Vinschen <corinna@vinschen.de>
|
||||
|
||||
* Makefile.in: Fix typo.
|
||||
|
||||
2003-12-07 Corinna Vinschen <corinna@vinschen.de>
|
||||
|
||||
* cygrunsrv.cc (version): Fix copyright date.
|
||||
|
||||
2003-12-07 Corinna Vinschen <corinna@vinschen.de>
|
||||
|
||||
* Bump version to 0.97.
|
||||
* Makefile.in: Add uninstall targets. Refine install targets.
|
||||
Add dependencies to Makefile.in and configure. Rebuild Makefile
|
||||
and configure if necessary.
|
||||
* configure.in: Fix tests for CFLAGS and CXXFLAGS.
|
||||
* configure: Regenerate.
|
||||
* cygrunsrv.cc (service_main): Set childs process group to its own pid.
|
||||
|
||||
2003-12-05 Brian Ford <ford@vss.fsi.com>
|
||||
|
||||
* cygrunsrv.cc (terminate_child): Send the signal to the whole
|
||||
processes group.
|
||||
|
||||
2003-11-24 Corinna Vinschen <corinna@vinschen.de>
|
||||
|
||||
* Makefile.in: Add target "all".
|
||||
|
||||
2003-11-24 Corinna Vinschen <corinna@vinschen.de>
|
||||
|
||||
Autotoolize.
|
||||
* Makefile: Remove.
|
||||
* Makefile.in: New file.
|
||||
* config.guess: New file.
|
||||
* config.sub: New file.
|
||||
* configure: New file.
|
||||
* configure.in: New file.
|
||||
* install-sh: New file.
|
||||
|
||||
2003-08-15 Corinna Vinschen <corinna@vinschen.de>
|
||||
|
||||
* Makefile: Adhere to FHS.
|
||||
|
||||
2003-05-09 Igor Pechtchanski <pechtcha@cs.nyu.edu>
|
||||
|
||||
* cygrunsrv.cc (opts): Expand to have each option
|
||||
string on a separate line.
|
||||
|
||||
2003-05-09 Igor Pechtchanski <pechtcha@cs.nyu.edu>
|
||||
|
||||
* cygrunsrv.h (STRINGIFY): New macro.
|
||||
(STRINGIFY_): New helper macro.
|
||||
(MAX_ENV_STR, MAX_DEPS_STR): Fix redundant string constants.
|
||||
|
||||
2003-05-08 Igor Pechtchanski <pechtcha@cs.nyu.edu>
|
||||
|
||||
* crit.cc (set_service_controls_accepted): Add an
|
||||
interactive_process parameter.
|
||||
* crit.h (set_service_controls_accepted): Ditto.
|
||||
* cygrunsrv.cc (longopts, opts): Add an "--interactive" option.
|
||||
(interactive): New global variable.
|
||||
(install_registry_keys): Add an interactive parameter.
|
||||
(get_reg_entries): Add an interactive_p parameter.
|
||||
(install_service): Add an interactive parameter.
|
||||
(service_main): Pass the interactive flag to get_reg_entries and
|
||||
set_service_controls_accepted.
|
||||
(main): Process the "--interactive" flag.
|
||||
* cygrunsrv.cc (PARAM_INTERACT): New registry key.
|
||||
* utils.h (reason_t): Add InteractiveNotAllowed and OnlyOneInteractive
|
||||
values.
|
||||
* utils.cc (reason_list): Add description strings for the
|
||||
InteractiveNotAllowed and OnlyOneInteractive values.
|
||||
(usage): Add description of the "--interactive" option.
|
||||
* cygrunsrv.README: Add description of the "--interactive" option.
|
||||
|
||||
2003-04-24 Corinna Vinschen <corinna@vinschen.de>
|
||||
|
||||
* Bump version to 0.96.
|
||||
* Makefile: Link using g++, not gcc.
|
||||
* util.cc (error): Remove errouneous default value from second
|
||||
parameter.
|
||||
|
||||
2002-03-08 Mike Gerdts <Michael.Gerdts@alcatel.com>
|
||||
|
||||
* utils.h (reason_t): Add code for --query errors.
|
||||
* utils.cc (reason_list): Add error string for --query errors.
|
||||
(usage): Add help text for --query parameter.
|
||||
* cygrunsrv.cc (longopts): Add --query parameter.
|
||||
(opts): Add -Q option.
|
||||
(main): Add handling --query parameter.
|
||||
(serviceTypeToString): New function to support --query parameter.
|
||||
(serviceStateToString): Ditto.
|
||||
(serviceStateToString): Ditto.
|
||||
(controlsToString): Ditto.
|
||||
(query_service): Ditto.
|
||||
|
||||
2002-02-26 Corinna Vinschen <corinna@vinschen.de>
|
||||
|
||||
* Bump version to 0.95.
|
||||
|
||||
2002-02-24 Karl Moerder <karlm30@hotmail.com>
|
||||
|
||||
* utils.h (reason_t): Add codes for --desc errors.
|
||||
* utils_cc (reason_list): Add error strings for --desc.
|
||||
* (usage): Add help text for --desc option.
|
||||
* cygrunsrv.h (DESC): New registry name for description parameter.
|
||||
* cygrunsrv.cc (longopts): Add '--desc' option.
|
||||
* (opts): Add '-f option.
|
||||
* (install_registry_keys): Add 'desc' parameter, and
|
||||
writing parameter to registry.
|
||||
* (main): Add handling for '--desc' parameter.
|
||||
|
||||
2001-10-29 Corinna Vinschen <corinna@vinschen.de>
|
||||
|
||||
Inspired by Pierre A. Humblet <Pierre.Humblet@ieee.org>:
|
||||
* cygrunsrv.README: Add hint that user needs 'Logon as a service'
|
||||
privilege.
|
||||
|
||||
2001-10-23 Corinna Vinschen <corinna@vinschen.de>
|
||||
|
||||
Inspired by Robert Collins <robert.collins@itdomain.com.au>:
|
||||
* cygrunsrv.README: Add suggestion of dependency on Tcpip.
|
||||
|
||||
2001-10-22 Fred Yankowski <fred@ontosys.com>
|
||||
|
||||
* cygrunsrv.README: Suggest dependency on LanmanWorkstation.
|
||||
|
||||
2001-10-19 Corinna Vinschen <corinna@vinschen.de>
|
||||
|
||||
* cygrunsrv.cc (install_registry_keys): Fix setting working directory.
|
||||
|
||||
2001-07-11 Corinna Vinschen <corinna@vinschen.de>
|
||||
|
||||
* Bump version to 0.94.
|
||||
|
||||
2001-06-28 Fred Yankowski <fred@ontosys.com>
|
||||
|
||||
* cygrunsrv.README: Describe --shutdown option. Adjust postgresql
|
||||
example.
|
||||
|
||||
2001-06-15 Fred Yankowski <fred@ontosys.com>
|
||||
|
||||
* utils.h (reason_t): Add codes for --shutdown errors.
|
||||
* utils.cc (reason_list): Add error strings for --shutdown.
|
||||
(usage): Add help text for --shutdown option.
|
||||
* cygrunsrv.h (PARAM_SHUTDOWN): New registry name for shutdown
|
||||
parameter.
|
||||
* cygrunsrv.cc (longopts): Add '--shutdown' option.
|
||||
(opts): Add '-o' option.
|
||||
(shutdown): Define new global.
|
||||
(install_registry_keys): Add 'shutdown' parameter, and writing
|
||||
parameter to registry.
|
||||
(get_reg_entries): Add 'shutdown_p' parameter and reading
|
||||
parameter from registry.
|
||||
(service_handler): Case for SERVICE_CONTROL_SHUTDOWN control.
|
||||
(service_main): Set global 'shutdown' parameter, and call
|
||||
set_service_controls_accepted.
|
||||
(main): Add handling for '--shutdown' parameter.
|
||||
* crit.h (set_service_controls_accepted): Declare new function.
|
||||
* crit.cc (set_service_controls_accepted): New function.
|
||||
|
||||
2001-05-31 Corinna Vinschen <corinna@vinschen.de>
|
||||
|
||||
* cygrunsrv.cc (longopts): Add `--chdir' option.
|
||||
(opts): Add `-c' option.
|
||||
(version): Add Fred to the version info.
|
||||
(install_registry_keys): Add `dir' parameter. Add writing dir to
|
||||
the registry.
|
||||
(get_reg_entries): Add `dir' parameter. Add reading dir from the
|
||||
registry.
|
||||
(service_main): Change working directory in child before exec'ing
|
||||
the application. Free more unused memory.
|
||||
(main): Add handling for `--chdir' option.
|
||||
* cygrunsrv.h (PARAM_DIR): New registry name for working directory.
|
||||
* utils.cc (reason_list): Add error strings for --chdir errors.
|
||||
(usage): Add help text for --chdir option.
|
||||
* utils.h (reason_t): Add codes for --chdir errors.
|
||||
|
||||
2001-05-23 Corinna Vinschen <corinna@vinschen.de>
|
||||
|
||||
* Makefile: Change install target to install into $DESTDIR and
|
||||
to install also cygrunsrv.README.
|
||||
|
||||
2001-05-23 Charles S. Wilson <cwilson@ece.gatech.edu>
|
||||
|
||||
* cygrunsrv.README: New file.
|
||||
|
||||
2001-05-22 Corinna Vinschen <corinna@vinschen.de>
|
||||
|
||||
* TODO: New file.
|
||||
|
||||
2001-05-22 Fred Yankowski <fred@ontosys.com>
|
||||
|
||||
* cygrunsrv.cc (eval_arglist): Fix handling of quoted options.
|
||||
|
||||
2001-05-21 Corinna Vinschen <corinna@vinschen.de>
|
||||
|
||||
* Bump version to 0.93.
|
||||
|
||||
2001-05-21 Corinna Vinschen <corinna@vinschen.de>
|
||||
|
||||
* cygrunsrv.cc (longopts): Add `--stdin', `--stdout' and `--stderr'
|
||||
options.
|
||||
(opts): Add `-0', `-1' and `-2' options.
|
||||
(install_registry_keys): Add handling for stdio redirection file names.
|
||||
(get_reg_entries): Ditto.
|
||||
(service_main): Ditto.
|
||||
(get_opt_string_entry): New function.
|
||||
(reeval_io_path): Ditto.
|
||||
(main): Add handling for stdio redirection options.
|
||||
* cygrunsrv.h (PARAM_STDIN): New registry name for stdin redirection
|
||||
file name.
|
||||
(PARAM_STDOUT): Ditto for stdout.
|
||||
(PARAM_STDERR): Ditto for stderr.
|
||||
(DEF_STDIN_PATH): New define, default path for stdin redirection.
|
||||
(DEF_LOG_PATH): New define, default directory where log files are
|
||||
written.
|
||||
* utils.cc (reason_list): Add error strings for --std{in,out,err}
|
||||
errors.
|
||||
(usage): Add help text for --std{in,out,err}.
|
||||
(redirect_fd): New function.
|
||||
(redirect_io): Ditto.
|
||||
(create_parent_directory): Ditto.
|
||||
* utils.h (reason_t): Add codes for --std{in,out,err} errors.
|
||||
Add declaration for new functions.
|
||||
|
||||
2001-05-21 Corinna Vinschen <corinna@vinschen.de>
|
||||
|
||||
* utils.cc (usage): Change --dep text slightly.
|
||||
|
||||
2001-05-21 Fred Yankowski <fred@ontosys.com>
|
||||
|
||||
* utils.cc (reason_list): Add error strings for --dep errors.
|
||||
(usage): Add help text for --dep.
|
||||
* utils.h (reason_t): Add codes for --dep errors.
|
||||
* cygrunsrv.h (MAX_DEPS): Number of --dep values allowed.
|
||||
(MAX_DEPS_STR): String value of MAX_DEPS.
|
||||
* cygrunsrv.cc (install_service): Create service with optional
|
||||
dependencies.
|
||||
(add_dep): New function to save --dep command-line value.
|
||||
(main): Handle --dep option.
|
||||
(longopts): Add '--dep' option.
|
||||
(opts): Add 'y' option.
|
||||
|
||||
2001-05-21 Corinna Vinschen <corinna@vinschen.de>
|
||||
|
||||
* cygrunsrv.cc (install_registry_keys): Create environment strings in
|
||||
subkey "Environment" now.
|
||||
(get_reg_entries): Read environment strings from subkey "Environment"
|
||||
now.
|
||||
(add_env_var): Drop test for illegal environment string names
|
||||
"AppPath" and "AppArgs".
|
||||
* cygrunsrv.h (PARAM_ENVIRON): New registry name for environment
|
||||
string subkey.
|
||||
|
||||
2001-05-18 Fred Yankowski <fred@ontosys.com>
|
||||
|
||||
* utils.cc (usage): Add help for --termsig option.
|
||||
(reason_list): Add error strings for wrong --termsig usage.
|
||||
* cygrunsrv.cc (get_reg_entries): Get --termsig value from registry.
|
||||
(service_main): Set up global termsig value.
|
||||
(terminate_child): Send termsig signal to server process.
|
||||
(termsig): Create new global variable to hold --termsig value.
|
||||
(install_registry_keys): Save --termsig value.
|
||||
(longopts): Add '--termsig' option.
|
||||
(opts): Add 's' option.
|
||||
(main): Handle '--termsig' option.
|
||||
* cygrunsrv.h (PARAM_TERMSIG): New registry name for --termsig value.
|
||||
* utils.h (reason_t): Add codes for '--termsig' errors.
|
||||
|
||||
2001-05-11 Corinna Vinschen <corinna@vinschen.de>
|
||||
|
||||
* utils.cc: New file. Move several functions from cygrunsrv.cc to here.
|
||||
* utils.h: Ditto.
|
||||
(reason_t): Add error codes for wrong --type usage.
|
||||
* utils.cc (winerror): New function providing strerror functionality for
|
||||
Win32 errors.
|
||||
(reason_list): Add error strings for wrong --type usage.
|
||||
(error): Add windows error message text to error output.
|
||||
(syslog_starterr): New function.
|
||||
* cygrunsrv.cc (longopts): Add `--type' option.
|
||||
(opts): Add `t' option.
|
||||
(type_t): New type.
|
||||
(usage): Add help for `--type' option.
|
||||
(install_service): Add parameter for service start type.
|
||||
(service_main): Use syslog_starterr function.
|
||||
(main): Add handling for `--type' option.
|
||||
* Bump version to 0.92.
|
||||
|
||||
2001-05-10 Corinna Vinschen <corinna@vinschen.de>
|
||||
|
||||
* (get_reg_entries): Fix memory usage.
|
||||
* (install_service): Add interactive password request if password
|
||||
is omitted.
|
||||
* Control access to SERVICE_STATUS by using a critical section.
|
||||
Move access functions to new file crit.cc. Declare access functions
|
||||
in crit.h.
|
||||
* Bump version to 0.91.
|
||||
|
||||
2001-05-09 Corinna Vinschen <corinna@vinschen.de>
|
||||
|
||||
* Initial version 0.9.
|
||||
10
OGP64/usr/share/doc/cygrunsrv/TODO
Normal file
10
OGP64/usr/share/doc/cygrunsrv/TODO
Normal file
|
|
@ -0,0 +1,10 @@
|
|||
- (not yet possible): Sending signals to cygrunsrv to perform various
|
||||
actions.
|
||||
|
||||
- Add a way to pipe output of child processes to another application
|
||||
Example:
|
||||
--stdout '|logger -t foo'
|
||||
|
||||
- man page???
|
||||
|
||||
- Add service failure actions using ChangeServiceConfig2 (>= W2K).
|
||||
Some files were not shown because too many files have changed in this diff Show more
Loading…
Add table
Add a link
Reference in a new issue