Commit Graph

6478 Commits

Author SHA1 Message Date
csoler
7455013fc2 fixed std::cerr => RsErr() 2021-12-13 20:58:53 +01:00
csoler
24e862ae25 moved event loop in TorManager to the TorManager class 2021-12-13 20:28:07 +01:00
Gioacchino Mazzurco
e62b847234
Integrate python3 JSON API generator into libretroshare
Add more options to CMake:
  Support for JSON API
  Support for forum deep index

Fix bitdht CMake project name
General CMake files improvements
2021-12-13 18:46:56 +01:00
csoler
1c576411fb fixed control port reading 2021-12-10 18:01:21 +01:00
csoler
1571446a2e debugged pipe system with tor executable 2021-12-10 16:29:10 +01:00
csoler
7c77cfd603 fixed a few bugs in new TorManager 2021-12-09 22:19:00 +01:00
csoler
a757419d65 fixed compilation 2021-12-09 21:04:49 +01:00
Gioacchino Mazzurco
6a92b99da3
Initial CMake support for libretroshare
libretroshare (not all build options yet) and it's dependencies can now
  be built using CMake instead of qmake.
Even Qt itself deprecated qmake, which is not developed anymore, as
  build system and it was making many things much more difficult
  and requiring an enormous amount of black magic to support a wide
  range of platforms.
libretroshare can now easly be build as static or shared library with
  simple commands and a maintaniable build system:
```
cmake \
	-D RS_LIBRETROSHARE_STATIC=OFF -D RS_LIBRETROSHARE_SHARED=ON \
	-S $YOUR_RS_SOURCE_DIR/libretroshare/ -B .
make
```
2021-12-09 13:04:06 +01:00
Gioacchino Mazzurco
94bd099407
Rename DATA_DIR macro to less polluting RS_DATA_DIR 2021-12-09 12:56:48 +01:00
G10h4ck
e55fa2b9d5
Merge pull request #2517 from G10h4ck/android_without_qt
Run on Android without Qt
2021-12-08 13:35:03 +01:00
csoler
e0812dce83 added back read attempt for control port 2021-12-07 21:20:19 +01:00
csoler
b323a1635e fixed compilation. Qt is completely gone 2021-12-06 22:33:50 +01:00
csoler
7dc5c90d63 finished removing latest Qt bits 2021-12-06 22:08:56 +01:00
csoler
e75d312724 removed lots of signals/slots 2021-12-05 22:14:19 +01:00
csoler
bb37e2692b removed more QString, QHostAddress, QFile, QDir,... 2021-12-05 00:02:12 +01:00
csoler
b03802fa1b turned TorProcess into a non-Qt object, using built-in popen3 system 2021-12-02 23:15:06 +01:00
csoler
d7afbea1dd progress in using ByteArray+std::string 2021-12-01 23:05:16 +01:00
Gioacchino Mazzurco
2095dae95d
Fix build with older Java < 7 2021-11-30 17:00:02 +01:00
Gioacchino Mazzurco
856ce2ffb1
Do not depend on Qt at all on Android
Do the necessary modifications to not depend on Qt to run on Android
  both in libretroshare and in retroshare-service
2021-11-30 11:55:15 +01:00
csoler
6a4cdcc471 continue on switching QString and QByteArray 2021-11-29 22:59:46 +01:00
csoler
e4fcf26ea8
Merge pull request #2500 from PhenomRetroShare/Add_ConnectFriendWizard_Imp
Add ConnectFriendWizard improvement.
2021-11-29 21:29:50 +01:00
G10h4ck
941ec42502
Merge pull request #2513 from G10h4ck/forum_deep_search_wildcard
Forum deep search support wildcard* search
2021-11-26 17:23:09 +01:00
G10h4ck
8c52535860
Merge pull request #2508 from G10h4ck/android_ifaddrs
libretroshare Android Qt network dependency optional
2021-11-26 17:22:51 +01:00
csoler
e4ce32bef8 switching QString to std::string and QByteArray to ByteArray. Unfinished yet. 2021-11-25 23:28:01 +01:00
csoler
3845dc1ea7 added new files 2021-11-22 20:06:01 +01:00
Gioacchino Mazzurco
1e9a26893c
Forum deep search support wildcard* search
Xapian have support for wildcard search
  wild* matches wild, wildcard, wildcat, wilderness
  but it need to be enabled by passing a specific flag to the query
  parser, this is very useful for forum search so enable it in addition
  to default Xapian search capabilities
