Commit Graph

5361 Commits

Author SHA1 Message Date
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
Gioacchino Mazzurco
8f3f2cd7cb
retroshare-service improve building process 2018-10-03 15:53:18 +02:00
csoler
81fc3b7921
select GxsIds as default list to chose msg destination from 2018-10-03 15:25:53 +02:00
Phenom
6ef72f551d Fix Gcc Warning in authssl.cc
/libretroshare/src/pqi/authssl.cc:160: warning: ‘void
dyn_destroy_function(CRYPTO_dynlock_value*, const char*, int)’ defined
but not used [-Wunused-function]
 static void dyn_destroy_function(struct CRYPTO_dynlock_value *l, const
char */*file*/, int /*line*/)
/libretroshare/src/pqi/authssl.cc:143: warning: ‘void
dyn_lock_function(int, CRYPTO_dynlock_value*, const char*, int)’ defined
but not used [-Wunused-function]
 static void dyn_lock_function(int mode, struct CRYPTO_dynlock_value *l,
const char */*file*/, int /*line*/)
/libretroshare/src/pqi/authssl.cc:121: warning: ‘CRYPTO_dynlock_value*
dyn_create_function(const char*, int)’ defined but not used [-Wunused-
function]
 static struct CRYPTO_dynlock_value *dyn_create_function(const char */
*file*/, int /*line*/)
/libretroshare/src/pqi/authssl.cc:106: warning: ‘long unsigned int
id_function()’ defined but not used [-Wunused-function]
 static unsigned long id_function(void)
/libretroshare/src/pqi/authssl.cc:92: warning: ‘void
locking_function(int, int, const char*, int)’ defined but not used [-
Wunused-function]
 static void locking_function(int mode, int n, const char */*file*/, int
/*line*/)
2018-09-30 15:10:40 +02:00
Phenom
1839d23df1 Fix Gcc Warning hashstream.h
/libretroshare/src/crypto/hashstream.cc:38: warning: friend declaration
‘template<class T> librs::crypto::HashStream&
librs::crypto::operator<<(librs::crypto::HashStream&, const T&)’ is not
visible to explicit specialization
  HashStream& operator<<(HashStream& u,const std::string& s)
/libretroshare/src/crypto/hashstream.cc:44: warning: friend declaration
‘template<class T> librs::crypto::HashStream&
librs::crypto::operator<<(librs::crypto::HashStream&, const T&)’ is not
visible to explicit specialization
  HashStream& operator<<(HashStream& u,const uint64_t& n)
/libretroshare/src/crypto/hashstream.cc:58: warning: friend declaration
‘template<class T> librs::crypto::HashStream&
librs::crypto::operator<<(librs::crypto::HashStream&, const T&)’ is not
visible to explicit specialization
  HashStream& operator<<(HashStream& u,const uint32_t& n)
/libretroshare/src/crypto/hashstream.cc:72: warning: friend declaration
‘template<class T> librs::crypto::HashStream&
librs::crypto::operator<<(librs::crypto::HashStream&, const T&)’ is not
visible to explicit specialization
  HashStream& operator<<(HashStream& u,const uint8_t& n)
2018-09-30 15:10:40 +02:00
csoler
79a8b2183f
Merge pull request #1353 from csoler/v0.6-FileLists
V0.6 file lists
2018-09-30 13:31:26 +02:00
csoler
443dbdfbef
fixed small bug breaking display of flat mode in files 2018-09-29 19:04:23 +02:00
Gioacchino Mazzurco
0078501dba
Initial work on a RetroShare cross-platform service
This doesn't need any interacion of the user at startup, unlike
retroshare-nogui which requires the user to login on the shell this doesn't
even need a TTY.
At startup this just parse command line, read the PGP keyring, look for
available locations, and start listening for JSON API requests.
Another difference with retroshare-nogui is that this is capable to
generate/import PGP identities, generate locations, and in general anything
possible through the RetroShare API.
retroshare-service is suitable also to run it as a system service, even
in very constrained systems such as Android ot a Docker container.
retroshare-service drop support for libresapi so only the new JSON API
is exposed, it will completely obsolete retroshare-android-service once
retroshare-qml-app is ported to the new JSON API.
2018-09-29 00:15:10 +02:00
csoler
752275f813
fixed various display bugs in extra file list 2018-09-27 22:14:00 +02:00
csoler
54ec49dc03
make extra shared file list appear only when non empty 2018-09-27 21:56:41 +02:00
csoler
e1698429de
fixed display of size 2018-09-27 21:46:00 +02:00
csoler
2610f62e41
fixed display of temporary shared file text 2018-09-27 21:42:21 +02:00
csoler
c77a28c17a
added proper notification when removing an extra file 2018-09-27 21:20:06 +02:00
csoler
7ab7c7db93
added possibility to remove extra shared file 2018-09-27 16:53:08 +02:00
csoler
1383846364
added extra list view in own files. 2018-09-27 13:42:49 +02:00
Phenom
aec68c2269 Fix qmake double using retroshare.pri
From 544b4af4c2
2018-09-26 17:55:58 +02:00
Phenom
f420bb4644 Fix qmake warnings:
Makefile.libretroshare:3811: warning: overriding recipe for target
'temp/linux-g++/obj/hashstream.o'
Makefile.libretroshare:3772: warning: ignoring old recipe for target
'temp/linux-g++/obj/hashstream.o'
2018-09-26 17:36:33 +02:00
G10h4ck
f09bef2ac8
Merge pull request #1349 from G10h4ck/jsonapi
Implement JSON API HTTP Basic authentication
2018-09-25 18:10:16 +02:00
Gioacchino Mazzurco
95e0fd338f
JsonApiServer::isAuthTokenValid avoid timing attack
Thanks Cyril for review :)
2018-09-25 17:27:54 +02:00
Gioacchino Mazzurco
1c7f02655e
Fix crash at startup if jsonapi not enabled 2018-09-21 01:40:26 +02:00
Gioacchino Mazzurco
bf98166197
RsServer fix crash on stop if shutdown callback not set 2018-09-21 01:39:48 +02:00
zapek
dc926d30c8 links with wsock32 only if the jsonapi is built 2018-09-20 23:29:36 +02:00
zapek
458a8b0878 fixed JSONAPI build for Windows 2018-09-20 22:24:05 +02:00
Gioacchino Mazzurco
add97dede0
p3face include jsonapi.h only if enabled 2018-09-19 22:02:07 +02:00
Gioacchino Mazzurco
eb77f921ec
Implement JSON API HTTP Basic authentication
jsonapi-generator is now capable of generating API for headers outside
  retroshare/ directory
