Commit Graph

5792 Commits

Author SHA1 Message Date
csoler
9007d266a8
fixed start/stop of webinterface from GUI 2019-11-13 21:06:20 +01:00
csoler
d19d1685de
made JsonApiServer an singleton through static method instance() 2019-11-12 22:32:18 +01:00
Gioacchino Mazzurco
ca6071fa21
fixup! Improve RsUrl 2019-11-11 23:49:06 +01:00
csoler
3b45fc5199
added user-based token management to jsonApiServer 2019-11-11 22:48:35 +01:00
Gioacchino Mazzurco
056904c90b
Improve RsUrl
Fix a bug in RsUrl::fromString eating one character when parsing URL
  string with IPv6 host
Offer explicit conversion from sockaddr_storage
2019-11-11 11:17:13 +01:00
csoler
93376d3461
added (not yet working) password field 2019-11-10 22:39:21 +01:00
csoler
9dc78d66c1
fixed changing ports and restarting 2019-11-10 22:05:55 +01:00
csoler
3446f0b677
fixed a few bugs. First running version. 2019-11-10 21:29:26 +01:00
csoler
0103a741d6
updated default directory value 2019-11-10 17:56:04 +01:00
csoler
6603dbd913
code to embed webUI server in the main executable (initial version, not yet working) 2019-11-10 17:38:16 +01:00
Gioacchino Mazzurco
7697a57611
Backport rs_unique_cast from grouter_missing_key branch 2019-11-07 19:54:11 +01:00
Gioacchino Mazzurco
bee9dfc19e
Implement comfortable flags type based on scoped enums 2019-11-07 19:51:25 +01:00
Gioacchino Mazzurco
05260ace94
Backport as_const C++17 helper
This is expecially useful to use const_iterator without giving up on
  using auto keyword
2019-11-07 19:51:25 +01:00
Gioacchino Mazzurco
aabba04be9
Remove some cruft from p3peermgr 2019-11-07 19:47:23 +01:00
Gioacchino Mazzurco
a259307218
Deprecate GxsTransSubServices in favor of RsServiceType 2019-11-06 17:16:41 +01:00
csoler
36441c16dc
Merge pull request #1694 from csoler/v0.6-ImprovedGUI
added notification when distant chat has undelivered messages. Update…
2019-11-03 20:50:19 +01:00
Gioacchino Mazzurco
48879d1f40
Remove some cruft 2019-10-31 11:29:16 +01:00
Gioacchino Mazzurco
294b1e9100
Implement RsGxsForums link import/export 2019-10-29 12:10:33 +01:00
Gioacchino Mazzurco
c3fa2c6c1c
Implement rsIdentity link import/export 2019-10-29 12:10:33 +01:00
Gioacchino Mazzurco
d9a8c5c09f
Implement links for RsGxsChannels 2019-10-29 12:10:33 +01:00
Gioacchino Mazzurco
6a797cd073
Implement GXS Circle link based on GXS group base64 2019-10-29 09:30:52 +01:00
Gioacchino Mazzurco
6f3d842d30
Implement GXS group base64 public data export
Link to GXS group is a concept that is useful for almost all GXS based
  services, gen exchange now provides method to facilitate the
  implementation of group links at service layer.
Move waitToken in token service interface.
2019-10-29 09:30:51 +01:00
csoler
ea9f88a32f
added notification when distant chat has undelivered messages. Updated the text to remove technical terms such as tunnels 2019-10-26 22:57:13 +02:00
Gioacchino Mazzurco
63b71e383a
Add support for indexing files dupported by taglib
Add FLAC standalone indexer
Add indexing common music tags for all formats supported by taglib
File indexer reindex files that have been indexed by older versions of
  the indexer and reindex them
Sparse improvements to deep indexing
2019-10-26 15:57:39 +02:00
Gioacchino Mazzurco
3a26ccf6a5
Implement deep indexing for files through Xapian
ATM it support extracting metadata only from OGG files.
The system has been designed to be easly extensible to more file formats
  registering more indexer functions which just need to extract metadata
  from a certain type of file and feed it to Xapian.
The system has been integrated into existent file search system to
  through generric search requests and results, it keep a good level of
  retro-compatibility due to some tricks.
The indexing system is released under AGPLv3  so when libretroshare is compiled
  with deep search enabled AGPLv3 must be honored instead of LGPLv3-or-later.
Cleaned up the debian copyright file using non-deprecated license
  code-names.
2019-10-26 15:57:38 +02:00
Gioacchino Mazzurco
9a8248c1a2
Rename RS mail tracker id type according to Cyril suggestion 2019-10-26 15:21:21 +02:00
Gioacchino Mazzurco
e530616c53
Fix more warnings in message service 2019-10-26 14:50:16 +02:00
Gioacchino Mazzurco
45b623b2ce
Update copyright header + fix warning 2019-10-26 07:58:05 +02:00
Gioacchino Mazzurco
c9b5b8bbd4
isKnownId return true also for own identities 2019-10-26 01:22:51 +02:00
Gioacchino Mazzurco
ae0412c087
sendMail check if recipients are known 2019-10-26 01:22:51 +02:00
Gioacchino Mazzurco
d673ef3256
Fix compile warning in RsMsg 2019-10-26 01:22:51 +02:00
Gioacchino Mazzurco
bdad0036f5
sendMail check if from is own identity 2019-10-26 01:22:50 +02:00
Gioacchino Mazzurco
3401e8b49d
Add serialization for slice info 2019-10-26 01:22:50 +02:00
Gioacchino Mazzurco
828251cc18
Solve vtable warnings in gxschannels 2019-10-26 01:22:47 +02:00
Gioacchino Mazzurco
bc3596047a
Remove unused class in rsmsg 2019-10-26 00:07:56 +02:00
Gioacchino Mazzurco
f2c90ba3c6
RS mail post event when receiving a mail
+ delete some deadcode
2019-10-26 00:07:55 +02:00
Gioacchino Mazzurco
04d3325fbd
Provide usable API to send RS mails
Return trackid to sendmail caller
Post RsEvents when sent mail change status
Deprecate old MessageSend
2019-10-26 00:07:51 +02:00
G10h4ck
584918388c
Merge pull request #1691 from G10h4ck/fixup_brodcastdiscovery
Fix some bugs in broadcast discovery
2019-10-25 23:06:13 +02:00
G10h4ck
63861ba942
Merge pull request #1659 from G10h4ck/netmgr_calmer
Calm down p3netmgr at least when internet connection is not available
2019-10-25 18:42:45 +02:00
Gioacchino Mazzurco
7f2bfae104
Fix broadcast discovery in Android
On Android and potencially other mobile platforms, WiFi drivers are configured
  by default to discard any packet that is not directed to the unicast mac
  address of the interface, this way they could save some battery but breaks
  anything that is not unicast, such as broadcast discovery. To solve this
  problem On such platforms provide methods to handle low level multicast
  listening so we can receive advertisement from same broadcast domain nodes.
2019-10-25 18:08:50 +02:00
csoler
f78b591214 fixed compilation 2019-10-23 18:16:31 +00:00
csoler
578a514007
fixed bug causing option -p to not allow to change listenning port 2019-10-23 20:11:30 +02:00
Gioacchino Mazzurco
48267eb659
Fix fingerprint assignation in broadcastdiscovery
This bug was causing null fingerprint reported on peer discovered by
  broadcastdicovery effectively rendering it unfunctional
2019-10-18 23:09:16 +02:00
csoler
438966979b
Merge pull request #1674 from G10h4ck/pqissludp_fixup
Fix double free crash in ~pqissludp()
2019-10-15 08:39:49 +02:00
csoler
98c1a34ab9
Merge pull request #1683 from defnax/distant-chat-settings
added distant chat settings for store/load
2019-10-14 13:41:52 +02:00
csoler
52b675fb6d
Merge pull request #1680 from csoler/v0.6-DistantChat
enabled buffering for distant chat, so that msgs are sent when the tu…
2019-10-14 13:39:08 +02:00
defnax
cbfe49f0f3 added distant chat settings 2019-10-14 02:29:20 +02:00
csoler
b3156223af
fixed load/save of chat history for distant chat 2019-10-14 00:07:11 +02:00
csoler
09343e9179
enabled buffering for distant chat, so that msgs are sent when the tunnel is ok 2019-10-12 21:05:27 +02:00
Gioacchino Mazzurco
f86d20d4cd
Improve readibility of terrible if 2019-10-09 15:22:24 +02:00
Gioacchino Mazzurco
63b787a504
Fix double free crash in ~pqissludp()
Use POD type member intitialization for sockaddr_storage
Cleanup a bunch of clutter
2019-10-09 14:59:46 +02:00
Gioacchino Mazzurco
93bfbb6ede
Fix addSslOnlyFriend when adding with already known PGP
If the PGP key is available add as full friend.
Without this change when the PGP key of a non-friend is available
  the SSL-id is added in peer list but the PGP-id is not added as PGP
  friend, at same time skip_pgp_signature_validation is false, because
  we have the full PGP, so the connection attempt is refused, when it
  should be verified with PGP and accepted.
2019-10-09 02:06:55 +02:00
Gioacchino Mazzurco
1b071d106f
Fix p3GxsChannels::createCommentV2 2019-10-07 18:37:44 +02:00
Gioacchino Mazzurco
ab93d31d17
Remove some RsPeers related dead code 2019-10-06 23:20:18 +02:00
Gioacchino Mazzurco
563260d012
Merge branch 'master' of github.com:RetroShare/RetroShare 2019-10-06 23:05:11 +02:00
Gioacchino Mazzurco
89819dd945
Add JSON API to list PGP friends 2019-10-06 23:03:14 +02:00
csoler
c0e8aa1024
Merge pull request #1596 from hunbernd/feature/risechatlenght
Rise public chat message size
2019-10-06 22:16:09 +02:00
Gioacchino Mazzurco
db3aefcd0b
Improve error reporting in createChannelV2 2019-10-05 15:53:46 +02:00
Phenom
5c46a8fd4d Fix implicitly-declared operator= warnings
/libretroshare/src/gxs/rsgds.h:54: warning: implicitly-declared
'ContentValue& ContentValue::operator=(const ContentValue&)' is
deprecated [-Wdeprecated-copy]
   54 |     MsgLocMetaData(const MsgLocMetaData& meta){ msgId =
meta.msgId; val = meta.val;}

