aboutsummaryrefslogtreecommitdiffstats
path: root/lang/cpp/src
diff options
context:
space:
mode:
Diffstat (limited to '')
-rw-r--r--lang/cpp/src/key.cpp9
-rw-r--r--lang/cpp/src/key.h7
2 files changed, 15 insertions, 1 deletions
diff --git a/lang/cpp/src/key.cpp b/lang/cpp/src/key.cpp
index 9e57013a..d99c5ec9 100644
--- a/lang/cpp/src/key.cpp
+++ b/lang/cpp/src/key.cpp
@@ -383,6 +383,15 @@ const char *Subkey::publicKeyAlgorithmAsString() const
return gpgme_pubkey_algo_name(subkey ? subkey->pubkey_algo : (gpgme_pubkey_algo_t)0);
}
+/* static */
+const char *Subkey::publicKeyAlgorithmAsString(PubkeyAlgo algo)
+{
+ if (algo == AlgoUnknown) {
+ return NULL;
+ }
+ return gpgme_pubkey_algo_name(static_cast<gpgme_pubkey_algo_t>(algo));
+}
+
std::string Subkey::algoName() const
{
char *gpgmeStr;
diff --git a/lang/cpp/src/key.h b/lang/cpp/src/key.h
index 845b5dbd..bb0487b9 100644
--- a/lang/cpp/src/key.h
+++ b/lang/cpp/src/key.h
@@ -233,11 +233,16 @@ public:
*/
const char *publicKeyAlgorithmAsString() const;
+ /** @brief Same as publicKeyAlgorithmAsString but static. */
+ static const char *publicKeyAlgorithmAsString(PubkeyAlgo algo);
+
/**
@brief Get the key algo string like GnuPG 2.1 prints it.
This returns combinations of size and algorithm. Like
- bp512 or rsa2048
+ bp512 or rsa2048. Misnamed because publicKeyAlgorithmAsString
+ already used the older pubkey_algo_name.
+ Actually uses gpgme_pubkey_algo_string.
@returns the key algorithm as string. Empty string on error.
*/