2021-11-16 10:52:18 +01:00
Gioacchino Mazzurco
cd5dad6a75
Rename GXS pullFromPeers to pullFromPeers
According to what discussed with Cyril
2021-11-12 19:11:02 +01:00
Gioacchino Mazzurco
ebbd8cf938
Forums expose API to request syncronization 2021-11-12 18:46:36 +01:00
Gioacchino Mazzurco
fc404bd5d8
RsGxsNetService trigger pulling on group subscribe 2021-11-12 18:43:52 +01:00
Gioacchino Mazzurco
6295e91304
Request pull from peers when GXS message is created 2021-11-12 18:43:52 +01:00
Gioacchino Mazzurco
b42323013e
Fix includes in rsnxs.h 2021-11-12 18:43:49 +01:00
Gioacchino Mazzurco
a7f1e94cea
Request pull from peers when GXS group is created 2021-11-12 18:42:55 +01:00
Gioacchino Mazzurco
a374f1dc6b
Implement RsNxsSerialiser::create_item for RsNxsPullRequestItem 2021-11-12 18:41:18 +01:00
Gioacchino Mazzurco
e4f25a558d
Implement pull request mechanism in RsGxsNetService
This could be used to request the online peers to pull updates from us
  ASAP, as an exaple when a group is created a pull request can be
  emitted too so the online peers pull the groups from us ASAP instead
  of waiting for the usual 60 seconds. A mechanism like this is
  especially useful on mobile phones where the internet connection is
  usually turned on only in a few moments (as an example while the user
  is interacting with the app).
Cleanup a few old corners in the code keeping retro-compatibility and
  make the code more welcoming to new developers.
Put a bunch of dead code under #ifdef.
2021-11-12 18:41:10 +01:00
Gioacchino Mazzurco
11f17fef40
libretroshare Android Qt network dependency optional
One of the reason libretroshare dependend on Qt on Android
  and in particular in networking module is the lack of
  `getifaddrs` with API level < 24, we included Android
  Gingerbread internal implementation so this dependency can be avoided
  at compile time.
The code depending on Qt has been placed under `#if` and can be enabled
  at compile time by appending `DEFINES+=LIBRETROSHARE_ANDROID_IFADDRS_QT`
  to `qmake` command line.
2021-11-12 16:02:53 +01:00
csoler
4d06ab2b4a Merge remote-tracking branch 'upstream/master' into v0.6-TorControl 2021-11-11 18:28:02 +01:00
Phenom
4cc0b9f492 Fix rsGetHostByNameSpecDNS by closing socket. 2021-11-08 10:20:44 +01:00
Phenom
a072b151f5 Add ConnectFriendWizard improvement.
Add cert details in friendCertCleanLabel tooltip.
Use qss for background color of friendCertCleanLabel.
Add Known IP in final view.
2021-11-06 14:10:17 +01:00
Gioacchino Mazzurco
e8b97405b9
Fix android build due missing include 2021-11-06 11:35:28 +01:00
Phenom
91a35f4a21 Change some code according G10h4ck remarks. 2021-11-06 00:32:36 +01:00
Phenom
7755f85c4c Move DNS stuff to single new file rsdnsutils.cc. 2021-11-05 22:48:41 +01:00
Phenom
81d2ddd7c7 Enable IPv6 DNS ExtIpFinder
Now empty node with only IPv6 can connect to other.
2021-11-05 22:48:41 +01:00
Phenom
a09db6717b Add ability to retrieve External IP using DNS server.
IPV6 compatible.
2021-11-05 22:48:41 +01:00
Gioacchino Mazzurco
fa48b03fac
mark single argument RsStackMutex costructor explicit 2021-11-05 15:31:08 +01:00
Gioacchino Mazzurco
a9fe1ba6de
Make DirStub serialization consistent on all architectures
Thanks elRepo.io developers to detect and report this bug with detail
https://gitlab.com/elRepo.io/elRepo.io-android/-/issues/52
2021-11-05 12:02:56 +01:00
Gioacchino Mazzurco
16ca0dc52c
RsThread fix warning and cleanup
Avoid compiler warning due to virtual method being called in destructor
  at this point the empty default version would be called without damage
  but making the compiler concernig about the semantic being different
  from the one the programmer meant.
