disallow mixing protocols in net.listen()
Due to our reuseport facility, it is possible to use net.listen()
to bind multiple protocols to a single (ip, port) combination. I can't think of any valid use-case and the most likely cause - typo - will cause misbehavior instead of a crash.
-- this isn't valid or supported
net.listen('::1', 443, { kind = 'tls' })
net.listen('::1', 443, { kind = 'doh2' })
I think the resolver should crash in these cases.