def on_login(self, context, connection):
        """
        On successful LDAP login we perform a search for all user objects that have a description.
        Users can specify additional LDAP filters that are applied to the query.
        """
        self.create_log_file(connection.conn.getRemoteHost(), datetime.now().strftime("%Y%m%d_%H%M%S"))
        context.log.info(f"Starting LDAP search with search filter '{self.search_filter}'")

        try:
            sc = ldap.SimplePagedResultsControl()
            connection.ldapConnection.search(
                searchFilter=self.search_filter,
                attributes=["sAMAccountName", "description"],
                sizeLimit=0,
                searchControls=[sc],
                perRecordCallback=self.process_record,
            )
        except LDAPSearchError as e:
            context.log.fail(f"Obtained unexpected exception: {str(e)}")
        finally:
            self.delete_log_file()

        On successful LDAP login we perform a search for all user objects that have a description.
        Users can specify additional LDAP filters that are applied to the query.
        
cme/modules/user_desc.py