Commit Graph

5287 Commits

Author SHA1 Message Date
csoler
ca3694acca
re-licensed upnputil with permission from the author 2018-11-11 14:24:48 +01:00
csoler
9c3d5acd8e
fixed license in libretroshare 2018-11-11 14:24:48 +01:00
csoler
ddca91b0c9
moved some files to unfinished and deleted soem unused files 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
csoler
b53e75ae82
removed old/unreferenced gxs source files. Moved unfinished ideas for wire+acadb to unfinished/ 2018-11-11 14:24:47 +01:00
hunbernd
4dce4002f0
Removed outdated instructions from readme 2018-11-11 14:24:45 +01:00
hunbernd
41d942c144
Updated links in readme 2018-11-11 14:24:45 +01:00
hunbernd
3e3adf7337
Removed some old build scripts 2018-11-11 14:24:44 +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
72dd985162
Deprecate TLV items, to avoid temptation to use them in new code 2018-11-10 16:28:15 +01:00
Gioacchino Mazzurco
f84824271f
Implement ostream operator<< for RsSerializable
So it is not necessary to define it for each class we want to print in
  debug
2018-11-10 16:24:47 +01:00
Gioacchino Mazzurco
e449ffba04
Better include in RsGxsChannels 2018-11-09 23:46:21 +01:00
Gioacchino Mazzurco
90bacf12bd
RsGxsDataAccess filtered getters do not return all messages if none matches
This was causing scary error message in RsGxsChannels with autodoanload
  enabled, when all messages where already processed none matched the
  filter so all messages where returned,
  making p3GxsChannels::handleUnprocessedPost furious
  more details into this forum post
  retroshare://forum?name=Scary%20message%2C%20but%20which%20doesn%27t%20seem%20to%20be%20the%20source%20of%20the%20problems%20Was%3A%20More%20GXS%20strange%20messages&id=8fd22bd8f99754461e7ba1ca8a727995&msgid=04f10ff97f761c6840c33f1610cb050f0f73da8d
2018-11-09 23:46:21 +01:00
Gioacchino Mazzurco
2ed6904d06
gxschannels better debugging message 2018-11-09 12:41:09 +01:00
Gioacchino Mazzurco
f6b22d25da
Fix typo in documentation 2018-11-09 12:41:09 +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
G10h4ck
5e6e9e03e5
Merge pull request #1390 from G10h4ck/jsonapi
JSON API to check if PGP id is friend
2018-11-09 11:09:56 +01:00
Gioacchino Mazzurco
c4cbcf78f3
Fix DNS resolution for hostnames that has also AAAA record
rsGetHostByName doesn't support IPv6 addresses.
Before this commit when
an hostname had both AAAA and A record rsGetHostByName retrurned success
but with 0.0.0.0 invalid address. As rsGetHostByName is not capable of
handling IPv6 (fixing it would require API change and a bunch of
refactors around) just avoid to receive IPv6 addresses on resolition, so
the correct IPv4 address is returned if present, otherwise fail
gracefully (A record not found).
2018-11-08 13:23:06 +01:00
csoler
cfb194a8ef
Merge pull request #1392 from G10h4ck/hotfix_udp_crash
WIP: Attempt to fix crash in pqissludp
2018-11-06 23:28:54 +01:00
csoler
09f92642d6
removed memory leak in gxsnettunnel 2018-11-06 20:55:10 +01:00
csoler
f976e1c525
removed memory leak in handlign of old chat lobby items 2018-11-06 20:38:35 +01:00
Gioacchino Mazzurco
a3c81e163d
Fix compilation for ubuntu 18.04 LTS
Ubuntu 18.04 still ships OpenSSL 1.1.0g which has bugs in BIO API, this
commit work around those bugs
2018-11-06 13:02:56 +01:00
Gioacchino Mazzurco
d00d0816ff
Use only BIO_METHOD pointer in openssl >= 1.1.0
The type declaration is hidden so we can't declare variable but only
pointers
Fix compilation on Android
2018-11-05 23:39:10 +01:00
Gioacchino Mazzurco
18e02c9f4a
TOU avoid forging BIO_METHOD in openssl >= 1.1.0
Forging of BIO_METHOD may be the cause of the stack overflow as the
internal structure in openssl changed so the methods get assigned to
wrong pointer.
Kudos Cyril to notice newer openssl internal struct had one new pointer
inserted as second member
2018-11-05 22:23:40 +01:00
sehraf
66dff9bf0b
Add a build-time switch to set whether GXS distributes all available data or only sends data withint the configured sync period. 2018-11-05 18:56:11 +01:00
Gioacchino Mazzurco
81cad2ab02
Fix missing include 2018-11-05 14:02:44 +01:00
Gioacchino Mazzurco
1ef9876610
Merge branch 'stacktrace_on_crash' into hotfix_udp_crash 2018-11-05 00:20:33 +01:00
Gioacchino Mazzurco
c0ca1a5aad
Print stack trace on crash 2018-11-05 00:19:45 +01:00
Gioacchino Mazzurco
7d6fba7e8c
Attempt to fix crash in pqissludp
Caused by unneeded pointer usages + not enough careful IPv6 porting

