Commit Graph

233 Commits

Author SHA1 Message Date
csoler
590be092e5 separated RsTlvSecurityKey into two incompatible classes to enforce the correct usage of private vs. public keys 2016-06-02 23:47:57 -04:00
sehraf
f16ee97093 add static thread names 2016-06-01 16:21:55 +02:00
csoler
89472d6502 put some notes and comments in the code for what is to be done 2016-05-17 00:00:15 -04:00
csoler
70648398e2 merged with upstream/master 2016-05-01 15:22:13 -04:00
csoler
39553a601c removed debug info 2016-04-19 21:58:30 -04:00
csoler
34bd998c8e cleaned the mess in Circles, due to mixing up GxsIds and PgpIds, which is now irrelevant because items for external circles are not sent based on PGP signatures anymore 2016-04-17 17:13:42 -04:00
csoler
3000f94999 separated subscribe status from wether we are part of a circle or not. Still needs update of GUI 2016-04-17 00:52:00 -04:00
csoler
048192ee9c added mOriginator to CircleCache entry and auto-ask for unknown GXS ids to the friend who supplied the circle group 2016-04-14 23:47:42 -04:00
csoler
6c8737c84a merged with upstream/master 2016-03-25 21:09:37 -04:00
csoler
44cadc22b2 cleaned debug info and disabled local circles before merge 2016-03-24 19:46:08 -04:00
csoler
57f4463864 fixed potential crash due to using deleted data (found by dimqua) 2016-03-23 18:23:10 -04:00
csoler
1fb1f3ebaf update of groups up to the latest attached circle server update TS. Should re-send groups that depend on a circle when the circle change 2016-03-21 23:21:26 -04:00
Phenom
b13292bb80 Fix error reported by CppChecker:
/libretroshare/src/gxs/rsgenexchange.cc:2850: erreur : Cppcheck:
Dereferencing 'grp' after it is deallocated / released
/libretroshare/src/gxstunnel/p3gxstunnel.cc:1004: erreur : Cppcheck:
Invalid usage of output stream: '<< std::cerr'.
/libretroshare/src/util/contentvalue.cc:185: erreur : Cppcheck: Memory
leak: dest
/openpgpsdk/src/openpgpsdk/reader_armoured.c:575: erreur : Cppcheck:
Common realloc mistake: 'buf' nulled but not freed upon failure
/retroshare-gui/src/gui/FileTransfer/DLListDelegate.cpp:103: erreur :
Cppcheck: Array 'byteUnits[4]' accessed at index 4, which is out of
bounds.
/retroshare-gui/src/gui/FileTransfer/DLListDelegate.cpp:122: erreur :
Cppcheck: Array 'byteUnits[4]' accessed at index 4, which is out of
bounds.
/retroshare-gui/src/gui/FileTransfer/DLListDelegate.cpp:141: erreur :
Cppcheck: Array 'byteUnits[4]' accessed at index 4, which is out of
bounds.
/retroshare-gui/src/gui/FileTransfer/ULListDelegate.cpp:92: erreur :
Cppcheck: Array 'byteUnits[4]' accessed at index 4, which is out of
bounds.
/retroshare-gui/src/gui/FileTransfer/ULListDelegate.cpp:111: erreur :
Cppcheck: Array 'byteUnits[4]' accessed at index 4, which is out of
bounds.
/retroshare-gui/src/gui/People/PeopleDialog.cpp:774: erreur : Cppcheck:
Uninitialized variable: layout
/retroshare-gui/src/gui/People/PeopleDialog.cpp:864: erreur : Cppcheck:
Uninitialized variable: layout
/retroshare-gui/src/gui/common/AvatarWidget.cpp:225: erreur : Cppcheck:
Uninitialized variable: status
/retroshare-nogui/src/rpc/proto/rpcprotostream.cc:805: erreur :
Cppcheck: Memory leak: buffer
/supportlibs/pegmarkdown/GLibFacade.c:150: erreur : Cppcheck: va_list
'args' was opened but not closed by va_end().
/openpgpsdk/src/openpgpsdk/reader_armoured.c:575: erreur : Cppcheck:
Common realloc mistake: 'buf' nulled but not freed upon failure
/tests/unittests/libretroshare/serialiser/rsturtleitem_test.cc:213:
erreur : Cppcheck: Return value of allocation function 'init_item' is
not stored.
2016-03-20 13:12:30 +01:00
csoler
31356bab96 added reload of grp meta on update 2016-03-16 21:27:46 -04:00
csoler
80aaf30a01 fixed potential crash due to bad usage of updates 2016-03-15 00:00:39 -04:00
csoler
bdb326a989 attempt at fixing circle cache loop. Renamed a few variables and fixed logic. Not yet fully working 2016-03-14 23:19:37 -04:00
csoler
051806227f fixed circle auto-subscribe 2016-03-13 11:29:21 -04:00
csoler
9ddef9e45b merged with upstream/master 2016-02-25 17:48:59 -05:00
csoler
f5eb791230 added notification for modified metadata in group. Does not yet work on friends though. 2016-02-23 23:04:22 -05:00
csoler
b8c42a9eb7 added copy of previous subscription flags when group update is received. Avoids unsubscribing friends when publishing an update to grp metadata 2016-02-23 23:04:22 -05:00
csoler
fafe75dca6 added update of mServerUpdateTS up to last mRecvTS of each group, which holds the last time the grp meta data was received/modified 2016-02-23 23:04:22 -05:00
csoler
edef6dc339 moved subscription flags when received group changes/create group to the case where the group is actually created (fixing bug causing group meta data change to unsubscribe friends) 2016-02-21 10:29:35 -05:00
electron128
9f9221273a - make tests compile
- added tests to travis.yml
- excluded grouteritems and photoitems from test, because they changed too much
- disabled failing tests
- all tests pass in valgrind, without valgrind result is undefined
- to compile tests add CONFIG+=tests to qmake args. Then run tests/unittests/unittests
2016-02-13 11:55:25 +01:00
csoler
71071595c8 called re-loading of circles after creation. Added debug info in msg vetting 2016-02-11 21:59:45 -05:00
csoler
3db3ccf636 merged with upstream 2016-02-10 00:00:21 -05:00
Cyril Soler
3664626704 added missing check for mNetService 2016-02-02 12:14:39 -05:00
Cyril Soler
dc9fadd7c9 added missing subscription change notify in rsgenexchange when creating a new group 2016-02-02 09:46:16 -05:00
csoler
6ecd2991e7 merged with latest trunk 2016-01-01 15:15:19 -05:00
csoler
5d9272055f merged with upstream/master 2015-12-22 18:33:01 -05:00
csoler
e8b881b2f1 added rejection list to gxsnetservice that is fed by calls from GenExchange system, to avoid infinitely re-downloading rejected messages due to bad reputation, bad signatures, missing ids, etc 2015-12-17 23:08:02 -05:00
csoler
55e66d090c fixed mismatch between API versions causing signed groups created with old API to fail author signature checking 2015-12-17 00:08:08 -05:00
csoler
92780b7688 added auto-request of missing GXS ids for group posts authors and group authors 2015-12-15 18:01:03 -05:00
csoler
8d886b8ecc added regular timestamp-ing of GXS ids of group authors and group post authors for all subscribed groups 2015-12-15 12:31:03 -05:00
csoler
3f132f2c33 added missing timestamp at message creation time and group creation time 2015-12-14 21:13:44 -05:00
csoler
0c1e6301b3 merged with latest upstream trunk 2015-12-05 16:49:00 -05:00
csoler
1bc2892753 removed some debug info 2015-10-30 21:11:44 -04:00
csoler
b04ce5ef1c removed debug info 2015-10-27 22:47:02 -04:00
csoler
79c80c968a fixed a few bugs in display of tracking info 2015-10-27 22:41:29 -04:00
csoler
2096cd6c52 added backward compatibility and API extension for RsGxsGrpMetaData 2015-10-27 20:15:50 -04:00
csoler
d69f2709c3 restored constants and output to non debugging state 2015-10-27 00:02:16 -04:00
csoler
c7d0e4cb35 enabled ID tracking forums. Fixed thresholds for anti-spam forums. Changed computation of reputation scored 2015-10-26 23:38:10 -04:00
csoler
b009c1135f changed RsGenExchange strategy to use a threshold on reputation when validating posts 2015-10-25 23:45:33 -04:00
csoler
f24bddf6f1 merged with upstream head 2015-10-25 20:42:41 -04:00
csoler
207e84d719 added new flag for msg tracking 2015-10-25 18:27:15 -04:00
csoler
47dd70fbe8 added non selective tracking for GXS messages 2015-10-25 17:26:34 -04:00
electron128
afa3f53b14 fix #150 cannot create pgp signed gxs identity: give users infinite time to type in their password 2015-10-25 14:50:28 +01:00
csoler
7db3bb1c9b disabled debug info in GenExchange 2015-10-24 12:55:49 -04:00
csoler
e0db78f71a reject messages signed by non PGP-signed IDs from non anonymous forums 2015-10-24 10:41:31 -04:00
csoler
febd348d24 added GUI support for non anon forums. Changed serialisation of GxsGroupMetaData so that mSignFlags is serialised in place of mAuthenFlag, which is not used anyway 2015-10-24 00:22:55 -04:00
csoler
a6851b63dc renamed old flags into indices in rsgenexchange.cc. Fixed up duplicate constants between GxsGroupDialog and rsgxsflags.h 2015-10-23 22:53:00 -04:00
csoler
e8c93a5639 started with new crypto methods for multiple peers 2015-09-23 18:40:55 -04:00
thunder2
ebd5da5e83 Optimizations in RsGenExchange, p3GxsForums and p3GxsChannels.
- Removed not used variables
- avoid copy constructors
- Use swap instead of operator= to move elements of std containers
2015-09-09 09:46:46 +02:00
csoler
a1ce7f2d6f updated branch to upstream/master 2015-09-06 17:37:13 -04:00
csoler
697b7be5d1 fixed compilation of circles 2015-09-06 17:34:43 -04:00
thunder2
d118a13d5a Fixed adding of empty group id to notify when removing a group. 2015-08-27 22:23:04 +02:00
thunder2
4cc1df3c12 Ignore updates of not existing groups in RsGenExchange::processGrpMask.
Solves:
"Error code: no such column: subscribeFlagGXS_MASK_HACK"
2015-08-27 22:23:03 +02:00
csoler
58c70ca93c moved [not] operator inside parenthesis. Does not change anything except improving readability 2015-08-21 20:46:34 -04:00
csoler
49534d9efd commented out some debug info
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@8501 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2015-06-16 19:11:07 +00:00
thunder2
d5b2f7dd02 Fixed memory leak in RsGenExchange::publishGrps.
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@8458 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2015-06-14 23:14:13 +00:00
thunder2
8cc2c921ed Fixed memory leak in RsGenExchange::publishMsgs.
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@8457 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2015-06-14 23:04:54 +00:00
csoler
3f9180b999 fixed use of wrong variable in GxsGenExchange
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@8440 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2015-06-14 15:08:04 +00:00
csoler
f360e9d0ba fixed password handling in deferred signature algorithm (in case of cancel, enter wrong passphrase, etc)
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@8423 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2015-06-12 21:04:11 +00:00
csoler
20a2d42038 almost done with load/save of BanLists. Changed the item format to include masked_bytes, and changed subitem types. Also disabled code from rsgxsreputationitems.cc wich was a copy of the code from rsbanlistitems.cc
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@8316 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2015-05-29 20:49:37 +00:00
csoler
e9b9dce9f5 created 2 subclasses of RsThread, one for ticking services, and one for single shot jobs. Now all threads use the same base code.
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@8288 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2015-05-22 20:54:38 +00:00
thunder2
69c1df7e2d - Removed randomly forced updating of GUI in RsGxsUpdateBroadcastBase
- Added group changed notify when visible count or suppliers count of a group has changed
- Fixed suppliers count