jsonapi-generator do a bit of methods parameter sanity check
JsonApiServer is now integrated in the rsinit hell like other services
Add *::exportGPGKeyPairToString to a bunch of classes in cascade
RsControl is now capable of calling back a function when retroshare is almost
  completely stopped, this is useful when running retroshare toghether with
  externally managed runloop such as QCoreApplication
Expose a bunch of methods through JSON API
retroshare-nogui remove some dead code and fix stopping from the RetroShare API
2018-09-19 21:28:26 +02:00
Gioacchino Mazzurco
43bc80de8e
JSON API export version extra too 2018-09-15 21:53:46 +02:00
Gioacchino Mazzurco
cd03953b1a
Provide meaningful devault value in rsversion.h 2018-09-15 21:07:03 +02:00
hunbernd
05537d89cb Added warning instead of running the version_detail script 2018-09-15 18:27:15 +02:00
G10h4ck
eece958aa0
Merge pull request #1340 from sehraf/pr_remove-obsolete-version-scripts
remove obsolete version scripts
2018-09-15 17:59:09 +02:00
sehraf
0b6644cd55
get rid of unused variables 2018-09-15 14:38:57 +02:00
sehraf
1e85b05f09
get rid of cipher_version variable. use plain output from openssl 2018-09-15 14:37:40 +02:00
sehraf
1faaf91ebe
G10h4ck said that there are obsolete since #1336 and should not be used anymore. 2018-09-14 17:01:52 +02:00
sehraf
7ce2bef37b
add support for displaying TLSv1.3 2018-09-14 16:27:50 +02:00
Gioacchino Mazzurco
148e46346d
JSON API accessible via HTTP GET method
This is useful in cases where the client cannot use POST method.
/jsonApiServer/shutdown now reply before shutting down the core.
2018-09-12 23:40:34 +02:00
Gioacchino Mazzurco
1694e37c58
More fixes to JSON API
Remove unnecessary dangerous method from RsLoginHelper
Fix documentation for RsServiceControl::getServiceName that was breaking
  JSON API and causing compilation warning
2018-09-12 10:49:37 +02:00
Gioacchino Mazzurco
5245765964
JSON API expose retroshare version
Added a couple of macro to reduce boilerplate in manually written API
wrappers, use them in auto-generated wrappers too
2018-09-12 10:49:37 +02:00
Gioacchino Mazzurco
92f90178c4
RS version is now parametrizable at compile time
Avoid the need of dirty patching to set the version at build time
In case RS version is not passed as argument attempt to determine it
  using git describe, if unavailable use hardcoded default