Delete old superseeded function and do not depend on it on RsThread.
2021-11-04 19:17:57 +01:00
Phenom
5e9bc9c2b8 Fix RsThread when nothing to do and run finish before start. 2021-11-03 17:14:11 +01:00
thunder2
7be575045b Fixed git update of submodule supportlibs/libsam3 for MinGW compile 2021-11-01 18:45:10 +01:00
csoler
7821b29893 fixed additional GPG->Pgp names 2021-10-29 20:29:18 +02:00
csoler
7672ffa0ec fixed casing of PGP into Pgp 2021-10-29 19:05:54 +02:00
csoler
fdac22f49c renamed remaining *GPG* names into *PGP* 2021-10-29 19:02:09 +02:00
csoler
5e37bd42e4 renamed isGPGAccepted into isPGPAccepted 2021-10-29 18:57:58 +02:00
csoler
b328c3a493 renamed AuthGPG into AuthPGP 2021-10-29 18:51:40 +02:00
Gioacchino Mazzurco
62810d32e1
deep_search: fix compilation with old Xapian versions 2021-10-28 09:53:55 +02:00
Gioacchino Mazzurco
0b58740174
Properly avoid private forum leak in deep search
mGroupFlags & GXS_SERV::FLAG_PRIVACY_PUBLIC is always true for forums
  even if they are circle restricted, use circle flags to check if it
  is really public
2021-10-28 09:53:55 +02:00
Gioacchino Mazzurco
2196505d19
RsGxsForumsDistantSearchEvent fix event type 2021-10-28 09:53:54 +02:00
Gioacchino Mazzurco
bf8ddf498e
Fix Android compilation 2021-10-28 09:53:54 +02:00
Gioacchino Mazzurco
dcb2bee8cc
Epurate this branch from channels deep search changes 2021-10-28 09:53:54 +02:00
Gioacchino Mazzurco
9c38eed648
Implement deep indexing and search for forums
RsGxsNetTunnelService::receiveSearchRequest handle no results case
  properly
RsNxsObserver::handleDistantSearchRequest improve method behaviour
  documentation
RsTurtleClientService Improve documentation
2021-10-28 09:53:48 +02:00
Gioacchino Mazzurco
1b551d809f
First working prototype of GXS service search
Channels are now able to take advantage of the new deep search
  goodies

