Commit Graph

961 Commits

Author SHA1 Message Date
Gioacchino Mazzurco
b1285a5de7
Gossip discovery refinement
Rename from RsDisc to more descriptive RsGossipDiscovery
Keep full retrocompatibility suggesting usage of RsGossipDiscovery
Add capability to send and receive full RetroShare invitation
Emit event when receiving a full invitation
Start using new debug utilities
Use enum class instead of defines and constant where appropriate
2019-05-03 16:54:16 +02:00
Gioacchino Mazzurco
4e1280839a
RsEvents refinement
Fix a couple of warning
Prepare events types for short invites
2019-05-03 16:51:35 +02:00
Gioacchino Mazzurco
e118b4dbf8
Fix typo in PGP fingerprint type 2019-05-03 16:17:11 +02:00
Gioacchino Mazzurco
7642216912
Safer rsids API
Deprecate unsafe costructor, substituted by fromBufferUnsafe which explicitely
  marked suggest the caller to pay attention.
Use enum class for id types instead of constants
Make size constants more private
Use internal Id_t alias to avoid huge template lines
Remove and deprecate oguly names in favor of consistent names
2019-05-02 09:55:53 +02:00
G10h4ck
9a7ce1ae72
Merge pull request #1520 from G10h4ck/broadcast_discovery
Broadcast Domain friends IP:Port Discovery
2019-04-23 17:18:54 +02:00
csoler
bc8adb74c4
Merge pull request #1502 from defnax/added-group-icons-for-posted-links
Added group icons for posted links
2019-04-18 21:56:07 +02:00
Gioacchino Mazzurco
cc973d1ea5
Add a bit of documentation about broadcast discovery event 2019-04-16 17:21:37 +02:00
Gioacchino Mazzurco
fcb2875312
Fix a couple of clang warnings 2019-04-16 17:21:37 +02:00
Gioacchino Mazzurco
9aa116b885
Enforce RsEvent not being instantiable without inheriting 2019-04-15 11:17:26 +02:00
Gioacchino Mazzurco
5554f799c0
Add some info about shared_ptr to weak_ptr future refactor 2019-04-15 10:37:21 +02:00
Gioacchino Mazzurco
7dab487bde
Implement a JSON API friendly notification system
This should bit by bit substitute RsNotify which would be very difficult
  to support properly in JSON API.
The new system is much simpler to use also from the C++ side of the
  moon.
BroadcastDiscovery take advantage of the new system to notify about new
  non friend peer discovered, tested successfully also in JSON API.
2019-04-15 00:31:49 +02:00
csoler
0bcbe14b2c
fixed wrong display of trash messages in inbox 2019-04-14 16:25:26 +02:00
Gioacchino Mazzurco
e7a2cb5501
Fix licensing in broadcast discovery and JSON API 2019-04-14 12:34:01 +02:00
Gioacchino Mazzurco
b25c4ecb77
Fix channels JSON API 2019-04-12 23:10:31 +02:00
Gioacchino Mazzurco
4d703b9df9
Increase waitToken interval for channel creation
Creating GXS groups imply a bunch of crypto operations that require lot
  of time expecially on embedded device, channel creation was reported
  as failed while it was still pending.
Reduce too long lines.
Print API error messages also on std::cerr.
2019-04-12 22:14:16 +02:00
Gioacchino Mazzurco
7b38c1c75a
Initial work on Broadcast Domain Discovery
Discover peers on the same broadcast domain/LAN
Implements own node announcement
Implements others announcement listening
Implements API to get notifiend when other nodes get discovered
Implements API to get discovered nodes
Add discovered peer locator to rsPeers if it is already friend