/libretroshare/src/gxs/rsgds.h:69: warning: implicitly-declared
'ContentValue& ContentValue::operator=(const ContentValue&)' is
deprecated [-Wdeprecated-copy]
   69 |     GrpLocMetaData(const GrpLocMetaData& meta){ grpId =
meta.grpId; val = meta.val;}

From 248 to 146 warnings.
2019-10-04 17:28:50 +02:00
csoler
b539ebe826
Merge pull request #1646 from G10h4ck/fixup_channels_api
Avoid crash when subscribeToChannel is fed with invalid channel id
2019-10-03 20:31:31 +02:00
csoler
423f20231c
Merge pull request #1661 from G10h4ck/short_invites_fixup
Fix setting port when adding from short invite with dyndns
2019-10-03 09:40:28 +02:00
Gioacchino Mazzurco
b77924b368
Fix setting port when adding from short invite with dyndns 2019-10-01 17:43:52 +02:00
G10h4ck
1732177669
Merge pull request #1645 from G10h4ck/short_invites_fixes
Allow friend information  update from short invite
2019-09-30 23:37:55 +02:00
csoler
f04b32eef8
Merge pull request #1650 from csoler/v0.6-ShortInvites
fixed error handling when you enter your own certificate in connect f…
2019-09-30 21:46:52 +02:00
Gioacchino Mazzurco
6b71c57a54
Calm down p3netmgr at least when internet connection is not available
Solve compiler warnings, delete tons of cruft and deadcode
2019-09-29 17:59:32 +02:00
csoler
e41b64d938
added checksum section to short certificate format 2019-09-29 17:37:52 +02:00
Gioacchino Mazzurco
6788ea041a
Avoid netReset() if no network address is available 2019-09-28 18:42:13 +02:00
Gioacchino Mazzurco
1e9adc1e23
Add some documentation and fix some compiler warnings 2019-09-28 14:34:07 +02:00
Gioacchino Mazzurco
4e3ac4a9f4
Make SSL-only friend criteria stricter 2019-09-28 14:15:12 +02:00
Gioacchino Mazzurco
c07f93992c
Merge branch 'master' of github.com:RetroShare/RetroShare 2019-09-28 13:57:28 +02:00
Gioacchino Mazzurco
a169250e1c
Add support to build with miniupnpc on Android
Necessary to workaroud issues:
  https://github.com/RetroShare/RetroShare/issues/1649
  https://github.com/mrjimenez/pupnp/issues/119
