diff options
Diffstat (limited to 'lang/cpp')
| -rw-r--r-- | lang/cpp/src/key.cpp | 4 | ||||
| -rw-r--r-- | lang/cpp/src/key.h | 18 | 
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. | 
