Adam Cigánek
Adam Cigánek
A directory content and its version vector can get out of sync which could lead to a two conflicting versions of a directory to be incorrectly merged losing the changes...
There are multiple issues with moving files/directories: ## Cases ### 1. Loss of atomicity after partial sync Move is an atomic operation on the replica performing the move - that...
The protocol currently has several security weaknesses that should be addressed: - [x] 1. The initial handshake is neither encrypted, nor authenticated - [ ] 2. Message headers are not...
Concurrent writes were [disabled](https://github.com/equalitie/ouisync/commit/ba19ac6cccf3ecf3fd0fad41d7a86106f68264ab) for simplicity - the previous implementation was buggy and non-trivial to fix. Write concurrency is currently low-priority feature (it's not needed for the mobile apps) so...
`Repository::create_directory` is the only publicly exposed method that uses `Directory` and not `JointDirectory`. For simplicity and consistency we should only expose `JointDirectory`, not `Directory`.
There is a system function missing (`freeifaddrs`). We should bundle that function (and any other that is missing) with the lib.
Currently we try to connect to every peer sharing a given repository that we know of. This can become a problem for very popular repositories which can have thousands of...
Currently we try to connect to a peer for as long as they are advertised to us via one of the discovery mechanism (explicitly provided by the user, local discovery,...
Note that due to the decentralized nature of ouisync, the timestamps are inherently unreliable due to each node using its own clock. For this reason they should only be used...
PCP seems to be an alternative to UPnP which also allows to setup port forwarding and possibly firewall pinholes but is supposedly more secure. Investigate it and decide whether it...