Compare commits
27 Commits
master
...
gpgme-1-0-
Author | SHA1 | Date | |
---|---|---|---|
|
f9cbb43463 | ||
|
6f3247c583 | ||
|
110dced324 | ||
|
458ae394db | ||
|
cdf5112226 | ||
|
5b09b7719a | ||
|
ad4588f8fc | ||
|
63ac903f64 | ||
|
4d6af25966 | ||
|
b747ffd9a7 | ||
|
df36bf13f5 | ||
|
171f8b6b6c | ||
|
3b346c52aa | ||
|
afc34f239c | ||
|
d285de6c55 | ||
|
22ccd6118b | ||
|
e6596da621 | ||
|
7d0c7409ef | ||
|
fc3ab2e2c5 | ||
|
7b6dad7dcd | ||
|
32e1bca284 | ||
|
754546532d | ||
|
63d297d3dc | ||
|
8cd7194c46 | ||
|
fdfab8ce67 | ||
|
3ac859c472 | ||
|
8666851d52 |
510
COPYING.LESSER
Normal file
510
COPYING.LESSER
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!
|
||||||
|
|
||||||
|
|
28
ChangeLog
28
ChangeLog
@ -1,5 +1,33 @@
|
|||||||
|
2005-06-20 Marcus Brinkmann <marcus@g10code.de>
|
||||||
|
|
||||||
|
* configure.ac: Update the version information for the release.
|
||||||
|
|
||||||
|
2004-12-28 Werner Koch <wk@g10code.com>
|
||||||
|
|
||||||
|
Released 1.0.2.
|
||||||
|
|
||||||
|
* Makefile.am (AUTOMAKE_OPTIONS): Build bzip 2 version
|
||||||
|
(ACLOCAL_AMFLAGS): Add -I m4
|
||||||
|
* configure.ac: Require automake 1.9.3 and autoconf 2.59.
|
||||||
|
* acinclude.m4: Changed quoting for automake 1.9.
|
||||||
|
* README: Use SHA1 instead of MD5.
|
||||||
|
|
||||||
|
2004-12-11 Marcus Brinkmann <marcus@g10code.de>
|
||||||
|
|
||||||
|
* configure.ac: Replace ttyname_r if it doesn't exist (and warn in
|
||||||
|
that case).
|
||||||
|
|
||||||
2004-12-07 Marcus Brinkmann <marcus@g10code.de>
|
2004-12-07 Marcus Brinkmann <marcus@g10code.de>
|
||||||
|
|
||||||
|
* README: Refer to COPYING.LESSER and "each file" instead of
|
||||||
|
COPYING.
|
||||||
|
* COPYING.LESSER: New file.
|
||||||
|
* gpgme.spec.in (%doc): Add COPYING.LESSER.
|
||||||
|
* acinclude.m4, configure.ac, Makefile.am: Change license to LGPL
|
||||||
|
2.1 or later.
|
||||||
|
* TODO: Add copyright notice.
|
||||||
|
* README.CVS: Likewise.
|
||||||
|
|
||||||
* configure.ac (GPGSM_VERSION): Fix filter to get it.
|
* configure.ac (GPGSM_VERSION): Fix filter to get it.
|
||||||
|
|
||||||
2004-10-22 Marcus Brinkmann <marcus@g10code.de>
|
2004-10-22 Marcus Brinkmann <marcus@g10code.de>
|
||||||
|
52
INSTALL
52
INSTALL
@ -1,13 +1,16 @@
|
|||||||
Copyright (C) 1994, 1995, 1996, 1999, 2000, 2001, 2002 Free Software
|
Installation Instructions
|
||||||
Foundation, Inc.
|
*************************
|
||||||
|
|
||||||
This file is free documentation; the Free Software Foundation gives
|
Copyright (C) 1994, 1995, 1996, 1999, 2000, 2001, 2002, 2004 Free
|
||||||
|
Software Foundation, Inc.
|
||||||
|
|
||||||
|
This file is free documentation; the Free Software Foundation gives
|
||||||
unlimited permission to copy, distribute and modify it.
|
unlimited permission to copy, distribute and modify it.
|
||||||
|
|
||||||
Basic Installation
|
Basic Installation
|
||||||
==================
|
==================
|
||||||
|
|
||||||
These are generic installation instructions.
|
These are generic installation instructions.
|
||||||
|
|
||||||
The `configure' shell script attempts to guess correct values for
|
The `configure' shell script attempts to guess correct values for
|
||||||
various system-dependent variables used during compilation. It uses
|
various system-dependent variables used during compilation. It uses
|
||||||
@ -67,9 +70,9 @@ The simplest way to compile this package is:
|
|||||||
Compilers and Options
|
Compilers and Options
|
||||||
=====================
|
=====================
|
||||||
|
|
||||||
Some systems require unusual options for compilation or linking that
|
Some systems require unusual options for compilation or linking that the
|
||||||
the `configure' script does not know about. Run `./configure --help'
|
`configure' script does not know about. Run `./configure --help' for
|
||||||
for details on some of the pertinent environment variables.
|
details on some of the pertinent environment variables.
|
||||||
|
|
||||||
You can give `configure' initial values for configuration parameters
|
You can give `configure' initial values for configuration parameters
|
||||||
by setting variables in the command line or in the environment. Here
|
by setting variables in the command line or in the environment. Here
|
||||||
@ -82,7 +85,7 @@ is an example:
|
|||||||
Compiling For Multiple Architectures
|
Compiling For Multiple Architectures
|
||||||
====================================
|
====================================
|
||||||
|
|
||||||
You can compile the package for more than one kind of computer at the
|
You can compile the package for more than one kind of computer at the
|
||||||
same time, by placing the object files for each architecture in their
|
same time, by placing the object files for each architecture in their
|
||||||
own directory. To do this, you must use a version of `make' that
|
own directory. To do this, you must use a version of `make' that
|
||||||
supports the `VPATH' variable, such as GNU `make'. `cd' to the
|
supports the `VPATH' variable, such as GNU `make'. `cd' to the
|
||||||
@ -99,19 +102,19 @@ for another architecture.
|
|||||||
Installation Names
|
Installation Names
|
||||||
==================
|
==================
|
||||||
|
|
||||||
By default, `make install' will install the package's files in
|
By default, `make install' will install the package's files in
|
||||||
`/usr/local/bin', `/usr/local/man', etc. You can specify an
|
`/usr/local/bin', `/usr/local/man', etc. You can specify an
|
||||||
installation prefix other than `/usr/local' by giving `configure' the
|
installation prefix other than `/usr/local' by giving `configure' the
|
||||||
option `--prefix=PATH'.
|
option `--prefix=PREFIX'.
|
||||||
|
|
||||||
You can specify separate installation prefixes for
|
You can specify separate installation prefixes for
|
||||||
architecture-specific files and architecture-independent files. If you
|
architecture-specific files and architecture-independent files. If you
|
||||||
give `configure' the option `--exec-prefix=PATH', the package will use
|
give `configure' the option `--exec-prefix=PREFIX', the package will
|
||||||
PATH as the prefix for installing programs and libraries.
|
use PREFIX as the prefix for installing programs and libraries.
|
||||||
Documentation and other data files will still use the regular prefix.
|
Documentation and other data files will still use the regular prefix.
|
||||||
|
|
||||||
In addition, if you use an unusual directory layout you can give
|
In addition, if you use an unusual directory layout you can give
|
||||||
options like `--bindir=PATH' to specify different values for particular
|
options like `--bindir=DIR' to specify different values for particular
|
||||||
kinds of files. Run `configure --help' for a list of the directories
|
kinds of files. Run `configure --help' for a list of the directories
|
||||||
you can set and what kinds of files go in them.
|
you can set and what kinds of files go in them.
|
||||||
|
|
||||||
@ -122,7 +125,7 @@ option `--program-prefix=PREFIX' or `--program-suffix=SUFFIX'.
|
|||||||
Optional Features
|
Optional Features
|
||||||
=================
|
=================
|
||||||
|
|
||||||
Some packages pay attention to `--enable-FEATURE' options to
|
Some packages pay attention to `--enable-FEATURE' options to
|
||||||
`configure', where FEATURE indicates an optional part of the package.
|
`configure', where FEATURE indicates an optional part of the package.
|
||||||
They may also pay attention to `--with-PACKAGE' options, where PACKAGE
|
They may also pay attention to `--with-PACKAGE' options, where PACKAGE
|
||||||
is something like `gnu-as' or `x' (for the X Window System). The
|
is something like `gnu-as' or `x' (for the X Window System). The
|
||||||
@ -137,11 +140,11 @@ you can use the `configure' options `--x-includes=DIR' and
|
|||||||
Specifying the System Type
|
Specifying the System Type
|
||||||
==========================
|
==========================
|
||||||
|
|
||||||
There may be some features `configure' cannot figure out
|
There may be some features `configure' cannot figure out automatically,
|
||||||
automatically, but needs to determine by the type of machine the package
|
but needs to determine by the type of machine the package will run on.
|
||||||
will run on. Usually, assuming the package is built to be run on the
|
Usually, assuming the package is built to be run on the _same_
|
||||||
_same_ architectures, `configure' can figure that out, but if it prints
|
architectures, `configure' can figure that out, but if it prints a
|
||||||
a message saying it cannot guess the machine type, give it the
|
message saying it cannot guess the machine type, give it the
|
||||||
`--build=TYPE' option. TYPE can either be a short name for the system
|
`--build=TYPE' option. TYPE can either be a short name for the system
|
||||||
type, such as `sun4', or a canonical name which has the form:
|
type, such as `sun4', or a canonical name which has the form:
|
||||||
|
|
||||||
@ -167,9 +170,9 @@ eventually be run) with `--host=TYPE'.
|
|||||||
Sharing Defaults
|
Sharing Defaults
|
||||||
================
|
================
|
||||||
|
|
||||||
If you want to set default values for `configure' scripts to share,
|
If you want to set default values for `configure' scripts to share, you
|
||||||
you can create a site shell script called `config.site' that gives
|
can create a site shell script called `config.site' that gives default
|
||||||
default values for variables like `CC', `cache_file', and `prefix'.
|
values for variables like `CC', `cache_file', and `prefix'.
|
||||||
`configure' looks for `PREFIX/share/config.site' if it exists, then
|
`configure' looks for `PREFIX/share/config.site' if it exists, then
|
||||||
`PREFIX/etc/config.site' if it exists. Or, you can set the
|
`PREFIX/etc/config.site' if it exists. Or, you can set the
|
||||||
`CONFIG_SITE' environment variable to the location of the site script.
|
`CONFIG_SITE' environment variable to the location of the site script.
|
||||||
@ -178,7 +181,7 @@ A warning: not all `configure' scripts look for a site script.
|
|||||||
Defining Variables
|
Defining Variables
|
||||||
==================
|
==================
|
||||||
|
|
||||||
Variables not defined in a site shell script can be set in the
|
Variables not defined in a site shell script can be set in the
|
||||||
environment passed to `configure'. However, some packages may run
|
environment passed to `configure'. However, some packages may run
|
||||||
configure again during the build, and the customized values of these
|
configure again during the build, and the customized values of these
|
||||||
variables may be lost. In order to avoid this problem, you should set
|
variables may be lost. In order to avoid this problem, you should set
|
||||||
@ -192,8 +195,7 @@ overridden in the site shell script).
|
|||||||
`configure' Invocation
|
`configure' Invocation
|
||||||
======================
|
======================
|
||||||
|
|
||||||
`configure' recognizes the following options to control how it
|
`configure' recognizes the following options to control how it operates.
|
||||||
operates.
|
|
||||||
|
|
||||||
`--help'
|
`--help'
|
||||||
`-h'
|
`-h'
|
||||||
|
26
Makefile.am
26
Makefile.am
@ -1,24 +1,28 @@
|
|||||||
|
# Makefile.am - Top level Makefile for GPGME.
|
||||||
# Copyright (C) 2000 Werner Koch (dd9jn)
|
# Copyright (C) 2000 Werner Koch (dd9jn)
|
||||||
# Copyright (C) 2001, 2002 g10 Code GmbH
|
# Copyright (C) 2001, 2002, 2004 g10 Code GmbH
|
||||||
#
|
#
|
||||||
# This file is part of GPGME.
|
# This file is part of GPGME.
|
||||||
#
|
#
|
||||||
# GPGME is free software; you can redistribute it and/or modify
|
# GPGME is free software; you can redistribute it and/or modify it
|
||||||
# it under the terms of the GNU General Public License as published by
|
# under the terms of the GNU Lesser General Public License as
|
||||||
# the Free Software Foundation; either version 2 of the License, or
|
# published by the Free Software Foundation; either version 2.1 of the
|
||||||
# (at your option) any later version.
|
# License, or (at your option) any later version.
|
||||||
#
|
#
|
||||||
# GPGME is distributed in the hope that it will be useful,
|
# GPGME is distributed in the hope that it will be useful, but WITHOUT
|
||||||
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
|
||||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
# or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General
|
||||||
# GNU General Public License for more details.
|
# Public License for more details.
|
||||||
#
|
#
|
||||||
# You should have received a copy of the GNU General Public License
|
# You should have received a copy of the GNU Lesser General Public
|
||||||
# along with this program; if not, write to the Free Software
|
# License along with this program; if not, write to the Free Software
|
||||||
# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA
|
# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA
|
||||||
|
|
||||||
## Process this file with automake to produce Makefile.in
|
## Process this file with automake to produce Makefile.in
|
||||||
|
|
||||||
|
ACLOCAL_AMFLAGS = -I m4
|
||||||
|
AUTOMAKE_OPTIONS = dist-bzip2
|
||||||
|
|
||||||
EXTRA_DIST = gpgme.spec.in
|
EXTRA_DIST = gpgme.spec.in
|
||||||
|
|
||||||
if BUILD_ASSUAN
|
if BUILD_ASSUAN
|
||||||
|
53
NEWS
53
NEWS
@ -1,3 +1,49 @@
|
|||||||
|
Noteworthy changes in version 1.0.4 (unreleased)
|
||||||
|
------------------------------------------------
|
||||||
|
|
||||||
|
* ...
|
||||||
|
|
||||||
|
* Interface changes relative to the 1.0.3 release:
|
||||||
|
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||||
|
SOMETHING NEW
|
||||||
|
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||||
|
|
||||||
|
Noteworthy changes in version 1.0.3 (2005-06-20)
|
||||||
|
------------------------------------------------
|
||||||
|
|
||||||
|
* Previousy, GPGME would use a default "include certs" of 1. This
|
||||||
|
has been changed. Now GPGME will use the crypto backend engines
|
||||||
|
default unless you set the value with gpgme_set_include_certs()
|
||||||
|
explicitely. A new macro GPGME_INCLUDE_CERTS_DEFAULT can be used
|
||||||
|
as a value to explicitely request the new default behaviour.
|
||||||
|
|
||||||
|
Because the default changes, this is a slight change of the API
|
||||||
|
semantics. We consider it to be a bug fix.
|
||||||
|
|
||||||
|
* A bug which made GPGME hang has been fixed. If you have
|
||||||
|
experienced hanging before, please try out this version and let me
|
||||||
|
know if you still experience hanging problems.
|
||||||
|
|
||||||
|
* Interface changes relative to the 0.9.0 release:
|
||||||
|
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||||
|
gpgme_set_include_certs CHANGED DEFAULT
|
||||||
|
GPGME_INCLUDE_CERTS_DEFAULT NEW
|
||||||
|
GPGME_STATUS_SIG_SUBPACKET NEW
|
||||||
|
GPGME_STATUS_NEED_PASSPHRASE_PIN NEW
|
||||||
|
GPGME_STATUS_SC_OP_FAILURE NEW
|
||||||
|
GPGME_STATUS_SC_OP_SUCCESS NEW
|
||||||
|
GPGME_STATUS_CARDCTRL NEW
|
||||||
|
GPGME_STATUS_BACKUP_KEY_CREATED NEW
|
||||||
|
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||||
|
|
||||||
|
|
||||||
|
Noteworthy changes in version 1.0.2 (2004-12-28)
|
||||||
|
------------------------------------------------
|
||||||
|
|
||||||
|
* Changed the license of the library to the GNU Lesser General Public
|
||||||
|
License (LGPL), version 2.1 or later.
|
||||||
|
|
||||||
|
|
||||||
Noteworthy changes in version 1.0.1 (2004-10-22)
|
Noteworthy changes in version 1.0.1 (2004-10-22)
|
||||||
------------------------------------------------
|
------------------------------------------------
|
||||||
|
|
||||||
@ -683,6 +729,11 @@ gpgme_get_key NEW
|
|||||||
GPGME_ATTR_SIG_CLASS NEW
|
GPGME_ATTR_SIG_CLASS NEW
|
||||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||||
|
|
||||||
|
Noteworthy changes in version 0.3.16 (2003-11-19)
|
||||||
|
-------------------------------------------------
|
||||||
|
|
||||||
|
* Compatibility fixes for GnuPG 1.9.x
|
||||||
|
|
||||||
Noteworthy changes in version 0.3.15 (2003-02-18)
|
Noteworthy changes in version 0.3.15 (2003-02-18)
|
||||||
-------------------------------------------------
|
-------------------------------------------------
|
||||||
|
|
||||||
@ -1009,7 +1060,7 @@ Noteworthy changes in version 0.2.1 (2001-04-02)
|
|||||||
* Made the W32 support more robust.
|
* Made the W32 support more robust.
|
||||||
|
|
||||||
|
|
||||||
Copyright 2001, 2002, 2003, 2004 g10 Code GmbH
|
Copyright 2001, 2002, 2003, 2004, 2005 g10 Code GmbH
|
||||||
|
|
||||||
This file is free software; as a special exception the author gives
|
This file is free software; as a special exception the author gives
|
||||||
unlimited permission to copy and/or distribute it, with or without
|
unlimited permission to copy and/or distribute it, with or without
|
||||||
|
13
README
13
README
@ -28,7 +28,8 @@ Cryptographic Message Syntax (CMS).
|
|||||||
GPGME runs best on GNU/Linux or *BSD systems. Other Unices may
|
GPGME runs best on GNU/Linux or *BSD systems. Other Unices may
|
||||||
require small portability fixes, send us your patches.
|
require small portability fixes, send us your patches.
|
||||||
|
|
||||||
See the file COPYING for copyright and warranty information.
|
See the file COPYING.LESSER and each file for copyright and warranty
|
||||||
|
information.
|
||||||
|
|
||||||
|
|
||||||
Installation
|
Installation
|
||||||
@ -43,7 +44,7 @@ To build GPGME, you need to install libgpg-error. You need at least
|
|||||||
libgpg-error 0.5.
|
libgpg-error 0.5.
|
||||||
|
|
||||||
For support of the OpenPGP protocol (default), you should use the
|
For support of the OpenPGP protocol (default), you should use the
|
||||||
latest version of GnuPG 1.2, available at:
|
latest version of GnuPG 1.2 or 1.4, available at:
|
||||||
ftp://ftp.gnupg.org/gcrypt/gnupg/
|
ftp://ftp.gnupg.org/gcrypt/gnupg/
|
||||||
|
|
||||||
You need at least GnuPG 1.2.2.
|
You need at least GnuPG 1.2.2.
|
||||||
@ -54,7 +55,7 @@ the location with the --with-gpg=/path/to/gpg argument to configure.
|
|||||||
For support of the CMS (Cryptographic Message Syntax) protocol, you
|
For support of the CMS (Cryptographic Message Syntax) protocol, you
|
||||||
need the latest CVS version of GnuPG 1.9, which is available in the
|
need the latest CVS version of GnuPG 1.9, which is available in the
|
||||||
GnuPG repository:
|
GnuPG repository:
|
||||||
http://www.gnupg.org/(en)/download/cvs_access.html
|
http://www.gnupg.org/download/cvs_access.html
|
||||||
Use the tag `GNUPG-1-9-BRANCH'. There are also snapshots available at:
|
Use the tag `GNUPG-1-9-BRANCH'. There are also snapshots available at:
|
||||||
ftp://ftp.gnupg.org/gcrypt/alpha/gnupg/
|
ftp://ftp.gnupg.org/gcrypt/alpha/gnupg/
|
||||||
|
|
||||||
@ -98,13 +99,13 @@ a) If you have a trusted Version of GnuPG installed, you can simply check
|
|||||||
with the fingerprint published elsewhere.
|
with the fingerprint published elsewhere.
|
||||||
|
|
||||||
b) If you don't have any of the above programs, you have to verify
|
b) If you don't have any of the above programs, you have to verify
|
||||||
the MD5 checksum:
|
the SHA1 checksum:
|
||||||
|
|
||||||
$ md5sum gpgme-x.y.z.tar.gz
|
$ sha1sum gpgme-x.y.z.tar.gz
|
||||||
|
|
||||||
This should yield an output _similar_ to this:
|
This should yield an output _similar_ to this:
|
||||||
|
|
||||||
fd9351b26b3189c1d577f0970f9dcadc gpgme-x.y.z.tar.gz
|
fd9351b26b3189c1d577f0970f9dcadc3412def1 gpgme-x.y.z.tar.gz
|
||||||
|
|
||||||
Now check that this checksum is _exactly_ the same as the one
|
Now check that this checksum is _exactly_ the same as the one
|
||||||
published via the announcement list and probably via Usenet.
|
published via the announcement list and probably via Usenet.
|
||||||
|
@ -47,5 +47,13 @@ et al. are properly indicated at the top of configure.ac and take care
|
|||||||
to copy the files and not merely use symlinks.
|
to copy the files and not merely use symlinks.
|
||||||
|
|
||||||
|
|
||||||
|
Copyright 2004 g10 Code GmbH
|
||||||
|
|
||||||
|
This file is free software; as a special exception the author gives
|
||||||
|
unlimited permission to copy and/or distribute it, with or without
|
||||||
|
modifications, as long as this notice is preserved.
|
||||||
|
|
||||||
|
This file is distributed in the hope that it will be useful, but
|
||||||
|
WITHOUT ANY WARRANTY, to the extent permitted by law; without even the
|
||||||
|
implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
|
||||||
|
PURPOSE.
|
||||||
|
7
THANKS
7
THANKS
@ -1,14 +1,21 @@
|
|||||||
|
For a list of the authors of the source code of GPGME, please see the
|
||||||
|
file AUTHORS. The following people supported GPGME development in
|
||||||
|
various ways (for example by finding bugs or giving advice), and we
|
||||||
|
want to thank them for their help. If we forgot you, please let us
|
||||||
|
know.
|
||||||
|
|
||||||
Adriaan de Groot adridg@cs.kun.nl
|
Adriaan de Groot adridg@cs.kun.nl
|
||||||
Albrecht Dreß albrecht.dress@arcor.de
|
Albrecht Dreß albrecht.dress@arcor.de
|
||||||
Alfons Hoogervorst alfons@proteus.demon.nl
|
Alfons Hoogervorst alfons@proteus.demon.nl
|
||||||
Enno Cramer uebergeek@web.de
|
Enno Cramer uebergeek@web.de
|
||||||
Frank Heckenbach frank@g-n-u.de
|
Frank Heckenbach frank@g-n-u.de
|
||||||
|
Igor Belyi gpgme@katehok.ac93.org
|
||||||
Jan-Oliver Wagner jan@intevation.de
|
Jan-Oliver Wagner jan@intevation.de
|
||||||
Johannes Poehlmann jhp@caldera.de
|
Johannes Poehlmann jhp@caldera.de
|
||||||
Jose C. García Sogo jose@jaimedelamo.eu.org
|
Jose C. García Sogo jose@jaimedelamo.eu.org
|
||||||
Mark Mutz mutz@kde.org
|
Mark Mutz mutz@kde.org
|
||||||
Miguel Coca mcoca@gnu.org
|
Miguel Coca mcoca@gnu.org
|
||||||
|
Noel Torres envite@rolamasao.org
|
||||||
Stéphane Corthésy stephane@sente.ch
|
Stéphane Corthésy stephane@sente.ch
|
||||||
Timo Schulz twoaday@freakmail.de
|
Timo Schulz twoaday@freakmail.de
|
||||||
Tommy Reynolds reynolds@redhat.com
|
Tommy Reynolds reynolds@redhat.com
|
||||||
|
25
TODO
25
TODO
@ -1,7 +1,6 @@
|
|||||||
Hey Emacs, this is -*- outline -*- mode!
|
Hey Emacs, this is -*- outline -*- mode!
|
||||||
|
|
||||||
* Before release:
|
* Before release:
|
||||||
** Switch to LGPL?
|
|
||||||
** Some gpg tests fail with gpg 1.3.4-cvs (gpg/t-keylist-sig)
|
** Some gpg tests fail with gpg 1.3.4-cvs (gpg/t-keylist-sig)
|
||||||
The test is currently disabled there and in gpg/t-import.
|
The test is currently disabled there and in gpg/t-import.
|
||||||
** Add notation data to key signatures.
|
** Add notation data to key signatures.
|
||||||
@ -9,7 +8,8 @@ Hey Emacs, this is -*- outline -*- mode!
|
|||||||
* ABI's to break:
|
* ABI's to break:
|
||||||
** I/O and User Data could be made extensible. But this can be done
|
** I/O and User Data could be made extensible. But this can be done
|
||||||
without breaking the ABI hopefully.
|
without breaking the ABI hopefully.
|
||||||
* All enums that should be enums need to have a maximum value to ensure a certain minimum width for extensibility.
|
* All enums that should be enums need to have a maximum value to ensure
|
||||||
|
a certain minimum width for extensibility.
|
||||||
** Compatibility interfaces that can be removed in future versions:
|
** Compatibility interfaces that can be removed in future versions:
|
||||||
*** ath compatibility modules.
|
*** ath compatibility modules.
|
||||||
*** gpgme_data_new_from_filepart
|
*** gpgme_data_new_from_filepart
|
||||||
@ -28,6 +28,7 @@ Hey Emacs, this is -*- outline -*- mode!
|
|||||||
*** gpgme_attr_t
|
*** gpgme_attr_t
|
||||||
*** All Gpgme* typedefs.
|
*** All Gpgme* typedefs.
|
||||||
|
|
||||||
|
|
||||||
* Thread support:
|
* Thread support:
|
||||||
** When GNU Pth supports sendmsg/recvmsg, wrap them properly.
|
** When GNU Pth supports sendmsg/recvmsg, wrap them properly.
|
||||||
** Without timegm (3) support our ISO time parser is not thread safe.
|
** Without timegm (3) support our ISO time parser is not thread safe.
|
||||||
@ -60,9 +61,6 @@ Hey Emacs, this is -*- outline -*- mode!
|
|||||||
This allows us to handle years later than 2037 properly. With the
|
This allows us to handle years later than 2037 properly. With the
|
||||||
time_t interface they are all mapped to 2037-12-31
|
time_t interface they are all mapped to 2037-12-31
|
||||||
|
|
||||||
* Support
|
|
||||||
** gpgme.m4 should check --api-version of gpgme-config.
|
|
||||||
|
|
||||||
* Documentation
|
* Documentation
|
||||||
** Document validity and trust issues.
|
** Document validity and trust issues.
|
||||||
|
|
||||||
@ -143,11 +141,22 @@ Hey Emacs, this is -*- outline -*- mode!
|
|||||||
|
|
||||||
* Build suite
|
* Build suite
|
||||||
** Make sure everything is cleaned correctly (esp. test area).
|
** Make sure everything is cleaned correctly (esp. test area).
|
||||||
** Configure test for gpg and gpgsm version (as a warning).
|
|
||||||
** Enable AC_CONFIG_MACRO_DIR and bump up autoconf version requirement.
|
** Enable AC_CONFIG_MACRO_DIR and bump up autoconf version requirement.
|
||||||
(To fix "./autogen.sh; ./configure --enable-maintainer-mode; touch
|
(To fix "./autogen.sh; ./configure --enable-maintainer-mode; touch
|
||||||
configure.ac; make").
|
configure.ac; make"). Currently worked around with ACLOCAL_AMFLAGS???
|
||||||
|
|
||||||
* Error checking
|
* Error checking
|
||||||
** engine-gpgsm, with-validation
|
** engine-gpgsm, with-validation
|
||||||
Add error checking some time after releasing a new gpgsm.
|
Add error checking some time after releasing a new gpgsm.
|
||||||
|
|
||||||
|
|
||||||
|
Copyright 2004 g10 Code GmbH
|
||||||
|
|
||||||
|
This file is free software; as a special exception the author gives
|
||||||
|
unlimited permission to copy and/or distribute it, with or without
|
||||||
|
modifications, as long as this notice is preserved.
|
||||||
|
|
||||||
|
This file is distributed in the hope that it will be useful, but
|
||||||
|
WITHOUT ANY WARRANTY, to the extent permitted by law; without even the
|
||||||
|
implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
|
||||||
|
PURPOSE.
|
||||||
|
24
acinclude.m4
24
acinclude.m4
@ -3,18 +3,18 @@ dnl Copyright (C) 2004 g10 Code GmbH
|
|||||||
dnl
|
dnl
|
||||||
dnl This file is part of GPGME.
|
dnl This file is part of GPGME.
|
||||||
dnl
|
dnl
|
||||||
dnl GPGME is free software; you can redistribute it and/or modify
|
dnl GPGME is free software; you can redistribute it and/or modify it
|
||||||
dnl it under the terms of the GNU General Public License as published by
|
dnl under the terms of the GNU Lesser General Public License as
|
||||||
dnl the Free Software Foundation; either version 2 of the License, or
|
dnl published by the Free Software Foundation; either version 2.1 of the
|
||||||
dnl (at your option) any later version.
|
dnl License, or (at your option) any later version.
|
||||||
dnl
|
dnl
|
||||||
dnl GPGME is distributed in the hope that it will be useful,
|
dnl GPGME is distributed in the hope that it will be useful, but WITHOUT
|
||||||
dnl but WITHOUT ANY WARRANTY; without even the implied warranty of
|
dnl ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
|
||||||
dnl MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
dnl or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General
|
||||||
dnl GNU General Public License for more details.
|
dnl Public License for more details.
|
||||||
dnl
|
dnl
|
||||||
dnl You should have received a copy of the GNU General Public License
|
dnl You should have received a copy of the GNU Lesser General Public
|
||||||
dnl along with this program; if not, write to the Free Software
|
dnl License along with this program; if not, write to the Free Software
|
||||||
dnl Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA
|
dnl Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA
|
||||||
|
|
||||||
dnl GNUPG_FIX_HDR_VERSION(FILE, NAME)
|
dnl GNUPG_FIX_HDR_VERSION(FILE, NAME)
|
||||||
@ -24,7 +24,7 @@ dnl for one substitution.
|
|||||||
dnl We must use a temp file in the current directory because make
|
dnl We must use a temp file in the current directory because make
|
||||||
dnl distcheck installs all sourcefiles RO.
|
dnl distcheck installs all sourcefiles RO.
|
||||||
dnl (wk 2001-12-18)
|
dnl (wk 2001-12-18)
|
||||||
AC_DEFUN(GNUPG_FIX_HDR_VERSION,
|
AC_DEFUN([GNUPG_FIX_HDR_VERSION],
|
||||||
[ sed "s/^#define $2 \".*/#define $2 \"$VERSION\"/" $srcdir/$1 > fixhdr.tmp
|
[ sed "s/^#define $2 \".*/#define $2 \"$VERSION\"/" $srcdir/$1 > fixhdr.tmp
|
||||||
if cmp -s $srcdir/$1 fixhdr.tmp 2>/dev/null; then
|
if cmp -s $srcdir/$1 fixhdr.tmp 2>/dev/null; then
|
||||||
rm -f fixhdr.tmp
|
rm -f fixhdr.tmp
|
||||||
@ -47,7 +47,7 @@ dnl GNUPG_CHECK_VA_COPY()
|
|||||||
dnl Do some check on how to implement va_copy.
|
dnl Do some check on how to implement va_copy.
|
||||||
dnl May define MUST_COPY_VA_BY_VAL.
|
dnl May define MUST_COPY_VA_BY_VAL.
|
||||||
dnl Actual test code taken from glib-1.1.
|
dnl Actual test code taken from glib-1.1.
|
||||||
AC_DEFUN(GNUPG_CHECK_VA_COPY,
|
AC_DEFUN([GNUPG_CHECK_VA_COPY],
|
||||||
[ AC_MSG_CHECKING(whether va_lists must be copied by value)
|
[ AC_MSG_CHECKING(whether va_lists must be copied by value)
|
||||||
AC_CACHE_VAL(gnupg_cv_must_copy_va_byval,[
|
AC_CACHE_VAL(gnupg_cv_must_copy_va_byval,[
|
||||||
gnupg_cv_must_copy_va_byval=no
|
gnupg_cv_must_copy_va_byval=no
|
||||||
|
@ -1,3 +1,20 @@
|
|||||||
|
2005-03-22 Werner Koch <wk@g10code.com>
|
||||||
|
|
||||||
|
* assuan-defs.h (struct assuan_io): Renamed elements READ and
|
||||||
|
WRITE to READFNC and WRITEFNC to avoid problems with read defined
|
||||||
|
as macro. Changed callers. Noted by Ville Skyttä.
|
||||||
|
|
||||||
|
2004-12-16 Marcus Brinkmann <marcus@g10code.de>
|
||||||
|
|
||||||
|
* assuan-pipe-connect.c (do_finish): Do not wait for child to finish.
|
||||||
|
(assuan_pipe_connect): Use double-fork approach.
|
||||||
|
* assuan-connect.c (assuan_disconnect): Do not write BYE to the
|
||||||
|
status line.
|
||||||
|
|
||||||
|
2004-12-07 Marcus Brinkmann <marcus@g10code.de>
|
||||||
|
|
||||||
|
* README.1st: Add copyright notice.
|
||||||
|
|
||||||
2004-06-23 Marcus Brinkmann <marcus@g10code.de>
|
2004-06-23 Marcus Brinkmann <marcus@g10code.de>
|
||||||
|
|
||||||
* assuan-domain-connect.c [HAVE_SYS_UIO_H]: Include <sys/uio.h>.
|
* assuan-domain-connect.c [HAVE_SYS_UIO_H]: Include <sys/uio.h>.
|
||||||
@ -499,7 +516,7 @@
|
|||||||
* assuan-defs.h: Add space in the context for this.
|
* assuan-defs.h: Add space in the context for this.
|
||||||
|
|
||||||
|
|
||||||
Copyright 2001, 2002 Free Software Foundation, Inc.
|
Copyright 2001, 2002, 2003, 2004 Free Software Foundation, Inc.
|
||||||
|
|
||||||
This file is free software; as a special exception the author gives
|
This file is free software; as a special exception the author gives
|
||||||
unlimited permission to copy and/or distribute it, with or without
|
unlimited permission to copy and/or distribute it, with or without
|
||||||
|
@ -23,3 +23,14 @@ updating this directory, are:
|
|||||||
|
|
||||||
* assuan-pipe-connect.c
|
* assuan-pipe-connect.c
|
||||||
** Do not install SIGPIPE signal handler here.
|
** Do not install SIGPIPE signal handler here.
|
||||||
|
|
||||||
|
|
||||||
|
Copyright 2004 g10 Code GmbH
|
||||||
|
|
||||||
|
This file is free software; as a special exception the author gives
|
||||||
|
unlimited permission to copy and/or distribute it, with or without
|
||||||
|
modifications, as long as this notice is preserved.
|
||||||
|
|
||||||
|
This file is distributed in the hope that it will be useful, but
|
||||||
|
WITHOUT ANY WARRANTY, to the extent permitted by law; without even the
|
||||||
|
implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
|
||||||
|
@ -32,7 +32,7 @@ writen (ASSUAN_CONTEXT ctx, const char *buffer, size_t length)
|
|||||||
{
|
{
|
||||||
while (length)
|
while (length)
|
||||||
{
|
{
|
||||||
ssize_t nwritten = ctx->io->write (ctx, buffer, length);
|
ssize_t nwritten = ctx->io->writefnc (ctx, buffer, length);
|
||||||
|
|
||||||
if (nwritten < 0)
|
if (nwritten < 0)
|
||||||
{
|
{
|
||||||
@ -58,7 +58,7 @@ readline (ASSUAN_CONTEXT ctx, char *buf, size_t buflen,
|
|||||||
*r_nread = 0;
|
*r_nread = 0;
|
||||||
while (nleft > 0)
|
while (nleft > 0)
|
||||||
{
|
{
|
||||||
ssize_t n = ctx->io->read (ctx, buf, nleft);
|
ssize_t n = ctx->io->readfnc (ctx, buf, nleft);
|
||||||
|
|
||||||
if (n < 0)
|
if (n < 0)
|
||||||
{
|
{
|
||||||
|
@ -39,7 +39,11 @@ assuan_disconnect (ASSUAN_CONTEXT ctx)
|
|||||||
{
|
{
|
||||||
if (ctx)
|
if (ctx)
|
||||||
{
|
{
|
||||||
|
#if 0
|
||||||
|
/* This may not work if the pipe is full and the other end is
|
||||||
|
blocked. */
|
||||||
assuan_write_line (ctx, "BYE");
|
assuan_write_line (ctx, "BYE");
|
||||||
|
#endif
|
||||||
ctx->finish_handler (ctx);
|
ctx->finish_handler (ctx);
|
||||||
ctx->deinit_handler (ctx);
|
ctx->deinit_handler (ctx);
|
||||||
ctx->deinit_handler = NULL;
|
ctx->deinit_handler = NULL;
|
||||||
|
@ -39,9 +39,9 @@ struct cmdtbl_s
|
|||||||
struct assuan_io
|
struct assuan_io
|
||||||
{
|
{
|
||||||
/* Routine to read from input_fd. */
|
/* Routine to read from input_fd. */
|
||||||
ssize_t (*read) (ASSUAN_CONTEXT, void *, size_t);
|
ssize_t (*readfnc) (ASSUAN_CONTEXT, void *, size_t);
|
||||||
/* Routine to write to output_fd. */
|
/* Routine to write to output_fd. */
|
||||||
ssize_t (*write) (ASSUAN_CONTEXT, const void *, size_t);
|
ssize_t (*writefnc) (ASSUAN_CONTEXT, const void *, size_t);
|
||||||
/* Send a file descriptor. */
|
/* Send a file descriptor. */
|
||||||
AssuanError (*sendfd) (ASSUAN_CONTEXT, int);
|
AssuanError (*sendfd) (ASSUAN_CONTEXT, int);
|
||||||
/* Receive a file descriptor. */
|
/* Receive a file descriptor. */
|
||||||
|
@ -80,8 +80,11 @@ do_finish (ASSUAN_CONTEXT ctx)
|
|||||||
}
|
}
|
||||||
if (ctx->pid != -1)
|
if (ctx->pid != -1)
|
||||||
{
|
{
|
||||||
|
#if 0
|
||||||
|
/* This is already done by the double fork. */
|
||||||
waitpid (ctx->pid, NULL, 0); /* FIXME Check return value. */
|
waitpid (ctx->pid, NULL, 0); /* FIXME Check return value. */
|
||||||
ctx->pid = -1;
|
ctx->pid = -1;
|
||||||
|
#endif
|
||||||
}
|
}
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
@ -155,6 +158,8 @@ assuan_pipe_connect (ASSUAN_CONTEXT *ctx, const char *name, char *const argv[],
|
|||||||
(*ctx)->deinit_handler = do_deinit;
|
(*ctx)->deinit_handler = do_deinit;
|
||||||
(*ctx)->finish_handler = do_finish;
|
(*ctx)->finish_handler = do_finish;
|
||||||
|
|
||||||
|
/* FIXME: Use _gpgme_io_spawn. The PID stored here is actually
|
||||||
|
soon useless. */
|
||||||
(*ctx)->pid = fork ();
|
(*ctx)->pid = fork ();
|
||||||
if ((*ctx)->pid < 0)
|
if ((*ctx)->pid < 0)
|
||||||
{
|
{
|
||||||
@ -168,82 +173,98 @@ assuan_pipe_connect (ASSUAN_CONTEXT *ctx, const char *name, char *const argv[],
|
|||||||
|
|
||||||
if ((*ctx)->pid == 0)
|
if ((*ctx)->pid == 0)
|
||||||
{
|
{
|
||||||
int i, n;
|
/* Intermediate child to prevent zombie processes. */
|
||||||
char errbuf[512];
|
pid_t pid;
|
||||||
int *fdp;
|
|
||||||
|
|
||||||
/* Dup handles to stdin/stdout. */
|
if ((pid = fork ()) == 0)
|
||||||
if (rp[1] != STDOUT_FILENO)
|
|
||||||
{
|
{
|
||||||
if (dup2 (rp[1], STDOUT_FILENO) == -1)
|
/* Child. */
|
||||||
{
|
|
||||||
LOG ("dup2 failed in child: %s\n", strerror (errno));
|
|
||||||
_exit (4);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
if (wp[0] != STDIN_FILENO)
|
|
||||||
{
|
|
||||||
if (dup2 (wp[0], STDIN_FILENO) == -1)
|
|
||||||
{
|
|
||||||
LOG ("dup2 failed in child: %s\n", strerror (errno));
|
|
||||||
_exit (4);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
/* Dup stderr to /dev/null unless it is in the list of FDs to be
|
int i, n;
|
||||||
passed to the child. */
|
char errbuf[512];
|
||||||
fdp = fd_child_list;
|
int *fdp;
|
||||||
if (fdp)
|
|
||||||
{
|
|
||||||
for (; *fdp != -1 && *fdp != STDERR_FILENO; fdp++)
|
|
||||||
;
|
|
||||||
}
|
|
||||||
if (!fdp || *fdp == -1)
|
|
||||||
{
|
|
||||||
int fd = open ("/dev/null", O_WRONLY);
|
|
||||||
if (fd == -1)
|
|
||||||
{
|
|
||||||
LOG ("can't open `/dev/null': %s\n", strerror (errno));
|
|
||||||
_exit (4);
|
|
||||||
}
|
|
||||||
if (dup2 (fd, STDERR_FILENO) == -1)
|
|
||||||
{
|
|
||||||
LOG ("dup2(dev/null, 2) failed: %s\n", strerror (errno));
|
|
||||||
_exit (4);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
|
/* Dup handles to stdin/stdout. */
|
||||||
/* Close all files which will not be duped and are not in the
|
if (rp[1] != STDOUT_FILENO)
|
||||||
fd_child_list. */
|
{
|
||||||
n = sysconf (_SC_OPEN_MAX);
|
if (dup2 (rp[1], STDOUT_FILENO) == -1)
|
||||||
if (n < 0)
|
{
|
||||||
n = MAX_OPEN_FDS;
|
LOG ("dup2 failed in child: %s\n", strerror (errno));
|
||||||
for (i=0; i < n; i++)
|
_exit (4);
|
||||||
{
|
}
|
||||||
if ( i == STDIN_FILENO || i == STDOUT_FILENO || i == STDERR_FILENO)
|
}
|
||||||
continue;
|
if (wp[0] != STDIN_FILENO)
|
||||||
|
{
|
||||||
|
if (dup2 (wp[0], STDIN_FILENO) == -1)
|
||||||
|
{
|
||||||
|
LOG ("dup2 failed in child: %s\n", strerror (errno));
|
||||||
|
_exit (4);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Dup stderr to /dev/null unless it is in the list of FDs to be
|
||||||
|
passed to the child. */
|
||||||
fdp = fd_child_list;
|
fdp = fd_child_list;
|
||||||
if (fdp)
|
if (fdp)
|
||||||
{
|
{
|
||||||
while (*fdp != -1 && *fdp != i)
|
for (; *fdp != -1 && *fdp != STDERR_FILENO; fdp++)
|
||||||
fdp++;
|
;
|
||||||
|
}
|
||||||
|
if (!fdp || *fdp == -1)
|
||||||
|
{
|
||||||
|
int fd = open ("/dev/null", O_WRONLY);
|
||||||
|
if (fd == -1)
|
||||||
|
{
|
||||||
|
LOG ("can't open `/dev/null': %s\n", strerror (errno));
|
||||||
|
_exit (4);
|
||||||
|
}
|
||||||
|
if (dup2 (fd, STDERR_FILENO) == -1)
|
||||||
|
{
|
||||||
|
LOG ("dup2(dev/null, 2) failed: %s\n", strerror (errno));
|
||||||
|
_exit (4);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if (!(fdp && *fdp != -1))
|
|
||||||
close(i);
|
|
||||||
}
|
|
||||||
errno = 0;
|
|
||||||
|
|
||||||
execv (name, argv);
|
/* Close all files which will not be duped and are not in the
|
||||||
/* oops - use the pipe to tell the parent about it */
|
fd_child_list. */
|
||||||
snprintf (errbuf, sizeof(errbuf)-1, "ERR %d can't exec `%s': %.50s\n",
|
n = sysconf (_SC_OPEN_MAX);
|
||||||
ASSUAN_Problem_Starting_Server, name, strerror (errno));
|
if (n < 0)
|
||||||
errbuf[sizeof(errbuf)-1] = 0;
|
n = MAX_OPEN_FDS;
|
||||||
writen (1, errbuf, strlen (errbuf));
|
for (i=0; i < n; i++)
|
||||||
_exit (4);
|
{
|
||||||
|
if ( i == STDIN_FILENO || i == STDOUT_FILENO || i == STDERR_FILENO)
|
||||||
|
continue;
|
||||||
|
fdp = fd_child_list;
|
||||||
|
if (fdp)
|
||||||
|
{
|
||||||
|
while (*fdp != -1 && *fdp != i)
|
||||||
|
fdp++;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (!(fdp && *fdp != -1))
|
||||||
|
close(i);
|
||||||
|
}
|
||||||
|
|
||||||
|
errno = 0;
|
||||||
|
|
||||||
|
execv (name, argv);
|
||||||
|
/* oops - use the pipe to tell the parent about it */
|
||||||
|
snprintf (errbuf, sizeof(errbuf)-1, "ERR %d can't exec `%s': %.50s\n",
|
||||||
|
ASSUAN_Problem_Starting_Server, name, strerror (errno));
|
||||||
|
errbuf[sizeof(errbuf)-1] = 0;
|
||||||
|
writen (1, errbuf, strlen (errbuf));
|
||||||
|
_exit (4);
|
||||||
|
} /* End child. */
|
||||||
|
if (pid == -1)
|
||||||
|
_exit (1);
|
||||||
|
else
|
||||||
|
_exit (0);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
waitpid ((*ctx)->pid, NULL, 0);
|
||||||
|
(*ctx)->pid = -1;
|
||||||
|
|
||||||
close (rp[1]);
|
close (rp[1]);
|
||||||
close (wp[0]);
|
close (wp[0]);
|
||||||
|
|
||||||
|
145
compile
145
compile
@ -1,8 +1,9 @@
|
|||||||
#! /bin/sh
|
#! /bin/sh
|
||||||
|
|
||||||
# Wrapper for compilers which do not understand `-c -o'.
|
# Wrapper for compilers which do not understand `-c -o'.
|
||||||
|
|
||||||
# Copyright 1999, 2000 Free Software Foundation, Inc.
|
scriptversion=2004-10-12.08
|
||||||
|
|
||||||
|
# Copyright (C) 1999, 2000, 2003, 2004 Free Software Foundation, Inc.
|
||||||
# Written by Tom Tromey <tromey@cygnus.com>.
|
# Written by Tom Tromey <tromey@cygnus.com>.
|
||||||
#
|
#
|
||||||
# This program is free software; you can redistribute it and/or modify
|
# This program is free software; you can redistribute it and/or modify
|
||||||
@ -24,76 +25,118 @@
|
|||||||
# configuration script generated by Autoconf, you may include it under
|
# configuration script generated by Autoconf, you may include it under
|
||||||
# the same distribution terms that you use for the rest of that program.
|
# the same distribution terms that you use for the rest of that program.
|
||||||
|
|
||||||
# Usage:
|
# This file is maintained in Automake, please report
|
||||||
# compile PROGRAM [ARGS]...
|
# bugs to <bug-automake@gnu.org> or send patches to
|
||||||
# `-o FOO.o' is removed from the args passed to the actual compile.
|
# <automake-patches@gnu.org>.
|
||||||
|
|
||||||
prog=$1
|
case $1 in
|
||||||
shift
|
'')
|
||||||
|
echo "$0: No command. Try \`$0 --help' for more information." 1>&2
|
||||||
|
exit 1;
|
||||||
|
;;
|
||||||
|
-h | --h*)
|
||||||
|
cat <<\EOF
|
||||||
|
Usage: compile [--help] [--version] PROGRAM [ARGS]
|
||||||
|
|
||||||
|
Wrapper for compilers which do not understand `-c -o'.
|
||||||
|
Remove `-o dest.o' from ARGS, run PROGRAM with the remaining
|
||||||
|
arguments, and rename the output as expected.
|
||||||
|
|
||||||
|
If you are trying to build a whole package this is not the
|
||||||
|
right script to run: please start by reading the file `INSTALL'.
|
||||||
|
|
||||||
|
Report bugs to <bug-automake@gnu.org>.
|
||||||
|
EOF
|
||||||
|
exit 0
|
||||||
|
;;
|
||||||
|
-v | --v*)
|
||||||
|
echo "compile $scriptversion"
|
||||||
|
exit 0
|
||||||
|
;;
|
||||||
|
esac
|
||||||
|
|
||||||
ofile=
|
ofile=
|
||||||
cfile=
|
cfile=
|
||||||
args=
|
eat=
|
||||||
while test $# -gt 0; do
|
|
||||||
case "$1" in
|
for arg
|
||||||
-o)
|
do
|
||||||
# configure might choose to run compile as `compile cc -o foo foo.c'.
|
if test -n "$eat"; then
|
||||||
# So we do something ugly here.
|
eat=
|
||||||
ofile=$2
|
else
|
||||||
shift
|
case $1 in
|
||||||
case "$ofile" in
|
-o)
|
||||||
*.o | *.obj)
|
# configure might choose to run compile as `compile cc -o foo foo.c'.
|
||||||
;;
|
# So we strip `-o arg' only if arg is an object.
|
||||||
*)
|
eat=1
|
||||||
args="$args -o $ofile"
|
case $2 in
|
||||||
ofile=
|
*.o | *.obj)
|
||||||
;;
|
ofile=$2
|
||||||
esac
|
;;
|
||||||
;;
|
*)
|
||||||
*.c)
|
set x "$@" -o "$2"
|
||||||
cfile=$1
|
shift
|
||||||
args="$args $1"
|
;;
|
||||||
;;
|
esac
|
||||||
*)
|
;;
|
||||||
args="$args $1"
|
*.c)
|
||||||
;;
|
cfile=$1
|
||||||
esac
|
set x "$@" "$1"
|
||||||
shift
|
shift
|
||||||
|
;;
|
||||||
|
*)
|
||||||
|
set x "$@" "$1"
|
||||||
|
shift
|
||||||
|
;;
|
||||||
|
esac
|
||||||
|
fi
|
||||||
|
shift
|
||||||
done
|
done
|
||||||
|
|
||||||
if test -z "$ofile" || test -z "$cfile"; then
|
if test -z "$ofile" || test -z "$cfile"; then
|
||||||
# If no `-o' option was seen then we might have been invoked from a
|
# If no `-o' option was seen then we might have been invoked from a
|
||||||
# pattern rule where we don't need one. That is ok -- this is a
|
# pattern rule where we don't need one. That is ok -- this is a
|
||||||
# normal compilation that the losing compiler can handle. If no
|
# normal compilation that the losing compiler can handle. If no
|
||||||
# `.c' file was seen then we are probably linking. That is also
|
# `.c' file was seen then we are probably linking. That is also
|
||||||
# ok.
|
# ok.
|
||||||
exec "$prog" $args
|
exec "$@"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
# Name of file we expect compiler to create.
|
# Name of file we expect compiler to create.
|
||||||
cofile=`echo $cfile | sed -e 's|^.*/||' -e 's/\.c$/.o/'`
|
cofile=`echo "$cfile" | sed -e 's|^.*/||' -e 's/\.c$/.o/'`
|
||||||
|
|
||||||
# Create the lock directory.
|
# Create the lock directory.
|
||||||
# Note: use `[/.-]' here to ensure that we don't use the same name
|
# Note: use `[/.-]' here to ensure that we don't use the same name
|
||||||
# that we are using for the .o file. Also, base the name on the expected
|
# that we are using for the .o file. Also, base the name on the expected
|
||||||
# object file name, since that is what matters with a parallel build.
|
# object file name, since that is what matters with a parallel build.
|
||||||
lockdir=`echo $cofile | sed -e 's|[/.-]|_|g'`.d
|
lockdir=`echo "$cofile" | sed -e 's|[/.-]|_|g'`.d
|
||||||
while true; do
|
while true; do
|
||||||
if mkdir $lockdir > /dev/null 2>&1; then
|
if mkdir "$lockdir" >/dev/null 2>&1; then
|
||||||
break
|
break
|
||||||
fi
|
fi
|
||||||
sleep 1
|
sleep 1
|
||||||
done
|
done
|
||||||
# FIXME: race condition here if user kills between mkdir and trap.
|
# FIXME: race condition here if user kills between mkdir and trap.
|
||||||
trap "rmdir $lockdir; exit 1" 1 2 15
|
trap "rmdir '$lockdir'; exit 1" 1 2 15
|
||||||
|
|
||||||
# Run the compile.
|
# Run the compile.
|
||||||
"$prog" $args
|
"$@"
|
||||||
status=$?
|
ret=$?
|
||||||
|
|
||||||
if test -f "$cofile"; then
|
if test -f "$cofile"; then
|
||||||
mv "$cofile" "$ofile"
|
mv "$cofile" "$ofile"
|
||||||
|
elif test -f "${cofile}bj"; then
|
||||||
|
mv "${cofile}bj" "$ofile"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
rmdir $lockdir
|
rmdir "$lockdir"
|
||||||
exit $status
|
exit $ret
|
||||||
|
|
||||||
|
# Local Variables:
|
||||||
|
# mode: shell-script
|
||||||
|
# sh-indentation: 2
|
||||||
|
# eval: (add-hook 'write-file-hooks 'time-stamp)
|
||||||
|
# time-stamp-start: "scriptversion="
|
||||||
|
# time-stamp-format: "%:y-%02m-%02d.%02H"
|
||||||
|
# time-stamp-end: "$"
|
||||||
|
# End:
|
||||||
|
95
config.guess
vendored
95
config.guess
vendored
@ -1,9 +1,9 @@
|
|||||||
#! /bin/sh
|
#! /bin/sh
|
||||||
# Attempt to guess a canonical system name.
|
# Attempt to guess a canonical system name.
|
||||||
# Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999,
|
# Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999,
|
||||||
# 2000, 2001, 2002, 2003 Free Software Foundation, Inc.
|
# 2000, 2001, 2002, 2003, 2004 Free Software Foundation, Inc.
|
||||||
|
|
||||||
timestamp='2004-01-05'
|
timestamp='2004-08-13'
|
||||||
|
|
||||||
# This file is free software; you can redistribute it and/or modify it
|
# This file is free software; you can redistribute it and/or modify it
|
||||||
# under the terms of the GNU General Public License as published by
|
# under the terms of the GNU General Public License as published by
|
||||||
@ -53,7 +53,7 @@ version="\
|
|||||||
GNU config.guess ($timestamp)
|
GNU config.guess ($timestamp)
|
||||||
|
|
||||||
Originally written by Per Bothner.
|
Originally written by Per Bothner.
|
||||||
Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001
|
Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004
|
||||||
Free Software Foundation, Inc.
|
Free Software Foundation, Inc.
|
||||||
|
|
||||||
This is free software; see the source for copying conditions. There is NO
|
This is free software; see the source for copying conditions. There is NO
|
||||||
@ -197,15 +197,21 @@ case "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in
|
|||||||
# CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM is used.
|
# CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM is used.
|
||||||
echo "${machine}-${os}${release}"
|
echo "${machine}-${os}${release}"
|
||||||
exit 0 ;;
|
exit 0 ;;
|
||||||
|
amd64:OpenBSD:*:*)
|
||||||
|
echo x86_64-unknown-openbsd${UNAME_RELEASE}
|
||||||
|
exit 0 ;;
|
||||||
amiga:OpenBSD:*:*)
|
amiga:OpenBSD:*:*)
|
||||||
echo m68k-unknown-openbsd${UNAME_RELEASE}
|
echo m68k-unknown-openbsd${UNAME_RELEASE}
|
||||||
exit 0 ;;
|
exit 0 ;;
|
||||||
arc:OpenBSD:*:*)
|
cats:OpenBSD:*:*)
|
||||||
echo mipsel-unknown-openbsd${UNAME_RELEASE}
|
echo arm-unknown-openbsd${UNAME_RELEASE}
|
||||||
exit 0 ;;
|
exit 0 ;;
|
||||||
hp300:OpenBSD:*:*)
|
hp300:OpenBSD:*:*)
|
||||||
echo m68k-unknown-openbsd${UNAME_RELEASE}
|
echo m68k-unknown-openbsd${UNAME_RELEASE}
|
||||||
exit 0 ;;
|
exit 0 ;;
|
||||||
|
luna88k:OpenBSD:*:*)
|
||||||
|
echo m88k-unknown-openbsd${UNAME_RELEASE}
|
||||||
|
exit 0 ;;
|
||||||
mac68k:OpenBSD:*:*)
|
mac68k:OpenBSD:*:*)
|
||||||
echo m68k-unknown-openbsd${UNAME_RELEASE}
|
echo m68k-unknown-openbsd${UNAME_RELEASE}
|
||||||
exit 0 ;;
|
exit 0 ;;
|
||||||
@ -221,28 +227,33 @@ case "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in
|
|||||||
mvmeppc:OpenBSD:*:*)
|
mvmeppc:OpenBSD:*:*)
|
||||||
echo powerpc-unknown-openbsd${UNAME_RELEASE}
|
echo powerpc-unknown-openbsd${UNAME_RELEASE}
|
||||||
exit 0 ;;
|
exit 0 ;;
|
||||||
pegasos:OpenBSD:*:*)
|
|
||||||
echo powerpc-unknown-openbsd${UNAME_RELEASE}
|
|
||||||
exit 0 ;;
|
|
||||||
pmax:OpenBSD:*:*)
|
|
||||||
echo mipsel-unknown-openbsd${UNAME_RELEASE}
|
|
||||||
exit 0 ;;
|
|
||||||
sgi:OpenBSD:*:*)
|
sgi:OpenBSD:*:*)
|
||||||
echo mipseb-unknown-openbsd${UNAME_RELEASE}
|
echo mips64-unknown-openbsd${UNAME_RELEASE}
|
||||||
exit 0 ;;
|
exit 0 ;;
|
||||||
sun3:OpenBSD:*:*)
|
sun3:OpenBSD:*:*)
|
||||||
echo m68k-unknown-openbsd${UNAME_RELEASE}
|
echo m68k-unknown-openbsd${UNAME_RELEASE}
|
||||||
exit 0 ;;
|
exit 0 ;;
|
||||||
wgrisc:OpenBSD:*:*)
|
|
||||||
echo mipsel-unknown-openbsd${UNAME_RELEASE}
|
|
||||||
exit 0 ;;
|
|
||||||
*:OpenBSD:*:*)
|
*:OpenBSD:*:*)
|
||||||
echo ${UNAME_MACHINE}-unknown-openbsd${UNAME_RELEASE}
|
echo ${UNAME_MACHINE}-unknown-openbsd${UNAME_RELEASE}
|
||||||
exit 0 ;;
|
exit 0 ;;
|
||||||
|
*:ekkoBSD:*:*)
|
||||||
|
echo ${UNAME_MACHINE}-unknown-ekkobsd${UNAME_RELEASE}
|
||||||
|
exit 0 ;;
|
||||||
|
macppc:MirBSD:*:*)
|
||||||
|
echo powerppc-unknown-mirbsd${UNAME_RELEASE}
|
||||||
|
exit 0 ;;
|
||||||
|
*:MirBSD:*:*)
|
||||||
|
echo ${UNAME_MACHINE}-unknown-mirbsd${UNAME_RELEASE}
|
||||||
|
exit 0 ;;
|
||||||
alpha:OSF1:*:*)
|
alpha:OSF1:*:*)
|
||||||
if test $UNAME_RELEASE = "V4.0"; then
|
case $UNAME_RELEASE in
|
||||||
|
*4.0)
|
||||||
UNAME_RELEASE=`/usr/sbin/sizer -v | awk '{print $3}'`
|
UNAME_RELEASE=`/usr/sbin/sizer -v | awk '{print $3}'`
|
||||||
fi
|
;;
|
||||||
|
*5.*)
|
||||||
|
UNAME_RELEASE=`/usr/sbin/sizer -v | awk '{print $4}'`
|
||||||
|
;;
|
||||||
|
esac
|
||||||
# According to Compaq, /usr/sbin/psrinfo has been available on
|
# According to Compaq, /usr/sbin/psrinfo has been available on
|
||||||
# OSF/1 and Tru64 systems produced since 1995. I hope that
|
# OSF/1 and Tru64 systems produced since 1995. I hope that
|
||||||
# covers most systems running today. This code pipes the CPU
|
# covers most systems running today. This code pipes the CPU
|
||||||
@ -280,14 +291,12 @@ case "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in
|
|||||||
"EV7.9 (21364A)")
|
"EV7.9 (21364A)")
|
||||||
UNAME_MACHINE="alphaev79" ;;
|
UNAME_MACHINE="alphaev79" ;;
|
||||||
esac
|
esac
|
||||||
|
# A Pn.n version is a patched version.
|
||||||
# A Vn.n version is a released version.
|
# A Vn.n version is a released version.
|
||||||
# A Tn.n version is a released field test version.
|
# A Tn.n version is a released field test version.
|
||||||
# A Xn.n version is an unreleased experimental baselevel.
|
# A Xn.n version is an unreleased experimental baselevel.
|
||||||
# 1.2 uses "1.2" for uname -r.
|
# 1.2 uses "1.2" for uname -r.
|
||||||
echo ${UNAME_MACHINE}-dec-osf`echo ${UNAME_RELEASE} | sed -e 's/^[VTX]//' | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz'`
|
echo ${UNAME_MACHINE}-dec-osf`echo ${UNAME_RELEASE} | sed -e 's/^[PVTX]//' | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz'`
|
||||||
exit 0 ;;
|
|
||||||
Alpha*:OpenVMS:*:*)
|
|
||||||
echo alpha-hp-vms
|
|
||||||
exit 0 ;;
|
exit 0 ;;
|
||||||
Alpha\ *:Windows_NT*:*)
|
Alpha\ *:Windows_NT*:*)
|
||||||
# How do we know it's Interix rather than the generic POSIX subsystem?
|
# How do we know it's Interix rather than the generic POSIX subsystem?
|
||||||
@ -405,6 +414,9 @@ case "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in
|
|||||||
*:*MiNT:*:* | *:*mint:*:* | *:*TOS:*:*)
|
*:*MiNT:*:* | *:*mint:*:* | *:*TOS:*:*)
|
||||||
echo m68k-unknown-mint${UNAME_RELEASE}
|
echo m68k-unknown-mint${UNAME_RELEASE}
|
||||||
exit 0 ;;
|
exit 0 ;;
|
||||||
|
m68k:machten:*:*)
|
||||||
|
echo m68k-apple-machten${UNAME_RELEASE}
|
||||||
|
exit 0 ;;
|
||||||
powerpc:machten:*:*)
|
powerpc:machten:*:*)
|
||||||
echo powerpc-apple-machten${UNAME_RELEASE}
|
echo powerpc-apple-machten${UNAME_RELEASE}
|
||||||
exit 0 ;;
|
exit 0 ;;
|
||||||
@ -740,7 +752,7 @@ EOF
|
|||||||
echo sv1-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
|
echo sv1-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
|
||||||
exit 0 ;;
|
exit 0 ;;
|
||||||
*:UNICOS/mp:*:*)
|
*:UNICOS/mp:*:*)
|
||||||
echo nv1-cray-unicosmp${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
|
echo craynv-cray-unicosmp${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
|
||||||
exit 0 ;;
|
exit 0 ;;
|
||||||
F30[01]:UNIX_System_V:*:* | F700:UNIX_System_V:*:*)
|
F30[01]:UNIX_System_V:*:* | F700:UNIX_System_V:*:*)
|
||||||
FUJITSU_PROC=`uname -m | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz'`
|
FUJITSU_PROC=`uname -m | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz'`
|
||||||
@ -763,21 +775,7 @@ EOF
|
|||||||
echo ${UNAME_MACHINE}-unknown-bsdi${UNAME_RELEASE}
|
echo ${UNAME_MACHINE}-unknown-bsdi${UNAME_RELEASE}
|
||||||
exit 0 ;;
|
exit 0 ;;
|
||||||
*:FreeBSD:*:*)
|
*:FreeBSD:*:*)
|
||||||
# Determine whether the default compiler uses glibc.
|
echo ${UNAME_MACHINE}-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'`
|
||||||
eval $set_cc_for_build
|
|
||||||
sed 's/^ //' << EOF >$dummy.c
|
|
||||||
#include <features.h>
|
|
||||||
#if __GLIBC__ >= 2
|
|
||||||
LIBC=gnu
|
|
||||||
#else
|
|
||||||
LIBC=
|
|
||||||
#endif
|
|
||||||
EOF
|
|
||||||
eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep ^LIBC=`
|
|
||||||
# GNU/KFreeBSD systems have a "k" prefix to indicate we are using
|
|
||||||
# FreeBSD's kernel, but not the complete OS.
|
|
||||||
case ${LIBC} in gnu) kernel_only='k' ;; esac
|
|
||||||
echo ${UNAME_MACHINE}-unknown-${kernel_only}freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'`${LIBC:+-$LIBC}
|
|
||||||
exit 0 ;;
|
exit 0 ;;
|
||||||
i*:CYGWIN*:*)
|
i*:CYGWIN*:*)
|
||||||
echo ${UNAME_MACHINE}-pc-cygwin
|
echo ${UNAME_MACHINE}-pc-cygwin
|
||||||
@ -829,6 +827,9 @@ EOF
|
|||||||
ia64:Linux:*:*)
|
ia64:Linux:*:*)
|
||||||
echo ${UNAME_MACHINE}-unknown-linux-gnu
|
echo ${UNAME_MACHINE}-unknown-linux-gnu
|
||||||
exit 0 ;;
|
exit 0 ;;
|
||||||
|
m32r*:Linux:*:*)
|
||||||
|
echo ${UNAME_MACHINE}-unknown-linux-gnu
|
||||||
|
exit 0 ;;
|
||||||
m68*:Linux:*:*)
|
m68*:Linux:*:*)
|
||||||
echo ${UNAME_MACHINE}-unknown-linux-gnu
|
echo ${UNAME_MACHINE}-unknown-linux-gnu
|
||||||
exit 0 ;;
|
exit 0 ;;
|
||||||
@ -1069,9 +1070,9 @@ EOF
|
|||||||
M680?0:D-NIX:5.3:*)
|
M680?0:D-NIX:5.3:*)
|
||||||
echo m68k-diab-dnix
|
echo m68k-diab-dnix
|
||||||
exit 0 ;;
|
exit 0 ;;
|
||||||
M68*:*:R3V[567]*:*)
|
M68*:*:R3V[5678]*:*)
|
||||||
test -r /sysV68 && echo 'm68k-motorola-sysv' && exit 0 ;;
|
test -r /sysV68 && echo 'm68k-motorola-sysv' && exit 0 ;;
|
||||||
3[345]??:*:4.0:3.0 | 3[34]??A:*:4.0:3.0 | 3[34]??,*:*:4.0:3.0 | 3[34]??/*:*:4.0:3.0 | 4400:*:4.0:3.0 | 4850:*:4.0:3.0 | SKA40:*:4.0:3.0 | SDS2:*:4.0:3.0 | SHG2:*:4.0:3.0)
|
3[345]??:*:4.0:3.0 | 3[34]??A:*:4.0:3.0 | 3[34]??,*:*:4.0:3.0 | 3[34]??/*:*:4.0:3.0 | 4400:*:4.0:3.0 | 4850:*:4.0:3.0 | SKA40:*:4.0:3.0 | SDS2:*:4.0:3.0 | SHG2:*:4.0:3.0 | S7501*:*:4.0:3.0)
|
||||||
OS_REL=''
|
OS_REL=''
|
||||||
test -r /etc/.relid \
|
test -r /etc/.relid \
|
||||||
&& OS_REL=.`sed -n 's/[^ ]* [^ ]* \([0-9][0-9]\).*/\1/p' < /etc/.relid`
|
&& OS_REL=.`sed -n 's/[^ ]* [^ ]* \([0-9][0-9]\).*/\1/p' < /etc/.relid`
|
||||||
@ -1169,9 +1170,10 @@ EOF
|
|||||||
echo ${UNAME_MACHINE}-apple-rhapsody${UNAME_RELEASE}
|
echo ${UNAME_MACHINE}-apple-rhapsody${UNAME_RELEASE}
|
||||||
exit 0 ;;
|
exit 0 ;;
|
||||||
*:Darwin:*:*)
|
*:Darwin:*:*)
|
||||||
case `uname -p` in
|
UNAME_PROCESSOR=`uname -p` || UNAME_PROCESSOR=unknown
|
||||||
|
case $UNAME_PROCESSOR in
|
||||||
*86) UNAME_PROCESSOR=i686 ;;
|
*86) UNAME_PROCESSOR=i686 ;;
|
||||||
powerpc) UNAME_PROCESSOR=powerpc ;;
|
unknown) UNAME_PROCESSOR=powerpc ;;
|
||||||
esac
|
esac
|
||||||
echo ${UNAME_PROCESSOR}-apple-darwin${UNAME_RELEASE}
|
echo ${UNAME_PROCESSOR}-apple-darwin${UNAME_RELEASE}
|
||||||
exit 0 ;;
|
exit 0 ;;
|
||||||
@ -1230,9 +1232,16 @@ EOF
|
|||||||
SEI:*:*:SEIUX)
|
SEI:*:*:SEIUX)
|
||||||
echo mips-sei-seiux${UNAME_RELEASE}
|
echo mips-sei-seiux${UNAME_RELEASE}
|
||||||
exit 0 ;;
|
exit 0 ;;
|
||||||
*:DRAGONFLY:*:*)
|
*:DragonFly:*:*)
|
||||||
echo ${UNAME_MACHINE}-unknown-dragonfly${UNAME_RELEASE}
|
echo ${UNAME_MACHINE}-unknown-dragonfly`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'`
|
||||||
exit 0 ;;
|
exit 0 ;;
|
||||||
|
*:*VMS:*:*)
|
||||||
|
UNAME_MACHINE=`(uname -p) 2>/dev/null`
|
||||||
|
case "${UNAME_MACHINE}" in
|
||||||
|
A*) echo alpha-dec-vms && exit 0 ;;
|
||||||
|
I*) echo ia64-dec-vms && exit 0 ;;
|
||||||
|
V*) echo vax-dec-vms && exit 0 ;;
|
||||||
|
esac
|
||||||
esac
|
esac
|
||||||
|
|
||||||
#echo '(No uname command or uname output not recognized.)' 1>&2
|
#echo '(No uname command or uname output not recognized.)' 1>&2
|
||||||
|
57
config.sub
vendored
57
config.sub
vendored
@ -1,9 +1,9 @@
|
|||||||
#! /bin/sh
|
#! /bin/sh
|
||||||
# Configuration validation subroutine script.
|
# Configuration validation subroutine script.
|
||||||
# Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999,
|
# Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999,
|
||||||
# 2000, 2001, 2002, 2003 Free Software Foundation, Inc.
|
# 2000, 2001, 2002, 2003, 2004 Free Software Foundation, Inc.
|
||||||
|
|
||||||
timestamp='2004-01-05'
|
timestamp='2004-06-24'
|
||||||
|
|
||||||
# This file is (in principle) common to ALL GNU software.
|
# This file is (in principle) common to ALL GNU software.
|
||||||
# The presence of a machine in this file suggests that SOME GNU software
|
# The presence of a machine in this file suggests that SOME GNU software
|
||||||
@ -70,7 +70,7 @@ Report bugs and patches to <config-patches@gnu.org>."
|
|||||||
version="\
|
version="\
|
||||||
GNU config.sub ($timestamp)
|
GNU config.sub ($timestamp)
|
||||||
|
|
||||||
Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001
|
Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004
|
||||||
Free Software Foundation, Inc.
|
Free Software Foundation, Inc.
|
||||||
|
|
||||||
This is free software; see the source for copying conditions. There is NO
|
This is free software; see the source for copying conditions. There is NO
|
||||||
@ -145,7 +145,7 @@ case $os in
|
|||||||
-convergent* | -ncr* | -news | -32* | -3600* | -3100* | -hitachi* |\
|
-convergent* | -ncr* | -news | -32* | -3600* | -3100* | -hitachi* |\
|
||||||
-c[123]* | -convex* | -sun | -crds | -omron* | -dg | -ultra | -tti* | \
|
-c[123]* | -convex* | -sun | -crds | -omron* | -dg | -ultra | -tti* | \
|
||||||
-harris | -dolphin | -highlevel | -gould | -cbm | -ns | -masscomp | \
|
-harris | -dolphin | -highlevel | -gould | -cbm | -ns | -masscomp | \
|
||||||
-apple | -axis)
|
-apple | -axis | -knuth | -cray)
|
||||||
os=
|
os=
|
||||||
basic_machine=$1
|
basic_machine=$1
|
||||||
;;
|
;;
|
||||||
@ -237,7 +237,7 @@ case $basic_machine in
|
|||||||
| h8300 | h8500 | hppa | hppa1.[01] | hppa2.0 | hppa2.0[nw] | hppa64 \
|
| h8300 | h8500 | hppa | hppa1.[01] | hppa2.0 | hppa2.0[nw] | hppa64 \
|
||||||
| i370 | i860 | i960 | ia64 \
|
| i370 | i860 | i960 | ia64 \
|
||||||
| ip2k | iq2000 \
|
| ip2k | iq2000 \
|
||||||
| m32r | m68000 | m68k | m88k | mcore \
|
| m32r | m32rle | m68000 | m68k | m88k | mcore \
|
||||||
| mips | mipsbe | mipseb | mipsel | mipsle \
|
| mips | mipsbe | mipseb | mipsel | mipsle \
|
||||||
| mips16 \
|
| mips16 \
|
||||||
| mips64 | mips64el \
|
| mips64 | mips64el \
|
||||||
@ -262,7 +262,7 @@ case $basic_machine in
|
|||||||
| pyramid \
|
| pyramid \
|
||||||
| sh | sh[1234] | sh[23]e | sh[34]eb | shbe | shle | sh[1234]le | sh3ele \
|
| sh | sh[1234] | sh[23]e | sh[34]eb | shbe | shle | sh[1234]le | sh3ele \
|
||||||
| sh64 | sh64le \
|
| sh64 | sh64le \
|
||||||
| sparc | sparc64 | sparc86x | sparclet | sparclite | sparcv9 | sparcv9b \
|
| sparc | sparc64 | sparc86x | sparclet | sparclite | sparcv8 | sparcv9 | sparcv9b \
|
||||||
| strongarm \
|
| strongarm \
|
||||||
| tahoe | thumb | tic4x | tic80 | tron \
|
| tahoe | thumb | tic4x | tic80 | tron \
|
||||||
| v850 | v850e \
|
| v850 | v850e \
|
||||||
@ -300,7 +300,7 @@ case $basic_machine in
|
|||||||
| avr-* \
|
| avr-* \
|
||||||
| bs2000-* \
|
| bs2000-* \
|
||||||
| c[123]* | c30-* | [cjt]90-* | c4x-* | c54x-* | c55x-* | c6x-* \
|
| c[123]* | c30-* | [cjt]90-* | c4x-* | c54x-* | c55x-* | c6x-* \
|
||||||
| clipper-* | cydra-* \
|
| clipper-* | craynv-* | cydra-* \
|
||||||
| d10v-* | d30v-* | dlx-* \
|
| d10v-* | d30v-* | dlx-* \
|
||||||
| elxsi-* \
|
| elxsi-* \
|
||||||
| f30[01]-* | f700-* | fr30-* | frv-* | fx80-* \
|
| f30[01]-* | f700-* | fr30-* | frv-* | fx80-* \
|
||||||
@ -308,7 +308,7 @@ case $basic_machine in
|
|||||||
| hppa-* | hppa1.[01]-* | hppa2.0-* | hppa2.0[nw]-* | hppa64-* \
|
| hppa-* | hppa1.[01]-* | hppa2.0-* | hppa2.0[nw]-* | hppa64-* \
|
||||||
| i*86-* | i860-* | i960-* | ia64-* \
|
| i*86-* | i860-* | i960-* | ia64-* \
|
||||||
| ip2k-* | iq2000-* \
|
| ip2k-* | iq2000-* \
|
||||||
| m32r-* \
|
| m32r-* | m32rle-* \
|
||||||
| m68000-* | m680[012346]0-* | m68360-* | m683?2-* | m68k-* \
|
| m68000-* | m680[012346]0-* | m68360-* | m683?2-* | m68k-* \
|
||||||
| m88110-* | m88k-* | mcore-* \
|
| m88110-* | m88k-* | mcore-* \
|
||||||
| mips-* | mipsbe-* | mipseb-* | mipsel-* | mipsle-* \
|
| mips-* | mipsbe-* | mipseb-* | mipsel-* | mipsle-* \
|
||||||
@ -326,8 +326,9 @@ case $basic_machine in
|
|||||||
| mipsisa64sb1-* | mipsisa64sb1el-* \
|
| mipsisa64sb1-* | mipsisa64sb1el-* \
|
||||||
| mipsisa64sr71k-* | mipsisa64sr71kel-* \
|
| mipsisa64sr71k-* | mipsisa64sr71kel-* \
|
||||||
| mipstx39-* | mipstx39el-* \
|
| mipstx39-* | mipstx39el-* \
|
||||||
|
| mmix-* \
|
||||||
| msp430-* \
|
| msp430-* \
|
||||||
| none-* | np1-* | nv1-* | ns16k-* | ns32k-* \
|
| none-* | np1-* | ns16k-* | ns32k-* \
|
||||||
| orion-* \
|
| orion-* \
|
||||||
| pdp10-* | pdp11-* | pj-* | pjl-* | pn-* | power-* \
|
| pdp10-* | pdp11-* | pj-* | pjl-* | pn-* | power-* \
|
||||||
| powerpc-* | powerpc64-* | powerpc64le-* | powerpcle-* | ppcbe-* \
|
| powerpc-* | powerpc64-* | powerpc64le-* | powerpcle-* | ppcbe-* \
|
||||||
@ -336,7 +337,7 @@ case $basic_machine in
|
|||||||
| sh-* | sh[1234]-* | sh[23]e-* | sh[34]eb-* | shbe-* \
|
| sh-* | sh[1234]-* | sh[23]e-* | sh[34]eb-* | shbe-* \
|
||||||
| shle-* | sh[1234]le-* | sh3ele-* | sh64-* | sh64le-* \
|
| shle-* | sh[1234]le-* | sh3ele-* | sh64-* | sh64le-* \
|
||||||
| sparc-* | sparc64-* | sparc86x-* | sparclet-* | sparclite-* \
|
| sparc-* | sparc64-* | sparc86x-* | sparclet-* | sparclite-* \
|
||||||
| sparcv9-* | sparcv9b-* | strongarm-* | sv1-* | sx?-* \
|
| sparcv8-* | sparcv9-* | sparcv9b-* | strongarm-* | sv1-* | sx?-* \
|
||||||
| tahoe-* | thumb-* \
|
| tahoe-* | thumb-* \
|
||||||
| tic30-* | tic4x-* | tic54x-* | tic55x-* | tic6x-* | tic80-* \
|
| tic30-* | tic4x-* | tic54x-* | tic55x-* | tic6x-* | tic80-* \
|
||||||
| tron-* \
|
| tron-* \
|
||||||
@ -363,6 +364,9 @@ case $basic_machine in
|
|||||||
basic_machine=a29k-amd
|
basic_machine=a29k-amd
|
||||||
os=-udi
|
os=-udi
|
||||||
;;
|
;;
|
||||||
|
abacus)
|
||||||
|
basic_machine=abacus-unknown
|
||||||
|
;;
|
||||||
adobe68k)
|
adobe68k)
|
||||||
basic_machine=m68010-adobe
|
basic_machine=m68010-adobe
|
||||||
os=-scout
|
os=-scout
|
||||||
@ -442,12 +446,24 @@ case $basic_machine in
|
|||||||
basic_machine=j90-cray
|
basic_machine=j90-cray
|
||||||
os=-unicos
|
os=-unicos
|
||||||
;;
|
;;
|
||||||
|
craynv)
|
||||||
|
basic_machine=craynv-cray
|
||||||
|
os=-unicosmp
|
||||||
|
;;
|
||||||
|
cr16c)
|
||||||
|
basic_machine=cr16c-unknown
|
||||||
|
os=-elf
|
||||||
|
;;
|
||||||
crds | unos)
|
crds | unos)
|
||||||
basic_machine=m68k-crds
|
basic_machine=m68k-crds
|
||||||
;;
|
;;
|
||||||
cris | cris-* | etrax*)
|
cris | cris-* | etrax*)
|
||||||
basic_machine=cris-axis
|
basic_machine=cris-axis
|
||||||
;;
|
;;
|
||||||
|
crx)
|
||||||
|
basic_machine=crx-unknown
|
||||||
|
os=-elf
|
||||||
|
;;
|
||||||
da30 | da30-*)
|
da30 | da30-*)
|
||||||
basic_machine=m68k-da30
|
basic_machine=m68k-da30
|
||||||
;;
|
;;
|
||||||
@ -648,10 +664,6 @@ case $basic_machine in
|
|||||||
mips3*)
|
mips3*)
|
||||||
basic_machine=`echo $basic_machine | sed -e 's/mips3/mips64/'`-unknown
|
basic_machine=`echo $basic_machine | sed -e 's/mips3/mips64/'`-unknown
|
||||||
;;
|
;;
|
||||||
mmix*)
|
|
||||||
basic_machine=mmix-knuth
|
|
||||||
os=-mmixware
|
|
||||||
;;
|
|
||||||
monitor)
|
monitor)
|
||||||
basic_machine=m68k-rom68k
|
basic_machine=m68k-rom68k
|
||||||
os=-coff
|
os=-coff
|
||||||
@ -732,10 +744,6 @@ case $basic_machine in
|
|||||||
np1)
|
np1)
|
||||||
basic_machine=np1-gould
|
basic_machine=np1-gould
|
||||||
;;
|
;;
|
||||||
nv1)
|
|
||||||
basic_machine=nv1-cray
|
|
||||||
os=-unicosmp
|
|
||||||
;;
|
|
||||||
nsr-tandem)
|
nsr-tandem)
|
||||||
basic_machine=nsr-tandem
|
basic_machine=nsr-tandem
|
||||||
;;
|
;;
|
||||||
@ -1048,6 +1056,9 @@ case $basic_machine in
|
|||||||
romp)
|
romp)
|
||||||
basic_machine=romp-ibm
|
basic_machine=romp-ibm
|
||||||
;;
|
;;
|
||||||
|
mmix)
|
||||||
|
basic_machine=mmix-knuth
|
||||||
|
;;
|
||||||
rs6000)
|
rs6000)
|
||||||
basic_machine=rs6000-ibm
|
basic_machine=rs6000-ibm
|
||||||
;;
|
;;
|
||||||
@ -1070,7 +1081,7 @@ case $basic_machine in
|
|||||||
sh64)
|
sh64)
|
||||||
basic_machine=sh64-unknown
|
basic_machine=sh64-unknown
|
||||||
;;
|
;;
|
||||||
sparc | sparcv9 | sparcv9b)
|
sparc | sparcv8 | sparcv9 | sparcv9b)
|
||||||
basic_machine=sparc-sun
|
basic_machine=sparc-sun
|
||||||
;;
|
;;
|
||||||
cydra)
|
cydra)
|
||||||
@ -1143,8 +1154,9 @@ case $os in
|
|||||||
| -aos* \
|
| -aos* \
|
||||||
| -nindy* | -vxsim* | -vxworks* | -ebmon* | -hms* | -mvs* \
|
| -nindy* | -vxsim* | -vxworks* | -ebmon* | -hms* | -mvs* \
|
||||||
| -clix* | -riscos* | -uniplus* | -iris* | -rtu* | -xenix* \
|
| -clix* | -riscos* | -uniplus* | -iris* | -rtu* | -xenix* \
|
||||||
| -hiux* | -386bsd* | -knetbsd* | -netbsd* | -openbsd* | -kfreebsd* | -freebsd* | -riscix* \
|
| -hiux* | -386bsd* | -knetbsd* | -mirbsd* | -netbsd* | -openbsd* \
|
||||||
| -lynxos* | -bosx* | -nextstep* | -cxux* | -aout* | -elf* | -oabi* \
|
| -ekkobsd* | -kfreebsd* | -freebsd* | -riscix* | -lynxos* \
|
||||||
|
| -bosx* | -nextstep* | -cxux* | -aout* | -elf* | -oabi* \
|
||||||
| -ptx* | -coff* | -ecoff* | -winnt* | -domain* | -vsta* \
|
| -ptx* | -coff* | -ecoff* | -winnt* | -domain* | -vsta* \
|
||||||
| -udi* | -eabi* | -lites* | -ieee* | -go32* | -aux* \
|
| -udi* | -eabi* | -lites* | -ieee* | -go32* | -aux* \
|
||||||
| -chorusos* | -chorusrdb* \
|
| -chorusos* | -chorusrdb* \
|
||||||
@ -1362,6 +1374,9 @@ case $basic_machine in
|
|||||||
*-ibm)
|
*-ibm)
|
||||||
os=-aix
|
os=-aix
|
||||||
;;
|
;;
|
||||||
|
*-knuth)
|
||||||
|
os=-mmixware
|
||||||
|
;;
|
||||||
*-wec)
|
*-wec)
|
||||||
os=-proelf
|
os=-proelf
|
||||||
;;
|
;;
|
||||||
|
47
configure.ac
47
configure.ac
@ -1,41 +1,41 @@
|
|||||||
# configure.in for GPGME
|
# configure.ac for GPGME
|
||||||
# Copyright (C) 2000 Werner Koch (dd9jn)
|
# Copyright (C) 2000 Werner Koch (dd9jn)
|
||||||
# Copyright (C) 2001, 2002, 2003, 2004 g10 Code GmbH
|
# Copyright (C) 2001, 2002, 2003, 2004, 2005 g10 Code GmbH
|
||||||
#
|
#
|
||||||
# This file is part of GPGME.
|
# This file is part of GPGME.
|
||||||
#
|
#
|
||||||
# GPGME is free software; you can redistribute it and/or modify
|
# GPGME is free software; you can redistribute it and/or modify it
|
||||||
# it under the terms of the GNU General Public License as published by
|
# under the terms of the GNU Lesser General Public License as
|
||||||
# the Free Software Foundation; either version 2 of the License, or
|
# published by the Free Software Foundation; either version 2.1 of the
|
||||||
# (at your option) any later version.
|
# License, or (at your option) any later version.
|
||||||
#
|
#
|
||||||
# GPGME is distributed in the hope that it will be useful,
|
# GPGME is distributed in the hope that it will be useful, but WITHOUT
|
||||||
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
|
||||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
# or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General
|
||||||
# GNU General Public License for more details.
|
# Public License for more details.
|
||||||
#
|
#
|
||||||
# You should have received a copy of the GNU General Public License
|
# You should have received a copy of the GNU Lesser General Public
|
||||||
# along with this program; if not, write to the Free Software
|
# License along with this program; if not, write to the Free Software
|
||||||
# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA
|
# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA
|
||||||
|
|
||||||
# (Process this file with autoconf to produce a configure script.)
|
# (Process this file with autoconf to produce a configure script.)
|
||||||
|
|
||||||
AC_PREREQ(2.57)
|
AC_PREREQ(2.59)
|
||||||
min_automake_version="1.7.6"
|
min_automake_version="1.9.3"
|
||||||
|
|
||||||
# Version number: Remember to change it immediately *after* a release.
|
# Version number: Remember to change it immediately *after* a release.
|
||||||
AC_INIT(gpgme, 1.0.1, [bug-gpgme@gnupg.org])
|
AC_INIT(gpgme, 1.0.4-cvs, [bug-gpgme@gnupg.org])
|
||||||
# LT Version numbers, remember to change them just *before* a release.
|
# LT Version numbers, remember to change them just *before* a release.
|
||||||
# (Code changed: REVISION++)
|
# (Code changed: REVISION++)
|
||||||
# (Interfaces added/removed/changed: CURRENT++, REVISION=0)
|
# (Interfaces added/removed/changed: CURRENT++, REVISION=0)
|
||||||
# (Interfaces added: AGE++)
|
# (Interfaces added: AGE++)
|
||||||
# (Interfaces removed/changed: AGE=0)
|
# (Interfaces removed/changed: AGE=0)
|
||||||
#
|
#
|
||||||
LIBGPGME_LT_CURRENT=14
|
LIBGPGME_LT_CURRENT=15
|
||||||
# Subtract 2 from this value if you want to make the LFS transition an
|
# Subtract 2 from the AGE value if you want to make the LFS transition an
|
||||||
# ABI break. [Note to self: Remove this comment with the next regular break.]
|
# ABI break. [Note to self: Remove this comment with the next regular break.]
|
||||||
LIBGPGME_LT_AGE=3
|
LIBGPGME_LT_AGE=4
|
||||||
LIBGPGME_LT_REVISION=2
|
LIBGPGME_LT_REVISION=0
|
||||||
|
|
||||||
# If the API is changed in an incompatible way: increment the next counter.
|
# If the API is changed in an incompatible way: increment the next counter.
|
||||||
GPGME_CONFIG_API_VERSION=1
|
GPGME_CONFIG_API_VERSION=1
|
||||||
@ -171,6 +171,15 @@ if test "$ac_cv_func_vasprintf" != yes; then
|
|||||||
GNUPG_CHECK_VA_COPY
|
GNUPG_CHECK_VA_COPY
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
# Try to find a thread-safe version of ttyname().
|
||||||
|
AC_REPLACE_FUNCS(ttyname_r)
|
||||||
|
if test "$ac_cv_func_ttyname_r" != yes; then
|
||||||
|
AC_MSG_WARN([
|
||||||
|
***
|
||||||
|
*** ttyname() is not thread-safe and ttyname_r() does not exist
|
||||||
|
***])
|
||||||
|
fi
|
||||||
|
|
||||||
# Try to find a thread-safe version of getenv().
|
# Try to find a thread-safe version of getenv().
|
||||||
have_thread_safe_getenv=no
|
have_thread_safe_getenv=no
|
||||||
jm_GLIBC21
|
jm_GLIBC21
|
||||||
|
104
depcomp
104
depcomp
@ -1,7 +1,9 @@
|
|||||||
#! /bin/sh
|
#! /bin/sh
|
||||||
|
|
||||||
# depcomp - compile a program generating dependencies as side-effects
|
# depcomp - compile a program generating dependencies as side-effects
|
||||||
# Copyright 1999, 2000 Free Software Foundation, Inc.
|
|
||||||
|
scriptversion=2004-05-31.23
|
||||||
|
|
||||||
|
# Copyright (C) 1999, 2000, 2003, 2004 Free Software Foundation, Inc.
|
||||||
|
|
||||||
# This program is free software; you can redistribute it and/or modify
|
# 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
|
# it under the terms of the GNU General Public License as published by
|
||||||
@ -25,22 +27,45 @@
|
|||||||
|
|
||||||
# Originally written by Alexandre Oliva <oliva@dcc.unicamp.br>.
|
# Originally written by Alexandre Oliva <oliva@dcc.unicamp.br>.
|
||||||
|
|
||||||
|
case $1 in
|
||||||
|
'')
|
||||||
|
echo "$0: No command. Try \`$0 --help' for more information." 1>&2
|
||||||
|
exit 1;
|
||||||
|
;;
|
||||||
|
-h | --h*)
|
||||||
|
cat <<\EOF
|
||||||
|
Usage: depcomp [--help] [--version] PROGRAM [ARGS]
|
||||||
|
|
||||||
|
Run PROGRAMS ARGS to compile a file, generating dependencies
|
||||||
|
as side-effects.
|
||||||
|
|
||||||
|
Environment variables:
|
||||||
|
depmode Dependency tracking mode.
|
||||||
|
source Source file read by `PROGRAMS ARGS'.
|
||||||
|
object Object file output by `PROGRAMS ARGS'.
|
||||||
|
DEPDIR directory where to store dependencies.
|
||||||
|
depfile Dependency file to output.
|
||||||
|
tmpdepfile Temporary file to use when outputing dependencies.
|
||||||
|
libtool Whether libtool is used (yes/no).
|
||||||
|
|
||||||
|
Report bugs to <bug-automake@gnu.org>.
|
||||||
|
EOF
|
||||||
|
exit 0
|
||||||
|
;;
|
||||||
|
-v | --v*)
|
||||||
|
echo "depcomp $scriptversion"
|
||||||
|
exit 0
|
||||||
|
;;
|
||||||
|
esac
|
||||||
|
|
||||||
if test -z "$depmode" || test -z "$source" || test -z "$object"; then
|
if test -z "$depmode" || test -z "$source" || test -z "$object"; then
|
||||||
echo "depcomp: Variables source, object and depmode must be set" 1>&2
|
echo "depcomp: Variables source, object and depmode must be set" 1>&2
|
||||||
exit 1
|
exit 1
|
||||||
fi
|
fi
|
||||||
# `libtool' can also be set to `yes' or `no'.
|
|
||||||
|
|
||||||
if test -z "$depfile"; then
|
|
||||||
base=`echo "$object" | sed -e 's,^.*/,,' -e 's,\.\([^.]*\)$,.P\1,'`
|
|
||||||
dir=`echo "$object" | sed 's,/.*$,/,'`
|
|
||||||
if test "$dir" = "$object"; then
|
|
||||||
dir=
|
|
||||||
fi
|
|
||||||
# FIXME: should be _deps on DOS.
|
|
||||||
depfile="$dir.deps/$base"
|
|
||||||
fi
|
|
||||||
|
|
||||||
|
# Dependencies for sub/bar.o or sub/bar.obj go into sub/.deps/bar.Po.
|
||||||
|
depfile=${depfile-`echo "$object" |
|
||||||
|
sed 's|[^\\/]*$|'${DEPDIR-.deps}'/&|;s|\.\([^.]*\)$|.P\1|;s|Pobj$|Po|'`}
|
||||||
tmpdepfile=${tmpdepfile-`echo "$depfile" | sed 's/\.\([^.]*\)$/.T\1/'`}
|
tmpdepfile=${tmpdepfile-`echo "$depfile" | sed 's/\.\([^.]*\)$/.T\1/'`}
|
||||||
|
|
||||||
rm -f "$tmpdepfile"
|
rm -f "$tmpdepfile"
|
||||||
@ -172,19 +197,25 @@ sgi)
|
|||||||
|
|
||||||
aix)
|
aix)
|
||||||
# The C for AIX Compiler uses -M and outputs the dependencies
|
# The C for AIX Compiler uses -M and outputs the dependencies
|
||||||
# in a .u file. This file always lives in the current directory.
|
# in a .u file. In older versions, this file always lives in the
|
||||||
# Also, the AIX compiler puts `$object:' at the start of each line;
|
# current directory. Also, the AIX compiler puts `$object:' at the
|
||||||
# $object doesn't have directory information.
|
# start of each line; $object doesn't have directory information.
|
||||||
stripped=`echo "$object" | sed -e 's,^.*/,,' -e 's/\(.*\)\..*$/\1/'`
|
# Version 6 uses the directory in both cases.
|
||||||
|
stripped=`echo "$object" | sed 's/\(.*\)\..*$/\1/'`
|
||||||
tmpdepfile="$stripped.u"
|
tmpdepfile="$stripped.u"
|
||||||
outname="$stripped.o"
|
|
||||||
if test "$libtool" = yes; then
|
if test "$libtool" = yes; then
|
||||||
"$@" -Wc,-M
|
"$@" -Wc,-M
|
||||||
else
|
else
|
||||||
"$@" -M
|
"$@" -M
|
||||||
fi
|
fi
|
||||||
|
|
||||||
stat=$?
|
stat=$?
|
||||||
|
|
||||||
|
if test -f "$tmpdepfile"; then :
|
||||||
|
else
|
||||||
|
stripped=`echo "$stripped" | sed 's,^.*/,,'`
|
||||||
|
tmpdepfile="$stripped.u"
|
||||||
|
fi
|
||||||
|
|
||||||
if test $stat -eq 0; then :
|
if test $stat -eq 0; then :
|
||||||
else
|
else
|
||||||
rm -f "$tmpdepfile"
|
rm -f "$tmpdepfile"
|
||||||
@ -192,6 +223,7 @@ aix)
|
|||||||
fi
|
fi
|
||||||
|
|
||||||
if test -f "$tmpdepfile"; then
|
if test -f "$tmpdepfile"; then
|
||||||
|
outname="$stripped.o"
|
||||||
# Each line is of the form `foo.o: dependent.h'.
|
# Each line is of the form `foo.o: dependent.h'.
|
||||||
# Do two passes, one to just change these to
|
# Do two passes, one to just change these to
|
||||||
# `$object: dependent.h' and one to simply `dependent.h:'.
|
# `$object: dependent.h' and one to simply `dependent.h:'.
|
||||||
@ -255,31 +287,40 @@ tru64)
|
|||||||
base=`echo "$object" | sed -e 's|^.*/||' -e 's/\.o$//' -e 's/\.lo$//'`
|
base=`echo "$object" | sed -e 's|^.*/||' -e 's/\.o$//' -e 's/\.lo$//'`
|
||||||
|
|
||||||
if test "$libtool" = yes; then
|
if test "$libtool" = yes; then
|
||||||
|
# Dependencies are output in .lo.d with libtool 1.4.
|
||||||
|
# With libtool 1.5 they are output both in $dir.libs/$base.o.d
|
||||||
|
# and in $dir.libs/$base.o.d and $dir$base.o.d. We process the
|
||||||
|
# latter, because the former will be cleaned when $dir.libs is
|
||||||
|
# erased.
|
||||||
tmpdepfile1="$dir.libs/$base.lo.d"
|
tmpdepfile1="$dir.libs/$base.lo.d"
|
||||||
tmpdepfile2="$dir.libs/$base.d"
|
tmpdepfile2="$dir$base.o.d"
|
||||||
|
tmpdepfile3="$dir.libs/$base.d"
|
||||||
"$@" -Wc,-MD
|
"$@" -Wc,-MD
|
||||||
else
|
else
|
||||||
tmpdepfile1="$dir$base.o.d"
|
tmpdepfile1="$dir$base.o.d"
|
||||||
tmpdepfile2="$dir$base.d"
|
tmpdepfile2="$dir$base.d"
|
||||||
|
tmpdepfile3="$dir$base.d"
|
||||||
"$@" -MD
|
"$@" -MD
|
||||||
fi
|
fi
|
||||||
|
|
||||||
stat=$?
|
stat=$?
|
||||||
if test $stat -eq 0; then :
|
if test $stat -eq 0; then :
|
||||||
else
|
else
|
||||||
rm -f "$tmpdepfile1" "$tmpdepfile2"
|
rm -f "$tmpdepfile1" "$tmpdepfile2" "$tmpdepfile3"
|
||||||
exit $stat
|
exit $stat
|
||||||
fi
|
fi
|
||||||
|
|
||||||
if test -f "$tmpdepfile1"; then
|
if test -f "$tmpdepfile1"; then
|
||||||
tmpdepfile="$tmpdepfile1"
|
tmpdepfile="$tmpdepfile1"
|
||||||
else
|
elif test -f "$tmpdepfile2"; then
|
||||||
tmpdepfile="$tmpdepfile2"
|
tmpdepfile="$tmpdepfile2"
|
||||||
|
else
|
||||||
|
tmpdepfile="$tmpdepfile3"
|
||||||
fi
|
fi
|
||||||
if test -f "$tmpdepfile"; then
|
if test -f "$tmpdepfile"; then
|
||||||
sed -e "s,^.*\.[a-z]*:,$object:," < "$tmpdepfile" > "$depfile"
|
sed -e "s,^.*\.[a-z]*:,$object:," < "$tmpdepfile" > "$depfile"
|
||||||
# That's a space and a tab in the [].
|
# That's a tab and a space in the [].
|
||||||
sed -e 's,^.*\.[a-z]*:[ ]*,,' -e 's,$,:,' < "$tmpdepfile" >> "$depfile"
|
sed -e 's,^.*\.[a-z]*:[ ]*,,' -e 's,$,:,' < "$tmpdepfile" >> "$depfile"
|
||||||
else
|
else
|
||||||
echo "#dummy" > "$depfile"
|
echo "#dummy" > "$depfile"
|
||||||
fi
|
fi
|
||||||
@ -292,7 +333,7 @@ tru64)
|
|||||||
|
|
||||||
dashmstdout)
|
dashmstdout)
|
||||||
# Important note: in order to support this mode, a compiler *must*
|
# Important note: in order to support this mode, a compiler *must*
|
||||||
# always write the proprocessed file to stdout, regardless of -o.
|
# always write the preprocessed file to stdout, regardless of -o.
|
||||||
"$@" || exit $?
|
"$@" || exit $?
|
||||||
|
|
||||||
# Remove the call to Libtool.
|
# Remove the call to Libtool.
|
||||||
@ -388,7 +429,7 @@ makedepend)
|
|||||||
|
|
||||||
cpp)
|
cpp)
|
||||||
# Important note: in order to support this mode, a compiler *must*
|
# Important note: in order to support this mode, a compiler *must*
|
||||||
# always write the proprocessed file to stdout.
|
# always write the preprocessed file to stdout.
|
||||||
"$@" || exit $?
|
"$@" || exit $?
|
||||||
|
|
||||||
# Remove the call to Libtool.
|
# Remove the call to Libtool.
|
||||||
@ -430,7 +471,7 @@ cpp)
|
|||||||
|
|
||||||
msvisualcpp)
|
msvisualcpp)
|
||||||
# Important note: in order to support this mode, a compiler *must*
|
# Important note: in order to support this mode, a compiler *must*
|
||||||
# always write the proprocessed file to stdout, regardless of -o,
|
# always write the preprocessed file to stdout, regardless of -o,
|
||||||
# because we must use -o when running libtool.
|
# because we must use -o when running libtool.
|
||||||
"$@" || exit $?
|
"$@" || exit $?
|
||||||
IFS=" "
|
IFS=" "
|
||||||
@ -470,3 +511,12 @@ none)
|
|||||||
esac
|
esac
|
||||||
|
|
||||||
exit 0
|
exit 0
|
||||||
|
|
||||||
|
# Local Variables:
|
||||||
|
# mode: shell-script
|
||||||
|
# sh-indentation: 2
|
||||||
|
# eval: (add-hook 'write-file-hooks 'time-stamp)
|
||||||
|
# time-stamp-start: "scriptversion="
|
||||||
|
# time-stamp-format: "%:y-%02m-%02d.%02H"
|
||||||
|
# time-stamp-end: "$"
|
||||||
|
# End:
|
||||||
|
@ -1,3 +1,31 @@
|
|||||||
|
2005-05-28 Marcus Brinkmann <marcus@g10code.de>
|
||||||
|
|
||||||
|
* gpgme.texi (Key Listing Mode): Fix return type of
|
||||||
|
gpgme_set_keylist_mode.
|
||||||
|
Reported by "Sergio" <ml_sergico@virgilio.it>.
|
||||||
|
|
||||||
|
2005-04-28 Marcus Brinkmann <marcus@g10code.de>
|
||||||
|
|
||||||
|
* gpgme.texi (Included Certificates): Document
|
||||||
|
GPGME_INCLUDE_CERTS_DEFAULT.
|
||||||
|
|
||||||
|
2004-12-07 Marcus Brinkmann <marcus@g10code.de>
|
||||||
|
|
||||||
|
* lesser.texi (Library Copying): Change from @appendixsec to
|
||||||
|
@appendix.
|
||||||
|
* gpgme.texi (Features): Change reference to GPL to one to LGPL.
|
||||||
|
|
||||||
|
* Makefile.am: Change license to LGPL.
|
||||||
|
(gpgme_TEXINFOS): Replace gpl.texi with lesser.texi.
|
||||||
|
|
||||||
|
* gpgme.texi: Change license to LGPL (also for documentation of
|
||||||
|
GPGME's license).
|
||||||
|
* lesser.texi: New file.
|
||||||
|
* gpl.texi: File removed.
|
||||||
|
|
||||||
|
* gpgme.texi (Creating Contexts): Fix cut&paste error. Reported
|
||||||
|
by Noel Torres <envite@rolamasao.org>.
|
||||||
|
|
||||||
2004-09-30 Marcus Brinkmann <marcus@g10code.de>
|
2004-09-30 Marcus Brinkmann <marcus@g10code.de>
|
||||||
|
|
||||||
* Makefile.am (gpgme_TEXINFOS): Remove fdl.texi.
|
* Makefile.am (gpgme_TEXINFOS): Remove fdl.texi.
|
||||||
|
@ -1,20 +1,20 @@
|
|||||||
# doc - Automake template
|
# doc - Automake template
|
||||||
# Copyright (C) 2001 g10 Code GmbH
|
# Copyright (C) 2001, 2004 g10 Code GmbH
|
||||||
#
|
#
|
||||||
# This file is part of GPGME.
|
# This file is part of GPGME.
|
||||||
#
|
#
|
||||||
# GPGME is free software; you can redistribute it and/or modify
|
# GPGME is free software; you can redistribute it and/or modify it
|
||||||
# it under the terms of the GNU General Public License as published by
|
# under the terms of the GNU Lesser General Public License as
|
||||||
# the Free Software Foundation; either version 2 of the License, or
|
# published by the Free Software Foundation; either version 2.1 of the
|
||||||
# (at your option) any later version.
|
# License, or (at your option) any later version.
|
||||||
#
|
#
|
||||||
# GPGME is distributed in the hope that it will be useful,
|
# GPGME is distributed in the hope that it will be useful, but WITHOUT
|
||||||
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
|
||||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
# or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General
|
||||||
# GNU General Public License for more details.
|
# Public License for more details.
|
||||||
#
|
#
|
||||||
# You should have received a copy of the GNU General Public License
|
# You should have received a copy of the GNU Lesser General Public
|
||||||
# along with this program; if not, write to the Free Software
|
# License along with this program; if not, write to the Free Software
|
||||||
# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA
|
# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA
|
||||||
|
|
||||||
## Process this file with automake to produce Makefile.in
|
## Process this file with automake to produce Makefile.in
|
||||||
@ -22,4 +22,4 @@
|
|||||||
DISTCLEANFILES = gpgme.tmp
|
DISTCLEANFILES = gpgme.tmp
|
||||||
|
|
||||||
info_TEXINFOS = gpgme.texi
|
info_TEXINFOS = gpgme.texi
|
||||||
gpgme_TEXINFOS = gpl.texi
|
gpgme_TEXINFOS = lesser.texi
|
||||||
|
@ -24,18 +24,18 @@ This is Edition @value{EDITION}, last updated @value{UPDATED}, of
|
|||||||
Copyright @copyright{} 2002, 2003, 2004 g10 Code GmbH.
|
Copyright @copyright{} 2002, 2003, 2004 g10 Code GmbH.
|
||||||
|
|
||||||
The GPGME reference manual is free software; you can redistribute it
|
The GPGME reference manual is free software; you can redistribute it
|
||||||
and/or modify it under the terms of the GNU General Public License as
|
and/or modify it under the terms of the GNU Lesser General Public
|
||||||
published by the Free Software Foundation; either version 2 of the
|
License as published by the Free Software Foundation; either version
|
||||||
License, or (at your option) any later version.
|
2.1 of the License, or (at your option) any later version.
|
||||||
|
|
||||||
The GPGME reference manual is distributed in the hope that it will be
|
The GPGME reference manual is distributed in the hope that it will be
|
||||||
useful, but WITHOUT ANY WARRANTY; without even the implied warranty of
|
useful, but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||||
General Public License for more details.
|
Lesser General Public License for more details.
|
||||||
|
|
||||||
You should have received a copy of the GNU General Public License
|
You should have received a copy of the GNU Lesser General Public
|
||||||
along with this manual; if not, write to the Free Software Foundation,
|
License along with this program; if not, write to the Free Software
|
||||||
Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA.
|
Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA
|
||||||
|
|
||||||
@end ifinfo
|
@end ifinfo
|
||||||
|
|
||||||
@ -56,19 +56,20 @@ Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA.
|
|||||||
@vskip 0pt plus 1filll
|
@vskip 0pt plus 1filll
|
||||||
Copyright @copyright{} 2002, 2003, 2004 g10 Code GmbH.
|
Copyright @copyright{} 2002, 2003, 2004 g10 Code GmbH.
|
||||||
|
|
||||||
|
|
||||||
The GPGME reference manual is free software; you can redistribute it
|
The GPGME reference manual is free software; you can redistribute it
|
||||||
and/or modify it under the terms of the GNU General Public License as
|
and/or modify it under the terms of the GNU Lesser General Public
|
||||||
published by the Free Software Foundation; either version 2 of the
|
License as published by the Free Software Foundation; either version
|
||||||
License, or (at your option) any later version.
|
2.1 of the License, or (at your option) any later version.
|
||||||
|
|
||||||
The GPGME reference manual is distributed in the hope that it will be
|
The GPGME reference manual is distributed in the hope that it will be
|
||||||
useful, but WITHOUT ANY WARRANTY; without even the implied warranty of
|
useful, but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||||
General Public License for more details.
|
Lesser General Public License for more details.
|
||||||
|
|
||||||
You should have received a copy of the GNU General Public License
|
You should have received a copy of the GNU Lesser General Public
|
||||||
along with this manual; if not, write to the Free Software Foundation,
|
License along with this program; if not, write to the Free Software
|
||||||
Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA.
|
Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA
|
||||||
@end titlepage
|
@end titlepage
|
||||||
@page
|
@page
|
||||||
|
|
||||||
@ -91,8 +92,8 @@ This is Edition @value{EDITION}, last updated @value{UPDATED}, of
|
|||||||
|
|
||||||
Appendices
|
Appendices
|
||||||
|
|
||||||
* Copying:: The GNU General Public License says how you
|
* Library Copying:: The GNU Lesser General Public License says
|
||||||
can copy and share `GnuPG Made Easy'.
|
how you can copy and share `GnuPG Made Easy'.
|
||||||
|
|
||||||
Indices
|
Indices
|
||||||
|
|
||||||
@ -277,7 +278,7 @@ engines into your application directly.
|
|||||||
@table @asis
|
@table @asis
|
||||||
@item it's free software
|
@item it's free software
|
||||||
Anybody can use, modify, and redistribute it under the terms of the GNU
|
Anybody can use, modify, and redistribute it under the terms of the GNU
|
||||||
General Public License (@pxref{Copying}).
|
Lesser General Public License (@pxref{Library Copying}).
|
||||||
|
|
||||||
@item it's flexible
|
@item it's flexible
|
||||||
@acronym{GPGME} provides transparent support for several cryptographic
|
@acronym{GPGME} provides transparent support for several cryptographic
|
||||||
@ -1820,8 +1821,8 @@ cryptographic operations.
|
|||||||
@cindex context, creation
|
@cindex context, creation
|
||||||
|
|
||||||
@deftypefun gpgme_error_t gpgme_new (@w{gpgme_ctx_t *@var{ctx}})
|
@deftypefun gpgme_error_t gpgme_new (@w{gpgme_ctx_t *@var{ctx}})
|
||||||
The function @code{gpgme_data_new} creates a new @code{gpgme_ctx_t}
|
The function @code{gpgme_new} creates a new @code{gpgme_ctx_t} object
|
||||||
object and returns a handle for it in @var{ctx}.
|
and returns a handle for it in @var{ctx}.
|
||||||
|
|
||||||
The function returns the error code @code{GPG_ERR_NO_ERROR} if the
|
The function returns the error code @code{GPG_ERR_NO_ERROR} if the
|
||||||
context was successfully created, @code{GPG_ERR_INV_VALUE} if
|
context was successfully created, @code{GPG_ERR_INV_VALUE} if
|
||||||
@ -1943,6 +1944,9 @@ default, only the sender's certificate is included. The possible
|
|||||||
values of @var{nr_of_certs} are:
|
values of @var{nr_of_certs} are:
|
||||||
|
|
||||||
@table @code
|
@table @code
|
||||||
|
@item GPGME_INCLUDE_CERTS_DEFAULT
|
||||||
|
Fall back to the default of the crypto backend. This is the default
|
||||||
|
for GPGME.
|
||||||
@item -2
|
@item -2
|
||||||
Include all certificates except the root certificate.
|
Include all certificates except the root certificate.
|
||||||
@item -1
|
@item -1
|
||||||
@ -1973,7 +1977,7 @@ certificates to include into an S/MIME signed message.
|
|||||||
@cindex key listing mode
|
@cindex key listing mode
|
||||||
@cindex key listing, mode of
|
@cindex key listing, mode of
|
||||||
|
|
||||||
@deftypefun void gpgme_set_keylist_mode (@w{gpgme_ctx_t @var{ctx}}, @w{gpgme_keylist_mode_t @var{mode}})
|
@deftypefun gpgme_error_t gpgme_set_keylist_mode (@w{gpgme_ctx_t @var{ctx}}, @w{gpgme_keylist_mode_t @var{mode}})
|
||||||
The function @code{gpgme_set_keylist_mode} changes the default
|
The function @code{gpgme_set_keylist_mode} changes the default
|
||||||
behaviour of the key listing functions. The value in @var{mode} is a
|
behaviour of the key listing functions. The value in @var{mode} is a
|
||||||
bitwise-or combination of one or multiple of the following bit values:
|
bitwise-or combination of one or multiple of the following bit values:
|
||||||
@ -5050,7 +5054,7 @@ case the state of @var{ctx} is not modified).
|
|||||||
@end deftypefun
|
@end deftypefun
|
||||||
|
|
||||||
|
|
||||||
@include gpl.texi
|
@include lesser.texi
|
||||||
|
|
||||||
|
|
||||||
@node Concept Index
|
@node Concept Index
|
||||||
|
397
doc/gpl.texi
397
doc/gpl.texi
@ -1,397 +0,0 @@
|
|||||||
@node Copying
|
|
||||||
@appendix GNU GENERAL PUBLIC LICENSE
|
|
||||||
|
|
||||||
@cindex GPL, GNU General Public License
|
|
||||||
@center Version 2, June 1991
|
|
||||||
|
|
||||||
@display
|
|
||||||
Copyright @copyright{} 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.
|
|
||||||
@end display
|
|
||||||
|
|
||||||
@appendixsubsec 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.
|
|
||||||
|
|
||||||
@iftex
|
|
||||||
@appendixsubsec TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
|
|
||||||
@end iftex
|
|
||||||
@ifinfo
|
|
||||||
@center TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
|
|
||||||
@end ifinfo
|
|
||||||
|
|
||||||
@enumerate
|
|
||||||
@item
|
|
||||||
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.
|
|
||||||
|
|
||||||
@item
|
|
||||||
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.
|
|
||||||
|
|
||||||
@item
|
|
||||||
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:
|
|
||||||
|
|
||||||
@enumerate a
|
|
||||||
@item
|
|
||||||
You must cause the modified files to carry prominent notices
|
|
||||||
stating that you changed the files and the date of any change.
|
|
||||||
|
|
||||||
@item
|
|
||||||
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.
|
|
||||||
|
|
||||||
@item
|
|
||||||
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.)
|
|
||||||
@end enumerate
|
|
||||||
|
|
||||||
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.
|
|
||||||
|
|
||||||
@item
|
|
||||||
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:
|
|
||||||
|
|
||||||
@enumerate a
|
|
||||||
@item
|
|
||||||
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,
|
|
||||||
|
|
||||||
@item
|
|
||||||
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,
|
|
||||||
|
|
||||||
@item
|
|
||||||
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.)
|
|
||||||
@end enumerate
|
|
||||||
|
|
||||||
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.
|
|
||||||
|
|
||||||
@item
|
|
||||||
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.
|
|
||||||
|
|
||||||
@item
|
|
||||||
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.
|
|
||||||
|
|
||||||
@item
|
|
||||||
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.
|
|
||||||
|
|
||||||
@item
|
|
||||||
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.
|
|
||||||
|
|
||||||
@item
|
|
||||||
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.
|
|
||||||
|
|
||||||
@item
|
|
||||||
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.
|
|
||||||
|
|
||||||
@item
|
|
||||||
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.
|
|
||||||
|
|
||||||
@iftex
|
|
||||||
@heading NO WARRANTY
|
|
||||||
@end iftex
|
|
||||||
@ifinfo
|
|
||||||
@center NO WARRANTY
|
|
||||||
@end ifinfo
|
|
||||||
|
|
||||||
@item
|
|
||||||
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.
|
|
||||||
|
|
||||||
@item
|
|
||||||
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 enumerate
|
|
||||||
|
|
||||||
@iftex
|
|
||||||
@heading END OF TERMS AND CONDITIONS
|
|
||||||
@end iftex
|
|
||||||
@ifinfo
|
|
||||||
@center END OF TERMS AND CONDITIONS
|
|
||||||
@end ifinfo
|
|
||||||
|
|
||||||
@page
|
|
||||||
@unnumberedsec 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.
|
|
||||||
|
|
||||||
@smallexample
|
|
||||||
@var{one line to give the program's name and an idea of what it does.}
|
|
||||||
Copyright (C) 19@var{yy} @var{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.
|
|
||||||
@end smallexample
|
|
||||||
|
|
||||||
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:
|
|
||||||
|
|
||||||
@smallexample
|
|
||||||
Gnomovision version 69, Copyright (C) 19@var{yy} @var{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.
|
|
||||||
@end smallexample
|
|
||||||
|
|
||||||
The hypothetical commands @samp{show w} and @samp{show c} should show
|
|
||||||
the appropriate parts of the General Public License. Of course, the
|
|
||||||
commands you use may be called something other than @samp{show w} and
|
|
||||||
@samp{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:
|
|
||||||
|
|
||||||
@smallexample
|
|
||||||
@group
|
|
||||||
Yoyodyne, Inc., hereby disclaims all copyright
|
|
||||||
interest in the program `Gnomovision'
|
|
||||||
(which makes passes at compilers) written
|
|
||||||
by James Hacker.
|
|
||||||
|
|
||||||
@var{signature of Ty Coon}, 1 April 1989
|
|
||||||
Ty Coon, President of Vice
|
|
||||||
@end group
|
|
||||||
@end smallexample
|
|
||||||
|
|
||||||
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.
|
|
565
doc/lesser.texi
Normal file
565
doc/lesser.texi
Normal file
@ -0,0 +1,565 @@
|
|||||||
|
@node Library Copying
|
||||||
|
@appendix GNU LESSER GENERAL PUBLIC LICENSE
|
||||||
|
|
||||||
|
@cindex LGPL, Lesser General Public License
|
||||||
|
@center Version 2.1, February 1999
|
||||||
|
|
||||||
|
@display
|
||||||
|
Copyright @copyright{} 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.]
|
||||||
|
@end display
|
||||||
|
|
||||||
|
@appendixsubsec 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---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 @dfn{Lesser} General Public License because it
|
||||||
|
does @emph{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.
|
||||||
|
|
||||||
|
@iftex
|
||||||
|
@appendixsubsec TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
|
||||||
|
@end iftex
|
||||||
|
@ifinfo
|
||||||
|
@center GNU LESSER GENERAL PUBLIC LICENSE
|
||||||
|
@center TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
|
||||||
|
@end ifinfo
|
||||||
|
|
||||||
|
@enumerate 0
|
||||||
|
@item
|
||||||
|
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.
|
||||||
|
|
||||||
|
@item
|
||||||
|
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.
|
||||||
|
|
||||||
|
@item
|
||||||
|
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:
|
||||||
|
|
||||||
|
@enumerate a
|
||||||
|
@item
|
||||||
|
The modified work must itself be a software library.
|
||||||
|
|
||||||
|
@item
|
||||||
|
You must cause the files modified to carry prominent notices
|
||||||
|
stating that you changed the files and the date of any change.
|
||||||
|
|
||||||
|
@item
|
||||||
|
You must cause the whole of the work to be licensed at no
|
||||||
|
charge to all third parties under the terms of this License.
|
||||||
|
|
||||||
|
@item
|
||||||
|
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.)
|
||||||
|
@end enumerate
|
||||||
|
|
||||||
|
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.
|
||||||
|
|
||||||
|
@item
|
||||||
|
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.
|
||||||
|
|
||||||
|
@item
|
||||||
|
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.
|
||||||
|
|
||||||
|
@item
|
||||||
|
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.
|
||||||
|
|
||||||
|
@item
|
||||||
|
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:
|
||||||
|
|
||||||
|
@enumerate a
|
||||||
|
@item
|
||||||
|
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.)
|
||||||
|
|
||||||
|
@item
|
||||||
|
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.
|
||||||
|
|
||||||
|
@item
|
||||||
|
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.
|
||||||
|
|
||||||
|
@item
|
||||||
|
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.
|
||||||
|
|
||||||
|
@item
|
||||||
|
Verify that the user has already received a copy of these
|
||||||
|
materials or that you have already sent this user a copy.
|
||||||
|
@end enumerate
|
||||||
|
|
||||||
|
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.
|
||||||
|
|
||||||
|
@item
|
||||||
|
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:
|
||||||
|
|
||||||
|
@enumerate a
|
||||||
|
@item
|
||||||
|
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.
|
||||||
|
|
||||||
|
@item
|
||||||
|
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.
|
||||||
|
@end enumerate
|
||||||
|
|
||||||
|
@item
|
||||||
|
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.
|
||||||
|
|
||||||
|
@item
|
||||||
|
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.
|
||||||
|
|
||||||
|
@item
|
||||||
|
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.
|
||||||
|
|
||||||
|
@item
|
||||||
|
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.
|
||||||
|
|
||||||
|
@item
|
||||||
|
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.
|
||||||
|
|
||||||
|
@item
|
||||||
|
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.
|
||||||
|
|
||||||
|
@item
|
||||||
|
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.
|
||||||
|
|
||||||
|
@iftex
|
||||||
|
@heading NO WARRANTY
|
||||||
|
@end iftex
|
||||||
|
@ifinfo
|
||||||
|
@center NO WARRANTY
|
||||||
|
@end ifinfo
|
||||||
|
|
||||||
|
@item
|
||||||
|
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.
|
||||||
|
|
||||||
|
@item
|
||||||
|
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 enumerate
|
||||||
|
|
||||||
|
@iftex
|
||||||
|
@heading END OF TERMS AND CONDITIONS
|
||||||
|
@end iftex
|
||||||
|
@ifinfo
|
||||||
|
@center END OF TERMS AND CONDITIONS
|
||||||
|
@end ifinfo
|
||||||
|
|
||||||
|
@page
|
||||||
|
@appendixsubsec 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.
|
||||||
|
|
||||||
|
@smallexample
|
||||||
|
@var{one line to give the library's name and an idea of what it does.}
|
||||||
|
Copyright (C) @var{year} @var{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.
|
||||||
|
@end smallexample
|
||||||
|
|
||||||
|
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:
|
||||||
|
|
||||||
|
@smallexample
|
||||||
|
Yoyodyne, Inc., hereby disclaims all copyright interest in the library
|
||||||
|
`Frob' (a library for tweaking knobs) written by James Random Hacker.
|
||||||
|
|
||||||
|
@var{signature of Ty Coon}, 1 April 1990
|
||||||
|
Ty Coon, President of Vice
|
||||||
|
@end smallexample
|
||||||
|
|
||||||
|
That's all there is to it!
|
37
doc/mdate-sh
37
doc/mdate-sh
@ -1,5 +1,8 @@
|
|||||||
#!/bin/sh
|
#!/bin/sh
|
||||||
# Get modification time of a file or directory and pretty-print it.
|
# Get modification time of a file or directory and pretty-print it.
|
||||||
|
|
||||||
|
scriptversion=2003-11-09.00
|
||||||
|
|
||||||
# Copyright (C) 1995, 1996, 1997, 2003 Free Software Foundation, Inc.
|
# Copyright (C) 1995, 1996, 1997, 2003 Free Software Foundation, Inc.
|
||||||
# written by Ulrich Drepper <drepper@gnu.ai.mit.edu>, June 1995
|
# written by Ulrich Drepper <drepper@gnu.ai.mit.edu>, June 1995
|
||||||
#
|
#
|
||||||
@ -22,6 +25,31 @@
|
|||||||
# configuration script generated by Autoconf, you may include it under
|
# configuration script generated by Autoconf, you may include it under
|
||||||
# the same distribution terms that you use for the rest of that program.
|
# the same distribution terms that you use for the rest of that program.
|
||||||
|
|
||||||
|
# This file is maintained in Automake, please report
|
||||||
|
# bugs to <bug-automake@gnu.org> or send patches to
|
||||||
|
# <automake-patches@gnu.org>.
|
||||||
|
|
||||||
|
case $1 in
|
||||||
|
'')
|
||||||
|
echo "$0: No file. Try \`$0 --help' for more information." 1>&2
|
||||||
|
exit 1;
|
||||||
|
;;
|
||||||
|
-h | --h*)
|
||||||
|
cat <<\EOF
|
||||||
|
Usage: mdate-sh [--help] [--version] FILE
|
||||||
|
|
||||||
|
Pretty-print the modification time of FILE.
|
||||||
|
|
||||||
|
Report bugs to <bug-automake@gnu.org>.
|
||||||
|
EOF
|
||||||
|
exit 0
|
||||||
|
;;
|
||||||
|
-v | --v*)
|
||||||
|
echo "mdate-sh $scriptversion"
|
||||||
|
exit 0
|
||||||
|
;;
|
||||||
|
esac
|
||||||
|
|
||||||
# Prevent date giving response in another language.
|
# Prevent date giving response in another language.
|
||||||
LANG=C
|
LANG=C
|
||||||
export LANG
|
export LANG
|
||||||
@ -131,3 +159,12 @@ esac
|
|||||||
|
|
||||||
# The result.
|
# The result.
|
||||||
echo $day $month $year
|
echo $day $month $year
|
||||||
|
|
||||||
|
# Local Variables:
|
||||||
|
# mode: shell-script
|
||||||
|
# sh-indentation: 2
|
||||||
|
# eval: (add-hook 'write-file-hooks 'time-stamp)
|
||||||
|
# time-stamp-start: "scriptversion="
|
||||||
|
# time-stamp-format: "%:y-%02m-%02d.%02H"
|
||||||
|
# time-stamp-end: "$"
|
||||||
|
# End:
|
||||||
|
5624
doc/texinfo.tex
5624
doc/texinfo.tex
File diff suppressed because it is too large
Load Diff
@ -49,7 +49,7 @@ fi
|
|||||||
|
|
||||||
%files
|
%files
|
||||||
%defattr(-,root,root)
|
%defattr(-,root,root)
|
||||||
%doc COPYING AUTHORS README INSTALL NEWS ChangeLog TODO THANKS
|
%doc COPYING COPYING.LESSER AUTHORS README INSTALL NEWS ChangeLog TODO THANKS
|
||||||
%attr(0755,root,root) %{_bindir}/gpgme-config
|
%attr(0755,root,root) %{_bindir}/gpgme-config
|
||||||
%attr(0755,root,root) %{_libdir}/*gpgme.so*
|
%attr(0755,root,root) %{_libdir}/*gpgme.so*
|
||||||
%attr(0755,root,root) %{_libdir}/*gpgme.la
|
%attr(0755,root,root) %{_libdir}/*gpgme.la
|
||||||
|
110
gpgme/ChangeLog
110
gpgme/ChangeLog
@ -1,3 +1,111 @@
|
|||||||
|
2005-09-12 Marcus Brinkmann <marcus@g10code.de>
|
||||||
|
|
||||||
|
* keylist.c (release_op_data): Do not free opd->tmp_uid.
|
||||||
|
|
||||||
|
2005-07-26 Marcus Brinkmann <marcus@g10code.de>
|
||||||
|
|
||||||
|
* keylist.c (gpgme_get_key): Allow key IDs.
|
||||||
|
|
||||||
|
2005-06-20 Marcus Brinkmann <marcus@g10code.de>
|
||||||
|
|
||||||
|
* gpgme.m4: Only call GPGME_CONFIG if found.
|
||||||
|
|
||||||
|
2005-06-03 Marcus Brinkmann <marcus@g10code.de>
|
||||||
|
|
||||||
|
* wait-global.c (gpgme_wait): Break out of the fd processing loop
|
||||||
|
after an error.
|
||||||
|
Reported by Igor Belyi <gpgme@katehok.ac93.org>.
|
||||||
|
|
||||||
|
2005-06-02 Marcus Brinkmann <marcus@g10code.de>
|
||||||
|
|
||||||
|
* wait.h (_gpgme_run_io_cb): New prototype.
|
||||||
|
* wait.c (_gpgme_run_io_cb): New function.
|
||||||
|
* wait-global.c (gpgme_wait): Call it.
|
||||||
|
* wait-user.c (_gpgme_user_io_cb_handler): Likewise.
|
||||||
|
* wait-private.c (_gpgme_wait_on_condition): Likewise.
|
||||||
|
|
||||||
|
2005-06-02 Werner Koch <wk@g10code.com>
|
||||||
|
|
||||||
|
* gpgme.h: Add GPGME_STATUS_NEED_PASSPHRASE_PIN.
|
||||||
|
* passphrase.c (_gpgme_passphrase_status_handler): Take care of
|
||||||
|
GPGME_STATUS_NEED_PASSPHRASE_PIN.
|
||||||
|
(_gpgme_passphrase_command_handler_internal): Also act on the key
|
||||||
|
"passphrase.pin.ask".
|
||||||
|
|
||||||
|
2005-05-28 Marcus Brinkmann <marcus@g10code.de>
|
||||||
|
|
||||||
|
* data-user.c: Include <errno.h>.
|
||||||
|
|
||||||
|
2005-05-17 Marcus Brinkmann <marcus@g10code.de>
|
||||||
|
|
||||||
|
* gpgme.c (gpgme_new): Set the CTX->include_certs default to the
|
||||||
|
default.
|
||||||
|
|
||||||
|
2005-05-11 Marcus Brinkmann <marcus@g10code.de>
|
||||||
|
|
||||||
|
* w32-io.c (_gpgme_io_select): Fix loop increment.
|
||||||
|
|
||||||
|
2005-05-05 Marcus Brinkmann <marcus@g10code.de>
|
||||||
|
|
||||||
|
* data-user.c (user_release): Only call user hook if provided.
|
||||||
|
(user_seek): Return EBADF if no user hook is provided.
|
||||||
|
(user_read): Likewise.
|
||||||
|
(user_write): Likewise.
|
||||||
|
|
||||||
|
2005-04-28 Marcus Brinkmann <marcus@g10code.de>
|
||||||
|
|
||||||
|
* gpgme.h (GPGME_INCLUDE_CERTS_DEFAULT): New macro.
|
||||||
|
* engine-gpgsm.c (gpgsm_sign): Send the include-certs option after
|
||||||
|
the reset, just for cleanliness, and do not sent it at all if the
|
||||||
|
default is requested.
|
||||||
|
* gpgme.c (gpgme_set_include_certs): Allow to use
|
||||||
|
GPGME_INCLUDE_CERTS_DEFAULT.
|
||||||
|
|
||||||
|
2005-04-21 Werner Koch <wk@g10code.com>
|
||||||
|
|
||||||
|
* verify.c (calc_sig_summary): Set the key revoked bit.
|
||||||
|
|
||||||
|
2005-04-14 Marcus Brinkmann <marcus@g10code.de>
|
||||||
|
|
||||||
|
* wait-global.c (gpgme_wait): Use LI->ctx when checking a context
|
||||||
|
in the list, not the user-provided CTX.
|
||||||
|
Reported by Igor Belyi <gpgme@katehok.ac93.org>.
|
||||||
|
|
||||||
|
* wait-global.c (gpgme_wait): If no context is found, and we
|
||||||
|
should not hang, set *status to 0 and return NULL.
|
||||||
|
Reported by Igor Belyi <gpgme@katehok.ac93.org>.
|
||||||
|
|
||||||
|
2004-12-11 Marcus Brinkmann <marcus@g10code.de>
|
||||||
|
|
||||||
|
* util.h [HAVE_CONFIG_H && HAVE_TTYNAME_R] (ttyname_r): Define
|
||||||
|
prototype.
|
||||||
|
* ttyname_r.c: New file.
|
||||||
|
|
||||||
|
2004-12-07 Marcus Brinkmann <marcus@g10code.de>
|
||||||
|
|
||||||
|
* putc_unlocked.c, funopen.c: I just claim copyright on these
|
||||||
|
files and change their license to LGPL, because they are totally
|
||||||
|
trivial wrapper functions.
|
||||||
|
* isascii.c: Change copyright notice to the one from ctype/ctype.h
|
||||||
|
in the GNU C Library (CVS Head 2004-10-10), where isascii is
|
||||||
|
defined as a macro doing exactly the same as the function in this
|
||||||
|
file.
|
||||||
|
* memrchr.c: Update from the GNU C Library (CVS Head 2001-07-06).
|
||||||
|
* stpcpy.c: Update from the GNU C Library (CVS Head 2004-10-10).
|
||||||
|
* ath.c, ath-compat.c, ath.h, ath-pth.c, ath-pth-compat.c,
|
||||||
|
ath-pthread.c, ath-pthread-compat.c, context.h, conversion.c,
|
||||||
|
data.c, data-compat.c, data-fd.c, data.h, data-mem.c,
|
||||||
|
data-stream.c, data-user.c, debug.c, debug.h, decrypt.c,
|
||||||
|
decrypt-verify.c, delete.c, edit.c, encrypt.c, encrypt-sign.c,
|
||||||
|
engine-backend.h, engine.c, engine-gpgsm.c, engine.h, error.c,
|
||||||
|
export.c, genkey.c, get-env.c, gpgme.c, gpgme.h, import.c, io.h,
|
||||||
|
key.c, keylist.c, mkstatus, Makefile.am, ops.h, op-support.c,
|
||||||
|
passphrase.c, posix-io.c, posix-sema.c, posix-util.c, progress.c,
|
||||||
|
rungpg.c, sema.h, sign.c, signers.c, trust-item.c, trustlist.c,
|
||||||
|
util.h, verify.c, version.c, w32-io.c, w32-sema.c, w32-util.c,
|
||||||
|
wait.c, wait-global.c, wait.h, wait-private.c, wait-user.c: Change
|
||||||
|
license to LGPL.
|
||||||
|
|
||||||
2004-10-03 Marcus Brinkmann <marcus@g10code.de>
|
2004-10-03 Marcus Brinkmann <marcus@g10code.de>
|
||||||
|
|
||||||
* verify.c (parse_trust): If no reason is provided, set
|
* verify.c (parse_trust): If no reason is provided, set
|
||||||
@ -4535,7 +4643,7 @@
|
|||||||
* data.c (gpgme_data_rewind): Allow to rewind data_type_none.
|
* data.c (gpgme_data_rewind): Allow to rewind data_type_none.
|
||||||
|
|
||||||
|
|
||||||
Copyright 2001, 2002, 2003, 2004 g10 Code GmbH
|
Copyright 2001, 2002, 2003, 2004, 2005 g10 Code GmbH
|
||||||
|
|
||||||
This file is free software; as a special exception the author gives
|
This file is free software; as a special exception the author gives
|
||||||
unlimited permission to copy and/or distribute it, with or without
|
unlimited permission to copy and/or distribute it, with or without
|
||||||
|
@ -1,20 +1,20 @@
|
|||||||
# Copyright (C) 2000 Werner Koch (dd9jn)
|
# Copyright (C) 2000 Werner Koch (dd9jn)
|
||||||
# Copyright (C) 2001, 2002, 2003 g10 Code GmbH
|
# Copyright (C) 2001, 2002, 2003, 2004 g10 Code GmbH
|
||||||
#
|
#
|
||||||
# This file is part of GPGME.
|
# This file is part of GPGME.
|
||||||
#
|
#
|
||||||
# GPGME is free software; you can redistribute it and/or modify
|
# GPGME is free software; you can redistribute it and/or modify it
|
||||||
# it under the terms of the GNU General Public License as published by
|
# under the terms of the GNU Lesser General Public License as
|
||||||
# the Free Software Foundation; either version 2 of the License, or
|
# published by the Free Software Foundation; either version 2.1 of the
|
||||||
# (at your option) any later version.
|
# License, or (at your option) any later version.
|
||||||
#
|
#
|
||||||
# GPGME is distributed in the hope that it will be useful,
|
# GPGME is distributed in the hope that it will be useful, but WITHOUT
|
||||||
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
|
||||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
# or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General
|
||||||
# GNU General Public License for more details.
|
# Public License for more details.
|
||||||
#
|
#
|
||||||
# You should have received a copy of the GNU General Public License
|
# You should have received a copy of the GNU Lesser General Public
|
||||||
# along with this program; if not, write to the Free Software
|
# License along with this program; if not, write to the Free Software
|
||||||
# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA
|
# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA
|
||||||
|
|
||||||
## Process this file with automake to produce Makefile.in
|
## Process this file with automake to produce Makefile.in
|
||||||
|
@ -1,22 +1,22 @@
|
|||||||
/* ath.c - self-adapting thread-safeness library
|
/* ath.c - self-adapting thread-safeness library
|
||||||
* Copyright (C) 2002 g10 Code GmbH
|
Copyright (C) 2002, 2004 g10 Code GmbH
|
||||||
*
|
|
||||||
* This file is part of GPGME.
|
This file is part of GPGME.
|
||||||
*
|
|
||||||
* GPGME is free software; you can redistribute it and/or modify
|
GPGME is free software; you can redistribute it and/or modify it
|
||||||
* it under the terms of the GNU General Public License as published by
|
under the terms of the GNU Lesser General Public License as
|
||||||
* the Free Software Foundation; either version 2 of the License, or
|
published by the Free Software Foundation; either version 2.1 of
|
||||||
* (at your option) any later version.
|
the License, or (at your option) any later version.
|
||||||
*
|
|
||||||
* GPGME is distributed in the hope that it will be useful,
|
GPGME is distributed in the hope that it will be useful, but
|
||||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||||
* GNU General Public License for more details.
|
Lesser General Public License for more details.
|
||||||
*
|
|
||||||
* You should have received a copy of the GNU General Public License
|
You should have received a copy of the GNU Lesser General Public
|
||||||
* along with this program; if not, write to the Free Software
|
License along with this program; if not, write to the Free Software
|
||||||
* Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA
|
Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
|
||||||
*/
|
02111-1307, USA. */
|
||||||
|
|
||||||
#ifdef HAVE_CONFIG_H
|
#ifdef HAVE_CONFIG_H
|
||||||
#include <config.h>
|
#include <config.h>
|
||||||
|
@ -1,22 +1,22 @@
|
|||||||
/* ath-pth.c - Pth module for self-adapting thread-safeness library
|
/* ath-pth.c - Pth module for self-adapting thread-safeness library
|
||||||
* Copyright (C) 2002 g10 Code GmbH
|
Copyright (C) 2002, 2004 g10 Code GmbH
|
||||||
*
|
|
||||||
* This file is part of GPGME.
|
This file is part of GPGME.
|
||||||
*
|
|
||||||
* GPGME is free software; you can redistribute it and/or modify
|
GPGME is free software; you can redistribute it and/or modify it
|
||||||
* it under the terms of the GNU General Public License as published by
|
under the terms of the GNU Lesser General Public License as
|
||||||
* the Free Software Foundation; either version 2 of the License, or
|
published by the Free Software Foundation; either version 2.1 of
|
||||||
* (at your option) any later version.
|
the License, or (at your option) any later version.
|
||||||
*
|
|
||||||
* GPGME is distributed in the hope that it will be useful,
|
GPGME is distributed in the hope that it will be useful, but
|
||||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||||
* GNU General Public License for more details.
|
Lesser General Public License for more details.
|
||||||
*
|
|
||||||
* You should have received a copy of the GNU General Public License
|
You should have received a copy of the GNU Lesser General Public
|
||||||
* along with this program; if not, write to the Free Software
|
License along with this program; if not, write to the Free Software
|
||||||
* Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA
|
Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
|
||||||
*/
|
02111-1307, USA. */
|
||||||
|
|
||||||
#include <stdlib.h>
|
#include <stdlib.h>
|
||||||
#include <errno.h>
|
#include <errno.h>
|
||||||
|
@ -1,21 +1,22 @@
|
|||||||
/* ath-pth.c - Pth module for self-adapting thread-safeness library
|
/* ath-pth.c - Pth module for self-adapting thread-safeness library
|
||||||
Copyright (C) 2002, 2003 g10 Code GmbH
|
Copyright (C) 2002, 2003, 2004 g10 Code GmbH
|
||||||
|
|
||||||
This file is part of GPGME.
|
This file is part of GPGME.
|
||||||
|
|
||||||
GPGME is free software; you can redistribute it and/or modify it
|
GPGME is free software; you can redistribute it and/or modify it
|
||||||
under the terms of the GNU General Public License as published by
|
under the terms of the GNU Lesser General Public License as
|
||||||
the Free Software Foundation; either version 2 of the License, or
|
published by the Free Software Foundation; either version 2.1 of
|
||||||
(at your option) any later version.
|
the License, or (at your option) any later version.
|
||||||
|
|
||||||
GPGME is distributed in the hope that it will be useful, but
|
GPGME is distributed in the hope that it will be useful, but
|
||||||
WITHOUT ANY WARRANTY; without even the implied warranty of
|
WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||||
General Public License for more details.
|
Lesser General Public License for more details.
|
||||||
|
|
||||||
You should have received a copy of the GNU General Public License
|
You should have received a copy of the GNU Lesser General Public
|
||||||
along with GPGME; if not, write to the Free Software Foundation,
|
License along with this program; if not, write to the Free Software
|
||||||
Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
|
Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
|
||||||
|
02111-1307, USA. */
|
||||||
|
|
||||||
|
|
||||||
#ifdef HAVE_CONFIG_H
|
#ifdef HAVE_CONFIG_H
|
||||||
|
@ -1,22 +1,22 @@
|
|||||||
/* ath-pthread.c - pthread module for self-adapting thread-safeness library
|
/* ath-pthread.c - pthread module for self-adapting thread-safeness library
|
||||||
* Copyright (C) 2002 g10 Code GmbH
|
Copyright (C) 2002, 2004 g10 Code GmbH
|
||||||
*
|
|
||||||
* This file is part of GPGME.
|
This file is part of GPGME.
|
||||||
*
|
|
||||||
* GPGME is free software; you can redistribute it and/or modify
|
GPGME is free software; you can redistribute it and/or modify it
|
||||||
* it under the terms of the GNU General Public License as published by
|
under the terms of the GNU Lesser General Public License as
|
||||||
* the Free Software Foundation; either version 2 of the License, or
|
published by the Free Software Foundation; either version 2.1 of
|
||||||
* (at your option) any later version.
|
the License, or (at your option) any later version.
|
||||||
*
|
|
||||||
* GPGME is distributed in the hope that it will be useful,
|
GPGME is distributed in the hope that it will be useful, but
|
||||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||||
* GNU General Public License for more details.
|
Lesser General Public License for more details.
|
||||||
*
|
|
||||||
* You should have received a copy of the GNU General Public License
|
You should have received a copy of the GNU Lesser General Public
|
||||||
* along with this program; if not, write to the Free Software
|
License along with this program; if not, write to the Free Software
|
||||||
* Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA
|
Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
|
||||||
*/
|
02111-1307, USA. */
|
||||||
|
|
||||||
#include <stdlib.h>
|
#include <stdlib.h>
|
||||||
#include <errno.h>
|
#include <errno.h>
|
||||||
|
@ -1,22 +1,22 @@
|
|||||||
/* ath-pthread.c - pthread module for self-adapting thread-safeness library
|
/* ath-pthread.c - pthread module for self-adapting thread-safeness library
|
||||||
Copyright (C) 2002, 2003 g10 Code GmbH
|
Copyright (C) 2002, 2003, 2004 g10 Code GmbH
|
||||||
|
|
||||||
This file is part of GPGME.
|
This file is part of GPGME.
|
||||||
|
|
||||||
GPGME is free software; you can redistribute it and/or modify it
|
GPGME is free software; you can redistribute it and/or modify it
|
||||||
under the terms of the GNU General Public License as published by
|
under the terms of the GNU Lesser General Public License as
|
||||||
the Free Software Foundation; either version 2 of the License, or
|
published by the Free Software Foundation; either version 2.1 of
|
||||||
(at your option) any later version.
|
the License, or (at your option) any later version.
|
||||||
|
|
||||||
GPGME is distributed in the hope that it will be useful, but
|
GPGME is distributed in the hope that it will be useful, but
|
||||||
WITHOUT ANY WARRANTY; without even the implied warranty of
|
WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||||
General Public License for more details.
|
Lesser General Public License for more details.
|
||||||
|
|
||||||
You should have received a copy of the GNU General Public License
|
You should have received a copy of the GNU Lesser General Public
|
||||||
along with GPGME; if not, write to the Free Software Foundation,
|
License along with this program; if not, write to the Free Software
|
||||||
Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
|
Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
|
||||||
|
02111-1307, USA. */
|
||||||
|
|
||||||
#ifdef HAVE_CONFIG_H
|
#ifdef HAVE_CONFIG_H
|
||||||
#include <config.h>
|
#include <config.h>
|
||||||
|
21
gpgme/ath.c
21
gpgme/ath.c
@ -1,21 +1,22 @@
|
|||||||
/* ath.c - Thread-safeness library.
|
/* ath.c - Thread-safeness library.
|
||||||
Copyright (C) 2002, 2003 g10 Code GmbH
|
Copyright (C) 2002, 2003, 2004 g10 Code GmbH
|
||||||
|
|
||||||
This file is part of GPGME.
|
This file is part of GPGME.
|
||||||
|
|
||||||
GPGME is free software; you can redistribute it and/or modify it
|
GPGME is free software; you can redistribute it and/or modify it
|
||||||
under the terms of the GNU General Public License as published by
|
under the terms of the GNU Lesser General Public License as
|
||||||
the Free Software Foundation; either version 2 of the License, or
|
published by the Free Software Foundation; either version 2.1 of
|
||||||
(at your option) any later version.
|
the License, or (at your option) any later version.
|
||||||
|
|
||||||
GPGME is distributed in the hope that it will be useful, but
|
GPGME is distributed in the hope that it will be useful, but
|
||||||
WITHOUT ANY WARRANTY; without even the implied warranty of
|
WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||||
General Public License for more details.
|
Lesser General Public License for more details.
|
||||||
|
|
||||||
You should have received a copy of the GNU General Public License
|
You should have received a copy of the GNU Lesser General Public
|
||||||
along with GPGME; if not, write to the Free Software Foundation,
|
License along with this program; if not, write to the Free Software
|
||||||
Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
|
Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
|
||||||
|
02111-1307, USA. */
|
||||||
|
|
||||||
#ifdef HAVE_CONFIG_H
|
#ifdef HAVE_CONFIG_H
|
||||||
#include <config.h>
|
#include <config.h>
|
||||||
|
21
gpgme/ath.h
21
gpgme/ath.h
@ -1,21 +1,22 @@
|
|||||||
/* ath.h - Interfaces for thread-safeness library.
|
/* ath.h - Interfaces for thread-safeness library.
|
||||||
Copyright (C) 2002, 2003 g10 Code GmbH
|
Copyright (C) 2002, 2003, 2004 g10 Code GmbH
|
||||||
|
|
||||||
This file is part of GPGME.
|
This file is part of GPGME.
|
||||||
|
|
||||||
GPGME is free software; you can redistribute it and/or modify it
|
GPGME is free software; you can redistribute it and/or modify it
|
||||||
under the terms of the GNU General Public License as published by
|
under the terms of the GNU Lesser General Public License as
|
||||||
the Free Software Foundation; either version 2 of the License, or
|
published by the Free Software Foundation; either version 2.1 of
|
||||||
(at your option) any later version.
|
the License, or (at your option) any later version.
|
||||||
|
|
||||||
GPGME is distributed in the hope that it will be useful, but
|
GPGME is distributed in the hope that it will be useful, but
|
||||||
WITHOUT ANY WARRANTY; without even the implied warranty of
|
WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||||
General Public License for more details.
|
Lesser General Public License for more details.
|
||||||
|
|
||||||
You should have received a copy of the GNU General Public License
|
You should have received a copy of the GNU Lesser General Public
|
||||||
along with GPGME; if not, write to the Free Software Foundation,
|
License along with this program; if not, write to the Free Software
|
||||||
Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
|
Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
|
||||||
|
02111-1307, USA. */
|
||||||
|
|
||||||
#ifndef ATH_H
|
#ifndef ATH_H
|
||||||
#define ATH_H
|
#define ATH_H
|
||||||
|
@ -1,22 +1,23 @@
|
|||||||
/* context.h - Definitions for a GPGME context.
|
/* context.h - Definitions for a GPGME context.
|
||||||
Copyright (C) 2000 Werner Koch (dd9jn)
|
Copyright (C) 2000 Werner Koch (dd9jn)
|
||||||
Copyright (C) 2001, 2002, 2003 g10 Code GmbH
|
Copyright (C) 2001, 2002, 2003, 2004 g10 Code GmbH
|
||||||
|
|
||||||
This file is part of GPGME.
|
This file is part of GPGME.
|
||||||
|
|
||||||
GPGME is free software; you can redistribute it and/or modify it
|
GPGME is free software; you can redistribute it and/or modify it
|
||||||
under the terms of the GNU General Public License as published by
|
under the terms of the GNU Lesser General Public License as
|
||||||
the Free Software Foundation; either version 2 of the License, or
|
published by the Free Software Foundation; either version 2.1 of
|
||||||
(at your option) any later version.
|
the License, or (at your option) any later version.
|
||||||
|
|
||||||
GPGME is distributed in the hope that it will be useful, but
|
GPGME is distributed in the hope that it will be useful, but
|
||||||
WITHOUT ANY WARRANTY; without even the implied warranty of
|
WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||||
General Public License for more details.
|
Lesser General Public License for more details.
|
||||||
|
|
||||||
You should have received a copy of the GNU General Public License
|
You should have received a copy of the GNU Lesser General Public
|
||||||
along with GPGME; if not, write to the Free Software Foundation,
|
License along with this program; if not, write to the Free Software
|
||||||
Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
|
Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
|
||||||
|
02111-1307, USA. */
|
||||||
|
|
||||||
#ifndef CONTEXT_H
|
#ifndef CONTEXT_H
|
||||||
#define CONTEXT_H
|
#define CONTEXT_H
|
||||||
|
@ -1,22 +1,23 @@
|
|||||||
/* conversion.c - String conversion helper functions.
|
/* conversion.c - String conversion helper functions.
|
||||||
Copyright (C) 2000 Werner Koch (dd9jn)
|
Copyright (C) 2000 Werner Koch (dd9jn)
|
||||||
Copyright (C) 2001, 2002, 2003 g10 Code GmbH
|
Copyright (C) 2001, 2002, 2003, 2004 g10 Code GmbH
|
||||||
|
|
||||||
This file is part of GPGME.
|
This file is part of GPGME.
|
||||||
|
|
||||||
GPGME is free software; you can redistribute it and/or modify it
|
GPGME is free software; you can redistribute it and/or modify it
|
||||||
under the terms of the GNU General Public License as published by
|
under the terms of the GNU Lesser General Public License as
|
||||||
the Free Software Foundation; either version 2 of the License, or
|
published by the Free Software Foundation; either version 2.1 of
|
||||||
(at your option) any later version.
|
the License, or (at your option) any later version.
|
||||||
|
|
||||||
GPGME is distributed in the hope that it will be useful, but
|
GPGME is distributed in the hope that it will be useful, but
|
||||||
WITHOUT ANY WARRANTY; without even the implied warranty of
|
WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||||
General Public License for more details.
|
Lesser General Public License for more details.
|
||||||
|
|
||||||
You should have received a copy of the GNU General Public License
|
You should have received a copy of the GNU Lesser General Public
|
||||||
along with GPGME; if not, write to the Free Software Foundation,
|
License along with this program; if not, write to the Free Software
|
||||||
Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
|
Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
|
||||||
|
02111-1307, USA. */
|
||||||
|
|
||||||
#if HAVE_CONFIG_H
|
#if HAVE_CONFIG_H
|
||||||
#include <config.h>
|
#include <config.h>
|
||||||
|
@ -4,18 +4,19 @@
|
|||||||
This file is part of GPGME.
|
This file is part of GPGME.
|
||||||
|
|
||||||
GPGME is free software; you can redistribute it and/or modify it
|
GPGME is free software; you can redistribute it and/or modify it
|
||||||
under the terms of the GNU General Public License as published by
|
under the terms of the GNU Lesser General Public License as
|
||||||
the Free Software Foundation; either version 2 of the License, or
|
published by the Free Software Foundation; either version 2.1 of
|
||||||
(at your option) any later version.
|
the License, or (at your option) any later version.
|
||||||
|
|
||||||
GPGME is distributed in the hope that it will be useful, but
|
GPGME is distributed in the hope that it will be useful, but
|
||||||
WITHOUT ANY WARRANTY; without even the implied warranty of
|
WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||||
General Public License for more details.
|
Lesser General Public License for more details.
|
||||||
|
|
||||||
You should have received a copy of the GNU General Public License
|
You should have received a copy of the GNU Lesser General Public
|
||||||
along with GPGME; if not, write to the Free Software Foundation,
|
License along with this program; if not, write to the Free Software
|
||||||
Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
|
Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
|
||||||
|
02111-1307, USA. */
|
||||||
|
|
||||||
#if HAVE_CONFIG_H
|
#if HAVE_CONFIG_H
|
||||||
#include <config.h>
|
#include <config.h>
|
||||||
|
@ -1,21 +1,22 @@
|
|||||||
/* data-fd.c - A file descripor based data object.
|
/* data-fd.c - A file descripor based data object.
|
||||||
Copyright (C) 2002 g10 Code GmbH
|
Copyright (C) 2002, 2004 g10 Code GmbH
|
||||||
|
|
||||||
This file is part of GPGME.
|
This file is part of GPGME.
|
||||||
|
|
||||||
GPGME is free software; you can redistribute it and/or modify it
|
GPGME is free software; you can redistribute it and/or modify it
|
||||||
under the terms of the GNU General Public License as published by
|
under the terms of the GNU Lesser General Public License as
|
||||||
the Free Software Foundation; either version 2 of the License, or
|
published by the Free Software Foundation; either version 2.1 of
|
||||||
(at your option) any later version.
|
the License, or (at your option) any later version.
|
||||||
|
|
||||||
GPGME is distributed in the hope that it will be useful, but
|
GPGME is distributed in the hope that it will be useful, but
|
||||||
WITHOUT ANY WARRANTY; without even the implied warranty of
|
WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||||
General Public License for more details.
|
Lesser General Public License for more details.
|
||||||
|
|
||||||
You should have received a copy of the GNU General Public License
|
You should have received a copy of the GNU Lesser General Public
|
||||||
along with GPGME; if not, write to the Free Software Foundation,
|
License along with this program; if not, write to the Free Software
|
||||||
Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
|
Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
|
||||||
|
02111-1307, USA. */
|
||||||
|
|
||||||
#if HAVE_CONFIG_H
|
#if HAVE_CONFIG_H
|
||||||
#include <config.h>
|
#include <config.h>
|
||||||
|
@ -1,21 +1,22 @@
|
|||||||
/* data-mem.c - A memory based data object.
|
/* data-mem.c - A memory based data object.
|
||||||
Copyright (C) 2002, 2003 g10 Code GmbH
|
Copyright (C) 2002, 2003, 2004 g10 Code GmbH
|
||||||
|
|
||||||
This file is part of GPGME.
|
This file is part of GPGME.
|
||||||
|
|
||||||
GPGME is free software; you can redistribute it and/or modify it
|
GPGME is free software; you can redistribute it and/or modify it
|
||||||
under the terms of the GNU General Public License as published by
|
under the terms of the GNU Lesser General Public License as
|
||||||
the Free Software Foundation; either version 2 of the License, or
|
published by the Free Software Foundation; either version 2.1 of
|
||||||
(at your option) any later version.
|
the License, or (at your option) any later version.
|
||||||
|
|
||||||
GPGME is distributed in the hope that it will be useful, but
|
GPGME is distributed in the hope that it will be useful, but
|
||||||
WITHOUT ANY WARRANTY; without even the implied warranty of
|
WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||||
General Public License for more details.
|
Lesser General Public License for more details.
|
||||||
|
|
||||||
You should have received a copy of the GNU General Public License
|
You should have received a copy of the GNU Lesser General Public
|
||||||
along with GPGME; if not, write to the Free Software Foundation,
|
License along with this program; if not, write to the Free Software
|
||||||
Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
|
Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
|
||||||
|
02111-1307, USA. */
|
||||||
|
|
||||||
#if HAVE_CONFIG_H
|
#if HAVE_CONFIG_H
|
||||||
#include <config.h>
|
#include <config.h>
|
||||||
|
@ -4,18 +4,19 @@
|
|||||||
This file is part of GPGME.
|
This file is part of GPGME.
|
||||||
|
|
||||||
GPGME is free software; you can redistribute it and/or modify it
|
GPGME is free software; you can redistribute it and/or modify it
|
||||||
under the terms of the GNU General Public License as published by
|
under the terms of the GNU Lesser General Public License as
|
||||||
the Free Software Foundation; either version 2 of the License, or
|
published by the Free Software Foundation; either version 2.1 of
|
||||||
(at your option) any later version.
|
the License, or (at your option) any later version.
|
||||||
|
|
||||||
GPGME is distributed in the hope that it will be useful, but
|
GPGME is distributed in the hope that it will be useful, but
|
||||||
WITHOUT ANY WARRANTY; without even the implied warranty of
|
WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||||
General Public License for more details.
|
Lesser General Public License for more details.
|
||||||
|
|
||||||
You should have received a copy of the GNU General Public License
|
You should have received a copy of the GNU Lesser General Public
|
||||||
along with GPGME; if not, write to the Free Software Foundation,
|
License along with this program; if not, write to the Free Software
|
||||||
Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
|
Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
|
||||||
|
02111-1307, USA. */
|
||||||
|
|
||||||
#if HAVE_CONFIG_H
|
#if HAVE_CONFIG_H
|
||||||
#include <config.h>
|
#include <config.h>
|
||||||
|
@ -1,27 +1,29 @@
|
|||||||
/* data-user.c - A user callback based data object.
|
/* data-user.c - A user callback based data object.
|
||||||
Copyright (C) 2002 g10 Code GmbH
|
Copyright (C) 2002, 2004, 2005 g10 Code GmbH
|
||||||
|
|
||||||
This file is part of GPGME.
|
This file is part of GPGME.
|
||||||
|
|
||||||
GPGME is free software; you can redistribute it and/or modify it
|
GPGME is free software; you can redistribute it and/or modify it
|
||||||
under the terms of the GNU General Public License as published by
|
under the terms of the GNU Lesser General Public License as
|
||||||
the Free Software Foundation; either version 2 of the License, or
|
published by the Free Software Foundation; either version 2.1 of
|
||||||
(at your option) any later version.
|
the License, or (at your option) any later version.
|
||||||
|
|
||||||
GPGME is distributed in the hope that it will be useful, but
|
GPGME is distributed in the hope that it will be useful, but
|
||||||
WITHOUT ANY WARRANTY; without even the implied warranty of
|
WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||||
General Public License for more details.
|
Lesser General Public License for more details.
|
||||||
|
|
||||||
You should have received a copy of the GNU General Public License
|
You should have received a copy of the GNU Lesser General Public
|
||||||
along with GPGME; if not, write to the Free Software Foundation,
|
License along with this program; if not, write to the Free Software
|
||||||
Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
|
Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
|
||||||
|
02111-1307, USA. */
|
||||||
|
|
||||||
#if HAVE_CONFIG_H
|
#if HAVE_CONFIG_H
|
||||||
#include <config.h>
|
#include <config.h>
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#include <sys/types.h>
|
#include <sys/types.h>
|
||||||
|
#include <errno.h>
|
||||||
|
|
||||||
#include "data.h"
|
#include "data.h"
|
||||||
|
|
||||||
@ -29,6 +31,9 @@
|
|||||||
static ssize_t
|
static ssize_t
|
||||||
user_read (gpgme_data_t dh, void *buffer, size_t size)
|
user_read (gpgme_data_t dh, void *buffer, size_t size)
|
||||||
{
|
{
|
||||||
|
if (!dh->data.user.cbs->read)
|
||||||
|
return EBADF;
|
||||||
|
|
||||||
return (*dh->data.user.cbs->read) (dh->data.user.handle, buffer, size);
|
return (*dh->data.user.cbs->read) (dh->data.user.handle, buffer, size);
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -36,6 +41,9 @@ user_read (gpgme_data_t dh, void *buffer, size_t size)
|
|||||||
static ssize_t
|
static ssize_t
|
||||||
user_write (gpgme_data_t dh, const void *buffer, size_t size)
|
user_write (gpgme_data_t dh, const void *buffer, size_t size)
|
||||||
{
|
{
|
||||||
|
if (!dh->data.user.cbs->write)
|
||||||
|
return EBADF;
|
||||||
|
|
||||||
return (*dh->data.user.cbs->write) (dh->data.user.handle, buffer, size);
|
return (*dh->data.user.cbs->write) (dh->data.user.handle, buffer, size);
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -43,6 +51,9 @@ user_write (gpgme_data_t dh, const void *buffer, size_t size)
|
|||||||
static off_t
|
static off_t
|
||||||
user_seek (gpgme_data_t dh, off_t offset, int whence)
|
user_seek (gpgme_data_t dh, off_t offset, int whence)
|
||||||
{
|
{
|
||||||
|
if (!dh->data.user.cbs->seek)
|
||||||
|
return EBADF;
|
||||||
|
|
||||||
return (*dh->data.user.cbs->seek) (dh->data.user.handle, offset, whence);
|
return (*dh->data.user.cbs->seek) (dh->data.user.handle, offset, whence);
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -50,7 +61,8 @@ user_seek (gpgme_data_t dh, off_t offset, int whence)
|
|||||||
static void
|
static void
|
||||||
user_release (gpgme_data_t dh)
|
user_release (gpgme_data_t dh)
|
||||||
{
|
{
|
||||||
(*dh->data.user.cbs->release) (dh->data.user.handle);
|
if (dh->data.user.cbs->release)
|
||||||
|
(*dh->data.user.cbs->release) (dh->data.user.handle);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
21
gpgme/data.c
21
gpgme/data.c
@ -1,21 +1,22 @@
|
|||||||
/* data.c - An abstraction for data objects.
|
/* data.c - An abstraction for data objects.
|
||||||
Copyright (C) 2002, 2003 g10 Code GmbH
|
Copyright (C) 2002, 2003, 2004 g10 Code GmbH
|
||||||
|
|
||||||
This file is part of GPGME.
|
This file is part of GPGME.
|
||||||
|
|
||||||
GPGME is free software; you can redistribute it and/or modify it
|
GPGME is free software; you can redistribute it and/or modify it
|
||||||
under the terms of the GNU General Public License as published by
|
under the terms of the GNU Lesser General Public License as
|
||||||
the Free Software Foundation; either version 2 of the License, or
|
published by the Free Software Foundation; either version 2.1 of
|
||||||
(at your option) any later version.
|
the License, or (at your option) any later version.
|
||||||
|
|
||||||
GPGME is distributed in the hope that it will be useful, but
|
GPGME is distributed in the hope that it will be useful, but
|
||||||
WITHOUT ANY WARRANTY; without even the implied warranty of
|
WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||||
General Public License for more details.
|
Lesser General Public License for more details.
|
||||||
|
|
||||||
You should have received a copy of the GNU General Public License
|
You should have received a copy of the GNU Lesser General Public
|
||||||
along with GPGME; if not, write to the Free Software Foundation,
|
License along with this program; if not, write to the Free Software
|
||||||
Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307 USA. */
|
Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
|
||||||
|
02111-1307, USA. */
|
||||||
|
|
||||||
#if HAVE_CONFIG_H
|
#if HAVE_CONFIG_H
|
||||||
#include <config.h>
|
#include <config.h>
|
||||||
|
21
gpgme/data.h
21
gpgme/data.h
@ -1,21 +1,22 @@
|
|||||||
/* data.h - Internal data object abstraction interface.
|
/* data.h - Internal data object abstraction interface.
|
||||||
Copyright (C) 2002 g10 Code GmbH
|
Copyright (C) 2002, 2004 g10 Code GmbH
|
||||||
|
|
||||||
This file is part of GPGME.
|
This file is part of GPGME.
|
||||||
|
|
||||||
GPGME is free software; you can redistribute it and/or modify it
|
GPGME is free software; you can redistribute it and/or modify it
|
||||||
under the terms of the GNU General Public License as published by
|
under the terms of the GNU Lesser General Public License as
|
||||||
the Free Software Foundation; either version 2 of the License, or
|
published by the Free Software Foundation; either version 2.1 of
|
||||||
(at your option) any later version.
|
the License, or (at your option) any later version.
|
||||||
|
|
||||||
GPGME is distributed in the hope that it will be useful, but
|
GPGME is distributed in the hope that it will be useful, but
|
||||||
WITHOUT ANY WARRANTY; without even the implied warranty of
|
WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||||
General Public License for more details.
|
Lesser General Public License for more details.
|
||||||
|
|
||||||
You should have received a copy of the GNU General Public License
|
You should have received a copy of the GNU Lesser General Public
|
||||||
along with GPGME; if not, write to the Free Software Foundation,
|
License along with this program; if not, write to the Free Software
|
||||||
Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
|
Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
|
||||||
|
02111-1307, USA. */
|
||||||
|
|
||||||
#ifndef DATA_H
|
#ifndef DATA_H
|
||||||
#define DATA_H
|
#define DATA_H
|
||||||
|
@ -1,22 +1,23 @@
|
|||||||
/* debug.c - helpful output in desperate situations
|
/* debug.c - helpful output in desperate situations
|
||||||
Copyright (C) 2000 Werner Koch (dd9jn)
|
Copyright (C) 2000 Werner Koch (dd9jn)
|
||||||
Copyright (C) 2001, 2002, 2003 g10 Code GmbH
|
Copyright (C) 2001, 2002, 2003, 2004 g10 Code GmbH
|
||||||
|
|
||||||
This file is part of GPGME.
|
This file is part of GPGME.
|
||||||
|
|
||||||
GPGME is free software; you can redistribute it and/or modify it
|
GPGME is free software; you can redistribute it and/or modify it
|
||||||
under the terms of the GNU General Public License as published by
|
under the terms of the GNU Lesser General Public License as
|
||||||
the Free Software Foundation; either version 2 of the License, or
|
published by the Free Software Foundation; either version 2.1 of
|
||||||
(at your option) any later version.
|
the License, or (at your option) any later version.
|
||||||
|
|
||||||
GPGME is distributed in the hope that it will be useful, but
|
GPGME is distributed in the hope that it will be useful, but
|
||||||
WITHOUT ANY WARRANTY; without even the implied warranty of
|
WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||||
General Public License for more details.
|
Lesser General Public License for more details.
|
||||||
|
|
||||||
You should have received a copy of the GNU General Public License
|
You should have received a copy of the GNU Lesser General Public
|
||||||
along with GPGME; if not, write to the Free Software Foundation,
|
License along with this program; if not, write to the Free Software
|
||||||
Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
|
Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
|
||||||
|
02111-1307, USA. */
|
||||||
|
|
||||||
#if HAVE_CONFIG_H
|
#if HAVE_CONFIG_H
|
||||||
#include <config.h>
|
#include <config.h>
|
||||||
|
@ -1,22 +1,22 @@
|
|||||||
/* debug.h - interface to debugging functions
|
/* debug.h - interface to debugging functions
|
||||||
* Copyright (C) 2002 g10 Code GmbH
|
Copyright (C) 2002, 2004 g10 Code GmbH
|
||||||
*
|
|
||||||
* This file is part of GPGME.
|
This file is part of GPGME.
|
||||||
*
|
|
||||||
* GPGME is free software; you can redistribute it and/or modify
|
GPGME is free software; you can redistribute it and/or modify it
|
||||||
* it under the terms of the GNU General Public License as published by
|
under the terms of the GNU Lesser General Public License as
|
||||||
* the Free Software Foundation; either version 2 of the License, or
|
published by the Free Software Foundation; either version 2.1 of
|
||||||
* (at your option) any later version.
|
the License, or (at your option) any later version.
|
||||||
*
|
|
||||||
* GPGME is distributed in the hope that it will be useful,
|
GPGME is distributed in the hope that it will be useful, but
|
||||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||||
* GNU General Public License for more details.
|
Lesser General Public License for more details.
|
||||||
*
|
|
||||||
* You should have received a copy of the GNU General Public License
|
You should have received a copy of the GNU Lesser General Public
|
||||||
* along with this program; if not, write to the Free Software
|
License along with this program; if not, write to the Free Software
|
||||||
* Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA
|
Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
|
||||||
*/
|
02111-1307, USA. */
|
||||||
|
|
||||||
#ifndef DEBUG_H
|
#ifndef DEBUG_H
|
||||||
#define DEBUG_H
|
#define DEBUG_H
|
||||||
|
@ -1,22 +1,23 @@
|
|||||||
/* decrypt-verify.c - Decrypt and verify function.
|
/* decrypt-verify.c - Decrypt and verify function.
|
||||||
Copyright (C) 2000 Werner Koch (dd9jn)
|
Copyright (C) 2000 Werner Koch (dd9jn)
|
||||||
Copyright (C) 2001, 2002, 2003 g10 Code GmbH
|
Copyright (C) 2001, 2002, 2003, 2004 g10 Code GmbH
|
||||||
|
|
||||||
This file is part of GPGME.
|
This file is part of GPGME.
|
||||||
|
|
||||||
GPGME is free software; you can redistribute it and/or modify it
|
GPGME is free software; you can redistribute it and/or modify it
|
||||||
under the terms of the GNU General Public License as published by
|
under the terms of the GNU Lesser General Public License as
|
||||||
the Free Software Foundation; either version 2 of the License, or
|
published by the Free Software Foundation; either version 2.1 of
|
||||||
(at your option) any later version.
|
the License, or (at your option) any later version.
|
||||||
|
|
||||||
GPGME is distributed in the hope that it will be useful, but
|
GPGME is distributed in the hope that it will be useful, but
|
||||||
WITHOUT ANY WARRANTY; without even the implied warranty of
|
WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||||
General Public License for more details.
|
Lesser General Public License for more details.
|
||||||
|
|
||||||
You should have received a copy of the GNU General Public License
|
You should have received a copy of the GNU Lesser General Public
|
||||||
along with GPGME; if not, write to the Free Software Foundation,
|
License along with this program; if not, write to the Free Software
|
||||||
Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
|
Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
|
||||||
|
02111-1307, USA. */
|
||||||
|
|
||||||
#if HAVE_CONFIG_H
|
#if HAVE_CONFIG_H
|
||||||
#include <config.h>
|
#include <config.h>
|
||||||
|
@ -5,18 +5,19 @@
|
|||||||
This file is part of GPGME.
|
This file is part of GPGME.
|
||||||
|
|
||||||
GPGME is free software; you can redistribute it and/or modify it
|
GPGME is free software; you can redistribute it and/or modify it
|
||||||
under the terms of the GNU General Public License as published by
|
under the terms of the GNU Lesser General Public License as
|
||||||
the Free Software Foundation; either version 2 of the License, or
|
published by the Free Software Foundation; either version 2.1 of
|
||||||
(at your option) any later version.
|
the License, or (at your option) any later version.
|
||||||
|
|
||||||
GPGME is distributed in the hope that it will be useful, but
|
GPGME is distributed in the hope that it will be useful, but
|
||||||
WITHOUT ANY WARRANTY; without even the implied warranty of
|
WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||||
General Public License for more details.
|
Lesser General Public License for more details.
|
||||||
|
|
||||||
You should have received a copy of the GNU General Public License
|
You should have received a copy of the GNU Lesser General Public
|
||||||
along with GPGME; if not, write to the Free Software Foundation,
|
License along with this program; if not, write to the Free Software
|
||||||
Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
|
Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
|
||||||
|
02111-1307, USA. */
|
||||||
|
|
||||||
#if HAVE_CONFIG_H
|
#if HAVE_CONFIG_H
|
||||||
#include <config.h>
|
#include <config.h>
|
||||||
|
@ -1,21 +1,22 @@
|
|||||||
/* delete.c - Delete a key.
|
/* delete.c - Delete a key.
|
||||||
Copyright (C) 2001, 2002, 2003 g10 Code GmbH
|
Copyright (C) 2001, 2002, 2003, 2004 g10 Code GmbH
|
||||||
|
|
||||||
This file is part of GPGME.
|
This file is part of GPGME.
|
||||||
|
|
||||||
GPGME is free software; you can redistribute it and/or modify it
|
GPGME is free software; you can redistribute it and/or modify it
|
||||||
under the terms of the GNU General Public License as published by
|
under the terms of the GNU Lesser General Public License as
|
||||||
the Free Software Foundation; either version 2 of the License, or
|
published by the Free Software Foundation; either version 2.1 of
|
||||||
(at your option) any later version.
|
the License, or (at your option) any later version.
|
||||||
|
|
||||||
GPGME is distributed in the hope that it will be useful, but
|
GPGME is distributed in the hope that it will be useful, but
|
||||||
WITHOUT ANY WARRANTY; without even the implied warranty of
|
WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||||
General Public License for more details.
|
Lesser General Public License for more details.
|
||||||
|
|
||||||
You should have received a copy of the GNU General Public License
|
You should have received a copy of the GNU Lesser General Public
|
||||||
along with GPGME; if not, write to the Free Software Foundation,
|
License along with this program; if not, write to the Free Software
|
||||||
Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
|
Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
|
||||||
|
02111-1307, USA. */
|
||||||
|
|
||||||
#if HAVE_CONFIG_H
|
#if HAVE_CONFIG_H
|
||||||
#include <config.h>
|
#include <config.h>
|
||||||
|
21
gpgme/edit.c
21
gpgme/edit.c
@ -1,21 +1,22 @@
|
|||||||
/* edit.c - Key edit function.
|
/* edit.c - Key edit function.
|
||||||
Copyright (C) 2002, 2003 g10 Code GmbH
|
Copyright (C) 2002, 2003, 2004 g10 Code GmbH
|
||||||
|
|
||||||
This file is part of GPGME.
|
This file is part of GPGME.
|
||||||
|
|
||||||
GPGME is free software; you can redistribute it and/or modify it
|
GPGME is free software; you can redistribute it and/or modify it
|
||||||
under the terms of the GNU General Public License as published by
|
under the terms of the GNU Lesser General Public License as
|
||||||
the Free Software Foundation; either version 2 of the License, or
|
published by the Free Software Foundation; either version 2.1 of
|
||||||
(at your option) any later version.
|
the License, or (at your option) any later version.
|
||||||
|
|
||||||
GPGME is distributed in the hope that it will be useful, but
|
GPGME is distributed in the hope that it will be useful, but
|
||||||
WITHOUT ANY WARRANTY; without even the implied warranty of
|
WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||||
General Public License for more details.
|
Lesser General Public License for more details.
|
||||||
|
|
||||||
You should have received a copy of the GNU General Public License
|
You should have received a copy of the GNU Lesser General Public
|
||||||
along with GPGME; if not, write to the Free Software Foundation,
|
License along with this program; if not, write to the Free Software
|
||||||
Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
|
Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
|
||||||
|
02111-1307, USA. */
|
||||||
|
|
||||||
#if HAVE_CONFIG_H
|
#if HAVE_CONFIG_H
|
||||||
#include <config.h>
|
#include <config.h>
|
||||||
|
@ -1,22 +1,23 @@
|
|||||||
/* encrypt-sign.c - encrypt and verify functions
|
/* encrypt-sign.c - encrypt and verify functions
|
||||||
Copyright (C) 2000 Werner Koch (dd9jn)
|
Copyright (C) 2000 Werner Koch (dd9jn)
|
||||||
Copyright (C) 2001, 2002, 2003 g10 Code GmbH
|
Copyright (C) 2001, 2002, 2003, 2004 g10 Code GmbH
|
||||||
|
|
||||||
This file is part of GPGME.
|
This file is part of GPGME.
|
||||||
|
|
||||||
GPGME is free software; you can redistribute it and/or modify it
|
GPGME is free software; you can redistribute it and/or modify it
|
||||||
under the terms of the GNU General Public License as published by
|
under the terms of the GNU Lesser General Public License as
|
||||||
the Free Software Foundation; either version 2 of the License, or
|
published by the Free Software Foundation; either version 2.1 of
|
||||||
(at your option) any later version.
|
the License, or (at your option) any later version.
|
||||||
|
|
||||||
GPGME is distributed in the hope that it will be useful, but
|
GPGME is distributed in the hope that it will be useful, but
|
||||||
WITHOUT ANY WARRANTY; without even the implied warranty of
|
WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||||
General Public License for more details.
|
Lesser General Public License for more details.
|
||||||
|
|
||||||
You should have received a copy of the GNU General Public License
|
You should have received a copy of the GNU Lesser General Public
|
||||||
along with GPGME; if not, write to the Free Software Foundation,
|
License along with this program; if not, write to the Free Software
|
||||||
Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
|
Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
|
||||||
|
02111-1307, USA. */
|
||||||
|
|
||||||
#if HAVE_CONFIG_H
|
#if HAVE_CONFIG_H
|
||||||
#include <config.h>
|
#include <config.h>
|
||||||
|
@ -1,22 +1,23 @@
|
|||||||
/* encrypt.c - Encrypt function.
|
/* encrypt.c - Encrypt function.
|
||||||
Copyright (C) 2000 Werner Koch (dd9jn)
|
Copyright (C) 2000 Werner Koch (dd9jn)
|
||||||
Copyright (C) 2001, 2002, 2003 g10 Code GmbH
|
Copyright (C) 2001, 2002, 2003, 2004 g10 Code GmbH
|
||||||
|
|
||||||
This file is part of GPGME.
|
This file is part of GPGME.
|
||||||
|
|
||||||
GPGME is free software; you can redistribute it and/or modify it
|
GPGME is free software; you can redistribute it and/or modify it
|
||||||
under the terms of the GNU General Public License as published by
|
under the terms of the GNU Lesser General Public License as
|
||||||
the Free Software Foundation; either version 2 of the License, or
|
published by the Free Software Foundation; either version 2.1 of
|
||||||
(at your option) any later version.
|
the License, or (at your option) any later version.
|
||||||
|
|
||||||
GPGME is distributed in the hope that it will be useful, but
|
GPGME is distributed in the hope that it will be useful, but
|
||||||
WITHOUT ANY WARRANTY; without even the implied warranty of
|
WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||||
General Public License for more details.
|
Lesser General Public License for more details.
|
||||||
|
|
||||||
You should have received a copy of the GNU General Public License
|
You should have received a copy of the GNU Lesser General Public
|
||||||
along with GPGME; if not, write to the Free Software Foundation,
|
License along with this program; if not, write to the Free Software
|
||||||
Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
|
Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
|
||||||
|
02111-1307, USA. */
|
||||||
|
|
||||||
#if HAVE_CONFIG_H
|
#if HAVE_CONFIG_H
|
||||||
#include <config.h>
|
#include <config.h>
|
||||||
|
@ -1,21 +1,22 @@
|
|||||||
/* engine-backend.h - A crypto backend for the engine interface.
|
/* engine-backend.h - A crypto backend for the engine interface.
|
||||||
Copyright (C) 2002, 2003 g10 Code GmbH
|
Copyright (C) 2002, 2003, 2004 g10 Code GmbH
|
||||||
|
|
||||||
This file is part of GPGME.
|
This file is part of GPGME.
|
||||||
|
|
||||||
GPGME is free software; you can redistribute it and/or modify it
|
GPGME is free software; you can redistribute it and/or modify it
|
||||||
under the terms of the GNU General Public License as published by
|
under the terms of the GNU Lesser General Public License as
|
||||||
the Free Software Foundation; either version 2 of the License, or
|
published by the Free Software Foundation; either version 2.1 of
|
||||||
(at your option) any later version.
|
the License, or (at your option) any later version.
|
||||||
|
|
||||||
GPGME is distributed in the hope that it will be useful, but
|
GPGME is distributed in the hope that it will be useful, but
|
||||||
WITHOUT ANY WARRANTY; without even the implied warranty of
|
WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||||
General Public License for more details.
|
Lesser General Public License for more details.
|
||||||
|
|
||||||
You should have received a copy of the GNU General Public License
|
You should have received a copy of the GNU Lesser General Public
|
||||||
along with GPGME; if not, write to the Free Software Foundation,
|
License along with this program; if not, write to the Free Software
|
||||||
Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
|
Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
|
||||||
|
02111-1307, USA. */
|
||||||
|
|
||||||
#ifndef ENGINE_BACKEND_H
|
#ifndef ENGINE_BACKEND_H
|
||||||
#define ENGINE_BACKEND_H
|
#define ENGINE_BACKEND_H
|
||||||
|
@ -1,22 +1,23 @@
|
|||||||
/* engine-gpgsm.c - GpgSM engine.
|
/* engine-gpgsm.c - GpgSM engine.
|
||||||
Copyright (C) 2000 Werner Koch (dd9jn)
|
Copyright (C) 2000 Werner Koch (dd9jn)
|
||||||
Copyright (C) 2001, 2002, 2003, 2004 g10 Code GmbH
|
Copyright (C) 2001, 2002, 2003, 2004, 2005 g10 Code GmbH
|
||||||
|
|
||||||
This file is part of GPGME.
|
This file is part of GPGME.
|
||||||
|
|
||||||
GPGME is free software; you can redistribute it and/or modify it
|
GPGME is free software; you can redistribute it and/or modify it
|
||||||
under the terms of the GNU General Public License as published by
|
under the terms of the GNU Lesser General Public License as
|
||||||
the Free Software Foundation; either version 2 of the License, or
|
published by the Free Software Foundation; either version 2.1 of
|
||||||
(at your option) any later version.
|
the License, or (at your option) any later version.
|
||||||
|
|
||||||
GPGME is distributed in the hope that it will be useful, but
|
GPGME is distributed in the hope that it will be useful, but
|
||||||
WITHOUT ANY WARRANTY; without even the implied warranty of
|
WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||||
General Public License for more details.
|
Lesser General Public License for more details.
|
||||||
|
|
||||||
You should have received a copy of the GNU General Public License
|
You should have received a copy of the GNU Lesser General Public
|
||||||
along with GPGME; if not, write to the Free Software Foundation,
|
License along with this program; if not, write to the Free Software
|
||||||
Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
|
Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
|
||||||
|
02111-1307, USA. */
|
||||||
|
|
||||||
#if HAVE_CONFIG_H
|
#if HAVE_CONFIG_H
|
||||||
#include <config.h>
|
#include <config.h>
|
||||||
@ -1432,19 +1433,27 @@ gpgsm_sign (void *engine, gpgme_data_t in, gpgme_data_t out,
|
|||||||
if (!gpgsm)
|
if (!gpgsm)
|
||||||
return gpg_error (GPG_ERR_INV_VALUE);
|
return gpg_error (GPG_ERR_INV_VALUE);
|
||||||
|
|
||||||
if (asprintf (&assuan_cmd, "OPTION include-certs %i", include_certs) < 0)
|
|
||||||
return gpg_error_from_errno (errno);
|
|
||||||
err = gpgsm_assuan_simple_command (gpgsm->assuan_ctx, assuan_cmd, NULL,NULL);
|
|
||||||
free (assuan_cmd);
|
|
||||||
if (err)
|
|
||||||
return err;
|
|
||||||
|
|
||||||
/* We must send a reset because we need to reset the list of
|
/* We must send a reset because we need to reset the list of
|
||||||
signers. Note that RESET does not reset OPTION commands. */
|
signers. Note that RESET does not reset OPTION commands. */
|
||||||
err = gpgsm_assuan_simple_command (gpgsm->assuan_ctx, "RESET", NULL, NULL);
|
err = gpgsm_assuan_simple_command (gpgsm->assuan_ctx, "RESET", NULL, NULL);
|
||||||
if (err)
|
if (err)
|
||||||
return err;
|
return err;
|
||||||
|
|
||||||
|
if (include_certs != GPGME_INCLUDE_CERTS_DEFAULT)
|
||||||
|
{
|
||||||
|
/* FIXME: Make sure that if we run multiple operations, that we
|
||||||
|
can reset any previously set value in case the default is
|
||||||
|
requested. */
|
||||||
|
|
||||||
|
if (asprintf (&assuan_cmd, "OPTION include-certs %i", include_certs) < 0)
|
||||||
|
return gpg_error_from_errno (errno);
|
||||||
|
err = gpgsm_assuan_simple_command (gpgsm->assuan_ctx, assuan_cmd,
|
||||||
|
NULL, NULL);
|
||||||
|
free (assuan_cmd);
|
||||||
|
if (err)
|
||||||
|
return err;
|
||||||
|
}
|
||||||
|
|
||||||
for (i = 0; (key = gpgme_signers_enum (ctx, i)); i++)
|
for (i = 0; (key = gpgme_signers_enum (ctx, i)); i++)
|
||||||
{
|
{
|
||||||
const char *s = key->subkeys ? key->subkeys->fpr : NULL;
|
const char *s = key->subkeys ? key->subkeys->fpr : NULL;
|
||||||
|
@ -1,22 +1,23 @@
|
|||||||
/* engine.c - GPGME engine support.
|
/* engine.c - GPGME engine support.
|
||||||
Copyright (C) 2000 Werner Koch (dd9jn)
|
Copyright (C) 2000 Werner Koch (dd9jn)
|
||||||
Copyright (C) 2001, 2002, 2003 g10 Code GmbH
|
Copyright (C) 2001, 2002, 2003, 2004 g10 Code GmbH
|
||||||
|
|
||||||
This file is part of GPGME.
|
This file is part of GPGME.
|
||||||
|
|
||||||
GPGME is free software; you can redistribute it and/or modify it
|
GPGME is free software; you can redistribute it and/or modify it
|
||||||
under the terms of the GNU General Public License as published by
|
under the terms of the GNU Lesser General Public License as
|
||||||
the Free Software Foundation; either version 2 of the License, or
|
published by the Free Software Foundation; either version 2.1 of
|
||||||
(at your option) any later version.
|
the License, or (at your option) any later version.
|
||||||
|
|
||||||
GPGME is distributed in the hope that it will be useful, but
|
GPGME is distributed in the hope that it will be useful, but
|
||||||
WITHOUT ANY WARRANTY; without even the implied warranty of
|
WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||||
General Public License for more details.
|
Lesser General Public License for more details.
|
||||||
|
|
||||||
You should have received a copy of the GNU General Public License
|
You should have received a copy of the GNU Lesser General Public
|
||||||
along with GPGME; if not, write to the Free Software Foundation,
|
License along with this program; if not, write to the Free Software
|
||||||
Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
|
Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
|
||||||
|
02111-1307, USA. */
|
||||||
|
|
||||||
#ifdef HAVE_CONFIG_H
|
#ifdef HAVE_CONFIG_H
|
||||||
#include <config.h>
|
#include <config.h>
|
||||||
|
@ -1,22 +1,23 @@
|
|||||||
/* engine.h - GPGME engine interface.
|
/* engine.h - GPGME engine interface.
|
||||||
Copyright (C) 2000 Werner Koch (dd9jn)
|
Copyright (C) 2000 Werner Koch (dd9jn)
|
||||||
Copyright (C) 2001, 2002, 2003 g10 Code GmbH
|
Copyright (C) 2001, 2002, 2003, 2004 g10 Code GmbH
|
||||||
|
|
||||||
This file is part of GPGME.
|
This file is part of GPGME.
|
||||||
|
|
||||||
GPGME is free software; you can redistribute it and/or modify it
|
GPGME is free software; you can redistribute it and/or modify it
|
||||||
under the terms of the GNU General Public License as published by
|
under the terms of the GNU Lesser General Public License as
|
||||||
the Free Software Foundation; either version 2 of the License, or
|
published by the Free Software Foundation; either version 2.1 of
|
||||||
(at your option) any later version.
|
the License, or (at your option) any later version.
|
||||||
|
|
||||||
GPGME is distributed in the hope that it will be useful, but
|
GPGME is distributed in the hope that it will be useful, but
|
||||||
WITHOUT ANY WARRANTY; without even the implied warranty of
|
WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||||
General Public License for more details.
|
Lesser General Public License for more details.
|
||||||
|
|
||||||
You should have received a copy of the GNU General Public License
|
You should have received a copy of the GNU Lesser General Public
|
||||||
along with GPGME; if not, write to the Free Software Foundation,
|
License along with this program; if not, write to the Free Software
|
||||||
Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
|
Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
|
||||||
|
02111-1307, USA. */
|
||||||
|
|
||||||
#ifndef ENGINE_H
|
#ifndef ENGINE_H
|
||||||
#define ENGINE_H
|
#define ENGINE_H
|
||||||
|
@ -1,21 +1,22 @@
|
|||||||
/* error.c - Error handling for GPGME.
|
/* error.c - Error handling for GPGME.
|
||||||
Copyright (C) 2003 g10 Code GmbH
|
Copyright (C) 2003, 2004 g10 Code GmbH
|
||||||
|
|
||||||
This file is part of GPGME.
|
This file is part of GPGME.
|
||||||
|
|
||||||
GPGME is free software; you can redistribute it and/or modify it
|
GPGME is free software; you can redistribute it and/or modify it
|
||||||
under the terms of the GNU General Public License as published by
|
under the terms of the GNU Lesser General Public License as
|
||||||
the Free Software Foundation; either version 2 of the License, or
|
published by the Free Software Foundation; either version 2.1 of
|
||||||
(at your option) any later version.
|
the License, or (at your option) any later version.
|
||||||
|
|
||||||
GPGME is distributed in the hope that it will be useful, but
|
GPGME is distributed in the hope that it will be useful, but
|
||||||
WITHOUT ANY WARRANTY; without even the implied warranty of
|
WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||||
General Public License for more details.
|
Lesser General Public License for more details.
|
||||||
|
|
||||||
You should have received a copy of the GNU General Public License
|
You should have received a copy of the GNU Lesser General Public
|
||||||
along with GPGME; if not, write to the Free Software Foundation,
|
License along with this program; if not, write to the Free Software
|
||||||
Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
|
Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
|
||||||
|
02111-1307, USA. */
|
||||||
|
|
||||||
#if HAVE_CONFIG_H
|
#if HAVE_CONFIG_H
|
||||||
#include <config.h>
|
#include <config.h>
|
||||||
|
@ -1,22 +1,23 @@
|
|||||||
/* export.c - Export a key.
|
/* export.c - Export a key.
|
||||||
Copyright (C) 2000 Werner Koch (dd9jn)
|
Copyright (C) 2000 Werner Koch (dd9jn)
|
||||||
Copyright (C) 2001, 2002, 2003 g10 Code GmbH
|
Copyright (C) 2001, 2002, 2003, 2004 g10 Code GmbH
|
||||||
|
|
||||||
This file is part of GPGME.
|
This file is part of GPGME.
|
||||||
|
|
||||||
GPGME is free software; you can redistribute it and/or modify it
|
GPGME is free software; you can redistribute it and/or modify it
|
||||||
under the terms of the GNU General Public License as published by
|
under the terms of the GNU Lesser General Public License as
|
||||||
the Free Software Foundation; either version 2 of the License, or
|
published by the Free Software Foundation; either version 2.1 of
|
||||||
(at your option) any later version.
|
the License, or (at your option) any later version.
|
||||||
|
|
||||||
GPGME is distributed in the hope that it will be useful, but
|
GPGME is distributed in the hope that it will be useful, but
|
||||||
WITHOUT ANY WARRANTY; without even the implied warranty of
|
WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||||
General Public License for more details.
|
Lesser General Public License for more details.
|
||||||
|
|
||||||
You should have received a copy of the GNU General Public License
|
You should have received a copy of the GNU Lesser General Public
|
||||||
along with GPGME; if not, write to the Free Software Foundation,
|
License along with this program; if not, write to the Free Software
|
||||||
Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
|
Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
|
||||||
|
02111-1307, USA. */
|
||||||
|
|
||||||
#if HAVE_CONFIG_H
|
#if HAVE_CONFIG_H
|
||||||
#include <config.h>
|
#include <config.h>
|
||||||
|
@ -1,22 +1,22 @@
|
|||||||
/* funopen.c - Replacement for funopen.
|
/* funopen.c - Replacement for funopen.
|
||||||
* Copyright (C) 2003 Free Software Foundation, Inc.
|
Copyright (C) 2004 g10 Code GmbH
|
||||||
*
|
|
||||||
* This file is part of GnuPG.
|
This file is part of GPGME
|
||||||
*
|
|
||||||
* GnuPG is free software; you can redistribute it and/or modify
|
GPGME is free software; you can redistribute it and/or modify it
|
||||||
* it under the terms of the GNU General Public License as published by
|
under the terms of the GNU Lesser General Public License as
|
||||||
* the Free Software Foundation; either version 2 of the License, or
|
published by the Free Software Foundation; either version 2.1 of
|
||||||
* (at your option) any later version.
|
the License, or (at your option) any later version.
|
||||||
*
|
|
||||||
* GnuPG is distributed in the hope that it will be useful,
|
GPGME is distributed in the hope that it will be useful, but
|
||||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||||
* GNU General Public License for more details.
|
Lesser General Public License for more details.
|
||||||
*
|
|
||||||
* You should have received a copy of the GNU General Public License
|
You should have received a copy of the GNU Lesser General Public
|
||||||
* along with this program; if not, write to the Free Software
|
License along with this program; if not, write to the Free Software
|
||||||
* Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA
|
Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
|
||||||
*/
|
02111-1307, USA. */
|
||||||
|
|
||||||
#ifdef HAVE_CONFIG_H
|
#ifdef HAVE_CONFIG_H
|
||||||
#include <config.h>
|
#include <config.h>
|
||||||
@ -32,12 +32,11 @@ funopen(const void *cookie, cookie_read_function_t *readfn,
|
|||||||
cookie_close_function_t *closefn)
|
cookie_close_function_t *closefn)
|
||||||
{
|
{
|
||||||
cookie_io_functions_t io = { read: readfn, write: writefn,
|
cookie_io_functions_t io = { read: readfn, write: writefn,
|
||||||
seek: seekfn,
|
seek: seekfn, close: closefn };
|
||||||
close: closefn };
|
|
||||||
|
|
||||||
return fopencookie ((void *) cookie,
|
return fopencookie ((void *) cookie,
|
||||||
readfn ? ( writefn ? "rw" : "r" )
|
readfn ? (writefn ? "rw" : "r")
|
||||||
: ( writefn ? "w" : ""), io);
|
: (writefn ? "w" : ""), io);
|
||||||
}
|
}
|
||||||
#else
|
#else
|
||||||
#error No known way to implement funopen.
|
#error No known way to implement funopen.
|
||||||
|
@ -1,22 +1,23 @@
|
|||||||
/* genkey.c - Key generation.
|
/* genkey.c - Key generation.
|
||||||
Copyright (C) 2000 Werner Koch (dd9jn)
|
Copyright (C) 2000 Werner Koch (dd9jn)
|
||||||
Copyright (C) 2001, 2002, 2003 g10 Code GmbH
|
Copyright (C) 2001, 2002, 2003, 2004 g10 Code GmbH
|
||||||
|
|
||||||
This file is part of GPGME.
|
This file is part of GPGME.
|
||||||
|
|
||||||
GPGME is free software; you can redistribute it and/or modify it
|
GPGME is free software; you can redistribute it and/or modify it
|
||||||
under the terms of the GNU General Public License as published by
|
under the terms of the GNU Lesser General Public License as
|
||||||
the Free Software Foundation; either version 2 of the License, or
|
published by the Free Software Foundation; either version 2.1 of
|
||||||
(at your option) any later version.
|
the License, or (at your option) any later version.
|
||||||
|
|
||||||
GPGME is distributed in the hope that it will be useful, but
|
GPGME is distributed in the hope that it will be useful, but
|
||||||
WITHOUT ANY WARRANTY; without even the implied warranty of
|
WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||||
General Public License for more details.
|
Lesser General Public License for more details.
|
||||||
|
|
||||||
You should have received a copy of the GNU General Public License
|
You should have received a copy of the GNU Lesser General Public
|
||||||
along with GPGME; if not, write to the Free Software Foundation,
|
License along with this program; if not, write to the Free Software
|
||||||
Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
|
Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
|
||||||
|
02111-1307, USA. */
|
||||||
|
|
||||||
#if HAVE_CONFIG_H
|
#if HAVE_CONFIG_H
|
||||||
#include <config.h>
|
#include <config.h>
|
||||||
|
@ -1,21 +1,22 @@
|
|||||||
/* get_env.c - A getenv() replacement.
|
/* get_env.c - A getenv() replacement.
|
||||||
Copyright (C) 2003 g10 Code GmbH
|
Copyright (C) 2003, 2004 g10 Code GmbH
|
||||||
|
|
||||||
This file is part of GPGME.
|
This file is part of GPGME.
|
||||||
|
|
||||||
GPGME is free software; you can redistribute it and/or modify it
|
GPGME is free software; you can redistribute it and/or modify it
|
||||||
under the terms of the GNU General Public License as published by
|
under the terms of the GNU Lesser General Public License as
|
||||||
the Free Software Foundation; either version 2 of the License, or
|
published by the Free Software Foundation; either version 2.1 of
|
||||||
(at your option) any later version.
|
the License, or (at your option) any later version.
|
||||||
|
|
||||||
GPGME is distributed in the hope that it will be useful, but
|
GPGME is distributed in the hope that it will be useful, but
|
||||||
WITHOUT ANY WARRANTY; without even the implied warranty of
|
WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||||
General Public License for more details.
|
Lesser General Public License for more details.
|
||||||
|
|
||||||
You should have received a copy of the GNU General Public License
|
You should have received a copy of the GNU Lesser General Public
|
||||||
along with GPGME; if not, write to the Free Software Foundation,
|
License along with this program; if not, write to the Free Software
|
||||||
Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
|
Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
|
||||||
|
02111-1307, USA. */
|
||||||
|
|
||||||
#if HAVE_CONFIG_H
|
#if HAVE_CONFIG_H
|
||||||
#include <config.h>
|
#include <config.h>
|
||||||
|
@ -1,22 +1,23 @@
|
|||||||
/* gpgme.c - GnuPG Made Easy.
|
/* gpgme.c - GnuPG Made Easy.
|
||||||
Copyright (C) 2000 Werner Koch (dd9jn)
|
Copyright (C) 2000 Werner Koch (dd9jn)
|
||||||
Copyright (C) 2001, 2002, 2003 g10 Code GmbH
|
Copyright (C) 2001, 2002, 2003, 2004, 2005 g10 Code GmbH
|
||||||
|
|
||||||
This file is part of GPGME.
|
This file is part of GPGME.
|
||||||
|
|
||||||
GPGME is free software; you can redistribute it and/or modify it
|
GPGME is free software; you can redistribute it and/or modify it
|
||||||
under the terms of the GNU General Public License as published by
|
under the terms of the GNU Lesser General Public License as
|
||||||
the Free Software Foundation; either version 2 of the License, or
|
published by the Free Software Foundation; either version 2.1 of
|
||||||
(at your option) any later version.
|
the License, or (at your option) any later version.
|
||||||
|
|
||||||
GPGME is distributed in the hope that it will be useful, but
|
GPGME is distributed in the hope that it will be useful, but
|
||||||
WITHOUT ANY WARRANTY; without even the implied warranty of
|
WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||||
General Public License for more details.
|
Lesser General Public License for more details.
|
||||||
|
|
||||||
You should have received a copy of the GNU General Public License
|
You should have received a copy of the GNU Lesser General Public
|
||||||
along with GPGME; if not, write to the Free Software Foundation,
|
License along with this program; if not, write to the Free Software
|
||||||
Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
|
Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
|
||||||
|
02111-1307, USA. */
|
||||||
|
|
||||||
#if HAVE_CONFIG_H
|
#if HAVE_CONFIG_H
|
||||||
#include <config.h>
|
#include <config.h>
|
||||||
@ -51,7 +52,7 @@ gpgme_new (gpgme_ctx_t *r_ctx)
|
|||||||
if (!ctx)
|
if (!ctx)
|
||||||
return gpg_error_from_errno (errno);
|
return gpg_error_from_errno (errno);
|
||||||
ctx->keylist_mode = GPGME_KEYLIST_MODE_LOCAL;
|
ctx->keylist_mode = GPGME_KEYLIST_MODE_LOCAL;
|
||||||
ctx->include_certs = 1;
|
ctx->include_certs = GPGME_INCLUDE_CERTS_DEFAULT;
|
||||||
ctx->protocol = GPGME_PROTOCOL_OpenPGP;
|
ctx->protocol = GPGME_PROTOCOL_OpenPGP;
|
||||||
_gpgme_fd_table_init (&ctx->fdt);
|
_gpgme_fd_table_init (&ctx->fdt);
|
||||||
|
|
||||||
@ -210,12 +211,14 @@ gpgme_get_textmode (gpgme_ctx_t ctx)
|
|||||||
|
|
||||||
|
|
||||||
/* Set the number of certifications to include in an S/MIME message.
|
/* Set the number of certifications to include in an S/MIME message.
|
||||||
The default is 1 (only the cert of the sender). -1 means all
|
The default is GPGME_INCLUDE_CERTS_DEFAULT. -1 means all certs,
|
||||||
certs, and -2 means all certs except the root cert. */
|
and -2 means all certs except the root cert. */
|
||||||
void
|
void
|
||||||
gpgme_set_include_certs (gpgme_ctx_t ctx, int nr_of_certs)
|
gpgme_set_include_certs (gpgme_ctx_t ctx, int nr_of_certs)
|
||||||
{
|
{
|
||||||
if (nr_of_certs < -2)
|
if (nr_of_certs == GPGME_INCLUDE_CERTS_DEFAULT)
|
||||||
|
ctx->include_certs = GPGME_INCLUDE_CERTS_DEFAULT;
|
||||||
|
else if (nr_of_certs < -2)
|
||||||
ctx->include_certs = -2;
|
ctx->include_certs = -2;
|
||||||
else
|
else
|
||||||
ctx->include_certs = nr_of_certs;
|
ctx->include_certs = nr_of_certs;
|
||||||
|
@ -1,22 +1,23 @@
|
|||||||
/* gpgme.h - Public interface to GnuPG Made Easy.
|
/* gpgme.h - Public interface to GnuPG Made Easy.
|
||||||
Copyright (C) 2000 Werner Koch (dd9jn)
|
Copyright (C) 2000 Werner Koch (dd9jn)
|
||||||
Copyright (C) 2001, 2002, 2003, 2004 g10 Code GmbH
|
Copyright (C) 2001, 2002, 2003, 2004, 2005 g10 Code GmbH
|
||||||
|
|
||||||
This file is part of GPGME.
|
This file is part of GPGME.
|
||||||
|
|
||||||
GPGME is free software; you can redistribute it and/or modify it
|
GPGME is free software; you can redistribute it and/or modify it
|
||||||
under the terms of the GNU General Public License as published by
|
under the terms of the GNU Lesser General Public License as
|
||||||
the Free Software Foundation; either version 2 of the License, or
|
published by the Free Software Foundation; either version 2.1 of
|
||||||
(at your option) any later version.
|
the License, or (at your option) any later version.
|
||||||
|
|
||||||
GPGME is distributed in the hope that it will be useful, but
|
GPGME is distributed in the hope that it will be useful, but
|
||||||
WITHOUT ANY WARRANTY; without even the implied warranty of
|
WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||||
General Public License for more details.
|
Lesser General Public License for more details.
|
||||||
|
|
||||||
You should have received a copy of the GNU General Public License
|
You should have received a copy of the GNU Lesser General Public
|
||||||
along with GPGME; if not, write to the Free Software Foundation,
|
License along with this program; if not, write to the Free Software
|
||||||
Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
|
Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
|
||||||
|
02111-1307, USA. */
|
||||||
|
|
||||||
#ifndef GPGME_H
|
#ifndef GPGME_H
|
||||||
#define GPGME_H
|
#define GPGME_H
|
||||||
@ -74,7 +75,7 @@ extern "C" {
|
|||||||
AM_PATH_GPGME macro) check that this header matches the installed
|
AM_PATH_GPGME macro) check that this header matches the installed
|
||||||
library. Warning: Do not edit the next line. configure will do
|
library. Warning: Do not edit the next line. configure will do
|
||||||
that for you! */
|
that for you! */
|
||||||
#define GPGME_VERSION "1.0.1"
|
#define GPGME_VERSION "1.0.3-cvs"
|
||||||
|
|
||||||
|
|
||||||
/* Some opaque data types used by GPGME. */
|
/* Some opaque data types used by GPGME. */
|
||||||
@ -398,7 +399,8 @@ typedef enum
|
|||||||
GPGME_STATUS_TRUNCATED,
|
GPGME_STATUS_TRUNCATED,
|
||||||
GPGME_STATUS_ERROR,
|
GPGME_STATUS_ERROR,
|
||||||
GPGME_STATUS_NEWSIG,
|
GPGME_STATUS_NEWSIG,
|
||||||
GPGME_STATUS_REVKEYSIG
|
GPGME_STATUS_REVKEYSIG,
|
||||||
|
GPGME_STATUS_NEED_PASSPHRASE_PIN
|
||||||
}
|
}
|
||||||
gpgme_status_code_t;
|
gpgme_status_code_t;
|
||||||
|
|
||||||
@ -704,6 +706,9 @@ void gpgme_set_textmode (gpgme_ctx_t ctx, int yes);
|
|||||||
/* Return non-zero if text mode is set in CTX. */
|
/* Return non-zero if text mode is set in CTX. */
|
||||||
int gpgme_get_textmode (gpgme_ctx_t ctx);
|
int gpgme_get_textmode (gpgme_ctx_t ctx);
|
||||||
|
|
||||||
|
/* Use whatever the default of the backend crypto engine is. */
|
||||||
|
#define GPGME_INCLUDE_CERTS_DEFAULT -256
|
||||||
|
|
||||||
/* Include up to NR_OF_CERTS certificates in an S/MIME message. */
|
/* Include up to NR_OF_CERTS certificates in an S/MIME message. */
|
||||||
void gpgme_set_include_certs (gpgme_ctx_t ctx, int nr_of_certs);
|
void gpgme_set_include_certs (gpgme_ctx_t ctx, int nr_of_certs);
|
||||||
|
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
# gpgme.m4 - autoconf macro to detect GPGME.
|
# gpgme.m4 - autoconf macro to detect GPGME.
|
||||||
# Copyright (C) 2002, 2003, 2004 g10 Code GmbH
|
# Copyright (C) 2002, 2003, 2004, 2005 g10 Code GmbH
|
||||||
#
|
#
|
||||||
# This file is free software; as a special exception the author gives
|
# This file is free software; as a special exception the author gives
|
||||||
# unlimited permission to copy and/or distribute it, with or without
|
# unlimited permission to copy and/or distribute it, with or without
|
||||||
@ -20,7 +20,9 @@ AC_DEFUN([_AM_PATH_GPGME_CONFIG],
|
|||||||
fi
|
fi
|
||||||
AC_PATH_PROG(GPGME_CONFIG, gpgme-config, no)
|
AC_PATH_PROG(GPGME_CONFIG, gpgme-config, no)
|
||||||
|
|
||||||
gpgme_version=`$GPGME_CONFIG --version`
|
if test "$GPGME_CONFIG" != "no" ; then
|
||||||
|
gpgme_version=`$GPGME_CONFIG --version`
|
||||||
|
fi
|
||||||
gpgme_version_major=`echo $gpgme_version | \
|
gpgme_version_major=`echo $gpgme_version | \
|
||||||
sed 's/\([[0-9]]*\)\.\([[0-9]]*\)\.\([[0-9]]*\).*/\1/'`
|
sed 's/\([[0-9]]*\)\.\([[0-9]]*\)\.\([[0-9]]*\).*/\1/'`
|
||||||
gpgme_version_minor=`echo $gpgme_version | \
|
gpgme_version_minor=`echo $gpgme_version | \
|
||||||
|
@ -1,22 +1,23 @@
|
|||||||
/* import.c - Import a key.
|
/* import.c - Import a key.
|
||||||
Copyright (C) 2000 Werner Koch (dd9jn)
|
Copyright (C) 2000 Werner Koch (dd9jn)
|
||||||
Copyright (C) 2001, 2002, 2003 g10 Code GmbH
|
Copyright (C) 2001, 2002, 2003, 2004 g10 Code GmbH
|
||||||
|
|
||||||
This file is part of GPGME.
|
This file is part of GPGME.
|
||||||
|
|
||||||
GPGME is free software; you can redistribute it and/or modify it
|
GPGME is free software; you can redistribute it and/or modify it
|
||||||
under the terms of the GNU General Public License as published by
|
under the terms of the GNU Lesser General Public License as
|
||||||
the Free Software Foundation; either version 2 of the License, or
|
published by the Free Software Foundation; either version 2.1 of
|
||||||
(at your option) any later version.
|
the License, or (at your option) any later version.
|
||||||
|
|
||||||
GPGME is distributed in the hope that it will be useful, but
|
GPGME is distributed in the hope that it will be useful, but
|
||||||
WITHOUT ANY WARRANTY; without even the implied warranty of
|
WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||||
General Public License for more details.
|
Lesser General Public License for more details.
|
||||||
|
|
||||||
You should have received a copy of the GNU General Public License
|
You should have received a copy of the GNU Lesser General Public
|
||||||
along with GPGME; if not, write to the Free Software Foundation,
|
License along with this program; if not, write to the Free Software
|
||||||
Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
|
Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
|
||||||
|
02111-1307, USA. */
|
||||||
|
|
||||||
#if HAVE_CONFIG_H
|
#if HAVE_CONFIG_H
|
||||||
#include <config.h>
|
#include <config.h>
|
||||||
|
21
gpgme/io.h
21
gpgme/io.h
@ -1,22 +1,23 @@
|
|||||||
/* io.h - Interface to the I/O functions.
|
/* io.h - Interface to the I/O functions.
|
||||||
Copyright (C) 2000 Werner Koch (dd9jn)
|
Copyright (C) 2000 Werner Koch (dd9jn)
|
||||||
Copyright (C) 2001, 2002, 2003 g10 Code GmbH
|
Copyright (C) 2001, 2002, 2003, 2004 g10 Code GmbH
|
||||||
|
|
||||||
This file is part of GPGME.
|
This file is part of GPGME.
|
||||||
|
|
||||||
GPGME is free software; you can redistribute it and/or modify it
|
GPGME is free software; you can redistribute it and/or modify it
|
||||||
under the terms of the GNU General Public License as published by
|
under the terms of the GNU Lesser General Public License as
|
||||||
the Free Software Foundation; either version 2 of the License, or
|
published by the Free Software Foundation; either version 2.1 of
|
||||||
(at your option) any later version.
|
the License, or (at your option) any later version.
|
||||||
|
|
||||||
GPGME is distributed in the hope that it will be useful, but
|
GPGME is distributed in the hope that it will be useful, but
|
||||||
WITHOUT ANY WARRANTY; without even the implied warranty of
|
WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||||
General Public License for more details.
|
Lesser General Public License for more details.
|
||||||
|
|
||||||
You should have received a copy of the GNU General Public License
|
You should have received a copy of the GNU Lesser General Public
|
||||||
along with GPGME; if not, write to the Free Software Foundation,
|
License along with this program; if not, write to the Free Software
|
||||||
Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
|
Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
|
||||||
|
02111-1307, USA. */
|
||||||
|
|
||||||
#ifndef IO_H
|
#ifndef IO_H
|
||||||
#define IO_H
|
#define IO_H
|
||||||
|
@ -1,22 +1,21 @@
|
|||||||
/* isascii.c - Replacement for isascii.
|
/* Copyright (C) 1991,92,93,95,96,97,98,99,2001,2002,2004
|
||||||
* Copyright (C) 2002 Free Software Foundation, Inc.
|
Free Software Foundation, Inc.
|
||||||
*
|
This file is part of the GNU C Library.
|
||||||
* This file is part of GnuPG.
|
|
||||||
*
|
The GNU C Library is free software; you can redistribute it and/or
|
||||||
* GnuPG is free software; you can redistribute it and/or modify
|
modify it under the terms of the GNU Lesser General Public
|
||||||
* it under the terms of the GNU General Public License as published by
|
License as published by the Free Software Foundation; either
|
||||||
* the Free Software Foundation; either version 2 of the License, or
|
version 2.1 of the License, or (at your option) any later version.
|
||||||
* (at your option) any later version.
|
|
||||||
*
|
The GNU C Library is distributed in the hope that it will be useful,
|
||||||
* GnuPG is distributed in the hope that it will be useful,
|
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
Lesser General Public License for more details.
|
||||||
* GNU General Public License for more details.
|
|
||||||
*
|
You should have received a copy of the GNU Lesser General Public
|
||||||
* You should have received a copy of the GNU General Public License
|
License along with the GNU C Library; if not, write to the Free
|
||||||
* along with this program; if not, write to the Free Software
|
Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
|
||||||
* Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA
|
02111-1307 USA. */
|
||||||
*/
|
|
||||||
|
|
||||||
#ifdef HAVE_CONFIG_H
|
#ifdef HAVE_CONFIG_H
|
||||||
#include <config.h>
|
#include <config.h>
|
||||||
|
21
gpgme/key.c
21
gpgme/key.c
@ -1,22 +1,23 @@
|
|||||||
/* key.c - Key objects.
|
/* key.c - Key objects.
|
||||||
Copyright (C) 2000 Werner Koch (dd9jn)
|
Copyright (C) 2000 Werner Koch (dd9jn)
|
||||||
Copyright (C) 2001, 2002, 2003 g10 Code GmbH
|
Copyright (C) 2001, 2002, 2003, 2004 g10 Code GmbH
|
||||||
|
|
||||||
This file is part of GPGME.
|
This file is part of GPGME.
|
||||||
|
|
||||||
GPGME is free software; you can redistribute it and/or modify it
|
GPGME is free software; you can redistribute it and/or modify it
|
||||||
under the terms of the GNU General Public License as published by
|
under the terms of the GNU Lesser General Public License as
|
||||||
the Free Software Foundation; either version 2 of the License, or
|
published by the Free Software Foundation; either version 2.1 of
|
||||||
(at your option) any later version.
|
the License, or (at your option) any later version.
|
||||||
|
|
||||||
GPGME is distributed in the hope that it will be useful, but
|
GPGME is distributed in the hope that it will be useful, but
|
||||||
WITHOUT ANY WARRANTY; without even the implied warranty of
|
WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||||
General Public License for more details.
|
Lesser General Public License for more details.
|
||||||
|
|
||||||
You should have received a copy of the GNU General Public License
|
You should have received a copy of the GNU Lesser General Public
|
||||||
along with GPGME; if not, write to the Free Software Foundation,
|
License along with this program; if not, write to the Free Software
|
||||||
Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
|
Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
|
||||||
|
02111-1307, USA. */
|
||||||
|
|
||||||
#if HAVE_CONFIG_H
|
#if HAVE_CONFIG_H
|
||||||
#include <config.h>
|
#include <config.h>
|
||||||
|
@ -1,22 +1,23 @@
|
|||||||
/* keylist.c - Listing keys.
|
/* keylist.c - Listing keys.
|
||||||
Copyright (C) 2000 Werner Koch (dd9jn)
|
Copyright (C) 2000 Werner Koch (dd9jn)
|
||||||
Copyright (C) 2001, 2002, 2003 g10 Code GmbH
|
Copyright (C) 2001, 2002, 2003, 2004 g10 Code GmbH
|
||||||
|
|
||||||
This file is part of GPGME.
|
This file is part of GPGME.
|
||||||
|
|
||||||
GPGME is free software; you can redistribute it and/or modify it
|
GPGME is free software; you can redistribute it and/or modify it
|
||||||
under the terms of the GNU General Public License as published by
|
under the terms of the GNU Lesser General Public License as
|
||||||
the Free Software Foundation; either version 2 of the License, or
|
published by the Free Software Foundation; either version 2.1 of
|
||||||
(at your option) any later version.
|
the License, or (at your option) any later version.
|
||||||
|
|
||||||
GPGME is distributed in the hope that it will be useful, but
|
GPGME is distributed in the hope that it will be useful, but
|
||||||
WITHOUT ANY WARRANTY; without even the implied warranty of
|
WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||||
General Public License for more details.
|
Lesser General Public License for more details.
|
||||||
|
|
||||||
You should have received a copy of the GNU General Public License
|
You should have received a copy of the GNU Lesser General Public
|
||||||
along with GPGME; if not, write to the Free Software Foundation,
|
License along with this program; if not, write to the Free Software
|
||||||
Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
|
Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
|
||||||
|
02111-1307, USA. */
|
||||||
|
|
||||||
#if HAVE_CONFIG_H
|
#if HAVE_CONFIG_H
|
||||||
#include <config.h>
|
#include <config.h>
|
||||||
@ -47,6 +48,7 @@ typedef struct
|
|||||||
struct _gpgme_op_keylist_result result;
|
struct _gpgme_op_keylist_result result;
|
||||||
|
|
||||||
gpgme_key_t tmp_key;
|
gpgme_key_t tmp_key;
|
||||||
|
/* This points to the last uid in tmp_key. */
|
||||||
gpgme_user_id_t tmp_uid;
|
gpgme_user_id_t tmp_uid;
|
||||||
/* Something new is available. */
|
/* Something new is available. */
|
||||||
int key_cond;
|
int key_cond;
|
||||||
@ -62,8 +64,9 @@ release_op_data (void *hook)
|
|||||||
|
|
||||||
if (opd->tmp_key)
|
if (opd->tmp_key)
|
||||||
gpgme_key_unref (opd->tmp_key);
|
gpgme_key_unref (opd->tmp_key);
|
||||||
if (opd->tmp_uid)
|
/* opd->tmp_uid is actually part of opd->tmp_key, so we do not need
|
||||||
free (opd->tmp_uid);
|
to release it here. */
|
||||||
|
|
||||||
while (key)
|
while (key)
|
||||||
{
|
{
|
||||||
struct key_queue_item_s *next = key->next;
|
struct key_queue_item_s *next = key->next;
|
||||||
@ -841,7 +844,7 @@ gpgme_get_key (gpgme_ctx_t ctx, const char *fpr, gpgme_key_t *r_key,
|
|||||||
if (!ctx || !r_key || !fpr)
|
if (!ctx || !r_key || !fpr)
|
||||||
return gpg_error (GPG_ERR_INV_VALUE);
|
return gpg_error (GPG_ERR_INV_VALUE);
|
||||||
|
|
||||||
if (strlen (fpr) < 16) /* We have at least a key ID. */
|
if (strlen (fpr) < 8) /* We have at least a key ID. */
|
||||||
return gpg_error (GPG_ERR_INV_VALUE);
|
return gpg_error (GPG_ERR_INV_VALUE);
|
||||||
|
|
||||||
/* FIXME: We use our own context because we have to avoid the user's
|
/* FIXME: We use our own context because we have to avoid the user's
|
||||||
|
229
gpgme/memrchr.c
229
gpgme/memrchr.c
@ -1,39 +1,210 @@
|
|||||||
/* memrchr.c - Replacement for memrchr.
|
/* memrchr -- find the last occurrence of a byte in a memory block
|
||||||
* Copyright (C) 2002, 2004 Free Software Foundation, Inc.
|
Copyright (C) 1991, 93, 96, 97, 99, 2000 Free Software Foundation, Inc.
|
||||||
*
|
This file is part of the GNU C Library.
|
||||||
* This file is part of GnuPG.
|
Based on strlen implementation by Torbjorn Granlund (tege@sics.se),
|
||||||
*
|
with help from Dan Sahlin (dan@sics.se) and
|
||||||
* GnuPG is free software; you can redistribute it and/or modify
|
commentary by Jim Blandy (jimb@ai.mit.edu);
|
||||||
* it under the terms of the GNU General Public License as published by
|
adaptation to memchr suggested by Dick Karpinski (dick@cca.ucsf.edu),
|
||||||
* the Free Software Foundation; either version 2 of the License, or
|
and implemented by Roland McGrath (roland@ai.mit.edu).
|
||||||
* (at your option) any later version.
|
|
||||||
*
|
The GNU C Library is free software; you can redistribute it and/or
|
||||||
* GnuPG is distributed in the hope that it will be useful,
|
modify it under the terms of the GNU Lesser General Public
|
||||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
License as published by the Free Software Foundation; either
|
||||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
version 2.1 of the License, or (at your option) any later version.
|
||||||
* GNU General Public License for more details.
|
|
||||||
*
|
The GNU C Library is distributed in the hope that it will be useful,
|
||||||
* You should have received a copy of the GNU General Public License
|
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
* along with this program; if not, write to the Free Software
|
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||||
* Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA
|
Lesser General Public License for more details.
|
||||||
*/
|
|
||||||
|
You should have received a copy of the GNU Lesser General Public
|
||||||
|
License along with the GNU C Library; if not, write to the Free
|
||||||
|
Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
|
||||||
|
02111-1307 USA. */
|
||||||
|
|
||||||
|
#include <stdlib.h>
|
||||||
|
|
||||||
#ifdef HAVE_CONFIG_H
|
#ifdef HAVE_CONFIG_H
|
||||||
#include <config.h>
|
# include <config.h>
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#include <string.h>
|
#undef __ptr_t
|
||||||
|
#if defined __cplusplus || (defined __STDC__ && __STDC__)
|
||||||
|
# define __ptr_t void *
|
||||||
|
#else /* Not C++ or ANSI C. */
|
||||||
|
# define __ptr_t char *
|
||||||
|
#endif /* C++ or ANSI C. */
|
||||||
|
|
||||||
void *
|
#if defined _LIBC
|
||||||
memrchr (const void *block, int c, size_t size)
|
# include <string.h>
|
||||||
|
# include <memcopy.h>
|
||||||
|
#else
|
||||||
|
# define reg_char char
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#if defined HAVE_LIMITS_H || defined _LIBC
|
||||||
|
# include <limits.h>
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#define LONG_MAX_32_BITS 2147483647
|
||||||
|
|
||||||
|
#ifndef LONG_MAX
|
||||||
|
# define LONG_MAX LONG_MAX_32_BITS
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#include <sys/types.h>
|
||||||
|
|
||||||
|
#undef __memrchr
|
||||||
|
#undef memrchr
|
||||||
|
|
||||||
|
#ifndef weak_alias
|
||||||
|
# define __memrchr memrchr
|
||||||
|
#endif
|
||||||
|
|
||||||
|
/* Search no more than N bytes of S for C. */
|
||||||
|
__ptr_t
|
||||||
|
__memrchr (s, c_in, n)
|
||||||
|
const __ptr_t s;
|
||||||
|
int c_in;
|
||||||
|
size_t n;
|
||||||
{
|
{
|
||||||
const unsigned char *p = block;
|
const unsigned char *char_ptr;
|
||||||
|
const unsigned long int *longword_ptr;
|
||||||
|
unsigned long int longword, magic_bits, charmask;
|
||||||
|
unsigned reg_char c;
|
||||||
|
|
||||||
if (size)
|
c = (unsigned char) c_in;
|
||||||
|
|
||||||
|
/* Handle the last few characters by reading one character at a time.
|
||||||
|
Do this until CHAR_PTR is aligned on a longword boundary. */
|
||||||
|
for (char_ptr = (const unsigned char *) s + n;
|
||||||
|
n > 0 && ((unsigned long int) char_ptr
|
||||||
|
& (sizeof (longword) - 1)) != 0;
|
||||||
|
--n)
|
||||||
|
if (*--char_ptr == c)
|
||||||
|
return (__ptr_t) char_ptr;
|
||||||
|
|
||||||
|
/* All these elucidatory comments refer to 4-byte longwords,
|
||||||
|
but the theory applies equally well to 8-byte longwords. */
|
||||||
|
|
||||||
|
longword_ptr = (const unsigned long int *) char_ptr;
|
||||||
|
|
||||||
|
/* Bits 31, 24, 16, and 8 of this number are zero. Call these bits
|
||||||
|
the "holes." Note that there is a hole just to the left of
|
||||||
|
each byte, with an extra at the end:
|
||||||
|
|
||||||
|
bits: 01111110 11111110 11111110 11111111
|
||||||
|
bytes: AAAAAAAA BBBBBBBB CCCCCCCC DDDDDDDD
|
||||||
|
|
||||||
|
The 1-bits make sure that carries propagate to the next 0-bit.
|
||||||
|
The 0-bits provide holes for carries to fall into. */
|
||||||
|
|
||||||
|
if (sizeof (longword) != 4 && sizeof (longword) != 8)
|
||||||
|
abort ();
|
||||||
|
|
||||||
|
#if LONG_MAX <= LONG_MAX_32_BITS
|
||||||
|
magic_bits = 0x7efefeff;
|
||||||
|
#else
|
||||||
|
magic_bits = ((unsigned long int) 0x7efefefe << 32) | 0xfefefeff;
|
||||||
|
#endif
|
||||||
|
|
||||||
|
/* Set up a longword, each of whose bytes is C. */
|
||||||
|
charmask = c | (c << 8);
|
||||||
|
charmask |= charmask << 16;
|
||||||
|
#if LONG_MAX > LONG_MAX_32_BITS
|
||||||
|
charmask |= charmask << 32;
|
||||||
|
#endif
|
||||||
|
|
||||||
|
/* Instead of the traditional loop which tests each character,
|
||||||
|
we will test a longword at a time. The tricky part is testing
|
||||||
|
if *any of the four* bytes in the longword in question are zero. */
|
||||||
|
while (n >= sizeof (longword))
|
||||||
{
|
{
|
||||||
for (p += size - 1; size; p--, size--)
|
/* We tentatively exit the loop if adding MAGIC_BITS to
|
||||||
if (*p == c)
|
LONGWORD fails to change any of the hole bits of LONGWORD.
|
||||||
return (void *)p;
|
|
||||||
|
1) Is this safe? Will it catch all the zero bytes?
|
||||||
|
Suppose there is a byte with all zeros. Any carry bits
|
||||||
|
propagating from its left will fall into the hole at its
|
||||||
|
least significant bit and stop. Since there will be no
|
||||||
|
carry from its most significant bit, the LSB of the
|
||||||
|
byte to the left will be unchanged, and the zero will be
|
||||||
|
detected.
|
||||||
|
|
||||||
|
2) Is this worthwhile? Will it ignore everything except
|
||||||
|
zero bytes? Suppose every byte of LONGWORD has a bit set
|
||||||
|
somewhere. There will be a carry into bit 8. If bit 8
|
||||||
|
is set, this will carry into bit 16. If bit 8 is clear,
|
||||||
|
one of bits 9-15 must be set, so there will be a carry
|
||||||
|
into bit 16. Similarly, there will be a carry into bit
|
||||||
|
24. If one of bits 24-30 is set, there will be a carry
|
||||||
|
into bit 31, so all of the hole bits will be changed.
|
||||||
|
|
||||||
|
The one misfire occurs when bits 24-30 are clear and bit
|
||||||
|
31 is set; in this case, the hole at bit 31 is not
|
||||||
|
changed. If we had access to the processor carry flag,
|
||||||
|
we could close this loophole by putting the fourth hole
|
||||||
|
at bit 32!
|
||||||
|
|
||||||
|
So it ignores everything except 128's, when they're aligned
|
||||||
|
properly.
|
||||||
|
|
||||||
|
3) But wait! Aren't we looking for C, not zero?
|
||||||
|
Good point. So what we do is XOR LONGWORD with a longword,
|
||||||
|
each of whose bytes is C. This turns each byte that is C
|
||||||
|
into a zero. */
|
||||||
|
|
||||||
|
longword = *--longword_ptr ^ charmask;
|
||||||
|
|
||||||
|
/* Add MAGIC_BITS to LONGWORD. */
|
||||||
|
if ((((longword + magic_bits)
|
||||||
|
|
||||||
|
/* Set those bits that were unchanged by the addition. */
|
||||||
|
^ ~longword)
|
||||||
|
|
||||||
|
/* Look at only the hole bits. If any of the hole bits
|
||||||
|
are unchanged, most likely one of the bytes was a
|
||||||
|
zero. */
|
||||||
|
& ~magic_bits) != 0)
|
||||||
|
{
|
||||||
|
/* Which of the bytes was C? If none of them were, it was
|
||||||
|
a misfire; continue the search. */
|
||||||
|
|
||||||
|
const unsigned char *cp = (const unsigned char *) longword_ptr;
|
||||||
|
|
||||||
|
#if LONG_MAX > 2147483647
|
||||||
|
if (cp[7] == c)
|
||||||
|
return (__ptr_t) &cp[7];
|
||||||
|
if (cp[6] == c)
|
||||||
|
return (__ptr_t) &cp[6];
|
||||||
|
if (cp[5] == c)
|
||||||
|
return (__ptr_t) &cp[5];
|
||||||
|
if (cp[4] == c)
|
||||||
|
return (__ptr_t) &cp[4];
|
||||||
|
#endif
|
||||||
|
if (cp[3] == c)
|
||||||
|
return (__ptr_t) &cp[3];
|
||||||
|
if (cp[2] == c)
|
||||||
|
return (__ptr_t) &cp[2];
|
||||||
|
if (cp[1] == c)
|
||||||
|
return (__ptr_t) &cp[1];
|
||||||
|
if (cp[0] == c)
|
||||||
|
return (__ptr_t) cp;
|
||||||
|
}
|
||||||
|
|
||||||
|
n -= sizeof (longword);
|
||||||
}
|
}
|
||||||
return NULL;
|
|
||||||
|
char_ptr = (const unsigned char *) longword_ptr;
|
||||||
|
|
||||||
|
while (n-- > 0)
|
||||||
|
{
|
||||||
|
if (*--char_ptr == c)
|
||||||
|
return (__ptr_t) char_ptr;
|
||||||
|
}
|
||||||
|
|
||||||
|
return 0;
|
||||||
}
|
}
|
||||||
|
#ifdef weak_alias
|
||||||
|
weak_alias (__memrchr, memrchr)
|
||||||
|
#endif
|
||||||
|
@ -6,18 +6,18 @@
|
|||||||
#
|
#
|
||||||
# This file is part of GPGME.
|
# This file is part of GPGME.
|
||||||
#
|
#
|
||||||
# GPGME is free software; you can redistribute it and/or modify
|
# GPGME is free software; you can redistribute it and/or modify it
|
||||||
# it under the terms of the GNU General Public License as published by
|
# under the terms of the GNU Lesser General Public License as
|
||||||
# the Free Software Foundation; either version 2 of the License, or
|
# published by the Free Software Foundation; either version 2.1 of the
|
||||||
# (at your option) any later version.
|
# License, or (at your option) any later version.
|
||||||
#
|
#
|
||||||
# GPGME is distributed in the hope that it will be useful,
|
# GPGME is distributed in the hope that it will be useful, but WITHOUT
|
||||||
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
|
||||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
# or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General
|
||||||
# GNU General Public License for more details.
|
# Public License for more details.
|
||||||
#
|
#
|
||||||
# You should have received a copy of the GNU General Public License
|
# You should have received a copy of the GNU Lesser General Public
|
||||||
# along with this program; if not, write to the Free Software
|
# License along with this program; if not, write to the Free Software
|
||||||
# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA
|
# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA
|
||||||
|
|
||||||
# resetting collate is important, so that the bsearch works properly
|
# resetting collate is important, so that the bsearch works properly
|
||||||
|
@ -1,21 +1,22 @@
|
|||||||
/* op-support.c
|
/* op-support.c
|
||||||
Copyright (C) 2002, 2003 g10 Code GmbH
|
Copyright (C) 2002, 2003, 2004 g10 Code GmbH
|
||||||
|
|
||||||
This file is part of GPGME.
|
This file is part of GPGME.
|
||||||
|
|
||||||
GPGME is free software; you can redistribute it and/or modify it
|
GPGME is free software; you can redistribute it and/or modify it
|
||||||
under the terms of the GNU General Public License as published by
|
under the terms of the GNU Lesser General Public License as
|
||||||
the Free Software Foundation; either version 2 of the License, or
|
published by the Free Software Foundation; either version 2.1 of
|
||||||
(at your option) any later version.
|
the License, or (at your option) any later version.
|
||||||
|
|
||||||
GPGME is distributed in the hope that it will be useful, but
|
GPGME is distributed in the hope that it will be useful, but
|
||||||
WITHOUT ANY WARRANTY; without even the implied warranty of
|
WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||||
General Public License for more details.
|
Lesser General Public License for more details.
|
||||||
|
|
||||||
You should have received a copy of the GNU General Public License
|
You should have received a copy of the GNU Lesser General Public
|
||||||
along with GPGME; if not, write to the Free Software Foundation,
|
License along with this program; if not, write to the Free Software
|
||||||
Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
|
Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
|
||||||
|
02111-1307, USA. */
|
||||||
|
|
||||||
#if HAVE_CONFIG_H
|
#if HAVE_CONFIG_H
|
||||||
#include <config.h>
|
#include <config.h>
|
||||||
|
21
gpgme/ops.h
21
gpgme/ops.h
@ -1,22 +1,23 @@
|
|||||||
/* ops.h - Internal operation support.
|
/* ops.h - Internal operation support.
|
||||||
Copyright (C) 2000 Werner Koch (dd9jn)
|
Copyright (C) 2000 Werner Koch (dd9jn)
|
||||||
Copyright (C) 2001, 2002, 2003 g10 Code GmbH
|
Copyright (C) 2001, 2002, 2003, 2004 g10 Code GmbH
|
||||||
|
|
||||||
This file is part of GPGME.
|
This file is part of GPGME.
|
||||||
|
|
||||||
GPGME is free software; you can redistribute it and/or modify it
|
GPGME is free software; you can redistribute it and/or modify it
|
||||||
under the terms of the GNU General Public License as published by
|
under the terms of the GNU Lesser General Public License as
|
||||||
the Free Software Foundation; either version 2 of the License, or
|
published by the Free Software Foundation; either version 2.1 of
|
||||||
(at your option) any later version.
|
the License, or (at your option) any later version.
|
||||||
|
|
||||||
GPGME is distributed in the hope that it will be useful, but
|
GPGME is distributed in the hope that it will be useful, but
|
||||||
WITHOUT ANY WARRANTY; without even the implied warranty of
|
WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||||
General Public License for more details.
|
Lesser General Public License for more details.
|
||||||
|
|
||||||
You should have received a copy of the GNU General Public License
|
You should have received a copy of the GNU Lesser General Public
|
||||||
along with GPGME; if not, write to the Free Software Foundation,
|
License along with this program; if not, write to the Free Software
|
||||||
Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
|
Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
|
||||||
|
02111-1307, USA. */
|
||||||
|
|
||||||
#ifndef OPS_H
|
#ifndef OPS_H
|
||||||
#define OPS_H
|
#define OPS_H
|
||||||
|
@ -1,22 +1,23 @@
|
|||||||
/* passphrase.c - Passphrase callback.
|
/* passphrase.c - Passphrase callback.
|
||||||
Copyright (C) 2000 Werner Koch (dd9jn)
|
Copyright (C) 2000 Werner Koch (dd9jn)
|
||||||
Copyright (C) 2001, 2002, 2003 g10 Code GmbH
|
Copyright (C) 2001, 2002, 2003, 2004, 2005 g10 Code GmbH
|
||||||
|
|
||||||
This file is part of GPGME.
|
This file is part of GPGME.
|
||||||
|
|
||||||
GPGME is free software; you can redistribute it and/or modify it
|
GPGME is free software; you can redistribute it and/or modify it
|
||||||
under the terms of the GNU General Public License as published by
|
under the terms of the GNU Lesser General Public License as
|
||||||
the Free Software Foundation; either version 2 of the License, or
|
published by the Free Software Foundation; either version 2.1 of
|
||||||
(at your option) any later version.
|
the License, or (at your option) any later version.
|
||||||
|
|
||||||
GPGME is distributed in the hope that it will be useful, but
|
GPGME is distributed in the hope that it will be useful, but
|
||||||
WITHOUT ANY WARRANTY; without even the implied warranty of
|
WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||||
General Public License for more details.
|
Lesser General Public License for more details.
|
||||||
|
|
||||||
You should have received a copy of the GNU General Public License
|
You should have received a copy of the GNU Lesser General Public
|
||||||
along with GPGME; if not, write to the Free Software Foundation,
|
License along with this program; if not, write to the Free Software
|
||||||
Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
|
Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
|
||||||
|
02111-1307, USA. */
|
||||||
|
|
||||||
#if HAVE_CONFIG_H
|
#if HAVE_CONFIG_H
|
||||||
#include <config.h>
|
#include <config.h>
|
||||||
@ -89,6 +90,7 @@ _gpgme_passphrase_status_handler (void *priv, gpgme_status_code_t code,
|
|||||||
|
|
||||||
case GPGME_STATUS_NEED_PASSPHRASE:
|
case GPGME_STATUS_NEED_PASSPHRASE:
|
||||||
case GPGME_STATUS_NEED_PASSPHRASE_SYM:
|
case GPGME_STATUS_NEED_PASSPHRASE_SYM:
|
||||||
|
case GPGME_STATUS_NEED_PASSPHRASE_PIN:
|
||||||
if (opd->passphrase_info)
|
if (opd->passphrase_info)
|
||||||
free (opd->passphrase_info);
|
free (opd->passphrase_info);
|
||||||
opd->passphrase_info = strdup (args);
|
opd->passphrase_info = strdup (args);
|
||||||
@ -132,7 +134,9 @@ _gpgme_passphrase_command_handler_internal (void *priv,
|
|||||||
if (err)
|
if (err)
|
||||||
return err;
|
return err;
|
||||||
|
|
||||||
if (code == GPGME_STATUS_GET_HIDDEN && !strcmp (key, "passphrase.enter"))
|
if (code == GPGME_STATUS_GET_HIDDEN
|
||||||
|
&& (!strcmp (key, "passphrase.enter")
|
||||||
|
|| !strcmp (key, "passphrase.pin.ask")))
|
||||||
{
|
{
|
||||||
if (processed)
|
if (processed)
|
||||||
*processed = 1;
|
*processed = 1;
|
||||||
|
@ -1,22 +1,23 @@
|
|||||||
/* posix-io.c - Posix I/O functions
|
/* posix-io.c - Posix I/O functions
|
||||||
Copyright (C) 2000 Werner Koch (dd9jn)
|
Copyright (C) 2000 Werner Koch (dd9jn)
|
||||||
Copyright (C) 2001, 2002 g10 Code GmbH
|
Copyright (C) 2001, 2002, 2004 g10 Code GmbH
|
||||||
|
|
||||||
This file is part of GPGME.
|
This file is part of GPGME.
|
||||||
|
|
||||||
GPGME is free software; you can redistribute it and/or modify it
|
GPGME is free software; you can redistribute it and/or modify it
|
||||||
under the terms of the GNU General Public License as published by
|
under the terms of the GNU Lesser General Public License as
|
||||||
the Free Software Foundation; either version 2 of the License, or
|
published by the Free Software Foundation; either version 2.1 of
|
||||||
(at your option) any later version.
|
the License, or (at your option) any later version.
|
||||||
|
|
||||||
GPGME is distributed in the hope that it will be useful, but
|
GPGME is distributed in the hope that it will be useful, but
|
||||||
WITHOUT ANY WARRANTY; without even the implied warranty of
|
WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||||
General Public License for more details.
|
Lesser General Public License for more details.
|
||||||
|
|
||||||
You should have received a copy of the GNU General Public License
|
You should have received a copy of the GNU Lesser General Public
|
||||||
along with GPGME; if not, write to the Free Software Foundation,
|
License along with this program; if not, write to the Free Software
|
||||||
Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
|
Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
|
||||||
|
02111-1307, USA. */
|
||||||
|
|
||||||
#ifdef HAVE_CONFIG_H
|
#ifdef HAVE_CONFIG_H
|
||||||
#include <config.h>
|
#include <config.h>
|
||||||
|
@ -1,22 +1,23 @@
|
|||||||
/* posix-sema.c
|
/* posix-sema.c
|
||||||
Copyright (C) 2001 Werner Koch (dd9jn)
|
Copyright (C) 2001 Werner Koch (dd9jn)
|
||||||
Copyright (C) 2001, 2002 g10 Code GmbH
|
Copyright (C) 2001, 2002, 2004 g10 Code GmbH
|
||||||
|
|
||||||
This file is part of GPGME.
|
This file is part of GPGME.
|
||||||
|
|
||||||
GPGME is free software; you can redistribute it and/or modify it
|
GPGME is free software; you can redistribute it and/or modify it
|
||||||
under the terms of the GNU General Public License as published by
|
under the terms of the GNU Lesser General Public License as
|
||||||
the Free Software Foundation; either version 2 of the License, or
|
published by the Free Software Foundation; either version 2.1 of
|
||||||
(at your option) any later version.
|
the License, or (at your option) any later version.
|
||||||
|
|
||||||
GPGME is distributed in the hope that it will be useful, but
|
GPGME is distributed in the hope that it will be useful, but
|
||||||
WITHOUT ANY WARRANTY; without even the implied warranty of
|
WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||||
General Public License for more details.
|
Lesser General Public License for more details.
|
||||||
|
|
||||||
You should have received a copy of the GNU General Public License
|
You should have received a copy of the GNU Lesser General Public
|
||||||
along with GPGME; if not, write to the Free Software Foundation,
|
License along with this program; if not, write to the Free Software
|
||||||
Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
|
Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
|
||||||
|
02111-1307, USA. */
|
||||||
|
|
||||||
#ifdef HAVE_CONFIG_H
|
#ifdef HAVE_CONFIG_H
|
||||||
#include <config.h>
|
#include <config.h>
|
||||||
|
@ -1,22 +1,23 @@
|
|||||||
/* posix-util.c - Utility functions for Posix
|
/* posix-util.c - Utility functions for Posix
|
||||||
Copyright (C) 2001 Werner Koch (dd9jn)
|
Copyright (C) 2001 Werner Koch (dd9jn)
|
||||||
Copyright (C) 2001, 2002 g10 Code GmbH
|
Copyright (C) 2001, 2002, 2004 g10 Code GmbH
|
||||||
|
|
||||||
This file is part of GPGME.
|
This file is part of GPGME.
|
||||||
|
|
||||||
GPGME is free software; you can redistribute it and/or modify it
|
GPGME is free software; you can redistribute it and/or modify it
|
||||||
under the terms of the GNU General Public License as published by
|
under the terms of the GNU Lesser General Public License as
|
||||||
the Free Software Foundation; either version 2 of the License, or
|
published by the Free Software Foundation; either version 2.1 of
|
||||||
(at your option) any later version.
|
the License, or (at your option) any later version.
|
||||||
|
|
||||||
GPGME is distributed in the hope that it will be useful, but
|
GPGME is distributed in the hope that it will be useful, but
|
||||||
WITHOUT ANY WARRANTY; without even the implied warranty of
|
WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||||
General Public License for more details.
|
Lesser General Public License for more details.
|
||||||
|
|
||||||
You should have received a copy of the GNU General Public License
|
You should have received a copy of the GNU Lesser General Public
|
||||||
along with GPGME; if not, write to the Free Software Foundation,
|
License along with this program; if not, write to the Free Software
|
||||||
Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
|
Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
|
||||||
|
02111-1307, USA. */
|
||||||
|
|
||||||
#ifdef HAVE_CONFIG_H
|
#ifdef HAVE_CONFIG_H
|
||||||
#include <config.h>
|
#include <config.h>
|
||||||
|
@ -1,22 +1,23 @@
|
|||||||
/* progress.c - status handler for progress status
|
/* progress.c - status handler for progress status
|
||||||
Copyright (C) 2000 Werner Koch (dd9jn)
|
Copyright (C) 2000 Werner Koch (dd9jn)
|
||||||
Copyright (C) 2001, 2002, 2003 g10 Code GmbH
|
Copyright (C) 2001, 2002, 2003, 2004 g10 Code GmbH
|
||||||
|
|
||||||
This file is part of GPGME.
|
This file is part of GPGME.
|
||||||
|
|
||||||
GPGME is free software; you can redistribute it and/or modify it
|
GPGME is free software; you can redistribute it and/or modify it
|
||||||
under the terms of the GNU General Public License as published by
|
under the terms of the GNU Lesser General Public License as
|
||||||
the Free Software Foundation; either version 2 of the License, or
|
published by the Free Software Foundation; either version 2.1 of
|
||||||
(at your option) any later version.
|
the License, or (at your option) any later version.
|
||||||
|
|
||||||
GPGME is distributed in the hope that it will be useful, but
|
GPGME is distributed in the hope that it will be useful, but
|
||||||
WITHOUT ANY WARRANTY; without even the implied warranty of
|
WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||||
General Public License for more details.
|
Lesser General Public License for more details.
|
||||||
|
|
||||||
You should have received a copy of the GNU General Public License
|
You should have received a copy of the GNU Lesser General Public
|
||||||
along with GPGME; if not, write to the Free Software Foundation,
|
License along with this program; if not, write to the Free Software
|
||||||
Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
|
Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
|
||||||
|
02111-1307, USA. */
|
||||||
|
|
||||||
#ifdef HAVE_CONFIG_H
|
#ifdef HAVE_CONFIG_H
|
||||||
#include <config.h>
|
#include <config.h>
|
||||||
|
@ -1,22 +1,22 @@
|
|||||||
/* putc_unlocked.c - Replacement for putc_unlocked.
|
/* putc_unlocked.c - Replacement for putc_unlocked.
|
||||||
* Copyright (C) 2002 Free Software Foundation, Inc.
|
Copyright (C) 2004 g10 Code GmbH
|
||||||
*
|
|
||||||
* This file is part of GnuPG.
|
This file is part of GPGME.
|
||||||
*
|
|
||||||
* GnuPG is free software; you can redistribute it and/or modify
|
GPGME is free software; you can redistribute it and/or modify it
|
||||||
* it under the terms of the GNU General Public License as published by
|
under the terms of the GNU Lesser General Public License as
|
||||||
* the Free Software Foundation; either version 2 of the License, or
|
published by the Free Software Foundation; either version 2.1 of
|
||||||
* (at your option) any later version.
|
the License, or (at your option) any later version.
|
||||||
*
|
|
||||||
* GnuPG is distributed in the hope that it will be useful,
|
GPGME is distributed in the hope that it will be useful, but
|
||||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||||
* GNU General Public License for more details.
|
Lesser General Public License for more details.
|
||||||
*
|
|
||||||
* You should have received a copy of the GNU General Public License
|
You should have received a copy of the GNU Lesser General Public
|
||||||
* along with this program; if not, write to the Free Software
|
License along with this program; if not, write to the Free Software
|
||||||
* Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA
|
Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
|
||||||
*/
|
02111-1307, USA. */
|
||||||
|
|
||||||
#ifdef HAVE_CONFIG_H
|
#ifdef HAVE_CONFIG_H
|
||||||
#include <config.h>
|
#include <config.h>
|
||||||
|
@ -1,22 +1,23 @@
|
|||||||
/* rungpg.c - Gpg Engine.
|
/* rungpg.c - Gpg Engine.
|
||||||
Copyright (C) 2000 Werner Koch (dd9jn)
|
Copyright (C) 2000 Werner Koch (dd9jn)
|
||||||
Copyright (C) 2001, 2002, 2003 g10 Code GmbH
|
Copyright (C) 2001, 2002, 2003, 2004 g10 Code GmbH
|
||||||
|
|
||||||
This file is part of GPGME.
|
This file is part of GPGME.
|
||||||
|
|
||||||
GPGME is free software; you can redistribute it and/or modify it
|
GPGME is free software; you can redistribute it and/or modify it
|
||||||
under the terms of the GNU General Public License as published by
|
under the terms of the GNU Lesser General Public License as
|
||||||
the Free Software Foundation; either version 2 of the License, or
|
published by the Free Software Foundation; either version 2.1 of
|
||||||
(at your option) any later version.
|
the License, or (at your option) any later version.
|
||||||
|
|
||||||
GPGME is distributed in the hope that it will be useful, but
|
GPGME is distributed in the hope that it will be useful, but
|
||||||
WITHOUT ANY WARRANTY; without even the implied warranty of
|
WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||||
General Public License for more details.
|
Lesser General Public License for more details.
|
||||||
|
|
||||||
You should have received a copy of the GNU General Public License
|
You should have received a copy of the GNU Lesser General Public
|
||||||
along with GPGME; if not, write to the Free Software Foundation,
|
License along with this program; if not, write to the Free Software
|
||||||
Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
|
Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
|
||||||
|
02111-1307, USA. */
|
||||||
|
|
||||||
#if HAVE_CONFIG_H
|
#if HAVE_CONFIG_H
|
||||||
#include <config.h>
|
#include <config.h>
|
||||||
|
21
gpgme/sema.h
21
gpgme/sema.h
@ -1,22 +1,23 @@
|
|||||||
/* sema.h - Definitions for semaphores.
|
/* sema.h - Definitions for semaphores.
|
||||||
Copyright (C) 2000 Werner Koch (dd9jn)
|
Copyright (C) 2000 Werner Koch (dd9jn)
|
||||||
Copyright (C) 2001, 2003 g10 Code GmbH
|
Copyright (C) 2001, 2003, 2004 g10 Code GmbH
|
||||||
|
|
||||||
This file is part of GPGME.
|
This file is part of GPGME.
|
||||||
|
|
||||||
GPGME is free software; you can redistribute it and/or modify it
|
GPGME is free software; you can redistribute it and/or modify it
|
||||||
under the terms of the GNU General Public License as published by
|
under the terms of the GNU Lesser General Public License as
|
||||||
the Free Software Foundation; either version 2 of the License, or
|
published by the Free Software Foundation; either version 2.1 of
|
||||||
(at your option) any later version.
|
the License, or (at your option) any later version.
|
||||||
|
|
||||||
GPGME is distributed in the hope that it will be useful, but
|
GPGME is distributed in the hope that it will be useful, but
|
||||||
WITHOUT ANY WARRANTY; without even the implied warranty of
|
WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||||
General Public License for more details.
|
Lesser General Public License for more details.
|
||||||
|
|
||||||
You should have received a copy of the GNU General Public License
|
You should have received a copy of the GNU Lesser General Public
|
||||||
along with GPGME; if not, write to the Free Software Foundation,
|
License along with this program; if not, write to the Free Software
|
||||||
Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
|
Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
|
||||||
|
02111-1307, USA. */
|
||||||
|
|
||||||
#ifndef SEMA_H
|
#ifndef SEMA_H
|
||||||
#define SEMA_H
|
#define SEMA_H
|
||||||
|
21
gpgme/sign.c
21
gpgme/sign.c
@ -1,22 +1,23 @@
|
|||||||
/* sign.c - Signing function.
|
/* sign.c - Signing function.
|
||||||
Copyright (C) 2000 Werner Koch (dd9jn)
|
Copyright (C) 2000 Werner Koch (dd9jn)
|
||||||
Copyright (C) 2001, 2002, 2003 g10 Code GmbH
|
Copyright (C) 2001, 2002, 2003, 2004 g10 Code GmbH
|
||||||
|
|
||||||
This file is part of GPGME.
|
This file is part of GPGME.
|
||||||
|
|
||||||
GPGME is free software; you can redistribute it and/or modify it
|
GPGME is free software; you can redistribute it and/or modify it
|
||||||
under the terms of the GNU General Public License as published by
|
under the terms of the GNU Lesser General Public License as
|
||||||
the Free Software Foundation; either version 2 of the License, or
|
published by the Free Software Foundation; either version 2.1 of
|
||||||
(at your option) any later version.
|
the License, or (at your option) any later version.
|
||||||
|
|
||||||
GPGME is distributed in the hope that it will be useful, but
|
GPGME is distributed in the hope that it will be useful, but
|
||||||
WITHOUT ANY WARRANTY; without even the implied warranty of
|
WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||||
General Public License for more details.
|
Lesser General Public License for more details.
|
||||||
|
|
||||||
You should have received a copy of the GNU General Public License
|
You should have received a copy of the GNU Lesser General Public
|
||||||
along with GPGME; if not, write to the Free Software Foundation,
|
License along with this program; if not, write to the Free Software
|
||||||
Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
|
Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
|
||||||
|
02111-1307, USA. */
|
||||||
|
|
||||||
#if HAVE_CONFIG_H
|
#if HAVE_CONFIG_H
|
||||||
#include <config.h>
|
#include <config.h>
|
||||||
|
@ -1,22 +1,23 @@
|
|||||||
/* signers.c - Maintain signer sets.
|
/* signers.c - Maintain signer sets.
|
||||||
Copyright (C) 2001 Werner Koch (dd9jn)
|
Copyright (C) 2001 Werner Koch (dd9jn)
|
||||||
Copyright (C) 2001, 2002, 2003 g10 Code GmbH
|
Copyright (C) 2001, 2002, 2003, 2004 g10 Code GmbH
|
||||||
|
|
||||||
This file is part of GPGME.
|
This file is part of GPGME.
|
||||||
|
|
||||||
GPGME is free software; you can redistribute it and/or modify it
|
GPGME is free software; you can redistribute it and/or modify it
|
||||||
under the terms of the GNU General Public License as published by
|
under the terms of the GNU Lesser General Public License as
|
||||||
the Free Software Foundation; either version 2 of the License, or
|
published by the Free Software Foundation; either version 2.1 of
|
||||||
(at your option) any later version.
|
the License, or (at your option) any later version.
|
||||||
|
|
||||||
GPGME is distributed in the hope that it will be useful, but
|
GPGME is distributed in the hope that it will be useful, but
|
||||||
WITHOUT ANY WARRANTY; without even the implied warranty of
|
WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||||
General Public License for more details.
|
Lesser General Public License for more details.
|
||||||
|
|
||||||
You should have received a copy of the GNU General Public License
|
You should have received a copy of the GNU Lesser General Public
|
||||||
along with GPGME; if not, write to the Free Software Foundation,
|
License along with this program; if not, write to the Free Software
|
||||||
Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
|
Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
|
||||||
|
02111-1307, USA. */
|
||||||
|
|
||||||
#if HAVE_CONFIG_H
|
#if HAVE_CONFIG_H
|
||||||
#include <config.h>
|
#include <config.h>
|
||||||
|
@ -1,23 +1,20 @@
|
|||||||
/* stpcpy.c -- copy a string and return pointer to end of new string
|
/* Copyright (C) 1992, 1995, 1997, 2002, 2004 Free Software Foundation, Inc.
|
||||||
Copyright (C) 1992, 1995, 1997, 1998 Free Software Foundation, Inc.
|
This file is part of the GNU C Library.
|
||||||
|
|
||||||
NOTE: The canonical source of this file is maintained with the GNU C Library.
|
The GNU C Library is free software; you can redistribute it and/or
|
||||||
Bugs can be reported to bug-glibc@prep.ai.mit.edu.
|
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 program is free software; you can redistribute it and/or modify it
|
The GNU C Library is distributed in the hope that it will be useful,
|
||||||
under the terms of the GNU General Public License as published by the
|
|
||||||
Free Software Foundation; either version 2, 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
|
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||||
GNU General Public License for more details.
|
Lesser General Public License for more details.
|
||||||
|
|
||||||
You should have received a copy of the GNU General Public License
|
You should have received a copy of the GNU Lesser General Public
|
||||||
along with this program; if not, write to the Free Software
|
License along with the GNU C Library; if not, write to the Free
|
||||||
Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307,
|
Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
|
||||||
USA. */
|
02111-1307 USA. */
|
||||||
|
|
||||||
#ifdef HAVE_CONFIG_H
|
#ifdef HAVE_CONFIG_H
|
||||||
# include <config.h>
|
# include <config.h>
|
||||||
@ -34,7 +31,9 @@
|
|||||||
|
|
||||||
/* Copy SRC to DEST, returning the address of the terminating '\0' in DEST. */
|
/* Copy SRC to DEST, returning the address of the terminating '\0' in DEST. */
|
||||||
char *
|
char *
|
||||||
__stpcpy (char *dest, const char *src)
|
__stpcpy (dest, src)
|
||||||
|
char *dest;
|
||||||
|
const char *src;
|
||||||
{
|
{
|
||||||
register char *d = dest;
|
register char *d = dest;
|
||||||
register const char *s = src;
|
register const char *s = src;
|
||||||
@ -45,6 +44,12 @@ __stpcpy (char *dest, const char *src)
|
|||||||
|
|
||||||
return d - 1;
|
return d - 1;
|
||||||
}
|
}
|
||||||
|
#ifdef libc_hidden_def
|
||||||
|
libc_hidden_def (__stpcpy)
|
||||||
|
#endif
|
||||||
#ifdef weak_alias
|
#ifdef weak_alias
|
||||||
weak_alias (__stpcpy, stpcpy)
|
weak_alias (__stpcpy, stpcpy)
|
||||||
#endif
|
#endif
|
||||||
|
#ifdef libc_hidden_builtin_def
|
||||||
|
libc_hidden_builtin_def (stpcpy)
|
||||||
|
#endif
|
||||||
|
@ -1,22 +1,23 @@
|
|||||||
/* trust-item.c - Trust item objects.
|
/* trust-item.c - Trust item objects.
|
||||||
Copyright (C) 2000 Werner Koch (dd9jn)
|
Copyright (C) 2000 Werner Koch (dd9jn)
|
||||||
Copyright (C) 2001, 2002, 2003 g10 Code GmbH
|
Copyright (C) 2001, 2002, 2003, 2004 g10 Code GmbH
|
||||||
|
|
||||||
This file is part of GPGME.
|
This file is part of GPGME.
|
||||||
|
|
||||||
GPGME is free software; you can redistribute it and/or modify it
|
GPGME is free software; you can redistribute it and/or modify it
|
||||||
under the terms of the GNU General Public License as published by
|
under the terms of the GNU Lesser General Public License as
|
||||||
the Free Software Foundation; either version 2 of the License, or
|
published by the Free Software Foundation; either version 2.1 of
|
||||||
(at your option) any later version.
|
the License, or (at your option) any later version.
|
||||||
|
|
||||||
GPGME is distributed in the hope that it will be useful, but
|
GPGME is distributed in the hope that it will be useful, but
|
||||||
WITHOUT ANY WARRANTY; without even the implied warranty of
|
WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||||
General Public License for more details.
|
Lesser General Public License for more details.
|
||||||
|
|
||||||
You should have received a copy of the GNU General Public License
|
You should have received a copy of the GNU Lesser General Public
|
||||||
along with GPGME; if not, write to the Free Software Foundation,
|
License along with this program; if not, write to the Free Software
|
||||||
Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
|
Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
|
||||||
|
02111-1307, USA. */
|
||||||
|
|
||||||
#if HAVE_CONFIG_H
|
#if HAVE_CONFIG_H
|
||||||
#include <config.h>
|
#include <config.h>
|
||||||
|
@ -1,22 +1,23 @@
|
|||||||
/* trustlist.c - Trust item listing.
|
/* trustlist.c - Trust item listing.
|
||||||
Copyright (C) 2000 Werner Koch (dd9jn)
|
Copyright (C) 2000 Werner Koch (dd9jn)
|
||||||
Copyright (C) 2001, 2002, 2003 g10 Code GmbH
|
Copyright (C) 2001, 2002, 2003, 2004 g10 Code GmbH
|
||||||
|
|
||||||
This file is part of GPGME.
|
This file is part of GPGME.
|
||||||
|
|
||||||
GPGME is free software; you can redistribute it and/or modify it
|
GPGME is free software; you can redistribute it and/or modify it
|
||||||
under the terms of the GNU General Public License as published by
|
under the terms of the GNU Lesser General Public License as
|
||||||
the Free Software Foundation; either version 2 of the License, or
|
published by the Free Software Foundation; either version 2.1 of
|
||||||
(at your option) any later version.
|
the License, or (at your option) any later version.
|
||||||
|
|
||||||
GPGME is distributed in the hope that it will be useful, but
|
GPGME is distributed in the hope that it will be useful, but
|
||||||
WITHOUT ANY WARRANTY; without even the implied warranty of
|
WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||||
General Public License for more details.
|
Lesser General Public License for more details.
|
||||||
|
|
||||||
You should have received a copy of the GNU General Public License
|
You should have received a copy of the GNU Lesser General Public
|
||||||
along with GPGME; if not, write to the Free Software Foundation,
|
License along with this program; if not, write to the Free Software
|
||||||
Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
|
Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
|
||||||
|
02111-1307, USA. */
|
||||||
|
|
||||||
#if HAVE_CONFIG_H
|
#if HAVE_CONFIG_H
|
||||||
#include <config.h>
|
#include <config.h>
|
||||||
|
44
gpgme/ttyname_r.c
Normal file
44
gpgme/ttyname_r.c
Normal file
@ -0,0 +1,44 @@
|
|||||||
|
/* ttyname_r.c - A ttyname_r() replacement.
|
||||||
|
Copyright (C) 2003, 2004 g10 Code GmbH
|
||||||
|
|
||||||
|
This file is part of GPGME.
|
||||||
|
|
||||||
|
GPGME 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.
|
||||||
|
|
||||||
|
GPGME 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 program; if not, write to the Free Software
|
||||||
|
Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
|
||||||
|
02111-1307, USA. */
|
||||||
|
|
||||||
|
#if HAVE_CONFIG_H
|
||||||
|
#include <config.h>
|
||||||
|
#endif
|
||||||
|
#include <stdlib.h>
|
||||||
|
#include <errno.h>
|
||||||
|
#include <string.h>
|
||||||
|
#include <unistd.h>
|
||||||
|
|
||||||
|
|
||||||
|
#warning ttyname is not thread-safe, and ttyname_r is missing
|
||||||
|
|
||||||
|
int
|
||||||
|
ttyname_r (int fd, char *buf, size_t buflen)
|
||||||
|
{
|
||||||
|
char *tty;
|
||||||
|
|
||||||
|
tty = ttyname (fd);
|
||||||
|
if (!tty)
|
||||||
|
return errno;
|
||||||
|
|
||||||
|
strncpy (buf, tty, buflen);
|
||||||
|
buf[buflen - 1] = '\0';
|
||||||
|
return (strlen (tty) >= buflen) ? ERANGE : 0;
|
||||||
|
}
|
25
gpgme/util.h
25
gpgme/util.h
@ -1,22 +1,23 @@
|
|||||||
/* util.h
|
/* util.h
|
||||||
Copyright (C) 2000 Werner Koch (dd9jn)
|
Copyright (C) 2000 Werner Koch (dd9jn)
|
||||||
Copyright (C) 2001, 2002, 2003 g10 Code GmbH
|
Copyright (C) 2001, 2002, 2003, 2004 g10 Code GmbH
|
||||||
|
|
||||||
This file is part of GPGME.
|
This file is part of GPGME.
|
||||||
|
|
||||||
GPGME is free software; you can redistribute it and/or modify it
|
GPGME is free software; you can redistribute it and/or modify it
|
||||||
under the terms of the GNU General Public License as published by
|
under the terms of the GNU Lesser General Public License as
|
||||||
the Free Software Foundation; either version 2 of the License, or
|
published by the Free Software Foundation; either version 2.1 of
|
||||||
(at your option) any later version.
|
the License, or (at your option) any later version.
|
||||||
|
|
||||||
GPGME is distributed in the hope that it will be useful, but
|
GPGME is distributed in the hope that it will be useful, but
|
||||||
WITHOUT ANY WARRANTY; without even the implied warranty of
|
WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||||
General Public License for more details.
|
Lesser General Public License for more details.
|
||||||
|
|
||||||
You should have received a copy of the GNU General Public License
|
You should have received a copy of the GNU Lesser General Public
|
||||||
along with GPGME; if not, write to the Free Software Foundation,
|
License along with this program; if not, write to the Free Software
|
||||||
Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
|
Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
|
||||||
|
02111-1307, USA. */
|
||||||
|
|
||||||
#ifndef UTIL_H
|
#ifndef UTIL_H
|
||||||
#define UTIL_H
|
#define UTIL_H
|
||||||
@ -43,6 +44,10 @@ char *stpcpy (char *a, const char *b);
|
|||||||
int vasprintf (char **result, const char *format, va_list args);
|
int vasprintf (char **result, const char *format, va_list args);
|
||||||
int asprintf (char **result, const char *format, ...);
|
int asprintf (char **result, const char *format, ...);
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
#ifndef HAVE_TTYNAME_R
|
||||||
|
int ttyname_r (int fd, char *buf, size_t buflen);
|
||||||
|
#endif
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
|
||||||
|
@ -1,22 +1,23 @@
|
|||||||
/* verify.c - Signature verification.
|
/* verify.c - Signature verification.
|
||||||
Copyright (C) 2000 Werner Koch (dd9jn)
|
Copyright (C) 2000 Werner Koch (dd9jn)
|
||||||
Copyright (C) 2001, 2002, 2003, 2004 g10 Code GmbH
|
Copyright (C) 2001, 2002, 2003, 2004, 2005 g10 Code GmbH
|
||||||
|
|
||||||
This file is part of GPGME.
|
This file is part of GPGME.
|
||||||
|
|
||||||
GPGME is free software; you can redistribute it and/or modify it
|
GPGME is free software; you can redistribute it and/or modify it
|
||||||
under the terms of the GNU General Public License as published by
|
under the terms of the GNU Lesser General Public License as
|
||||||
the Free Software Foundation; either version 2 of the License, or
|
published by the Free Software Foundation; either version 2.1 of
|
||||||
(at your option) any later version.
|
the License, or (at your option) any later version.
|
||||||
|
|
||||||
GPGME is distributed in the hope that it will be useful, but
|
GPGME is distributed in the hope that it will be useful, but
|
||||||
WITHOUT ANY WARRANTY; without even the implied warranty of
|
WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||||
General Public License for more details.
|
Lesser General Public License for more details.
|
||||||
|
|
||||||
You should have received a copy of the GNU General Public License
|
You should have received a copy of the GNU Lesser General Public
|
||||||
along with GPGME; if not, write to the Free Software Foundation,
|
License along with this program; if not, write to the Free Software
|
||||||
Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
|
Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
|
||||||
|
02111-1307, USA. */
|
||||||
|
|
||||||
#if HAVE_CONFIG_H
|
#if HAVE_CONFIG_H
|
||||||
#include <config.h>
|
#include <config.h>
|
||||||
@ -93,7 +94,8 @@ static void
|
|||||||
calc_sig_summary (gpgme_signature_t sig)
|
calc_sig_summary (gpgme_signature_t sig)
|
||||||
{
|
{
|
||||||
unsigned long sum = 0;
|
unsigned long sum = 0;
|
||||||
|
|
||||||
|
/* Calculate the red/green flag. */
|
||||||
if (sig->validity == GPGME_VALIDITY_FULL
|
if (sig->validity == GPGME_VALIDITY_FULL
|
||||||
|| sig->validity == GPGME_VALIDITY_ULTIMATE)
|
|| sig->validity == GPGME_VALIDITY_ULTIMATE)
|
||||||
{
|
{
|
||||||
@ -112,11 +114,6 @@ calc_sig_summary (gpgme_signature_t sig)
|
|||||||
else if (gpg_err_code (sig->status) == GPG_ERR_BAD_SIGNATURE)
|
else if (gpg_err_code (sig->status) == GPG_ERR_BAD_SIGNATURE)
|
||||||
sum |= GPGME_SIGSUM_RED;
|
sum |= GPGME_SIGSUM_RED;
|
||||||
|
|
||||||
if (sig->validity == GPGME_VALIDITY_UNKNOWN)
|
|
||||||
{
|
|
||||||
if (gpg_err_code (sig->validity_reason) == GPG_ERR_CRL_TOO_OLD)
|
|
||||||
sum |= GPGME_SIGSUM_CRL_TOO_OLD;
|
|
||||||
}
|
|
||||||
|
|
||||||
/* FIXME: handle the case when key and message are expired. */
|
/* FIXME: handle the case when key and message are expired. */
|
||||||
switch (gpg_err_code (sig->status))
|
switch (gpg_err_code (sig->status))
|
||||||
@ -142,6 +139,23 @@ calc_sig_summary (gpgme_signature_t sig)
|
|||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/* Now look at the certain reason codes. */
|
||||||
|
switch (gpg_err_code (sig->validity_reason))
|
||||||
|
{
|
||||||
|
case GPG_ERR_CRL_TOO_OLD:
|
||||||
|
if (sig->validity == GPGME_VALIDITY_UNKNOWN)
|
||||||
|
sum |= GPGME_SIGSUM_CRL_TOO_OLD;
|
||||||
|
break;
|
||||||
|
|
||||||
|
case GPG_ERR_CERT_REVOKED:
|
||||||
|
sum |= GPGME_SIGSUM_KEY_REVOKED;
|
||||||
|
break;
|
||||||
|
|
||||||
|
default:
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Check other flags. */
|
||||||
if (sig->wrong_key_usage)
|
if (sig->wrong_key_usage)
|
||||||
sum |= GPGME_SIGSUM_BAD_POLICY;
|
sum |= GPGME_SIGSUM_BAD_POLICY;
|
||||||
|
|
||||||
|
@ -1,22 +1,23 @@
|
|||||||
/* version.c - Version check routines.
|
/* version.c - Version check routines.
|
||||||
Copyright (C) 2000 Werner Koch (dd9jn)
|
Copyright (C) 2000 Werner Koch (dd9jn)
|
||||||
Copyright (C) 2001, 2002, 2003 g10 Code GmbH
|
Copyright (C) 2001, 2002, 2003, 2004 g10 Code GmbH
|
||||||
|
|
||||||
This file is part of GPGME.
|
This file is part of GPGME.
|
||||||
|
|
||||||
GPGME is free software; you can redistribute it and/or modify it
|
GPGME is free software; you can redistribute it and/or modify it
|
||||||
under the terms of the GNU General Public License as published by
|
under the terms of the GNU Lesser General Public License as
|
||||||
the Free Software Foundation; either version 2 of the License, or
|
published by the Free Software Foundation; either version 2.1 of
|
||||||
(at your option) any later version.
|
the License, or (at your option) any later version.
|
||||||
|
|
||||||
GPGME is distributed in the hope that it will be useful, but
|
GPGME is distributed in the hope that it will be useful, but
|
||||||
WITHOUT ANY WARRANTY; without even the implied warranty of
|
WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||||
General Public License for more details.
|
Lesser General Public License for more details.
|
||||||
|
|
||||||
You should have received a copy of the GNU General Public License
|
You should have received a copy of the GNU Lesser General Public
|
||||||
along with GPGME; if not, write to the Free Software Foundation,
|
License along with this program; if not, write to the Free Software
|
||||||
Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
|
Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
|
||||||
|
02111-1307, USA. */
|
||||||
|
|
||||||
#if HAVE_CONFIG_H
|
#if HAVE_CONFIG_H
|
||||||
#include <config.h>
|
#include <config.h>
|
||||||
|
@ -1,22 +1,23 @@
|
|||||||
/* w32-io.c - W32 API I/O functions.
|
/* w32-io.c - W32 API I/O functions.
|
||||||
Copyright (C) 2000 Werner Koch (dd9jn)
|
Copyright (C) 2000 Werner Koch (dd9jn)
|
||||||
Copyright (C) 2001, 2002, 2003 g10 Code GmbH
|
Copyright (C) 2001, 2002, 2003, 2004, 2005 g10 Code GmbH
|
||||||
|
|
||||||
This file is part of GPGME.
|
This file is part of GPGME.
|
||||||
|
|
||||||
GPGME is free software; you can redistribute it and/or modify it
|
GPGME is free software; you can redistribute it and/or modify it
|
||||||
under the terms of the GNU General Public License as published by
|
under the terms of the GNU Lesser General Public License as
|
||||||
the Free Software Foundation; either version 2 of the License, or
|
published by the Free Software Foundation; either version 2.1 of
|
||||||
(at your option) any later version.
|
the License, or (at your option) any later version.
|
||||||
|
|
||||||
GPGME is distributed in the hope that it will be useful, but
|
GPGME is distributed in the hope that it will be useful, but
|
||||||
WITHOUT ANY WARRANTY; without even the implied warranty of
|
WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||||
General Public License for more details.
|
Lesser General Public License for more details.
|
||||||
|
|
||||||
You should have received a copy of the GNU General Public License
|
You should have received a copy of the GNU Lesser General Public
|
||||||
along with GPGME; if not, write to the Free Software Foundation,
|
License along with this program; if not, write to the Free Software
|
||||||
Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
|
Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
|
||||||
|
02111-1307, USA. */
|
||||||
|
|
||||||
#ifdef HAVE_CONFIG_H
|
#ifdef HAVE_CONFIG_H
|
||||||
#include <config.h>
|
#include <config.h>
|
||||||
@ -1084,7 +1085,7 @@ _gpgme_io_select ( struct io_select_fd_s *fds, size_t nfds, int nonblock )
|
|||||||
int k, j = handle_to_fd (waitbuf[i]);
|
int k, j = handle_to_fd (waitbuf[i]);
|
||||||
|
|
||||||
DEBUG1 ("WFMO invalid handle %d removed\n", j);
|
DEBUG1 ("WFMO invalid handle %d removed\n", j);
|
||||||
for (k=0 ; k < nfds; i++ ) {
|
for (k=0 ; k < nfds; k++ ) {
|
||||||
if ( fds[k].fd == j ) {
|
if ( fds[k].fd == j ) {
|
||||||
fds[k].for_read = fds[k].for_write = 0;
|
fds[k].for_read = fds[k].for_write = 0;
|
||||||
goto restart;
|
goto restart;
|
||||||
|
@ -1,22 +1,23 @@
|
|||||||
/* w32-sema.c
|
/* w32-sema.c
|
||||||
Copyright (C) 2001 Werner Koch (dd9jn)
|
Copyright (C) 2001 Werner Koch (dd9jn)
|
||||||
Copyright (C) 2001, 2002 g10 Code GmbH
|
Copyright (C) 2001, 2002, 2004 g10 Code GmbH
|
||||||
|
|
||||||
This file is part of GPGME.
|
This file is part of GPGME.
|
||||||
|
|
||||||
GPGME is free software; you can redistribute it and/or modify it
|
GPGME is free software; you can redistribute it and/or modify it
|
||||||
under the terms of the GNU General Public License as published by
|
under the terms of the GNU Lesser General Public License as
|
||||||
the Free Software Foundation; either version 2 of the License, or
|
published by the Free Software Foundation; either version 2.1 of
|
||||||
(at your option) any later version.
|
the License, or (at your option) any later version.
|
||||||
|
|
||||||
GPGME is distributed in the hope that it will be useful, but
|
GPGME is distributed in the hope that it will be useful, but
|
||||||
WITHOUT ANY WARRANTY; without even the implied warranty of
|
WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||||
General Public License for more details.
|
Lesser General Public License for more details.
|
||||||
|
|
||||||
You should have received a copy of the GNU General Public License
|
You should have received a copy of the GNU Lesser General Public
|
||||||
along with GPGME; if not, write to the Free Software Foundation,
|
License along with this program; if not, write to the Free Software
|
||||||
Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
|
Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
|
||||||
|
02111-1307, USA. */
|
||||||
|
|
||||||
#ifdef HAVE_CONFIG_H
|
#ifdef HAVE_CONFIG_H
|
||||||
#include <config.h>
|
#include <config.h>
|
||||||
|
@ -1,23 +1,24 @@
|
|||||||
/* w32-util.c - Utility functions for the W32 API
|
/* w32-util.c - Utility functions for the W32 API
|
||||||
Copyright (C) 1999 Free Software Foundation, Inc
|
Copyright (C) 1999 Free Software Foundation, Inc
|
||||||
Copyright (C) 2001 Werner Koch (dd9jn)
|
Copyright (C) 2001 Werner Koch (dd9jn)
|
||||||
Copyright (C) 2001, 2002, 2003 g10 Code GmbH
|
Copyright (C) 2001, 2002, 2003, 2004 g10 Code GmbH
|
||||||
|
|
||||||
This file is part of GPGME.
|
This file is part of GPGME.
|
||||||
|
|
||||||
GPGME is free software; you can redistribute it and/or modify it
|
GPGME is free software; you can redistribute it and/or modify it
|
||||||
under the terms of the GNU General Public License as published by
|
under the terms of the GNU Lesser General Public License as
|
||||||
the Free Software Foundation; either version 2 of the License, or
|
published by the Free Software Foundation; either version 2.1 of
|
||||||
(at your option) any later version.
|
the License, or (at your option) any later version.
|
||||||
|
|
||||||
GPGME is distributed in the hope that it will be useful, but
|
GPGME is distributed in the hope that it will be useful, but
|
||||||
WITHOUT ANY WARRANTY; without even the implied warranty of
|
WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||||
General Public License for more details.
|
Lesser General Public License for more details.
|
||||||
|
|
||||||
You should have received a copy of the GNU General Public License
|
You should have received a copy of the GNU Lesser General Public
|
||||||
along with GPGME; if not, write to the Free Software Foundation,
|
License along with this program; if not, write to the Free Software
|
||||||
Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
|
Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
|
||||||
|
02111-1307, USA. */
|
||||||
|
|
||||||
#ifdef HAVE_CONFIG_H
|
#ifdef HAVE_CONFIG_H
|
||||||
#include <config.h>
|
#include <config.h>
|
||||||
|
@ -1,22 +1,23 @@
|
|||||||
/* wait-global.c
|
/* wait-global.c
|
||||||
Copyright (C) 2000 Werner Koch (dd9jn)
|
Copyright (C) 2000 Werner Koch (dd9jn)
|
||||||
Copyright (C) 2001, 2002, 2003 g10 Code GmbH
|
Copyright (C) 2001, 2002, 2003, 2004, 2005 g10 Code GmbH
|
||||||
|
|
||||||
This file is part of GPGME.
|
This file is part of GPGME.
|
||||||
|
|
||||||
GPGME is free software; you can redistribute it and/or modify it
|
GPGME is free software; you can redistribute it and/or modify it
|
||||||
under the terms of the GNU General Public License as published by
|
under the terms of the GNU Lesser General Public License as
|
||||||
the Free Software Foundation; either version 2 of the License, or
|
published by the Free Software Foundation; either version 2.1 of
|
||||||
(at your option) any later version.
|
the License, or (at your option) any later version.
|
||||||
|
|
||||||
GPGME is distributed in the hope that it will be useful, but
|
GPGME is distributed in the hope that it will be useful, but
|
||||||
WITHOUT ANY WARRANTY; without even the implied warranty of
|
WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||||
General Public License for more details.
|
Lesser General Public License for more details.
|
||||||
|
|
||||||
You should have received a copy of the GNU General Public License
|
You should have received a copy of the GNU Lesser General Public
|
||||||
along with GPGME; if not, write to the Free Software Foundation,
|
License along with this program; if not, write to the Free Software
|
||||||
Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
|
Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
|
||||||
|
02111-1307, USA. */
|
||||||
|
|
||||||
#if HAVE_CONFIG_H
|
#if HAVE_CONFIG_H
|
||||||
#include <config.h>
|
#include <config.h>
|
||||||
@ -309,7 +310,7 @@ gpgme_wait (gpgme_ctx_t ctx, gpgme_error_t *status, int hang)
|
|||||||
ictx = item->ctx;
|
ictx = item->ctx;
|
||||||
assert (ictx);
|
assert (ictx);
|
||||||
|
|
||||||
err = item->handler (item->handler_value, fdt.fds[i].fd);
|
err = _gpgme_run_io_cb (&fdt.fds[i], 0);
|
||||||
if (err)
|
if (err)
|
||||||
{
|
{
|
||||||
/* An error occured. Close all fds in this context,
|
/* An error occured. Close all fds in this context,
|
||||||
@ -321,6 +322,11 @@ gpgme_wait (gpgme_ctx_t ctx, gpgme_error_t *status, int hang)
|
|||||||
_gpgme_io_close (ictx->fdt.fds[idx].fd);
|
_gpgme_io_close (ictx->fdt.fds[idx].fd);
|
||||||
_gpgme_engine_io_event (ictx->engine, GPGME_EVENT_DONE,
|
_gpgme_engine_io_event (ictx->engine, GPGME_EVENT_DONE,
|
||||||
&err);
|
&err);
|
||||||
|
|
||||||
|
/* Break out of the loop, and retry the select()
|
||||||
|
from scratch, because now all fds should be
|
||||||
|
gone. */
|
||||||
|
break;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -330,13 +336,15 @@ gpgme_wait (gpgme_ctx_t ctx, gpgme_error_t *status, int hang)
|
|||||||
LOCK (ctx_list_lock);
|
LOCK (ctx_list_lock);
|
||||||
for (li = ctx_active_list; li; li = li->next)
|
for (li = ctx_active_list; li; li = li->next)
|
||||||
{
|
{
|
||||||
for (i = 0; i < ctx->fdt.size; i++)
|
gpgme_ctx_t actx = li->ctx;
|
||||||
if (ctx->fdt.fds[i].fd != -1)
|
|
||||||
|
for (i = 0; i < actx->fdt.size; i++)
|
||||||
|
if (actx->fdt.fds[i].fd != -1)
|
||||||
break;
|
break;
|
||||||
if (i == ctx->fdt.size)
|
if (i == actx->fdt.size)
|
||||||
{
|
{
|
||||||
gpgme_error_t err = 0;
|
gpgme_error_t err = 0;
|
||||||
_gpgme_engine_io_event (ctx->engine, GPGME_EVENT_DONE, &err);
|
_gpgme_engine_io_event (actx->engine, GPGME_EVENT_DONE, &err);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
UNLOCK (ctx_list_lock);
|
UNLOCK (ctx_list_lock);
|
||||||
@ -349,6 +357,12 @@ gpgme_wait (gpgme_ctx_t ctx, gpgme_error_t *status, int hang)
|
|||||||
ctx = dctx;
|
ctx = dctx;
|
||||||
hang = 0;
|
hang = 0;
|
||||||
}
|
}
|
||||||
|
else if (!hang)
|
||||||
|
{
|
||||||
|
ctx = NULL;
|
||||||
|
if (status)
|
||||||
|
*status = 0;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
while (hang);
|
while (hang);
|
||||||
|
@ -1,22 +1,23 @@
|
|||||||
/* wait-private.c
|
/* wait-private.c
|
||||||
Copyright (C) 2000 Werner Koch (dd9jn)
|
Copyright (C) 2000 Werner Koch (dd9jn)
|
||||||
Copyright (C) 2001, 2002, 2003 g10 Code GmbH
|
Copyright (C) 2001, 2002, 2003, 2004, 2005 g10 Code GmbH
|
||||||
|
|
||||||
This file is part of GPGME.
|
This file is part of GPGME.
|
||||||
|
|
||||||
GPGME is free software; you can redistribute it and/or modify it
|
GPGME is free software; you can redistribute it and/or modify it
|
||||||
under the terms of the GNU General Public License as published by
|
under the terms of the GNU Lesser General Public License as
|
||||||
the Free Software Foundation; either version 2 of the License, or
|
published by the Free Software Foundation; either version 2.1 of
|
||||||
(at your option) any later version.
|
the License, or (at your option) any later version.
|
||||||
|
|
||||||
GPGME is distributed in the hope that it will be useful, but
|
GPGME is distributed in the hope that it will be useful, but
|
||||||
WITHOUT ANY WARRANTY; without even the implied warranty of
|
WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||||
General Public License for more details.
|
Lesser General Public License for more details.
|
||||||
|
|
||||||
You should have received a copy of the GNU General Public License
|
You should have received a copy of the GNU Lesser General Public
|
||||||
along with GPGME; if not, write to the Free Software Foundation,
|
License along with this program; if not, write to the Free Software
|
||||||
Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
|
Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
|
||||||
|
02111-1307, USA. */
|
||||||
|
|
||||||
#if HAVE_CONFIG_H
|
#if HAVE_CONFIG_H
|
||||||
#include <config.h>
|
#include <config.h>
|
||||||
@ -100,15 +101,11 @@ _gpgme_wait_on_condition (gpgme_ctx_t ctx, volatile int *cond)
|
|||||||
{
|
{
|
||||||
if (ctx->fdt.fds[i].fd != -1 && ctx->fdt.fds[i].signaled)
|
if (ctx->fdt.fds[i].fd != -1 && ctx->fdt.fds[i].signaled)
|
||||||
{
|
{
|
||||||
struct wait_item_s *item;
|
|
||||||
|
|
||||||
ctx->fdt.fds[i].signaled = 0;
|
ctx->fdt.fds[i].signaled = 0;
|
||||||
assert (nr);
|
assert (nr);
|
||||||
nr--;
|
nr--;
|
||||||
|
|
||||||
item = (struct wait_item_s *) ctx->fdt.fds[i].opaque;
|
|
||||||
|
|
||||||
err = item->handler (item->handler_value, ctx->fdt.fds[i].fd);
|
err = _gpgme_run_io_cb (&ctx->fdt.fds[i], 0);
|
||||||
if (err)
|
if (err)
|
||||||
{
|
{
|
||||||
/* An error occured. Close all fds in this context,
|
/* An error occured. Close all fds in this context,
|
||||||
|
@ -1,22 +1,23 @@
|
|||||||
/* wait.c
|
/* wait-user.c
|
||||||
Copyright (C) 2000 Werner Koch (dd9jn)
|
Copyright (C) 2000 Werner Koch (dd9jn)
|
||||||
Copyright (C) 2001, 2002, 2003 g10 Code GmbH
|
Copyright (C) 2001, 2002, 2003, 2004, 2005 g10 Code GmbH
|
||||||
|
|
||||||
This file is part of GPGME.
|
This file is part of GPGME.
|
||||||
|
|
||||||
GPGME is free software; you can redistribute it and/or modify it
|
GPGME is free software; you can redistribute it and/or modify it
|
||||||
under the terms of the GNU General Public License as published by
|
under the terms of the GNU Lesser General Public License as
|
||||||
the Free Software Foundation; either version 2 of the License, or
|
published by the Free Software Foundation; either version 2.1 of
|
||||||
(at your option) any later version.
|
the License, or (at your option) any later version.
|
||||||
|
|
||||||
GPGME is distributed in the hope that it will be useful, but
|
GPGME is distributed in the hope that it will be useful, but
|
||||||
WITHOUT ANY WARRANTY; without even the implied warranty of
|
WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||||
General Public License for more details.
|
Lesser General Public License for more details.
|
||||||
|
|
||||||
You should have received a copy of the GNU General Public License
|
You should have received a copy of the GNU Lesser General Public
|
||||||
along with GPGME; if not, write to the Free Software Foundation,
|
License along with this program; if not, write to the Free Software
|
||||||
Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
|
Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
|
||||||
|
02111-1307, USA. */
|
||||||
|
|
||||||
#if HAVE_CONFIG_H
|
#if HAVE_CONFIG_H
|
||||||
#include <config.h>
|
#include <config.h>
|
||||||
@ -41,15 +42,12 @@ _gpgme_user_io_cb_handler (void *data, int fd)
|
|||||||
gpgme_error_t err;
|
gpgme_error_t err;
|
||||||
struct tag *tag = (struct tag *) data;
|
struct tag *tag = (struct tag *) data;
|
||||||
gpgme_ctx_t ctx;
|
gpgme_ctx_t ctx;
|
||||||
struct wait_item_s *item;
|
|
||||||
|
|
||||||
assert (data);
|
assert (data);
|
||||||
ctx = tag->ctx;
|
ctx = tag->ctx;
|
||||||
assert (ctx);
|
assert (ctx);
|
||||||
item = (struct wait_item_s *) ctx->fdt.fds[tag->idx].opaque;
|
|
||||||
assert (item);
|
|
||||||
|
|
||||||
err = (*item->handler) (item->handler_value, fd);
|
err = _gpgme_run_io_cb (&ctx->fdt.fds[tag->idx], 0);
|
||||||
if (err)
|
if (err)
|
||||||
{
|
{
|
||||||
unsigned int idx;
|
unsigned int idx;
|
||||||
|
56
gpgme/wait.c
56
gpgme/wait.c
@ -1,22 +1,23 @@
|
|||||||
/* wait.c
|
/* wait.c
|
||||||
Copyright (C) 2000 Werner Koch (dd9jn)
|
Copyright (C) 2000 Werner Koch (dd9jn)
|
||||||
Copyright (C) 2001, 2002, 2003 g10 Code GmbH
|
Copyright (C) 2001, 2002, 2003, 2004, 2005 g10 Code GmbH
|
||||||
|
|
||||||
This file is part of GPGME.
|
This file is part of GPGME.
|
||||||
|
|
||||||
GPGME is free software; you can redistribute it and/or modify it
|
GPGME is free software; you can redistribute it and/or modify it
|
||||||
under the terms of the GNU General Public License as published by
|
under the terms of the GNU Lesser General Public License as
|
||||||
the Free Software Foundation; either version 2 of the License, or
|
published by the Free Software Foundation; either version 2.1 of
|
||||||
(at your option) any later version.
|
the License, or (at your option) any later version.
|
||||||
|
|
||||||
GPGME is distributed in the hope that it will be useful, but
|
GPGME is distributed in the hope that it will be useful, but
|
||||||
WITHOUT ANY WARRANTY; without even the implied warranty of
|
WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||||
General Public License for more details.
|
Lesser General Public License for more details.
|
||||||
|
|
||||||
You should have received a copy of the GNU General Public License
|
You should have received a copy of the GNU Lesser General Public
|
||||||
along with GPGME; if not, write to the Free Software Foundation,
|
License along with this program; if not, write to the Free Software
|
||||||
Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
|
Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
|
||||||
|
02111-1307, USA. */
|
||||||
|
|
||||||
#if HAVE_CONFIG_H
|
#if HAVE_CONFIG_H
|
||||||
#include <config.h>
|
#include <config.h>
|
||||||
@ -166,3 +167,38 @@ _gpgme_remove_io_cb (void *data)
|
|||||||
fdt->fds[idx].for_write = 0;
|
fdt->fds[idx].for_write = 0;
|
||||||
fdt->fds[idx].opaque = NULL;
|
fdt->fds[idx].opaque = NULL;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/* This is slightly embarrassing. The problem is that running an I/O
|
||||||
|
callback _may_ influence the status of other file descriptors. Our
|
||||||
|
own event loops could compensate for that, but the external event
|
||||||
|
loops cannot. FIXME: We may still want to optimize this a bit when
|
||||||
|
we are called from our own event loops. So if CHECKED is 1, the
|
||||||
|
check is skipped. */
|
||||||
|
gpgme_error_t
|
||||||
|
_gpgme_run_io_cb (struct io_select_fd_s *an_fds, int checked)
|
||||||
|
{
|
||||||
|
struct wait_item_s *item;
|
||||||
|
item = (struct wait_item_s *) an_fds->opaque;
|
||||||
|
assert (item);
|
||||||
|
|
||||||
|
if (!checked)
|
||||||
|
{
|
||||||
|
int nr;
|
||||||
|
struct io_select_fd_s fds;
|
||||||
|
|
||||||
|
fds = *an_fds;
|
||||||
|
fds.signaled = 0;
|
||||||
|
/* Just give it a quick poll. */
|
||||||
|
nr = _gpgme_io_select (&fds, 1, 1);
|
||||||
|
assert (nr <= 1);
|
||||||
|
if (nr < 0)
|
||||||
|
return errno;
|
||||||
|
else if (nr == 0)
|
||||||
|
/* The status changed in the meantime, there is nothing left
|
||||||
|
to do. */
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
return item->handler (item->handler_value, an_fds->fd);
|
||||||
|
}
|
||||||
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue
Block a user