What about trying to expose same function signature for each function on all platforms ?
We can just pass NULL on platforms that don't care about a particular argument.
For example, here, we would expose `kill_io_pump` directly as it is the same implementation for all platforms.