aboutsummaryrefslogtreecommitdiffstats
path: root/lang/cpp
diff options
context:
space:
mode:
authorAndre Heinecke <[email protected]>2016-07-06 11:38:20 +0000
committerAndre Heinecke <[email protected]>2016-07-06 11:38:20 +0000
commitc28007d0407bcc3621b8266d6d77eb0d069aec35 (patch)
tree494476b8f9577e2648bd0e6cb9f3bfb8319c2f76 /lang/cpp
parentQt: Fix include order when buildin test (diff)
downloadgpgme-c28007d0407bcc3621b8266d6d77eb0d069aec35.tar.gz
gpgme-c28007d0407bcc3621b8266d6d77eb0d069aec35.zip
Cpp: Add PubkeyAlgo enum
* lang/cpp/src/key.h (Subkey::PubkeyAlgo): New enum. (Subkey::publicKeyAlgorithm): Change return type. * lang/cpp/src/key.cpp (Subkey::publicKeyAlgorithm): Use enum.
Diffstat (limited to 'lang/cpp')
-rw-r--r--lang/cpp/src/key.cpp4
-rw-r--r--lang/cpp/src/key.h18
2 files changed, 19 insertions, 3 deletions
diff --git a/lang/cpp/src/key.cpp b/lang/cpp/src/key.cpp
index 55eb0585..9e57013a 100644
--- a/lang/cpp/src/key.cpp
+++ b/lang/cpp/src/key.cpp
@@ -373,9 +373,9 @@ const char *Subkey::fingerprint() const
return subkey ? subkey->fpr : 0 ;
}
-unsigned int Subkey::publicKeyAlgorithm() const
+Subkey::PubkeyAlgo Subkey::publicKeyAlgorithm() const
{
- return subkey ? subkey->pubkey_algo : 0 ;
+ return subkey ? static_cast<PubkeyAlgo>(subkey->pubkey_algo) : AlgoUnknown;
}
const char *Subkey::publicKeyAlgorithmAsString() const
diff --git a/lang/cpp/src/key.h b/lang/cpp/src/key.h
index 7322f650..845b5dbd 100644
--- a/lang/cpp/src/key.h
+++ b/lang/cpp/src/key.h
@@ -205,7 +205,23 @@ public:
bool isSecret() const;
- unsigned int publicKeyAlgorithm() const;
+ /** Same as gpgme_pubkey_algo_t */
+ enum PubkeyAlgo {
+ AlgoUnknown = 0,
+ AlgoRSA = 1,
+ AlgoRSA_E = 2,
+ AlgoRSA_S = 3,
+ AlgoELG_E = 16,
+ AlgoDSA = 17,
+ AlgoECC = 18,
+ AlgoELG = 20,
+ AlgoECDSA = 301,
+ AlgoECDH = 302,
+ AlgoEDDSA = 303,
+ AlgoMax = 1 << 31
+ };
+
+ PubkeyAlgo publicKeyAlgorithm() const;
/**
@brief Get the public key algorithm name.