-
Notifications
You must be signed in to change notification settings - Fork 5.3k
Description
If I have config (example 1):
match:
app_protocols: [h2]
match: {}All h2 traffic matches filter 1, and everything else matches filter 2. If I then change this to (example 2)
match:
app_protocols: [h2]
transport_protocol: tls
match: {}No traffic matches filter 2. I would expect filter 2 to still catch all unmatched traffic. It seems in order to do this, I need to specify: (example 3)
match:
app_protocols: [h2]
transport_protocol: tls
match: nullI think this contradicts the docs a bit. Transport protocol says "If non-empty, a transport protocol to consider when determining a filter chain match.". In the example 2, I have set transport_protocol to "", yet it still seems to be considering transport protocol.
Even more contradicting is that changing one FCM (seems to) impacts the matching logic of another FCM! My expectation would be that a match config is independent. If I have {} it would always match the same inputs (from my reading, match everything, but at least should be consistent), regardless of other FCMs - other FCMs may have higher priority, but not actually prevent this one from matching.