#1630 MUC: do not make banned nicknames "reserved"
What steps will reproduce the problem?
1. Ban somebody from a MUC by nickname (this is not allowed by 0045, but maybe also works by banning nickname and JID?)
<iq id='81791c2da1654967ac2dd2671d07e1dc' type='set' xml:lang='en' from='georg@****' email@example.com'>
<item nick='banned_nickname' affiliation='outcast'/>
2. Have another user try to join the room using the nickname banned_nickname
What is the expected output?
The other user should be able to join.
What do you see instead?
The user is refused entry, because banned_nickname is reserved:
Feb 08 09:12:36 c2s55ccc3264750 info DEBUG-IN: <iq id='81791c2da1654967ac2dd2671d07e1dc'
type='set' xml:lang='en' from='georg@***' firstname.lastname@example.org'><query
Feb 08 09:12:36 chat.yax.im:muc debug Reserving banned_nickname for evil_user@**** (outcast)
Feb 08 09:12:36 chat.yax.im:muc debug Updating affiliation data for evil_user@****
Feb 08 09:35:11 chat.yax.im:muc debug good_user@***** attempted to use nick banned_nickname reserved by evil_user@****
What version of the product are you using? On what operating system?
Prosody trunk nightly build 1322 (2020-08-21, cb5555443852)
I really like compat behavior, as it also affects my unpatched poezio. My suggestion would be to add after the nickname->jid resolution a line that will unset the nickname if the affiliation is "outcast".