Yet a bunch of things to do to take full advantage of this new
implementation
2019-04-12 02:53:39 +02:00
csoler
4c8851801f
fixed merging with pending modifications 2019-04-11 21:04:13 +02:00
G10h4ck
276328dd91
Merge pull request #1512 from G10h4ck/csoler-jsonapi-channel
Improve GxsChannels API
2019-04-11 10:13:52 +02:00
Gioacchino Mazzurco
9ad79f0c89
Improve documentation 2019-04-10 21:10:21 +02:00
csoler
43a5312194
Merge pull request #1509 from RetroPooh/trafcount
display session traffic
2019-04-10 21:04:53 +02:00
Pooh
617b924e1f
Update rsconfig.h 2019-04-05 10:48:00 +03:00
Gioacchino Mazzurco
ab80d9a374
Fix compilation, retrocompatibility and enums
Workaround miss-behaviour on old Android phones
Cleanup indentation a bit
Consistent param naming
Introduce default parameter values also for output paramethers
2019-04-05 01:43:23 +02:00
csoler
44c1f1580f
added other clean API entries for channel: createComment(), createVote() and createPost() 2019-03-31 22:11:09 +02:00
csoler
e0af46eb85
added new method to create a channel with more explicit parameters and JSon API for it 2019-03-30 22:53:14 +01:00
csoler
d2c15c2d9e
fixed merge upstream/master 2019-03-24 20:59:23 +01:00
G10h4ck
f4e13975b0
Merge pull request #1478 from G10h4ck/jsonapi
extend JSON API to identities, circles and reputation
2019-03-23 09:11:05 -03:00
defnax
b6c7afe989 Added for posted links group icons 2019-03-22 11:13:07 +01:00
csoler
07abdeeceb
fixed bug causing distant chat preference contacts/nobody/everybody to be ignored 2019-03-20 22:34:48 +01:00
defnax
2233af4702
Merge branch 'Attach-picture-for-Posted-links' into master 2019-03-20 11:01:21 +01:00
csoler
b5b2c430c5
fixed QuickView filtering system 2019-03-12 14:17:42 +01:00
csoler
16cae622e3
fixed icons in attachment and read columns 2019-02-26 10:46:32 +01:00
Gioacchino Mazzurco
a6e8a27fc0
Add RsReputations JSON API 2019-02-16 11:41:31 -03:00
Gioacchino Mazzurco
ea7773f86d
Refactor RsReputations for compatibility with JSON API 2019-02-15 15:29:36 -03:00
Gioacchino Mazzurco
598521d1ac
Implement JSON API for circles 2019-02-14 18:52:35 -03:00
Phenom
8806840989 Fix Warnings for 'RsGxsChannels::createComment' and
'RsGxsChannels::createVote' hides overloaded virtual function

In file included from temp/moc/moc_GxsChannelGroupItem.cpp:9:
In file included from temp/moc/../../../../../trunk/retroshare-gui/src/
gui/feeds/GxsChannelGroupItem.h:24:
../../../trunk/libretroshare/src/retroshare/rsgxschannels.h:116:15:
warning: 'RsGxsChannels::createComment' hides overloaded virtual
function [-Woverloaded-virtual]
        virtual bool createComment(RsGxsComment& comment) = 0;
                     ^
../../../trunk/libretroshare/src/retroshare/rsgxscommon.h:172:15: note:
hidden overloaded virtual function 'RsGxsCommentService::createComment'
declared here: different number of parameters (2 vs 1)
        virtual bool createComment(uint32_t &token, RsGxsComment
&comment) = 0;
                     ^
In file included from temp/moc/moc_GxsChannelGroupItem.cpp:9:
In file included from temp/moc/../../../../../trunk/retroshare-gui/src/
gui/feeds/GxsChannelGroupItem.h:24:
../../../trunk/libretroshare/src/retroshare/rsgxschannels.h:132:15:
warning: 'RsGxsChannels::createVote' hides overloaded virtual function
[-Woverloaded-virtual]
        virtual bool createVote(RsGxsVote& vote) = 0;
                     ^