2018-09-12 10:49:36 +02:00
Gioacchino Mazzurco
5495f43c51
Fix RsServiceControl::getServiceItemNames doc
Was breaking JSON API and causing some compilation warnings
2018-09-12 00:31:16 +02:00
csoler
b138263878
Merge pull request #1323 from csoler/v0.6-ForumAdmin
V0.6 forum admin
2018-09-11 15:17:33 +02:00
csoler
c17b821ea6
Merge pull request #1334 from csoler/v0.6-GxsFix
auto send of own signed GXS ids to friends in discovery
2018-09-10 20:39:29 +02:00
csoler
2b80c23f6a
fixed according to comments on PR 1334 2018-09-10 20:03:47 +02:00
G10h4ck
cb83abf932
Merge pull request #1335 from sehraf/pr_jsonfy
Make more APIs jsonapi compatible
2018-09-10 00:29:07 +02:00
sehraf
247c368279
incorporated requested changes 2018-09-09 22:22:55 +02:00
csoler
59a76a9418
fixed checking of signature for own ids when loading in cache 2018-09-09 21:22:08 +02:00
sehraf
ae6a5c74d2
add rsPeer groups to jsonapi 2018-09-08 17:04:29 +02:00
sehraf
5a961179f3
unify parameter names 2018-09-08 09:48:27 +02:00
sehraf
31b0f67e94
jsonfy RsServiceControl 2018-09-08 09:47:45 +02:00
sehraf
9306d8ccc8
drop deprecated function 2018-09-08 08:58:42 +02:00
sehraf
ae14a01d58
add json support to getWaitingDiscCount 2018-09-07 14:19:06 +02:00
sehraf
be50400114
jsonfy rsDisc 2018-09-07 14:17:44 +02:00
sehraf
fb8e49ee66
jsonjy rsConfig 2018-09-07 12:58:30 +02:00
csoler
3402f7d9b5
auto send of own signed GXS ids to friends in discovery 2018-09-06 21:15:25 +02:00
sehraf
39c07f4ef0
make p3GxsTrans a class 2018-09-06 13:17:33 +02:00
csoler
b17d2a3aca
Merge pull request #1331 from G10h4ck/jsonapi
JSON API improvements
2018-09-06 08:39:30 +02:00
Gioacchino Mazzurco
2c8aa5a1fe
RsAccounts::getCurrentAccountId is now static 2018-09-06 02:04:48 +02:00
csoler
4a309b827a
fixed compilation with libressl2.7 (patch from sss, modified) 2018-09-05 21:00:34 +02:00
Gioacchino Mazzurco
7787f9d62f
Merge branch 'master' into jsonapi 2018-09-05 00:17:21 +02:00
Gioacchino Mazzurco
a194e4cf56
Make JSON API server bind address configurable
Enforce it being 127.0.0.1 by default, I assumed 127.0.0.1 was restbed
default, but as reported by sehraf is not alwayd the case

JSON API bind address now is also configurable via commandline on
retroshare-android-service and retroshare-nogui, while it obey the
configuration of webui (execept for that port is incremented by 2)
in retroshare-gui
2018-09-05 00:08:56 +02:00
csoler
59535eac8a
added a flag for moderating messages to help removign them when the author is not a moderator anymore 2018-09-02 17:07:40 +02:00
Gioacchino Mazzurco
7f74313552
JSON API close restbed session before shutting down 2018-09-01 15:54:11 +02:00
Gioacchino Mazzurco
7a37c11e47
Prevent crash calling uninitialized service via JSON API 2018-09-01 15:29:09 +02:00
Gioacchino Mazzurco
cc6f0b1f05
Expose RsPeers JSON API
Added also new method for better usability via the API that allow to add
  friend directly for RetroShare invitation (supports also URL) without
  having to call to mulptiple metods to set IP etc.
  RsPeers::acceptInvite
  /rsPeers/acceptInvite
2018-08-30 21:45:51 +02:00
Gioacchino Mazzurco
a8ddec03fc
Expose more login related JSON API
/rsLoginHelper/isLoggedIn to check if already logged in
/rsAccounts/getCurrentAccountId to get the id of current selected
  account, beware that an account may be selected without actually logging in
2018-08-30 19:09:50 +02:00
csoler
5c2f714ada
merged with upstream/master 2018-08-30 14:50:16 +02:00
csoler
65304a301a
added last relay (a.k.a which direct friend) of search results in sources column 2018-08-28 23:57:16 +02:00
csoler
c9b30f5a72
fixed merged with upstream/master 2018-08-28 23:42:24 +02:00
csoler
c294971633
Merge pull request #1289 from G10h4ck/jsonapi
Implement automatic JSON API generation
2018-08-28 19:11:08 +02:00
Gioacchino Mazzurco
dd55ddea95
Add more consistency checks to serialization code
As suggested by Cyril
2018-08-28 15:20:41 +02:00
Gioacchino Mazzurco
3094146c13
RsLoginHelper::attemptLogin clear cached passphrase after usage
Thanks Cyril for suggestion
2018-08-28 14:35:29 +02:00
Gioacchino Mazzurco
75e882bb9f
Make NotifyClient class again 2018-08-28 14:12:09 +02:00
csoler
5f18d26738
removed unused member depth from search results to avoid confusion while ensureing backward compatibility is kept 2018-08-27 23:36:21 +02:00
csoler
fd25f8336e
Merge pull request #1329 from sehraf/pr_small-fixes
small fixes
2018-08-27 10:56:29 +02:00
Gioacchino Mazzurco
1dfe64443f
Improve documentation 2018-08-26 11:39:26 +02:00
csoler
2fab33d37f
fixed a few bugs in ban file list management 2018-08-25 20:52:06 +02:00
csoler
b5eabf7af7
improved banned files UI and fixed deadlock 2018-08-25 20:18:54 +02:00
csoler
c14d898901
added some debug info to file control system and fixes a problem with sending TS 2018-08-25 18:44:29 +02:00
G10h4ck
41f7235ed0
Merge pull request #2 from sehraf/pr_improve_json
Multiple fixes on json handling by sehraf
2018-08-25 18:05:56 +02:00
Gioacchino Mazzurco
c50405c070
Expose /rsFiles/turtleSearchRequest via JSON API
Expose new async C++ API RsFiles::turtleSearchRequest with callback
Modernize TurtleFileInfo serialization code keeping retrocompatibility
2018-08-25 17:58:04 +02:00
sehraf
9557a5246e
remove unnecessary locking, print log entries also to stdout 2018-08-25 17:54:34 +02:00
sehraf
c754435944
fix deserialisation and improve PRINT job 2018-08-25 17:10:01 +02:00
Gioacchino Mazzurco
a8b2532d3b
Fix warning #pragma once used in main file
Probably a copy paste error made during license cleanup
2018-08-25 17:04:42 +02:00
sehraf
588295e1e5
make RsGroupInfo serializable 2018-08-25 16:52:46 +02:00
sehraf
4d03b906b8
convert values properly to string 2018-08-25 16:51:49 +02:00
Gioacchino Mazzurco
31f0a42b86
Merge branch 'csoler/v0.6-FT' into jsonapi
Needed to exopse JSON API for file search
2018-08-25 16:14:42 +02:00
Gioacchino Mazzurco
b98246ee21
Fix location creation via JSON API
To complete location creation login is needed
2018-08-25 00:19:26 +02:00
csoler
8eebe53d75
moved UI notification for turtle FT search results into ftServer, in order to allow easier libresAPI calls 2018-08-24 16:12:05 +02:00
Gioacchino Mazzurco
afb92999d8
Enable JSON conversion for RsGxsImage via MemBlockProxy 2018-08-24 00:31:25 +02:00
Gioacchino Mazzurco
afeb408f7a
Expose more RsFiles via JSON API
FileInfo remove dead static members
2018-08-23 22:38:21 +02:00
Gioacchino Mazzurco
4d30d4f32b
Avoid cloning huge unused restbed openssl dependency 2018-08-23 15:47:01 +02:00
Gioacchino Mazzurco
18feb23c77
Suggest shallow submodules for jsonapi dependencies 2018-08-23 14:20:24 +02:00
Gioacchino Mazzurco
3b72f912e4
Improve API
Manually expose /rsFiles/getFileData to stream/preview files
Automatically expose a bunch of methods via JSON API
Implement serial_process for std::pair
2018-08-23 01:39:26 +02:00
csoler
3055897425
added filter in p3turtle against banned hashes in tunnel requests and search results 2018-08-22 21:57:56 +02:00
Gioacchino Mazzurco
ab6a5c07cc
RsLoginHelper::createLocation expose capability of creating hidden locations 2018-08-22 17:22:27 +02:00
Gioacchino Mazzurco
8f7bacbb35
Remove #pragma once in .cc file
It was probably introduced by copy paste error on license cleanup
2018-08-22 17:00:22 +02:00
Gioacchino Mazzurco
396fe49312
Merge branch 'master' into jsonapi 2018-08-22 16:59:42 +02:00
csoler
365464623a
added load/save of banned files and handling of banned files information from friends 2018-08-21 11:20:02 +02:00
csoler
0b176a0fe5
added sending of banned file info 2018-08-20 23:30:05 +02:00
csoler
e5e566051b
added logic to compute ban list from friend nodes and own opinions 2018-08-19 21:11:17 +02:00
csoler
af7556610a
added option whether to trust friend nodes for banned files 2018-08-19 15:52:35 +02:00
Gioacchino Mazzurco
fe8c2c4683
Merge branch 'jsonapi' of github.com:G10h4ck/RetroShare into jsonapi 2018-08-16 23:51:35 +02:00
Gioacchino Mazzurco
4b6f751b09
Implement JSON API generation for async API calls
Move JSON helpers to util/rsjson.* for better usability
Implement JSON ostream manipulator to print compact and pretty JSON
Use lambdas for API wrappers, integrate better and avoid namespace
  pollution
Removed experimental JSON API for notify client wrapper, notifications
  can be implemented automatically with moderns async API calls
Implement and automatically expose to JSON API
  RsGxsChannels::turtleSearchRequest(
        const std::string& matchString,
        const std::function<void (const RsGxsGroupSummary&)>& multiCallback,
        std::time_t maxWait )
