ActiveDirectoryMultiPlugin.py's searching for groups will raise RuntimeError if the delegate reports an error. No one catches that exception, so the RuntimeError is rendered to the user via a normal 'error' page. This happens on every request - if the delegate reports an error, it is impossible to visit any page.
Consider the case where the plugin is configured with an invalid group base DN (eg, a typo). Once that configuration is saved, it appears impossible to change the configuration back - all attempts to visit the configuration pages result in the RuntimeError. I'm attaching a simple patch that calls logger.error() and returns an empty list.
Please let me know what you think.
|