diff options
| author | Andre Heinecke <[email protected]> | 2018-04-19 08:44:01 +0000 | 
|---|---|---|
| committer | Andre Heinecke <[email protected]> | 2018-04-19 08:46:34 +0000 | 
| commit | 0adaf7bafd352f1c3a1e797493780150e3bb0adc (patch) | |
| tree | 5d6ebe94de32a44eb1f8e4ffe2532a49a698fb0f /lang/cpp | |
| parent | core: Remove leftover debug output. (diff) | |
| download | gpgme-0adaf7bafd352f1c3a1e797493780150e3bb0adc.tar.gz gpgme-0adaf7bafd352f1c3a1e797493780150e3bb0adc.zip | |
cpp: Add origin and last_update
* NEWS: mention interface change.
* lang/cpp/src/key.cpp (Key::origin, Key::lastUpdate): New.
* lang/cpp/src/key.h (Key::Origin): New enum.
Diffstat (limited to 'lang/cpp')
| -rw-r--r-- | lang/cpp/src/key.cpp | 31 | ||||
| -rw-r--r-- | lang/cpp/src/key.h | 21 | 
2 files changed, 52 insertions, 0 deletions
| diff --git a/lang/cpp/src/key.cpp b/lang/cpp/src/key.cpp index 0e86a19e..838033c5 100644 --- a/lang/cpp/src/key.cpp +++ b/lang/cpp/src/key.cpp @@ -981,6 +981,37 @@ Error Key::addUid(const char *uid)      return ret;  } +Key::Origin Key::origin() const +{ +    if (isNull()) { +        return OriginUnknown; +    } +    switch (key->origin) { +        case GPGME_KEYORG_KS: +            return OriginKS; +        case GPGME_KEYORG_DANE: +            return OriginDane; +        case GPGME_KEYORG_WKD: +            return OriginWKD; +        case GPGME_KEYORG_URL: +            return OriginURL; +        case GPGME_KEYORG_FILE: +            return OriginFile; +        case GPGME_KEYORG_SELF: +            return OriginSelf; +        case GPGME_KEYORG_OTHER: +            return OriginOther; +        case GPGME_KEYORG_UNKNOWN: +        default: +            return OriginUnknown; +    } +} + +time_t Key::lastUpdate() const +{ +    return static_cast<time_t>(key ? key->last_update : 0); +} +  std::ostream &operator<<(std::ostream &os, const UserID &uid)  {      os << "GpgME::UserID("; diff --git a/lang/cpp/src/key.h b/lang/cpp/src/key.h index c3c711c1..07ddc256 100644 --- a/lang/cpp/src/key.h +++ b/lang/cpp/src/key.h @@ -178,6 +178,27 @@ public:       */      static Key locate(const char *mbox); +    /* @enum Origin +     * @brief The Origin of the key. */ +    enum Origin : unsigned int { +        OriginUnknown = 0, +        OriginKS = 1, +        OriginDane = 3, +        OriginWKD = 4, +        OriginURL = 5, +        OriginFile = 6, +        OriginSelf = 7, +        OriginOther = 31, +    }; +    /*! Get the origin of the key. +     * +     * @returns the Origin. */ +    Origin origin() const; + +    /*! Get the last update time. +     * +     * @returns the last update time. */ +    time_t lastUpdate() const;  private:      gpgme_key_t impl() const      { | 
