Add JSON API to list PGP friends

This commit is contained in:
Gioacchino Mazzurco 2019-10-06 23:03:14 +02:00
parent db3aefcd0b
commit 89819dd945
No known key found for this signature in database
GPG Key ID: A1FBCA3872E87051
3 changed files with 31 additions and 4 deletions

View File

@ -396,10 +396,6 @@ struct RsPeerStateChangedEvent : RsEvent
class RsPeers class RsPeers
{ {
public: public:
RsPeers() {}
virtual ~RsPeers() {}
/** /**
* @brief Get own SSL peer id * @brief Get own SSL peer id
* @return own peer id * @return own peer id
@ -416,6 +412,14 @@ public:
*/ */
virtual bool getFriendList(std::list<RsPeerId>& sslIds) = 0; virtual bool getFriendList(std::list<RsPeerId>& sslIds) = 0;
/**
* @brief Get trusted PGP ids list
* @jsonapi{development}
* @param[out] pgpIds storage for the trusted PGP ids
* @return false if error occurred, true otherwise
*/
virtual bool getPgpFriendList(std::vector<RsPgpId>& pgpIds) = 0;
/** /**
* @brief Get connected peers list * @brief Get connected peers list
* @jsonapi{development} * @jsonapi{development}
@ -498,6 +502,8 @@ public:
*/ */
virtual RsPgpId getGPGId(const RsPeerId& sslId) = 0; virtual RsPgpId getGPGId(const RsPeerId& sslId) = 0;
virtual bool isKeySupported(const RsPgpId& gpg_ids) = 0; virtual bool isKeySupported(const RsPgpId& gpg_ids) = 0;
RS_DEPRECATED_FOR(getPgpFriendList)
virtual bool getGPGAcceptedList(std::list<RsPgpId> &gpg_ids) = 0; virtual bool getGPGAcceptedList(std::list<RsPgpId> &gpg_ids) = 0;
virtual bool getGPGSignedList(std::list<RsPgpId> &gpg_ids) = 0;// keys signed by our own PGP key. virtual bool getGPGSignedList(std::list<RsPgpId> &gpg_ids) = 0;// keys signed by our own PGP key.
virtual bool getGPGValidList(std::list<RsPgpId> &gpg_ids) = 0;// all PGP keys without filtering virtual bool getGPGValidList(std::list<RsPgpId> &gpg_ids) = 0;// all PGP keys without filtering
@ -847,4 +853,6 @@ public:
RS_DEPRECATED_FOR(isPgpFriend) RS_DEPRECATED_FOR(isPgpFriend)
virtual bool isGPGAccepted(const RsPgpId &gpg_id_is_friend) = 0; virtual bool isGPGAccepted(const RsPgpId &gpg_id_is_friend) = 0;
virtual ~RsPeers();
}; };

View File

@ -647,6 +647,18 @@ bool p3Peers::getGPGSignedList(std::list<RsPgpId> &ids)
return true; return true;
} }
bool p3Peers::getPgpFriendList(std::vector<RsPgpId>& pgpIds)
{
std::list<RsPgpId> ids;
if(AuthGPG::getAuthGPG()->getGPGAcceptedList(ids))
{
pgpIds.clear();
std::copy(ids.begin(), ids.end(), std::back_inserter(pgpIds));
return true;
}
return false;
}
bool p3Peers::getGPGAcceptedList(std::list<RsPgpId> &ids) bool p3Peers::getGPGAcceptedList(std::list<RsPgpId> &ids)
{ {
#ifdef P3PEERS_DEBUG #ifdef P3PEERS_DEBUG
@ -1873,3 +1885,5 @@ void p3Peers::setServicePermissionFlags(const RsPgpId& gpg_id,const ServicePermi
RsPeerStateChangedEvent::RsPeerStateChangedEvent(RsPeerId sslId) : RsPeerStateChangedEvent::RsPeerStateChangedEvent(RsPeerId sslId) :
RsEvent(RsEventType::PEER_STATE_CHANGED), mSslId(sslId) {} RsEvent(RsEventType::PEER_STATE_CHANGED), mSslId(sslId) {}
RsPeers::~RsPeers() = default;

View File

@ -83,6 +83,11 @@ public:
virtual const RsPgpId& getGPGOwnId(); virtual const RsPgpId& getGPGOwnId();
virtual RsPgpId getGPGId(const RsPeerId &ssl_id); virtual RsPgpId getGPGId(const RsPeerId &ssl_id);
virtual bool isKeySupported(const RsPgpId& ids); virtual bool isKeySupported(const RsPgpId& ids);
/// @see RsPeers
bool getPgpFriendList(std::vector<RsPgpId>& pgpIds) override;
RS_DEPRECATED_FOR(getPgpFriendList)
virtual bool getGPGAcceptedList(std::list<RsPgpId> &ids); virtual bool getGPGAcceptedList(std::list<RsPgpId> &ids);
virtual bool getGPGSignedList(std::list<RsPgpId> &ids); virtual bool getGPGSignedList(std::list<RsPgpId> &ids);
virtual bool getGPGValidList(std::list<RsPgpId> &ids); virtual bool getGPGValidList(std::list<RsPgpId> &ids);