2018-08-16 23:48:21 +02:00
csoler
e17c4d0e40
added a dialog to edit banned files 2018-08-16 22:22:47 +02:00
csoler
50e03a539c
basic infrastructure for banning unwanted file content 2018-08-16 18:49:36 +02:00
Gioacchino Mazzurco
b7f5d4286f
RsGxsNetService::receiveTurtleSearchResults fix deadlock
Avoid notifing observer while the mutex is locked by storing results in
a temporary set
2018-08-16 14:26:41 +02:00
csoler
5b1c150acb
added background for post pinning and logic to edit others posts 2018-08-12 15:30:07 +02:00
csoler
ded9c21617
added selection boxes to add forum moderators 2018-08-09 21:18:37 +02:00
sehraf
a556965813
further conversion to new wrapper function 2018-08-03 20:19:10 +02:00
csoler
cc51298de6
fixed warning about badly overloaded function in rsexpr.h 2018-08-02 14:13:14 +02:00
csoler
985be3504e
fixed compilation with RS_AUTO_LOGIN 2018-08-01 23:05:36 +02:00
sehraf
97194fd092
Add wrapper function to convert uint16_t service IDs to internal unsigned int.
Use it when looking up service names.
2018-08-01 20:47:02 +02:00
csoler
c948517c3d
Merge pull request #1306 from csoler/v0.6-TorOnly
V0.6 tor only
2018-07-31 14:18:24 +02:00
csoler
ecd45215c7
disallow empty file when loading shared file list in order to avoid malloc of size 0 2018-07-31 14:13:01 +02:00
csoler
1297d2e106
fixed double calls to pthread_exit() (one being implicit after return from main thread method) -- patch from sss 2018-07-30 10:50:32 +02:00
csoler
d7c7e35d71
fixed compilation on MacOS 2018-07-27 15:15:04 +02:00
csoler
cc1a05ddc9
fixed certificate creation in TorAuto mode 2018-07-27 12:33:06 +02:00
csoler
62b9a74324
fixed running with TorControl in new mode 2018-07-25 15:31:18 +02:00
csoler
d1a375cbd0
removed RETROTOR #ifdef and started using RsAccounts::isTorAuto() instead. Unfinished yet. 2018-07-25 11:37:40 +02:00
Gioacchino Mazzurco
d2a62b03ee
Fix deep search returning 0 results 2018-07-25 00:29:36 +02:00
Gioacchino Mazzurco
b4dd89dd87
Fix deep search returning 0 results 2018-07-25 00:27:39 +02:00
csoler
0f758902cd
started cleaning the mess with rsAccounts: only exposed useful functionality of rsAccount beyond a static class and removed all references to rsAccounts in the code 2018-07-24 23:47:32 +02:00
sehraf
7af5075891
fix jsonapi.h 2018-07-24 20:59:20 +02:00
sehraf
e6acb52d17
add simple chat support 2018-07-24 20:09:45 +02:00
thunder2
7128a04525 Added Xapian to Windows build environment 2018-07-24 16:03:32 +02:00
Gioacchino Mazzurco
1bc518041c
Experiment of notification via NotifyClient + JSON API 2018-07-23 14:52:17 +02:00
Gioacchino Mazzurco
130007b578
Merge branch 'master' into jsonapi 2018-07-23 13:44:01 +02:00
G10h4ck
fbc4e4205d
Merge pull request #1292 from G10h4ck/deep_search
Content search for channels trough xapian
2018-07-23 11:48:55 +02:00
Gioacchino Mazzurco
e8c9ba52b2
Improve code quality after Cyril review 2018-07-23 11:18:32 +02:00
Gioacchino Mazzurco
6f8c2f6f41
Fix compilation if deep_search is disabled 2018-07-22 23:39:06 +02:00
Gioacchino Mazzurco
51c25219bb
Fix compiling with old GCC 2018-07-22 22:47:30 +02:00
Gioacchino Mazzurco
d9aa37219c
Revert "DROP before merge. Reduce INTEGRITY_CHECK_PERIOD"
This reverts commit ce61174d79.
2018-07-22 21:45:43 +02:00
Gioacchino Mazzurco
f97dc8a125
Properly plug deep search in GXS search
Some modifications breaks retrocompatibility of GXS search:
  remove horrible templated RsTypeSerializer::serial_process for
    RsGxsGroupSummary with hardcoded member names
  RsGxsGroupSummary doesn't use old TLV serialization format anymore
  RsGxsGroupSummary remove unused description member
  RsGxsGroupSummary derive from RsSerializable and use serialization
    helper macro
Add autor id and signature flags to the index so there is no need to
  retrive them from GXS, thus improving performances
