-
Notifications
You must be signed in to change notification settings - Fork 0
Open
Description
When CAC2 terminates without conflicts (i.e. processes agree on a single conflict-set), the choice of which message will be delivered must consider only messages that were delivered or for which we have a delivery proof. This is in order to maintain Agreement for Cascade Consensus.
distributed-mls/src/cascade_consensus.hpp
Lines 334 to 344 in bc7edc6
| std::vector<mls::MLSMessage> choices; | |
| for(const auto & ref : message.conflictingMessages) | |
| { | |
| if(!m_cacInstance1.messages().contains(ref)) | |
| printf("CAC2 Deliver: Error unknown reference %u\n", | |
| MLS_UTIL_HASH_REF(ref)); | |
| else | |
| choices.emplace_back(m_cacInstance1.messages().at(ref)); | |
| } | |
| m_deliver(m_choice(choices)); |
Metadata
Metadata
Assignees
Labels
No labels