From 478565c0f1710d9b810fadba97c90ccc4f7dc94c Mon Sep 17 00:00:00 2001 From: Gunter Grodotzki Date: Sun, 27 May 2018 01:20:52 +0200 Subject: [PATCH 1/7] Fixes #6: Add additional output fields to keyinfo() + listsignatures() --- TODO.md | 2 -- gnupg.c | 38 ++++++++++++++++++++++++++++++++++---- 2 files changed, 34 insertions(+), 6 deletions(-) diff --git a/TODO.md b/TODO.md index d5a9825..d20e81b 100644 --- a/TODO.md +++ b/TODO.md @@ -10,8 +10,6 @@ - https://github.com/php-gnupg/php-gnupg/pull/12 - Add parameter to `gnupg_keyinfo` to use `secret_only` on `gpgme_op_keylist_start` - https://github.com/php-gnupg/php-gnupg/issues/5 -- Extend `gnupg_keyinfo` subkey result with `pubkey_algo` and `length` - - https://github.com/php-gnupg/php-gnupg/issues/6 - Add support for exporting multiple keys using `gpgme_op_export_ext` - https://github.com/php-gnupg/php-gnupg/issues/10 - Add missing tests for following functions: diff --git a/gnupg.c b/gnupg.c index 31cae35..0b97da3 100644 --- a/gnupg.c +++ b/gnupg.c @@ -871,10 +871,6 @@ PHP_FUNCTION(gnupg_keyinfo) PHPC_VAL_MAKE(subkey); PHPC_ARRAY_INIT(PHPC_VAL_CAST_TO_PZVAL(subkey)); - if (gpgme_subkey->fpr) { - PHP_GNUPG_ARRAY_ADD_ASSOC_CSTR_EX(subkey, fingerprint, gpgme_subkey, fpr); - } - PHP_GNUPG_ARRAY_ADD_ASSOC_CSTR(subkey, keyid, gpgme_subkey); PHP_GNUPG_ARRAY_ADD_ASSOC_LONG(subkey, timestamp, gpgme_subkey); PHP_GNUPG_ARRAY_ADD_ASSOC_LONG(subkey, expires, gpgme_subkey); @@ -885,6 +881,39 @@ PHP_FUNCTION(gnupg_keyinfo) PHP_GNUPG_ARRAY_ADD_ASSOC_BOOL(subkey, disabled, gpgme_subkey); PHP_GNUPG_ARRAY_ADD_ASSOC_BOOL(subkey, expired, gpgme_subkey); PHP_GNUPG_ARRAY_ADD_ASSOC_BOOL(subkey, revoked, gpgme_subkey); + PHP_GNUPG_ARRAY_ADD_ASSOC_BOOL(subkey, can_certify, gpgme_subkey); +#if GPGME_VERSION_NUMBER >= 0x000405 /* GPGME >= 0.4.5 */ + PHP_GNUPG_ARRAY_ADD_ASSOC_BOOL(subkey, can_authenticate, gpgme_subkey); +#endif /* gpgme >= 0.4.5 */ +#if GPGME_VERSION_NUMBER >= 0x010100 /* GPGME >= 1.1.0 */ + PHP_GNUPG_ARRAY_ADD_ASSOC_BOOL(subkey, is_qualified, gpgme_subkey); +#endif /* gpgme >= 1.1.0 */ +#if GPGME_VERSION_NUMBER >= 0x010800 /* GPGME >= 1.8.0 */ + PHP_GNUPG_ARRAY_ADD_ASSOC_BOOL(subkey, is_de_vs, gpgme_subkey); +#endif /* gpgme >= 1.8.0 */ + /* + https://github.com/gpg/gpgme/blob/f7700a016926f0d8e9cb3c0337837deb7fe01079/src/gpgme.h.in#L258 + https://github.com/gpg/gpgme/blob/f7700a016926f0d8e9cb3c0337837deb7fe01079/src/gpgme.c#L1196 + */ + PHP_GNUPG_ARRAY_ADD_ASSOC_LONG(subkey, pubkey_algo, gpgme_subkey); + PHP_GNUPG_ARRAY_ADD_ASSOC_LONG(subkey, length, gpgme_subkey); + if (gpgme_subkey->fpr) { + PHP_GNUPG_ARRAY_ADD_ASSOC_CSTR_EX(subkey, fingerprint, gpgme_subkey, fpr); + } +#if GPGME_VERSION_NUMBER >= 0x010700 /* GPGME >= 1.7.0 */ + if (gpgme_subkey->keygrip) { + PHP_GNUPG_ARRAY_ADD_ASSOC_CSTR(subkey, keygrip, gpgme_subkey); + } +#endif /* gpgme >= 1.7.0 */ +#if GPGME_VERSION_NUMBER >= 0x010200 /* GPGME >= 1.2.0 */ + PHP_GNUPG_ARRAY_ADD_ASSOC_BOOL(subkey, is_cardkey, gpgme_subkey); + if (gpgme_subkey->card_number) { + PHP_GNUPG_ARRAY_ADD_ASSOC_CSTR(subkey, card_number, gpgme_subkey); + } +#endif /* gpgme >= 1.2.0 */ + if (gpgme_subkey->curve) { + PHP_GNUPG_ARRAY_ADD_ASSOC_CSTR(subkey, curve, gpgme_subkey); + } PHPC_ARRAY_ADD_NEXT_INDEX_ZVAL( PHPC_VAL_CAST_TO_PZVAL(subkeys), @@ -1780,6 +1809,7 @@ PHP_FUNCTION(gnupg_listsignatures) PHP_GNUPG_ARRAY_ADD_ASSOC_BOOL(sig_arr, revoked, gpgme_signature); PHP_GNUPG_ARRAY_ADD_ASSOC_BOOL(sig_arr, expired, gpgme_signature); PHP_GNUPG_ARRAY_ADD_ASSOC_BOOL(sig_arr, invalid, gpgme_signature); + PHP_GNUPG_ARRAY_ADD_ASSOC_LONG(sig_arr, timestamp, gpgme_signature); PHPC_ARRAY_ADD_ASSOC_ZVAL( PHPC_VAL_CAST_TO_PZVAL(sub_arr), gpgme_signature->keyid, From e25d293132a7d2777e6d2d66a1e78e3d09699c9e Mon Sep 17 00:00:00 2001 From: Gunter Grodotzki Date: Sun, 27 May 2018 01:23:05 +0200 Subject: [PATCH 2/7] revert order.. --- gnupg.c | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/gnupg.c b/gnupg.c index 0b97da3..731a456 100644 --- a/gnupg.c +++ b/gnupg.c @@ -871,6 +871,10 @@ PHP_FUNCTION(gnupg_keyinfo) PHPC_VAL_MAKE(subkey); PHPC_ARRAY_INIT(PHPC_VAL_CAST_TO_PZVAL(subkey)); + if (gpgme_subkey->fpr) { + PHP_GNUPG_ARRAY_ADD_ASSOC_CSTR_EX(subkey, fingerprint, gpgme_subkey, fpr); + } + PHP_GNUPG_ARRAY_ADD_ASSOC_CSTR(subkey, keyid, gpgme_subkey); PHP_GNUPG_ARRAY_ADD_ASSOC_LONG(subkey, timestamp, gpgme_subkey); PHP_GNUPG_ARRAY_ADD_ASSOC_LONG(subkey, expires, gpgme_subkey); @@ -897,9 +901,6 @@ PHP_FUNCTION(gnupg_keyinfo) */ PHP_GNUPG_ARRAY_ADD_ASSOC_LONG(subkey, pubkey_algo, gpgme_subkey); PHP_GNUPG_ARRAY_ADD_ASSOC_LONG(subkey, length, gpgme_subkey); - if (gpgme_subkey->fpr) { - PHP_GNUPG_ARRAY_ADD_ASSOC_CSTR_EX(subkey, fingerprint, gpgme_subkey, fpr); - } #if GPGME_VERSION_NUMBER >= 0x010700 /* GPGME >= 1.7.0 */ if (gpgme_subkey->keygrip) { PHP_GNUPG_ARRAY_ADD_ASSOC_CSTR(subkey, keygrip, gpgme_subkey); From ce5d13941f851fffa63a799156712a44c29cc606 Mon Sep 17 00:00:00 2001 From: Gunter Grodotzki Date: Mon, 28 May 2018 08:55:21 +0200 Subject: [PATCH 3/7] fix version req --- gnupg.c | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/gnupg.c b/gnupg.c index 731a456..1af1912 100644 --- a/gnupg.c +++ b/gnupg.c @@ -892,12 +892,13 @@ PHP_FUNCTION(gnupg_keyinfo) #if GPGME_VERSION_NUMBER >= 0x010100 /* GPGME >= 1.1.0 */ PHP_GNUPG_ARRAY_ADD_ASSOC_BOOL(subkey, is_qualified, gpgme_subkey); #endif /* gpgme >= 1.1.0 */ -#if GPGME_VERSION_NUMBER >= 0x010800 /* GPGME >= 1.8.0 */ +#if GPGME_VERSION_NUMBER >= 0x010900 /* GPGME >= 1.9.0 */ PHP_GNUPG_ARRAY_ADD_ASSOC_BOOL(subkey, is_de_vs, gpgme_subkey); -#endif /* gpgme >= 1.8.0 */ +#endif /* gpgme >= 1.9.0 */ /* https://github.com/gpg/gpgme/blob/f7700a016926f0d8e9cb3c0337837deb7fe01079/src/gpgme.h.in#L258 https://github.com/gpg/gpgme/blob/f7700a016926f0d8e9cb3c0337837deb7fe01079/src/gpgme.c#L1196 + printf '0x%02x%02x%02x\n' 1 2 0 */ PHP_GNUPG_ARRAY_ADD_ASSOC_LONG(subkey, pubkey_algo, gpgme_subkey); PHP_GNUPG_ARRAY_ADD_ASSOC_LONG(subkey, length, gpgme_subkey); From b991485e5381b6ecba60c552165fa137f662b173 Mon Sep 17 00:00:00 2001 From: Gunter Grodotzki Date: Mon, 28 May 2018 21:33:00 +0200 Subject: [PATCH 4/7] removing too old version check --- gnupg.c | 2 -- 1 file changed, 2 deletions(-) diff --git a/gnupg.c b/gnupg.c index 1af1912..23a9435 100644 --- a/gnupg.c +++ b/gnupg.c @@ -886,9 +886,7 @@ PHP_FUNCTION(gnupg_keyinfo) PHP_GNUPG_ARRAY_ADD_ASSOC_BOOL(subkey, expired, gpgme_subkey); PHP_GNUPG_ARRAY_ADD_ASSOC_BOOL(subkey, revoked, gpgme_subkey); PHP_GNUPG_ARRAY_ADD_ASSOC_BOOL(subkey, can_certify, gpgme_subkey); -#if GPGME_VERSION_NUMBER >= 0x000405 /* GPGME >= 0.4.5 */ PHP_GNUPG_ARRAY_ADD_ASSOC_BOOL(subkey, can_authenticate, gpgme_subkey); -#endif /* gpgme >= 0.4.5 */ #if GPGME_VERSION_NUMBER >= 0x010100 /* GPGME >= 1.1.0 */ PHP_GNUPG_ARRAY_ADD_ASSOC_BOOL(subkey, is_qualified, gpgme_subkey); #endif /* gpgme >= 1.1.0 */ From 881ae2525eca8b2b65662fbfcc2ee251e021fe76 Mon Sep 17 00:00:00 2001 From: Gunter Grodotzki Date: Mon, 28 May 2018 22:03:58 +0200 Subject: [PATCH 5/7] add constants --- gnupg.c | 32 ++++++++++++++++++++++++++++++++ 1 file changed, 32 insertions(+) diff --git a/gnupg.c b/gnupg.c index 23a9435..5a10181 100644 --- a/gnupg.c +++ b/gnupg.c @@ -481,6 +481,22 @@ PHP_MINIT_FUNCTION(gnupg) PHP_GNUPG_SET_CLASS_CONST("ERROR_WARNING", 1); PHP_GNUPG_SET_CLASS_CONST("ERROR_EXCEPTION", 2); PHP_GNUPG_SET_CLASS_CONST("ERROR_SILENT", 3); + PHP_GNUPG_SET_CLASS_CONST("GNUPG_PK_RSA", GPGME_PK_RSA); + PHP_GNUPG_SET_CLASS_CONST("GNUPG_PK_RSA_E", GPGME_PK_RSA_E); + PHP_GNUPG_SET_CLASS_CONST("GNUPG_PK_RSA_S", GPGME_PK_RSA_S); + PHP_GNUPG_SET_CLASS_CONST("GNUPG_PK_DSA", GPGME_PK_DSA); + PHP_GNUPG_SET_CLASS_CONST("GNUPG_PK_ELG", GPGME_PK_ELG); + PHP_GNUPG_SET_CLASS_CONST("GNUPG_PK_ELG_E", GPGME_PK_ELG_E); +#if GPGME_VERSION_NUMBER >= 0x010500 /* GPGME >= 1.5.0 */ + PHP_GNUPG_SET_CLASS_CONST("GNUPG_PK_ECC", GPGME_PK_ECC); +#endif /* gpgme >= 1.5.0 */ +#if GPGME_VERSION_NUMBER >= 0x010300 /* GPGME >= 1.3.0 */ + PHP_GNUPG_SET_CLASS_CONST("GNUPG_PK_ECDSA", GPGME_PK_ECDSA); + PHP_GNUPG_SET_CLASS_CONST("GNUPG_PK_ECDH", GPGME_PK_ECDH); +#endif /* gpgme >= 1.3.0 */ +#if GPGME_VERSION_NUMBER >= 0x010700 /* GPGME >= 1.7.0 */ + PHP_GNUPG_SET_CLASS_CONST("GNUPG_PK_EDDSA", GPGME_PK_EDDSA); +#endif /* gpgme >= 1.7.0 */ PHP_GNUPG_REG_CONST("GNUPG_SIG_MODE_NORMAL", GPGME_SIG_MODE_NORMAL); PHP_GNUPG_REG_CONST("GNUPG_SIG_MODE_DETACH", GPGME_SIG_MODE_DETACH); @@ -507,6 +523,22 @@ PHP_MINIT_FUNCTION(gnupg) PHP_GNUPG_REG_CONST("GNUPG_ERROR_WARNING", 1); PHP_GNUPG_REG_CONST("GNUPG_ERROR_EXCEPTION", 2); PHP_GNUPG_REG_CONST("GNUPG_ERROR_SILENT", 3); + PHP_GNUPG_REG_CONST("GNUPG_PK_RSA", GPGME_PK_RSA); + PHP_GNUPG_REG_CONST("GNUPG_PK_RSA_E", GPGME_PK_RSA_E); + PHP_GNUPG_REG_CONST("GNUPG_PK_RSA_S", GPGME_PK_RSA_S); + PHP_GNUPG_REG_CONST("GNUPG_PK_DSA", GPGME_PK_DSA); + PHP_GNUPG_REG_CONST("GNUPG_PK_ELG", GPGME_PK_ELG); + PHP_GNUPG_REG_CONST("GNUPG_PK_ELG_E", GPGME_PK_ELG_E); +#if GPGME_VERSION_NUMBER >= 0x010500 /* GPGME >= 1.5.0 */ + PHP_GNUPG_REG_CONST("GNUPG_PK_ECC", GPGME_PK_ECC); +#endif /* gpgme >= 1.5.0 */ +#if GPGME_VERSION_NUMBER >= 0x010300 /* GPGME >= 1.3.0 */ + PHP_GNUPG_REG_CONST("GNUPG_PK_ECDSA", GPGME_PK_ECDSA); + PHP_GNUPG_REG_CONST("GNUPG_PK_ECDH", GPGME_PK_ECDH); +#endif /* gpgme >= 1.3.0 */ +#if GPGME_VERSION_NUMBER >= 0x010700 /* GPGME >= 1.7.0 */ + PHP_GNUPG_REG_CONST("GNUPG_PK_EDDSA", GPGME_PK_EDDSA); +#endif /* gpgme >= 1.7.0 */ /* init gpgme subsystems */ gpgme_check_version(NULL); From 1df6f3be599f959c907f59546b9476f397942638 Mon Sep 17 00:00:00 2001 From: Gunter Grodotzki Date: Mon, 28 May 2018 22:05:45 +0200 Subject: [PATCH 6/7] remove prefix on class constants --- gnupg.c | 20 ++++++++++---------- 1 file changed, 10 insertions(+), 10 deletions(-) diff --git a/gnupg.c b/gnupg.c index 5a10181..e98927a 100644 --- a/gnupg.c +++ b/gnupg.c @@ -481,21 +481,21 @@ PHP_MINIT_FUNCTION(gnupg) PHP_GNUPG_SET_CLASS_CONST("ERROR_WARNING", 1); PHP_GNUPG_SET_CLASS_CONST("ERROR_EXCEPTION", 2); PHP_GNUPG_SET_CLASS_CONST("ERROR_SILENT", 3); - PHP_GNUPG_SET_CLASS_CONST("GNUPG_PK_RSA", GPGME_PK_RSA); - PHP_GNUPG_SET_CLASS_CONST("GNUPG_PK_RSA_E", GPGME_PK_RSA_E); - PHP_GNUPG_SET_CLASS_CONST("GNUPG_PK_RSA_S", GPGME_PK_RSA_S); - PHP_GNUPG_SET_CLASS_CONST("GNUPG_PK_DSA", GPGME_PK_DSA); - PHP_GNUPG_SET_CLASS_CONST("GNUPG_PK_ELG", GPGME_PK_ELG); - PHP_GNUPG_SET_CLASS_CONST("GNUPG_PK_ELG_E", GPGME_PK_ELG_E); + PHP_GNUPG_SET_CLASS_CONST("PK_RSA", GPGME_PK_RSA); + PHP_GNUPG_SET_CLASS_CONST("PK_RSA_E", GPGME_PK_RSA_E); + PHP_GNUPG_SET_CLASS_CONST("PK_RSA_S", GPGME_PK_RSA_S); + PHP_GNUPG_SET_CLASS_CONST("PK_DSA", GPGME_PK_DSA); + PHP_GNUPG_SET_CLASS_CONST("PK_ELG", GPGME_PK_ELG); + PHP_GNUPG_SET_CLASS_CONST("PK_ELG_E", GPGME_PK_ELG_E); #if GPGME_VERSION_NUMBER >= 0x010500 /* GPGME >= 1.5.0 */ - PHP_GNUPG_SET_CLASS_CONST("GNUPG_PK_ECC", GPGME_PK_ECC); + PHP_GNUPG_SET_CLASS_CONST("PK_ECC", GPGME_PK_ECC); #endif /* gpgme >= 1.5.0 */ #if GPGME_VERSION_NUMBER >= 0x010300 /* GPGME >= 1.3.0 */ - PHP_GNUPG_SET_CLASS_CONST("GNUPG_PK_ECDSA", GPGME_PK_ECDSA); - PHP_GNUPG_SET_CLASS_CONST("GNUPG_PK_ECDH", GPGME_PK_ECDH); + PHP_GNUPG_SET_CLASS_CONST("PK_ECDSA", GPGME_PK_ECDSA); + PHP_GNUPG_SET_CLASS_CONST("PK_ECDH", GPGME_PK_ECDH); #endif /* gpgme >= 1.3.0 */ #if GPGME_VERSION_NUMBER >= 0x010700 /* GPGME >= 1.7.0 */ - PHP_GNUPG_SET_CLASS_CONST("GNUPG_PK_EDDSA", GPGME_PK_EDDSA); + PHP_GNUPG_SET_CLASS_CONST("PK_EDDSA", GPGME_PK_EDDSA); #endif /* gpgme >= 1.7.0 */ PHP_GNUPG_REG_CONST("GNUPG_SIG_MODE_NORMAL", GPGME_SIG_MODE_NORMAL); From 7cf1a9f9e0d038c2dbb1f0d9df18b38fb96e13c2 Mon Sep 17 00:00:00 2001 From: Gunter Grodotzki Date: Tue, 29 May 2018 07:23:44 +0200 Subject: [PATCH 7/7] spaces vs. tabs --- gnupg.c | 40 ++++++++++++++++++++-------------------- 1 file changed, 20 insertions(+), 20 deletions(-) diff --git a/gnupg.c b/gnupg.c index e98927a..f3d84a7 100644 --- a/gnupg.c +++ b/gnupg.c @@ -481,21 +481,21 @@ PHP_MINIT_FUNCTION(gnupg) PHP_GNUPG_SET_CLASS_CONST("ERROR_WARNING", 1); PHP_GNUPG_SET_CLASS_CONST("ERROR_EXCEPTION", 2); PHP_GNUPG_SET_CLASS_CONST("ERROR_SILENT", 3); - PHP_GNUPG_SET_CLASS_CONST("PK_RSA", GPGME_PK_RSA); - PHP_GNUPG_SET_CLASS_CONST("PK_RSA_E", GPGME_PK_RSA_E); - PHP_GNUPG_SET_CLASS_CONST("PK_RSA_S", GPGME_PK_RSA_S); - PHP_GNUPG_SET_CLASS_CONST("PK_DSA", GPGME_PK_DSA); - PHP_GNUPG_SET_CLASS_CONST("PK_ELG", GPGME_PK_ELG); - PHP_GNUPG_SET_CLASS_CONST("PK_ELG_E", GPGME_PK_ELG_E); + PHP_GNUPG_SET_CLASS_CONST("PK_RSA", GPGME_PK_RSA); + PHP_GNUPG_SET_CLASS_CONST("PK_RSA_E", GPGME_PK_RSA_E); + PHP_GNUPG_SET_CLASS_CONST("PK_RSA_S", GPGME_PK_RSA_S); + PHP_GNUPG_SET_CLASS_CONST("PK_DSA", GPGME_PK_DSA); + PHP_GNUPG_SET_CLASS_CONST("PK_ELG", GPGME_PK_ELG); + PHP_GNUPG_SET_CLASS_CONST("PK_ELG_E", GPGME_PK_ELG_E); #if GPGME_VERSION_NUMBER >= 0x010500 /* GPGME >= 1.5.0 */ - PHP_GNUPG_SET_CLASS_CONST("PK_ECC", GPGME_PK_ECC); + PHP_GNUPG_SET_CLASS_CONST("PK_ECC", GPGME_PK_ECC); #endif /* gpgme >= 1.5.0 */ #if GPGME_VERSION_NUMBER >= 0x010300 /* GPGME >= 1.3.0 */ - PHP_GNUPG_SET_CLASS_CONST("PK_ECDSA", GPGME_PK_ECDSA); - PHP_GNUPG_SET_CLASS_CONST("PK_ECDH", GPGME_PK_ECDH); + PHP_GNUPG_SET_CLASS_CONST("PK_ECDSA", GPGME_PK_ECDSA); + PHP_GNUPG_SET_CLASS_CONST("PK_ECDH", GPGME_PK_ECDH); #endif /* gpgme >= 1.3.0 */ #if GPGME_VERSION_NUMBER >= 0x010700 /* GPGME >= 1.7.0 */ - PHP_GNUPG_SET_CLASS_CONST("PK_EDDSA", GPGME_PK_EDDSA); + PHP_GNUPG_SET_CLASS_CONST("PK_EDDSA", GPGME_PK_EDDSA); #endif /* gpgme >= 1.7.0 */ PHP_GNUPG_REG_CONST("GNUPG_SIG_MODE_NORMAL", GPGME_SIG_MODE_NORMAL); @@ -523,21 +523,21 @@ PHP_MINIT_FUNCTION(gnupg) PHP_GNUPG_REG_CONST("GNUPG_ERROR_WARNING", 1); PHP_GNUPG_REG_CONST("GNUPG_ERROR_EXCEPTION", 2); PHP_GNUPG_REG_CONST("GNUPG_ERROR_SILENT", 3); - PHP_GNUPG_REG_CONST("GNUPG_PK_RSA", GPGME_PK_RSA); - PHP_GNUPG_REG_CONST("GNUPG_PK_RSA_E", GPGME_PK_RSA_E); - PHP_GNUPG_REG_CONST("GNUPG_PK_RSA_S", GPGME_PK_RSA_S); - PHP_GNUPG_REG_CONST("GNUPG_PK_DSA", GPGME_PK_DSA); - PHP_GNUPG_REG_CONST("GNUPG_PK_ELG", GPGME_PK_ELG); - PHP_GNUPG_REG_CONST("GNUPG_PK_ELG_E", GPGME_PK_ELG_E); + PHP_GNUPG_REG_CONST("GNUPG_PK_RSA", GPGME_PK_RSA); + PHP_GNUPG_REG_CONST("GNUPG_PK_RSA_E", GPGME_PK_RSA_E); + PHP_GNUPG_REG_CONST("GNUPG_PK_RSA_S", GPGME_PK_RSA_S); + PHP_GNUPG_REG_CONST("GNUPG_PK_DSA", GPGME_PK_DSA); + PHP_GNUPG_REG_CONST("GNUPG_PK_ELG", GPGME_PK_ELG); + PHP_GNUPG_REG_CONST("GNUPG_PK_ELG_E", GPGME_PK_ELG_E); #if GPGME_VERSION_NUMBER >= 0x010500 /* GPGME >= 1.5.0 */ - PHP_GNUPG_REG_CONST("GNUPG_PK_ECC", GPGME_PK_ECC); + PHP_GNUPG_REG_CONST("GNUPG_PK_ECC", GPGME_PK_ECC); #endif /* gpgme >= 1.5.0 */ #if GPGME_VERSION_NUMBER >= 0x010300 /* GPGME >= 1.3.0 */ - PHP_GNUPG_REG_CONST("GNUPG_PK_ECDSA", GPGME_PK_ECDSA); - PHP_GNUPG_REG_CONST("GNUPG_PK_ECDH", GPGME_PK_ECDH); + PHP_GNUPG_REG_CONST("GNUPG_PK_ECDSA", GPGME_PK_ECDSA); + PHP_GNUPG_REG_CONST("GNUPG_PK_ECDH", GPGME_PK_ECDH); #endif /* gpgme >= 1.3.0 */ #if GPGME_VERSION_NUMBER >= 0x010700 /* GPGME >= 1.7.0 */ - PHP_GNUPG_REG_CONST("GNUPG_PK_EDDSA", GPGME_PK_EDDSA); + PHP_GNUPG_REG_CONST("GNUPG_PK_EDDSA", GPGME_PK_EDDSA); #endif /* gpgme >= 1.7.0 */ /* init gpgme subsystems */