code: def login_user(user, remember=None):
      
  
      if remember is None:
          remember = config_value('DEFAULT_REMEMBER_ME')
  
      if not _login_user(user, remember):  # pragma: no cover
          return False
  
      if _security.trackable:
          remote_addr = request.remote_addr or None  # make sure it is None
  
          old_current_login, new_current_login = (
              user.current_login_at, _security.datetime_factory()
          )
          old_current_ip, new_current_ip = user.current_login_ip, remote_addr
  
          user.last_login_at = old_current_login or new_current_login
          user.current_login_at = new_current_login
          user.last_login_ip = old_current_ip
          user.current_login_ip = new_current_ip
          user.login_count = user.login_count + 1 if user.login_count else 1
  
          _datastore.put(user)
  
      identity_changed.send(current_app._get_current_object(),
                            identity=Identity(user.id))
      return True
docs: Perform the login routine.
  
      If SECURITY_TRACKABLE is used, make sure you commit changes after this
      request (i.e. ``app.security.datastore.commit()``).
  
      :param user: The user to login
      :param remember: Flag specifying if the remember cookie should be set.
                       Defaults to ``False``