mirror of
git://git.gnupg.org/gnupg.git
synced 2024-12-23 10:29:58 +01:00
87 lines
2.8 KiB
Plaintext
87 lines
2.8 KiB
Plaintext
@c Copyright (C) 2004 Free Software Foundation, Inc.
|
|
@c This is part of the GnuPG manual.
|
|
@c For copying conditions, see the file gnupg.texi.
|
|
|
|
@node System Notes
|
|
@chapter Notes pertaining to certain OSes.
|
|
|
|
GnuPG has been developed on GNU/Linux systems and is know to work on
|
|
almost all Free OSes. All modern POSIX systems should be supported
|
|
right now, however there are probably a lot of smaller glitches we need
|
|
to fix first. The major problem areas are:
|
|
|
|
@itemize
|
|
@item
|
|
For logging to sockets and other internal operations the
|
|
@code{fopencookie} function (@code{funopen} under *BSD) is used. This
|
|
is a very convenient function which makes it possible to create outputs in
|
|
a structures and easy maintainable way. The drawback however is that
|
|
most proprietary OSes don't support this function. At g10@tie{}Code we
|
|
have looked into several ways on how to overcome this limitation but no
|
|
sufficiently easy and maintainable way has been found. Porting
|
|
@emph{glibc} to a general POSIX system is of course an option and would
|
|
make writing portable software much easier; this it has not yet been
|
|
done and the system administrator would need to cope with the GNU
|
|
specific admin things in addition to the generic ones of his system.
|
|
|
|
We have now settled to use explicit stdio wrappers with a functionality
|
|
similar to funopen. Although the code for this has already been written
|
|
(@emph{libestream}), we have not yet changed GnuPG to use it.
|
|
|
|
This means that on systems not supporting either @code{funopen} or
|
|
@code{fopencookie}, logging to a socket won't work, prompts are not
|
|
formatted as pretty as they should be and @command{gpgsm}'s
|
|
@code{LISTKEYS} Assuan command does not work.
|
|
|
|
@item
|
|
We are planning to use file descriptor passing for interprocess
|
|
communication. This will allow us save a lot of resources and improve
|
|
performance of certain operations a lot. Systems not supporting this
|
|
won't gain these benefits but we try to keep them working the standard
|
|
way as it is done today.
|
|
|
|
@item
|
|
We require more or less full POSIX compatibility. This has been
|
|
around for 15 years now and thus we don't believe it makes sense to
|
|
support non POSIX systems anymore. Well, we of course the usual
|
|
workarounds for near POSIX systems well be applied.
|
|
|
|
There is one exception of this rule: Systems based the Microsoft Windows
|
|
API (called here @emph{W32}) will be supported to some extend.
|
|
|
|
@end itemize
|
|
|
|
|
|
@menu
|
|
* W32 Notes:: Microsoft Windows Notes
|
|
@end menu
|
|
|
|
|
|
@node W32 Notes
|
|
@section Microsoft Windows Notes
|
|
|
|
@noindent
|
|
Current limitations are:
|
|
|
|
@itemize
|
|
|
|
@item
|
|
@command{gpgconf} does not create backup files, so in case of trouble
|
|
your configuration file might get lost.
|
|
|
|
@item
|
|
@command{watchgnupg} is not available. Logging to sockets is not
|
|
possible.
|
|
|
|
@item
|
|
The periodical smartcard status checking done by @command{scdaemon} is
|
|
not yet supported.
|
|
|
|
@end itemize
|
|
|
|
|
|
|
|
|
|
|
|
|