Currently, when a user logs in, they get added to an ACL.
If a user is in the ACL, they can login without entering a password, and regain their previous privelege levels.
If the guest password, or admin password is changed, the ACL should be scanned for users with the appropriate permissions, and purged forcing them to re-auth with the new password to re-gain those permissions.
Otherwise, you don't have a good way to remove unwanted users who previously had access without manually manipulating the ACL.
The flow might be something like this:
-
no password change > ACL lookup works as it does today.
-
readwrite password change (ie, guest room server password) should remove all "02 " entries from the ACL
-
admin password change (room server or repeater) should remove all "03 " entries from the ACL (maybe leave the current user in, who just changed the password?)