2019-09-28 13:54:16 +02:00
Gioacchino Mazzurco
5660c73175
Allow friend information update from short invite
Add comments explaining security of addSslOnlyFriend
2019-09-28 10:36:33 +02:00
Gioacchino Mazzurco
3b8f6997bb
Avoid crash when subscribeToChannel is fed with invaled channel id
Fix a couple compiler warning too
2019-09-28 00:12:56 +02:00
G10h4ck
1480e6d0b5
Merge pull request #1644 from G10h4ck/broadcast_discovery_fingerprint
Send PGP fingerprint in broadcast discovery
2019-09-27 23:48:37 +02:00
Gioacchino Mazzurco
86957c9843
Fail gracefully when requesting membership on an unknown circle 2019-09-27 16:57:07 +02:00
Gioacchino Mazzurco
ce3e2a2c9d
Fixup missing parametersin circle creation 2019-09-27 14:19:20 +02:00
Gioacchino Mazzurco
1705a930d4
getLocalAddresses should not need Qt for android >= 24 2019-09-25 22:15:07 +02:00
Gioacchino Mazzurco
a887d205e9
Relax RsEvent loop 2019-09-25 22:12:04 +02:00
Gioacchino Mazzurco
2aade543f3
Send PGP full fingerprint in broadcast discovery 2019-09-25 16:33:13 +02:00
csoler
24781a71f5
removed unused mOthersList from PeerMgr 2019-09-23 21:32:28 +02:00
csoler
282d2d324d
added missing notifications when adding friends 2019-09-22 20:42:49 +02:00
csoler
9b78447109
used RsInfo instead of std::cerr in authssl.cc 2019-09-22 17:36:08 +02:00
csoler
19ced52a02
fixed bug caused by wrong reading of disc flag 2019-09-22 17:05:22 +02:00
csoler
9c7edffc21
fixed bug caused by shadowing a variable 2019-09-22 16:34:01 +02:00
csoler
6919711f48
restricted check for matching PGP ids to short invites only, since otherwise the call to isGPGAccepted() will rule out wrong IDs anyway 2019-09-21 22:20:33 +02:00
csoler
ed864f9470
removed some debug info about PGP signature validation, and added the ability to accept fingerprint instead of ID in the handshake 2019-09-21 19:00:52 +02:00
csoler
4fabf3deb1
renamed skip_signature_validation into more appropriate skip_pgp_signature_validation 2019-09-19 21:14:57 +02:00
csoler
654d760d84
fixed comments from review of PR 2019-09-19 20:59:35 +02:00
csoler
18db1fb6bb
Merge pull request #1642 from csoler/v0.6-ImprovedGUI
V0.6 improved gui
2019-09-18 23:24:27 +02:00
csoler
af9b3647dd
fixed bug causing local port to randomly change at start 2019-09-18 23:02:15 +02:00
csoler
9bf86e0e66
suppressed two uninitialized memory reads 2019-09-18 22:36:56 +02:00
csoler
44d6cb7be2
finished documentation/review of discovery 2019-09-17 22:43:37 +02:00
csoler
32b4312725
improved security checks in authssl by verifying that the supplied PGP id is the one the peer has been registered with 2019-09-17 22:14:32 +02:00
csoler
8be49b2d65
Merge pull request #1639 from csoler/v0.6-ImprovedGUI
V0.6 improved gui
2019-09-17 18:50:37 +02:00
csoler
b4fe1d48e5
started documenting p3GossipDiscovery 2019-09-16 23:00:00 +02:00
csoler
1f058f9f22
fixed compilation 2019-09-15 16:49:30 +02:00
csoler
636d477aea
fixed bug causing JSon api server to start twice, and therefore stopping RS because the port was already listen to 2019-09-15 16:21:12 +02:00
Gioacchino Mazzurco
e411b7fb22
Clean some dust 2019-09-15 12:10:37 +02:00
Gioacchino Mazzurco
6862e642e8
Provide more usable method to create GXS circles
Fix some compiler warnings with out of definition default destructors
2019-09-14 20:58:04 +02:00
csoler
bea6769a4e
removed unused code from p3gossipdiscovery 2019-09-14 16:26:24 +02:00
csoler
a20ec1a885
fixed exchange of PGP keys in binary format and update of PGP signature flags on short invites when the key is received 2019-09-14 15:33:43 +02:00
Gioacchino Mazzurco
c2cb63b40c
RsIdentity update own ids cache on creation 2019-09-12 12:02:24 +02:00
csoler
bbf92bd5f3
fixed remanent bug due causing the deletion of rsEvent 2019-09-10 21:59:25 +02:00
Gioacchino Mazzurco
06840b86f5
Fix retroshare-service Android build
Cleanup retroshare-service and build options
2019-09-10 17:10:26 +02:00
csoler
3a58aa468f
add special profile item for not yet validated peer from short invite 2019-09-10 09:52:37 +02:00
csoler
4f4b3bfcdb
Merge pull request #1624 from csoler/v0.6-RetroshareService
V0.6 retroshare service
2019-09-09 10:33:18 +02:00
Gioacchino Mazzurco
6aa85ea292
Fix a couple of warning in JSON serializer 2019-09-09 09:08:00 +02:00
csoler
c8064e1ddc
fixed missing parameter in jsonapi declaration 2019-09-08 20:50:06 +02:00
csoler
dd90314c3d
fixed missing type conversion 2019-09-08 20:49:38 +02:00
csoler
6419b03a2a
merged upstream/master 2019-09-08 20:35:23 +02:00
csoler
5b5ad6e6f6
added missing iostream for windows 2019-09-07 13:40:45 +02:00
csoler
2e5821bf59
fixed compilation without RS_JSONAPI 2019-09-06 23:50:39 +02:00
csoler
ad443ecaa4
fixed compilation without RS_JSONAPI 2019-09-06 23:40:04 +02:00
csoler
ccd8c7186d
fixed compilation without RS_JSONAPI 2019-09-06 23:28:04 +02:00
csoler
4a085cf223
removed termios include causing windows compilation to fail 2019-09-06 23:15:21 +02:00
csoler
f182b358f4
fixed compilation in new getpass method 2019-09-06 22:51:10 +02:00
csoler
c365a96489
moved getpass() method into a cross-plateform file rskbdinput.h/cc 2019-09-05 23:54:48 +02:00
csoler
bd0e4d7fba
fixed initialization of RsConfigOptions 2019-09-05 23:07:07 +02:00
G10h4ck
06a158e677
Merge pull request #1628 from G10h4ck/gxs_sqlite_sqlcipher_compat
Improve SQLCipher/SQLite support
2019-09-02 16:28:26 +02:00
Gioacchino Mazzurco
6edf503ae0
Improve SQLCipher/SQLite support
When compiled with SQLCipher it is now capable of handling databases
  created by SQLite-only versions
Add support for SQLCipher on Android arm64
2019-08-31 16:22:24 +02:00
csoler
b4bfdf2e25
fixed shutdown callback issue in retroshare-service.cc 2019-08-30 22:09:47 +02:00
csoler
1bf07f72c4
added destructor in RsTickingThread calling for fullstop, which prevents the crash due to threads being killed when still running 2019-08-30 21:47:17 +02:00
csoler
7d9db1fc22
added destructor in RsTickingThread calling for fullstop, which prevents the crash due to threads being killed when still running 2019-08-30 21:44:05 +02:00
csoler
ab5da5ebf5
switched to RsLoginHelper for login attempt in rs-service. Moved commandline arguments to main executable using a new struct named RsConfigOptions 2019-08-29 23:15:46 +02:00
Gioacchino Mazzurco
9f04e1c9c2
Update udp-discovery-cpp and android openssl 2019-08-29 15:52:07 +02:00
G10h4ck
76dfa04bb5
Merge pull request #1621 from G10h4ck/jsonapi_async_crash_fix
Fix sporadic crash in JSON API async calls
2019-08-28 23:42:02 +02:00
Gioacchino Mazzurco
85ef0e0940
Protect p3BanList::isAddressAccepted with mutex
This method is called from other threads and apparently caused
  a sporadic crash caought on Android.
