ti-mo/conntrack

allow get/update of flows based only on the tupleReply

dstiliadis opened this issue · 4 comments

Hi @ti-mo

In the current implementation updates/gets with a flow that has only the tupleReply defined are blocked by marshal and return an error. This is not required by the netlink API though. Even though for create both are needed, one can update a flow if only the tupleReply information is needed. This is useful when one only cares about the tupleReply state and not the original state.

I have a PR where this seems to work, but I was wondering if there is some other reason for
that choice that I am missing.

Do you see any issues with that? If not, I can create PR.

ti-mo commented

Hi @dstiliadis

Thanks, I wasn't aware of that! There's no reason for this other than the fact that it didn't make sense to me to allow this at the time. In hindsight, it makes sense that any reply tuple in a stateful firewall is probably unique. Are you sure there cannot be collisions?

I'd love to see a use case/example so it can be added to the integration suite. 👍 Feel free to make a PR!

ti-mo commented

Hi @dstiliadis, any movement here?

ti-mo commented

This still needs integration tests.