git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@8277 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2015-05-19 21:40:19 +00:00
csoler
13ff39429e * Renamed RS_TLVKEY_DISTRIB_PRIVATE into *_PUBLISH, as it is used as such.
* Allow to check signatures and validate groups using private keys in GxsSecurity
* removed inconsistency in key flags when full keys where mixed up with publish keys.

This should fix the following bugs:
* channel owners did not receive posts from other peers who have publish rights
* channels sometimes not gettign through



git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@8275 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2015-05-19 21:28:46 +00:00
csoler
c9d5c7b3cb turned some std::list<PeerId> into std::set, as it automatically prevents duplicates
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@8138 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2015-04-17 21:36:22 +00:00
electron128
6dff335515 use notify for gxs events. Removed the previous polling based system. Now multiple clients can receive gxs changes. This also fixes the always growing changes queue in rs-nogui.
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@8057 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2015-03-20 10:39:17 +00:00
electron128
2335290a56 added check for empty author id in gxs group creation
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@8050 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2015-03-19 08:43:40 +00:00
csoler
9ed57f9daa added missing stamping of key and missing include
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@8016 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2015-03-14 14:59:14 +00:00
csoler
48ea291d95 moved signature validation and encryption one level up into p3IdService. Added timestamp for GXS identities and auto-removal after 7 days. Updated display in IdDialog
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@8015 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2015-03-14 14:33:23 +00:00
thunder2
b26c55126c Fixed missing notify of changed message ids to the gui.
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@8011 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2015-03-11 13:39:58 +00:00
thunder2
f6a1cbb3b2 Reduced locking time of mutex in RsGenExchange::processMsgMetaChanges and RsGenExchange::processGrpMetaChanges.
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@8005 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2015-03-08 23:12:57 +00:00
thunder2
8351510841 Receiving a shared key:
- Added notify of the group id and the refresh of the gui
- Added system message (create of message disabled)
- Added possibility to show a news feed item