See retroshare://forum?name=Got%20crash%20on%20Android%20with%20GDB%20backtrace&id=95de1451952d8c38cb1cdfdb85eed986&msgid=ac8c9d41f2cd0c9e8e290433c7f296fecb2d62b3
2019-08-28 23:29:41 +02:00
csoler
90d0686e88
removed Qt from unix version of retroshare service. Enabled loging at start with option -u 2019-08-27 21:54:17 +02:00
Gioacchino Mazzurco
9b8d0afacb
Fix sporadic crash in JSON API async calls
In Restbed one is not supposed to call session->yield outside the
  threads controlled by Restbed. RetroShare JSON API async call were
  calling session->yield from threads controlled by RetroShare all the
  times, this caused crashes in some cases, like when the JSON API
  socket timed out concurrently with the session->yield call .
  To solve this problem session->yield from async
  calls are now wrapped insto mService->schedule to ensure they are
  executed on the right thread (aka one of the threads controlled by
  Restbed).
While solving this issue I realized also that passing RsEvents as const
  references around was quite limiting in cases where the event need to
  be finally handled in another thread, in that case passing by const
  reference the RsEvent needed to be copied by value into the thread
  that process it, in this copy by value process the information of
  which was the original specific type is lost, and then only the data
  and methods from general RsEvents are available, unless the handler
  does tricky stuff with type coercion etc. To solve this limitation
  pass the events as std::shared_ptr<const RsEvent> seems the safer and
  more elegant solution.
2019-08-27 11:59:38 +02:00
csoler
a84a96e0b7
Merge pull request #1617 from G10h4ck/jsonapi_javascript_sixtyfour_integers
Implement workaround to JavaScript 53bit int issue
2019-08-26 19:08:05 +02:00
csoler
c28c193b7c
Merge pull request #1615 from csoler/v0.6-FriendList
V0.6 friend list
2019-08-26 19:07:11 +02:00
Gioacchino Mazzurco
202cee687e
Implement workaround to JavaScript 53bit int issue
JavaScript represents all numbers in a double like manner thus it
  treats 64 bit integers in an unsafe manner, to workaroud this problem
  provide an alternative strin representation in JSON serialization
  format so JavaScript clients can access the correct value someway.
As JSON have no probles with 64 bits integers keep supporting the integer
  representation too.
See https://stackoverflow.com/a/34989371
2019-08-23 13:41:46 +02:00
Gioacchino Mazzurco
98b9152204
Fix a couple compliler warnings in JSON API 2019-08-23 12:02:25 +02:00
Gioacchino Mazzurco
3820e324b0
Implement stracktrace for Android
Tested both on armeabi and arm64
2019-08-23 11:49:26 +02:00
Gioacchino Mazzurco
5381f58707
Fix missing call to RsEvent serialization in RsGxsChanges 2019-08-22 18:44:32 +02:00
csoler
15e43dce01
proper handling of peer connections notifications 2019-08-21 22:39:07 +02:00
G10h4ck
5dc340d884
Merge pull request #1609 from G10h4ck/forum_jsonapi
Implement GXS forum reasonable JSON API
2019-08-21 13:28:01 +02:00
csoler
6a62227dba
cleanup up the code in FriendList, and fixed bug causing own locations not to show 2019-08-20 14:57:44 +02:00
Gioacchino Mazzurco
adacbeb586
Add missing jsonapi mark on rsidentity method 2019-08-20 12:45:40 +02:00
jpascualsana
c5a1b1beff
Replace deprecated class name 2019-08-11 18:43:36 -05:00
G10h4ck
420f5f3271
Merge pull request #1581 from G10h4ck/rsidentity_jsonapi
Improve rsidentity JSON API
2019-08-06 13:20:36 +02:00
Gioacchino Mazzurco
8cc87f6887
Fix licensing and some comments 2019-08-06 13:12:49 +02:00
G10h4ck
8828e47ec2
Merge pull request #1608 from G10h4ck/channels_comment_jsonapi
Expose channel comment editing capability in JSON API
2019-08-06 12:51:58 +02:00
G10h4ck
504dce15cd
Merge pull request #1610 from G10h4ck/extra_files_jsonapi
Expose JSON API for ExtraFiles management
2019-08-06 12:31:43 +02:00
G10h4ck
db24014070
Merge pull request #1603 from PhenomRetroShare/Fix_UPnP
Fix UPnP
2019-08-01 18:24:30 +02:00
Gioacchino Mazzurco
354739fa0f
Expose JSON API for ExtraFiles management 2019-08-01 15:35:55 +02:00
Gioacchino Mazzurco
eff133b564
Implement GXS forum reasonable JSON API
Remove misleading comments around, and add some TODO of things we should
  fix at some point
