Commit Graph

4228 Commits

Author SHA1 Message Date
Gioacchino Mazzurco
3761b14734 Add some documentation to p3GxsMails 2017-02-26 12:13:00 +01:00
Gioacchino Mazzurco
97c9cc423e Merge branch 'master' into gxs_mail_experiments 2017-02-26 11:32:01 +01:00
Gioacchino Mazzurco
e2078ba6cf Disable gxs mail test subservice by default 2017-02-26 11:30:04 +01:00
Gioacchino Mazzurco
379fb97062 p3GxsMails queues persistents accross RS sessions
RsServer properly handle deletion (childs are not yet)
p3GxsMails properly handle deletion
RsControl::instance() use proper static initialization
p3GxsMails register configuration files at right time
RsGxsMailBaseItem take in account offset in header pointer
RsGxsMailSerializer use C++11 safe enum class for items types
RsGxsMailItem take in account offset in header pointer
RsGxsMailItem::deserialize(...) properly calculate final offset
p3GxsMails::handleResponse(...) delete group items after usage
move ex inner struct OutgoingRecord to gxs mail items header
p3MsgService::saveList removed unused variable
p3MsgService::notifyDataStatus(...) take in account multiple backends
p3MsgService::receiveGxsMail(...) take in account multiple backends
p3MsgService::receiveGRouterData(...) take in account multiple backends
Added prersistence to p3MsgService::gxsOngoingMessages
2017-02-26 00:46:02 +01:00
Gioacchino Mazzurco
748e75d3e1 Fix pqiSSLstore::encryptedSendItems empty list
RsTemporaryMemory was complaining of being initialized with size 0 in
case of empty list was passed to the method, this is a legitimate use
case when one want have an empty list as state, so in this case pass 1
as argument to RsTemporaryMemory constructor
2017-02-25 23:09:46 +01:00
Gioacchino Mazzurco
828792f2b5 p3Config improved coding style 2017-02-23 13:20:07 +01:00
Phenom
8325c72153 Fix UnitTest Compilation and Travis Error. 2017-02-22 17:46:16 +01:00
Gioacchino Mazzurco
f9b0063704 Improve incoming receipts handling 2017-02-22 14:46:40 +01:00
Gioacchino Mazzurco
77c430d553 Use unordered_multimap for ingoingQueue
This will avoid the possibility for a malicious node to cause a memory
leak and smash items in incoming queue of others nodes
2017-02-22 13:34:36 +01:00
Gioacchino Mazzurco
b9091c4ad8 p3MsgService uses p3GxsMails as backend too 2017-02-21 23:08:02 +01:00
Gioacchino Mazzurco
1376b9f031 p3GxsMails expose proper async API
Moved testing code to TestGxsMailClientService
RsGxsMailPresignedReceipt and RsGxsMailItem inherit RsGxsMailBaseItem
p3GxsMails::sendMail(...) check paramenters and return immediately
Added GxsMailsClient::notifySendMailStatus(...) to notify sent mails status
Added p3GxsMails::querySendMailStatus(...) so clients can query status
2017-02-21 12:20:50 +01:00
Gioacchino Mazzurco
fcdb3d6c88 RsGenExchange enum for create status 2017-02-21 11:43:18 +01:00
Gioacchino Mazzurco
e246876513 Cleanup GxsTokenQueue header 2017-02-20 07:36:59 +01:00
Gioacchino Mazzurco
55ff9067cf Acknoweldge mail reception via presigned receipt
This method does protect recipient metadata but doesn't support multicasting so
  if a mail has N recipients N copies of the mail need to be sent to the group
RsGenExchange made some members protected instead of private so child classes
  can use them
Create Rs{G,N}xsMailPresignedReceipt items to prepare and dispatch receipts
Move RsNxsMsg deserialization to RsNxsMsg::deserialize(...) method
2017-02-18 20:32:25 +01:00
cyril soler
cda3c744af attempt at fixing a bug that can cause a crash in p3filelists.cc 2017-02-17 09:17:33 +01:00
Gioacchino Mazzurco
9cde0fd996 Put in place auth policy, storage time and testing
Better memory handling for message dispatching
Better typing for some methods
2017-02-09 16:11:53 +01:00
Gioacchino Mazzurco
4daca00359 More work on GXS mail subservices 2017-02-08 13:39:29 +01:00
Gioacchino Mazzurco
1f1f4ded02 GxsMail: Implemented RSA mail receiving
RsGxsMailBaseItem::deserialize(...) fix offset calculation
RsGxsMailItem::serialize(...) fix offset calculation
RsGxsMailBaseItem initialize cryptoType to UNDEFINED_ENCRYPTION
p3IdService::decryptData(...) implemented multi id variant
RsGixs::*cryptData(...) proper param order
p3IdService::*cryptData(...) proper param order
2017-02-08 13:39:29 +01:00
Gioacchino Mazzurco
54a0f87369 GxsMail implemented RSA encrypted mails sending
Add notice about param not being checked in GxsSecurity
Use proper types for RsGenExchange::getMsg* params
Implement bitwise or and not operators for t_RsGenericIdType
GxsMail unsubscribe old unused groups
GxsMail initial work on supporting client services
Implemented p3IdService::encryptData(...) for multiple recipients
2017-02-08 13:39:29 +01:00
Gioacchino Mazzurco
0af9291e54 Tiny fixes seems groups and messages propagate now 2017-02-08 13:39:29 +01:00
Gioacchino Mazzurco
38ab9a058f Update initialization after rebase on top of 8568199497 2017-02-08 13:39:29 +01:00
Gioacchino Mazzurco
56c870c1d7 Initialize GXS mail service in rsinit.cc
forgot in previous commit
2017-02-08 13:39:29 +01:00
Gioacchino Mazzurco
53e3177c2b First experiments with GXS Mail
Periodically pool GXS backend for new groups and subscribe to all.