Rebase on top of master 2021/10/19
2021-10-28 09:51:29 +02:00
Gioacchino Mazzurco
ab349a8157
Use unannotated pointer as per Cyril taste 2021-10-28 09:51:29 +02:00
Gioacchino Mazzurco
cef43fe048
Notify one deletion per event as Cyril suggested 2021-10-28 09:51:29 +02:00
Gioacchino Mazzurco
045069c3e6
Implement proper GXS message deletion notification
GxsForums propagate message deletion notification as RsEvent
2021-10-28 09:51:29 +02:00
G10h4ck
b920263947
Merge pull request #2442 from G10h4ck/notify_hashing_file_completed
Emit an event when a shared file hashing complete
2021-10-28 09:24:45 +02:00
Gioacchino Mazzurco
b659643748
Attempt to fix non sam3 builds 2021-10-25 15:50:19 +02:00
csoler
dbb6a7471e fixed compilation (fix by sehraf) 2021-10-24 22:26:10 +02:00
csoler
3ddf3d0853
Merge pull request #2132 from sehraf/pr_add_i2p_sam3
Replace I2P BOB with SAMv3
2021-10-24 20:39:22 +02:00
Gioacchino Mazzurco
34593d1b6f
Emit an event when a shared file hashing complete
Properly notify when a shared file has been hashed
Deprecate event with arbitrary data packed in std::string
2021-10-19 18:23:55 +02:00
G10h4ck
58016fff65
Merge pull request #2444 from G10h4ck/single_file_share_plus_cleanup
Single file share plus cleanup
2021-10-19 15:45:32 +02:00
csoler
9a440e077e automatically close ongoing uploads when we stop sharing an extra file 2021-09-21 20:47:25 +02:00
csoler
0ca399ebf5
Merge pull request #2467 from csoler/v0.6-BugFixing_13
V0.6 bug fixing 13
2021-09-06 10:08:23 +02:00
Gioacchino Mazzurco
19915a8eb4
Fix broken line endings 2021-09-03 14:56:45 +02:00
Gioacchino Mazzurco
a18d6aaa1e
Add JSON API to get/set storage and sync GXS time 2021-09-03 14:55:03 +02:00
csoler
e22c5c9702 added bool return value to denyLobbyInvite() and marked overriding methods in p3msgs accordingly 2021-08-29 21:15:52 +02:00
csoler
5e851b4efd trying to fix compilation on windows 2021-08-28 21:46:02 +02:00
csoler
f5f608dbec trying to fix compilation on windows 2021-08-28 21:39:12 +02:00
csoler
563fc14532
Merge pull request #2459 from hunbernd/fix/partialfiles
Fix: additional / when combining file paths
2021-08-22 21:30:01 +02:00
csoler
3de68bf5e5 Merge remote-tracking branch 'upstream/master' into v0.6-TorControl 2021-08-15 15:07:58 +02:00
csoler
8b586412c2 Merge remote-tracking branch 'upstream/master' into v0.6-PGPHandler 2021-08-15 10:09:45 +02:00
csoler
020ef61297 fixed compilation 2021-08-15 09:41:30 +02:00
csoler
b084b20280 removed getAuthGPG and replaced AuthGPG with a class with static members 2021-08-14 14:56:28 +02:00
csoler
b8f4e64393 initial split of PHPHandler into two classes 2021-08-11 16:02:02 +02:00
csoler
4db6ac92e7 initial split of PHPHandler into two classes 2021-08-11 16:01:45 +02:00
Gioacchino Mazzurco
8bed99cc9f
Fix compilation with C++17 2021-08-06 12:15:34 +02:00
Gioacchino Mazzurco
e850e00a82
Optimization, cleanup, compiler warning fix
Chores I have made while working on single file share
2021-07-19 16:40:13 +02:00
Gioacchino Mazzurco
817a961013
Improve RsDirUtil::lastWriteTime error reporting 2021-07-18 22:41:14 +02:00
Gioacchino Mazzurco
9970f9d22f
Avoid leaking single shared file path in search results
Single shared files are a bit special and contain the full path in the
  name because they are not shared as part of a directory, epurate the
  path component from matching process and from search result
2021-07-18 21:16:46 +02:00
Gioacchino Mazzurco
e1580868dc
Avoid leaking non browsable shared single files to friends 2021-07-18 21:16:46 +02:00
Gioacchino Mazzurco
fc198d4e6d
libretroshare: add share single files (no dir, no extra)
Add capability to libretroshare to share single files without sharing
  the whole folder containing it, this is expecially useful in Android
  where files are organized in a peculiar way that render classic way of
  sharing folder almost unusable. Using extra files which was already
  implemented doesn't solve this use case as extra files are limited in
  time and dosn't support search and sharing permissions.
RetroShare GUI works fine if a single file is added as shared dir via
  JSON API, but probably would need tweaking some flags in file picker
  to give the ability to the user.
2021-07-18 21:16:45 +02:00
csoler
1f10be1c90
Merge pull request #2439 from csoler/v0.6-BugFixing_12
fixed errors in libretroshare.pro
2021-07-15 17:18:36 +02:00
csoler
0c98b7f178
Merge pull request #2438 from csoler/v0.6-rsHistory
[WIP] Documenting rsHistory.h to bring history to JSON api
2021-07-04 23:39:26 +02:00
csoler
abf481b0a1 removal of slignal/slots 2021-07-04 18:27:12 +02:00
csoler
b6156bff00 fixed compilation for appveyor 2021-07-04 14:06:37 +02:00
csoler
4e4427f0bd fixed errors in libretroshare.pro 2021-07-03 22:01:07 +02:00
csoler
8505544294 removed signals in HiddenService class 2021-07-03 21:54:44 +02:00
csoler
4833a8fdc4 added json api description for the rest of RsHistory 2021-07-03 20:48:47 +02:00
csoler
d6ccd75a7f started documenting rsHistory.h to bring history to JSON api 2021-07-03 00:31:09 +02:00
csoler
ae79261cbc fixed bootstrapping of Tor in retroshare-service 2021-07-02 00:11:10 +02:00
csoler
da86da29ff attempt at fixing tor bootstrap. Not working yet 2021-06-29 00:23:32 +02:00
csoler
139b22b41a added rstor.h file 2021-06-27 18:14:22 +02:00