RsGroupNetworkStats initialize members properly
RsGxsGroupSummary rename members to follow usual mMemberName convention
2018-07-22 21:33:40 +02:00
csoler
82c9084ca4
Merge pull request #1303 from csoler/v0.6-GXS-DistSync3-TurtleSearch
fixed deadlock due to turtle calling addVirtualPeer for client servic…
2018-07-22 00:22:51 +02:00
csoler
2ab12a2ef5
fixed deadlock due to turtle calling addVirtualPeer for client services inside a mutex protected zone (breaks mutex order service > turtle) 2018-07-22 00:21:45 +02:00
Gioacchino Mazzurco
6982ae6cd5
Improve retrocompatibility with older xapian 2018-07-21 13:35:05 +02:00
Gioacchino Mazzurco
ff166b2295
Merge branch 'master' into deep_search 2018-07-21 12:57:05 +02:00
csoler
e72ef242c9
Merge pull request #1298 from csoler/v0.6-DebianPackaging
V0.6 debian packaging
2018-07-20 19:16:58 +02:00
Gioacchino Mazzurco
3fc9ff3fef
WIP Plug deep search into GXS search 2018-07-20 15:29:37 +02:00
Gioacchino Mazzurco
a31b06ab60
Merge branch 'master' into deep_search
Needed to make deep search and GXS search cooperate
2018-07-20 13:15:11 +02:00
csoler
d4fce07e4c
changed lrand48 to RSRandom for cross-plateform compatibility, in rsgxsnettunnel.cc 2018-07-19 23:46:31 +02:00
csoler
2bab688dec
fixed merge with upstream/master 2018-07-19 23:22:24 +02:00
csoler
b8062f2e21
Merge pull request #1294 from csoler/v0.6-GXS-DistSync3-TurtleSearch
V0.6 gxs dist sync3 turtle search
2018-07-19 22:59:43 +02:00
csoler
dac885e24d
made randomBias initilized with true random bytes at start 2018-07-18 21:22:38 +02:00
csoler
9b0a4b966e
removed extra call to loadConfiguration() 2018-07-18 21:20:51 +02:00
sehraf
55e99ef0d1
add auto detection of installed rapidjson 2018-07-16 23:22:04 +02:00
csoler
1de31493a9
fixed up display of GXS net tunnel info 2018-07-15 19:09:12 +02:00
csoler
fd45d44826
added interface to get statistics about GxsNetTunnel 2018-07-15 11:14:58 +02:00
csoler
b20bd0a454
added admin list to forum group data 2018-07-15 10:13:04 +02:00
csoler
6848a586f3
merged upstream/master 2018-07-08 21:17:48 +02:00
chelovechishko
b3dddeafdf add missing namespaces 2018-07-06 23:55:12 +09:00
csoler
0c45217fc0
merged upstream/master 2018-07-05 17:41:30 +02:00
csoler
98f8e4da0a
added per-item type limit for turtle search results 2018-07-05 17:40:06 +02:00
csoler
4a64ea5f1f
added optional use of dist sync in GroupFrameDialog 2018-07-05 14:00:04 +02:00
csoler
0cc87c9880
fixed bug causing search data result to not be forwarded correctly (missing request id) 2018-07-05 12:20:22 +02:00
csoler
0e37de3e11
made retrieval of group data manual instead of automatic 2018-07-05 11:43:55 +02:00
csoler
59c51a250b
removed debug switch to allow display of existing distant group search results 2018-07-05 10:16:48 +02:00
csoler
47e760a2c5
added a few missing mutexes in prevent searches to be shown when already known 2018-07-05 10:11:12 +02:00
csoler
2067b106e4
fixed missing code in passing turtle group data result to client service 2018-07-04 23:54:26 +02:00
csoler
8ad454723a
added group data request when search items are selected 2018-07-04 21:42:09 +02:00
Gioacchino Mazzurco
d3e5b760a2
DeepSearch index channels posts too
Improve indexing using RsUrl, store some relevant fields in stored url
2018-07-04 12:08:50 +02:00
Gioacchino Mazzurco
32014eaac1
Use proper path for DeepSearch xapian DB 2018-07-02 17:31:47 +02:00
Gioacchino Mazzurco
5a41b3cb37
Index only public channels 2018-07-02 17:31:47 +02:00
Gioacchino Mazzurco
0f63283f96
Add search capability to DeepSearch 2018-07-02 17:31:47 +02:00
Gioacchino Mazzurco
c15ae864b5
deep_search: use service serializer not serial_process
Avoid tricky pointers arithmetic, thanks Cyril for suggestion
2018-07-02 17:31:47 +02:00
Gioacchino Mazzurco
c0e92ddc6b
WIP Index GXS channels with xapian
Use temporary DB ATM
2018-07-02 17:29:54 +02:00
Gioacchino Mazzurco
ce61174d79
DROP before merge. Reduce INTEGRITY_CHECK_PERIOD
So it run each two 2 minutes and it's easy to debug deep search
2018-07-02 17:29:52 +02:00
Gioacchino Mazzurco
418c42bd11
Extra locators in cert invite made optional 2018-07-02 13:50:02 +02:00
Gioacchino Mazzurco
1dd707710b
Merge branch 'master' into extra_locators_merge 2018-07-02 12:22:23 +02:00
csoler
80a43fe3d5
added secure retrieval of distant groups 2018-06-30 21:52:25 +02:00
Gioacchino Mazzurco
1c63cec735
Expose some RsFiles method trought JSON API 2018-06-29 16:02:07 +02:00
Gioacchino Mazzurco
102558afdf
Merge fixes to serialization from master branch 2018-06-29 00:13:07 +02:00
sehraf
f7625e3526
fix json uint64 2018-06-28 20:25:10 +02:00
Gioacchino Mazzurco
d511b6648e
Extend JSON API to shutdown retroshare gracefully 2018-06-28 15:04:06 +02:00
Gioacchino Mazzurco
0ff80baed3
Extend JSON API with reasonable way to create location 2018-06-28 12:06:43 +02:00
csoler
db06c32e80
turned turtle encryption routine into a generic authenticated encryption method in librs::crypto 2018-06-28 10:01:57 +02:00
Gioacchino Mazzurco
4637fbaff5
Add login JSON API
Implement a "normal" way to login RsLoginHelper::attemptLogin
Implement a way to get locations list RsLoginHelper::getLocations
Enable JSON API into retroshare-android-service
2018-06-27 08:52:03 +02:00
csoler
00dfa0f3c2
added fallback for GXS GroupMessage UI to look into cached distant group data 2018-06-26 22:20:02 +02:00
Gioacchino Mazzurco
d14a455cf1
jsonapi-generator fix support for void methods
Thanks sehraf for reporting
retroshare://forum?name=fucking%20genius&id=8fd22bd8f99754461e7ba1ca8a727995&msgid=503d75bf7ed7fa7568eeae4db5c8d31a7e124c98
2018-06-26 22:01:17 +02:00
Gioacchino Mazzurco
cb11ad92ea
Merge branch 'master' into jsonapi 2018-06-26 15:19:25 +02:00
Gioacchino Mazzurco
502459a25a
Cleanup rapidjson inclusion
Fix compilation error of android service
2018-06-26 15:12:16 +02:00
Gioacchino Mazzurco
15f39129f1
Complete GxsChannels JSON API with blocking methods
RsGxsIfaceHelper::requestStatus expose it to JSON API
Implemented RsGxsIfaceHelper::waitToken to wait for GXS operations
RsItem::serial_process fix doxygen warning as it's a comment not documentation
RsTypeSerializer add JSON conversion methods for double [de]serialization not
	implemented yet
