diff --git a/tests/json/t-createkey.in.json b/tests/json/t-createkey.in.json new file mode 100644 index 00000000..95dc92ab --- /dev/null +++ b/tests/json/t-createkey.in.json @@ -0,0 +1,5 @@ +{ + "op": "createkey", + "userid": "foo@bar.baz", + "algo": "rsa1024" +} diff --git a/tests/json/t-createkey.out.json b/tests/json/t-createkey.out.json new file mode 100644 index 00000000..eb88671c --- /dev/null +++ b/tests/json/t-createkey.out.json @@ -0,0 +1,3 @@ +{ + "fingerprint": "*" +} diff --git a/tests/json/t-decrypt-verify.in.json b/tests/json/t-decrypt-verify.in.json new file mode 100644 index 00000000..c9071067 --- /dev/null +++ b/tests/json/t-decrypt-verify.in.json @@ -0,0 +1,5 @@ +{ + "op": "decrypt", + "base64": true, + "data": "hQEOA2rm1+5GqHH4EAP+NCYW3vVuCLDTUYhBaKHNgp4fMq9TNACH2NiZyVSaYLe0VE+2LLurHN/XLwlP7xhl2XijBUe6Q7M+KyoPd9iNIgX9q914dPUN0Q3sJinSbujnFzsy0L2x6kgUJCK/XA7rp0VpmJGUWIQYAET8Xx6SaWd2XxIdIITUz2MqrTzWrgED/iOuRxuT4loNJ/DM2YrOZr0He25SxJskg0t1bik2nM+wHAbJrSa6BqPJYU4scnG6AH0RRxFV177ADjOcBLeutXw7DE+6YOExWZD2Fb0oax/ppDulMudrJnj6Wg5/EHbBLDF96Xd6vQX1rcHmrxImvaQNbavEKswlDZgoYwaV7PYPhQEOAwQHH7gHKHE0EAP/So0a3deCbXVSPkABRO3yZa6kHcVuO5+lTsunfxav1TwaMkBOiK6usRz2zt3rjozNrh3vXn3o2WpFKebwhIUF0q2qPw3OKIGq9jFT63t+DPjpbSorAevmVqXWdmaqDPJZ/QIY6NkBhprTdIGPSTFh66eggQLz+BBUVx2myM7AqgcD/3PnOGIiqINQzFkfa6lHiV/TZ8AaMNfvyx4FFG4Zi45ZnDwLCJZ+J7ATXzECauEDLzhjk8M9OP0PwFT1WsnWefKDSLzbO5hEnf8NYdY6i8f2MJKYcnpeI4PZA3OK9ovmAoJl31K+/vBJRP4kiJ4Weu7fzMi6Zz87tfHDEpbRR7N80qoBTlT7I044LG5OJKgQukb7HOv+c668i56UzZVgz+LCsFpjYEFTlrPVR5Me3PjSSb8M+tt9NUjenNnghJEcxeD902YJcqgRWPotouzx5fKDTay/LofFqckEWGlP5pnkeNfYIBIaSSrG/KcdQ0rPOAxKrZzIifYVwnJm/ISxU6uMpNfDJGOJppf4xqXgTKBdIsCljg5LlgNvGhNMYaXQkGQInzXvLSUbxLerWw==" +} diff --git a/tests/json/t-decrypt-verify.out.json b/tests/json/t-decrypt-verify.out.json new file mode 100644 index 00000000..fc60327b --- /dev/null +++ b/tests/json/t-decrypt-verify.out.json @@ -0,0 +1,56 @@ +{ + "dec_info": { + "symkey_algo": "TWOFISH.CFB", + "wrong_key_usage": false, + "is_de_vs": false, + "is_mime": false, + "legacy_cipher_nomdc": false, + "recipients": [{ + "keyid": "6AE6D7EE46A871F8", + "pubkey_algo_name": "ELG-E", + "status_string": "Success", + "status_code": 0 + }, { + "keyid": "04071FB807287134", + "pubkey_algo_name": "ELG-E", + "status_string": "No secret key", + "status_code": 117440529 + }] + }, + "info": { + "is_mime": false, + "signatures": [{ + "summary": { + "sigsum": [], + "valid": false, + "green": false, + "red": false, + "revoked": false, + "key-expired": false, + "sig-expired": false, + "key-missing": false, + "crl-missing": false, + "crl-too-old": false, + "bad-policy": false, + "sys-error": false + }, + "wrong_key_usage": false, + "chain_model": false, + "is_de_vs": false, + "status_string": "Success", + "fingerprint": "A0FF4590BB6122EDEF6E3C542D727CC768697734", + "validity_string": "unknown", + "pubkey_algo_name": "DSA", + "hash_algo_name": "RIPEMD160", + "status_code": 0, + "timestamp": 1542200353, + "exp_timestamp": 0, + "pka_trust": 0, + "validity": 0, + "validity_reason": 0 + }] + }, + "type": "plaintext", + "base64": false, + "data": "Hello world" +} diff --git a/tests/json/t-decrypt.in.json b/tests/json/t-decrypt.in.json new file mode 100644 index 00000000..52987d7f --- /dev/null +++ b/tests/json/t-decrypt.in.json @@ -0,0 +1,5 @@ +{ + "op": "decrypt", + "data": "hQEOA2rm1+5GqHH4EAQAhzzu7VYpE9vFVdqkAALRHSyz8698b8MES7j5ldzXGVnGSWmN0+YXGyWyeB5tnAXAvUiV10tzoiNaPXoNeOFrHQOWrDsQ1vYukdtblDc3FW/Ywf7aelcFIGh9qydmkPX/EPeULsbgdZp6sybGoPpEuxzb4CYeRjogB9VvPCRAPb4D/1hRdpoVgWI78JvaeI+xwrP71RuHggZEsM8FSYFBD8c5dY+iAHbPSBI6QSZMvMHCu8YVlV40rHFjjoKQ1ox9DHHyvaZkwAZbI/U7+CYZoPoXMAARjCCCW4TIB3VrM70QLjnLSVfWaCtTnYp2KWaRae0Ze7yPt/h1dYe4ofn/O3UH0kEBqJ99Srtrmr9UWdgikgrWCz5TAV27g2vsZubfMe8vC1QnqASazyBy74ibvrXrIvHnhHQvPCkZFRdbgYhV/+KQIQ==", + "base64": true +} diff --git a/tests/json/t-decrypt.out.json b/tests/json/t-decrypt.out.json new file mode 100644 index 00000000..eb52dc8f --- /dev/null +++ b/tests/json/t-decrypt.out.json @@ -0,0 +1,16 @@ +{ + "dec_info": { + "wrong_key_usage": false, + "is_de_vs": false, + "is_mime": false, + "legacy_cipher_nomdc": false, + "recipients": [{ + "pubkey_algo_name": "ELG-E", + "status_string": "Success", + "status_code": 0 + }] + }, + "type": "plaintext", + "base64": false, + "data": "Hello\n" +} diff --git a/tests/json/t-delete.in.json b/tests/json/t-delete.in.json new file mode 100644 index 00000000..a1e7d3d7 --- /dev/null +++ b/tests/json/t-delete.in.json @@ -0,0 +1,4 @@ +{ + "op": "delete", + "key": "E8143C489C8D41124DC40D0B47AF4B6961F04784" +} diff --git a/tests/json/t-delete.out.json b/tests/json/t-delete.out.json new file mode 100644 index 00000000..3041e494 --- /dev/null +++ b/tests/json/t-delete.out.json @@ -0,0 +1,3 @@ +{ + "success": true +} diff --git a/tests/json/t-encrypt-sign.in.json b/tests/json/t-encrypt-sign.in.json new file mode 100644 index 00000000..45e1d0b4 --- /dev/null +++ b/tests/json/t-encrypt-sign.in.json @@ -0,0 +1,8 @@ +{ + "op": "encrypt", + "keys": ["alpha@example.net", "victor@example.org"], + "signing_keys": ["A0FF4590BB6122EDEF6E3C542D727CC768697734"], + "data": "Hello world", + "armor": true, + "always-trust": true +} diff --git a/tests/json/t-encrypt-sign.out.json b/tests/json/t-encrypt-sign.out.json new file mode 100644 index 00000000..875ad08b --- /dev/null +++ b/tests/json/t-encrypt-sign.out.json @@ -0,0 +1,4 @@ +{ + "type": "ciphertext", + "base64": false +} diff --git a/tests/json/t-encrypt.in.json b/tests/json/t-encrypt.in.json new file mode 100644 index 00000000..35dc2c9a --- /dev/null +++ b/tests/json/t-encrypt.in.json @@ -0,0 +1,8 @@ +{ + "op": "encrypt", + "keys": ["bravo@example.net", "alpha@example.net"], + "data": "Hello world", + "file_name": "test.txt", + "armor": false, + "always-trust": true +} diff --git a/tests/json/t-encrypt.out.json b/tests/json/t-encrypt.out.json new file mode 100644 index 00000000..6fc4158c --- /dev/null +++ b/tests/json/t-encrypt.out.json @@ -0,0 +1,4 @@ +{ + "type": "ciphertext", + "base64": true +} diff --git a/tests/json/t-export-secret-info.in.json b/tests/json/t-export-secret-info.in.json new file mode 100644 index 00000000..d5c37f54 --- /dev/null +++ b/tests/json/t-export-secret-info.in.json @@ -0,0 +1,6 @@ +{ + "op": "export", + "keys": "alpha@example.net", + "armor": true, + "with-sec-fprs":true +} diff --git a/tests/json/t-export-secret-info.out.json b/tests/json/t-export-secret-info.out.json new file mode 100644 index 00000000..32ee6509 --- /dev/null +++ b/tests/json/t-export-secret-info.out.json @@ -0,0 +1,6 @@ +{ + "type": "keys", + "base64": false, + "data": "-----BEGIN PGP PUBLIC KEY BLOCK-----\n\nmQGiBDbjjp4RBAC2ZbFDX0wmJI8yLDYQdIiZeAuHLmfyHsqXaLGUMZtWiAvn/hNp\nctwahmzKm5oXinHUvUkLOQ0s8rOlu15nhw4azc30rTP1LsIkn5zORNnFdgYC6RKy\nhOeim/63+/yGtdnTm49lVfaCqwsEmBCEkXaeWDGq+ie1b89J89T6n/JquwCgoQkj\nVeVGG+B/SzJ6+yifdHWQVkcD/RXDyLXX4+WHGP2aet51XlKojWGwsZmc9LPPYhwU\n/RcUO7ce1QQb0XFlUVFBhY0JQpM/ty/kNi+aGWFzigbQ+HAWZkUvA8+VIAVneN+p\n+SHhGIyLTXKpAYTq46AwvllZ5Cpvf02Cp/+W1aVyA0qnBWMyeIxXmR9HOi6lxxn5\ncjajA/9VZufOXWqCXkBvz4Oy3Q5FbjQQ0/+ty8rDn8OTaiPi41FyUnEi6LO+qyBS\n09FjnZj++PkcRcXW99SNxmEJRY7MuNHt5wIvEH2jNEOJ9lszzZFBDbuwsjXHK35+\nlPbGEy69xCP26iEafysKKbRXJhE1C+tk8SnK+Gm62sivmK/5arQpQWxwaGEgVGVz\ndCAoZGVtbyBrZXkpIDxhbHBoYUBleGFtcGxlLm5ldD6IVQQTEQIAFQUCNuOOngML\nCgMDFQMCAxYCAQIXgAAKCRAtcnzHaGl3NDl4AKCBLmRplv/8ZfSqep5IjqEAuaXv\nWwCgl6NEzT+/WewPTGcwZY+pLkycLv2IVQQTEQIAFQUCNuOOngMLCgMDFQMCAxYC\nAQIXgAAKCRAtcnzHaGl3NDl4AJ4rouHB+LpCkNi5C59jHEa1kbANzACgmddtrNSj\n1yPyTCwUwRghPUomECS0EEFsaWNlIChkZW1vIGtleSmIVQQTEQIAFQUCNuO2qwML\nCgMDFQMCAxYCAQIXgAAKCRAtcnzHaGl3NCeMAJ9MeUVrago5Jc6PdwdeN5OMwby3\n7QCghW65cZTQlD1bBlIq/QM8bz9AN4G0J0FsZmEgVGVzdCAoZGVtbyBrZXkpIDxh\nbGZhQGV4YW1wbGUubmV0PohVBBMRAgAVBQI247hYAwsKAwMVAwIDFgIBAheAAAoJ\nEC1yfMdoaXc0t8IAoJPwa6j+Vm5Vi3Nvuo8JZri4PJ/DAJ9dqbmaJdB8FdJnHfGh\n1rXK3y/JcrkBDQQ2448PEAQAnI3XH1f0uyN9fZnw72zsHMw706g7EW29nD4UDQG4\nOzRZViSrUa5n39eI7QrfTO+1meVvs0y8F/PvFst5jH68rPLnGSrXz4sTl1T4cop1\nFBkquvCAKwPLy0lE7jjtCyItOSwIOo8xoTfY4JEEXmcqsbm+KHv9yYSF/YK4Cf7b\nIzcAAwcD/Rnl5jKxoucDA96pD2829TKsLFQSau+Xiy8bvOSSDdlyABsOkNBSaeKO\n3eAQEKgDM7dzjVNTnAlpQ0EQ8Y9Z8pxOWYEQYlaMrnRBC4DZ2IadzEhLlIOz5BVp\n/jfhrr8oVVBwKZXsrz9PZLz+e4Yn+siUUvlei9boD9L2ZgSOHakPiEYEGBECAAYF\nAjbjjw8ACgkQLXJ8x2hpdzQgqQCfcDXmD8uNVdKg/C9vqI3JSndqknsAnRxzVeHi\n/iJ73OCKtvFrHbV9Gogq\n=6f6v\n-----END PGP PUBLIC KEY BLOCK-----\n", + "sec-fprs": ["A0FF4590BB6122EDEF6E3C542D727CC768697734"] +} diff --git a/tests/json/t-export.in.json b/tests/json/t-export.in.json new file mode 100644 index 00000000..831369e4 --- /dev/null +++ b/tests/json/t-export.in.json @@ -0,0 +1,5 @@ +{ + "op": "export", + "keys": "victor@example.org", + "armor": true +} diff --git a/tests/json/t-export.out.json b/tests/json/t-export.out.json new file mode 100644 index 00000000..104fa435 --- /dev/null +++ b/tests/json/t-export.out.json @@ -0,0 +1,5 @@ +{ + "type": "keys", + "base64": false, + "data": "-----BEGIN PGP PUBLIC KEY BLOCK-----\n\nmQGiBDbjs5oRBACjAxqGzA6j190iiN/1vJvS5jYLQ1H3xxhzXdZ6ZxjPJkslX1ox\nFqBINhjzBJnV9/7b1FFe5089NiCcGUVZa2xD3Vu+niLTAGNTQeNy6Y0E6wEfvplQ\nLJbpVGOmuVeZyShHNCKjrsZFtS1mr7o19SUb5QWS3gZHabFTbmhibcFBXwCg36qG\nVAnGcZzvnUTGpRy3xjp+zuED/2qTJNpnPhicKSksVwb6EJFXH7mQSZlyblAnOAVF\nMx19GUijW4MWP5FUdcTd5KzIDgkenRLBrpCLIFVkQ4/baP/hOiCLOmCoRu3xnFyo\nRPM/Jn94Qy3Jo2wigwkhQU+zyOU5C85QBD9ctkbYp/0mu9bpxmYTchHwD1v3dXUX\nEVajA/9lnEz1GiI0bwKpm8VKXp0YYP5hea8Jh5fNVb1QW2QqGd+XNHnRGSqX5smG\nyrs+xoYxD8+jv1FhmGaSv+6+n+JBVK4TuWrQpZ0cgZL5jZnX27TOYXeY4d5YKgE+\n7ZO57TwCIfF/P6puflGm+t5GcFwj4kkfohMEaeNhm1S+xf29q7QrVmljdG9yIFRl\nc3QgKGRlbW8ga2V5KSA8dmljdG9yQGV4YW1wbGUub3JnPohVBBMRAgAVBQI247Oa\nAwsKAwMVAwIDFgIBAheAAAoJEEevS2lh8EeEzEkAoMA+KfY9bA8EdfvWwa8zUM1S\nMs5rAKDS+6X3HVuCaLtVxzXOob+DKbB7b7kBDQQ247O+EAQAh5FAgdvaTJL3jBGc\njYiiJosxeTWf3L/dUY99fZN8R39DSVoUKf9Rt/EsS5DywXVnKAeJiUTYw8lbMRVF\n70VhSDHpMC9KtbB0lk3CcAqULPiyirT5g9ywN24W7k0naWIJisttUh+Hqbm6gc5P\nz9Nfd5ll8x4Ehi3lKE6Nze3gUNMAAwUD/AtUN1hqwWTTphVZctHq3JaUEb9agmu/\nOcsf24/bq9i8R8FaMwBF4fI5qIimcqAM+2BZ6dvZEdqrVaZR9aHjzchcHmaiI7Zm\nW4gmk+LHFFWf9y7mG8YDKFBXkaBuJpxFb1FIfJpmaLzJmRa76dLqI3A7H2E8dFQa\n/MGsYCa4NmILiEUEGBECAAYFAjbjs74ACgkQR69LaWHwR4RT3QCgnMlRAiGtvL5l\nD4Gdo5F0KEP5zZEAlA6Ri9WmZ9Xiqw5R3Bsg+As8sJ4=\n=FRd4\n-----END PGP PUBLIC KEY BLOCK-----\n" +} diff --git a/tests/json/t-json.c b/tests/json/t-json.c index f5b27939..1f45febd 100644 --- a/tests/json/t-json.c +++ b/tests/json/t-json.c @@ -36,7 +36,15 @@ #include "../../src/cJSON.h" /* Register tests here */ -static const char*tests[] = { "t-keylist", "t-config", "t-keylist", NULL }; +static const char*tests[] = { "t-config", "t-version", + "t-keylist", "t-keylist-secret", "t-decrypt", "t-config-opt", + "t-encrypt", "t-encrypt-sign", "t-sign", "t-verify", + "t-decrypt-verify", "t-export", "t-createkey", + "t-export-secret-info", + /* For these two the order is important + * as t-import imports the deleted key from t-delete */ + "t-delete", "t-import", + NULL }; static int verbose = 0; diff --git a/tests/json/t-keylist-secret.in.json b/tests/json/t-keylist-secret.in.json new file mode 100644 index 00000000..22292a78 --- /dev/null +++ b/tests/json/t-keylist-secret.in.json @@ -0,0 +1,5 @@ +{ + "op": "keylist", + "keys": [ "bravo@example.net", "alpha@example.net" ], + "with-secret": true +} diff --git a/tests/json/t-keylist-secret.out.json b/tests/json/t-keylist-secret.out.json new file mode 100644 index 00000000..5da20dbe --- /dev/null +++ b/tests/json/t-keylist-secret.out.json @@ -0,0 +1,163 @@ +{ + "keys": [{ + "revoked": false, + "expired": false, + "disabled": false, + "invalid": false, + "can_encrypt": true, + "can_sign": true, + "can_certify": true, + "can_authenticate": true, + "secret": true, + "is_qualified": false, + "protocol": "OpenPGP", + "fingerprint": "A0FF4590BB6122EDEF6E3C542D727CC768697734", + "subkeys": [{ + "revoked": false, + "expired": false, + "disabled": false, + "invalid": false, + "can_encrypt": false, + "can_sign": true, + "can_certify": true, + "can_authenticate": true, + "is_qualified": false, + "is_cardkey": false, + "is_de_vs": false, + "pubkey_algo_name": "DSA", + "pubkey_algo_string": "dsa1024", + "keyid": "2D727CC768697734", + "keygrip": "76F7E2B35832976B50A27A282D9B87E44577EB66", + "pubkey_algo": 17, + "length": 1024, + "timestamp": 920882846, + "expires": 0 + }, { + "revoked": false, + "expired": false, + "disabled": false, + "invalid": false, + "can_encrypt": true, + "can_sign": false, + "can_certify": false, + "can_authenticate": false, + "is_qualified": false, + "is_cardkey": false, + "is_de_vs": false, + "pubkey_algo_name": "ELG-E", + "pubkey_algo_string": "elg1024", + "keyid": "6AE6D7EE46A871F8", + "keygrip": "A0747D5F9425E6664F4FFBEED20FBCA79FDED2BD", + "pubkey_algo": 16, + "length": 1024, + "timestamp": 920882959, + "expires": 0 + }], + "userids": [{ + "revoked": false, + "invalid": false, + "validity": "unknown", + "uid": "Alfa Test (demo key) ", + "name": "Alfa Test", + "email": "alfa@example.net", + "comment": "demo key", + "address": "alfa@example.net" + }, { + "revoked": false, + "invalid": false, + "validity": "unknown", + "uid": "Alpha Test (demo key) ", + "name": "Alpha Test", + "email": "alpha@example.net", + "comment": "demo key", + "address": "alpha@example.net" + }, { + "revoked": false, + "invalid": false, + "validity": "unknown", + "uid": "Alice (demo key)", + "name": "Alice", + "email": "", + "comment": "demo key", + "origin": 0, + "last_update": 0 + }] + }, { + "revoked": false, + "expired": false, + "disabled": false, + "invalid": false, + "can_encrypt": true, + "can_sign": true, + "can_certify": true, + "can_authenticate": true, + "secret": true, + "is_qualified": false, + "protocol": "OpenPGP", + "fingerprint": "D695676BDCEDCC2CDD6152BCFE180B1DA9E3B0B2", + "owner_trust": "unknown", + "origin": 0, + "last_update": 0, + "subkeys": [{ + "revoked": false, + "expired": false, + "disabled": false, + "invalid": false, + "can_encrypt": false, + "can_sign": true, + "can_certify": true, + "can_authenticate": true, + "secret": false, + "is_qualified": false, + "is_cardkey": false, + "is_de_vs": false, + "pubkey_algo_name": "DSA", + "pubkey_algo_string": "dsa1024", + "keyid": "FE180B1DA9E3B0B2", + "keygrip": "6D62909991D2331E5F4F605BC4DD738F30E6D26B", + "pubkey_algo": 17, + "length": 1024, + "timestamp": 920888034, + "expires": 0 + }, { + "revoked": false, + "expired": false, + "disabled": false, + "invalid": false, + "can_encrypt": true, + "can_sign": false, + "can_certify": false, + "can_authenticate": false, + "secret": false, + "is_qualified": false, + "is_cardkey": false, + "is_de_vs": false, + "pubkey_algo_name": "ELG-E", + "pubkey_algo_string": "elg1024", + "keyid": "5381EA4EE29BA37F", + "keygrip": "6BBF325FADDC1109AE36CD535CA77AB9CFADD1F2", + "pubkey_algo": 16, + "length": 1024, + "timestamp": 920888071, + "expires": 0 + }], + "userids": [{ + "revoked": false, + "invalid": false, + "validity": "unknown", + "uid": "Bob (demo key)", + "name": "Bob", + "email": "", + "comment": "demo key" + }, { + "revoked": false, + "invalid": false, + "validity": "unknown", + "uid": "Bravo Test (demo key) ", + "name": "Bravo Test", + "email": "bravo@example.net", + "comment": "demo key", + "address": "bravo@example.net" + }] + }] +} diff --git a/tests/json/t-keylist.in.json b/tests/json/t-keylist.in.json new file mode 100644 index 00000000..65377090 --- /dev/null +++ b/tests/json/t-keylist.in.json @@ -0,0 +1,5 @@ +{ + "op": "keylist", + "keys": [ "zulu@example.net" ], + "with-secret": false +} diff --git a/tests/json/t-keylist.out.json b/tests/json/t-keylist.out.json new file mode 100644 index 00000000..eb858671 --- /dev/null +++ b/tests/json/t-keylist.out.json @@ -0,0 +1,65 @@ +{ + "keys": [{ + "revoked": false, + "expired": false, + "disabled": false, + "invalid": false, + "can_encrypt": true, + "can_sign": true, + "can_certify": true, + "can_authenticate": true, + "secret": false, + "is_qualified": false, + "protocol": "OpenPGP", + "fingerprint": "23FD347A419429BACCD5E72D6BC4778054ACD246", + "subkeys": [{ + "revoked": false, + "expired": false, + "disabled": false, + "invalid": false, + "can_encrypt": false, + "can_sign": true, + "can_certify": true, + "can_authenticate": true, + "secret": false, + "is_qualified": false, + "is_cardkey": false, + "is_de_vs": false, + "pubkey_algo_name": "DSA", + "pubkey_algo_string": "dsa1024", + "pubkey_algo": 17, + "length": 1024, + "timestamp": 920892875, + "expires": 0 + }, { + "revoked": false, + "expired": false, + "disabled": false, + "invalid": false, + "can_encrypt": true, + "can_sign": false, + "can_certify": false, + "can_authenticate": false, + "secret": false, + "is_qualified": false, + "is_cardkey": false, + "is_de_vs": false, + "pubkey_algo_name": "ELG-E", + "pubkey_algo_string": "elg1024", + "pubkey_algo": 16, + "length": 1024, + "timestamp": 920892914, + "expires": 0 + }], + "userids": [{ + "revoked": false, + "invalid": false, + "validity": "unknown", + "uid": "Zulu Test (demo key) ", + "name": "Zulu Test", + "email": "zulu@example.net", + "comment": "demo key", + "address": "zulu@example.net" + }] + }] +} diff --git a/tests/json/t-verify.in.json b/tests/json/t-verify.in.json new file mode 100644 index 00000000..1aa16399 --- /dev/null +++ b/tests/json/t-verify.in.json @@ -0,0 +1,5 @@ +{ + "op": "verify", + "data": "Hello world", + "signature": "-----BEGIN PGP SIGNATURE-----\n\niHAEABECADAWIQSg/0WQu2Ei7e9uPFQtcnzHaGl3NAUCW+we3RIcYWxwaGFAZXhh\nbXBsZS5uZXQACgkQLXJ8x2hpdzSwIgCfdfk+n6SsYwa9SYfBwr/o4FmWsa8Anj3V\n8p3ahr3rxNbK7cDbSk/p1zD0\n=oS5d\n-----END PGP SIGNATURE-----" +} diff --git a/tests/json/t-verify.out.json b/tests/json/t-verify.out.json new file mode 100644 index 00000000..e7d7c52d --- /dev/null +++ b/tests/json/t-verify.out.json @@ -0,0 +1,35 @@ +{ + "info": { + "is_mime": false, + "signatures": [{ + "summary": { + "sigsum": [], + "valid": false, + "green": false, + "red": false, + "revoked": false, + "key-expired": false, + "sig-expired": false, + "key-missing": false, + "crl-missing": false, + "crl-too-old": false, + "bad-policy": false, + "sys-error": false + }, + "wrong_key_usage": false, + "chain_model": false, + "is_de_vs": false, + "status_string": "Success", + "fingerprint": "A0FF4590BB6122EDEF6E3C542D727CC768697734", + "validity_string": "unknown", + "pubkey_algo_name": "DSA", + "hash_algo_name": "SHA1", + "status_code": 0, + "timestamp": 1542201053, + "exp_timestamp": 0, + "pka_trust": 0, + "validity": 0, + "validity_reason": 0 + }] + } +} diff --git a/tests/json/t-version.in.json b/tests/json/t-version.in.json new file mode 100644 index 00000000..08c96e5f --- /dev/null +++ b/tests/json/t-version.in.json @@ -0,0 +1,3 @@ +{ + "op": "version" +} diff --git a/tests/json/t-version.out.json b/tests/json/t-version.out.json new file mode 100644 index 00000000..1e418f35 --- /dev/null +++ b/tests/json/t-version.out.json @@ -0,0 +1,10 @@ +{ + "info": [{ + "protocol": "OpenPGP" + }, { + "protocol": "spawn", + "fname": "/nonexistent", + "version": "1.0.0", + "req_version": "1.0.0" + }] +}