Browse Source

grp enc interface - ommit pEp_group in adapter_group_create()

LIB-11
heck 4 years ago
parent
commit
a2c5c99046
  1. 25
      src/adapter_group.cc
  2. 51
      src/adapter_group.h
  3. 5
      src/grp_update_drv_dummy.cc
  4. 5
      src/grp_update_drv_dummy.hh
  5. 5
      src/grp_update_drv_engine.cc
  6. 3
      src/grp_update_drv_engine.hh
  7. 3
      src/grp_update_interface.hh
  8. 16
      test/framework/framework.cc
  9. 2
      test/framework/framework.hh

25
src/adapter_group.cc

@ -18,7 +18,14 @@ using namespace std;
using namespace pEp; using namespace pEp;
//Listmanager config //Listmanager config
string lm_dummy_db_path = "listman_dummy.db"; string lm_dummy_db_filename = "listman_dummy.db";
#ifdef WIN32
string lm_dummy_db_path = string(::per_user_directory()) + "\\" + listman_db_filename;
#else
string lm_dummy_db_path = string(::per_user_directory()) + "/" + lm_dummy_db_filename;
#endif
/************************************************************************************************* /*************************************************************************************************
* Group management functions * Group management functions
@ -27,32 +34,26 @@ string lm_dummy_db_path = "listman_dummy.db";
GroupUpdateDriverEngine group_update_driver_engine{}; GroupUpdateDriverEngine group_update_driver_engine{};
GroupUpdateInterface *gu_engine = &group_update_driver_engine; GroupUpdateInterface *gu_engine = &group_update_driver_engine;
// Listmanager Driver // Listmanager Driver
GroupUpdateDriverDummy group_update_driver_dummy{lm_dummy_db_path}; GroupUpdateDriverDummy group_update_driver_dummy{ lm_dummy_db_path };
GroupUpdateInterface *gu_listman = &group_update_driver_dummy; GroupUpdateInterface *gu_listman = &group_update_driver_dummy;
DYNAMIC_API PEP_STATUS adapter_group_create( DYNAMIC_API PEP_STATUS adapter_group_create(
PEP_SESSION session, PEP_SESSION session,
pEp_identity *group_identity, pEp_identity *group_identity,
pEp_identity *manager, pEp_identity *manager,
identity_list *memberlist, identity_list *memberlist)
pEp_group **group)
{ {
pEpLog("called"); pEpLog("called");
// Do listmanager // Do listmanager
PEP_STATUS status = gu_listman->adapter_group_create( PEP_STATUS status = gu_listman->adapter_group_create(session, group_identity, manager, memberlist);
session,
group_identity,
manager,
memberlist,
group);
if (status != PEP_STATUS_OK) { if (status != PEP_STATUS_OK) {
return status; return status;
} }
// Do engine // Do engine
status = gu_engine->adapter_group_create(session, group_identity, manager, memberlist, group); status = gu_engine->adapter_group_create(session, group_identity, manager, memberlist);
if (status != PEP_STATUS_OK) { if (status != PEP_STATUS_OK) {
// Rollback listman // Rollback listman
PEP_STATUS rb_stat = gu_listman->adapter_group_dissolve(session, group_identity, manager); PEP_STATUS rb_stat = gu_listman->adapter_group_dissolve(session, group_identity, manager);
@ -169,7 +170,7 @@ PEP_STATUS adapter_group_remove_member(
* Group query functions * Group query functions
*************************************************************************************************/ *************************************************************************************************/
// Listmanager Driver // Listmanager Driver
GroupQueryDriverDummy group_query_driver_dummy{lm_dummy_db_path}; GroupQueryDriverDummy group_query_driver_dummy{ lm_dummy_db_path };
GroupQueryInterface *gq_listman = &group_query_driver_dummy; GroupQueryInterface *gq_listman = &group_query_driver_dummy;
DYNAMIC_API PEP_STATUS group_query_groups(PEP_SESSION session, identity_list **groups) DYNAMIC_API PEP_STATUS group_query_groups(PEP_SESSION session, identity_list **groups)

51
src/adapter_group.h