RsTypeSerializer_PRIVATE_{FROM,TO}_JSON_ARRAY fix doxygen warning as it's a
	comment not documentation
make GxsChannels::ExtraFileHash a bit more reasonable
jsonapi-generator fix unused variable warning if there is no input or output
	paramethers
jsonapi-generator fix generation for inerithed jsonapi methods
Convert to RsSerializable some Gxs structs for the JSON API
2018-06-26 13:20:24 +02:00
Gioacchino Mazzurco
d731b665db
Expose tokenservice methods trough GxsIfaceHelper 2018-06-25 10:44:39 +02:00
Gioacchino Mazzurco
2f4b9b3e20
Convert to RsTokenService::GxsRequestStatus
Indicate GxsRequest status with an enum instead of uint_* that make the
  code less readable and more prone to errors
2018-06-24 23:24:52 +02:00
Gioacchino Mazzurco
b4d2ce82c1
RsTokenService use enum for request status 2018-06-24 18:56:48 +02:00
Gioacchino Mazzurco
ec95b6d054
Remove unused misleading GXS request status
Something must be really strange to be finished and incomplete at same
  time..
2018-06-24 18:03:26 +02:00
csoler
e351d7257e
added retrieval of search results in UI 2018-06-24 16:55:38 +02:00
Gioacchino Mazzurco
7ad337c8d2
Implement automatic JSON API generation
qmake file add jsonapi-generator target to compile JSON API generator
qmake files add rs_jsonapi CONFIG option to enable/disable JSON API at compile
  time
RsTypeSerializer pass down same serialization flags when creating new context
  for nested objects serial job
RsGxsChannels expose a few methods through JSON API as example
Derive a few GXS types (RsGxsChannelGroup, RsGxsChannelPost, RsGxsFile,
  RsMsgMetaData) from RsSerializables so they can be used for the JSON API
Create RsGenericSerializer::SERIALIZATION_FLAG_YIELDING so JSON objects that
  miss some fields can be still deserialized, this improve API usability
