I choose from among the dozens of options, based on functionality and configurability. That's the degree of control that I've needed. Saying that "control" would require someone to read every line of source is a wonderful strawman.
> In that case, maintainers have control.
And if they change the software in a way that I dislike, I can fetch a previous version of the program and use it that way forever, or disable the changes in the new version. Thankfully, I don't usually have to do that. There's almost always another piece of software that can be reconfigured to do what I want.