2019-08-01 11:37:37 +02:00
Gioacchino Mazzurco
ddde80ddff
Expose comment editing capability in JSON API 2019-07-30 18:56:55 +02:00
G10h4ck
3ffb57f998
Merge pull request #1580 from G10h4ck/gxs_trans_refinements
GxsTrans refinements
2019-07-30 12:45:24 +02:00
Gioacchino Mazzurco
c80b6db423
GxsTrans update outdated comments 2019-07-30 12:31:01 +02:00
Gioacchino Mazzurco
38a802e428
Implement API to create signed GXS identities 2019-07-29 10:49:05 +02:00
Gioacchino Mazzurco
6e88f6de1f
Remove unused macro definition from rsinit header 2019-07-29 10:46:41 +02:00
Gioacchino Mazzurco
08604774d3
Add rsidentity API call to request specific identity to the network 2019-07-29 10:46:38 +02:00
Gioacchino Mazzurco
cc8300a098
Workaround JSON API opacity of RsTlv*Set in RsGxsForumGroup
JSON API user would bet an unusable base64 blob due to RsTlv opaque JSON
  serialization, this way the content of the set is serialized plainly
  so it is usable through JSON API, without breaking binary
  serialization compatibility.

We must stop using those RsTlv derived items.
2019-07-25 14:14:42 +02:00
Phenom
f9d62c57c9 Fix UPnP
For version > 1.6.24 and < 1.8.0
Maybe version numbers to adjust.
2019-07-24 16:32:38 +02:00
Gioacchino Mazzurco
d9979ca183
Fix RsIdentity API to get own identities 2019-07-19 13:54:46 +02:00
hunbernd
9a884b7bf7 Rise max public chat message size to 31000 bytes
Rise color palette size from 16 to 256 colors

Note: Max chat item size is 32000 without splitting the message.
31000 = 32000 - some place left for other fields
2019-07-05 13:41:30 +02:00
jpascualsana
3110c08277
Add @brief and [out] missing parameter #1591 2019-07-02 13:26:20 -05:00
csoler
10eeb818c8
Merge pull request #1583 from csoler/v0.6-DistantChat
automaticall save/restore subscribed chat rooms. The advantage is tha…
2019-06-28 21:10:33 +02:00
csoler
ff1b2ebde4
fixed uninitialized memory read in calling rsservicehandler registerNewService system 2019-06-24 21:12:27 +02:00
csoler
9312d0cb3a
converted short invites to compact PGP format for increased robustness 2019-06-21 23:30:06 +02:00
csoler
e132ce7072
attempt to add SSL-only friends in FriendList - does not work yet 2019-06-20 23:09:40 +02:00
csoler
805f753727
fixed parsing of short invite 2019-06-20 21:59:56 +02:00
csoler
5139c023ab
fixed some bugs in auto-activating saved chat rooms 2019-06-15 22:44:59 +02:00
csoler
c72b49c296
automaticall save/restore subscribed chat rooms. The advantage is that auto-subscribed is not needed anymore and chat rooms will survive automatically 2019-06-15 13:54:34 +02:00
Gioacchino Mazzurco
7a237c11d3
GxsTrans delete own timed out mails
Mails sent in the past end never received were lingering in the outgoing
  queue forever as displayed by statistics. If a mail is older then
  GXS_STORAGE_PERIOD all nodes delete it from the GXS group so it can
  never arrive to destination, there is no point in keeping it in the
  outgoing queue, instead notify sending timed out and delete the mail.
2019-06-12 15:04:20 +02:00
csoler
57a548531c
fixed adding friend with short invite 2019-06-10 15:15:15 +02:00
csoler
76cf64f8d5
fixed compilation 2019-06-10 00:02:03 +02:00
csoler
fb52f6717c
fixed up addign friend from short invite 2019-06-09 23:49:31 +02:00
csoler
4bd5aaa9b2
added parsing of short invites in connect friend wizard (not working yet) 2019-06-09 15:03:48 +02:00
Gioacchino Mazzurco
8d6c83ac7f
Fix missing location regression interoduced in 41d4599f 2019-06-08 12:42:28 +02:00
csoler
3a799bae37
added optional display of short invites in places with certificates 2019-06-06 21:41:38 +02:00
csoler
8fddb559b9
fixed stupid bug that crashed the code in a different place 2019-05-27 21:48:47 +02:00
csoler
4eb6b0b066
fixed uninitialized memory read for variable mRsEventsHandle 2019-05-26 17:08:36 +02:00
csoler
56e591f728
added a flag in peerState specific to short invites, and several checks for consistency 2019-05-22 21:46:11 +02:00
G10h4ck
807bbedd5a
Merge pull request #1567 from G10h4ck/broadcast_discovery_refinement
Remove PGP fingerprint from broadcast discovery
2019-05-22 10:25:58 +02:00
csoler
dac76439bd
Merge pull request #1565 from G10h4ck/short_invites_v2
Short invites support for libretroshare
2019-05-21 21:32:05 +02:00
Gioacchino Mazzurco
b52bb4c2dd
Solve a bunch of warnings in TCP ove UDP layer
Remove some deadcode
Improve readability
2019-05-17 15:03:23 +02:00
Gioacchino Mazzurco
f2fb0d7cfc
Remove PGP fingerprint from broadcast discovery
Sending PGP fingerprint trough broadcast discovery is misleading in
terms of security, as those packets cannot be trusted for PGP
fingerprint verification, removing it reduce packet size and reduce the
risc of wrong usage of untrusted information
2019-05-17 12:07:52 +02:00
Gioacchino Mazzurco
bde6235758
Fix windows compilation 2019-05-16 22:13:12 +02:00
Gioacchino Mazzurco
720d5ea8a6
Implement libretroshare short invites support 2019-05-16 22:13:12 +02:00
G10h4ck
427503df0d
Merge pull request #1561 from G10h4ck/rsbanlist_refinement
Prepare RsBanList for JSON API
2019-05-16 21:53:26 +02:00
G10h4ck
533ceed549
Merge pull request #1562 from G10h4ck/build_refinement
Little improvements in build system
2019-05-14 23:03:00 +02:00
Gioacchino Mazzurco
fb4be22f0e
Prepare RsBanList for JSON API support 2019-05-14 23:01:06 +02:00
csoler
ebd55b2626
Merge pull request #1559 from G10h4ck/autssl_refinement
Cleanup huge amount of AuthSSL and related files cruft
2019-05-14 22:55:34 +02:00
Gioacchino Mazzurco
16d606b513
refactor LoadCheckX509 into safer AuthSSL::parseX509DetailsFromFile 2019-05-14 22:05:42 +02:00
Gioacchino Mazzurco
0c097c2080
Rename redundant to double in guarding macros 2019-05-14 21:33:08 +02:00
Gioacchino Mazzurco
c8082fdcc2
Add PGP verification info message 2019-05-14 15:12:39 +02:00
Gioacchino Mazzurco
0eee4adaa8
Add forgot define enabling banlist redundant check 2019-05-14 14:47:33 +02:00
Gioacchino Mazzurco
1599689eab
PQI redundant check behave the same as authssl check 2019-05-14 11:43:18 +02:00
csoler
2748275397
changed std::cerr to the new RsErr() method 2019-05-12 11:00:33 +02:00
csoler
1cee069243
added warning when deleting a thread that isnot finished 2019-05-12 10:46:08 +02:00
csoler
7b2541e35c
fixed thread bug caused by deleting a thread before it is actually terminated 2019-05-11 23:43:54 +02:00
csoler
6a18e242bb
added compile option to use sanitizer and already fixed a few misalignment errors with it 2019-05-11 22:25:02 +02:00
Gioacchino Mazzurco
64c4982f41
Remove problematic git submodule option
--recommend-shallow seems to nos be effective, and even causing problems with
  older git versions
2019-05-09 12:41:37 +02:00
Gioacchino Mazzurco
f1e2cb047e
Avoid cmake warning, restbed doesn't use C compiler 2019-05-09 12:38:25 +02:00
Gioacchino Mazzurco
f9f7e0df18
pqi free x509 cert even before exit
Avoid risk of introducing memory leak if we change the behaviour code from exit
  to return in the future
2019-05-07 12:11:38 +02:00
csoler
941df6120a
Merge pull request #1560 from G10h4ck/linkmgr_refinement
p3LinkMgr remove address age check in wrong place
2019-05-07 00:00:28 +02:00
csoler
362e0a975a
Merge pull request #1557 from G10h4ck/hotfix_rscertificate_crash
Fix crash in RsCertificate::fromString due to un-catched exception
2019-05-06 23:41:05 +02:00
csoler
710c440c3e
Merge pull request #1556 from G10h4ck/gxsevent
Emit event on GXS changes
2019-05-06 23:37:15 +02:00
csoler
0a541667a3
Merge pull request #1555 from G10h4ck/purge_deadcode
Purge deadcode
2019-05-06 23:16:05 +02:00
csoler
cc47ee72f5
Merge pull request #1554 from G10h4ck/rsgossipdiscovery
Gossip discovery refinement
2019-05-06 22:59:34 +02:00
Gioacchino Mazzurco
2593cb2feb
More descriptive documentation about enum size in gossip items
Also use hexadecimal value as Cyril like that more ;)
2019-05-06 13:04:45 +02:00
Gioacchino Mazzurco
fb9e172898
Delete dead code in PGP handler 2019-05-04 18:03:38 +02:00
csoler
678fed7450
enable IP filtering by default 2019-05-04 16:03:47 +02:00
Gioacchino Mazzurco
2975fa5446
p3LinkMgr remove address age check in wrong place
The age check was causing some address were ignored during connect attempt,
  this was disastrous expecially for sporadic users which completely
  lost capability to connect to any node, even if the IPs neve changes!

Old addresses triagin is handled elsewhere so ignoring them in connect attempt
  only generate very counter-intuitive situations for the user, as
  addressed still listed in potential address list were never attempted.