../../../trunk/libretroshare/src/retroshare/rsgxscommon.h:173:15: note:
hidden overloaded virtual function 'RsGxsCommentService::createVote'
declared here: different number of parameters (2 vs 1)
        virtual bool createVote(uint32_t &token, RsGxsVote &vote) = 0;
                     ^
In file included from temp/moc/moc_GxsChannelPostItem.cpp:9:
In file included from temp/moc/../../../../../trunk/retroshare-gui/src/
gui/feeds/GxsChannelPostItem.h:26:
../../../trunk/libretroshare/src/retroshare/rsgxschannels.h:116:15:
warning: 'RsGxsChannels::createComment' hides overloaded virtual
function [-Woverloaded-virtual]
        virtual bool createComment(RsGxsComment& comment) = 0;
                     ^
../../../trunk/libretroshare/src/retroshare/rsgxscommon.h:172:15: note:
hidden overloaded virtual function 'RsGxsCommentService::createComment'
declared here: different number of parameters (2 vs 1)
        virtual bool createComment(uint32_t &token, RsGxsComment
&comment) = 0;
                     ^
In file included from temp/moc/moc_GxsChannelPostItem.cpp:9:
In file included from temp/moc/../../../../../trunk/retroshare-gui/src/
gui/feeds/GxsChannelPostItem.h:26:
../../../trunk/libretroshare/src/retroshare/rsgxschannels.h:132:15:
warning: 'RsGxsChannels::createVote' hides overloaded virtual function
[-Woverloaded-virtual]
        virtual bool createVote(RsGxsVote& vote) = 0;
                     ^
../../../trunk/libretroshare/src/retroshare/rsgxscommon.h:173:15: note:
hidden overloaded virtual function 'RsGxsCommentService::createVote'
declared here: different number of parameters (2 vs 1)
        virtual bool createVote(uint32_t &token, RsGxsVote &vote) = 0;
                     ^
