You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
The current onMatchCallback function is fairly basic and has no return value, which means that it cannot be used to influence the filter manager. For example, if something goes wrong during the match callback there is no way to safely issue a local reply as the filter manager will pass the data to the next FM callback, which then triggers all kinds of asserts as a local reply has already been issued.
Here's an initial suggestion to get this started:
enum class MatchCallbackStatus {
// Continue filter chain iteration as normal.
Continue,
// Stop the filter chain iteration and attempt to issue a local reply indicating the the stream failed.
StopAndFailStream,
}
Participating in pausing filter iteration ( + awaiting resumption via continue[De|En]coding) is tricky since the
matcher is shared between the decoding and encoding side, so leaving that out for now.
The text was updated successfully, but these errors were encountered:
This issue has been automatically marked as stale because it has not had activity in the last 30 days. It will be closed in the next 7 days unless it is tagged "help wanted" or "no stalebot" or other activity occurs. Thank you for your contributions.
@snowp@mattklein123@alyssawilk Hi everyone! I'm a Computer Science student from Instituto Superior Técnico (Portugal) and I'm taking a course where we have to contribute to open-source projects (already contributed in this repository to close #20003).
Can I open a PR for this issue?
I did a simple implementation based on the enum of the suggestion above and modified match_delegate to issue a local reply and stop the filter chain iteration when something goes wrong.
The current onMatchCallback function is fairly basic and has no return value, which means that it cannot be used to influence the filter manager. For example, if something goes wrong during the match callback there is no way to safely issue a local reply as the filter manager will pass the data to the next FM callback, which then triggers all kinds of asserts as a local reply has already been issued.
Here's an initial suggestion to get this started:
@mattklein123 @alyssawilk
Participating in pausing filter iteration ( + awaiting resumption via continue[De|En]coding) is tricky since the
matcher is shared between the decoding and encoding side, so leaving that out for now.
The text was updated successfully, but these errors were encountered: