Commit Graph

4220 Commits

Author SHA1 Message Date
cyril soler
f8f040bde9 fixed deadlock due to cross-locking RsGxsNetService and RsGxsGenExchange (reported by sss) 2016-12-16 10:03:23 +01:00
csoler
1ef11a27fd Merge pull request #599 from G10h4ck/qml_app_chat
Qml app chat
2016-12-15 23:21:11 +01:00
csoler
8637cfa42f added detection of flag change so that new TS is set on root of hierarchy and changes are made visible to friends at next update 2016-12-15 23:07:40 +01:00
csoler
08294deeba removed unused updateHash() functions in directory_storage. Fixed a bug that caused H(H(F)) to not be recomputed at start, causing e2e encryption to fail in some cases. 2016-12-14 22:58:49 +01:00
csoler
81dffbed84 Merge pull request #591 from G10h4ck/split_autologin
Made autologin optional at compile time
2016-12-14 16:45:45 +01:00
csoler
a8422028fe fixed compilation and set the default storage to 1year to comply with forum default 2016-12-14 09:59:20 +01:00
csoler
5953e563f4 added auto-consistency between store/sync periods 2016-12-13 21:12:34 +01:00
csoler
dd2a3c26de fixed serialisation bug in new UpdateMap code, and removed debug info from RsGxsNetService 2016-12-12 22:52:55 +01:00
csoler
0d94b683dd removed duplicate peerID/grpId in msg/grp update maps 2016-12-12 21:01:24 +01:00
csoler
478746f2b2 moved incoming msg time check to RsGenExchange validation method 2016-12-08 23:53:28 +01:00
csoler
8b697eb77a added check to prevent loading saving corrupted peer/grp ids in GXS update maps 2016-12-08 21:53:39 +01:00
Gio
c3aca0cf26 Implement a working Distant Chat prototype in Qml
Deprecate id field in JSON API as it may cause problems in Qml
Offer gxs_id field in JSON API as an id alternative
LibresapiLocalClient support callbacks now an instance may be shared for
  different tasks
Expose an instance of LibresapiLocalClient to Qml, type exposure is kept
  for retrocompatibility but deprecated
Qml app now has a tab that permit to exchange some message with selected
  distant peer
2016-12-08 15:56:23 +01:00
csoler
ae37787853 merged with upstream/master 2016-12-08 09:17:56 +01:00
csoler
6c4497a18c improved debug output in rsgxsutil. Added disabled code for removing old unused groups 2016-12-07 22:41:05 +01:00
csoler
d9416d3e3d added proper use of storage time parameter in group msg cleanup 2016-12-07 22:00:50 +01:00
Gio
9eef412b44 Expose libresapi for distant chat
Added macro to deprecate symbols usage in a crossplatform way.
Deprecated Request::mMethod and related stuff that make implementation
 more complex without advantage.
Added /chat/{initiate_distant_chat, distant_chat_status,
 close_distant_chat} to libresapi.
Solved subtle bug in ChatId::ChatId(std::string str) that caused zeroed
 DistantChatPeerId being created.
2016-12-07 20:29:33 +01:00
csoler
b03fe3d4c5 fixed computation of max update time for sync 2016-12-06 23:28:28 +01:00
csoler
68f7fff0d8 fixed saving bug in GrpConfigMap 2016-12-06 23:02:25 +01:00
csoler
a4c14c2212 improved serialisation methods in RsGxsNet items, and added serialisation for RsGrpConfigItem 2016-12-06 22:17:03 +01:00
csoler
661038d9b2 added a function to check keep/req times for consistency 2016-12-05 23:42:44 +01:00
csoler
7afb91d1db added machinery to allow to set/get sync and store periods for GXS groups 2016-12-05 22:14:48 +01:00
csoler
d2ef2248c6 added entry in rsgxsnetservice to change sync params 2016-12-04 23:42:26 +01:00
csoler
5612647672 added new GrpServerConfigMap to store additional data on groups for net service. Removed pointers to simplify the code 2016-12-04 23:40:52 +01:00
csoler
143829c881 moved constants for GXS group management into rsgxs.h 2016-12-04 23:40:39 +01:00
csoler
f3a34bf5a3 created a new item to hold/save per gxs group information (statistics, update delays) 2016-12-04 23:39:45 +01:00
csoler
c6d21e4abc changed old msg update default strategy to one month 2016-12-04 23:39:10 +01:00
csoler
bba1a719fe removed deprecated bandwidth recorder code in RsGxsNetService 2016-12-04 23:38:50 +01:00
Gio
7c35411a8f Suppress compiler warning about autologin parameter not used 2016-12-03 22:22:13 +01:00
csoler
cf8dac2e74 fixed initialisation of random salt in directory updater when no config file is present 2016-12-03 21:00:16 +01:00
Gio
8656452c68 Made autologin optional at compile time
Autologin is disabled by default at compile time, and a warning to
discourage it's usage is printed if it is enabled.
This will make default RetroShare build safer and reduce dependencies as
example we don't depends anymore on gnome keyring is not needed in default
build for linux anymore.
2016-12-03 20:04:25 +01:00
csoler
ff271c6732 force recheck of existing files at start, to possibly re-hash files that were not already 2016-12-02 19:02:41 +01:00
csoler
d986216f55 remove non existing shared directories when not found on the disk 2016-12-01 23:27:34 +01:00
Phenom
674b6de381 Fix Some gcc warnings 383 to 208 lines
Left explicit #warning and deprecated.
Some lines are wrong indented and produce mal formed code.
2016-11-30 22:01:01 +01:00
csoler
137d71c0d9 extended the window during which the GUI is told to tell that the update of shared dirs is done from 5 to 15 secs 2016-11-27 20:57:51 +01:00
csoler
f3d7948238 turned one error into a warning in p3filelists.cc when requesting an unexisting ref 2016-11-27 20:57:51 +01:00
csoler
2a758dd880 changed shared files tree header when updating 2016-11-26 19:19:15 +01:00
csoler
aa4ecd7d87 added limit to calls of PreMods() in SharedFilesDialog so as to keep CPU load minimal when updating dirs from friends. Disabled sorting when new data comes. 2016-11-26 18:58:02 +01:00
csoler
3386238f35 improved preservation of directories when updating, and allow to temporarily disable sorting while an update is received 2016-11-26 11:03:53 +01:00
mr-alice
729c05af4f merged with upstream code 2016-11-25 21:09:34 +01:00
csoler
d975a18fd6 added doubling of buffer size in checkSectionSize when missing space. Used 1024 instead of 1000 as start size 2016-11-25 21:06:40 +01:00
mr-alice
2953957e66 added full re-scan when symbolic links are (des)activated, since the directory time stamps will not trigger an update 2016-11-25 20:50:10 +01:00
mr-alice
3f3efca22d removed canonicalize_file_name from MacOS compilation 2016-11-25 20:33:27 +01:00
csoler
5fbc263a36 applied removal of realloc to other files in file_sharing/ directory 2016-11-25 20:05:23 +01:00
csoler
0cb7778ceb removed all calls to realloc causing major slow down on windows where its implementation is extremely inefficient 2016-11-25 18:52:04 +01:00
mr-alice
5f69c9ea1f added an option to follow symbolic links or not, and anti-loop system during directories traversal 2016-11-24 23:42:56 +01:00
mr-alice
66c3259f9c removed debug output 2016-11-23 19:12:38 +01:00
mr-alice
fb70cb2e9e removed duplicate copy/rename file methods from ftController 2016-11-22 23:39:09 +01:00
mr-alice
47b825833a fixed the download queue, and allow queued files to start when sources get online and empty slots are present 2016-11-22 23:19:34 +01:00
Cyril Soler
2faefe8c9d Merge pull request #581 from csoler/v0.6-FileListsOptim
added change in TS for shared directories when virtual name changes
2016-11-21 20:38:45 +01:00
csoler
172b513cd3 added change in TS for shared directories when virtual name changes 2016-11-21 16:14:11 +01:00
cyril soler
5d1f479a42 fixed bug preventing plugins loaded as symbolic links to be considered by folderIterator 2016-11-21 10:13:26 +01:00
csoler
9718385333 added missing mutex probably causing crashes when saving directory storage 2016-11-19 20:15:53 +01:00
Phenom
a8782f0612 Fix Crash when checking a big-big file storage.
After check lot of file with errors, error_string become to big and RS
crash.
2016-11-18 23:04:32 +01:00
csoler
4bdfc6e74e removed unused old file 2016-11-18 17:56:42 +01:00
csoler
bdc8086c2e added missing mChanged=true when removign a directory 2016-11-17 21:27:37 +01:00
csoler
5339e99127 force re-sweep of remote directory that has been updated with new dir content to 10 sec 2016-11-17 21:00:34 +01:00
csoler
36755c4092 added load/save of own file hierarchy 2016-11-17 19:03:53 +01:00
cyril soler
ff4e6f3b2c added missing time.h for windows compilation 2016-11-17 14:23:25 +01:00
cyril soler
1b9fe3bc8e removed symbolic links handling from windows compilation 2016-11-17 09:31:05 +01:00
Cyril Soler
fe965d2335 Merge pull request #572 from csoler/v0.6-FileListsOptim
V0.6 file lists optim
2016-11-16 22:12:55 +01:00
csoler
ba78007cf1 added parameter to disallow hashing files which time is in the future (as they severely perturbate the synchronisation process) 2016-11-16 21:49:27 +01:00
csoler
6272856b5e added param to folderIterator to skip/follow symbolic links 2016-11-16 21:41:32 +01:00
thunder2
e3d832cfd1 Added missing include time.h for Windows compile 2016-11-16 10:47:34 +01:00
csoler
608d0d0a65 auto-remove remote directories for friends offline for too long (depending on whether the dir is empty or not) and also remove unused dir files 2016-11-15 21:33:39 +01:00
csoler
99860c1eb0 only allocate a remote directory entry if the peer is online, or the file already exists 2016-11-15 20:10:18 +01:00
csoler
8c8cc88503 fixed problems with negative time shifts in DirDetails causing multiple GUI bugs in File Lists and Search 2016-11-14 21:58:58 +01:00
cyril soler
d433713bd0 fixed possible uninitialised memory read in folderiterator for windows, and changed file folderiterator.cc to unix format 2016-11-14 14:10:49 +01:00
Reedych
baaa82af58 Updated link for Qt 2016-11-13 01:39:54 +07:00
csoler
c07dd83ba9 merged upstream/master 2016-11-12 15:53:17 +01:00
csoler
5ef4e752d9 added count of total number of files and total file isze on top of shared directories 2016-11-11 20:25:11 +01:00
Phenom
2827233880 Fix windows Compil with sys/socket.h 2016-11-08 23:04:34 +01:00
Gio
8ab3c7de26 Merge branch 'master' into android 2016-11-07 14:37:23 +01:00
Gio
beaf479732 Remove rotten code in rsloginhandler autologin 2016-11-07 14:14:28 +01:00
cyril soler
461975f115 generally prevent threads to start twice, and fixed bug causing DirWatcher to be run twice 2016-11-07 10:09:28 +01:00
Cyril Soler
17fb682c8d Merge pull request #559 from jolavillette/PacketSlicingGroupingFlags
Create 2 #define in pqistreamer to easily disable packet slicing/grouping
2016-11-05 21:09:49 +01:00
BuildTools
78d6735b52 Create 2 #define in pqistreamer to easily disable packet slicing/grouping 2016-11-05 19:58:06 +01:00
csoler
e4e366766f fixed bug that caused hierarchies that contain files being hashed to not send updates when the hash is finished 2016-11-05 17:32:40 +01:00
csoler
a97fa1e2cb fixed generation of pseudo-random request ids in p3filelists 2016-11-05 16:07:30 +01:00
csoler
1e919a141c set delay between directory sweep to 60 secs and a-synced sweeps for different friends. Set drop time to 600 for un-answered dir sync requests 2016-11-05 15:30:07 +01:00
BuildTools
192cbe1eda Create two #define in pqistreamer.cc to easily disable packet slicing and/or grouping 2016-11-05 14:57:39 +01:00
csoler
ffcf44b3fe removing call to drand48(). RSRandom is safer 2016-11-04 21:54:28 +01:00
csoler
2ef51edb8c fixed wrong comment about RS_FILE_HINT_SEARCHABLE flag 2016-11-04 21:51:18 +01:00
csoler
79632ed27b fixed compilation on windows 2016-11-04 21:48:58 +01:00
csoler
f39272a709 fixed compilation in debug mode for p3filelists.cc 2016-11-04 21:43:09 +01:00
mr-alice
2bb9a87b3b merged and fixed conflict with upstream/master 2016-11-04 13:52:11 +01:00
Cyril Soler
45cb442834 Merge pull request #558 from csoler/v0.6-FileListsOptim
reducing linear cost of allocateNewIndex to constant. Should improve …
2016-11-04 09:47:49 +01:00
csoler
8dacb22049 reducing linear cost of allocateNewIndex to constant. Should improve huge lags when receiving big file lists for the first time 2016-11-03 22:32:27 +01:00
mr-alice
e324d7d251 removed warning in ftserver for rejected non encrypted tunnels 2016-11-03 20:31:47 +01:00
mr-alice
29b5bfe049 attempt to fixed leading tabs 2016-11-03 08:50:13 +01:00
Phenom
2db8dbd45f Fix El Capitan OSX 10.11 Compil 2016-11-02 21:40:46 +01:00
mr-alice
1c2cfb2a03 removed debug info in ftServer 2016-11-02 21:32:14 +01:00
mr-alice
5aef67d332 fixed tooltips in ShareManager, and fixed anonymous search mechanism 2016-11-02 21:31:14 +01:00
mr-alice
d2118c5329 supressed deadlock in ftController due to calling ftServer from ftcontroller itself 2016-11-02 20:51:42 +01:00
mr-alice
8c7c7647b0 fixed conflicts in merging upstream/master to v0.6-FTEncryption 2016-11-01 14:23:13 +01:00
mr-alice
6a3610e6cb disallow double tunnels (encrypted+clear) in Accepted mode, since it is not needed 2016-11-01 14:13:43 +01:00
mr-alice
ffdac640d8 fixed swarming with encrypted end-to-end tunnels 2016-11-01 11:57:25 +01:00
mr-alice
9d586bcfb0 made a drastic simplification pass on the ShareManager, which now only needs a single window except for selecting files using a QFileDialog 2016-10-31 16:28:26 +01:00
mr-alice
e8e054eeae addednew flag for anonymous search. Merged the two browsable flags in one single flag. 2016-10-31 14:26:01 +01:00
mr-alice
5b9ef04358 improved debug output in ftserver 2016-10-30 15:33:05 +01:00
mr-alice
def20a3f4c encrypted FT works. Fixed last bugs in ftServer 2016-10-30 15:11:22 +01:00
mr-alice
34dcb410b4 fixed a few bugs in ftServer for encrypted tunnel management 2016-10-30 11:36:00 +01:00
mr-alice
9a881619e1 added record for H(H(F)) in LocalDirectoryStorage 2016-10-29 18:35:48 +02:00
mr-alice
d843c1c1a6 put consts behind serial_size() and serialise() in turtle items and ft items 2016-10-29 18:18:02 +02:00
mr-alice
babc126be3 added default encryption policy variable and GUI to change it 2016-10-29 17:59:03 +02:00
mr-alice
8486346368 added new encryption/authentication format AEAD_chacha20_sha256 2016-10-26 22:05:56 +02:00
mr-alice
c87ca67120 improved efficiency of AEAD 2016-10-26 18:15:47 +02:00
mr-alice
88298b997e added check for cleartext in AEAD test vector #1 2016-10-26 14:45:21 +02:00
mr-alice
42f6f26820 fixed bug in AEAD 2016-10-26 14:36:35 +02:00
Gio
ea42d822c2 Merge branch 'master' into android 2016-10-26 13:43:24 +02:00
mr-alice
177752e6af fixed a few bugs in AEAD construction based on test results 2016-10-25 23:16:36 +02:00
mr-alice
0570427c1d added google test for chacha20 code 2016-10-25 14:09:39 +02:00
mr-alice
0387a28e78 added methods to get files from hash(hash) in directory_storage and ftServer 2016-10-25 00:08:27 +02:00
mr-alice
2d72b88130 added code for AEAD construction 2016-10-24 15:59:34 +02:00
hunbernd
54ba617229 Fix: unable to upload files on Windows
Caused by multiple unneeded / character in file path.
2016-10-23 20:42:59 +02:00
mr-alice
9d32406669 added ft decryption routine 2016-10-19 22:49:51 +02:00
mr-alice
3ad0a81d8f added encryption routine for FT 2016-10-19 21:30:37 +02:00
mr-alice
997154f9c5 added preliminary implementation of chacha20/poly1305 2016-10-13 15:13:56 +02:00
Gio
8de054812b Merge branch 'master' into less_warning 2016-10-13 00:09:53 +02:00
Gio
633a6cf8c2 Fixed a bunch of warnings in safe ways 2016-10-13 00:01:33 +02:00
csoler
10c269ec5a removed warning when friend directory list cannot be found 2016-10-12 23:31:32 +02:00
csoler
bd9a464d11 added deterministic but unredictable hash generation for dir hashes, which should be preserved accross reboots. Should fix the msg from friends sending requests for the "wrong" dir hashes. 2016-10-12 23:20:38 +02:00
cyril soler
3c5e12ae84 fixed compilation on windows 2016-10-10 11:29:03 +02:00
csoler
4e48005047 replaced explicit old code in cleanupDirectory() by new code based on FolderIterator 2016-10-09 21:43:31 +02:00
csoler
957d48b5fc removed folderIterator::d_name() because it duplicates file_name() 2016-10-09 21:43:31 +02:00
cyril soler
7cd31aa788 fixed bug preventign update of subdirs after last commit 2016-10-05 14:15:12 +02:00
cyril soler
854eebb2cb only update subfiles and subdirs list during dir watching sweep when the TS of the dir has changed. Greatly improve cost of regular directory watching process 2016-10-05 11:00:01 +02:00
csoler
20cd123e55 removed annoying ERROR output that is more a debug info than a real error, in p3filelists 2016-10-04 21:41:38 +02:00
csoler
e42dae8f78 continue sending packet slicing probes in case the peer has restarted 2016-10-04 21:34:23 +02:00
csoler
b08a62afc9 restored delay between location cleaning to 5 mins 2016-10-04 21:25:56 +02:00
csoler
133676fdee simplified the code to remove old locations and fixed bug that in some situation would let a PGP key with no locations 2016-10-04 21:25:56 +02:00
csoler
ebfc82cc1e save/restore selection in shared dir list tree view 2016-10-03 21:44:34 +02:00
csoler
ed8d78660f added missing mChanged=false that caused remote directories to save far too often 2016-10-03 20:49:49 +02:00
csoler
c968490b43 switched to floating point time for bandwidth estimation in pqistreamer. Helps a lot RTTs since rounding to int prveviously caused packets to be delayed up to 1 sec (improvement by Jollavilette) 2016-10-01 22:15:06 +02:00
Bryon Gloden, CISSP®
9ae05112be uninitialized variable: size
[libretroshare/src/file_sharing/hash_cache.cc:182]: (error) Uninitialized variable: size

Found by https://github.com/bryongloden/cppcheck
2016-10-01 12:01:09 -04:00
csoler
a75115585b do not send un-hashed files to friends, and allow to re-send the directory content when all files are hashed 2016-10-01 15:46:32 +02:00
csoler
84341f26b3 changed _outgoing_file_hashes into a new map that connects services to tunnel ID instead of file hash, hence avoiding to remove a hash on server side when a tunnel is closed (bug found by Jolavillette) 2016-09-29 22:30:42 +02:00
csoler
b62b66a24c replace std::vector for std::set to represent _hashes_to_remove, so as to avoid duplicates (suggested by Jo) 2016-09-29 22:30:42 +02:00
csoler
e185bcdab4 fixed removal of directory when removing a friend 2016-09-28 23:02:24 +02:00
csoler
6e4ba76bbb improved display of shared directories for friends with no update info 2016-09-28 21:55:13 +02:00
Phenom
9672fe33d0 Fix InternalFileHierarchyStorage::check, error_string will never be
shown as always return true.
2016-09-28 11:35:44 +02:00
csoler
bf0777fd9e fixed update of DirHash list and FileHash list when files and dirs are removed, while keeping the cost low 2016-09-27 23:13:59 +02:00
csoler
37a4e7750c removed debug info in directory_storage.cc 2016-09-27 21:10:18 +02:00
cyril soler
2916c8b7c4 removed debug output in folderiterator 2016-09-27 10:14:17 +02:00
sehraf
9d72b064e1 add thread names & remove some warnings 2016-09-27 09:50:59 +02:00
csoler
a2ff5d27c5 simplified p3FileList code a little bit: removed mFriendIndexTab and made locked_getFriendIndex() create the remote directories on demand 2016-09-26 22:06:30 +02:00
csoler
fc1a350869 added automated import of old hash cache in order to avoid re-hashing everything when switching to the new system 2016-09-26 21:12:13 +02:00
cyril soler
15f69b2236 fixed crash in debug output in p3filelists 2016-09-26 11:11:22 +02:00
cyril soler
b95fbe34bc added a few more missing checks for null entries in mRemoteDirectories 2016-09-26 10:49:59 +02:00
cyril soler
3beaa974b0 fixed potential crash when an entry in mRemoteDirectories is NULL 2016-09-26 10:03:51 +02:00
csoler
1125dfe6d1 fixed folder iterator to properly handle broken symbolic links 2016-09-25 23:42:20 +02:00