@ -37,9 +37,6 @@ extern "C" {
* a user_id and address, and there must be a default key for the manager * a user_id and address, and there must be a default key for the manager
* present in the database * present in the database
* @param[in,out] member_ident_list list of group member identities * @param[in,out] member_ident_list list of group member identities
* @param[in,out] group Optional reference for pointer to group object
* representing the created group.
* (When input is NULL, no object is created)
* *
* @retval PEP_STATUS_OK on success * @retval PEP_STATUS_OK on success
* error on failure * error on failure
@ -58,9 +55,7 @@ DYNAMIC_API PEP_STATUS adapter_group_create(
PEP_SESSION session, PEP_SESSION session,
pEp_identity *group_identity, pEp_identity *group_identity,
pEp_identity *manager, pEp_identity *manager,
identity_list *memberlist, identity_list *memberlist);
pEp_group **group
);
/** /**
@ -84,11 +79,8 @@ DYNAMIC_API PEP_STATUS adapter_group_create(
* *
* *
*/ */
DYNAMIC_API PEP_STATUS adapter_group_join( DYNAMIC_API PEP_STATUS
PEP_SESSION session, adapter_group_join(PEP_SESSION session, pEp_identity *group_identity, pEp_identity *as_member);
pEp_identity *group_identity,
pEp_identity *as_member
);
/** /**
* <!-- adapter_group_dissolve() --> * <!-- adapter_group_dissolve() -->
@ -111,11 +103,8 @@ DYNAMIC_API PEP_STATUS adapter_group_join(
* @warning For recipients to accept the dissolution, the sender/manager key used must be a key that they * @warning For recipients to accept the dissolution, the sender/manager key used must be a key that they
* have a trust entry for. * have a trust entry for.
*/ */
DYNAMIC_API PEP_STATUS adapter_group_dissolve( DYNAMIC_API PEP_STATUS
PEP_SESSION session, adapter_group_dissolve(PEP_SESSION session, pEp_identity *group_identity, pEp_identity *manager);
pEp_identity *group_identity,
pEp_identity *manager
);
/** /**
* <!-- adapter_group_invite_member() --> * <!-- adapter_group_invite_member() -->
@ -140,10 +129,9 @@ DYNAMIC_API PEP_STATUS adapter_group_dissolve(
* *
*/ */
DYNAMIC_API PEP_STATUS adapter_group_invite_member( DYNAMIC_API PEP_STATUS adapter_group_invite_member(
PEP_SESSION session, PEP_SESSION session,
pEp_identity *group_identity, pEp_identity *group_identity,
pEp_identity *group_member pEp_identity *group_member);
);
/** /**
* <!-- adapter_group_remove_member() --> * <!-- adapter_group_remove_member() -->
@ -166,10 +154,9 @@ DYNAMIC_API PEP_STATUS adapter_group_invite_member(
* *
*/ */
PEP_STATUS adapter_group_remove_member( PEP_STATUS adapter_group_remove_member(
PEP_SESSION session, PEP_SESSION session,
pEp_identity *group_identity, pEp_identity *group_identity,
pEp_identity *group_member pEp_identity *group_member);
);
/************************************************************************************************* /*************************************************************************************************
@ -210,11 +197,8 @@ DYNAMIC_API PEP_STATUS group_query_groups(PEP_SESSION session, identity_list **g
* *
*/ */
DYNAMIC_API PEP_STATUS group_query_manager( DYNAMIC_API PEP_STATUS
PEP_SESSION session, group_query_manager(PEP_SESSION session, const pEp_identity *const group, pEp_identity **manager);
const pEp_identity *const group,
pEp_identity **manager
);
/** /**
* <!-- group_query_members() --> * <!-- group_query_members() -->
@ -232,15 +216,12 @@ DYNAMIC_API PEP_STATUS group_query_manager(
* *
*/ */
DYNAMIC_API PEP_STATUS group_query_members( DYNAMIC_API PEP_STATUS
PEP_SESSION session, group_query_members(PEP_SESSION session, const pEp_identity *const group, identity_list **members);
const pEp_identity *const group,
identity_list **members
);
#ifdef __cplusplus #ifdef __cplusplus
}; };
#endif #endif
#endif //LIBPEPADAPTER_GROUP_HH #endif //LIBPEPADAPTER_GROUP_HH

5
src/grp_update_drv_dummy.cc