A group is created and an email can be sent to it but for some reason
the group and and the email are not received by friends.
2017-02-08 13:39:29 +01:00
csoler
c61ccda431 fixed compilation problem caused by a bug in qtcreator global replace. Warning: always check the result of qtcreator global replace 2017-02-07 22:04:07 +01:00
csoler
37f3e1a62a fixed problem in ID creation code. 2017-02-07 20:15:55 +01:00
csoler
6a9b697e42 made RsReputation::overallReputationLevel() to also return the identity ownership flags so that we dont need to rely on async calls to p3IdService to get them 2017-02-06 23:46:01 +01:00
csoler
013eb93f70 rewrote forum loading method with the proper logarithmic containers 2017-02-06 00:11:26 +01:00
cyril soler
873fbf98ad added 3 missing delete, responsible for small memory leaks 2017-02-01 14:32:51 +01:00
csoler
deea1b5344 moved temporary GXS object structures into rsgxsutil.h and used them in p3gxscircles to remove a memory leak 2017-01-31 20:59:50 +01:00
csoler
0a02419a29 fixed a big memory leak in hash cache storage load code, and improved deletion of allocated memory if file reading fails 2017-01-31 20:07:27 +01:00
csoler
7327f1a98b fixed deadlock caused by locking the mutex in p3Identity after the one in p3GxsReputation 2017-01-28 15:26:12 +01:00
csoler
f7a1348370 made Accepted option in Transfers to send tunnel requests for both encrypted and clear tunnels 2017-01-23 19:13:50 +01:00
csoler
73d9a48366 update client Grp TS even when friend peer is subscribed to no groups, so as to avoid the friend re-sendign an empty list indefinitly (fix suggested by jo) 2017-01-22 18:36:36 +01:00
Phenom
1f5ef4cc05 Fix Compilation 2017-01-21 17:29:07 +01:00
csoler
e07d6ff6b1 removed debuginfo from PR 654 2017-01-21 17:26:44 +01:00
Phenom
aa05d60894 Fix all warnings in UnitTest 2017-01-21 16:31:45 +01:00
csoler
ee4d722225 fixed cache deletion of GXS grp meta that caused deleted groups to not come back when available 2017-01-20 23:27:18 +01:00
csoler
d1af2e09dc merged with upstream/master 2017-01-20 00:00:47 +01:00
csoler
b52ab0f542 added auto-clean of unused groups when grpAutoSync is enabled (so it does not touch identities) 2017-01-19 23:59:26 +01:00
csoler
410123b976 added warning about consistency error in idservice group flags 2017-01-19 11:16:47 +01:00
csoler
06265f2b54 added consistency check in meta data in publishGroup() and updateGroup() in order to avoid bad data supplied from GXS services 2017-01-19 11:13:06 +01:00
cyril soler
8568199497 fixed mistake that prevented GXS posts to propagate 2017-01-17 12:40:09 +01:00
csoler
e19711785b fixed last commit because of compilation 2017-01-16 20:57:19 +01:00
csoler
967b85c9bf removed old call to rsIdentity in rsgxsnetservice and removed warning 2017-01-16 20:49:52 +01:00
csoler
c00caa967d Merge pull request #644 from G10h4ck/ccleanup
Some cleanup and deprecation
2017-01-15 21:28:28 +01:00
csoler
5c296b9349 removed warning when peer list is empty in cache_load of identities 2017-01-15 09:57:06 +01:00
Gioacchino Mazzurco
a881441384 Some cleanup and deprecation
RsGxsDataAccess deprecate unused ansType
RsGxsDataAccess::setReq(...) use proper types for params
RsGxsDataAccess::getGroupData(...) print useful information in case of error
GxsRequest proper initialization in constructor
GxsRequest deprecate meaningless ansType
RsGroupMetaData Fix comment to avoid confusion
Deprecated meaningless RS_TOKREQ_ANSTYPE_* common source of confusion
p3GxsCircles::request_CircleIdList() removed unused variable
p3GxsCircles::request_CircleIdList() preper return value
2017-01-14 23:12:50 +01:00
csoler
233c38d8db Merge pull request #641 from csoler/v0.6-Reputations
V0.6 reputations
2017-01-14 20:45:53 +01:00
csoler
df94de9142 disallow to ban your own identity in forums, and make opinions show up as a function ofwhat the ID opinion already is 2017-01-13 18:31:50 +01:00
Gioacchino Mazzurco
cdd39736d4 Documentation and code cleanup
Fix a warning in RsGenExchange::messagePublicationTest(...)
Fix documentation for RsGenExchange::{generatePublicToken(), acknowledgeTokenGrp(...)}
Properly initialize RsGroupMetaData, RsMsgMetaData and p3GxsForums members
Cleanup RsGxsNotify
2017-01-12 22:34:28 +01:00