aboutsummaryrefslogtreecommitdiffstats
path: root/lang (unfollow)
Commit message (Collapse)AuthorFilesLines
2018-05-04qt: Respect --disable-gpg-test for testsAndre Heinecke1-1/+7
* lang/qt/Makefile.am: Respect --disable-gpg-test -- This is similar to the core switch to disable the tests.
2018-05-03js: Added browser testing for unit testsMaximilian Krambach11-16/+436
-- * Added unittests to be run inside a Browser. To be able to access the non-exposed functions and classes, a testing bundle will be created, containing the tests (unittests.js) and the items to be tested. * src/Helpelpers, src/Key, src/Keyring: fixed some errors found during testing.
2018-05-03js: changed Key class stubMaximilian Krambach5-68/+110
-- * src/Key.js: A Key object cannot offer more than basic functionality outside a connection, so it now requires a connection to be present.
2018-04-27js: more testingMaximilian Krambach16-114/+416
-- * Tests: initialization of the two modes, encryption * gpgme.js: reintroduced message check before calling Connection.post() * gpgmejs_openpgp.js: Fixed openpgp mode not passing keys * index.js: fixed some confusion in parseconfig() * Inserted some TODO stubs for missing error handling
2018-04-27js: fixed empty operation setter in MessageMaximilian Krambach1-2/+9
-- * src/Message.js Messages failed because they were not assigned operations
2018-04-26js: fixed wrong paths in DemoExtensionMaximilian Krambach3-3/+3
-- * Some forgotten internal links after the move to a subdir and cleaning
2018-04-26js: created TestExtension and smaller fixesMaximilian Krambach28-143/+429
-- * Extensions: - Moved testapplication to Demoextension - Created BrowserTestExtension. Includes mocha and chai. For running tests that cannot be run outside a WebExtension Both Extensions can be found zipped in build/extensions after running build_extensions.sh * Code changes: - src/Config: Place for the configuration - small fixes raised during testing in Keyring.js, Message.js, - src/gpgmejs_openpgpjs.js don't offer direct GpgME object to the outside, as it only causes confusion - index.js init() now checks the config for validity * Tests: - Reordered tests in test/. - Input values are now in a separate file which may be of use for bulk testing * moved the build directory from dist to build
2018-04-26qt: Fix filename handling in cryptoconfigAndre Heinecke1-3/+3
* src/qgpgmenewcryptoconfig.cpp (QGpgMENewCryptoConfigEntry::urlValue): Build url from local file. (QGpgMENewCryptoConfigEntry::setURLValue): Set native seperated path. -- This fixes setting files through cryptoconfig on Windows. GnuPG-Bug-Id: T3939
2018-04-25js: First testing and improvementsMaximilian Krambach12-56/+227
-- * Introduced Mocha/chai as testsuite. After development build 'npm test' should run the unit tests. Functionality exclusive to Browsers/WebExtensions cannot be run this way, so some other testing is still needed. - package.json: Added required development packages - .babelrc indirect configuration for mocha. ES6 transpiling needs some babel configuration, but mocha has no setting for it. - test/mocha.opts Vonfiguration for mocha runs * Fixed errors: - Helpers.js toKeyIdArray; isLongId is now exported - Key.js Key constructor failed - Message.js will not throw an Error during construction, a new message is now created with createMessage, which can return an Error or a GPGME_Message object * Tests: - test/Helpers: exports from Helpers.js, GPGME_Error handling - test/Message: first init test with bad parameters
2018-04-25js: Configuration and Error handlingMaximilian Krambach10-207/+309
-- * gpgmejs_openpgpjs - unsuported values with no negative consequences can now reject, warn or be ignored, according to config.unconsidered_params - cleanup of unsupported/supported parameters and TODOS * A src/index.js init() now accepts a configuration object * Errors will now be derived from Error, offering more info and a stacktrace. * Fixed Connection.post() timeout triggering on wrong cases * Added comments in permittedOperations.js, which gpgme interactions are still unimplemented and should be added next
2018-04-25js: reactivate timeout on connectionMaximilian Krambach4-12/+19
-- * A timeout of 5 seconds is activated for functions that do not require a pinentry. This definition is written to src/permittedOperations.js * testapplication.js now alerts the proper error codes and messages. * src/Errors.js fixed two typos in error handling
2018-04-25js: change in Error behaviourMaximilian Krambach8-156/+132
-- * Error objects will now return the error code if defined as error type in src/Errors.js, or do a console.log if it is a warning. Errors from the native gpgme-json will be marked as GNUPG_ERROR.
2018-04-25js: allow openpgp-like Message objects as DataMaximilian Krambach1-0/+7
-- * src/gpgmejs.js: If a message offers a getText, consider it as the message's content
2018-04-24js: Key object adjustments after discussionMaximilian Krambach3-15/+64
-- * src/aKey.js changed fingerprint to setter (to avoid overwrites) * src/gpgmejs_openpgpjs.js - Added a class GPGME_Key_openpgpmode, which allows for renaming and deviation from GPGME. - renamed classes *_openPGPCompatibility to *_openpgpmode. They are not fully compatible, but only offer a subset of properties. Also, the name seems less clunky
2018-04-24js: change in initialization ancd connection handlingMaximilian Krambach6-114/+157
-- * The Connection will now be started before an object is created, to better account for failures. * index.js: now exposes an init(), which returns a Promise of configurable <GpgME | gpgmeGpgME_openPGPCompatibility> with an established connection. * TODO: There is currently no way to recover from a "connection lost" * Connection.js offers Connection.isConnected, which toggles on port closing.
2018-04-23js: don't allow message operation changesMaximilian Krambach3-30/+24
-- Once an operation is changed, their set of allowed/required parameters will change. So we shouldn't set/change the operation later.
2018-04-23js: Key handling stubs, Error handling, refactoringMaximilian Krambach8-131/+756
-- * Error handling: introduced GPGMEJS_Error class that handles errors at a more centralized and consistent position * src/Connection.js: The nativeMessaging port now opens per session instead of per message. Some methods were added that reflect this change - added methods disconnect() and reconnect() - added connection status query * src/gpgmejs.js - stub for key deletion - error handling - high level API for changing connection status * src/gpgmejs_openpgpjs.js - added stubs for Key/Keyring handling according to current state of discussion. It is still subject to change * src/Helpers.js - toKeyIdArray creates an array of KeyIds, now accepting fingerprints, GPGMEJS_Key objects and openpgp Key objects. * Key objects (src/Key.js) Querying information about a key directly from gnupg. Currently a stub, only the Key.fingerprint is functional. * Keyring queries (src/Keyring.js): Listing and searching keys. Currently a stub.
2018-04-20js: encrypt improvement and decrypt methodMaximilian Krambach18-306/+887
* Compatibility class gpgme_openpgpjs offers an API that should accept openpgpjs syntax, throwing errors if a parameter is unexpected/not implemented * tried to be more generic in methods * waiting for multiple answers if 'more' is in the answer * more consistency checking on sending and receiving * updated the example extension --
2018-04-19cpp: Add origin and last_update to UserIDAndre Heinecke2-19/+47
* NEWS: Mention it. * lang/cpp/src/key.cpp, lang/cpp/src/key.h (UserID::lastUpdate), (UserID::origin): New. (gpgme_origin_to_pp_origin): New helper.
2018-04-19cpp: Add origin and last_updateAndre Heinecke2-0/+52
* NEWS: mention interface change. * lang/cpp/src/key.cpp (Key::origin, Key::lastUpdate): New. * lang/cpp/src/key.h (Key::Origin): New enum.
2018-04-18doc: Update copyright years and change two URLs.Werner Koch2-11/+10
-- Signed-off-by: Werner Koch <[email protected]>
2018-04-17python: Fix crash by leaving struct members intactTobias Mueller1-18/+1
* lang/python/setup.py.in: Copy gpgme.h instead of parsing it. -- The python bindings tried to parse deprecated functions out of gpgme.h. This fails for the current gpgme.h in that it removes an entire field in the key sig struct (_obsolete_class). Hence, the fields were off by an int and the bindings accessed struct members via the wrong offset. That caused python program to crash. At least on 32bit platforms, the crash can be easily triggered by accessing key.uids[0].signatures. On 64bit platforms the compiler probably aligns the struct so that the missing 4 bytes are not noticed. With this change, the python bindings will expose all functions that gpgme exposes, including the deprecated ones. Credits go to Justus Winter for debugging and identying the issue. Signed-off-by: Tobias Mueller <[email protected]> GnuPG-bug-id: 3892
2018-04-10js: Initial commit for JavaScript Native Messaging API[email protected]14-1/+472
-- Note this code misses all the legal boilerplate; please add this as soon as possible and provide a DCO so we can merge it into master. I also removed the dist/ directory because that was not source code.
2018-04-04qt: Add test for resetting config valueAndre Heinecke1-1/+33
* lang/qt/tests/t-config.cpp (CryptoConfigTest::testDefault): New. -- There is a bug around here somewhere. This test does not show it :-(
2018-03-28example: revoke UIDben/howto-update-02Ben McGinnes1-0/+62
* Script to revoke a UID on an existing key.
2018-03-28docs: python bindings howtoBen McGinnes1-25/+53
* Added section on revoking UIDs.
2018-03-28example: key signingBen McGinnes1-0/+63
* Added script for signing or certifying keys.
2018-03-28doc: python bindings howtoBen McGinnes1-1/+1
* Fixed a typo.
2018-03-28docs python bindings howtoBen McGinnes1-16/+19
* PEP8 compliance: a collection of minor edits across multiple example code snippets.
2018-03-28example: add user IDBen McGinnes1-0/+62
* Added script to add a UID to an existing key.
2018-03-27doc: python bindings howtoBen McGinnes1-6/+6
* Fixed some minor PEP8 compliance issues in the key creation examples.
2018-03-27example: key creationBen McGinnes1-0/+95
* Script to generate a new key with encryption subkey taking input from interactive prompts. * Will also take a passphrase via pinentry and uses passphrase caching of five minutes when used in conjunction with the temp homedir script.
2018-03-27script: temp homedir configBen McGinnes1-2/+9
* added passphrase caching of 5 minutes.
2018-03-25doc: python bindings howtoBen McGinnes1-0/+1
* Testing the addition of a HTML header set in org-mode in order to had RSS update links for files. * This should work with any [X]HTML export from current versions of Org-Mode, but if it also works on website generated pages then it'll tick off one of the wishlist itmes.
2018-03-25script: temp homedirhowto-update-01Ben McGinnes1-1/+1
* Fixed whitespace.
2018-03-25doc: python bindings howtoBen McGinnes1-0/+4
* Added a reference to new script which will setup a temporary homedir for a user.
2018-03-25script: temporary homedir creationBen McGinnes1-0/+119
* Script to create a temporary gnupg homedir in the user's directory for testing or scripting purposes. * Creates a hidden directory on POSIX systems with the correct permissions (700). * Creates a gpg.conf in that directory containing the same configuration options as used in the "Danger Mouse" example in the HOWTO with the correct permissions (600).
2018-03-24doc: python bindings howtoBen McGinnes1-4/+4
* Fixed the plaintext, result and verify_result references in the decryption section.
2018-03-23doc: python bindings howtoBen McGinnes1-1/+1
* Fixed a minor spelling error and a minor grammatical error.
2018-03-21doc: python bindings howtoBen McGinnes1-1/+1
* Fixed table.
2018-03-21doc and examples: python bindings HOWTOBen McGinnes1-1/+1
* Added GPGME Python bindings HOWTO in Australian/British English. ** en-US "translation" still to be done. * Added several example scripts comprised of the "Basic Functions" section of the HOWTO (plus the work-around at the end). ** As these scripts are very basic examples they are released under both the GPLv2+ and the LGPLv2.1+ (just like GPGME itself). Signed-off-by: Ben McGinnes <[email protected]>
2018-03-21examples: multi-key selection operationsben/docs/2018-03Ben McGinnes3-190/+0
* Temporarily removing multi-key selection based examples. * There are a few issues with getting the key selections to play nicely with gpg.Context().keylist object types. * Will troubleshoot them separately and restore them when that's worked out, but I don't want these more complicated examples to delay merging the HOWTO with master.
2018-03-21example: group encryptionBen McGinnes1-1/+1
* Troubleshooting.
2018-03-21examples: encryptionBen McGinnes2-2/+2
* Fixed two incorrect Context() objects.
2018-03-21example: key selectionBen McGinnes1-1/+0
* Removed extraneous blank line.
2018-03-21example: key selectionBen McGinnes1-0/+52
* Similar to group-key-selection.py, but does not use an existing group from gpg.conf; instead takes multiple key IDs, fingerprints or patterns on the command line and adds them to a keylist object.
2018-03-21example: sign and encrypt to groupBen McGinnes1-0/+83
* Begins to string together some of the simpler examples to do more useful things. * Signs and encrypts a file while encrypting to every key in a group specified in the gpg.conf file.
2018-03-21example: group key selectionBen McGinnes1-0/+56
* Example of preparing a keylist object using an existing group line from the gpg.conf file.
2018-03-21example groups work aroundBen McGinnes1-1/+1
* Updated usage so it only references importing the final list of lists produced. Trying to use some of the mid-points can have unpredictable results (this is part of the problem with work arounds).
2018-03-21example: groupsBen McGinnes1-0/+6
* Added a docstring.