@ -18,13 +18,12 @@ namespace pEp {
PEP_SESSION session, PEP_SESSION session,
pEp_identity *group_identity, pEp_identity *group_identity,
pEp_identity *manager, pEp_identity *manager,
identity_list *memberlist, identity_list *memberlist)
pEp_group **group)
{ {
pEpLogClass("called"); pEpLogClass("called");
string addr_list = group_identity->address; string addr_list = group_identity->address;
string addr_manager = manager->address; string addr_manager = manager->address;
lmd.list_add(addr_list,addr_manager); lmd.list_add(addr_list, addr_manager);
// TODO:ADD MEMBERLIST // TODO:ADD MEMBERLIST
return PEP_STATUS_OK; return PEP_STATUS_OK;

5
src/grp_update_drv_dummy.hh

@ -12,14 +12,13 @@ namespace pEp {
class GroupUpdateDriverDummy : public GroupUpdateInterface { class GroupUpdateDriverDummy : public GroupUpdateInterface {
public: public:
GroupUpdateDriverDummy() = delete; GroupUpdateDriverDummy() = delete;
GroupUpdateDriverDummy(const std::string& db_path); GroupUpdateDriverDummy(const std::string &db_path);
PEP_STATUS adapter_group_create( PEP_STATUS adapter_group_create(
PEP_SESSION session, PEP_SESSION session,
pEp_identity *group_identity, pEp_identity *group_identity,
pEp_identity *manager, pEp_identity *manager,
identity_list *memberlist, identity_list *memberlist) override;
pEp_group **group) override;
PEP_STATUS adapter_group_join( PEP_STATUS adapter_group_join(
PEP_SESSION session, PEP_SESSION session,

5
src/grp_update_drv_engine.cc

@ -12,11 +12,10 @@ namespace pEp {
PEP_SESSION session, PEP_SESSION session,
pEp_identity *group_identity, pEp_identity *group_identity,
pEp_identity *manager, pEp_identity *manager,
identity_list *memberlist, identity_list *memberlist)
pEp_group **group)
{ {
pEpLogClass("called"); pEpLogClass("called");
return ::group_create(session, group_identity, manager, memberlist, group); return ::group_create(session, group_identity, manager, memberlist, nullptr);
} }
PEP_STATUS GroupUpdateDriverEngine::adapter_group_join( PEP_STATUS GroupUpdateDriverEngine::adapter_group_join(

3
src/grp_update_drv_engine.hh

@ -15,8 +15,7 @@ namespace pEp {
PEP_SESSION session, PEP_SESSION session,
pEp_identity *group_identity, pEp_identity *group_identity,
pEp_identity *manager, pEp_identity *manager,
identity_list *memberlist, identity_list *memberlist) override;
pEp_group **group) override;
PEP_STATUS adapter_group_join( PEP_STATUS adapter_group_join(
PEP_SESSION session, PEP_SESSION session,

3
src/grp_update_interface.hh

@ -14,8 +14,7 @@ namespace pEp {
PEP_SESSION session, PEP_SESSION session,
pEp_identity *group_identity, pEp_identity *group_identity,
pEp_identity *manager, pEp_identity *manager,
identity_list *memberlist, identity_list *memberlist) = 0;
pEp_group **group) = 0;
virtual PEP_STATUS adapter_group_join( virtual PEP_STATUS adapter_group_join(
PEP_SESSION session, PEP_SESSION session,

16
test/framework/framework.cc

@ -24,14 +24,14 @@
#include "../../src/Adapter.hh" #include "../../src/Adapter.hh"
pEp::Test::Transport pEp::Test::transport; pEp::Test::Transport pEp::Test::transport;
std::string pEp::Test::path;
extern std::thread pEp::Adapter::_sync_thread;
using namespace pEp; using namespace pEp;
using namespace std; using namespace std;
namespace pEp { namespace pEp {
namespace Test { namespace Test {
string per_user_dir;
void setup(vector<string> &args) void setup(vector<string> &args)
{ {
#ifdef WIN32 #ifdef WIN32
@ -67,8 +67,8 @@ namespace pEp {
#else #else
setenv("HOME", _path, 1); setenv("HOME", _path, 1);
#endif #endif
path = _path; per_user_dir = _path;
cerr << "test directory: " << path << endl; cerr << "test directory: " << per_user_dir << endl;
} }
void setup(int argc, char **argv) void setup(int argc, char **argv)
@ -135,7 +135,13 @@ namespace pEp {
stringlist_t *keylist; stringlist_t *keylist;
::PEP_rating rating; ::PEP_rating rating;
::PEP_decrypt_flags_t flags = 0; ::PEP_decrypt_flags_t flags = 0;
::PEP_STATUS status = ::decrypt_message(Adapter::session(), msg.get(), &_dst, &keylist, &rating, &flags); ::PEP_STATUS status = ::decrypt_message(
Adapter::session(),
msg.get(),
&_dst,
&keylist,
&rating,
&flags);
throw_status(status); throw_status(status);
Message dst; Message dst;

2
test/framework/framework.hh

@ -55,7 +55,7 @@ namespace pEp {
}; };
extern Transport transport; extern Transport transport;
extern std::string path; extern std::string per_user_dir;
}; // namespace Test }; // namespace Test
}; // namespace pEp }; // namespace pEp

Loading…
Cancel
Save