Page MenuHomePhabricator

'ipusers' does not handle 'cupe_actor' as NULL
Closed, ResolvedPublic1 Estimated Story PointsBUG REPORT


After T359962 and T341827, the CheckUser ipusers API has a empty name for private events performed by IP addresses when temporary accounts are enabled. This is because the code is missing to convert the null value of actor_name to the IP address.


image.png (1×1 px, 112 KB)

Steps to replicate the issue
  1. Enable temporary accounts
  2. Set $wgCheckUserLogLogins = true; and $wgCheckUserEventTablesMigrationStage = SCHEMA_COMPAT_NEW; in LocalSettings.php
  3. While not logged in to a temporary account (exit the session if this is the case), make a failed login attempt using Special:UserLogin
  4. Run ipusers CheckUser API request

What happens?:
An entry exists with name as an empty string.

What should have happened instead?:
The name should the IP address.

Related Objects

View Standalone Graph
This task is connected to more than 200 other tasks. Only direct parents and subtasks are shown here. Use View Standalone Graph to show more of the graph.
ResolvedBUG REPORTDreamy_Jazz

Event Timeline

Dreamy_Jazz renamed this task from 'ipusers' does not handle `cupe_actor` as NULL to 'ipusers' does not handle 'cupe_actor' as NULL.Apr 5 2024, 2:31 PM

Change #1017300 had a related patch set uploaded (by Dreamy Jazz; author: Dreamy Jazz):

[mediawiki/extensions/CheckUser@master] Replace name with IP if the actor_id is NULL in 'userips' response

Change #1017300 merged by jenkins-bot:

[mediawiki/extensions/CheckUser@master] Replace name with IP if the actor_id is NULL in 'userips' response

Djackson-ctr subscribed.

I have verified the new code has been implemented and is functioning and displaying as expected... Thank You @Dreamy_Jazz!!!

image.png (881×1 px, 65 KB)