2019-02-14 21:58:33 +01:00
Gioacchino Mazzurco
6633e8bb28
Expose RsIdentity JSON API 2019-02-13 17:08:38 -03:00
Gioacchino Mazzurco
ac1d24dba4
Remove misleading comment from channels public API 2019-02-13 17:07:59 -03:00
csoler
4fce5d61cc
added basic model file for Mail message tree 2019-02-03 19:39:19 +01:00
defnax
7cf17569c5 Added attach picture for posted links 2019-01-30 14:33:50 +01:00
csoler
7c4e8580a4
fixed merge with upstream/master 2019-01-27 20:04:44 +01:00
csoler
ad45a7781c
removed test for unsigned long in serialization, and added back pragma to avoid strict aliasing error in rstypes.h 2019-01-25 14:23:08 +01:00
csoler
3836ed836b
fixed template problem in memory handle serialization 2019-01-25 10:26:34 +01:00
csoler
64b584cccc
fixed template problem in memory handle serialization 2019-01-25 10:11:09 +01:00
csoler
9017db4797
added identity creation time in IdDetails 2019-01-19 15:54:07 +01:00
csoler
e92c43f1f7
added missing return comment in rsfiles 2019-01-11 22:14:07 +01:00
csoler
ba57ddfef9
added JSon api for file control 2019-01-06 20:56:57 +01:00
Gioacchino Mazzurco
18c5ab8913
add /rspeers/setVisState JSON API 2018-12-28 13:26:26 +01:00
csoler
bcea548d83
Merge pull request #1440 from csoler/v0.6-Identity
added button (enabled by default) to automatically add IDs signed by …
2018-12-25 20:35:21 +01:00
csoler
e09b416674
automatically add moderator rights to the owner of a forum 2018-12-24 11:47:33 +01:00
csoler
3770810238
added button (enabled by default) to automatically add IDs signed by friends as contacts 2018-12-24 10:13:27 +01:00
Gioacchino Mazzurco
e80abde78a
Remove some old versioning system cruft remnants 2018-12-18 21:25:46 +01:00
Gioacchino Mazzurco
d19531cfcc
Fix compilation of forum API 2018-12-16 17:40:47 +01:00
csoler
9ce573c3f5
Merge pull request #1415 from csoler/v0.6.5-ForumModel2
V0.6.5 forum model2
2018-12-16 14:34:14 +01:00
csoler
60112e8387
added two missing virtual desctructors in GXS interface structures 2018-12-14 22:14:59 +01:00
Gioacchino Mazzurco
7113eb7bfc
GxsChannels optimizable API 2018-12-12 21:35:31 +01:00
csoler
a114856b77
changed code to create msg data map using MsgMeta instead of full Msg and added the handles to request MsgMeta data in forums 2018-12-12 11:33:38 +01:00
Gioacchino Mazzurco
db0a22a226
JSON API for /rsFiles/FileClearCompleted 2018-12-06 20:46:44 +01:00
csoler
66ad7b650b
added missing virtual destructor in RsGrpMetaData and RsMsgMetaData 2018-11-29 18:33:25 +01:00
csoler
20b8bca801
worked on display of posts and selection in new forum model 2018-11-22 22:07:58 +01:00
Gioacchino Mazzurco
81d23fa607
JSON API to collect extra entropy 2018-11-22 21:56:55 +01:00
Gioacchino Mazzurco
abec811d31
Forum API add missing subscribe method 2018-11-22 16:41:19 +01:00
csoler
a802e494f8
Merge pull request #1401 from G10h4ck/forum_api
0.6.5 Safer forum API
2018-11-20 21:45:45 +01:00
csoler
8c8ce53e4b
Merge pull request #1385 from G10h4ck/safer_api
0.6.5 Safer rsGxsChannel API
2018-11-20 21:44:40 +01:00
Gioacchino Mazzurco
2b58e3f461
RsGxsChannels local search support 2018-11-17 17:19:13 +01:00
Gioacchino Mazzurco
e311b28870
Complete channel API with comment and vote creation 2018-11-16 17:50:34 +01:00
Gioacchino Mazzurco
ba58eba34e
Complete API for forums
Add new blocking methods
Deprecate old unsafe methods
2018-11-16 17:03:25 +01:00
csoler
630609c11c
fixed retroshare.project email in licenses 2018-11-11 20:42:48 +01:00
csoler
9c3d5acd8e
fixed license in libretroshare 2018-11-11 14:24:48 +01:00
csoler
602bc36eec
fixed missing licenses in libretroshare 2018-11-11 14:24:47 +01:00
csoler
98bf2922cb
removed old/unused files 2018-11-11 14:24:47 +01:00
Gioacchino Mazzurco
8b8ad3bce5
Forum API for creation and posting
Deprecate old functions that expose internal functioning
2018-11-10 16:30:35 +01:00
Gioacchino Mazzurco
1d110600fc
Minor cleanups in GxsChannels 2018-11-10 16:29:39 +01:00
Gioacchino Mazzurco
e449ffba04
Better include in RsGxsChannels 2018-11-09 23:46:21 +01:00
Gioacchino Mazzurco
ea86fe2615
Safer RsGxsChannel API
Deprecated old method which exposed interna async mechanism to the API
  users, making their and out life difficult
Things that really need to be async like turtle search/requests now accept
  callbacks, so the caller can be notified everytime some result is got
  back
Implement RsThread::async commodity wrapper to execute blocking API
  calls without blocking the caller, this could be optimized
  trasparently using a thread pool if necessary
Added hints into some retroshare-gui files on how to use RsThread::async
  thoghether with QMetaObject::invokeMethod and blocking RetroShare API
  to simplyfy interaction between GUI and libretroshare
