Page Menu
Home
GnuPG
Search
Configure Global Search
Log In
Files
F35192166
README.txt
No One
Temporary
Actions
View File
Edit File
Delete File
View Transforms
Subscribe
Mute Notifications
Award Token
Size
1 KB
Subscribers
None
README.txt
View Options
Fake Pinentries for Test Suites
===============================
If you're writing a test suite, it should use one of these pinentries
by setting the following line in $GNUPGHOME/gpg-agent.conf:
pinentry-program /path/to/fake-pinentry.ext
Note that different fake-pinentry programs have been supplied here in
different languages, with the intent of making them available to
developers who have different languages available.
They are all licensed Creative Commons Zero (CC0-1.0-Universal, see
the COPYING.CC0 file in GnuPG's top directory), so they should be
reusable by any project. Feel free to copy them into your own
project's test suite.
Rationale
---------
If you're implementing software that uses GnuPG, you probably want a
test suite that exercises your code, and you may have some that
involve secret key material locked with a passphrase. However, you
don't want to require your developers to manually enter a passphrase
while tests are run, and you probably also don't want to deal with
alternate codepaths/workflows like using gpg's loopback pinentry.
The solution for this is to use a fake pinentry in your test suite,
one that simply returns a pre-selected passphrase. In this case, all
the other code follows the same path as normal, but the user
interaction is bypassed because the fake-pinentry is used instead.
Troubleshooting
---------------
If you have any trouble with this technique, please drop a line to the
GnuPG development mailing list <gnupg-devel@gnupg.org> or open a
report on the GnuPG bug tracker at https://dev.gnupg.org/gnupg
File Metadata
Details
Attached
Mime Type
text/plain
Expires
Tue, Feb 3, 4:57 AM (1 d, 8 h)
Storage Engine
local-disk
Storage Format
Raw Data
Storage Handle
d9/95/4eb46c58f04adcad59176f03cea6
Attached To
rG GnuPG
Event Timeline
Log In to Comment