When a -whitebind is specified in the configuration, the software does not automatically bind to 0.0.0.0 and [::]. It took me a bunch of log-examining, diffing config files, and trial-and-error to figure this out, because it seems counterintuitive and isn't mentioned in the --help output.
At the very least, this should be mentioned in the documentation, but IMHO the way it works should be changed altogether.
The way it was explained to me is that, if you're saying anything having to do with binding, it doesn't auto-bind anything else, and this is treated the same way as specifying -bind=whatever.
This doesn't really make sense to me. I think of it more like the RPC interface/port/bind, as something that gives trusted software, that speaks the P2P protocol, access to the node, rather than treating it like some random untrusted peer out there. For example, you most likely don't ever want to be exposing this to the Internet. This, to me, suggests that it should be a separate system from the -bind and -listen= stuff, the way RPC is. Meaning that you can specify -whitebind=127.0.0.1:xyz without affecting the normal binding of 0.0.0.0/[::]. If you wanted to have a node that only takes whitelisted connections, the right way to do that IMO is to combine -whitebind with either -listen=0 or bind=127.0.0.1. It shouldn't be the default behavior when specifying -whitebind and no other -binds.
Some of you may have different opinions, and I assume there'll be discussion/debate over this, but if nothing else, it should definitely be better-documented.