2018-11-09 12:41:08 +01:00
Gioacchino Mazzurco
8fd22c8fd1
Safer rsGxsChannel API
Protect data members with mutexes
Print messages when errors happens
2018-11-09 12:41:08 +01:00
Gioacchino Mazzurco
eca4f8adf7
JSON API to check if PGP id is friend 2018-11-01 23:26:42 +01:00
csoler
20391371c7
fixed bug causing some GXS sync tunnels to remain unused and prevent new tunnels to be created 2018-10-28 17:29:48 +01:00
Phenom
358f27be06 Fix warnings in MessagePage.cpp
/retroshare-gui/src/gui/settings/MessagePage.cpp:62:19: warning:
deleting object of polymorphic class type 'Rs::Msgs::MsgTagType' which
has non-virtual destructor might cause undefined behavior [-Wdelete-non-
virtual-dtor]
/retroshare-gui/src/gui/settings/MessagePage.cpp:62: warning: delete
called on non-final 'Rs::Msgs::MsgTagType' that has virtual functions
but non-virtual destructor
/retroshare-gui/src/gui/settings/MessagePage.cpp:86: warning: use of
old-style cast
/retroshare-gui/src/gui/settings/MessagePage.cpp:172: warning: zero as
null pointer constant
/retroshare-gui/src/gui/settings/MessagePage.cpp:176: warning: implicit
conversion changes signedness: 'int' to 'uint32_t' (aka 'unsigned int')
/retroshare-gui/src/gui/settings/MessagePage.cpp:203: warning: zero as
null pointer constant
/retroshare-gui/src/gui/settings/MessagePage.cpp:207: warning: implicit
conversion changes signedness: 'int' to 'uint32_t' (aka 'unsigned int')
/retroshare-gui/src/gui/settings/MessagePage.cpp:261: warning: implicit
conversion changes signedness: 'int' to 'uint32_t' (aka 'unsigned int')

/libretroshare/src/retroshare/rsmsgs.h:168: warning:
'Rs::Msgs::MessageInfo' has virtual functions but non-virtual destructor
/libretroshare/src/retroshare/rsmsgs.h:168: warning: 'MessageInfo' has
no out-of-line virtual method definitions; its vtable will be emitted in
every translation unit
/libretroshare/src/retroshare/rsmsgs.h:234: warning:
'Rs::Msgs::MsgInfoSummary' has virtual functions but non-virtual
destructor
/libretroshare/src/retroshare/rsmsgs.h:234: warning: 'MsgInfoSummary'
has no out-of-line virtual method definitions; its vtable will be
emitted in every translation unit
/libretroshare/src/retroshare/rsmsgs.h:261: warning:
'Rs::Msgs::MsgTagInfo' has virtual functions but non-virtual destructor
/libretroshare/src/retroshare/rsmsgs.h:328: warning: 'ChatId' has
virtual functions but non-virtual destructor
/libretroshare/src/retroshare/rsmsgs.h:400: warning: 'ChatLobbyInvite'
has virtual functions but non-virtual destructor
/libretroshare/src/retroshare/rsmsgs.h:420: warning:
'VisibleChatLobbyRecord' has virtual functions but non-virtual
destructor
/libretroshare/src/retroshare/rsmsgs.h:420: warning:
'VisibleChatLobbyRecord' has no out-of-line virtual method definitions;
its vtable will be emitted in every translation unit
/libretroshare/src/retroshare/rsmsgs.h:449: warning: 'ChatLobbyInfo' has
virtual functions but non-virtual destructor
/libretroshare/src/retroshare/rsmsgs.h:486: warning: 'RsMsgs' has no
out-of-line virtual method definitions; its vtable will be emitted in
every translation unit

