Skip to content
Snippets Groups Projects
  • Richard van der Hoff's avatar
    428174f9
    Split `event_auth.check` into two parts (#10940) · 428174f9
    Richard van der Hoff authored
    Broadly, the existing `event_auth.check` function has two parts:
     * a validation section: checks that the event isn't too big, that it has the rught signatures, etc. 
       This bit is independent of the rest of the state in the room, and so need only be done once 
       for each event.
     * an auth section: ensures that the event is allowed, given the rest of the state in the room.
       This gets done multiple times, against various sets of room state, because it forms part of
       the state res algorithm.
    
    Currently, this is implemented with `do_sig_check` and `do_size_check` parameters, but I think
    that makes everything hard to follow. Instead, we split the function in two and call each part
    separately where it is needed.
    428174f9
    History
    Split `event_auth.check` into two parts (#10940)
    Richard van der Hoff authored
    Broadly, the existing `event_auth.check` function has two parts:
     * a validation section: checks that the event isn't too big, that it has the rught signatures, etc. 
       This bit is independent of the rest of the state in the room, and so need only be done once 
       for each event.
     * an auth section: ensures that the event is allowed, given the rest of the state in the room.
       This gets done multiple times, against various sets of room state, because it forms part of
       the state res algorithm.
    
    Currently, this is implemented with `do_sig_check` and `do_size_check` parameters, but I think
    that makes everything hard to follow. Instead, we split the function in two and call each part
    separately where it is needed.