I haven't managed to reproduce the crash nor to test the fix due it
happening only when UDP relayed connection happens (apparently never on
my nodes.

I have managed to discover where the bug comes from thanks to multiple
user reports, specially to Ilario report which documented 3 crashes
happening on 0.6.4 with complete log.
2018-11-04 00:09:28 +01:00
Gioacchino Mazzurco
eca4f8adf7
JSON API to check if PGP id is friend 2018-11-01 23:26:42 +01:00
csoler
4aedfddb9f
fixed bug in GRouter failing to set proper service ID in return receipts 2018-11-01 22:10:17 +01:00
csoler
33b39a8be6
removed uninitialized memory read in determination of own IP 2018-11-01 22:05:22 +01:00
csoler
cb5d247565
removed unnecessry debug output from pqissl 2018-11-01 21:45:59 +01:00
csoler
eb078d462e
added more info to deserialization warning in rsrecogn 2018-11-01 21:42:07 +01:00
csoler
3c6dd1af1c
removed unnecessary saving of config in p3turtle 2018-10-28 17:45:21 +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
Gioacchino Mazzurco
e5805e9047
Avoid external port being reset without necessity
Fix RetroSahre behaviour when manually configured external port is
  different to local port
2018-10-24 05:39:31 +02: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
Phenom
da6778934d Fix Warnings in rsloginhandler.cc
/libretroshare/src/rsserver/rsloginhandler.cc:122:2: warning: missing
initializer for member 'SecretSchema::reserved' [-Wmissing-field-
initializers]
/libretroshare/src/rsserver/rsloginhandler.cc:122:2: warning: missing
initializer for member 'SecretSchema::reserved1' [-Wmissing-field-
initializers]
/libretroshare/src/rsserver/rsloginhandler.cc:122:2: warning: missing
initializer for member 'SecretSchema::reserved2' [-Wmissing-field-
initializers]
/libretroshare/src/rsserver/rsloginhandler.cc:122:2: warning: missing
initializer for member 'SecretSchema::reserved3' [-Wmissing-field-
initializers]
/libretroshare/src/rsserver/rsloginhandler.cc:122:2: warning: missing
initializer for member 'SecretSchema::reserved4' [-Wmissing-field-
initializers]
/libretroshare/src/rsserver/rsloginhandler.cc:122:2: warning: missing
initializer for member 'SecretSchema::reserved5' [-Wmissing-field-
initializers]
/libretroshare/src/rsserver/rsloginhandler.cc:122:2: warning: missing
initializer for member 'SecretSchema::reserved6' [-Wmissing-field-
initializers]
/libretroshare/src/rsserver/rsloginhandler.cc:122:2: warning: missing
initializer for member 'SecretSchema::reserved7' [-Wmissing-field-
initializers]
/libretroshare/src/rsserver/rsloginhandler.cc:34: warning: zero as null
pointer constant
/libretroshare/src/rsserver/rsloginhandler.cc:55: warning: zero as null
pointer constant
/libretroshare/src/rsserver/rsloginhandler.cc:120: warning: use of old-
style cast
/libretroshare/src/rsserver/rsloginhandler.cc:122: warning: missing
field 'reserved' initializer
/libretroshare/src/rsserver/rsloginhandler.cc:243: warning: zero as null
pointer constant
/libretroshare/src/rsserver/rsloginhandler.cc:244: warning: zero as null
pointer constant
/libretroshare/src/rsserver/rsloginhandler.cc:248: warning: zero as null
pointer constant
/libretroshare/src/rsserver/rsloginhandler.cc:254: warning: zero as null
pointer constant
/libretroshare/src/rsserver/rsloginhandler.cc:443: warning: 'return'
will never be executed
/libretroshare/src/rsserver/rsloginhandler.cc:270: warning: 'return'
will never be executed
/libretroshare/src/rsserver/rsloginhandler.cc:468: warning: zero as null
pointer constant
/libretroshare/src/rsserver/rsloginhandler.cc:470: warning: use of old-
style cast
/libretroshare/src/rsserver/rsloginhandler.cc:470: warning: cast from
'const char *' to 'char *' drops const qualifier
/libretroshare/src/rsserver/rsloginhandler.cc:471: warning: use of old-
style cast
/libretroshare/src/rsserver/rsloginhandler.cc:471: warning: cast from
'const char *' to 'char *' drops const qualifier
/libretroshare/src/rsserver/rsloginhandler.cc:472: warning: zero as null
pointer constant
/libretroshare/src/rsserver/rsloginhandler.cc:476: warning: zero as null
pointer constant
/libretroshare/src/rsserver/rsloginhandler.cc:630: warning: 'return'
will never be executed
/libretroshare/src/rsserver/rsloginhandler.cc:650: warning: zero as null
pointer constant
/libretroshare/src/rsserver/rsloginhandler.cc:651: warning: zero as null
pointer constant
/libretroshare/src/rsserver/rsloginhandler.cc:655: warning: zero as null
pointer constant
2018-10-23 17:37:19 +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
csoler
cfe95a57a0
Merge pull request #1377 from G10h4ck/jsonapi
GXS deep search notify results also of already known groups
2018-10-20 14:47:37 +02:00
Gioacchino Mazzurco
2d497d7303
Fix compilation with deep search and rm dead code 2018-10-20 14:07:39 +02:00
Gioacchino Mazzurco
aca29e3ea7
Merge branch 'v0.6-GxsFix2' of https://github.com/csoler/RetroShare into csoler-v0.6-GxsFix2 2018-10-20 13:51:11 +02:00
Gioacchino Mazzurco
5699d81ae7
GXS deep search notify results also of known groups 2018-10-20 13:48:16 +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
945775e9f5
Fix deep search compiling on 32bit time_t targets 2018-10-18 04:27:30 +02:00
csoler
9b4c48c540
created a connexion between token and meta data of created posts and grps 2018-10-16 22:40:27 +02:00
Gioacchino Mazzurco
2bb24075c4
Print warning also when serializing negative rstime_t 2018-10-16 16:19:23 +02:00
G10h4ck
03cdd6c7b6
Merge pull request #1363 from G10h4ck/jsonapi
New cross-platform target retroshare-service
2018-10-16 16:06:09 +02:00
thunder2
6e1de5b5ed Fixed Windows compile with MinGW 2018-10-14 15:28:20 +02:00
csoler
fae02741d4
Merge pull request #1370 from sehraf/pr_remove-debug-output
remove debug output
2018-10-14 15:00:09 +02:00
csoler
74022a5e10
fixed bug in recent commit that broke turtle generic search 2018-10-13 22:59:26 +02:00
Gioacchino Mazzurco
15b729b35c
Fix crash in p3Peers::loadCertificateFromString
This function is part of the public API so it must be safe to call with
any input, before this commit if would crash if feeded with a broken or
empty certificate radix string.
2018-10-12 22:28:44 +02:00
csoler
9c90b32def
fixed dangerous memcpy in RsTurtleGenericSearchResultItem::clone() function 2018-10-12 22:19:07 +02:00
sehraf
e6febe0297
remove debug output 2018-10-12 18:20:55 +02:00
Gioacchino Mazzurco
fc14300b06
Re-add ftServer::requestDirDetails implementation
The implementation has disappeared merging master causing linking error
2018-10-10 23:43:01 +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
csoler
09b109d522
Merge pull request #1364 from G10h4ck/safer_time
Use safer rstime_t instead of time_t
2018-10-10 22:03:51 +02:00
Gioacchino Mazzurco
a47eec14e4
Print a warning if deserialized rstime_t is negative 2018-10-10 21:54:50 +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
2139090f5d
Fix bug in JSON t_RsFlags32 deserialization
If the member was not present in the JSON it was zeroed while it should
be left untouched in that case.
This was discovered because in JSON API defualt argument value for
methods wasn't onored for t_RsFlags32 arguments.
2018-10-09 22:43:15 +02:00
Gioacchino Mazzurco
74129f670a
jsonwrappersincl target always fails if doxygen fail 2018-10-09 18:06:21 +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
a89c29030a
Add missing rstime include in jsonapi 2018-10-08 11:56:47 +02:00
hunbernd
b7d5944b9c Fix building error about losing precision on Win x64 2018-10-07 21:53:16 +02:00
Gioacchino Mazzurco
ddf3164545
Fix ctime(&rstime_t) error on windows
rstime_t not neccesary in those cases so use plain time_t instead
2018-10-07 14:41:13 +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
sehraf
137bd9cd6d
jsonapi: fix nested std types 2018-10-06 23:50:29 +02:00
Gioacchino Mazzurco
f5158b3a9f
Allow CORS in JsonApiServer 2018-10-06 18:57:14 +02:00
Gioacchino Mazzurco
8f17270a2a
Fix type in .pri breaking non-cross-compiling 2018-10-06 18:49:17 +02:00
csoler
586cff2ad1
Merge pull request #1362 from csoler/v0.6-ImprovedGUI
V0.6 improved gui
2018-10-06 18:33:13 +02:00
csoler
045691855b
Merge pull request #1356 from PhenomRetroShare/Fix_Warnings
Fix warnings
2018-10-06 18:31:33 +02:00
Gioacchino Mazzurco
2b3570903f
retroshare-service deep search support for Android 2018-10-06 01:23:08 +02:00
Gioacchino Mazzurco
b28512b889
retroshare-service now build and runs fine on android (even older ones) 2018-10-05 22:29:49 +02:00
csoler
ec8e8ebafa
fixed merging with upstream/master 2018-10-05 21:38:36 +02:00
csoler
dbd52c0c9c
fixed bug in previous commit 2018-10-05 17:01:54 +02:00
csoler
4de0498208
fixed bad signature checking code for config files 2018-10-05 16:54:36 +02:00
Gioacchino Mazzurco
1d8bb44811
Fix warnings 2018-10-05 01:55:18 +02:00
Gioacchino Mazzurco
341a68ce07
rstypeserializer fix uninitialized variable usage 2018-10-05 01:23:17 +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
70678ad508
jsonapi: fix std::map<T,U> 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
csoler
c6d0203557
added debug output to see which config files are loaded/saved 2018-10-04 19:22:49 +02:00
csoler
fb21e427be
removed saving of GxsTrans configuration in class destructor, causing lock up when quitting RS 2018-10-04 19:14:21 +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
Gioacchino Mazzurco
e6e5700ed6
Fix warning caused by clang defining _GNUC_ 2018-10-03 19:07:46 +02:00