About vtable:
https://stackoverflow.com/questions/23746941/what-is-the-meaning-of-
clangs-wweak-vtables
https://stackoverflow.com/questions/50463374/avoid-weak-vtable-warnings-
for-classes-only-defined-in-a-source-file
2018-10-23 17:43:01 +02:00
Gioacchino Mazzurco
e746b5b4a0
JSON API unauthenticated access to /rsAccounts/getCurrentAccountId 2018-10-22 00:24:02 +02:00
Gioacchino Mazzurco
6543d713e4
JSON API import/export PGP key to file 2018-10-21 17:12:13 +02:00
Gioacchino Mazzurco
7a1375ff6f
rsPeers add few JSON API calls 2018-10-20 21:13:10 +02:00
Gioacchino Mazzurco
9e2c4ce49e
JSON API authorize token in createLocation
Solve uncoherent 401 behaviour at first use without login
2018-10-19 15:10:15 +02:00
Gioacchino Mazzurco
b3d73ba6a5
Suppress aliasing warning in DirDetails and DirStub
Order of serialization doesn't matter ATM as we use those only for
  JSON API.
Those classes should be rewritten anyway with proper naming of the
  memebers and using std::uintptr_t instead of void* and rstime_t for
  timestamps
2018-10-10 23:32:32 +02:00
G10h4ck
047ae7f723
Merge branch 'master' into jsonapi 2018-10-10 22:23:28 +02:00
csoler
18eee374f1
Merge pull request #1361 from sehraf/pr_jsonfy-rsMsg
[jsonapi] add most remaining functions of rsMsg
2018-10-10 22:04:32 +02:00
Gioacchino Mazzurco
321fc8a8d4
Implement mostly decent JSON API for channels and post creation
Now the possible id of the cannel/post is returned and channel/post is
indexed on creation without having to wait for gxsutil scan to happen

Note that the id is correct in normal usage, but if one try to overload
the API per eventually get the id of another channel/post with same data
but created by a different call, it is not dangerous so one trying to
overload the API is just getting a possibly wrong but equivalent
channel/post id returned.
2018-10-10 06:40:56 +02:00
Gioacchino Mazzurco
c05c376351
Expose /rsFiles/requestDirDetails via JSON API
This method is useful to browse own shared directries, or directries
shared by friends whith browseable permission
2018-10-09 22:58:17 +02:00
Gioacchino Mazzurco
7798e50123
Expose JSON API for ForceDirectoryCheck 2018-10-09 11:34:57 +02:00
Gioacchino Mazzurco
406822b5ec
Expose JSON API for file filtering 2018-10-09 11:34:56 +02:00
Gioacchino Mazzurco
329050a9c2
Use safer rstime_t instead of time_t
Avoid problems to serialization on different platforms, without breaking
nested STL containers serialization.

The conversion have been made with sed, and checked with grep, plus
kdiff3 visual ispection, plus rutime tests, so it should be fine.
2018-10-07 13:07:06 +02:00
Gioacchino Mazzurco
1d8bb44811
Fix warnings 2018-10-05 01:55:18 +02:00
Gioacchino Mazzurco
321d2e84bd
gxschannel expose blocking create post and channels API 2018-10-04 23:36:01 +02:00
sehraf
6dabb81dc0
rsMsg: unify parameter name 2018-10-04 23:25:23 +02:00
sehraf
500eb7f518
jsonapi: add rsMsg tagging functions 2018-10-04 23:24:06 +02:00
sehraf
897c8e0a8a
jsonapi: more rsMsg functions 2018-10-04 22:43:13 +02:00
sehraf
150af40e09
jsonapi: convert and add getMessageCount 2018-10-04 22:43:12 +02:00
sehraf
285158db5f
jsonapi: access messages (mail) 2018-10-04 22:43:12 +02:00
Gioacchino Mazzurco
7c986b926d
Remove overloaded GetRetroshareInvite method
now the original method has default paramether that return invite for
  own node, this way JSON API is more friendly
2018-10-04 19:14:16 +02:00
Gioacchino Mazzurco
7cc15c703c
Fix forward declarations class struct missmatch 2018-10-03 19:07:46 +02:00
csoler
81fc3b7921
select GxsIds as default list to chose msg destination from 2018-10-03 15:25:53 +02:00