SerializeContext offer friendly constructor with default paramethers
Add restbed 4.6 library as git submodule as most systems doesn't have it yet
Add a bit of documentation about JSON API into jsonapi-generator/README.adoc
Add JsonApiServer class to expose the JSON API via HTTP protocol
2018-06-24 16:28:33 +02:00
csoler
6ccc7654d6
added code to notify GxsBroadcast system with new distant search results 2018-06-23 22:25:36 +02:00
csoler
5b9666855d
fixed merge with upstream 2018-06-22 23:38:31 +02:00
csoler
2f159efb10
Merge pull request #1288 from csoler/v0.6-GxsFix
changed std::vector into std::set in notification system, hence remov…
2018-06-22 22:06:59 +02:00
csoler
84699db744
changed std::vector into std::set in notification system, hence removing lots of std::find(std::vector::begin(),std::vector::end(),T), causing quadratic costs in multiple places. 2018-06-21 15:46:59 +02:00
csoler
3981bc8e3b
extended notification system to add distant search result notification 2018-06-21 13:48:57 +02:00
csoler
5cb48c27de
renamed a few constants of GXS notify system into more consistent values 2018-06-21 09:26:03 +02:00
G10h4ck
9090205747
Merge pull request #1284 from G10h4ck/improve_build
Improve build and Windows Continuos Integration
2018-06-19 11:53:07 +02:00
csoler
79e676edbe
fixed re-load of GXS groups (forums/channels) when the read flag is changed 2018-06-18 22:27:05 +02:00
csoler
c67084b7de
fixed mutex problem in turtle-GXS search 2018-06-17 21:23:16 +02:00
csoler
84194b6234
sereral fixes to GXS distant search 2018-06-16 22:39:35 +02:00
csoler
7a135c5c43
added quick and dirty turtle search for channels in Files search tab 2018-06-13 22:46:27 +02:00
csoler
be1e127a93
added test search functions in rsgxsnetservice 2018-06-11 22:00:03 +02:00
Gioacchino Mazzurco
1f76108a9e
Remove some cruft from build files 2018-06-11 14:21:28 +02:00
csoler
6fb459ce64
added logic for GXS search in RsGxsNetTunnel and Gxs client net service 2018-06-10 22:34:17 +02:00
Gioacchino Mazzurco
6010104127
Merge commit '9886840b79d617a32764ad52ef4747f5fd999250' 2018-06-09 18:10:22 +02:00
Gioacchino Mazzurco
9886840b79
Provide proper constructor for SerializeContext
Deprecate constructor that depends on deprecated declarations.
2018-06-09 17:59:11 +02:00
Gioacchino Mazzurco
1825b263f0
ChunkMap::reAskPendingChunk fix unused parameter warning 2018-06-09 17:21:59 +02:00
cyril soler
8edb1f7535 fixed problem causing infinite loop of net reset in p3NetMgr 2018-06-08 14:32:56 +02:00
G10h4ck
f3b0f7af1f
Merge pull request #1280 from G10h4ck/channels_apiv2_improvements
Channels apiv2 improvements
2018-06-07 17:53:42 +02:00
G10h4ck
e5c72481ad
Merge pull request #1281 from G10h4ck/filesharing_apiv2_improvements
Extend a bit filesharing JSON API v2
2018-06-07 17:53:26 +02:00
Gioacchino Mazzurco
3eff851cdb
Improve deprecation of RS_TOKREQ_ANSTYPE_* 2018-06-07 14:57:31 +02:00
csoler
7caf06b57d
added structures for generic turtle search and access functions in Gxs objects 2018-06-06 23:15:29 +02:00
csoler
b5c1b8210b
added classes for both group data and group summary results in turtle search 2018-06-02 18:12:27 +02:00
csoler
90d7f55c40
finished implementing GXS search items 2018-05-31 15:41:54 +02:00
csoler
b0f391d66f
fixed compilation and re-licensed zeroconf/ 2018-05-30 21:45:18 +02:00
csoler
bc63726c4c
fixed compilation 2018-05-30 21:35:29 +02:00
csoler
8641da189c
relicensed util/ and moved rsaes to crypto/ 2018-05-30 21:34:38 +02:00
csoler
858dcfc14c
removed unused tempering in random number generator, added comments and license text 2018-05-30 21:19:53 +02:00
csoler
6cf2090149
relicensed tcponudp, turtle, unused, upnp, and part of util/ 2018-05-30 21:19:13 +02:00
csoler
b3853156ce
re-licensed services/ 2018-05-29 21:54:27 +02:00
csoler
70f09b654c
re-licensed serialiser/ 2018-05-29 21:27:12 +02:00
csoler
05e2f684a9
re-licensed rsitems and rsserver 2018-05-29 21:08:17 +02:00
csoler
ff8c37f169
fixed license in retroshare/ 2018-05-28 22:28:51 +02:00
csoler
b3277824eb
license fix in pqi 2018-05-28 22:03:39 +02:00
csoler
1fee544db7
re-licensed gxstrans, gxstunnel, pgp, plugins and half pqi 2018-05-26 14:45:43 +02:00
csoler
33fe823127
Merge pull request #1271 from sehraf/pr_compile-fix-unused-services
make wiki and photo services compile again
2018-05-26 11:22:47 +02:00
csoler
8a07f2c8c4
fixed wrong commit with copy-pasted code 2018-05-24 19:50:07 +02:00
csoler
d5627d4b22
fixed license in ft, grouter, and gxs 2018-05-22 22:03:11 +02:00
Gioacchino Mazzurco
1ad1fdc7be
p3NetMgrIMPL::checkNetAddress() notify if port change
Plus cleanups and proper sockaddr_storage copy
2018-05-22 19:17:37 +02:00
Gioacchino Mazzurco
0bf02e2bc3
pqissludp::Initiate_Connection() check remote_addr to be IPv4 before use 2018-05-22 19:14:25 +02:00
csoler
544b4af4c2
fixed license in chat, crypto, dht, file_sharing 2018-05-21 20:50:38 +02:00
csoler
50b360bf9d
added missing license to some libresapi files 2018-05-21 20:17:54 +02:00