git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@7926 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2015-02-08 01:01:48 +00:00
thunder2
a7e0fd8345 Fixed double feed publication
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@7920 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2015-02-07 01:04:51 +00:00
csoler
8a8f9fc528 added number of posts at friends to saveList/loadList. Improves visibility of number of posts
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@7896 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2015-01-31 18:06:37 +00:00
thunder2
e04ee3f446 Fixed crash in RsGenExchange::subscribeToGroup (request from Cyril)
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@7884 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2015-01-29 14:21:18 +00:00
csoler
c455623738 - added more debug info to gxs net service so as to see what's going on
- force-updating timestamp of unsubscribed groups to avoid re-asking them indefinitly
This should remove the heavy GXS traffic. 



git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@7883 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2015-01-28 22:48:59 +00:00
thunder2
2b0bdc73bb Fixed reading memory after it was deleted. The error was the reason for the ghost feed items.
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@7849 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2015-01-15 21:49:33 +00:00
csoler
93f77a0e2c improved network statistics for GXS net service. Added number of available messages for unsubscribed forums in GUI. Should be done as well for channels.
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@7760 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2014-12-16 06:54:15 +00:00
csoler
ab038bf69e fixed inconsistency using getKey() and getPrivateKey() supposing it returns a boolean. It should return a boolean anyway.
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@7709 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2014-11-25 20:31:18 +00:00
csoler
db4b87cd01 Mutex debugging: added a new macro RS_STACK_MUTEX(myMutex) to trigger a scope guard while recording file location and line number. Moved the timings from RsMutex to RsStackMutex. Changed the mutexes in rsgenexchange and rsgxsntservice to use the new macro.
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@7672 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2014-11-11 19:47:05 +00:00
csoler
b25f6f30ef fixed memory leak
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@7671 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2014-11-11 17:10:16 +00:00
csoler
d547cb6fdb changed post fixed operator++ into prefixed. More efficient on some systems. Patch from Phenom.
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@7630 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2014-10-24 22:07:26 +00:00
csoler
880efee332 removed ifdef for the different sleep methods. Now only usleep is used, on all systems. Patch from Phenom
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@7629 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2014-10-24 21:31:58 +00:00
csoler
c17de671bb added feedback from rsgenexchange into Global router to add routing information
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@7628 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2014-10-22 21:00:20 +00:00
thunder2
d3682337f0 Set new messages to unread
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@7599 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2014-10-12 17:11:37 +00:00
thunder2
1bfa4df911 Fixed missuse of message flag UNPROCESSED as indicator for a NEW message
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@7598 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2014-10-12 15:53:23 +00:00
csoler
8c2ba8b980 added a structure in GxsNetService to record who sends info about groups, so as to dynamically compute group popularity. The GUI needs to be improved to update regularly so as to reflect current values for popularity. For now only subscribing/unsubscribing and new messages trigger the update
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@7587 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2014-10-07 21:42:44 +00:00
csoler
d0469ccfc3 implemented publish key sharing between peers for channels.
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@7582 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2014-10-05 19:14:05 +00:00
thunder2
e6eb0e22ff RsGxsIntegrityCheck
- Fixed message hash checking
- Added check for existing but not loadable messages
- Notify the gui when messages are deleted

