Swarm: cleanup current code
Done, to rebase
- Avoid lock in testBanDevice if CPPUNIT_ASSERT(fileutils::isFile(bannedFile)); fails (just change bannedFile)
- Add getUri() and getDeviceId() for JamiAccount to avoid multiple lookups + cleanup username_ usage => https://review.jami.net/c/ring-daemon/+/16424
- Add test to assert that device certificate is there on commit
- Add check to validate votes + commit messages (verif certificate)
- invited create a directory instead a file
- Some message sends to self. Avoid
- valiadte too much commits
- Disconnection during fetch => block the fetch, should be stopped
- Some fetch blocked in
#0 0x00007ffff7a1c4e8 in pthread_cond_clockwait () from /lib64/libpthread.so.0
#1 0x0000000000671142 in std::condition_variable::__wait_until_impl<std::chrono::duration<long, std::ratio<1l, 1000000000l> > > (this=0x7ffe10017ce8, __lock=..., __atime=...) at /usr/include/c++/10/condition_variable:209
#2 0x000000000066d8e7 in std::condition_variable::wait_until<std::chrono::duration<long, std::ratio<1l, 1000000000l> > > (this=0x7ffe10017ce8, __lock=..., __atime=...) at /usr/include/c++/10/condition_variable:119
#3 0x000000000065fdb8 in std::condition_variable::wait_until<std::chrono::_V2::steady_clock, std::chrono::duration<long int, std::ratio<1, 1000000000> >, jami::MultiplexedSocket::waitForData(const uint16_t&, std::chrono::milliseconds, s
td::error_code&) const::<lambda()> >(std::unique_lock<std::mutex> &, const std::chrono::time_point<std::chrono::_V2::steady_clock, std::chrono::duration<long, std::ratio<1, 1000000000> > > &, struct {...}) (this=0x7ffe10017ce8, __lock=..
., __atime=..., __p=...) at /usr/include/c++/10/condition_variable:158
--Type <RET> for more, q to quit, c to continue without paging--
#4 0x000000000065fb76 in std::condition_variable::wait_for<long int, std::ratio<1, 1000>, jami::MultiplexedSocket::waitForData(const uint16_t&, std::chrono::milliseconds, std::error_code&) const::<lambda()> >(std::unique_lock<std::mutex
> &, const std::chrono::duration<long, std::ratio<1, 1000> > &, struct {...}) (this=0x7ffe10017ce8, __lock=..., __rtime=..., __p=...) at /usr/include/c++/10/condition_variable:185
#5 0x000000000065e959 in jami::MultiplexedSocket::waitForData (this=0x7ffe10008400, channel=@0x7ffe100092d8: 38876, timeout=..., ec=...) at multiplexed_socket.cpp:481
#6 0x000000000065f517 in jami::ChannelSocket::waitForData (this=0x7ffe10006850, timeout=..., ec=...) at multiplexed_socket.cpp:656
#7 0x000000000073cbb1 in P2PStreamRead (stream=0x7ffe04026910, buffer=0x7ffe0402e060 "0008NAK\n", buflen=65536, read=0x7ffe727f7a08) at gittransport.cpp:104
#8 0x0000000000bc0863 in git_smart.recv_cb ()
#9 0x0000000000bc2418 in recv_pkt ()
#10 0x0000000000bc32f1 in git_smart.download_pack ()
#11 0x0000000000ba8919 in git_remote_download ()
-
Add account id on logs (to rebase)
-
Queue for merge (convId, device)
-
test double fetch without common refs => should merge both side ok (a & b same repo, a add commit, b too, then start daemon)
-
Handle 3 users
-
Add locks on conversations_ & pendingFetch & avoid lock on sendMessageNotification + avoid to lock on big operations
-
Avoid multiple parrallel fetch on different remots with same repository, this cause issues
-
Clean warnings
-
Fix segv for repository_ in conversationrepository_
-
improve getMembers()
-
Doc: verify in the doc that we do not add certificates in invited
-
end blocked