2019-05-03 17:13:04 +02:00
Gioacchino Mazzurco
41d4599fe3
Cleanup huge amount of AuthSSL cruft
Make reduntant auth check in pqi effective (even if redundant only
  siganture was checked but friendess wasn't)
Evidence redundant auth check in pqi by putting it inside #ifdef this
  way the beaviior being the same with and without redundat check can be
  verified easier
Solve lot of compiler warnings and made code more readable
Remove dangerous sslcert wrapper
Remove misleading messeges and notification about peer not giving cert,
  FailedCertificate logic is wrong since many years as authentication is
  fully handled inside VerifyX509Callback
2019-05-03 17:05:49 +02:00
Gioacchino Mazzurco
8300e65cad
Fix crash in RsCertificate::fromString due to exception
Also fix warning due to deprecaded RsPeerId constructor usage
2019-05-03 16:59:38 +02:00
Gioacchino Mazzurco
13ba26251c
Add support for GxsChanges as RsEvents 2019-05-03 16:57:38 +02:00
Gioacchino Mazzurco
de0dd63e3f
Remove a bunch of deadcode
RsSerializable already provide std::ostream &operator<<
Add deprecation notice for RsNotify
2019-05-03 16:55:57 +02:00
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
8e4f1f8876
Merge commit 'f6607b5ceca462520ef8e040ba76984c8d1eee4f' into brodcast_discovery 2019-05-03 16:44:38 +02:00
Gioacchino Mazzurco
1b02c748fa
fixup! Safer rsids API 2019-05-03 16:36:16 +02:00
Gioacchino Mazzurco
e118b4dbf8
Fix typo in PGP fingerprint type 2019-05-03 16:17:11 +02:00
Gioacchino Mazzurco
f6607b5cec
Broadcast discovery finer event emission
Emit new potential friend event only on actual change, and only if the peer is not friend yet
2019-05-02 10:40:19 +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
csoler
ccf7dc24b8
Merge pull request #1549 from G10h4ck/rscert_cleanup
Safer RsCertificate API
2019-05-01 22:31:30 +02:00
csoler
d8147fa2d0
Merge pull request #1548 from G10h4ck/rsrandom_cleaning
RsRandom cleaning
2019-05-01 22:06:45 +02:00
csoler
c754b32b06
Merge pull request #1547 from G10h4ck/rs_debug
Comfortable and efficient RetroShare logging helpers
2019-05-01 21:57:26 +02:00
Gioacchino Mazzurco
e655d4d257
Use RsRandom name also inside windows #ifdef 2019-05-01 20:42:19 +02:00
Gioacchino Mazzurco
5fe8ba0665
Safer RsCertificate API
Deprecate costructors that may fails, offer alternative methods which
  suggest correct usage to the programmer

Internally still use too much try,catch,throw but at least the API
  dosn't expose those anymore.
2019-04-28 15:49:57 +02:00
Gioacchino Mazzurco
6ca85ca7b6
Cleanup RsRandom
Rename RSRandom -> RsRandom for consistency
Cleanup documentation to use Doxygen format
Solve a bunch of compiler warning (there are still a lot)
2019-04-28 14:06:52 +02:00
Gioacchino Mazzurco
3feb048c37
Add sockaddr_storage ostream operator<< for comfortable debugging 2019-04-28 13:38:16 +02:00
Gioacchino Mazzurco
79af081f84
Introduce RetroShare logging helpers
Support for chaining like std::cerr
Support for compile-time optimization without #ifdef around
Support for Android native logging without depending on
  AndroidStdIOCatcher workaround
Support for automatic timestamp (on Android it's provided by Android
  native log)
Standardized messages categories
2019-04-28 02:31:44 +02:00
Gioacchino Mazzurco
d113f60ca1
RsUrl add method to test presence and get fields from query 2019-04-27 23:48:15 +02:00
Gioacchino Mazzurco
5622262c2d
Avoid Debian libupnp-1.6.x workaround fiddling libupnp-1.8.x builds 2019-04-25 03:14:34 +02:00
Gioacchino Mazzurco
7c13ca02dd
Fix build with libupnp-1.6.25 2019-04-25 02:00:07 +02:00
Gioacchino Mazzurco
42612e3f58
Fix miniupnp module include error 2019-04-25 00:12:58 +02:00
Gioacchino Mazzurco
650c5f1fa8
Fix compilation with libupnp-1.8.x 2019-04-24 23:36:40 +02:00
Gioacchino Mazzurco
3c5ac8b6e6
Include p3face-info.cc use miniupnpc only if available 2019-04-24 19:58:43 +02:00
Gioacchino Mazzurco
fb4f206427
Attempt to detect best UPnP library available
Because we don't support libupnp-1.8.x yet avoid using that library
If libupnp-1.6.x is available use that, if not try to use miniupnc if
  if unavailble print a warning and disable RetroShare UPnP support
2019-04-24 18:08:35 +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
G10h4ck
7d96b9b7a8
Merge pull request #1536 from G10h4ck/dead_zeroconf
Remove zeroconf deadcode
2019-04-23 15:43:55 +02:00
G10h4ck
9102a698e4
Merge branch 'master' into Fix_ClangWarnings 2019-04-23 12:45:33 +02:00
Gioacchino Mazzurco
5dda6eb771
Remove zeroconf deadcode 2019-04-23 11:57:30 +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
c727190041
Remove extra debugging in Broadcast Discovery 2019-04-16 15:17:29 +02:00
Gioacchino Mazzurco
74fa3bdf2b
Change again C compiler selection in CI 2019-04-15 15:16:47 +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
a5cdee6078
Fix compilation on Windows 2019-04-15 01:04:44 +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
Gioacchino Mazzurco
9c7a8d479f
Pass initialization value in RS_DEFAULT_STORAGE_PARAM 2019-04-15 00:09:01 +02:00
Gioacchino Mazzurco
954644ef57
Broadcast discovery fix local port setting 2019-04-15 00:05:40 +02:00
csoler
051e2ee682
Merge pull request #1522 from csoler/v0.6-Turtle
Add Fast Track items in Turtle and make GxsTunnel to use them. Improves distant chat.
2019-04-14 20:52:35 +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