git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@7568 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2014-09-28 12:11:29 +00:00
csoler
38c7e50e06 fixed bug causing forum posts to disappear/re-appear and to be set unread again. The bug was due to inconsistency between cleaning old messages and still inserting old messages again. Also augmented the storage period to 4 months (previously 1 month). Challenge: we should keep threads until the newest post in the thread is older than 4 months
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@7554 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2014-09-22 18:50:45 +00:00
csoler
b1dc8912c7 added additional debug info in rsgenexchange
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@7549 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2014-09-20 19:58:07 +00:00
csoler
789e6ae24e removed some debug info
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@7542 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2014-09-16 19:53:23 +00:00
chrisparker126
5399618cef completed addition of get statistic feature of gxs
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@7461 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2014-07-20 11:21:06 +00:00
thunder2
60a67846b0 Added notify of meta changes to RsGenExchange
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@7428 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2014-07-04 21:51:17 +00:00
csoler
80f4401e88 - implemented DH protocol for PFS encryption in distant chat between GXS ids.
- changed format of keyId in rstlvkeys.{h,cc}, but kept the serialisation for backward compatibility (A #define needs to be removed to fix it for good). Updated rsrecogn, rsmsgitems, gxssecurity accordingly
- added "chat peer" in IdDialog to help testing distant chat.

Distant chat works and is now encrypted. The GUI still needs some smoothing: display of correct peer names
in chat window, remove the need to add a message in p3chatservice.cc:3217 to force poping up the chat window.

- added MsgAddress class to handle generic address types while keeping type separation in Messages. Not used yet.



git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@7403 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2014-06-12 10:28:23 +00:00
chrisparker126
751930cd2d Fix meta update in gen exchange (for meta service string updates)
- was assuming all meta changes were related to bit sets
- was returning fail, when successful

git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@7397 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2014-06-03 21:49:41 +00:00
csoler
ec031ba940 moved all the code using explicit EVP_KEY and RSA structures into gxssecurity (except rsrecon, still need to do)
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@7371 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2014-05-17 13:50:40 +00:00
defnax
a9dcd24ba7 Added Phenom's patch AddGxsIdDeleting_v0.6_7328.patch
Changed some context menu icons for GxsGroupFrameDialog

git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@7337 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2014-05-06 17:15:20 +00:00